/* AeroTravel v87 — product-first visual reset
   Inspired by travel search UX principles, not copied from any one brand. */
:root{
 --v87-blue:#1464f4;
 --v87-blue-dark:#0d47bf;
 --v87-navy:#10233f;
 --v87-orange:#ff5a36;
 --v87-orange-dark:#ea4422;
 --v87-ink:#172238;
 --v87-muted:#657188;
 --v87-line:#dfe4ec;
 --v87-bg:#f4f6f8;
 --v87-white:#fff;
 --v87-radius:10px;
 --v87-shadow:0 8px 24px rgba(16,35,63,.08);
}

/* Header: utility navigation, not a floating SaaS navbar */
body.portalV80{background:var(--v87-bg);color:var(--v87-ink);font-family:Inter,Arial,sans-serif}
.p80-header{position:sticky;top:0;background:#fff;backdrop-filter:none;border-bottom:1px solid #e2e6ed;box-shadow:none}
.p80-header__inner{min-height:64px;gap:20px}
.p80-brand{gap:9px}
.p80-brand__mark{width:34px;height:34px;border-radius:7px;background:var(--v87-blue);box-shadow:none;transform:none;font-size:16px}
.p80-brand__copy b{font:800 18px/1 Inter,Arial,sans-serif;letter-spacing:-.03em}
.p80-brand__copy small{margin-top:3px;font-size:9px;font-weight:600;color:#7c8799}
.p80-menu{gap:16px}
.p80-nav{gap:0}
.p80-nav a{position:relative;padding:22px 11px 20px;border-radius:0;color:#4d596d;font-size:13px;font-weight:700;background:transparent!important}
.p80-nav a:hover{color:var(--v87-blue)}
.p80-nav a.is-active{color:var(--v87-blue)}
.p80-nav a.is-active:after{content:"";position:absolute;left:11px;right:11px;bottom:-1px;height:3px;background:var(--v87-blue)}
.tripSavedHeaderV83{border:0!important;background:transparent!important;box-shadow:none!important}
.p80-headerCta{min-height:40px!important;padding:0 15px!important;border-radius:8px!important;background:var(--v87-orange)!important;font-size:13px}
.p80-headerCta b{display:none!important}
.p80-headerCta:hover{background:var(--v87-orange-dark)!important}

/* Home search zone */
.v87-home{background:var(--v87-bg)}
.v87-searchZone{padding:26px 0 22px;background:var(--v87-blue);color:#fff}
.v87-productTabs{display:flex;align-items:center;gap:3px;margin-bottom:22px}
.v87-productTabs a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:7px;color:rgba(255,255,255,.76);text-decoration:none;font-size:13px;font-weight:750}
.v87-productTabs a:hover,.v87-productTabs a.is-active{background:rgba(255,255,255,.14);color:#fff}
.v87-productTabs span{font-size:14px}
.v87-titleRow{display:grid;grid-template-columns:minmax(0,1fr) 225px;gap:24px;align-items:end}
.v87-titleRow h1{max-width:860px;margin:0;font:800 clamp(35px,4.5vw,52px)/1.02 Inter,Arial,sans-serif;letter-spacing:-.045em}
.v87-titleRow p{margin:10px 0 0;color:rgba(255,255,255,.82);font-size:15px}
.v87-origin label{color:rgba(255,255,255,.72)}
.v87-origin>button{min-height:48px;border:0;border-radius:8px;background:#fff;box-shadow:none}
.v87-origin>div{top:70px;border-radius:9px}
.v87-search{grid-template-columns:1.1fr 1.1fr .8fr .8fr .75fr 145px;margin-top:20px;padding:0;border:0;border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(0,31,96,.18);gap:0;overflow:visible}
.v87-search label{position:relative;min-height:64px;padding:10px 13px;border:0;border-right:1px solid #e3e7ee;border-radius:0;background:#fff}
.v87-search label:first-child{border-radius:10px 0 0 10px}
.v87-search label span{color:#6d788b;font-size:10px;letter-spacing:0;text-transform:none}
.v87-search input,.v87-search select{font:700 14px Inter,Arial,sans-serif;color:#152238}
.v87-search select{border:0;outline:0;background:transparent}
.v87-cityField{grid-template-columns:minmax(0,1fr) auto}
.v87-cityField span{grid-column:1/-1}
.v87-cityField input{grid-column:1}
.v87-cityField small{grid-column:2;align-self:center;color:#8b95a5;font-size:10px;font-weight:800}
.v87-search button{min-height:64px;border:0;border-radius:0 9px 9px 0;background:var(--v87-orange);color:#fff;font-size:14px;font-weight:900}
.v87-search button:hover{background:var(--v87-orange-dark)}
.v87-searchMeta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:13px;color:rgba(255,255,255,.72);font-size:11px}
.v87-searchMeta a{color:#fff;text-decoration:none;font-weight:700}
.v87-searchMeta a:hover{text-decoration:underline}
.v87-searchMeta span{margin-left:auto}
.v87-searchMeta b{color:#fff}

/* Sections */
.v86-section.v87-section,.v87-budgetSection{padding:44px 0}
.v87-section--muted{background:#fff}
.v87-heading{align-items:end;margin-bottom:17px}
.v87-heading>div>span{display:none}
.v87-heading h2{margin:0;font:800 clamp(25px,3vw,34px)/1.08 Inter,Arial,sans-serif;letter-spacing:-.035em}
.v87-heading p{margin:6px 0 0;color:var(--v87-muted);font-size:13px}
.v87-heading>a{color:var(--v87-blue);font-size:12px;font-weight:800;text-decoration:none}
.v87-heading>a:after{content:" →"}
.v87-heading>a:hover{text-decoration:underline}

/* Dense price board instead of glossy cards */
.v87-dealBoard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--v87-line);border-radius:10px;background:#fff;overflow:hidden}
.v87-dealBoard article{min-width:0;border-right:1px solid var(--v87-line);border-bottom:1px solid var(--v87-line)}
.v87-dealBoard article:nth-child(2n){border-right:0}
.v87-dealBoard article:nth-last-child(-n+2){border-bottom:0}
.v87-dealBoard a{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:78px;padding:14px 16px;color:inherit;text-decoration:none}
.v87-dealBoard a:hover{background:#f7f9fc}
.v87-routeCode{display:flex;align-items:center;gap:7px;color:#5d697c;font-size:11px}
.v87-routeCode span{color:var(--v87-blue)}
.v87-routeName{display:grid;gap:4px;min-width:0}
.v87-routeName strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}
.v87-routeName small{color:#7a8495}
.v87-routePrice{display:grid;text-align:right}
.v87-routePrice small{color:#7b8596;font-size:10px}
.v87-routePrice b{font-size:17px;white-space:nowrap}

/* Popular routes as a catalogue list */
.v87-routeList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--v87-line);background:#fff}
.v87-routeList a{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:58px;padding:11px 12px;border-right:1px solid var(--v87-line);border-bottom:1px solid var(--v87-line);color:inherit;text-decoration:none}
.v87-routeList a:nth-child(3n){border-right:0}
.v87-routeList a:hover{background:#f7f9fc}
.v87-routeList span{color:#7b8596;font-size:10px;font-weight:800}
.v87-routeList b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.v87-routeList i{color:var(--v87-blue);font-size:10px;font-style:normal;font-weight:800}

/* Weekend */
.v87-weekend{display:flex;gap:10px;overflow-x:auto;padding-bottom:3px}
.v87-weekend a{flex:0 0 190px;display:grid;gap:7px;padding:14px;border:1px solid var(--v87-line);border-radius:8px;background:#fff;color:inherit;text-decoration:none}
.v87-weekend a:hover{border-color:#bdc8d8}
.v87-weekend small{color:#7a8495}
.v87-weekend b{font-size:15px}
.v87-weekend strong{font-size:14px}

/* Hotels and tours */
.v87-mediaGrid{gap:12px}
.v87-mediaGrid>a{border:1px solid var(--v87-line)!important;border-radius:9px!important;box-shadow:none!important}
.v87-mediaGrid>a:hover{border-color:#bcc7d7!important}
.v87-mediaGrid img{height:170px!important}
.v87-mediaGrid div{padding:14px!important}
.v87-mediaGrid b{font-size:15px}
.v87-mediaGrid strong{font-size:15px;color:var(--v87-ink)}

/* Budget strip */
.v87-budgetSection{background:var(--v87-navy);color:#fff}
.v87-budgetSection .v87-heading h2{color:#fff}
.v87-budgetBar{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.18);border-radius:9px;overflow:hidden}
.v87-budgetBar a{display:grid;gap:4px;padding:18px;border-right:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none}
.v87-budgetBar a:last-child{border-right:0}
.v87-budgetBar a:hover{background:rgba(255,255,255,.06)}
.v87-budgetBar span,.v87-budgetBar small{color:#b8c3d3}
.v87-budgetBar b{font-size:24px}

/* General v86 pages */
.v86-pageHero{padding:38px 0 28px;background:#fff;border-bottom:1px solid var(--v87-line)}
.v86-pageHero .v86-eyebrow{color:var(--v87-blue);font-size:11px;letter-spacing:0;text-transform:none}
.v86-pageHero h1{margin:7px 0 9px;font:800 clamp(32px,4vw,46px)/1.04 Inter,Arial,sans-serif;letter-spacing:-.04em}
.v86-pageHero p{font-size:14px}
.v86-facets{gap:5px;margin-bottom:16px}
.v86-facets a{padding:8px 11px;border-radius:7px;background:#fff;font-size:11px}
.v86-facets a.is-active{background:var(--v87-navy);border-color:var(--v87-navy);color:#fff}
.v86-cityGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.v86-cityGrid>a{border-radius:8px;box-shadow:none}
.v86-cityGrid>a:hover{border-color:#bcc7d7}
.v86-hotelList{gap:8px}
.v86-hotelList article{grid-template-columns:190px minmax(0,1fr) 165px;gap:15px;padding:10px;border-radius:9px;background:#fff}
.v86-hotelImage{height:135px;border-radius:7px}
.v86-hotelList h2{font-size:18px}
.v86-tags span{border-radius:5px;background:#eef1f5}
.v86-hotelPrice a,.v86-hotelDetail aside>a,.v86-empty a{border-radius:7px;background:var(--v87-orange)}
.v86-hotelPrice a:hover,.v86-hotelDetail aside>a:hover,.v86-empty a:hover{background:var(--v87-orange-dark)}
.v86-hotelDetail{grid-template-columns:minmax(0,1fr) 315px}
.v86-hotelDetail>div img{border-radius:9px}
.v86-hotelDetail aside>div{border-radius:8px}
.v86-copy--wide{padding:22px;border-radius:9px;background:#fff;border:1px solid var(--v87-line)}
.v86-faq details{border-radius:8px}
.v86-relatedTravel,.v86-routeTravel{padding:20px;border:1px solid var(--v87-line);border-radius:9px;background:#fff}
.v86-linkPanel a,.v86-routeTravel a{border-radius:7px}
.v86-tourList{gap:10px}
.v86-tourList>a{border-radius:9px;background:#fff}
.v86-tourList img{height:180px}
.v86-tourList span{color:var(--v87-blue)}

/* Route page v86.2+ */
body:has(.sr862-page){background:var(--v87-bg)}
.sr862-header{position:sticky;background:#fff;backdrop-filter:none;border-bottom:1px solid #e2e6ed}
.sr862-header>div{min-height:64px}
.sr862-brand>i{width:34px;height:34px;border-radius:7px;background:var(--v87-blue)}
.sr862-brand b{font-size:17px}
.sr862-brand small{display:none}
.sr862-header nav a{border-radius:0;color:#4d596d}
.sr862-header nav a:hover{background:transparent;color:var(--v87-blue)}
.sr862-head-cta,.sr862-primary{border-radius:7px;background:var(--v87-orange)}
.sr862-head-cta:hover,.sr862-primary:hover{background:var(--v87-orange-dark)}
.sr862-secondary,.sr864-tool{border-radius:7px}
.sr862-page{margin-top:18px}
.sr862-hero{grid-template-columns:minmax(0,1fr) 285px;gap:10px}
.sr862-hero-copy,.sr862-summary{border-radius:9px;box-shadow:none}
.sr862-hero-copy{padding:26px;background:#fff}
.sr862-hero h1{margin:12px 0 11px;font:800 clamp(31px,4.2vw,48px)/1.04 Inter,Arial,sans-serif;letter-spacing:-.045em}
.sr862-hero p{font-size:14px}
.sr862-summary{padding:0;overflow:hidden}
.sr862-summary>div{padding:14px}
.sr862-summary b{font-size:19px}
.sr862-search{padding:0;border-radius:9px;overflow:hidden}
.sr862-search form{grid-template-columns:1fr 1fr .8fr .55fr 150px;gap:0}
.sr862-search label{min-height:58px;border:0;border-right:1px solid var(--v87-line);border-radius:0;background:#fff}
.sr862-search button{border-radius:0;background:var(--v87-orange)}
.sr864-variants{padding:0;border-radius:8px}
.sr864-variants a{border-radius:0}
.sr864-variants a.is-active{background:var(--v87-navy)}
.sr862-section,.sr862-empty,.sr862-content,.sr862-faq,.sr862-related,.sr864-months,.sr864-month-analysis,.sr864-service-grid>article{border-radius:9px;box-shadow:none}
.sr862-head h2,.sr862-content>h2,.sr862-faq>h2{font:800 25px/1.12 Inter,Arial,sans-serif}
.sr862-chart i{border-radius:4px 4px 0 0;background:var(--v87-blue)}
.sr862-tickets article{border-radius:7px}
.sr862-travel>a{border-radius:8px}
.sr862-travel i{border-radius:6px}
.sr864-month-grid a{border-radius:7px}
.sr864-month-grid a:hover,.sr864-month-grid a.is-active{background:#eef4ff}
.sr863-seo-head{background:#fff}
.sr863-seo-head h2{font:800 clamp(25px,3vw,34px)/1.1 Inter,Arial,sans-serif}
.sr863-seo-sections article{background:#fff}
.sr862-faq details{border-radius:7px}
.sr862-related a{border-radius:7px}
.sr862-footer{background:var(--v87-navy);color:#fff;border:0}
.sr862-footer .sr862-brand{color:#fff}

/* Footer */
.p80-footer{margin-top:0;padding:38px 0 20px;background:var(--v87-navy)}
.p80-footer__top{gap:30px}
.p80-footer__brand p{color:#aeb8c7}
.p80-footer__col a{color:#b8c2d0}
.p80-footer__bottom{margin-top:28px;color:#8996aa}

/* Remove rounded-everything from legacy controls */
.v86-public .v86-btn,
.portalV80 .btn,.portalV80 .submitBtn,.portalV80 .submitV60,
.portalV80 .primaryBtnV60,.portalV80 .secondaryBtnV60,.portalV80 .sideCtaV60,
.portalV80 .primaryV60,.portalV80 .ghostV60,.portalV80 .tripActionV83{
 border-radius:7px!important;
 box-shadow:none!important;
}
.v86-public .v86-btn,.portalV80 .btn,.portalV80 .submitBtn{background:var(--v87-orange)!important}
.v86-public a,.portalV80 a{transition:color .15s ease,background-color .15s ease,border-color .15s ease}
.v86-public article,.v86-public a,.sr862-page article,.sr862-page a{transform:none!important}

/* Responsive */
@media(max-width:1050px){
 .v87-search{grid-template-columns:1fr 1fr 1fr}
 .v87-search label{border-bottom:1px solid var(--v87-line)}
 .v87-search label:nth-child(3){border-right:0}
 .v87-search button{min-height:58px;border-radius:0 0 9px 0}
 .v87-routeList{grid-template-columns:repeat(2,1fr)}
 .v87-routeList a:nth-child(3n){border-right:1px solid var(--v87-line)}
 .v87-routeList a:nth-child(2n){border-right:0}
 .v86-cityGrid{grid-template-columns:repeat(3,1fr)}
 .sr862-search form{grid-template-columns:1fr 1fr}
 .sr862-search button{min-height:50px}
}
@media(max-width:760px){
 .p80-header__inner{min-height:58px}
 .p80-brand__copy small{display:none}
 .p80-menuButton{border-radius:7px;background:#eef1f5}
 .p80-menu{top:60px;border-radius:9px}
 .p80-nav a{padding:11px;border-radius:6px}
 .p80-nav a.is-active:after{display:none}

 .v87-searchZone{padding:18px 0}
 .v87-productTabs{margin-bottom:16px;overflow-x:auto}
 .v87-titleRow{grid-template-columns:1fr}
 .v87-titleRow h1{font-size:34px}
 .v87-origin{max-width:none}
 .v87-search{grid-template-columns:1fr;margin-top:15px;border-radius:9px}
 .v87-search label,.v87-search label:first-child{min-height:56px;border-right:0;border-bottom:1px solid var(--v87-line);border-radius:0}
 .v87-search label:first-child{border-radius:9px 9px 0 0}
 .v87-search button{min-height:52px;border-radius:0 0 9px 9px}
 .v87-searchMeta{gap:11px}
 .v87-searchMeta span{width:100%;margin-left:0}

 .v86-section.v87-section,.v87-budgetSection{padding:34px 0}
 .v87-heading{align-items:flex-start}
 .v87-dealBoard{grid-template-columns:1fr}
 .v87-dealBoard article,.v87-dealBoard article:nth-child(2n),.v87-dealBoard article:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--v87-line)}
 .v87-dealBoard article:last-child{border-bottom:0}
 .v87-dealBoard a{grid-template-columns:78px minmax(0,1fr) auto;padding:12px}
 .v87-routeList{grid-template-columns:1fr}
 .v87-routeList a,.v87-routeList a:nth-child(2n),.v87-routeList a:nth-child(3n){border-right:0}
 .v87-budgetBar{grid-template-columns:1fr}
 .v87-budgetBar a{border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}
 .v87-budgetBar a:last-child{border-bottom:0}
 .v86-cityGrid{grid-template-columns:repeat(2,1fr)}
 .v86-hotelList article{grid-template-columns:1fr}
 .v86-hotelImage{height:200px}
 .v86-hotelPrice{grid-column:auto}
 .sr862-hero{grid-template-columns:1fr}
 .sr862-hero-copy{padding:20px}
 .sr862-hero h1{font-size:32px}
 .sr862-summary{grid-template-columns:repeat(3,1fr)}
 .sr862-summary>div{border-right:1px solid var(--v87-line);border-bottom:0}
 .sr862-summary>div:last-child{border-right:0}
 .sr862-search form{grid-template-columns:1fr}
 .sr862-search label{border-right:0;border-bottom:1px solid var(--v87-line)}
 .sr862-search button{border-radius:0}
}
@media(max-width:460px){
 .v87-dealBoard a{grid-template-columns:60px minmax(0,1fr)}
 .v87-routePrice{grid-column:2;text-align:left}
 .v86-cityGrid{grid-template-columns:1fr}
 .sr862-summary{grid-template-columns:1fr}
 .sr862-summary>div{border-right:0;border-bottom:1px solid var(--v87-line)}
 .sr862-summary>div:last-child{border-bottom:0}
}
