:root{--ocean:#082e50;--turquoise:#13a6c7;--sun:#ffc445;--sunset:#f36d38;--sand:#f7f9f8}
*{box-sizing:border-box}body{margin:0;background:var(--sand);color:#173b57;font-family:Inter,Arial,sans-serif}.site-header{position:relative;z-index:100;background:var(--ocean);color:#fff}.header-inner{width:min(1180px,calc(100% - 40px));min-height:88px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{position:relative;display:inline-flex;align-items:center;min-height:55px;padding-left:48px;color:#fff;text-decoration:none}.brand-sun{position:absolute;left:0;top:7px;width:39px;height:39px;border-radius:50%;background:var(--sun)}.brand-sun:after{content:"";position:absolute;left:18px;top:26px;width:36px;height:15px;border-top:3px solid var(--sunset);border-radius:50%}.brand-word{font:900 33px/1 Outfit,sans-serif;letter-spacing:-1.4px}.brand-word span{color:var(--sunset)}.brand-tagline{position:absolute;left:49px;bottom:0;font-size:9px;letter-spacing:.2px;color:#c7e1ed;white-space:nowrap}.primary-nav{display:flex;align-items:center;gap:20px}.primary-nav a{color:#fff;text-decoration:none;font:700 13px Outfit,sans-serif}.primary-nav a:hover{color:var(--sun)}.menu-toggle{display:none}.hub-wrap,.wrap{width:min(1120px,calc(100% - 40px));margin:0 auto;padding:34px 0 65px}.hero,.hub-hero{margin:8px auto 24px;padding:38px 42px;border-radius:22px;color:#fff;background:linear-gradient(115deg,rgba(8,46,80,.97),rgba(8,91,125,.88)),url('https://images.unsplash.com/photo-1500375592092-40eb2168fd21?auto=format&fit=crop&w=1500&q=80') center/cover;box-shadow:0 14px 35px rgba(8,46,80,.14)}.hero h1,.hub-hero h1{font:800 clamp(34px,5vw,54px)/1.03 Outfit,sans-serif;letter-spacing:-1.4px;margin:7px 0 12px;color:#fff}.hero p,.hub-hero p{color:#e0f1f5;max-width:680px}.hub-hero .eyebrow{color:var(--sun);font:800 11px Outfit,sans-serif;letter-spacing:1.6px}.panel,.search-card,.hub-panel,.results-area{background:#fff;border:1px solid #d9e6e9;border-radius:18px;padding:clamp(18px,3vw,30px);box-shadow:0 9px 28px rgba(8,46,80,.07);margin:18px 0}.panel h2,.search-card h2,.hub-panel h2{font:750 25px Outfit,sans-serif;color:var(--ocean);margin:0 0 9px}.hint,.form-status{color:#587184;font-size:13px}.field label,.fields label,.tripbar label,.s4-exp-panel label{display:block;color:var(--ocean);font-size:12px;font-weight:800}.field input,.field select,.fields input,.fields select,.tripbar select,.s4-exp-search input,.s4-exp-search select,.s4-exp-filters select{display:block;width:100%;min-height:48px;margin-top:7px;padding:10px 12px;border:1px solid #c5d7df;border-radius:10px;background:#fff;color:#173b57;font:500 14px Inter,sans-serif}.field input:focus,.field select:focus,.fields input:focus,.fields select:focus{outline:3px solid rgba(19,166,199,.2);border-color:var(--turquoise)}.fields,.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0}.field{margin:12px 0}.tripbar{display:flex;align-items:center;gap:12px;margin:16px 0}.tripbar select{max-width:230px}.primary,.search-card button,.hub-panel button,.actions button,.s4-exp-search button,.s4-exp-button{border:0;border-radius:11px;background:var(--sun);color:var(--ocean);font:800 14px Outfit,sans-serif;padding:14px 21px;min-height:48px;cursor:pointer;box-shadow:0 4px 0 #e6a92d}.primary:hover,.search-card button:hover,.hub-panel button:hover{background:#ffd46c;transform:translateY(-1px)}.secondary{border:1px solid #b7ccd6;border-radius:10px;background:#eef6f8;color:var(--ocean);padding:12px 18px;font-weight:700}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.tabs{display:flex;gap:8px;margin:18px 0}.tab{background:#e5f3f6!important;color:var(--ocean)!important;box-shadow:none!important}.tab.active{background:var(--turquoise)!important;color:#fff!important}.empty-state{padding:30px;text-align:center;background:#f1f8f9;border-radius:14px;color:#527083}.empty-state h3{font:700 22px Outfit;color:var(--ocean)}.status{padding:13px;border-radius:10px;background:#e8f7fa;color:#075b76}.hidden{display:none!important}.results-area{padding:18px}.site-footer{background:var(--ocean);color:#fff}.footer-main{width:min(1120px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:30px;padding:38px 0}.footer-brand p{max-width:300px;color:#c5dce8;font-size:12px}.footer-main h3{font:700 14px Outfit;color:var(--sun)}.footer-main>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-main a{color:#e1edf2;text-decoration:none;font-size:12px}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding:14px 0;color:#b7cfdd;font-size:11px}.footer-bottom .section-shell{width:min(1120px,calc(100% - 40px));margin:auto}.s4-exp-panel{background:#fff;border:1px solid #d9e6e9;border-radius:18px;padding:clamp(18px,3vw,30px);margin:20px 0;box-shadow:0 9px 28px rgba(8,46,80,.07)}.s4-exp-panel h2,.s4-viator-body h3{color:var(--ocean)}.s4-exp-search button,.s4-viator-bottom a{background:var(--sunset);color:#fff!important;border-radius:10px}.s4-viator-card{border-radius:16px;border-color:#d9e6e9;box-shadow:0 8px 24px rgba(8,46,80,.08)}.s4-viator-bottom strong{color:var(--ocean)}.s4-exp-filters select{background:#fff;color:#173b57}.s4-viator-destination-options{z-index:200}
@media(max-width:850px){.header-inner{width:calc(100% - 30px)}.menu-toggle{display:flex;width:42px;height:42px;border:1px solid rgba(255,255,255,.25);border-radius:10px;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-toggle span:not(.sr-only){display:block;width:19px;height:2px;background:#fff}.primary-nav{display:none;position:absolute;left:0;right:0;top:88px;padding:12px 22px 18px;background:var(--ocean);flex-direction:column;align-items:stretch;gap:0}.primary-nav.is-open{display:flex}.primary-nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}.fields,.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.hub-wrap,.wrap{width:calc(100% - 24px);padding-top:18px}.hero,.hub-hero{padding:27px 22px;border-radius:16px}.fields,.grid{grid-template-columns:1fr;gap:10px}.tripbar{align-items:flex-start;flex-direction:column}.tripbar select{max-width:none}.panel,.search-card,.hub-panel,.results-area{padding:17px;border-radius:14px}.footer-main{width:calc(100% - 30px);gap:22px 14px;padding:30px 0}.footer-brand{grid-column:1/-1}.footer-bottom .section-shell{width:calc(100% - 30px)}}

/* FL4Less shared search and results polish */
.search-card,.panel,.results-area,.s4-exp-panel{box-shadow:0 10px 30px rgba(8,46,80,.075);border-color:#d7e5e9}
.search-card form,.hub-panel form{color:var(--ocean)}
.search-card label,.panel label,.hub-panel label,.s4-exp-panel label{font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:800;letter-spacing:.01em;color:#123b58}
.search-card input,.search-card select,.search-card textarea,.panel input,.panel select,.hub-panel input,.hub-panel select,.s4-exp-panel input,.s4-exp-panel select,.fields input,.fields select,.field input,.field select,.tripbar select{min-height:48px;border:1px solid #c6d8df;border-radius:11px;background:#fff;color:#173b57;padding:11px 13px;font:500 14px Inter,Arial,sans-serif;box-shadow:inset 0 1px 2px rgba(8,46,80,.025);transition:border-color .15s,box-shadow .15s}
.search-card input:focus,.search-card select:focus,.panel input:focus,.panel select:focus,.hub-panel input:focus,.hub-panel select:focus,.s4-exp-panel input:focus,.s4-exp-panel select:focus,.fields input:focus,.fields select:focus,.field input:focus,.field select:focus{outline:0;border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(19,166,199,.15)}
.search-card button,.panel button,.hub-panel button,.primary,.s4-exp-search button{min-height:48px;border-radius:11px;font:800 14px Outfit,Arial,sans-serif;letter-spacing:.01em}
.results-area{padding:clamp(15px,2.5vw,25px);background:#f4f8f9}
.results,.results-list{display:grid;gap:15px}
.result{overflow:hidden;background:#fff;border:1px solid #d5e2e8;border-radius:16px;color:#173b57;box-shadow:0 5px 18px rgba(8,46,80,.055)}
.result-top,.result-bottom{padding:16px 18px}
.result-title,.itinerary-heading,.leg-title{color:var(--ocean);font-family:Outfit,Arial,sans-serif}
.result-note,.result-count,.small,.hint{color:#5b7485}
.result .price,.result .price strong{color:#082e50!important;font-weight:900}
.result .book,.result a.book,.result-bottom .book{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 17px;border-radius:10px;background:var(--sunset);color:#fff!important;text-decoration:none;font:800 13px Outfit,Arial,sans-serif}
.result .meta-chip{background:#eaf5f7;color:#174b65;border:1px solid #d5e8ec}
.result .segment-row,.result .itinerary-detail{border-color:#e2ebef}
.result .provider{color:#607889}
.result-count{font-size:13px;font-weight:700}
.result-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}
.s4-viator-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.s4-viator-card{border:1px solid #d8e5e9;border-radius:17px;box-shadow:0 7px 22px rgba(8,46,80,.07)}
.s4-viator-body{padding:17px}.s4-viator-body h3{font-family:Outfit,Arial,sans-serif;font-size:18px}.s4-viator-bottom a{background:var(--sunset);padding:10px 14px}
.s4-exp-search{grid-template-columns:minmax(0,1fr) auto}.s4-exp-search input{min-width:0}.s4-exp-search button{background:var(--sun)!important;color:var(--ocean)!important;box-shadow:0 4px 0 #e6a92d}
.fl4-lookup-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:8px}.fl4-lookup-row input{width:100%;min-height:50px;border:1px solid #c6d8df;border-radius:11px;padding:12px 14px;color:#173b57;background:#fff;font:500 15px Inter,Arial,sans-serif}.fl4-lookup-results{display:grid;gap:6px;margin-top:8px}.fl4-lookup-option{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;padding:12px 14px;border:1px solid #d8e6eb;border-radius:10px;background:#f8fbfc;color:var(--ocean);text-align:left;cursor:pointer}.fl4-lookup-option:hover{background:#eaf7fa;border-color:var(--turquoise)}.fl4-lookup-option small{color:#668092}.fl4-destination-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fl4-destination-shortcuts a{display:flex;flex-direction:column;gap:5px;padding:17px;border:1px solid #d8e6eb;border-radius:13px;background:#fff;color:var(--ocean);font:800 16px Outfit,Arial,sans-serif;text-decoration:none}.fl4-destination-shortcuts a:hover{border-color:var(--turquoise);transform:translateY(-1px)}.fl4-destination-shortcuts span{color:#617b8c;font:500 12px Inter,Arial,sans-serif}.fl4-source-note{padding:10px 13px;border-radius:9px;background:#eef7f9;color:#557184;font-size:12px}.fl4-source-note a{color:#087eaa;font-weight:800}.fl4-wikivoyage-article{line-height:1.7;overflow-wrap:anywhere}.fl4-wikivoyage-article h2,.fl4-wikivoyage-article h3{font-family:Outfit,Arial,sans-serif;color:var(--ocean);margin-top:1.6em}.fl4-wikivoyage-article a{color:#087eaa}.fl4-wikivoyage-article img{max-width:100%;height:auto;border-radius:10px}.fl4-wikivoyage-article table{max-width:100%;display:block;overflow-x:auto}
@media(max-width:850px){.s4-viator-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fl4-destination-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fl4-lookup-row{grid-template-columns:1fr}.fl4-lookup-row button{width:100%}.fl4-destination-shortcuts{grid-template-columns:1fr}.s4-exp-search{grid-template-columns:1fr}.s4-exp-search button{width:100%}.result-top,.result-bottom{padding:13px}}


/* Stage 6: content pages, travel extras and the integrated park explorer */
.fl4-content-page{line-height:1.7}.fl4-content-page h2{margin:22px 0 8px;color:#152d45}.fl4-content-page h2:first-child{margin-top:0}.fl4-content-page a{color:#087fae;font-weight:700}.fl4-extras-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0}.fl4-extras-grid article{background:#f3f8fb;border:1px solid #dce9f0;border-radius:18px;padding:22px}.fl4-extras-grid article>span{font-size:30px}.fl4-extras-grid h2{margin:8px 0;color:#142f49}.fl4-extras-grid p{min-height:60px}.fl4-extras-grid .primary,.fl4-content-page .primary{display:inline-block;background:#ffb52e;color:#162b40!important;padding:11px 17px;border-radius:999px;text-decoration:none;margin:8px 8px 0 0}.fl4-disclaimer{background:#fff7e7;border-left:4px solid #f2ad2f;padding:13px 16px;border-radius:8px;margin-top:22px}.pqt-page-hero{background:linear-gradient(120deg,#102d49,#146c8c);color:#fff;padding:30px 0}.pqt-page-hero .wrap,.pqt-main{max-width:1180px;margin:0 auto;padding-left:20px;padding-right:20px}.pqt-page-hero h1{color:#fff;font-size:clamp(30px,4vw,48px);margin:10px 0}.pqt-page-hero p{color:#e5f6ff}.pqt-page-hero a{color:#fff}.pqt-main{padding-top:26px;padding-bottom:42px}.pqt-intro,.pqt-section-head,.pqt-filters,.pqt-grid,.pqt-notice{margin-bottom:22px}.pqt-kicker{font-weight:800;letter-spacing:.12em;color:#e7a62b}.pqt-intro h2{color:#17334c}.pqt-notice{background:#fff7e7;padding:14px 18px;border-radius:12px}.pqt-filters{background:#f4f8fb;border-radius:16px;padding:20px}.pqt-button,.pqt-filters button{border:0;border-radius:999px;padding:9px 14px;background:#e5eef4;color:#17334c;font-weight:700;cursor:pointer}.pqt-filters button,.pqt-button{background:#ffb52e;color:#172e43}.pqt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.pqt-card{border:1px solid #dce7ed;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 5px 18px rgba(15,45,70,.07)}.pqt-card-body{padding:16px}.pqt-card h3{color:#16334d}.pqt-credit{padding:18px;text-align:center;color:#536879}.pqt-credit a{color:#087fae;font-weight:700}.pqt-empty{padding:22px;background:#f3f8fb;border-radius:12px}@media(max-width:680px){.fl4-extras-grid{grid-template-columns:1fr}}

/* Stage 7 — unified, understated Florida Adventure search results */
.results-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:4px 0 15px;padding:0 2px}
.results-heading h2{margin:4px 0 0;color:#082e50;font:750 25px/1.15 Outfit,Arial,sans-serif}
.results-heading h2 small{display:inline-block;margin-left:7px;color:#6a8190;font:600 12px Inter,Arial,sans-serif;white-space:nowrap}
.results-eyebrow{color:#0788a8;font:800 10px Inter,Arial,sans-serif;letter-spacing:1.25px}
.results-sort{display:flex;align-items:center;gap:8px;color:#587184;font-size:12px;font-weight:700}
.results-sort select{min-height:39px;padding:8px 30px 8px 10px;border:1px solid #d4e1e6;border-radius:9px;background:#fff;color:#173b57;font:600 12px Inter,Arial,sans-serif}
.results-filter-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:10px;padding:14px;margin:0 0 17px;border:1px solid #e0eaed;border-radius:13px;background:#f8fbfc}
.results-filter-bar label{display:block;color:#456477;font-size:11px;font-weight:750}
.results-filter-bar input,.results-filter-bar select{display:block;width:100%;min-width:0;min-height:39px;margin-top:5px;padding:8px 10px;border:1px solid #d0dfe5;border-radius:8px;background:#fff;color:#173b57;font:500 13px Inter,Arial,sans-serif}
.results-filter-bar input:focus,.results-filter-bar select:focus{outline:0;border-color:#13a6c7;box-shadow:0 0 0 3px rgba(19,166,199,.12)}
.filter-reset{min-height:39px;padding:8px 13px;border:1px solid #bfd3dc;border-radius:8px;background:#fff;color:#17445d;font:700 12px Inter,Arial,sans-serif;cursor:pointer}
.filter-reset:hover{border-color:#13a6c7;background:#eef9fb}
.hotel-grid,.car-list{display:grid;gap:13px}
.hotel-card,.car-card{display:grid;grid-template-columns:190px minmax(0,1fr) 180px;gap:0;align-items:stretch;overflow:hidden;border:1px solid #dce7eb;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(8,46,80,.045);transition:border-color .16s,box-shadow .16s,transform .16s}
.hotel-card:hover,.car-card:hover{border-color:#b9d5de;box-shadow:0 8px 22px rgba(8,46,80,.085);transform:translateY(-1px)}
.hotel-photo,.car-image{min-height:158px;background:#edf4f6;overflow:hidden}
.hotel-photo img,.car-image img{display:block;width:100%;height:100%;min-height:158px;object-fit:cover}
.photo-placeholder,.car-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:158px;padding:15px;color:#698493;background:linear-gradient(135deg,#eef5f6,#e1edf0);font-size:12px;font-weight:650;text-align:center}
.hotel-card-body,.car-info{min-width:0;padding:17px 18px;align-self:center}
.hotel-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.hotel-title-row h3,.car-info h3{margin:3px 0 6px;color:#092f50;font:750 18px/1.2 Outfit,Arial,sans-serif}
.hotel-stars{color:#e5a52d;font-size:13px;letter-spacing:1px;line-height:1.2}
.guest-rating{flex:none;padding:5px 7px;border-radius:7px;background:#edf7f8;color:#087f99;font-size:12px;font-weight:800}
.guest-rating small{display:block;color:#5d7c88;font-size:9px;font-weight:600}
.hotel-address{margin:5px 0 10px;color:#617b89;font-size:12px;line-height:1.45}
.amenity-list,.car-specs{display:flex;flex-wrap:wrap;gap:6px}
.amenity-list span,.car-specs span{padding:5px 8px;border:1px solid #e1eaed;border-radius:6px;background:#f7fafb;color:#496575;font-size:10px;font-weight:650}
.hotel-card-bottom,.car-price-panel{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:17px;border-left:1px solid #e8eef0;background:#fbfdfd}
.hotel-price strong,.car-price-panel>strong{display:block;color:#082e50;font:800 25px/1.1 Outfit,Arial,sans-serif;white-space:nowrap}
.hotel-price span,.hotel-price small{display:block;margin-top:4px;color:#617b89;font-size:11px;line-height:1.35}
.hotel-book,.car-book{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:40px;padding:9px 12px;border:0;border-radius:8px;background:#f36d38;color:#fff!important;text-decoration:none;font:750 12px Outfit,Arial,sans-serif;text-align:center}
.hotel-book:hover,.car-book:hover{background:#dc5728}
.hotel-book.unavailable,.car-book[aria-disabled="true"]{background:#e9eff1;color:#738793!important;pointer-events:none}
.car-image{min-height:150px}
.car-image img{min-height:150px;object-fit:contain;padding:10px;background:#f4f8f9}
.car-class{display:inline-block;margin-bottom:4px;color:#0788a8;font-size:10px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}
.car-supplier{margin:0 0 12px;color:#647e8b;font-size:12px}
.car-price-panel .price-caption{color:#69818e;font-size:10px;font-weight:800;letter-spacing:.8px}
.car-price-panel{align-items:stretch}
.result{border:1px solid #dce7eb;border-radius:14px;box-shadow:0 4px 14px rgba(8,46,80,.045)}
.result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:17px 19px 13px}
.result-title{font:750 18px/1.2 Outfit,Arial,sans-serif;color:#082e50}
.airline-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.airline-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:1px solid #e0eaed;border-radius:6px;background:#f7fafb;color:#587181;font-size:10px}
.airline-badge b{color:#087f99}
.result .price{color:#082e50!important;font:800 25px/1 Outfit,Arial,sans-serif;white-space:nowrap}
.price-label{margin-top:5px;color:#6a8190;font-size:10px;text-align:right}
.route-visual{display:grid;grid-template-columns:minmax(105px,1fr) minmax(110px,1.2fr) minmax(105px,1fr);align-items:center;gap:12px;padding:14px 19px;background:#f7fafb;border-top:1px solid #edf2f4;border-bottom:1px solid #edf2f4}
.route-end:last-child{text-align:right}
.route-code{color:#082e50;font:800 20px/1 Outfit,Arial,sans-serif}
.route-city{margin-top:4px;color:#67808e;font-size:10px;line-height:1.35}
.route-time{margin-top:7px;color:#173b57;font:750 16px Outfit,Arial,sans-serif}
.globe-wrap{display:flex;justify-content:center;align-items:center;min-width:0;opacity:.82}
.route-globe{display:block;width:100%;max-width:220px;height:auto;max-height:115px}
.route-meta{display:flex;flex-wrap:wrap;gap:7px;padding:12px 19px 3px}
.result .meta-chip{padding:6px 9px;border:1px solid #dce9ed;border-radius:7px;background:#eef7f8;color:#315b6c;font-size:10px;font-weight:700}
.itinerary-detail{margin:10px 19px 0;padding:12px 13px;border:1px solid #e3ecef;border-radius:10px;background:#fff}
.itinerary-heading{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px;color:#0b526c;font-size:11px;font-weight:800}
.segment-row{display:grid;grid-template-columns:58px minmax(0,1fr) 72px;gap:10px;align-items:center;padding:9px 0;border-top:1px solid #edf2f4}
.segment-time{color:#173b57;font:750 14px Outfit,Arial,sans-serif}
.segment-date{margin-top:3px;color:#78909c;font-size:9px}
.segment-route{color:#173b57;font-size:12px;font-weight:750}
.segment-route span{color:#13a6c7!important}
.segment-sub{margin-top:3px;color:#718894;font-size:10px}
.segment-duration{color:#34576a;font-size:11px;font-weight:750;text-align:right}
.layover-row{padding:6px 9px;border-radius:6px;background:#fff8e9;color:#8b6726;font-size:10px;font-weight:700}
.baggage-label{display:inline-block;margin:12px 19px 0;padding:6px 9px;border-radius:7px;background:#edf7f1;color:#31704e;font-size:10px;font-weight:700}
.baggage-label.fee{background:#fff4e8;color:#98652b}.baggage-label.unknown{background:#f0f3f5;color:#667b87}
.result-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:12px;padding:13px 19px;border-top:1px solid #edf2f4;background:#fbfdfd}
.result .provider{color:#607889;font-size:11px}
.result .book{min-width:120px;background:#f36d38;border-radius:8px;font-size:12px}
.result .book:hover{background:#dc5728}
.result-note{padding:0 19px 13px;color:#81939c;font-size:9px;line-height:1.4}
.result-controls .field{min-width:145px;flex:1;margin:0}
.result-controls .field label{font-size:10px;color:#4e6c7c}
.result-controls .field input,.result-controls .field select{min-height:39px;margin-top:5px;padding:8px 10px;border:1px solid #d0dfe5;border-radius:8px;background:#fff;color:#173b57;font-size:12px}
.result-controls .layover-filter{min-width:210px}
.result-count{align-self:center;padding:8px 10px;border-radius:7px;background:#eef7f8;color:#0b627b;font-weight:800}
.result-footnote{margin:13px 2px 0;color:#748b97;font-size:11px}
/* Older compact result markup remains visually aligned if returned by a legacy renderer. */
.result-card{display:flex;align-items:center;gap:16px;margin:12px 0;padding:14px;border:1px solid #dce7eb;border-radius:13px;background:#fff;box-shadow:0 4px 14px rgba(8,46,80,.04)}
.result-card .result-image{width:120px;height:88px;object-fit:cover;border-radius:8px}
.result-card .result-main{flex:1;min-width:0}.result-card h3{margin:0 0 5px;color:#082e50;font:700 16px Outfit,Arial,sans-serif}.result-card p{margin:0;color:#637d8b;font-size:11px}
.result-card .result-price{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.result-card .result-price strong{color:#082e50;font:800 21px Outfit,Arial,sans-serif}.result-card .result-price a{padding:9px 13px;border-radius:8px;background:#f36d38;color:#fff;text-decoration:none;font-size:11px;font-weight:800}
@media(max-width:760px){.hotel-card,.car-card{grid-template-columns:145px minmax(0,1fr)}.hotel-card-bottom,.car-price-panel{grid-column:1/-1;display:flex;flex-direction:row;justify-content:space-between;align-items:center;border-left:0;border-top:1px solid #e8eef0;padding:12px 15px}.hotel-book,.car-book{width:auto;min-width:125px}.hotel-photo,.car-image,.hotel-photo img,.car-image img{min-height:130px}.results-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.results-filter-bar .filter-reset{width:100%}}
@media(max-width:560px){.results-heading{align-items:flex-start;flex-direction:column;gap:9px}.results-heading h2{font-size:22px}.results-sort{width:100%;justify-content:space-between}.results-sort select{flex:1;max-width:210px}.results-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.hotel-card,.car-card{grid-template-columns:1fr}.hotel-photo,.car-image,.hotel-photo img,.car-image img{height:165px;min-height:165px}.hotel-card-body,.car-info{padding:14px 15px}.hotel-card-bottom,.car-price-panel{grid-column:auto;padding:12px 15px}.route-visual{grid-template-columns:1fr 1fr;gap:6px;padding:12px}.globe-wrap{display:none}.route-code{font-size:18px}.route-end:last-child{text-align:right}.result-top{padding:14px;gap:8px}.result-title{font-size:15px}.result .price{font-size:21px}.price-label{font-size:9px}.route-meta{padding:10px 14px 2px}.itinerary-detail{margin:9px 12px 0;padding:10px}.result-bottom{align-items:stretch;flex-direction:column;padding:12px 14px}.result .book{width:100%}.result-note{padding:0 14px 12px}.segment-row{grid-template-columns:50px minmax(0,1fr) 58px;gap:7px}.result-card{align-items:flex-start;flex-wrap:wrap}.result-card .result-image{width:88px;height:75px}.result-card .result-price{width:100%;align-items:stretch}.result-card .result-price a{text-align:center}}

/* KAYAK destination confirmation modal used only for destination-page hand-offs */
.s4-airport-modal{display:none;position:fixed;inset:0;z-index:100050;align-items:center;justify-content:center;padding:18px;background:rgba(4,23,39,.76);backdrop-filter:blur(3px)}
.s4-airport-modal.is-open{display:flex}
.s4-airport-dialog{position:relative;width:min(590px,100%);max-height:min(82vh,720px);overflow:auto;padding:28px;background:#fff;border:1px solid #d7e5eb;border-radius:20px;box-shadow:0 25px 80px rgba(0,0,0,.3);color:#173b55}
.s4-airport-dialog h2{margin:8px 44px 9px 0;color:#082e50;font:800 clamp(22px,4vw,30px)/1.15 Outfit,Inter,Arial,sans-serif}
.s4-airport-eyebrow{display:block;color:#0786a8;font-size:10px;font-weight:900;letter-spacing:1.5px}
.s4-airport-intro{margin:0 0 16px;color:#587083;line-height:1.5;font-size:14px}
.s4-airport-close{position:absolute;right:15px;top:14px;width:38px;height:38px;border:0;border-radius:50%;background:#edf5f7;color:#173b55;font-size:25px;cursor:pointer}
.s4-airport-status{margin:12px 0;color:#587083;font-size:13px;line-height:1.45}
.s4-airport-options{display:grid;gap:7px}
.s4-airport-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dce8ed;border-radius:11px;background:#fff;color:#173b55;text-align:left;cursor:pointer}
.s4-airport-option:hover,.s4-airport-option:focus{outline:0;border-color:#13a6c7;background:#effafd}
.s4-airport-option-copy{display:block;min-width:0;flex:1}
.s4-airport-option-copy strong{display:block;color:#082e50;font-size:14px}
.s4-airport-option-copy small{display:block;margin-top:3px;color:#647b8b;font-size:12px}
.s4-airport-code{flex:0 0 auto;color:#087f9f;font-size:12px;font-weight:900}
.s4-airport-actions{display:flex;justify-content:flex-end;margin-top:16px}
.s4-kayak-cancel{padding:10px 16px;border:1px solid #cbdbe2;border-radius:9px;background:#fff;color:#31536a;font-weight:800;cursor:pointer}
@media(max-width:560px){.s4-airport-dialog{padding:22px 17px;border-radius:16px}.s4-airport-modal{padding:10px}}
