
:root{
 --navy:#114573;--navy2:#0c2c43;--cyan:#57cccd;--coral:#fc6864;--green:#16804a;--lime:#57cccd;
 --ink:#17384b;--muted:#687c88;--line:#dce6eb;--soft:#f6fafb;--white:#fff;--shadow:0 20px 55px rgba(10,42,64,.11);--max:1240px;
 --brand-deep:#0c2c43;--brand-blue:#114573;--brand-aqua:#57cccd;--brand-aqua-dark:#2d8f98;--brand-coral:#fc6864;--brand-coral-dark:#f55e5a;--brand-aqua-soft:#eaf8f8;--brand-coral-soft:#fff1f0;--success:#16804a
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.48}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select{font:inherit}.container{width:min(var(--max),92%);margin:auto}
.announcement{background:#09273b;color:#dce7ed;font-size:12px}.announcement .container{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.announcement a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(12,44,67,.08)}.nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:34px;min-height:82px}.logo img{width:190px;height:auto}.navlinks{display:flex;justify-content:center;gap:25px;font-size:13px;font-weight:800;color:#3d5361}.navlinks a{padding:29px 0 27px;border-bottom:2px solid transparent}.navlinks a:hover,.navlinks a.active{color:var(--navy);border-color:var(--coral)}.nav-actions{display:flex;gap:10px;align-items:center}.menu-btn{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;border:1px solid transparent;padding:12px 17px;font-weight:850;cursor:pointer;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--navy);color:#fff}.btn-coral{background:var(--coral);color:#fff}.btn-green{background:var(--lime);color:#092d22;border-color:#239844}.btn-outline{background:#fff;border-color:#cfd9df;color:var(--navy)}.btn-ghost{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.breadcrumbs{font-size:12px;color:#7d8b94;padding:22px 0 14px}.breadcrumbs span{color:#425764}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--coral);font-weight:900}.pill{display:inline-flex;align-items:center;border:1px solid #d8e1e5;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:800;color:#405761;background:#fff}.pill.coral{border-color:#f1b7b4;color:#b84c49}.stars{color:#15964f;letter-spacing:1px}.section{padding:74px 0}.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.section-head h2{font-size:clamp(34px,4.2vw,52px);line-height:1.04;letter-spacing:-1.7px;color:var(--navy);margin:7px 0 9px}.section-head p{max-width:720px;color:#687b86;margin:0}.text-link{color:var(--navy);font-weight:850;text-decoration:underline;text-underline-offset:4px}
/* Home */
.home-hero{position:relative;min-height:690px;background:#071f31;color:#fff;overflow:hidden}.home-hero-media{position:absolute;inset:0}.home-hero-media img{width:100%;height:100%;object-fit:cover;opacity:.57;transition:opacity .3s}.home-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,26,42,.94) 0%,rgba(5,26,42,.74) 45%,rgba(5,26,42,.22) 78%,rgba(5,26,42,.15))}.home-hero-content{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .75fr;gap:70px;align-items:center;padding:90px 0}.home-hero-copy h1{font-size:clamp(52px,6.7vw,84px);line-height:.93;letter-spacing:-3px;margin:12px 0 18px}.home-hero-copy p{font-size:18px;color:#d8e4e9;max-width:690px}.hero-proof{display:flex;gap:28px;margin-top:28px}.hero-proof div{padding-right:28px;border-right:1px solid rgba(255,255,255,.2)}.hero-proof div:last-child{border:0}.hero-proof strong{display:block;font-size:23px}.hero-proof span{font-size:11px;color:#bfd0d8;text-transform:uppercase;letter-spacing:.08em}.home-booking-panel{background:#fff;color:var(--ink);padding:25px;border-radius:10px;box-shadow:var(--shadow)}.home-booking-panel h3{margin:0;color:var(--navy);font-size:24px}.home-booking-panel p{font-size:13px;color:var(--muted)}.booking-panel-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-group{margin-top:13px}.field-group label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#536875;margin-bottom:6px}.field{width:100%;min-height:48px;border:1px solid #cfd9df;border-radius:7px;padding:0 12px;background:#fff;color:#243b49}.home-booking-panel .btn{width:100%;margin-top:14px;min-height:50px}.hero-dots{display:flex;gap:6px;margin-top:24px}.hero-dot{width:26px;height:4px;background:rgba(255,255,255,.35);border:0}.hero-dot.active{background:#fff}.confidence-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);margin-top:-34px;position:relative;z-index:5;background:#fff;box-shadow:var(--shadow)}.confidence-grid>div{padding:22px;border-right:1px solid var(--line)}.confidence-grid>div:last-child{border:0}.confidence-grid strong{font-size:23px;color:var(--navy);display:block}.confidence-grid span{color:#798991;font-size:12px}.editorial-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 300px;gap:14px}.editorial-card{position:relative;overflow:hidden;border-radius:8px;background:#d9e1e6}.editorial-card:first-child{grid-row:1/3}.editorial-card:nth-child(4){grid-column:2/4}.editorial-card img{width:100%;height:100%;object-fit:cover}.editorial-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,25,40,.82))}.editorial-copy{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;color:#fff}.editorial-copy span{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.editorial-copy h3{margin:5px 0;font-size:24px}.tour-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tour-card{border:1px solid var(--line);background:#fff}.tour-card img{width:100%;height:240px;object-fit:cover}.tour-card-body{padding:18px}.tour-card h3{margin:8px 0;font-size:20px;color:var(--navy);line-height:1.15}.tour-meta{display:flex;gap:10px;flex-wrap:wrap;color:#6c7d87;font-size:12px}.tour-price-row{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-top:14px}.tour-price-row strong{font-size:23px;color:var(--navy)}.steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.step-card{padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.step-card .n{font-size:11px;color:var(--coral);letter-spacing:.1em;font-weight:900}.step-card h3{font-size:22px;color:var(--navy);margin:9px 0}.step-card p{color:#6b7d87;font-size:14px}.review-live-card{background:#0c2c43;color:#fff;padding:34px;min-height:270px;display:flex;flex-direction:column;justify-content:center}.review-feature-meta{display:flex;gap:15px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#bcd0da}.review-live-card h3{font-size:21px;margin:16px 0 8px}.review-live-card blockquote{font-size:27px;line-height:1.25;margin:0;color:#f5fbfd}.review-feature-author{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;font-size:12px;color:#bcd0da}.review-feature-author strong{color:#fff}.review-controls{display:flex;gap:8px;margin-top:18px}.review-controls button{width:38px;height:38px;border:1px solid rgba(255,255,255,.25);background:transparent;color:#fff;border-radius:50%;cursor:pointer}
/* Product */
.product-head{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:end;margin-bottom:20px}.product-head h1{font-size:clamp(39px,4.7vw,62px);line-height:1.01;letter-spacing:-2px;color:var(--navy);margin:8px 0 12px;max-width:980px}.rating-line{display:flex;gap:15px;align-items:center;flex-wrap:wrap;color:#647783;font-size:13px}.product-gallery{display:grid;grid-template-columns:1.52fr .74fr;gap:8px;height:540px}.product-gallery>div,.product-gallery .side>div{background:#dfe5e9;overflow:hidden;border-radius:9px;position:relative}.product-gallery img{width:100%;height:100%;object-fit:cover}.product-gallery .side{display:grid;grid-template-rows:1fr 1fr;gap:8px}.gallery-source{position:absolute;right:14px;bottom:14px;background:rgba(7,31,48,.88);color:#fff;border-radius:6px;padding:8px 10px;font-size:11px}.gallery-interest{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.94);padding:11px 13px;border-radius:7px;font-size:12px;box-shadow:0 8px 24px rgba(0,0,0,.12)}.anchor-nav{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-top:22px;overflow:auto}.anchor-nav a{white-space:nowrap;padding:0 0 14px;color:#5d707d;font-weight:850;font-size:13px}.anchor-nav a:hover{color:var(--coral)}
/* Availability */
.availability-shell{border:1px solid #d8e0e4;border-radius:10px;margin:32px 0 42px;box-shadow:0 14px 38px rgba(12,44,67,.08);overflow:visible;position:relative}.availability-top{background:#0c2c43;color:#fff;padding:22px 24px;display:grid;grid-template-columns:1fr auto auto auto auto;gap:12px;align-items:center;border-radius:10px 10px 0 0}.availability-top h3{margin:0;font-size:20px}.availability-chip{background:#fff;color:#114573;border:1px solid #dbe6df;border-radius:999px;padding:12px 15px;min-height:46px;display:flex;align-items:center;gap:9px;font-weight:800;font-size:13px;cursor:pointer}.availability-chip svg{width:18px;height:18px}.book-ahead{background:#eaf8f8;color:#17384b;padding:14px 24px;font-size:13px}.availability-body{padding:26px;background:#fff;border-radius:0 0 10px 10px}.availability-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.package-card{border:1px solid #9caea2;border-radius:10px;padding:21px;position:relative;cursor:pointer;min-height:290px}.package-card.selected{border:2px solid #114573;padding:20px}.package-radio{position:absolute;right:20px;top:20px;width:22px;height:22px;border:2px solid #889b8c;border-radius:50%}.package-card.selected .package-radio:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#114573}.package-card h4{font-size:18px;margin:0 38px 6px 0;color:#114573}.package-card ul{padding-left:18px;color:#43594d;font-size:13px;margin:0 0 15px}.popular-tag{display:inline-block;background:#114573;color:#fff;padding:5px 8px;border-radius:3px;font-size:10px;font-weight:850;margin:5px 0 14px}.package-card label{font-size:12px;font-weight:850;color:#455e6b}.time-select{width:100%;height:48px;border:1px solid #aebbb2;border-radius:999px;padding:0 15px;margin-top:7px;background:#fff}.refund-line{margin-top:13px;font-size:12px;text-decoration:underline;color:#455e6b}.package-total{border-top:1px solid #dfe5e1;margin-top:16px;padding-top:14px}.package-total strong{font-size:18px;color:#114573}.package-total s{margin-left:5px;color:#50655a}.package-total .sale{color:#b63c64}.package-total small{display:block;color:#53695c;margin-top:3px}.reserve-row{display:flex;justify-content:flex-end;margin-top:20px}.reserve-row .btn{min-width:145px}.calendar-popover,.traveler-popover{position:absolute;z-index:25;background:#fff;border:1px solid #e0e5e2;box-shadow:0 24px 65px rgba(12,44,67,.18);border-radius:10px;padding:22px;display:none}.calendar-popover.open,.traveler-popover.open{display:block}.calendar-popover{top:76px;left:18%;width:min(760px,82vw)}.calendar-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.cal-head{display:flex;justify-content:space-between;align-items:center;font-weight:900;color:#114573;margin-bottom:13px}.cal-week,.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.cal-week span{font-size:10px;color:#728178}.cal-day{border:0;background:#fff;min-height:50px;border-radius:5px;font-size:12px;color:#344b3c;cursor:pointer}.cal-day small{display:block;color:#2d8f98;font-size:10px}.cal-day:hover{background:#edf5ef}.cal-day.selected{background:#114573;color:#fff}.cal-day.selected small{color:#d9f5df}.cal-day.disabled{opacity:.3;pointer-events:none}.traveler-popover{top:76px;right:230px;width:300px}.traveler-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #edf0ee}.traveler-row:last-child{border:0}.traveler-label strong{display:block;color:#114573}.traveler-label small{color:#78877e}.counter{display:flex;align-items:center;gap:12px}.counter button{width:30px;height:30px;border-radius:50%;border:1px solid #b9c7bd;background:#fff;color:#114573;font-weight:900;cursor:pointer}.counter span{min-width:18px;text-align:center;font-weight:850}
.product-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px}.content-block{padding:0 0 38px;margin-bottom:34px;border-bottom:1px solid var(--line)}.content-block h2{font-size:28px;color:var(--navy);margin:0 0 15px}.lead{font-size:17px;color:#415663;max-width:830px}.fact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px}.fact{border:1px solid var(--line);padding:15px;border-radius:7px}.fact small{display:block;color:#788992;font-size:11px;margin-bottom:5px}.fact strong{font-size:14px;color:var(--navy)}.clean-list{list-style:none;padding:0;margin:0;display:grid;gap:11px}.clean-list li{display:grid;grid-template-columns:20px 1fr;gap:9px}.clean-list .yes{color:var(--green);font-weight:900}.clean-list .no{color:var(--coral);font-weight:900}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px}.mini-book-help{position:sticky;top:110px;border:1px solid var(--line);padding:22px;border-radius:8px}.mini-book-help h3{margin:0 0 9px;color:var(--navy)}.mini-book-help p{font-size:13px;color:#6a7b85}.mini-book-help .btn{width:100%;margin-top:9px}.source-box{margin-top:14px;background:#f7f9fa;border:1px solid var(--line);padding:12px;font-size:11px;color:#71808a}.source-box a{color:var(--navy);font-weight:850}
.itinerary-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:34px}.timeline{position:relative}.timeline-item{display:grid;grid-template-columns:48px 1fr;gap:14px;padding-bottom:22px;position:relative}.timeline-item:not(:last-child):after{content:"";position:absolute;left:23px;top:46px;bottom:0;border-left:1px dotted #7a8c82}.timeline-num{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#114573;color:#fff;font-weight:900;z-index:2}.timeline-num.start,.timeline-num.end{background:#fee944;color:#23311f;border:2px solid #33422e}.timeline-item h3{margin:1px 0 4px;font-size:18px;color:#114573}.timeline-item p{margin:0;color:#607368;font-size:14px;line-height:1.55}.time-tag{display:inline-block;color:#536a5d;font-size:11px;margin-bottom:4px}.route-map{min-height:560px;background:#f1eee9;border:1px solid #dedbd6;border-radius:9px;position:relative;overflow:hidden}.route-map:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 47%,#e7e1d9 48%,#e7e1d9 51%,transparent 52%),linear-gradient(35deg,transparent 42%,#e7e1d9 43%,#e7e1d9 46%,transparent 47%),radial-gradient(circle at 75% 20%,#d8efcf 0 12%,transparent 13%),radial-gradient(circle at 25% 78%,#d8efcf 0 11%,transparent 12%);opacity:.9}.route-road{position:absolute;height:3px;background:#d0c9c0;transform-origin:left center;border-radius:3px}.route-line{position:absolute;left:22%;top:63%;width:56%;height:3px;background:#114573;transform:rotate(-38deg);transform-origin:left center}.route-pin{position:absolute;width:34px;height:34px;border-radius:50% 50% 50% 0;background:#114573;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;transform:rotate(-45deg);box-shadow:0 4px 12px rgba(0,0,0,.18)}.route-pin span{transform:rotate(45deg)}.route-label{position:absolute;background:rgba(255,255,255,.94);border:1px solid #dbe1dd;padding:7px 9px;border-radius:5px;font-size:11px;color:#17384b;box-shadow:0 5px 15px rgba(0,0,0,.07)}.map-note{position:absolute;left:16px;top:16px;background:#fff;border:1px solid #d8dfda;padding:10px 12px;font-size:11px;color:#617269;border-radius:6px;max-width:240px}.map-note strong{display:block;color:#114573;margin-bottom:3px}
.detail-accordions{border-top:1px solid var(--line)}.detail-accordion{border-bottom:1px solid var(--line)}.detail-accordion button{width:100%;border:0;background:#fff;display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center;text-align:left;padding:20px 0;cursor:pointer}.accordion-icon{width:28px;height:28px;border:1px solid #ccd8dd;border-radius:50%;display:grid;place-items:center;color:var(--navy)}.accordion-icon svg{width:15px;height:15px}.detail-accordion h3{margin:0;color:var(--navy);font-size:20px}.accordion-arrow{font-size:20px;color:#71818a;transition:.2s}.detail-accordion.open .accordion-arrow{transform:rotate(45deg)}.accordion-panel{display:none;padding:0 0 24px 46px;color:#536771}.detail-accordion.open .accordion-panel{display:block}.accordion-panel h4{color:var(--navy);margin:10px 0}.pickup-points{columns:2;column-gap:28px}.pickup-points li{break-inside:avoid;margin-bottom:8px}.help-card{background:#f6f9fa;border:1px solid var(--line);padding:18px;border-radius:7px}.help-card strong{display:block;color:var(--navy)}
/* Generic pages */
.page-hero{background:linear-gradient(120deg,#09273b,#123e5b);color:#fff}.page-hero .container{padding:78px 0}.page-hero h1{font-size:clamp(48px,5.8vw,72px);line-height:.98;letter-spacing:-2.4px;margin:10px 0 16px;max-width:1000px}.page-hero p{font-size:17px;color:#ccdae2;max-width:780px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-panel{border:1px solid var(--line);padding:21px;background:#fff}.info-panel h3{margin:0 0 8px;color:var(--navy)}.info-panel p{margin:0;color:#687a85;font-size:14px}.content-narrow{max-width:860px}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.catalog-card{border:1px solid var(--line);background:#fff}.catalog-card img{height:230px;width:100%;object-fit:cover}.catalog-card-body{padding:18px}.catalog-card h3{font-size:20px;color:var(--navy);margin:8px 0}.filters{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:10px;margin-bottom:26px}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;border:0;background:#fff;padding:19px 0;display:flex;justify-content:space-between;text-align:left;font-weight:850;color:var(--navy);cursor:pointer}.faq-a{display:none;padding:0 0 20px;color:#657781}.faq-item.open .faq-a{display:block}.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:42px}.contact-card{border:1px solid var(--line);padding:25px}.contact-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.contact-row strong{color:var(--navy)}.review-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pro-review-card{border:1px solid var(--line);padding:20px;background:#fff}.pro-review-top{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#7b8a93}.pro-review-card h3{color:var(--navy);margin:10px 0}.pro-review-card p{color:#5a6d78;font-size:14px}.pro-review-by{display:grid;gap:2px;font-size:12px;color:#7a8b95}.pro-review-by strong{color:#334b59}.pickup-type-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.pickup-type{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.pickup-type span{font-size:10px;color:var(--coral);font-weight:900;text-transform:uppercase;letter-spacing:.1em}.pickup-type h3{color:var(--navy);font-size:21px}.meeting-point-list{border-top:1px solid var(--line)}.meeting-point-row{display:grid;grid-template-columns:190px 1fr;gap:30px;padding:18px 0;border-bottom:1px solid var(--line)}.meeting-point-row>span{font-size:10px;color:#83929b;text-transform:uppercase;letter-spacing:.1em}.meeting-point-row h3{margin:0 0 3px;color:var(--navy)}.meeting-point-row p{margin:0;color:#667984;font-size:14px}.hotel-policy-table{border-top:2px solid var(--navy)}.hotel-policy-table>div{display:grid;grid-template-columns:280px 1fr;gap:30px;padding:15px 10px;border-bottom:1px solid var(--line)}.hotel-policy-table strong{color:var(--navy)}.hotel-policy-table span{font-size:14px;color:#61747f}
/* Footer */
.pro-footer{background:linear-gradient(180deg,#071f31,#061927);color:#c3d0d8;padding:0 0 24px;margin-top:70px}.footer-trust{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:40px}.footer-trust span{padding:17px 15px 17px 0;font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#a9bbc6}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr;gap:36px}.footer-logo-transparent{width:250px;height:auto;margin:0 0 14px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.25))}.footer-brand p{font-size:13px;color:#aebfc9;max-width:360px}.pro-footer h4{color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 13px}.pro-footer a,.pro-footer p{font-size:13px;color:#b8c7d0}.pro-footer a{display:block;margin:8px 0}.footer-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.1);margin-top:34px;padding-top:17px;font-size:11px;color:#8297a4}
.note{font-size:12px;color:#7c8a92}.warning-note{background:#fff7f6;border:1px solid #f0d2cf;padding:15px;color:#6f504d}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1040px){.navlinks{display:none}.menu-btn{display:inline-flex}.nav{grid-template-columns:auto 1fr}.nav-actions{justify-self:end}.home-hero-content,.product-layout,.itinerary-layout,.contact-grid{grid-template-columns:1fr}.home-booking-panel{max-width:560px}.confidence-grid,.footer-trust{grid-template-columns:1fr 1fr}.editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 260px 260px}.editorial-card:first-child{grid-column:1/3;grid-row:1/2}.editorial-card:nth-child(4){grid-column:1/3}.tour-grid,.catalog-grid{grid-template-columns:1fr 1fr}.product-gallery{height:460px}.mini-book-help{position:static}.availability-top{grid-template-columns:1fr 1fr}.availability-top h3{grid-column:1/-1}.availability-options{grid-template-columns:1fr 1fr}.calendar-popover{left:3%;width:94%}.traveler-popover{right:3%}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.fact-grid{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr 1fr}.pickup-type-grid{grid-template-columns:1fr 1fr}.review-page-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.announcement .container{padding:7px 0}.announcement .container span:last-child{display:none}.logo img{width:155px}.nav-actions .btn-outline{display:none}.home-hero{min-height:auto}.home-hero-content{padding:58px 0 70px}.home-hero-copy h1{font-size:49px;letter-spacing:-2px}.hero-proof{flex-direction:column;gap:12px}.hero-proof div{border-right:0;border-bottom:1px solid rgba(255,255,255,.17);padding-bottom:10px}.confidence-grid,.tour-grid,.catalog-grid,.steps,.footer-trust,.footer-grid,.info-grid,.pickup-type-grid,.review-page-grid{grid-template-columns:1fr}.confidence-grid>div{border-right:0;border-bottom:1px solid var(--line)}.editorial-grid{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4,280px)}.editorial-card:first-child,.editorial-card:nth-child(4){grid-column:auto;grid-row:auto}.product-head{grid-template-columns:1fr}.product-gallery{grid-template-columns:1fr;height:auto}.product-gallery>div:first-child{height:330px}.product-gallery .side{grid-template-columns:1fr 1fr;grid-template-rows:none}.product-gallery .side>div{height:170px}.availability-top{grid-template-columns:1fr}.availability-top h3{grid-column:auto}.availability-chip{justify-content:center}.availability-options{grid-template-columns:1fr}.calendar-popover{position:fixed;left:4%;right:4%;top:110px;width:92%;max-height:75vh;overflow:auto}.calendar-grid{grid-template-columns:1fr}.traveler-popover{position:fixed;left:8%;right:8%;top:140px;width:84%}.fact-grid{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}.pickup-points{columns:1}.filters{grid-template-columns:1fr}.meeting-point-row,.hotel-policy-table>div{grid-template-columns:1fr;gap:6px}.review-live-card blockquote{font-size:21px}.footer-logo-transparent{width:220px}.page-hero h1{font-size:48px}}

/* Functional CMS additions */
.ue-booking-shell{background:#fff;border:1px solid var(--border,#dfe6eb);border-radius:18px;box-shadow:0 18px 50px rgba(12,44,67,.10);overflow:hidden;margin:28px 0}
.ue-booking-head{background:var(--ink);color:#fff;padding:22px 24px;display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap}
.ue-booking-head h3{margin:0;font-size:22px}.ue-booking-controls{display:flex;gap:10px;flex-wrap:wrap}.ue-booking-controls .field{min-width:160px;background:#fff;color:#203443}
.ue-booking-body{padding:24px}.ue-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ue-option{border:1px solid #cfd8df;border-radius:14px;padding:18px;cursor:pointer;position:relative}.ue-option.active{border:2px solid var(--ink);padding:17px}.ue-option input{position:absolute;right:16px;top:16px}.ue-option h4{margin:0 30px 8px 0;color:var(--ink)}.ue-option p{font-size:13px;color:#657886;min-height:38px}.ue-option-price{font-size:24px;font-weight:800;color:var(--coral)}.ue-option-old{text-decoration:line-through;color:#788895;margin-left:8px}.ue-booking-summary{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:20px;border-top:1px solid #e2e8ec;padding-top:18px}.ue-total strong{display:block;font-size:30px;color:var(--ink)}
.availability-result{margin-top:14px;padding:14px 16px;border-radius:10px;background:#f0faf4;color:#236b44;display:none}.availability-result.error{background:#fff1f1;color:#9a2c2c}.availability-result.show{display:block}.time-chip{display:inline-flex;padding:8px 11px;border:1px solid #ced8df;border-radius:999px;margin:6px 6px 0 0;font-size:13px}.time-chip.sold{opacity:.45;text-decoration:line-through}.time-chip.selected{background:var(--ink);color:#fff;border-color:var(--ink)}
.section-rich{max-width:850px}.section-rich p{font-size:17px;line-height:1.7;color:#415765}.feature-list{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.feature-list article{border:1px solid #dfe6eb;border-radius:14px;padding:20px;background:#fff}.feature-list h3{margin:0 0 8px;color:var(--ink);font-size:17px}.feature-list p{margin:0;color:#687987;font-size:14px}.pickup-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e0e6ea}.pickup-table th,.pickup-table td{text-align:left;border-bottom:1px solid #e5eaee;padding:15px;font-size:14px}.pickup-table th{background:#f6f8fa;color:var(--ink)}.pickup-table tr:last-child td{border-bottom:0}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px}.contact-panel{border:1px solid #dfe6eb;border-radius:16px;background:#fff;padding:24px}.contact-form{display:grid;gap:14px}.contact-form .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{font-size:13px;font-weight:700;color:#344b5b}.contact-form textarea{min-height:150px;resize:vertical}.form-field{width:100%;border:1px solid #cfd8df;border-radius:9px;padding:13px 14px;background:#fff}.form-success{background:#effaf3;color:#1b6a40;border-radius:10px;padding:14px;margin-bottom:16px}.form-error{background:#fff0f0;color:#9a2f2f;border-radius:10px;padding:14px;margin-bottom:16px}
.review-feed{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review-card-db{border:1px solid #dfe6eb;border-radius:14px;padding:20px;background:#fff}.review-card-db .stars{color:#13884b}.review-card-db h3{margin:10px 0 8px;color:var(--ink)}.review-card-db p{color:#506470;font-size:14px}.review-card-db small{color:#7a8a95}
.booking-form-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.booking-recap{border:1px solid #dfe6eb;border-radius:16px;padding:24px;background:#fff;position:sticky;top:110px;height:max-content}.booking-recap h3{margin-top:0;color:var(--ink)}.recap-row{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid #edf0f2}.recap-row:last-child{border-bottom:0}.recap-total{font-size:24px;font-weight:800;color:var(--coral)}
.success-box{max-width:760px;margin:60px auto;padding:36px;border:1px solid #dfe6eb;border-radius:18px;box-shadow:0 18px 50px rgba(12,44,67,.08);text-align:center}.success-box .ref{font-size:28px;font-weight:900;color:var(--ink);letter-spacing:.03em}
.empty-state{border:1px dashed #cdd7de;border-radius:14px;padding:30px;text-align:center;color:#6f808c}
@media(max-width:900px){.ue-options,.feature-list,.review-feed{grid-template-columns:1fr 1fr}.contact-layout,.booking-form-layout{grid-template-columns:1fr}.booking-recap{position:static}.contact-form .row{grid-template-columns:1fr}}
@media(max-width:620px){.ue-options,.feature-list,.review-feed{grid-template-columns:1fr}.ue-booking-head{align-items:stretch}.ue-booking-controls{display:grid;width:100%}.ue-booking-controls .field{width:100%}.ue-booking-summary{align-items:stretch;flex-direction:column}}

/* Additional layout utilities used by CMS-rendered pages */
.split-section{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:center}.about-panel{background:#f5f8fa;border:1px solid #dfe6eb;border-radius:18px;padding:30px}.about-number{font-size:38px;font-weight:900;letter-spacing:-1px;color:var(--ink);margin-bottom:10px}.pickup-visual{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pickup-visual strong{display:grid;place-items:center;min-height:115px;border:1px solid #dfe6eb;background:#fff;border-radius:14px;color:var(--ink);text-align:center;padding:14px}.cta-band{background:var(--ink);color:#fff;border-radius:20px;padding:34px;display:flex;justify-content:space-between;gap:28px;align-items:center}.cta-band h2{color:#fff;margin:5px 0 8px}.cta-band p{color:#d3dee5}.catalog-tools{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.catalog-tools .field{min-width:240px}.page-hero.compact{padding-top:55px;padding-bottom:50px}.narrow{max-width:900px}.book-ahead{background:#eaf7e9;color:#25663b;padding:12px 14px;border-radius:9px;font-size:13px}.gallery-thumb{border-radius:12px;overflow:hidden}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--coral);font-size:12px;font-weight:800}.breadcrumbs{font-size:13px;color:#7a8996;padding:24px 0 16px}.breadcrumbs span{color:#2c4557}.rating-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#657785}.rating-line .stars{color:#168a4b}.product-head{padding-bottom:22px}.product-head h1{font-size:clamp(36px,4.5vw,58px);line-height:1.03;max-width:980px;color:var(--ink);letter-spacing:-1.7px}.gallery{display:grid;grid-template-columns:1.45fr .72fr;gap:12px;height:520px}.gallery>.main,.gallery>.side{min-width:0}.gallery>.main{position:relative;border-radius:14px;overflow:hidden}.gallery>.main img{width:100%;height:100%;object-fit:cover}.gallery>.side{display:grid;grid-template-rows:1fr 1fr;gap:12px}.gallery>.side>*{min-height:0}.photo-count{position:absolute;right:16px;bottom:16px;background:rgba(9,38,58,.88);color:#fff;padding:8px 11px;border-radius:7px;font-size:12px}.subnav{display:flex;gap:26px;border-bottom:1px solid #dfe6eb;margin-top:22px;overflow:auto}.subnav a{padding:0 0 13px;white-space:nowrap;font-size:14px;font-weight:750;color:#60737f}.subnav a.active{color:var(--ink);border-bottom:2px solid var(--coral)}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:38px;padding-top:34px}.content-section{padding-bottom:38px;margin-bottom:34px;border-bottom:1px solid #e1e7eb}.content-section h2{font-size:29px;color:var(--ink)}.mini-book-help{position:sticky;top:105px;border:1px solid #dfe6eb;background:#fff;border-radius:14px;padding:22px;display:grid;gap:10px}.mini-book-help h3{margin:0;color:var(--ink)}.mini-book-help p{font-size:14px;color:#647785}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}.fact{border:1px solid #dfe6eb;border-radius:10px;padding:15px}.fact small{display:block;color:#7a8995;margin-bottom:6px}.fact strong{color:var(--ink);font-size:14px}.itinerary{position:relative}.stop{display:grid;grid-template-columns:42px 1fr;gap:15px;padding-bottom:24px;position:relative}.stop:not(:last-child):after{content:"";position:absolute;left:20px;top:40px;bottom:0;width:1px;background:#ccd6dd}.num{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;z-index:1}.stop h3{margin:2px 0 5px;color:var(--ink)}.stop p{margin:0;color:#687a86;line-height:1.55}.detail-accordions{border-top:1px solid #dfe6eb}.detail-accordion{border-bottom:1px solid #dfe6eb}.accordion-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:18px 0;border:0;background:none;cursor:pointer;text-align:left}.accordion-toggle h3{margin:0;color:var(--ink);font-size:18px}.accordion-arrow{font-size:24px;color:#60747f}.accordion-panel{display:none;padding:0 0 20px;color:#526572}.detail-accordion.open .accordion-panel{display:block}.clean-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:9px}.clean-list li{display:grid;grid-template-columns:24px 1fr;gap:8px}.clean-list .yes{color:#187a49;font-weight:800}.clean-list .no{color:#8998a1}.faq-item{border-bottom:1px solid #dfe6eb}.faq-q{width:100%;border:0;background:none;padding:20px 0;display:flex;justify-content:space-between;gap:18px;text-align:left;font-weight:800;color:var(--ink);font-size:17px;cursor:pointer}.faq-a{display:none;padding:0 0 20px;color:#5f727e}.faq-item.open .faq-a{display:block}.field-group{display:grid;gap:6px}.field-group label{font-size:12px;font-weight:800}.home-booking-panel .field{width:100%}.booking-panel-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.text-link{font-weight:800;color:var(--ink)}
@media(max-width:1000px){.split-section,.page-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.gallery{height:450px}.mini-book-help{position:static}.cta-band{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.gallery{grid-template-columns:1fr;height:auto}.gallery>.main{height:340px}.gallery>.side{grid-template-columns:1fr 1fr;grid-template-rows:none;height:160px}.facts,.pickup-visual,.booking-panel-row{grid-template-columns:1fr}.cta-band{padding:25px}.catalog-tools .field{min-width:100%}}

/* V3 PayPal checkout */
.payment-choice-wrap{margin:30px 0 18px}.payment-choice{display:block;border:1px solid #d9e2e8;border-radius:12px;padding:0;margin:12px 0;background:#fff;cursor:pointer;transition:.18s ease}.payment-choice:hover{border-color:#9fb2bf;box-shadow:0 8px 24px rgba(12,44,67,.06)}.payment-choice.selected{border:2px solid var(--primary,#0c2c43);box-shadow:0 10px 28px rgba(12,44,67,.08)}.payment-choice>input{position:absolute;opacity:0;pointer-events:none}.payment-choice-body{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px}.payment-choice-body strong{display:block;color:#0c2c43;font-size:16px;margin-bottom:4px}.payment-choice-body small{display:block;color:#6e7f8b;line-height:1.4}.payment-choice-money{text-align:right;min-width:110px}.payment-choice-money b{display:block;color:#0c2c43;font-size:22px}.payment-choice-money small{font-size:12px}.terms-check{display:flex;align-items:flex-start;gap:9px;font-size:13px;color:#586c79;margin:18px 0}.terms-check input{margin-top:2px}.secure-note{border-top:1px solid #e1e7eb;margin-top:18px;padding-top:16px;display:grid;gap:4px}.secure-note strong{color:#0c2c43}.secure-note span{font-size:12px;color:#6e7f8b;line-height:1.45}.payment-page-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:34px;align-items:start}.payment-panel{background:#fff;border:1px solid #dfe6eb;border-radius:14px;padding:28px;box-shadow:0 16px 42px rgba(12,44,67,.08)}.payment-brand-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.paypal-wordmark{font-size:24px;font-weight:900;font-style:italic;color:#114573}.payment-order-box{border:1px solid #e1e7eb;border-radius:10px;padding:20px;margin-top:22px}.payment-order-box h3{color:#0c2c43;margin:0 0 14px}.payment-due{border-top:1px solid #e1e7eb;margin-top:8px;padding-top:14px;font-size:18px}.payment-result{margin-top:12px;color:#0c2c43;font-size:14px}.secure-foot{font-size:12px;color:#6f808c;line-height:1.55;margin-top:18px}.payment-steps{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:14px}.payment-steps li{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}.payment-steps b{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf6f7;color:#0c2c43}.payment-side{position:sticky;top:110px}.confirmation-hero{background:#0c2c43;color:#fff;text-align:center;padding:70px 0 62px}.confirmation-hero h1{font-size:48px;margin:10px 0}.confirmation-hero p{color:#d5e0e6}.confirmation-check{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#1b8a51;color:#fff;font-size:34px;font-weight:900;margin:0 auto 16px}.confirmation-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;align-items:start}.confirmation-card{background:#fff;border:1px solid #dfe6eb;border-radius:14px;padding:30px;box-shadow:0 16px 42px rgba(12,44,67,.08)}.confirmation-ref{background:#f6f9fa;border:1px solid #e1e7eb;border-radius:9px;padding:15px 17px;margin-bottom:22px}.confirmation-ref span{display:block;color:#71828d;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.confirmation-ref strong{display:block;color:#0c2c43;font-size:24px;margin-top:3px}.confirmation-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.confirmation-details>div{border:1px solid #e1e7eb;border-radius:9px;padding:14px}.confirmation-details span{display:block;color:#71828d;font-size:12px;margin-bottom:4px}.confirmation-details b{color:#0c2c43}.confirmation-payment{background:#f7fafb;border-radius:10px;padding:18px;margin-top:20px}.confirmation-payment h3{margin:0 0 8px}.paid-text{color:#16804a!important}.confirmation-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}@media(max-width:900px){.payment-page-grid,.confirmation-grid{grid-template-columns:1fr}.payment-side{position:static}}@media(max-width:600px){.payment-choice-body{align-items:flex-start}.payment-choice-money{min-width:90px}.confirmation-details{grid-template-columns:1fr}.confirmation-hero h1{font-size:36px}.payment-panel,.confirmation-card{padding:20px}}

/* V4 premium product details + live availability */
.gallery-thumb{cursor:pointer;border:0!important;padding:0!important;background:#eef2f4!important;display:block}
.gallery-thumb:focus-visible{outline:3px solid rgba(12,44,67,.22);outline-offset:2px}

.availability-section{margin:4px 0 42px}
.ue-booking-shell{border:1px solid #d8e1e6;border-radius:14px;box-shadow:0 18px 50px rgba(12,44,67,.09);overflow:hidden;background:#fff}
.ue-booking-head{background:linear-gradient(110deg,var(--ink),#123e59);color:#fff;padding:24px 26px;display:flex;justify-content:space-between;align-items:center;gap:26px}
.ue-booking-title{max-width:410px}.ue-booking-title h3{margin:3px 0 6px;font-size:22px;color:#fff}.ue-booking-title p{margin:0;color:#cbd9e1;font-size:13px;line-height:1.45}.booking-step-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#79d9d4;font-weight:900}
.ue-booking-controls{display:grid;grid-template-columns:170px 120px auto;gap:10px;align-items:end}
.availability-field{display:grid;gap:5px}.availability-field>span{font-size:10px;color:#dce7ed;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.availability-field .field{border:0;border-radius:6px;background:#fff;min-height:45px;color:#173447}
.availability-check-btn{min-height:45px;white-space:nowrap;padding-left:20px;padding-right:20px}
.button-spinner,.availability-spinner{display:inline-block;width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ueSpin .75s linear infinite}
@keyframes ueSpin{to{transform:rotate(360deg)}}

.book-ahead{display:flex;gap:12px;align-items:center;background:#eef8ef;color:#245b39;padding:13px 26px;border-radius:0;border-bottom:1px solid #dbe9dd}
.book-ahead-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#d6efda;font-weight:900}
.book-ahead strong,.book-ahead span{display:block}.book-ahead>div>span{font-size:12px;color:#54705c;margin-top:2px}
.ue-booking-body{padding:26px}
.availability-step-head{display:flex;align-items:flex-start;gap:12px;margin:3px 0 15px}
.availability-step-head+.ue-options{margin-bottom:26px}
.availability-step-number{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#edf3f6;color:var(--ink);font-size:12px;font-weight:900;flex:0 0 auto}
.availability-step-head strong{display:block;color:var(--ink);font-size:15px}.availability-step-head div>span{display:block;color:#6f808b;font-size:12px;margin-top:2px}

.ue-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:0}
.ue-option{border:1px solid #ced9df;border-radius:10px;padding:20px;cursor:pointer;position:relative;transition:.18s;background:#fff;min-height:168px}
.ue-option:hover{border-color:#91a7b4;box-shadow:0 7px 20px rgba(12,44,67,.05)}
.ue-option.active{border:2px solid var(--ink);padding:19px;box-shadow:0 9px 24px rgba(12,44,67,.07)}
.ue-option>input{position:absolute;opacity:0;pointer-events:none}
.option-radio-ui{position:absolute;right:18px;top:18px;width:22px;height:22px;border-radius:50%;border:2px solid #8397a4;background:#fff}
.ue-option.active .option-radio-ui{border:6px solid var(--ink)}
.option-badge{display:inline-flex;background:#edf6f4;color:#1d6b5b;border-radius:3px;padding:4px 7px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900;margin-bottom:10px}
.ue-option h4{margin:0 34px 7px 0;color:var(--ink);font-size:17px}
.ue-option p{font-size:12px;line-height:1.45;color:#657985;min-height:36px;margin:0 0 15px}
.option-price-row{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.ue-option-price{font-size:23px;font-weight:900;color:var(--ink)}.ue-option-old{text-decoration:line-through;color:#85949e;font-size:13px}.option-price-row small{color:#7a8a94;font-size:11px}.option-discount{font-size:10px;font-weight:800;color:#a64747;background:#fff0f0;padding:3px 6px;border-radius:3px}

.availability-result{display:block;margin:0 0 24px;border-radius:9px;border:1px solid #dce4e8;padding:17px;background:#f8fafb;color:#3d5260}
.availability-result.neutral{background:#f8fafb}.availability-result.loading{background:#f5f8fa}.availability-result.success{background:#f1f9f4;border-color:#cce7d6;color:#245c3b}.availability-result.error{background:#fff5f4;border-color:#efd1ce;color:#8d3d38}
.availability-status{display:flex;gap:12px;align-items:center}.availability-status-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid currentColor;font-weight:900;flex:0 0 auto}.availability-status strong{display:block;font-size:14px}.availability-status div>span{display:block;font-size:12px;opacity:.76;margin-top:2px;line-height:1.4}
.time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}
.time-chip{margin:0;border:1px solid #bfcdd5;border-radius:7px;background:#fff;color:var(--ink);padding:12px 13px;display:flex;align-items:flex-start;flex-direction:column;gap:2px;cursor:pointer;text-align:left}
.time-chip>span{font-weight:850;font-size:14px}.time-chip small{font-size:10px;color:#71838e}.time-chip:hover{border-color:#6f8998}.time-chip.selected{background:var(--ink);color:#fff;border-color:var(--ink)}.time-chip.selected small{color:#dbe5eb}
.availability-empty{grid-column:1/-1;border:1px solid #e3e8eb;background:#f7f9fa;padding:18px}.availability-empty strong,.availability-empty span{display:block}.availability-empty span{font-size:12px;color:#71828d;margin-top:4px}

.ue-booking-summary{display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #e1e7eb;padding-top:20px;margin-top:0}
.booking-selection-summary{display:flex;align-items:center;gap:34px;flex-wrap:wrap}.booking-selection-summary small{display:block;color:#7a8994;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:800}.booking-selection-summary strong{display:block;color:var(--ink);font-size:28px;margin-top:2px}.selected-time-summary strong{font-size:16px}
.reserve-primary{min-width:170px;min-height:46px}.reserve-primary[disabled]{opacity:.45;cursor:not-allowed;transform:none}

.detail-accordions{border-top:1px solid #dfe5e9}
.detail-accordion{border-bottom:1px solid #dfe5e9}
.detail-accordion .accordion-toggle{width:100%;border:0;background:#fff;display:grid!important;grid-template-columns:38px minmax(0,1fr) 28px!important;gap:13px;align-items:center;text-align:left;padding:20px 0;cursor:pointer}
.detail-accordion .accordion-icon{width:32px;height:32px;border:1px solid #cbd8de;border-radius:50%;display:grid;place-items:center;color:var(--ink)}
.detail-accordion .accordion-icon svg{width:17px;height:17px}
.detail-accordion .accordion-title{font-size:18px;font-weight:850;color:var(--ink);line-height:1.2}
.detail-accordion .accordion-arrow{font-size:23px;color:#73848e;transition:.18s;text-align:center}
.detail-accordion.open .accordion-arrow{transform:rotate(45deg)}
.detail-accordion .accordion-panel{display:none;padding:0 0 24px 51px;color:#526572}
.detail-accordion.open .accordion-panel{display:block}
.accordion-lead{margin:0 0 16px;line-height:1.62;color:#536773}
.clean-list{list-style:none;padding:0;margin:9px 0;display:grid;gap:10px}.clean-list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:start}.clean-list .yes{color:#1c7b4a;font-weight:900}.clean-list .no{color:#9b5151;font-weight:900}
.help-card{background:#f6f9fa;border:1px solid #e0e6ea;padding:18px;border-radius:8px}.help-card p{font-size:13px;line-height:1.5}

@media(max-width:1050px){.ue-booking-head{align-items:stretch;flex-direction:column}.ue-booking-controls{grid-template-columns:1fr 1fr auto}.time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ue-booking-controls{grid-template-columns:1fr}.ue-options{grid-template-columns:1fr}.time-grid{grid-template-columns:1fr 1fr}.ue-booking-summary{align-items:stretch;flex-direction:column}.reserve-primary{width:100%}.booking-selection-summary{justify-content:space-between}.detail-accordion .accordion-panel{padding-left:0}.detail-accordion .accordion-toggle{grid-template-columns:34px minmax(0,1fr) 24px!important}}
@media(max-width:460px){.time-grid{grid-template-columns:1fr}.booking-selection-summary{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ue-booking-head,.ue-booking-body{padding-left:18px;padding-right:18px}.book-ahead{padding-left:18px;padding-right:18px}}

/* V4 premium checkout */
.booking-hero{background:linear-gradient(120deg,#0b2c43,#123f5e);color:#fff;padding:52px 0 30px}
.booking-hero h1{margin:7px 0 9px;color:#fff;font-size:clamp(34px,4vw,48px);letter-spacing:-1.2px}
.booking-hero p{margin:0;max-width:760px;color:#cbd9e1}
.checkout-progress{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:10px;margin-top:28px;max-width:940px}
.progress-step{display:flex;align-items:center;gap:9px;color:#97aeba}
.progress-step>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;border:1px solid #688094;font-weight:900;font-size:12px}
.progress-step b,.progress-step small{display:block}.progress-step b{color:#c9d7df;font-size:12px}.progress-step small{font-size:10px}
.progress-step.done>span{background:#1e8a58;border-color:#1e8a58;color:#fff}.progress-step.active>span{background:#fff;border-color:#fff;color:#0b2c43}.progress-step.active b{color:#fff}.progress-line{height:1px;background:#496579}.progress-line.active{background:#6fc8aa}
.booking-checkout-section{background:#f6f8fa}
.checkout-panel{background:#fff;border:1px solid #dfe6eb;border-radius:14px;padding:28px;box-shadow:0 16px 44px rgba(12,44,67,.07)}
.checkout-panel-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:20px}.checkout-panel-head>div{display:flex;align-items:center;gap:11px}.checkout-panel-head h2{margin:0;color:var(--ink);font-size:22px}.checkout-panel-head p{margin:2px 0 0;color:#71818d;font-size:12px;max-width:380px;text-align:right}.checkout-panel-head.compact{margin-top:30px;margin-bottom:6px}
.checkout-section-number{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#edf3f6;color:var(--ink);font-weight:900;font-size:12px}
.checkout-form{display:grid;gap:14px}.field-note{font-size:11px;color:#7c8c96;margin-top:5px}
.checkout-trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;background:#f7fafb;border:1px solid #e3e9ed;border-radius:9px;padding:14px}
.checkout-trust-row b,.checkout-trust-row span{display:block}.checkout-trust-row b{font-size:11px;color:var(--ink)}.checkout-trust-row span{font-size:10px;color:#72838e;margin-top:3px;line-height:1.4}
.payment-plan-badge{display:inline-flex;background:#eaf6ef;color:#217149;font-size:9px;font-weight:900;text-transform:uppercase;padding:4px 6px;border-radius:3px;margin-bottom:6px}
.checkout-submit{width:100%;min-height:50px;font-size:15px;display:flex;justify-content:center;gap:8px}
.booking-recap{padding:0;overflow:hidden;border-radius:14px;box-shadow:0 14px 36px rgba(12,44,67,.07)}
.booking-recap-image{width:100%;height:175px;object-fit:cover;background:#eef2f4}.booking-recap-body{padding:22px}.booking-recap-body h3{font-size:18px;line-height:1.3}
.total-row{margin-top:3px;border-top:1px solid #dfe5e9!important}.deposit-preview{margin-top:16px;background:#edf7ef;border:1px solid #d4e9d9;border-radius:8px;padding:14px}.deposit-preview span,.deposit-preview strong,.deposit-preview small{display:block}.deposit-preview span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#5e7766;font-weight:800}.deposit-preview strong{font-size:19px;color:#1f6845;margin-top:3px}.deposit-preview small{font-size:11px;color:#657b6b;margin-top:2px}.recap-change-link{display:block;margin-top:16px;font-size:12px;font-weight:800;color:var(--ink)}
@media(max-width:900px){.checkout-progress{grid-template-columns:auto 1fr auto 1fr auto 1fr auto}.progress-step div{display:none}.checkout-panel-head{flex-direction:column}.checkout-panel-head p{text-align:left}.checkout-trust-row{grid-template-columns:1fr}}
@media(max-width:600px){.checkout-progress{gap:5px}.progress-line{min-width:12px}.booking-hero{padding-top:38px}.checkout-panel{padding:20px}.checkout-panel-head>div{align-items:flex-start}.checkout-panel-head h2{font-size:20px}.booking-recap-image{height:150px}}


/* V5 clean product experience */
.product-head-booking{
  min-width:220px;
  display:grid;
  justify-items:end;
  align-content:end;
  gap:2px;
  padding-bottom:2px;
}
.product-head-booking>span{
  color:#7a8994;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:850;
}
.product-head-booking>strong{
  color:var(--ink);
  font-size:30px;
  line-height:1;
  letter-spacing:-.8px;
}
.product-head-booking>small{
  color:#7a8994;
  font-size:10px;
  margin:3px 0 10px;
}
.product-head-booking .btn{min-width:190px}

.subnav-button{
  appearance:none;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:#60737f;
  padding:0 0 13px;
  font-size:14px;
  font-weight:750;
  white-space:nowrap;
  cursor:pointer;
}
.subnav-button:hover,.subnav-button:focus-visible{
  color:var(--ink);
  border-bottom-color:var(--coral);
  outline:0;
}

/* About-this-experience checklist: no browser bullets, only the check mark. */
.checks{
  list-style:none!important;
  padding:0!important;
  margin:22px 0 0!important;
  display:grid;
  gap:12px;
}
.checks li{
  list-style:none!important;
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  gap:12px;
  align-items:start;
  margin:0;
  padding:0;
  color:#425966;
}
.checks li::marker{content:""}
.checks li>b{
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  color:#19794b;
  font-size:14px;
  line-height:1;
  font-weight:900;
  margin-top:1px;
}
.checks li>span{
  display:block;
  line-height:1.55;
}

/* Availability now opens in-place as a professional modal instead of jumping down the page. */
body.availability-open{overflow:hidden}
.availability-modal{
  position:fixed;
  inset:0;
  z-index:200;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.availability-modal.open{display:flex}
.availability-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(6,24,37,.66);
  backdrop-filter:blur(3px);
}
.availability-modal-dialog{
  position:relative;
  z-index:1;
  width:min(1120px,96vw);
  max-height:92vh;
  background:#fff;
  border-radius:16px;
  box-shadow:0 30px 90px rgba(3,24,40,.34);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.25);
}
.availability-modal-bar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:18px 22px 16px;
  border-bottom:1px solid #e2e8ec;
  background:#fff;
}
.availability-modal-bar h2{
  margin:2px 0 2px;
  color:var(--ink);
  font-size:21px;
}
.availability-modal-bar p{
  margin:0;
  color:#6c7f8b;
  font-size:12px;
  max-width:760px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.availability-modal-close{
  width:38px;
  height:38px;
  border-radius:50%;
  border:1px solid #d6e0e5;
  background:#fff;
  color:var(--ink);
  font-size:26px;
  line-height:1;
  cursor:pointer;
  display:grid;
  place-items:center;
}
.availability-modal-close:hover{background:#f3f6f8}
.availability-modal-scroll{
  max-height:calc(92vh - 78px);
  overflow:auto;
  background:#f6f8fa;
  padding:18px;
}
.modal-availability-section{
  margin:0!important;
}
.modal-availability-section .ue-booking-shell{
  box-shadow:none;
  border-radius:12px;
}
.modal-availability-section .ue-booking-head{
  border-radius:12px 12px 0 0;
}
.modal-availability-section .ue-booking-body{
  padding-bottom:22px;
}

/* Itinerary editor in admin gets its own V5 styles through admin.css, but public stop spacing is also tightened. */
.itinerary .stop p strong{
  color:#536b5c;
  font-size:12px;
  letter-spacing:.01em;
}

@media(max-width:760px){
  .product-head{grid-template-columns:1fr}
  .product-head-booking{
    justify-items:start;
    min-width:0;
    border-top:1px solid #e2e8ec;
    padding-top:14px;
  }
  .product-head-booking .btn{width:100%}
  .availability-modal{padding:0}
  .availability-modal-dialog{
    width:100vw;
    max-height:100vh;
    height:100vh;
    border-radius:0;
  }
  .availability-modal-scroll{max-height:calc(100vh - 76px);padding:10px}
  .availability-modal-bar{padding:15px 16px}
  .availability-modal-bar p{max-width:calc(100vw - 100px)}
}

/* V6 booking accommodation directory */
.accommodation-selector .form-field:disabled{background:#f1f4f6;color:#8998a2;cursor:not-allowed}

/* V6 secure traveler conversation */
.chat-page{background:#f5f7f9;min-height:70vh}.chat-hero{background:linear-gradient(120deg,#0c2c43,#164b66);color:#fff;padding:44px 0}.chat-hero .container{display:flex;align-items:end;justify-content:space-between;gap:30px}.chat-hero h1{margin:7px 0 8px;font-size:clamp(34px,4vw,52px);letter-spacing:-1.4px}.chat-hero p{margin:0;color:#d6e2e8}.chat-booking-chip{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);padding:16px 18px;border-radius:10px;min-width:270px}.chat-booking-chip span,.chat-booking-chip small{display:block;color:#c5d8e2;font-size:12px}.chat-booking-chip strong{display:block;font-size:20px;margin:4px 0}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.chat-card{background:#fff;border:1px solid #dde5ea;border-radius:12px;overflow:hidden;box-shadow:0 16px 50px rgba(12,44,67,.08)}.chat-card-head{padding:18px 20px;border-bottom:1px solid #e4e9ed;display:flex;justify-content:space-between;gap:20px;align-items:center}.chat-card-head strong,.chat-card-head span{display:block}.chat-card-head>div>span{font-size:12px;color:#71828d;margin-top:3px}.chat-live-dot{color:#16804a;font-size:12px;font-weight:800}.chat-thread{height:min(58vh,590px);min-height:420px;overflow:auto;padding:22px;background:#f7f9fa;display:flex;flex-direction:column;gap:12px}.chat-message{display:flex}.chat-message.traveler{justify-content:flex-end}.chat-bubble{max-width:min(74%,620px);background:#fff;border:1px solid #dfe6eb;border-radius:12px 12px 12px 3px;padding:12px 14px;box-shadow:0 3px 12px rgba(12,44,67,.04);line-height:1.45}.chat-message.traveler .chat-bubble{background:#0c2c43;border-color:#0c2c43;color:#fff;border-radius:12px 12px 3px 12px}.chat-bubble small{display:block;margin-top:7px;color:#7b8b96;font-size:11px}.chat-message.traveler .chat-bubble small{color:#b9cad4}.chat-empty,.chat-loading{margin:auto;text-align:center;color:#6f808c}.chat-empty strong,.chat-empty span{display:block}.chat-empty span{font-size:13px;margin-top:5px}.chat-compose{padding:16px 18px;border-top:1px solid #e4e9ed;background:#fff}.chat-compose textarea{width:100%;min-height:88px;resize:vertical;border:1px solid #ccd6dd;border-radius:9px;padding:13px 14px;outline:none}.chat-compose textarea:focus{border-color:#45c7c8;box-shadow:0 0 0 3px rgba(69,199,200,.13)}.chat-compose-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}.chat-compose-foot small{color:#788993;line-height:1.35}.chat-side{position:sticky;top:105px}
@media(max-width:900px){.chat-layout{grid-template-columns:1fr}.chat-side{position:static}.chat-hero .container{align-items:flex-start;flex-direction:column}.chat-booking-chip{width:100%}.chat-thread{min-height:380px}.chat-bubble{max-width:88%}}@media(max-width:600px){.chat-compose-foot{align-items:stretch;flex-direction:column}.chat-compose-foot .btn{width:100%}.chat-thread{padding:14px}.chat-bubble{max-width:94%}}

/* V7 Google Maps accommodation selector */
.accommodation-google-shell{position:relative}.accommodation-google-shell>label{display:block;margin-bottom:7px}.google-place-input-wrap{position:relative}.google-place-input{padding-left:42px;padding-right:100px}.google-place-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#0d5670;font-size:20px;z-index:2}.google-place-status{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:11px;font-weight:800;color:#6d7e89;text-transform:uppercase;letter-spacing:.04em}.google-place-status.success{color:#17834b}.google-place-status.error{color:#b53a3a}.google-place-status.loading{color:#0d5670}.google-place-results{position:absolute;left:0;right:0;top:74px;z-index:50;background:#fff;border:1px solid #d5dfe6;border-radius:12px;box-shadow:0 18px 48px rgba(13,43,69,.16);max-height:360px;overflow:auto;padding:6px}.google-place-result{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;border:0;background:#fff;text-align:left;padding:12px;border-radius:8px;cursor:pointer;color:#203743}.google-place-result:hover,.google-place-result:focus{background:#f2f8fa;outline:none}.google-place-pin{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9f5f7;color:#0d6575;font-weight:900}.google-place-copy{display:grid;gap:3px;min-width:0}.google-place-copy strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.google-place-copy small{font-size:12px;color:#71818c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.google-place-source{font-size:10px;font-weight:800;color:#6c7d89;border:1px solid #dfe7ec;border-radius:999px;padding:5px 8px;white-space:nowrap}.google-place-empty{padding:18px;display:grid;gap:5px}.google-place-empty strong{color:#173b55}.google-place-empty span{color:#71818c;font-size:13px}.selected-accommodation-card{margin-top:9px;border:1px solid #cfe4d7;background:#f5fbf7;border-radius:9px;padding:11px 13px;display:grid;gap:3px}.selected-accommodation-card strong{color:#174b32;font-size:14px}.selected-accommodation-card span{font-size:12px;color:#668075}.selected-accommodation-card[hidden]{display:none}.field-note{margin-top:7px;font-size:12px;color:#72818c;line-height:1.45}
@media(max-width:700px){.google-place-result{grid-template-columns:30px minmax(0,1fr)}.google-place-source{display:none}.google-place-input{padding-right:82px}.google-place-results{top:72px}}

/* V8 — multilingual header + complete mobile refinement */
.language-menu{position:relative}.language-menu summary{list-style:none;display:flex;align-items:center;gap:6px;min-height:40px;padding:0 10px;border:1px solid #d4dde3;border-radius:7px;background:#fff;color:#284355;font-size:11px;font-weight:900;cursor:pointer}.language-menu summary::-webkit-details-marker{display:none}.language-globe{font-size:17px;line-height:1}.language-caret{color:#81909a;font-size:9px}.language-popover{position:absolute;right:0;top:48px;width:260px;max-height:min(520px,70vh);overflow:auto;background:#fff;border:1px solid #dbe3e8;border-radius:10px;box-shadow:0 20px 55px rgba(11,42,64,.18);padding:7px;z-index:120}.language-popover-title{padding:8px 10px 9px;color:#83919a;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.language-popover a{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:9px 10px;border-radius:7px;color:#2c4352}.language-popover a:hover{background:#f2f7f8}.language-popover a.active{background:#edf7f7;color:#0f6265}.language-popover a span{font-weight:800;font-size:13px}.language-popover a small{grid-column:1;color:#83919a;font-size:10px}.language-popover a b{grid-column:2;grid-row:1/3;align-self:center;color:#16804a}.site-mobile-toggle{display:none;width:40px;height:40px;border:1px solid #d4dde3;background:#fff;border-radius:7px;align-items:center;justify-content:center;flex-direction:column;gap:4px;padding:0;cursor:pointer}.site-mobile-toggle span{width:18px;height:2px;background:#29485a;border-radius:2px}.site-mobile-backdrop,.site-mobile-drawer{display:none}.mobile-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #e3e9ed}.mobile-drawer-head img{width:165px;height:auto}.mobile-drawer-head button{width:38px;height:38px;border:0;border-radius:50%;background:#f2f5f7;color:#355161;font-size:25px}.site-mobile-drawer nav{display:grid;padding:10px}.site-mobile-drawer nav a{padding:13px 12px;border-bottom:1px solid #edf1f3;color:#244154;font-size:15px;font-weight:800}.mobile-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:13px 16px}.mobile-languages{padding:15px 16px 22px;border-top:1px solid #e5ebef}.mobile-languages strong{display:block;color:#6e7f89;font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:9px}.mobile-languages>div{display:flex;gap:7px;flex-wrap:wrap}.mobile-languages a{border:1px solid #d8e1e6;border-radius:999px;padding:7px 10px;font-size:11px;color:#405868}.mobile-languages a.active{background:#0c2c43;border-color:#0c2c43;color:#fff}
html[dir="rtl"] body{text-align:right}html[dir="rtl"] .nav,html[dir="rtl"] .section-head,html[dir="rtl"] .tour-price-row{direction:rtl}html[dir="rtl"] .language-popover{right:auto;left:0}

@media(max-width:900px){
  html{scroll-padding-top:72px}body.site-menu-open{overflow:hidden}
  .site-header{backdrop-filter:blur(16px)}.nav{min-height:68px;grid-template-columns:minmax(0,1fr) auto;gap:10px}.logo img{width:154px}.navlinks{display:none!important}.nav-actions{gap:7px}.desktop-whatsapp,.desktop-book{display:none!important}.language-menu summary{height:40px;min-width:54px;justify-content:center}.language-menu .language-globe{display:none}.site-mobile-toggle{display:flex}.language-popover{position:fixed;top:68px;right:10px;width:min(300px,calc(100vw - 20px));max-height:65dvh}
  .site-mobile-backdrop{position:fixed;inset:68px 0 0;background:rgba(5,23,35,.56);z-index:89}.site-menu-open .site-mobile-backdrop{display:block}.site-mobile-drawer{display:block;position:fixed;right:0;top:68px;bottom:0;width:min(360px,91vw);background:#fff;z-index:90;transform:translateX(105%);transition:transform .22s ease;box-shadow:-20px 0 55px rgba(4,24,38,.22);overflow:auto;overscroll-behavior:contain}.site-menu-open .site-mobile-drawer{transform:translateX(0)}
  .container{width:min(100% - 30px,var(--max))}.section{padding:54px 0}.section-head{align-items:flex-start;flex-direction:column;gap:14px}.section-head h2{font-size:clamp(31px,8vw,43px)}
  .home-hero{min-height:auto}.home-hero-media:after{background:linear-gradient(180deg,rgba(4,24,38,.76),rgba(4,24,38,.92))}.home-hero-content{grid-template-columns:1fr;padding:54px 0 56px;gap:30px}.home-hero-copy h1{font-size:clamp(44px,12vw,62px);line-height:.96}.home-hero-copy p{font-size:16px}.home-booking-panel{max-width:none;width:100%;padding:20px}.booking-panel-row{grid-template-columns:1fr 1fr}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(255,255,255,.18);padding-top:16px}.hero-proof div{border-right:1px solid rgba(255,255,255,.16)!important;border-bottom:0!important;padding:0 10px!important}.hero-proof div:first-child{padding-left:0!important}.hero-proof div:last-child{border-right:0!important}.hero-proof strong{font-size:19px}.hero-proof span{font-size:9px}
  .confidence-grid{margin-top:-22px;grid-template-columns:1fr 1fr}.confidence-grid>div{padding:17px}.confidence-grid strong{font-size:19px}
  .tour-grid,.catalog-grid{grid-template-columns:1fr 1fr}.tour-card img{height:210px}.tour-card-body{padding:15px}.tour-card h3{font-size:18px}
  .product-head{grid-template-columns:1fr}.product-head h1{font-size:clamp(35px,8.5vw,52px)}.product-head-booking{width:100%}.product-head-booking .btn{width:100%}.product-gallery{height:auto;display:grid;grid-template-columns:1fr}.product-gallery>div:first-child{height:min(52vw,430px)}.product-gallery .side{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;padding-bottom:3px}.product-gallery .side>div{flex:0 0 44%;height:150px;scroll-snap-align:start}.anchor-nav{gap:20px;scrollbar-width:none}.anchor-nav::-webkit-scrollbar{display:none}
  .page-grid,.product-layout,.itinerary-layout,.contact-grid,.payment-page-grid,.confirmation-grid,.booking-form-layout,.contact-layout{grid-template-columns:1fr!important}.mini-book-help,.payment-side,.booking-recap,.chat-side{position:static!important}
  .availability-modal{padding:0;align-items:flex-end}.availability-modal-dialog{width:100%;height:min(94dvh,900px);max-height:94dvh;border-radius:18px 18px 0 0}.availability-modal-bar{padding:15px 16px}.availability-modal-bar h2{font-size:19px}.availability-modal-bar p{white-space:normal;max-width:none}.availability-modal-scroll{max-height:calc(94dvh - 76px);padding:10px 10px calc(18px + env(safe-area-inset-bottom))}.ue-booking-head,.ue-booking-body{padding-left:16px!important;padding-right:16px!important}.ue-booking-controls{grid-template-columns:1fr!important}.ue-options{grid-template-columns:1fr!important}.time-grid{grid-template-columns:1fr 1fr!important}.reserve-primary{width:100%}.booking-selection-summary{width:100%}
  .detail-accordion .accordion-toggle{min-height:58px}.detail-accordion .accordion-panel{padding-left:0}.clean-list li{grid-template-columns:24px minmax(0,1fr);gap:8px}
  .checkout-progress{overflow-x:auto;padding-bottom:6px}.checkout-panel{padding:20px}.checkout-panel-head{flex-direction:column;gap:10px}.checkout-panel-head p{text-align:left}.checkout-trust-row{grid-template-columns:1fr}.payment-choice-body{align-items:flex-start}.confirmation-card,.payment-panel{padding:20px}
  input.field,select.field,textarea.field,.form-field,.google-place-input{font-size:16px;min-height:48px}.google-place-results{position:fixed;left:10px;right:10px;top:50%;transform:translateY(-50%);max-height:62dvh;border-radius:14px;z-index:220}.google-place-result{padding:13px}.google-place-copy strong{font-size:14px}.google-place-copy small{white-space:normal}
  .pro-footer{margin-top:54px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}.footer-trust{grid-template-columns:1fr 1fr}.footer-trust span{padding:13px 10px}.footer-bottom{align-items:flex-start;flex-direction:column}.footer-logo-transparent{width:220px}
}
@media(max-width:600px){
  .announcement{display:none}.site-header{top:0}.nav{min-height:64px}.site-mobile-drawer{top:64px}.site-mobile-backdrop{inset:64px 0 0}.language-popover{top:64px}.container{width:calc(100% - 24px)}
  .section{padding:44px 0}.section-head h2{font-size:34px}.home-hero-content{padding:44px 0 48px}.home-hero-copy h1{font-size:45px}.home-hero-copy p{font-size:15px}.hero-proof{grid-template-columns:1fr 1fr 1fr}.hero-proof strong{font-size:17px}.hero-proof span{font-size:8px;line-height:1.3}.home-booking-panel{padding:17px}.home-booking-panel h3{font-size:21px}.booking-panel-row{grid-template-columns:1fr}
  .confidence-grid,.tour-grid,.catalog-grid,.footer-grid,.footer-trust,.steps,.feature-list,.review-feed,.facts,.fact-grid,.info-grid,.pickup-type-grid,.review-page-grid{grid-template-columns:1fr!important}.confidence-grid{margin-top:0;border-left:0;border-right:0;box-shadow:none}.confidence-grid>div{display:flex;align-items:center;justify-content:space-between;gap:20px;border-right:0!important}.confidence-grid strong{font-size:18px}.confidence-grid span{text-align:right}.editorial-grid{grid-template-rows:repeat(4,235px)}.tour-card img{height:215px}.tour-price-row{align-items:center}.tour-price-row .btn{padding:10px 13px}
  .product-gallery>div:first-child{height:300px}.product-gallery .side>div{flex-basis:63%;height:140px}.rating-line{gap:8px 12px}.breadcrumbs{padding-top:14px}.anchor-nav{margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}
  .availability-modal-dialog{height:96dvh;max-height:96dvh}.availability-modal-scroll{max-height:calc(96dvh - 72px)}.availability-modal-bar p{font-size:11px}.time-grid{grid-template-columns:1fr!important}.booking-selection-summary{display:grid!important;grid-template-columns:1fr 1fr;gap:14px}.booking-selection-summary>div:last-child{grid-column:1/-1}.ue-booking-summary{gap:14px}.availability-result{font-size:13px}
  .checkout-panel{border-left:0;border-right:0;border-radius:0;margin-left:-12px;margin-right:-12px}.booking-hero{padding-top:30px}.checkout-progress{font-size:11px}.payment-choice-body{gap:12px;padding:15px}.payment-choice-money{min-width:86px}.payment-choice-money b{font-size:19px}.confirmation-hero{padding:48px 0}.confirmation-hero h1{font-size:34px}.confirmation-details{grid-template-columns:1fr}.confirmation-actions{display:grid}.confirmation-actions .btn{width:100%}
  .chat-thread{height:48dvh;min-height:340px;padding:12px}.chat-bubble{max-width:94%}.chat-compose{padding:12px}.chat-compose textarea{font-size:16px}.chat-compose-foot{flex-direction:column;align-items:stretch}.chat-compose-foot .btn{width:100%}
  .mobile-drawer-actions{grid-template-columns:1fr}.language-popover{left:8px;right:8px;width:auto}.language-current{min-width:20px}.footer-brand p{max-width:none}
}
@media(max-width:390px){.logo img{width:140px}.language-menu summary{min-width:48px;padding:0 8px}.home-hero-copy h1{font-size:40px}.hero-proof{grid-template-columns:1fr}.hero-proof div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;padding:8px 0!important}.hero-proof div:last-child{border-bottom:0!important}.product-gallery>div:first-child{height:270px}.mobile-drawer-head img{width:145px}}
/* V8 scalable language selector */
.language-search{position:sticky;top:0;background:#fff;padding:5px 5px 7px;z-index:2}.language-search input,.mobile-language-search{width:100%;min-height:39px;border:1px solid #d7e0e5;border-radius:7px;padding:0 11px;color:#243e4f;background:#fff;font-size:13px;outline:none}.language-search input:focus,.mobile-language-search:focus{border-color:#69bfc1;box-shadow:0 0 0 3px rgba(69,199,200,.13)}.language-choice[hidden],.mobile-languages a[hidden]{display:none!important}.mobile-language-search{margin-bottom:9px}.mobile-languages>div{max-height:220px;overflow:auto;align-content:flex-start}
/* V8 mobile product conversion bar */
.mobile-product-bookbar{display:none}
@media(max-width:760px){
  body.availability-open .mobile-product-bookbar{display:none!important}
  .mobile-product-bookbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:84;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #dfe6ea;box-shadow:0 -12px 32px rgba(11,42,64,.12);backdrop-filter:blur(12px)}
  .mobile-product-bookbar>div{display:grid;line-height:1.05}.mobile-product-bookbar small{font-size:10px;color:#72828d;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.mobile-product-bookbar strong{font-size:20px;color:var(--ink);margin-top:3px}.mobile-product-bookbar .btn{min-width:180px;min-height:46px}.pro-footer{padding-bottom:calc(90px + env(safe-area-inset-bottom))}
}
@media(max-width:390px){.mobile-product-bookbar .btn{min-width:155px;padding-left:12px;padding-right:12px}.mobile-product-bookbar strong{font-size:18px}}

/* V10 traveler chat refinement */
.chat-message-text{overflow-wrap:anywhere}.chat-message-text.is-collapsed{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:9;overflow:hidden;max-height:13.5em;position:relative}.chat-bubble.is-long .chat-message-text.is-collapsed:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:linear-gradient(transparent,#fff)}.chat-message.traveler .chat-bubble.is-long .chat-message-text.is-collapsed:after{background:linear-gradient(transparent,#0c2c43)}.chat-expand-btn{border:0;background:transparent;color:#176b73;padding:7px 0 1px;font-weight:800;font-size:12px;cursor:pointer}.chat-message.traveler .chat-expand-btn{color:#d8ffff}.chat-compose textarea{font-size:16px}.chat-thread{scroll-behavior:smooth}.chat-card-head{background:#fff;position:sticky;top:0;z-index:2}
@media(max-width:600px){.chat-page .section{padding-top:18px}.chat-card{border-radius:0;margin-left:-4%;margin-right:-4%;border-left:0;border-right:0}.chat-card-head{padding:14px 16px}.chat-live-dot{display:none}.chat-thread{height:56dvh;min-height:390px}.chat-message .chat-bubble{max-width:89%;font-size:14px;line-height:1.45}.chat-compose{padding-bottom:max(12px,env(safe-area-inset-bottom))}}

/* V10.1 accommodation directory fallback */
.google-place-result.is-unlisted{background:#fffaf3;border:1px dashed #e5bd76}
.google-place-result.is-unlisted:hover,.google-place-result.is-unlisted:focus{background:#fff5e5}
.google-place-result.is-unlisted .google-place-pin{background:#fff0d6;color:#9a6411}
.selected-accommodation-card em{font-style:normal;font-size:11px;font-weight:800;color:#9a6411;margin-top:2px}

/* V10.3 live Google Maps links (no API key required) */
.map-public-link{display:inline-flex;align-items:center;gap:5px;color:#145f7a;font-weight:800;text-decoration:none;white-space:nowrap}
.map-public-link:hover{text-decoration:underline}

/* V10.7 practical privacy controls */
.ue-cookie-consent[hidden],.ue-cookie-modal[hidden],.ue-language-suggestion[hidden]{display:none!important}
.ue-cookie-consent{position:fixed;left:0;right:0;bottom:0;z-index:340;padding:16px max(16px,env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));pointer-events:none}
.ue-cookie-card{width:min(1120px,100%);margin:auto;background:#fff;border:1px solid #dbe4e9;border-radius:16px;box-shadow:0 24px 70px rgba(10,38,57,.22);padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;pointer-events:auto}
.ue-cookie-copy h2{margin:4px 0 7px;color:var(--ink);font-size:21px;letter-spacing:-.4px}.ue-cookie-copy p{margin:0;color:#526875;max-width:760px;font-size:13px;line-height:1.55}.ue-cookie-copy>a{display:inline-block;margin-top:8px;color:#176f70;font-size:12px;font-weight:800}.ue-cookie-kicker{display:block;color:var(--coral);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.ue-cookie-actions{display:grid;grid-template-columns:auto auto;gap:8px;min-width:320px}.ue-cookie-actions .ue-cookie-manage-link{grid-column:1/-1;border:0;background:transparent;color:#536b78;font-weight:800;font-size:12px;cursor:pointer;padding:5px}
.ue-cookie-modal{position:fixed;inset:0;z-index:350;display:grid;place-items:center;padding:16px}.ue-cookie-modal-backdrop{position:absolute;inset:0;background:rgba(7,27,41,.58);backdrop-filter:blur(3px)}.ue-cookie-modal-panel{position:relative;width:min(620px,100%);max-height:min(760px,90dvh);overflow:auto;background:#fff;border-radius:18px;box-shadow:0 32px 90px rgba(5,28,44,.30);padding:24px}.ue-cookie-modal-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.ue-cookie-modal-head h2{margin:4px 0 0;color:var(--ink);font-size:27px}.ue-cookie-modal-head>button{border:0;background:#f2f5f7;width:38px;height:38px;border-radius:50%;font-size:24px;color:#405867;cursor:pointer}.ue-cookie-intro{color:#617481;font-size:13px;line-height:1.55;margin:14px 0 18px}.ue-cookie-options{border-top:1px solid #e2e8ec}.ue-cookie-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:17px 0;border-bottom:1px solid #e7ecef;position:relative}.ue-cookie-option strong{display:block;color:#17374b;font-size:15px}.ue-cookie-option p{margin:5px 0 0;color:#6b7c87;font-size:12px;line-height:1.45}.ue-cookie-always{color:#16804a;background:#edf8f2;border:1px solid #cce9d8;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900}.ue-cookie-option input{position:absolute;opacity:0;pointer-events:none}.ue-cookie-switch{width:42px;height:24px;border-radius:999px;background:#cfd8dd;position:relative;transition:.2s}.ue-cookie-switch:before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.2s}.ue-cookie-option input:checked+.ue-cookie-switch{background:#177376}.ue-cookie-option input:checked+.ue-cookie-switch:before{transform:translateX(18px)}.ue-cookie-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}
.footer-privacy-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.footer-privacy-links a,.footer-privacy-links button{color:inherit;font:inherit;font-size:12px;background:transparent;border:0;padding:0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.cookie-policy-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:start}.cookie-policy-main h2{color:var(--ink);margin:32px 0 10px}.cookie-policy-main h2:first-child{margin-top:0}.cookie-policy-main>p{color:#526773;line-height:1.65}.cookie-policy-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cookie-policy-cards>div{border:1px solid #dfe6ea;border-radius:12px;padding:18px;background:#fff}.cookie-policy-cards strong{display:block;color:#17374b}.cookie-policy-cards p{color:#687a85;font-size:12px;line-height:1.5}.cookie-policy-cards span{font-size:10px;font-weight:900;color:#177376}.cookie-policy-note{position:sticky;top:110px;background:#f3f8f8;border-left:3px solid var(--cyan);padding:20px}.cookie-policy-note strong{color:var(--ink)}.cookie-policy-note p{color:#637681;font-size:13px;line-height:1.55;margin-bottom:0}
.ue-language-suggestion{position:fixed;top:88px;left:50%;transform:translateX(-50%);z-index:300;width:min(720px,calc(100% - 24px));background:#0c2c43;color:#fff;border:1px solid rgba(255,255,255,.14);box-shadow:0 18px 55px rgba(7,31,48,.22);border-radius:13px;padding:13px 14px 13px 17px;display:flex;align-items:center;justify-content:space-between;gap:18px}.ue-language-suggestion strong{display:block;font-size:14px}.ue-language-suggestion span{display:block;margin-top:2px;color:#c9d8e0;font-size:11px}.ue-language-suggestion-actions{display:flex;gap:7px;flex-shrink:0}.ue-language-suggestion .btn{padding:9px 12px;font-size:11px}.ue-language-suggestion .btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.30)}
@media(max-width:760px){.ue-cookie-consent{padding:10px 10px calc(10px + env(safe-area-inset-bottom))}.ue-cookie-card{grid-template-columns:1fr;gap:14px;padding:17px;border-radius:14px}.ue-cookie-actions{min-width:0;grid-template-columns:1fr 1fr}.ue-cookie-actions .btn{padding:11px 8px;font-size:11px}.ue-cookie-modal{padding:0;align-items:end}.ue-cookie-modal-panel{width:100%;max-height:92dvh;border-radius:18px 18px 0 0;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.ue-cookie-modal-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-policy-layout{grid-template-columns:1fr}.cookie-policy-cards{grid-template-columns:1fr}.cookie-policy-note{position:static}.ue-language-suggestion{top:72px;align-items:stretch;flex-direction:column;gap:10px}.ue-language-suggestion-actions{display:grid;grid-template-columns:1fr 1fr}.ue-language-suggestion .btn{width:100%}.footer-privacy-links{gap:10px}}

/* V10.8 — PayPal + hosted credit/debit card checkout */
.payment-method-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:26px 0 11px}.payment-method-heading span{font-size:17px;font-weight:900;color:var(--navy)}.payment-method-heading small{font-size:12px;color:var(--muted);text-align:right}.payment-method-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.payment-method-tab{appearance:none;border:1px solid #d5dfe5;background:#fff;border-radius:9px;padding:14px 15px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;color:var(--ink);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.payment-method-tab:hover{border-color:#9fb3bf}.payment-method-tab.active{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy);background:#f8fbfc}.payment-method-tab>span:last-child{min-width:0}.payment-method-tab strong,.payment-method-tab small{display:block}.payment-method-tab strong{font-size:14px;color:var(--navy)}.payment-method-tab small{margin-top:2px;font-size:11px;color:#71838e;line-height:1.35}.pay-icon{flex:0 0 34px;width:34px;height:34px;border-radius:7px;display:grid;place-items:center;font-size:17px;font-weight:950}.paypal-icon{background:#e9f2ff;color:#174f94}.card-icon{background:#eef8f7;color:#176f70}.payment-method-pane{display:none;border-top:1px solid #e5ebef;padding-top:17px}.payment-method-pane.active{display:block}.paypal-button-host{min-height:48px;display:flex;align-items:center;justify-content:center}.payment-loading,.payment-unavailable{border:1px solid #dce5ea;background:#f7fafb;border-radius:8px;padding:13px 14px;color:#657984;font-size:13px;line-height:1.5;width:100%}.payment-unavailable{background:#fff7ec;border-color:#ecd6ad;color:#73541d}.card-fields-shell{display:grid;gap:9px}.card-fields-shell>label,.card-field-row label{display:block;font-size:12px;font-weight:800;color:#435967;margin:3px 0 1px}.paypal-card-field{height:50px;min-height:50px;border:1px solid #cfd9df;border-radius:8px;background:#fff;overflow:hidden;padding:0 12px}.paypal-card-field:focus-within{border-color:#52849a;box-shadow:0 0 0 3px rgba(69,199,200,.14)}.card-field-row{display:grid;grid-template-columns:1fr 1fr;gap:11px}.card-pay-button{width:100%;min-height:50px;margin-top:6px}.card-pay-button.is-loading{opacity:.7;pointer-events:none}.card-privacy-note{font-size:11px;color:#73848f;line-height:1.5;border-left:3px solid var(--cyan);padding:7px 0 7px 10px;margin-top:3px}.payment-result:empty{display:none}.payment-result{border-radius:8px;padding:11px 13px;margin-top:14px}.payment-result.is-success{background:#eaf8f0;border:1px solid #bce2ca;color:#17683e}.payment-result.is-warning{background:#fff7e9;border:1px solid #ead39e;color:#73551f}.payment-result.is-error{background:#fff0ef;border:1px solid #efc7c4;color:#983d3a}.checkout-submit[disabled],button[disabled].checkout-submit{opacity:.5;cursor:not-allowed;transform:none!important}.checkout-locked{border:1px solid #efc2bf}.checkout-locked strong{color:#7d2828}
@media(max-width:640px){.payment-method-heading{align-items:flex-start;flex-direction:column;gap:3px}.payment-method-heading small{text-align:left}.payment-method-tabs{grid-template-columns:1fr}.card-field-row{grid-template-columns:1fr}.paypal-card-field{height:52px;min-height:52px}}

/* V10.9 — international tour operator redesign + responsive QA */
:root{--surface:#f7f9fb;--surface-2:#eef3f6;--text:#17384b;--text-soft:#647985;--radius:16px;--radius-lg:24px;--shadow-soft:0 14px 38px rgba(11,42,64,.08);--shadow-card:0 18px 46px rgba(11,42,64,.10)}
body{color:var(--text);font-size:15px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}.container{width:min(var(--max),calc(100% - 48px))}.btn{min-height:44px;border-radius:10px;padding:12px 18px;letter-spacing:-.01em}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(69,199,200,.32);outline-offset:3px}.btn-primary{box-shadow:0 8px 18px rgba(12,44,67,.12)}
.announcement{background:#082437}.announcement .container{padding:8px 0}.site-header{box-shadow:0 1px 0 rgba(12,44,67,.04)}.nav{min-height:78px}.logo img{width:184px}.navlinks{gap:28px}.navlinks a{padding:27px 0 25px;font-size:13px}.desktop-book{padding-inline:20px}.site-mobile-drawer nav a.active{color:var(--navy);background:#f2f7f8;border-radius:8px}.site-mobile-drawer nav a{border-bottom:0}
.destination-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.11);backdrop-filter:blur(8px);color:#fff;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:850;letter-spacing:.02em}.destination-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(69,199,200,.15)}.destination-chip.light{margin-bottom:18px}.destination-chip.compact{background:#f1f7f8;border-color:#d7e5e8;color:#215066;backdrop-filter:none;padding:6px 10px}.product-location-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.home-hero{min-height:720px}.home-hero-media img{opacity:.7}.home-hero-media:after{background:linear-gradient(90deg,rgba(4,25,40,.96) 0%,rgba(4,25,40,.84) 45%,rgba(4,25,40,.42) 72%,rgba(4,25,40,.30))}.home-hero-content{grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:72px;padding:84px 0 90px}.hero-eyebrow{margin-top:18px;color:#8ce4e1!important}.home-hero-copy h1{font-size:clamp(52px,6.1vw,78px);max-width:800px;letter-spacing:-3.5px;line-height:.97;margin:10px 0 20px}.home-hero-copy p{max-width:720px;font-size:18px;line-height:1.6}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.hero-actions .btn{min-height:50px}.hero-proof{margin-top:34px}.hero-proof strong{font-size:22px}.hero-proof span{font-size:10px}.home-booking-panel{border-radius:20px;padding:26px;border:1px solid rgba(255,255,255,.55);box-shadow:0 28px 70px rgba(0,0,0,.24)}.booking-panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.booking-panel-top h3{font-size:25px;margin-top:5px}.booking-secure-badge{background:#eaf7f2;color:#1b6e4b;border:1px solid #cfe8dc;padding:6px 9px;border-radius:999px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;white-space:nowrap}.destination-field{border:1px solid #d8e2e7;border-radius:11px;background:#f7fafb;padding:11px 13px;margin-top:18px}.destination-field span,.destination-field strong{display:block}.destination-field span{color:#71828d;font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:900}.destination-field strong{margin-top:2px;color:#173f54;font-size:14px}.home-booking-panel .field{border-radius:10px;min-height:50px}.booking-panel-submit{min-height:52px!important}.booking-panel-assurance{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #e5ebee;color:#6d7f89;font-size:10px;font-weight:800}.booking-panel-assurance span:before{content:"✓";color:#16804a;margin-right:5px}
.operator-trust-strip{background:#fff;border-bottom:1px solid #e4eaee}.operator-trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.operator-trust-grid>div{display:flex;align-items:center;gap:12px;min-height:92px;padding:17px 18px;border-right:1px solid #e8edf0}.operator-trust-grid>div:first-child{padding-left:0}.operator-trust-grid>div:last-child{border-right:0;padding-right:0}.trust-icon{width:36px;height:36px;border-radius:50%;background:#eef8f7;color:#176f70;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.operator-trust-grid p{margin:0}.operator-trust-grid strong,.operator-trust-grid small{display:block}.operator-trust-grid strong{font-size:13px;color:#17384b}.operator-trust-grid small{margin-top:2px;color:#7a8b95;font-size:10px;line-height:1.35}
.section{padding:82px 0}.section-head{margin-bottom:32px}.section-head h2{font-size:clamp(36px,4vw,50px);letter-spacing:-2px}.premium-features{gap:16px}.premium-features article{border-radius:16px;padding:24px;min-height:190px;box-shadow:0 9px 26px rgba(12,44,67,.045);position:relative;overflow:hidden}.premium-features article:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;bottom:-38px;background:#eef8f7}.feature-number{display:inline-flex;color:#179093;font-size:10px;font-weight:950;letter-spacing:.12em;margin-bottom:28px}.premium-features h3{font-size:19px}.premium-features p{line-height:1.6}
.featured-tours-section{background:#f6f8fa}.tour-grid{gap:22px}.premium-tour-card{border:1px solid #dfe6ea;border-radius:18px;overflow:hidden;box-shadow:0 8px 28px rgba(11,42,64,.055);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.premium-tour-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);border-color:#cedae0}.tour-card-media{display:block;position:relative;overflow:hidden;background:#dce5e8}.premium-tour-card .tour-card-media img{height:242px;transition:transform .35s ease}.premium-tour-card:hover .tour-card-media img{transform:scale(1.025)}.tour-location,.tour-badge{position:absolute;top:14px;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.tour-location{left:14px;background:rgba(8,36,55,.86);color:#fff;backdrop-filter:blur(7px)}.tour-badge{right:14px;background:#fff;color:#17384b;box-shadow:0 5px 18px rgba(0,0,0,.12)}.premium-tour-card .tour-card-body{padding:20px 20px 19px}.tour-card-category{font-size:9px;color:#ea625e;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.premium-tour-card h3{font-size:21px;line-height:1.22;margin:8px 0 12px;min-height:51px}.tour-card-description{color:#687b86;font-size:13px;line-height:1.55;margin:0 0 13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px}.premium-tour-card .tour-meta{padding-top:12px;border-top:1px solid #edf1f3;justify-content:space-between}.tour-rating{color:#17384b;font-weight:850}.tour-rating small{color:#819099;font-weight:600}.premium-tour-card .tour-price-row{border-top:1px solid #edf1f3;padding-top:15px;margin-top:14px}.tour-price-row>div>small{display:block;color:#82919a;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.tour-price-row strong{display:block;font-size:24px;line-height:1.05;margin:2px 0}.tour-card-link{font-size:12px;font-weight:900;color:#17384b;display:inline-flex;align-items:center;gap:7px}.tour-card-link span{transition:transform .18s}.tour-card-link:hover span{transform:translateX(3px)}.price-disclaimer{color:#89969e;font-size:10px;margin:16px 0 0}
.modern-steps{border:0;gap:14px}.modern-steps .step-card{border:1px solid #dfe6ea!important;border-radius:16px;padding:27px}.modern-steps .n{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#eef7f7;color:#176f70!important}.modern-steps h3{font-size:20px}.reviews-section .review-card-db{border-radius:16px;padding:22px;min-height:240px;box-shadow:0 8px 26px rgba(11,42,64,.04)}.review-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.review-card-top>span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#87949c;font-weight:900}.review-card-db p{line-height:1.6}.pickup-home-section h2{font-size:clamp(36px,4vw,50px);line-height:1.06;color:var(--navy)}.pickup-visual strong{min-height:135px;align-content:center;gap:8px}.pickup-visual strong span{display:block;color:#159094;font-size:10px;letter-spacing:.12em}.international-cta{border-radius:24px;padding:40px 42px;background:linear-gradient(115deg,#0a293e,#12465e);box-shadow:0 20px 55px rgba(10,42,64,.14)}
.tours-hero{background:linear-gradient(115deg,#08273b,#123f5a)}.tours-hero .container{padding:76px 0}.tours-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:60px;align-items:end}.tours-hero h1{margin-top:8px}.tours-hero-stat{border-left:1px solid rgba(255,255,255,.2);padding-left:30px}.tours-hero-stat strong,.tours-hero-stat span,.tours-hero-stat small{display:block}.tours-hero-stat strong{font-size:54px;line-height:1;color:#fff}.tours-hero-stat span{margin-top:7px;font-weight:800}.tours-hero-stat small{margin-top:9px;color:#bfcfd8;font-size:11px;line-height:1.5}.tours-catalog-section{background:#fbfcfd}.international-filter-bar{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.65fr) auto;align-items:end;gap:12px;background:#fff;border:1px solid #dde5e9;border-radius:16px;padding:16px;box-shadow:0 12px 34px rgba(12,44,67,.055);position:relative;z-index:2}.international-filter-bar label{display:block;margin:0 0 6px;color:#607681;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.international-filter-bar .field{min-width:0!important;border-radius:9px}.catalog-count{min-width:105px;padding:6px 10px 4px;border-left:1px solid #e3e9ed}.catalog-count span,.catalog-count small{display:block;color:#87959d;font-size:9px;text-transform:uppercase;letter-spacing:.07em;font-weight:800}.catalog-count strong{display:block;font-size:24px;line-height:1.1;color:#17384b}.tour-empty-state{text-align:center;padding:70px 20px;border:1px dashed #ccd9df;border-radius:18px;background:#fff;margin-top:28px}.tour-empty-state>span{font-size:34px}.tour-empty-state h2{font-size:24px;color:#17384b}.tour-empty-state p{color:#6e808a}
.product-head{align-items:center}.product-head h1{letter-spacing:-2.5px}.operator-line{color:#345a6d;font-weight:800}.product-head-booking{background:#f7fafb;border:1px solid #dde6ea;border-radius:14px;padding:15px 16px;min-width:240px}.gallery{border-radius:18px}.gallery>.main,.gallery-thumb{border-radius:16px!important}.subnav{position:sticky;top:78px;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);padding-top:14px;margin-top:18px}.page-grid{grid-template-columns:minmax(0,1fr) 350px;gap:46px}.content-section h2{letter-spacing:-.8px}.facts .fact{border-radius:12px;background:#fbfcfd}.mini-book-help{border-radius:16px;padding:23px;box-shadow:var(--shadow-soft)}.direct-booking-assurance{display:grid;gap:8px;padding:14px 0;border-top:1px solid #e4eaee;border-bottom:1px solid #e4eaee;margin:5px 0}.direct-booking-assurance span{font-size:11px;color:#5f7480}.direct-booking-assurance b{color:#17804b;margin-right:6px}.mobile-bookbar-trust{display:none}.ue-booking-shell{border-radius:16px}.ue-booking-head{background:#f7fafb}.ue-option{border-radius:12px}.availability-modal-dialog{border-radius:20px}.availability-modal-bar{background:#0a2d43}.checkout-panel,.booking-recap,.payment-panel,.confirmation-card{border-radius:18px}
.footer-security{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid rgba(255,255,255,.12);border-radius:14px;margin-bottom:44px}.footer-security>div{padding:16px 18px;border-right:1px solid rgba(255,255,255,.12)}.footer-security>div:last-child{border-right:0}.footer-security strong,.footer-security span{display:block}.footer-security strong{font-size:12px;color:#fff}.footer-security span{font-size:10px;color:#aebfca;margin-top:3px;line-height:1.4}
body.cookie-banner-open .mobile-product-bookbar,body.cookie-modal-open .mobile-product-bookbar{display:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.premium-tour-card,.tour-card-media img,.tour-card-link span{transition:none!important}.premium-tour-card:hover,.btn:hover{transform:none!important}}
@media(max-width:1100px){.home-hero-content{grid-template-columns:minmax(0,1fr) 390px;gap:42px}.operator-trust-grid{grid-template-columns:1fr 1fr}.operator-trust-grid>div:nth-child(2){border-right:0}.operator-trust-grid>div:nth-child(-n+2){border-bottom:1px solid #e8edf0}.operator-trust-grid>div:nth-child(3){padding-left:0}.tours-hero-layout{grid-template-columns:1fr 210px}.page-grid{gap:30px}}
@media(max-width:900px){.container{width:calc(100% - 32px)}.nav{min-height:68px}.home-hero-content{grid-template-columns:1fr;padding:56px 0 62px;gap:34px}.home-hero-copy{max-width:760px}.home-hero-copy h1{font-size:clamp(45px,8.5vw,64px);max-width:680px}.home-booking-panel{max-width:690px}.operator-trust-grid{grid-template-columns:1fr 1fr}.section{padding:64px 0}.premium-features{grid-template-columns:1fr 1fr}.tours-hero-layout{grid-template-columns:1fr}.tours-hero-stat{border-left:0;border-top:1px solid rgba(255,255,255,.18);padding:20px 0 0;display:grid;grid-template-columns:auto 1fr;gap:0 14px;align-items:center}.tours-hero-stat strong{grid-row:1/3;font-size:45px}.tours-hero-stat small{grid-column:1/-1}.international-filter-bar{grid-template-columns:1fr 1fr}.catalog-count{grid-column:1/-1;border-left:0;border-top:1px solid #e3e9ed;padding:10px 0 0;display:flex;align-items:baseline;gap:6px}.catalog-count span,.catalog-count small{display:inline}.subnav{top:68px}.footer-security{grid-template-columns:1fr}.footer-security>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.footer-security>div:last-child{border-bottom:0}html[dir="rtl"] .site-mobile-drawer{right:auto;left:0;transform:translateX(-105%);box-shadow:20px 0 55px rgba(4,24,38,.22)}html[dir="rtl"] .site-menu-open .site-mobile-drawer{transform:translateX(0)}}
@media(max-width:600px){.container{width:calc(100% - 24px)}.nav{min-height:64px}.logo img{width:148px}.language-menu summary,.site-mobile-toggle{width:42px;height:42px;min-height:42px}.language-menu summary{min-width:50px}.home-hero-media:after{background:linear-gradient(180deg,rgba(4,24,38,.72),rgba(4,24,38,.95))}.home-hero-content{padding:38px 0 44px}.destination-chip{font-size:10px;padding:6px 9px}.home-hero-copy h1{font-size:clamp(37px,10.5vw,45px);line-height:1;letter-spacing:-2px;margin-top:10px}.home-hero-copy p{font-size:15px;line-height:1.55}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:22px}.hero-actions .btn{width:100%}.hero-proof{grid-template-columns:repeat(3,1fr);margin-top:26px}.hero-proof div{padding:0 8px!important}.hero-proof strong{font-size:16px}.hero-proof span{font-size:7.5px}.home-booking-panel{border-radius:16px;padding:18px}.booking-panel-top{display:block}.booking-secure-badge{display:inline-flex;margin-top:9px}.booking-panel-top h3{font-size:22px}.booking-panel-assurance{display:grid;grid-template-columns:1fr 1fr;justify-content:start}.booking-panel-assurance span:last-child{grid-column:1/-1}.operator-trust-grid{grid-template-columns:1fr}.operator-trust-grid>div{border-right:0!important;border-bottom:1px solid #e8edf0!important;padding:14px 0!important;min-height:76px}.operator-trust-grid>div:last-child{border-bottom:0!important}.trust-icon{width:34px;height:34px}.section{padding:52px 0}.section-head{margin-bottom:24px}.section-head h2{font-size:32px;letter-spacing:-1.2px}.premium-features{grid-template-columns:1fr!important}.premium-features article{min-height:0}.tour-grid{grid-template-columns:1fr!important;gap:16px}.premium-tour-card .tour-card-media img{height:225px}.premium-tour-card h3{min-height:0;font-size:20px}.premium-tour-card .tour-card-body{padding:18px}.modern-steps{grid-template-columns:1fr!important}.modern-steps .step-card{padding:22px}.review-feed{grid-template-columns:1fr!important}.pickup-visual{grid-template-columns:1fr 1fr!important}.pickup-visual strong{min-height:105px;font-size:12px}.international-cta{padding:28px 22px;border-radius:18px}.tours-hero .container{padding:52px 0}.tours-hero h1{font-size:40px;letter-spacing:-1.8px}.international-filter-bar{grid-template-columns:1fr;padding:12px;border-radius:14px}.catalog-count{grid-column:auto}.tours-catalog-grid{margin-top:20px!important}.product-location-line{align-items:flex-start;flex-direction:column}.product-head h1{font-size:34px!important;letter-spacing:-1.5px}.product-head-booking{width:100%;padding:13px 14px}.rating-line{font-size:12px}.operator-line{width:100%}.gallery>.main{height:310px}.gallery>.side{height:130px}.subnav{top:64px;margin-left:-12px;margin-right:-12px;padding:12px 12px 0}.content-section h2{font-size:25px}.page-grid{padding-top:26px}.mini-book-help{box-shadow:none}.mobile-product-bookbar{padding-top:9px!important}.mobile-bookbar-trust{display:block;position:absolute;left:12px;top:-18px;background:#0c2c43;color:#fff;border-radius:6px 6px 0 0;padding:4px 7px;font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.footer-security{margin-bottom:32px}.ue-cookie-card{max-height:70dvh;overflow:auto}.ue-language-suggestion{max-height:calc(100dvh - 90px);overflow:auto}}
@media(max-width:390px){.home-hero-copy h1{font-size:36px}.hero-proof{grid-template-columns:1fr!important}.hero-proof div{display:flex;align-items:baseline;justify-content:space-between}.booking-panel-assurance{grid-template-columns:1fr}.booking-panel-assurance span:last-child{grid-column:auto}.pickup-visual{grid-template-columns:1fr!important}.tour-price-row{gap:8px}.tour-card-link{font-size:11px}.mobile-product-bookbar .btn{min-width:148px!important}.mobile-product-bookbar strong{font-size:17px!important}}

/* V10.10 — destination-ready UX + refined international footer */
.hero-destination-pill{display:inline-flex;align-items:center;gap:9px;max-width:100%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.10);backdrop-filter:blur(12px);border-radius:999px;padding:8px 12px;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.hero-destination-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(69,199,200,.16);flex:0 0 auto}
.hero-destination-pill span{font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.11em;font-weight:900;color:#b9d9df;white-space:nowrap}
.hero-destination-pill strong{font-size:12px;line-height:1;font-weight:900;letter-spacing:-.01em;color:#fff;white-space:nowrap}
.hero-destination-pill small{font-size:10px;line-height:1;color:#c9d8de;white-space:nowrap}
.hero-destination-pill.compact{margin-bottom:18px;padding:7px 11px;background:rgba(255,255,255,.09)}
.home-hero-content{align-items:center}
.home-hero-copy{padding-right:8px}
.home-booking-panel{background:rgba(255,255,255,.985)}
.home-booking-panel>p{margin:10px 0 17px;color:#70818b;font-size:12px;line-height:1.5}
.home-booking-panel .field-group{margin-top:13px}
.home-booking-panel .field-group label{display:block;margin-bottom:6px;color:#627580;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.destination-select-group{position:relative}
.destination-select{font-weight:800;color:#153d51;background-color:#f8fbfc;border-color:#d8e4e8!important}
.booking-panel-row{gap:11px}
.booking-panel-submit{margin-top:15px}
.featured-tours-section .section-head .eyebrow{color:#177f82}
.premium-tour-card{background:#fff}
.premium-tour-card .tour-card-media:after{content:"";position:absolute;inset:auto 0 0;height:36%;background:linear-gradient(180deg,transparent,rgba(4,29,44,.14));pointer-events:none}
.tour-location,.tour-badge{z-index:2}
.international-filter-bar{grid-template-columns:minmax(250px,1.35fr) minmax(190px,.72fr) minmax(180px,.62fr) auto}
.international-filter-bar .catalog-filter-wrap,.international-filter-bar .catalog-search-wrap{min-width:0}

.pro-footer{margin-top:82px;padding:0 0 24px;background:radial-gradient(circle at 15% 0%,rgba(69,199,200,.10),transparent 30%),linear-gradient(180deg,#071f31 0%,#051723 100%);color:#b8c8d1;overflow:hidden}
.footer-intro{display:grid;grid-template-columns:minmax(0,1.35fr) auto;gap:42px;align-items:end;padding:54px 0 34px;border-bottom:1px solid rgba(255,255,255,.10)}
.footer-kicker{display:block;margin-bottom:10px;color:#78d8d7;font-size:9px;font-weight:950;letter-spacing:.14em;text-transform:uppercase}
.footer-intro h2{margin:0;max-width:700px;color:#fff;font-size:clamp(27px,3vw,38px);line-height:1.05;letter-spacing:-1.4px}
.footer-intro p{max-width:670px;margin:13px 0 0;color:#a8bbc5;font-size:13px;line-height:1.6}
.footer-intro-actions{display:flex;align-items:center;gap:18px;white-space:nowrap}
.footer-btn-light{background:#fff!important;border-color:#fff!important;color:#0a2b40!important;box-shadow:none!important}
.footer-btn-light:hover{background:#edf7f7!important;border-color:#edf7f7!important}
.footer-whatsapp-link{display:inline-flex!important;align-items:center;gap:8px!important;margin:0!important;color:#fff!important;font-size:12px!important;font-weight:850;text-decoration:none!important}
.footer-whatsapp-link span{transition:transform .18s ease}.footer-whatsapp-link:hover span{transform:translateX(3px)}
.footer-proof-row{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 42px;border-bottom:1px solid rgba(255,255,255,.10)}
.footer-proof-row span{position:relative;padding:16px 20px 16px 17px;color:#b7c6cf;font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.footer-proof-row span:before{content:"";position:absolute;left:0;top:50%;width:5px;height:5px;border-radius:50%;background:#62d1cf;transform:translateY(-50%)}
.footer-grid{grid-template-columns:minmax(300px,1.55fr) .72fr .9fr 1fr;gap:42px;align-items:start}
.footer-brand{padding-right:24px}
.footer-logo-link{display:inline-block!important;margin:0 0 17px!important;text-decoration:none!important}
.footer-logo-crop{display:block;position:relative;width:270px;max-width:100%;aspect-ratio:645/251;overflow:hidden}
.footer-logo-transparent{position:absolute;left:0;top:0;width:167.442%!important;max-width:none!important;height:auto!important;margin:0!important;transform:translate(-21.759%,-28.333%);filter:brightness(0) invert(1)!important;opacity:.98;image-rendering:auto}
.footer-brand p{max-width:440px;margin:0;color:#aabcc6;font-size:12px;line-height:1.65}
.footer-brand-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}
.footer-brand-meta span{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:6px 8px;color:#c4d2d9;font-size:8px;font-weight:800;letter-spacing:.03em}
.footer-brand-meta span:before{content:"✓";color:#71d8d3;font-size:9px}
.pro-footer h4{margin:4px 0 16px;color:#fff;font-size:9px;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.pro-footer .footer-grid>div:not(.footer-brand)>a{display:block;margin:0 0 10px;color:#b4c5ce;font-size:12px;line-height:1.35;text-decoration:none;transition:color .18s ease,transform .18s ease}
.pro-footer .footer-grid>div:not(.footer-brand)>a:hover{color:#fff;transform:translateX(2px)}
.footer-contact{margin-top:19px;padding-top:16px;border-top:1px solid rgba(255,255,255,.09)}
.footer-contact a{display:block!important;margin:0 0 8px!important;color:#e5eef2!important;font-size:11px!important;word-break:break-word}
.footer-bottom{margin-top:42px;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);color:#8196a2;font-size:9px;line-height:1.5}
.footer-privacy-links a,.footer-privacy-links button{font-size:9px;text-decoration:none}.footer-privacy-links a:hover,.footer-privacy-links button:hover{color:#fff}

@media(max-width:1100px){
  .international-filter-bar{grid-template-columns:minmax(0,1.25fr) 1fr 1fr}.international-filter-bar .catalog-count{grid-column:1/-1;border-left:0;border-top:1px solid #e3e9ed;padding:10px 0 0;display:flex;align-items:baseline;gap:6px}.international-filter-bar .catalog-count span,.international-filter-bar .catalog-count small{display:inline}
  .footer-grid{grid-template-columns:minmax(280px,1.35fr) 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.footer-brand{grid-row:1/3}
}
@media(max-width:900px){
  .footer-intro{grid-template-columns:1fr;gap:22px;align-items:start}.footer-intro-actions{white-space:normal}.footer-proof-row{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;grid-row:auto;padding-right:0}.footer-grid>div:last-child{grid-column:auto}.footer-logo-crop{width:250px}
}
@media(max-width:600px){
  .hero-destination-pill{gap:7px;padding:7px 9px}.hero-destination-pill span{font-size:7.5px}.hero-destination-pill strong{font-size:10.5px}.hero-destination-pill small{font-size:8.5px}.hero-destination-pill.compact{margin-bottom:15px}
  .home-hero-copy{padding-right:0}.home-booking-panel .field-group{margin-top:11px}
  .international-filter-bar{grid-template-columns:1fr}.international-filter-bar .catalog-count{grid-column:auto}
  .pro-footer{margin-top:62px;padding-bottom:calc(24px + env(safe-area-inset-bottom))}.footer-intro{padding:38px 0 27px}.footer-intro h2{font-size:28px}.footer-intro p{font-size:12px}.footer-intro-actions{display:grid;grid-template-columns:1fr;width:100%;gap:12px}.footer-intro-actions .btn{width:100%}.footer-whatsapp-link{justify-content:center;min-height:42px;border:1px solid rgba(255,255,255,.13);border-radius:10px}
  .footer-proof-row{grid-template-columns:1fr;margin-bottom:32px}.footer-proof-row span{padding:12px 18px 12px 15px;border-bottom:1px solid rgba(255,255,255,.07)}.footer-proof-row span:last-child{border-bottom:0}
  .footer-grid{grid-template-columns:1fr;gap:28px}.footer-logo-crop{width:230px}.footer-brand p{max-width:none}.footer-brand-meta{gap:6px}.footer-brand-meta span{font-size:7.5px}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{margin-top:32px;gap:11px}.footer-bottom>span{max-width:100%}
}
@media(max-width:390px){.hero-destination-pill small{display:none}.footer-logo-crop{width:215px}}

/* Logo framing: use the transparent master without adding a white backing plate. */
.logo{display:inline-flex;align-items:center;overflow:visible}
.site-logo-crop,.drawer-logo-crop{display:block;position:relative;overflow:hidden;aspect-ratio:645/251;flex:0 0 auto}
.site-logo-crop{width:190px}
.drawer-logo-crop{width:172px}
.site-logo-crop img,.drawer-logo-crop img{position:absolute;left:0;top:0;width:167.442%!important;max-width:none!important;height:auto!important;transform:translate(-21.759%,-28.333%);margin:0!important;filter:none!important;image-rendering:auto}
.mobile-drawer-head{align-items:center}
@media(max-width:600px){.site-logo-crop{width:155px}.drawer-logo-crop{width:158px}}

/* Renderer-safe transparent-logo crop (no white box, no modified logo file). */
.site-logo-crop,.drawer-logo-crop,.footer-logo-crop{line-height:0}
.site-logo-crop img,.drawer-logo-crop img,.footer-logo-transparent{position:static!important;display:block!important;width:167.442%!important;max-width:none!important;height:auto!important;transform:none!important;margin-left:-36.442%!important;margin-top:-31.628%!important;margin-right:0!important;margin-bottom:0!important;image-rendering:auto}
.footer-logo-transparent{filter:brightness(0) invert(1)!important;opacity:.98}


/* V10.11 — precision logo treatment: dedicated transparent assets, no CSS raster filtering */
.site-logo-crop,.drawer-logo-crop,.footer-logo-crop{
  display:block!important;
  position:static!important;
  overflow:visible!important;
  aspect-ratio:auto!important;
  line-height:0;
}
.site-logo-crop{width:152px!important}
.drawer-logo-crop{width:150px!important}
.site-logo-crop img,.drawer-logo-crop img{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  transform:none!important;
  margin:0!important;
  filter:none!important;
  opacity:1!important;
}
.footer-logo-crop{width:178px!important;max-width:100%}
.footer-logo-transparent{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  transform:none!important;
  margin:0 0 17px!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:900px){
  .site-logo-crop{width:146px!important}
  .drawer-logo-crop{width:146px!important}
  .footer-logo-crop{width:172px!important}
}
@media(max-width:600px){
  .site-logo-crop{width:138px!important}
  .drawer-logo-crop{width:140px!important}
  .footer-logo-crop{width:164px!important}
}
@media(max-width:390px){
  .site-logo-crop{width:132px!important}
  .footer-logo-crop{width:158px!important}
}

/* V10.12 — booking modal readability + mobile layout hardening */
.availability-modal .ue-booking-head{
  background:#f8fbfc!important;
  color:var(--ink)!important;
  border-bottom:1px solid #e2eaee;
}
.availability-modal .ue-booking-title .booking-step-kicker,
.availability-modal .ue-booking-head .booking-step-kicker{
  color:#2e9aa0!important;
}
.availability-modal .ue-booking-title h3,
.availability-modal .ue-booking-head h3,
.availability-modal .ue-booking-title p{
  color:var(--ink)!important;
}
.availability-modal .ue-booking-title p{
  color:#6d7f89!important;
}
.availability-modal .ue-booking-controls{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr) auto;
  gap:12px;
  width:100%;
  align-items:end;
}
.availability-modal .ue-booking-controls > *{
  min-width:0;
}
.availability-modal .availability-field{
  min-width:0;
}
.availability-modal .availability-field>span{
  color:#728491!important;
  margin-bottom:6px;
}
.availability-modal .availability-field .field{
  width:100%;
  min-width:0!important;
  min-height:48px;
  border:1px solid #ccd7dd!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#16384b!important;
  box-shadow:none!important;
}
.availability-modal input[type="date"].field,
.availability-modal input[type="number"].field{
  font-size:16px;
}
.availability-modal .availability-check-btn{
  min-width:190px;
  justify-content:center;
}
.availability-modal .ue-booking-summary{
  align-items:flex-end;
}
@media(max-width:980px){
  .availability-modal .ue-booking-head{
    align-items:stretch;
    flex-direction:column;
    gap:18px;
  }
  .availability-modal .ue-booking-title{
    max-width:none;
  }
  .availability-modal .ue-booking-controls{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .availability-modal .availability-check-btn{
    grid-column:1/-1;
    width:100%;
    min-width:0;
  }
}
@media(max-width:640px){
  .availability-modal .ue-booking-controls{
    grid-template-columns:1fr;
  }
  .availability-modal .availability-check-btn{
    grid-column:auto;
  }
  .availability-modal .booking-selection-summary{
    display:grid!important;
    grid-template-columns:1fr;
    gap:14px;
  }
  .availability-modal .booking-selection-summary>div:last-child{
    grid-column:auto;
  }
}

/* V10.13 — lightweight hero + booking synchronization */
.home-hero-media img{
  transition:opacity .28s ease;
  will-change:opacity;
}
.hero-featured-experience{
  max-width:760px;
  margin-top:25px;
  padding:12px 13px 12px 15px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  background:rgba(5,30,45,.44);
  backdrop-filter:blur(9px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.hero-featured-copy{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  column-gap:10px;
  row-gap:2px;
  align-items:baseline;
}
.hero-featured-copy>span{
  grid-row:1/3;
  align-self:center;
  padding:5px 7px;
  border-radius:999px;
  background:rgba(98,209,207,.14);
  color:#93e7e4;
  font-size:8px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.hero-featured-copy>strong{
  min-width:0;
  color:#fff;
  font-size:13px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hero-featured-copy>small{
  color:#bcd0d9;
  font-size:9px;
  line-height:1.2;
}
.hero-slider-controls{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:8px;
}
.hero-slider-controls>button{
  width:28px;
  height:28px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:50%;
  background:rgba(255,255,255,.07);
  color:#fff;
  display:grid;
  place-items:center;
  padding:0 0 2px;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}
.hero-slider-controls>button:hover{
  background:rgba(255,255,255,.14);
}
.hero-slider-dots{
  display:flex;
  align-items:center;
  gap:5px;
}
.hero-slider-dots button{
  width:15px;
  height:3px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.28);
  cursor:pointer;
  transition:width .18s ease,background .18s ease;
}
.hero-slider-dots button.active{
  width:27px;
  background:#79dad7;
}
.hero-is-changing .hero-featured-copy{
  opacity:.72;
}
.home-hero-copy .hero-proof{
  margin-top:22px;
}
.home-booking-panel{
  position:relative;
  overflow:hidden;
}
.home-booking-panel:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:linear-gradient(90deg,#6ed6d4,#ef6861);
}
.booking-slider-sync{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:2px 10px;
  align-items:center;
  margin:0 0 3px;
  padding:9px 11px;
  border:1px solid #dce9eb;
  border-radius:10px;
  background:linear-gradient(90deg,#f1f9f9,#f8fbfc);
}
.booking-slider-sync>span{
  grid-row:1/3;
  align-self:center;
  color:#177f82;
  font-size:8px;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
  white-space:nowrap;
}
.booking-slider-sync>strong{
  min-width:0;
  color:#173f54;
  font-size:11px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.booking-slider-sync>small{
  color:#7b8d97;
  font-size:8.5px;
  line-height:1.2;
}
.home-booking-panel.booking-user-active .booking-slider-sync{
  background:#f8fafb;
  border-color:#e3e9ed;
}
.home-booking-panel.booking-user-active .booking-slider-sync>span{
  color:#5e7480;
}
@media(max-width:900px){
  .hero-featured-experience{max-width:690px}
}
@media(max-width:600px){
  .hero-featured-experience{
    margin-top:20px;
    padding:10px;
    border-radius:12px;
    gap:10px;
  }
  .hero-featured-copy{
    grid-template-columns:1fr;
    gap:2px;
  }
  .hero-featured-copy>span{
    grid-row:auto;
    width:max-content;
    padding:0;
    background:transparent;
  }
  .hero-featured-copy>strong{
    font-size:11.5px;
    max-width:calc(100vw - 190px);
  }
  .hero-featured-copy>small{font-size:8px}
  .hero-slider-controls{gap:6px}
  .hero-slider-controls>button{width:27px;height:27px}
  .hero-slider-dots{display:none}
  .booking-slider-sync{grid-template-columns:1fr;padding:8px 9px}
  .booking-slider-sync>span{grid-row:auto}
  .booking-slider-sync>small{display:none}
  .booking-slider-sync>strong{font-size:10.5px}
}
@media(prefers-reduced-motion:reduce){
  .home-hero-media img,.hero-slider-dots button{transition:none!important}
}

/* V10.14 — premium booking modal refinement: softer, clearer, easier to complete */
.availability-modal-dialog{
  background:linear-gradient(180deg,#f4f8fa 0%,#eef4f7 100%);
  border-radius:24px;
}
.availability-modal-bar{
  background:linear-gradient(120deg,#08263a 0%,#0d3550 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  padding:20px 24px 18px;
}
.availability-modal-bar h2{font-size:24px;letter-spacing:-.02em}
.availability-modal-bar p{color:#c5d4dc;font-size:13px}
.availability-modal-close{
  border-color:rgba(255,255,255,.16);
  background:rgba(255,255,255,.96);
  box-shadow:0 10px 26px rgba(0,0,0,.14);
}
.availability-modal-scroll{padding:22px;background:transparent}
.modal-availability-section .ue-booking-shell{
  background:transparent;
  border:0;
  box-shadow:none;
}
.modal-availability-section .ue-booking-head{
  background:#fff!important;
  border:1px solid #dfe7ec;
  border-radius:20px;
  box-shadow:0 14px 36px rgba(10,38,57,.06);
  padding:24px 24px 20px;
}
.modal-availability-section .ue-booking-title h3{font-size:18px!important;letter-spacing:-.02em}
.modal-availability-section .ue-booking-title p{max-width:620px;line-height:1.55}
.modal-availability-section .ue-booking-controls{margin-top:2px}
.modal-availability-section .availability-field>span{
  display:block;
  margin:0 0 7px;
  color:#6f808b!important;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:900;
}
.modal-availability-section .availability-field .field,
.modal-availability-section .availability-check-btn{
  min-height:50px;
  border-radius:12px!important;
}
.modal-availability-section .availability-field .field{
  background:#fbfdfe!important;
  border:1px solid #d4dee4!important;
}
.modal-availability-section .availability-field .field:focus{
  border-color:#58bfc0!important;
  box-shadow:0 0 0 4px rgba(69,199,200,.12)!important;
}
.modal-availability-section .availability-check-btn{
  box-shadow:0 10px 24px rgba(118,201,104,.22);
  font-weight:900;
}
.modal-availability-section .book-ahead{
  margin-top:16px;
  border:1px solid #d9eadc;
  border-radius:16px;
  background:linear-gradient(180deg,#f2faf2 0%,#ebf6ec 100%);
  padding:16px 18px;
}
.modal-availability-section .ue-booking-body{
  padding:20px 0 0;
  display:grid;
  gap:18px;
  background:transparent;
}
.booking-step-card{
  background:#fff;
  border:1px solid #dee6eb;
  border-radius:20px;
  box-shadow:0 14px 36px rgba(10,38,57,.05);
  padding:22px 24px;
}
.booking-step-card .availability-step-head{margin-bottom:16px}
.booking-step-card .availability-step-head strong{font-size:18px}
.booking-step-card .availability-step-head span:last-child{line-height:1.55;color:#73848e}
.booking-step-card-option .ue-options,
.booking-step-card-time .availability-result{margin-top:0}
.modal-availability-section .ue-options{gap:16px}
.modal-availability-section .ue-option{
  border-radius:16px;
  border:1px solid #d8e2e8;
  min-height:176px;
  padding:20px;
  background:linear-gradient(180deg,#fff 0%,#fcfdfe 100%);
}
.modal-availability-section .ue-option:hover{
  transform:translateY(-1px);
  border-color:#b9cad4;
  box-shadow:0 10px 22px rgba(10,38,57,.06);
}
.modal-availability-section .ue-option.active{
  border:2px solid #0c2c43;
  padding:19px;
  box-shadow:0 12px 30px rgba(12,44,67,.08);
}
.modal-availability-section .option-badge{
  background:#edf7f1;
  color:#226748;
  border:1px solid #d6eadc;
  border-radius:999px;
  padding:5px 8px;
}
.modal-availability-section .availability-result{
  border-radius:18px;
  padding:18px;
}
.modal-availability-section .availability-result.success{
  background:linear-gradient(180deg,#f4faf6 0%,#eef7f1 100%);
  border:1px solid #d9eadf;
}
.modal-availability-section .availability-result.neutral{
  background:linear-gradient(180deg,#f9fbfc 0%,#f4f8fa 100%);
  border:1px dashed #d5e1e7;
}
.modal-availability-section .availability-result.error{
  border-radius:18px;
}
.modal-availability-section .availability-status{
  align-items:flex-start;
  gap:14px;
}
.modal-availability-section .availability-status-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff;
  border:1px solid rgba(16,77,46,.16);
  box-shadow:0 6px 16px rgba(10,38,57,.05);
}
.modal-availability-section .time-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:12px;
  margin-top:18px;
}
.modal-availability-section .time-chip{
  display:grid;
  gap:4px;
  text-align:left;
  width:100%;
  border:1px solid #cfdae1;
  border-radius:14px;
  background:#fff;
  padding:14px 14px 13px;
  color:#17384b;
  box-shadow:0 6px 16px rgba(10,38,57,.03);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.modal-availability-section .time-chip:hover{
  transform:translateY(-1px);
  border-color:#9db4c0;
  box-shadow:0 10px 22px rgba(10,38,57,.06);
}
.modal-availability-section .time-chip span{font-size:22px;font-weight:900;letter-spacing:-.02em}
.modal-availability-section .time-chip small{font-size:11px;color:#6c7f8b;line-height:1.4}
.modal-availability-section .time-chip.selected{
  background:linear-gradient(180deg,#0b2d44 0%,#123a55 100%);
  border-color:#0b2d44;
  color:#fff;
  box-shadow:0 14px 30px rgba(12,44,67,.18);
}
.modal-availability-section .time-chip.selected small{color:#d8e5eb}
.modal-availability-section .ue-booking-summary{
  position:sticky;
  bottom:0;
  z-index:3;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(12px);
  border:1px solid #dfe7ec;
  border-radius:18px;
  box-shadow:0 18px 40px rgba(10,38,57,.08);
  padding:16px 18px;
  margin-top:4px;
}
.modal-availability-section .booking-selection-summary{gap:26px}
.modal-availability-section .booking-selection-summary small{font-size:10px}
.modal-availability-section .booking-selection-summary strong{font-size:30px}
.modal-availability-section .selected-time-summary strong{font-size:20px}
.modal-availability-section .reserve-primary{
  min-width:190px;
  min-height:52px;
  border-radius:12px;
}
.modal-availability-section .reserve-primary:not([disabled]){
  box-shadow:0 14px 28px rgba(12,44,67,.18);
}
.modal-availability-section .reserve-primary.is-pulsing{
  animation:reservePulse 1.2s ease;
}
@keyframes reservePulse{
  0%{box-shadow:0 0 0 0 rgba(12,44,67,.22)}
  70%{box-shadow:0 0 0 10px rgba(12,44,67,0)}
  100%{box-shadow:0 0 0 0 rgba(12,44,67,0)}
}
@media(max-width:900px){
  .availability-modal-scroll{padding:14px}
  .booking-step-card{padding:20px 18px;border-radius:18px}
  .modal-availability-section .ue-booking-head{padding:20px 18px 18px}
  .modal-availability-section .time-grid{grid-template-columns:1fr 1fr}
  .modal-availability-section .ue-booking-summary{padding:14px 15px}
}
@media(max-width:640px){
  .availability-modal-dialog{border-radius:22px 22px 0 0}
  .availability-modal-bar{padding:16px 16px 14px}
  .availability-modal-bar h2{font-size:21px}
  .availability-modal-bar p{font-size:12px}
  .availability-modal-scroll{padding:10px 10px calc(20px + env(safe-area-inset-bottom))}
  .modal-availability-section .ue-booking-head{border-radius:18px}
  .booking-step-card{padding:18px 16px}
  .modal-availability-section .time-grid{grid-template-columns:1fr}
  .modal-availability-section .time-chip span{font-size:20px}
  .modal-availability-section .ue-booking-summary{
    border-radius:16px;
    padding:14px;
    bottom:max(0px, env(safe-area-inset-bottom));
  }
  .modal-availability-section .booking-selection-summary{display:grid!important;grid-template-columns:1fr 1fr;gap:12px}
  .modal-availability-section .booking-selection-summary>div:last-child{grid-column:1/-1}
}

/* V10.15 — lightweight fleet slider for pickup section */
.fleet-pickup-section{background:linear-gradient(180deg,#fff 0%,#f7fafb 100%)}
.pickup-home-section{align-items:center;gap:52px}
.pickup-home-copy{max-width:590px}
.pickup-home-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.fleet-light-note{color:#72848f;font-size:11px;font-weight:800}
.fleet-slider{min-width:0}
.fleet-slider-frame{position:relative;overflow:hidden;border-radius:22px;background:#0c2c43;box-shadow:0 22px 55px rgba(9,40,61,.15);aspect-ratio:4/3}
.fleet-slide{position:absolute;inset:0;margin:0;opacity:0;transform:scale(1.01);transition:opacity .48s ease,transform .7s ease;pointer-events:none;background:#0c2c43}
.fleet-slide.active{opacity:1;transform:scale(1);pointer-events:auto}
.fleet-slide img{width:100%;height:100%;display:block;object-fit:cover}
.fleet-slide:after{content:"";position:absolute;inset:46% 0 0;background:linear-gradient(180deg,transparent 0%,rgba(5,24,37,.72) 100%);pointer-events:none}
.fleet-slide figcaption{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;color:#fff;display:grid;gap:3px}
.fleet-slide figcaption span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#81dedc}
.fleet-slide figcaption strong{font-size:24px;line-height:1.05;letter-spacing:-.03em}
.fleet-slide figcaption small{font-size:11px;color:#d5e0e6}
.fleet-arrow{position:absolute;top:50%;z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(7,31,47,.72);backdrop-filter:blur(8px);color:#fff;font-size:29px;line-height:1;display:grid;place-items:center;cursor:pointer;transform:translateY(-50%);transition:background .18s ease,transform .18s ease}
.fleet-arrow:hover{background:rgba(7,31,47,.92)}
.fleet-prev{left:14px}.fleet-next{right:14px}
.fleet-dots{position:absolute;z-index:4;top:16px;left:50%;transform:translateX(-50%);display:flex;gap:7px;padding:7px 9px;border-radius:999px;background:rgba(7,31,47,.54);backdrop-filter:blur(8px)}
.fleet-dots button{width:7px;height:7px;border:0;border-radius:50%;background:rgba(255,255,255,.42);padding:0;cursor:pointer;transition:width .2s ease,background .2s ease}
.fleet-dots button.active{width:22px;border-radius:999px;background:#fff}
.fleet-slider-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:11px}
.fleet-slider-footer span{display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #e0e8ec;border-radius:10px;background:#fff;padding:9px 8px;color:#667b87;font-size:9px;font-weight:850;text-align:center}
.fleet-slider-footer b{color:#16804a}
@media(max-width:900px){
  .pickup-home-section{gap:30px}
  .fleet-slider-frame{border-radius:18px}
}
@media(max-width:650px){
  .pickup-home-section{display:grid!important;grid-template-columns:1fr!important;gap:28px}
  .pickup-home-copy{max-width:none}
  .fleet-slider-frame{border-radius:16px;aspect-ratio:4/3}
  .fleet-slide figcaption{left:16px;right:16px;bottom:15px}
  .fleet-slide figcaption strong{font-size:21px}
  .fleet-slide figcaption small{font-size:10px}
  .fleet-arrow{width:38px;height:38px;font-size:26px}
  .fleet-prev{left:10px}.fleet-next{right:10px}
  .fleet-dots{top:10px}
  .fleet-slider-footer{grid-template-columns:1fr}
  .fleet-slider-footer span{justify-content:flex-start;padding:9px 11px}
}
@media(prefers-reduced-motion:reduce){.fleet-slide{transition:none}.fleet-dots button{transition:none}}

/* V10.17 — full mobile containment / iPhone Safari responsive hardening */
html,body{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}
body,.site-body,main,header,footer,section,article,aside,nav,form,
.container,.nav,.home-hero-content,.home-hero-copy,.home-booking-panel,
.booking-panel-row,.field-group,.booking-slider-sync,.operator-trust-grid,
.tour-grid,.catalog-grid,.page-grid,.product-head,.product-layout,
.availability-modal,.availability-modal-dialog,.availability-modal-scroll,
.modal-availability-section,.ue-booking-shell,.ue-booking-head,.ue-booking-title,
.ue-booking-controls,.ue-booking-body,.booking-step-card,.ue-options,.ue-option,
.availability-result,.time-grid,.ue-booking-summary,.booking-selection-summary,
.checkout-panel,.booking-form-layout,.booking-recap,.payment-page-grid,.payment-panel,
.confirmation-grid,.confirmation-card,.chat-layout,.chat-card,.fleet-slider,
.pickup-home-section,.pickup-fleet-showcase,.footer-grid,.footer-intro{
  min-width:0;
  max-width:100%;
}

/* All public form controls must remain inside their own grid/flex cell. */
.field,
.form-field,
.google-place-input,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
button{
  max-width:100%;
}
.field,
.form-field,
.google-place-input,
input[type="date"],
input[type="number"],
select,
textarea{
  min-width:0!important;
  inline-size:100%;
  max-inline-size:100%;
}
select.field{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* iOS Safari date controls otherwise keep a native intrinsic width wider than the card. */
input[type="date"].field{
  display:block;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  inline-size:100%!important;
  min-inline-size:0!important;
  max-inline-size:100%!important;
  text-align:left;
}
input[type="date"]::-webkit-date-and-time-value{
  min-width:0;
  width:100%;
  text-align:left;
  margin:0;
}
input[type="date"]::-webkit-datetime-edit{
  min-width:0;
  padding:0;
}

/* Never let long product/destination names widen a mobile layout. */
.home-booking-panel h3,
.booking-slider-sync strong,
.ue-option h4,
.ue-option p,
.product-head h1,
.tour-card h3,
.availability-modal-bar p,
.booking-step-card strong,
.recap-row>*{
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Modal top title must remain readable on the navy header. */
.availability-modal .availability-modal-bar h2{
  color:#fff!important;
  opacity:1!important;
}
.availability-modal .availability-modal-bar .booking-step-kicker{
  color:#8ce4e1!important;
}
.availability-modal .availability-modal-bar p{
  color:#c7d7df!important;
}

@media(max-width:900px){
  /* Clamp every major mobile shell to the visual viewport. */
  .container{
    width:calc(100% - 30px)!important;
    max-width:calc(100% - 30px)!important;
  }
  .home-booking-panel,
  .checkout-panel,
  .payment-panel,
  .confirmation-card,
  .booking-recap,
  .chat-card,
  .fleet-slider{
    width:100%;
  }
  .booking-panel-row,
  .ue-booking-controls,
  .ue-options,
  .time-grid,
  .booking-selection-summary{
    min-width:0;
  }
  .availability-modal-dialog{
    width:100%!important;
    max-width:100vw!important;
    margin:0!important;
  }
  .availability-modal-scroll{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
    overscroll-behavior-x:none;
  }
  .modal-availability-section .ue-booking-shell,
  .modal-availability-section .ue-booking-head,
  .modal-availability-section .book-ahead,
  .modal-availability-section .ue-booking-body,
  .modal-availability-section .booking-step-card,
  .modal-availability-section .ue-booking-summary{
    width:100%;
    max-width:100%;
    min-width:0;
  }
}

@media(max-width:640px){
  html,body{overflow-x:hidden}
  .container{
    width:calc(100% - 24px)!important;
    max-width:calc(100% - 24px)!important;
  }
  .nav{
    width:100%;
    max-width:100%;
  }
  .nav-actions{min-width:0}

  /* Home booking card */
  .home-booking-panel{
    padding:18px!important;
    border-radius:18px;
    overflow:hidden;
  }
  .booking-panel-top,
  .booking-panel-row,
  .field-group,
  .destination-select-group{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .booking-panel-row{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .home-booking-panel .field{
    display:block;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    font-size:16px;
  }
  .home-booking-panel input[type="date"].field{
    height:52px;
    padding-left:14px;
    padding-right:14px;
    text-align:left;
  }
  .home-booking-panel select.field{
    padding-left:14px;
    padding-right:38px;
  }
  .booking-panel-submit{
    width:100%;
    max-width:100%;
  }
  .booking-panel-assurance{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .booking-panel-assurance span:last-child{grid-column:auto!important}

  /* Availability modal: no element may be wider than its viewport/card. */
  .availability-modal{
    width:100vw;
    max-width:100vw;
    overflow:hidden;
  }
  .availability-modal-dialog{
    width:100vw!important;
    max-width:100vw!important;
    border-left:0;
    border-right:0;
  }
  .availability-modal-bar{
    width:100%;
    max-width:100%;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .availability-modal-bar>div{
    min-width:0;
    max-width:calc(100% - 58px);
  }
  .availability-modal-bar h2{
    font-size:20px!important;
    white-space:normal;
  }
  .availability-modal-bar p{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .availability-modal-scroll{
    padding-left:10px!important;
    padding-right:10px!important;
  }
  .modal-availability-section .ue-booking-head{
    display:block!important;
    padding:20px 16px 18px!important;
    overflow:hidden;
  }
  .modal-availability-section .ue-booking-title{
    width:100%;
    max-width:100%;
  }
  .modal-availability-section .ue-booking-controls{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:20px!important;
  }
  .modal-availability-section .availability-field,
  .modal-availability-section .availability-field .field{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .modal-availability-section input[type="date"].field,
  .modal-availability-section input[type="number"].field{
    display:block;
    inline-size:100%!important;
    min-inline-size:0!important;
    max-inline-size:100%!important;
    height:52px;
    padding-left:14px;
    padding-right:14px;
  }
  .modal-availability-section .availability-check-btn{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:52px;
  }
  .modal-availability-section .book-ahead{
    padding:15px 16px!important;
    overflow:hidden;
  }
  .modal-availability-section .ue-booking-body{
    padding-left:0!important;
    padding-right:0!important;
  }
  .booking-step-card{
    width:100%;
    max-width:100%;
    min-width:0;
    padding:18px 16px!important;
    overflow:hidden;
  }
  .booking-step-card .availability-step-head{
    min-width:0;
  }
  .booking-step-card .availability-step-head>div{
    min-width:0;
  }
  .modal-availability-section .ue-options{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%;
  }
  .modal-availability-section .ue-option{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .modal-availability-section .availability-result,
  .modal-availability-section .time-grid,
  .modal-availability-section .time-chip{
    width:100%;
    max-width:100%;
    min-width:0;
  }
  .modal-availability-section .ue-booking-summary{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden;
  }
  .modal-availability-section .booking-selection-summary{
    grid-template-columns:minmax(0,1fr)!important;
    width:100%;
  }
  .modal-availability-section .booking-selection-summary>div:last-child{
    grid-column:auto!important;
  }
  .modal-availability-section .reserve-primary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }

  /* Remaining public pages */
  .international-filter-bar,
  .contact-form .row,
  .form-grid,
  .form-grid.three,
  .confirmation-details,
  .card-field-row{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .payment-choice-body{
    min-width:0;
  }
  .payment-choice-body>div:first-child{
    min-width:0;
  }
  .confirmation-ref strong,
  .payment-order-box,
  .recap-row,
  .footer-contact a{
    overflow-wrap:anywhere;
  }
  .pickup-table{
    min-width:680px;
  }
}

@media(max-width:390px){
  .container{
    width:calc(100% - 20px)!important;
    max-width:calc(100% - 20px)!important;
  }
  .home-booking-panel{padding:16px!important}
  .availability-modal-scroll{padding-left:8px!important;padding-right:8px!important}
  .modal-availability-section .ue-booking-head,
  .booking-step-card{padding-left:14px!important;padding-right:14px!important}
  .payment-choice-body{
    flex-direction:column;
  }
  .payment-choice-money{
    min-width:0!important;
    text-align:left;
  }
}

/* WebKit-only containment for iPhone date inputs. Type=date functionality remains native on tap. */
@supports (-webkit-touch-callout:none){
  @media(max-width:640px){
    input[type="date"].field{
      -webkit-appearance:none;
      appearance:none;
      line-height:normal;
    }
  }
}

/* V10.18 — iPhone date height + modal close precision fix */
@media(max-width:640px){
  /* Keep date controls exactly the same visual height as the other booking fields. */
  .home-booking-panel input[type="date"].field,
  .modal-availability-section input[type="date"].field{
    box-sizing:border-box!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    padding:0 14px!important;
    margin:0!important;
    line-height:48px!important;
    font-size:16px!important;
    border-radius:12px!important;
    overflow:hidden!important;
    vertical-align:middle!important;
  }
  .home-booking-panel input[type="date"]::-webkit-date-and-time-value,
  .modal-availability-section input[type="date"]::-webkit-date-and-time-value{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    line-height:48px!important;
    text-align:left!important;
  }
  .home-booking-panel input[type="date"]::-webkit-datetime-edit,
  .modal-availability-section input[type="date"]::-webkit-datetime-edit,
  .home-booking-panel input[type="date"]::-webkit-datetime-edit-fields-wrapper,
  .modal-availability-section input[type="date"]::-webkit-datetime-edit-fields-wrapper{
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    line-height:48px!important;
  }

  /* Modal header: close button stays fully inside the rounded header on iPhone. */
  .availability-modal-bar{
    position:relative!important;
    align-items:flex-start!important;
    min-height:112px;
    padding:18px 72px 17px 18px!important;
    overflow:visible!important;
  }
  .availability-modal-bar>div{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .availability-modal-close{
    position:absolute!important;
    top:16px!important;
    right:16px!important;
    left:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin:0!important;
    width:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    max-height:44px!important;
    padding:0!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    line-height:1!important;
    flex:0 0 44px!important;
    z-index:5!important;
  }
  .availability-modal-dialog{
    overflow:hidden!important;
  }
}

@supports (-webkit-touch-callout:none){
  @media(max-width:640px){
    .home-booking-panel input[type="date"].field,
    .modal-availability-section input[type="date"].field{
      -webkit-appearance:none!important;
      appearance:none!important;
      block-size:50px!important;
      min-block-size:50px!important;
      max-block-size:50px!important;
    }
  }
}

/* V10.20 — premium header, transfer module and customer profile */
.announcement-premium{background:#101113;color:#fff;font-size:14px}
.announcement-premium .container{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 0}
.announcement-premium a{color:#ff8b3d;font-weight:800;text-decoration:none}
.site-header-premium{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid #edf2f5;box-shadow:0 8px 22px rgba(11,35,52,.06)}
.nav-premium{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:16px 0}
.nav-actions-premium{display:flex;align-items:center;gap:14px}
.header-whatsapp-badge{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:48px;border-radius:999px;background:#23c35b;color:#fff;text-decoration:none;font-size:12px;font-weight:800;padding:0 14px}
.header-contact-stack{display:flex;gap:16px;align-items:center}
.header-contact-stack a{text-decoration:none;color:var(--ink);display:grid;gap:2px;line-height:1.1}
.header-contact-stack a small{font-size:11px;color:#748391}
.header-contact-stack a strong{font-size:14px}
.header-profile-link{text-decoration:none;color:var(--ink);font-weight:700;white-space:nowrap}
.header-search-dock{position:fixed;left:0;right:0;top:86px;z-index:35;opacity:0;pointer-events:none;transform:translateY(-14px);transition:opacity .22s ease, transform .22s ease}
.header-search-dock.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.header-search-dock-inner{background:#fff;border:1px solid #e3e9ee;border-radius:20px;padding:14px;display:grid;grid-template-columns:auto 1fr;gap:14px;box-shadow:0 18px 34px rgba(11,35,52,.12)}
.dock-tabs{display:flex;gap:8px;align-items:center}
.dock-tab{border:0;background:#f2f5f7;color:#294153;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer}
.dock-tab.active{background:#111;color:#fff}
.dock-form{display:none;grid-template-columns:1fr auto;gap:12px;align-items:center}
.dock-form.active{display:grid}
.dock-form-transfers{grid-template-columns:1fr 1fr auto}
.dock-form input{border:1px solid #dde5ea;border-radius:14px;padding:14px 16px;font:inherit}
.home-booking-panel-tabs{display:grid;gap:16px}
.booking-panel-tabs{display:flex;gap:10px;border-bottom:1px solid #e7edf1;padding-bottom:12px}
.booking-panel-tab{border:0;background:#111;color:#fff;padding:12px 18px;border-radius:14px 14px 0 0;font-weight:800;cursor:pointer;opacity:.55}
.booking-panel-tab.active{opacity:1}
.booking-panel-pane{display:none}
.booking-panel-pane.active{display:block}
.transfers-hero{padding:56px 0;background:linear-gradient(180deg,#f8fbfd 0%,#fff 100%)}
.transfers-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:start}
.transfers-hero-copy h1{font-size:52px;line-height:1.04;margin:10px 0 16px}
.transfers-hero-copy p{font-size:18px;color:#61707f;max-width:700px}
.transfers-hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.transfers-hero-badges span,.transfer-route-tag,.transfer-guide-badge{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 12px;background:#eef3f6;color:#1a3346;font-size:12px;font-weight:800}
.transfer-planner-card,.transfer-guide-card,.transfer-result-card,.profile-booking-card{background:#fff;border:1px solid #e4ebef;border-radius:24px;box-shadow:0 15px 30px rgba(10,34,51,.06)}
.transfer-planner-card{padding:24px}
.transfer-planner-tabs{display:flex;gap:8px;margin-bottom:16px}
.transfer-planner-tabs button{border:0;border-radius:12px;padding:12px 16px;background:#edf2f5;font-weight:800;cursor:pointer}
.transfer-planner-tabs button.active{background:#101826;color:#fff}
.transfer-planner-form{display:grid;gap:14px}
.planner-trip-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.planner-trip-switch label{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid #d9e3e8;border-radius:14px;font-weight:700}
.transfer-results-grid{display:grid;grid-template-columns:360px 1fr;gap:28px;align-items:start}
.transfer-guide-card{padding:20px;position:sticky;top:144px}
.transfer-guide-map{min-height:420px;border-radius:22px;background:linear-gradient(120deg,#d4f1ef 0%,#caedf6 45%,#b6e5f4 100%);position:relative;overflow:hidden}
.transfer-guide-map:before,.transfer-guide-map:after{content:"";position:absolute;inset:auto;pointer-events:none}
.transfer-guide-map:before{left:-10%;top:12%;width:120%;height:1px;background:rgba(59,106,129,.22);box-shadow:0 70px 0 rgba(59,106,129,.18),0 145px 0 rgba(59,106,129,.18),0 220px 0 rgba(59,106,129,.16),0 290px 0 rgba(59,106,129,.12)}
.transfer-guide-map:after{top:-10%;left:28%;width:1px;height:130%;background:rgba(59,106,129,.16);box-shadow:120px 0 0 rgba(59,106,129,.13),240px 0 0 rgba(59,106,129,.1),360px 0 0 rgba(59,106,129,.08)}
.transfer-guide-callout{position:absolute;left:24px;top:24px;max-width:270px;background:#13253a;color:#fff;padding:18px;border-radius:18px;display:grid;gap:8px;box-shadow:0 14px 24px rgba(5,13,23,.24)}
.transfer-guide-callout strong{text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:#ff9d54}
.transfer-guide-notes{padding-top:16px}
.transfer-guide-notes ul{padding-left:18px;color:#61707f}
.transfer-result-list{display:grid;gap:16px}
.transfer-result-card{padding:22px}
.transfer-result-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.transfer-result-top h3,.profile-booking-top h3{margin:8px 0 6px;font-size:24px}
.transfer-result-top p,.profile-booking-top p,.transfer-note{color:#627281}
.transfer-price-box{background:#f7fafc;border:1px solid #e0e8ee;border-radius:18px;padding:14px 16px;min-width:150px;text-align:right;display:grid;gap:4px}
.transfer-price-box small,.transfer-price-box span{color:#73818e}
.transfer-price-box strong{font-size:26px;color:var(--ink)}
.transfer-meta-row{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0;color:#223b50}
.transfer-meta-row span{padding:9px 12px;background:#f5f8fa;border-radius:999px;font-size:13px}
.transfer-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.transfer-launch-section .feature-list{margin-top:22px}
.empty-transfer-state{padding:28px;border:1px dashed #cedae2;border-radius:22px;background:#fbfcfd}
.profile-section{padding-top:36px}
.profile-shell{display:grid;gap:22px}
.profile-login-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}
.portal-feature-list{padding-left:18px;color:#627281}
.profile-dashboard-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px 24px;border:1px solid #e5ebf0;background:#fff;border-radius:24px;box-shadow:0 14px 26px rgba(11,35,52,.05)}
.profile-booking-list{display:grid;gap:16px}
.profile-booking-card{padding:22px}
.profile-booking-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.profile-booking-details{margin-top:14px}
.policy-alert{display:flex;justify-content:space-between;gap:16px;align-items:center;border-radius:18px;padding:14px 16px;margin-top:16px}
.policy-good{background:#eefaf1;color:#204e2d}
.policy-bad{background:#fff1f1;color:#7d2c2c}
.alert{padding:14px 16px;border-radius:16px;border:1px solid transparent}
.alert-success{background:#edf9f0;border-color:#ccebd4;color:#1d5f2c}
.alert-error{background:#fff3f3;border-color:#f1cccc;color:#8d2a2a}
@media (max-width: 1180px){
  .nav-premium{grid-template-columns:auto 1fr auto}
  .nav-premium .navlinks{display:none}
  .header-contact-stack{display:none}
  .header-profile-link,.desktop-book,.header-whatsapp-badge{display:none}
  .site-mobile-toggle{display:inline-flex}
  .header-search-dock{top:76px}
  .transfers-hero-grid,.transfer-results-grid,.profile-login-grid{grid-template-columns:1fr}
  .transfer-guide-card{position:static}
}
@media (max-width: 820px){
  .announcement-premium .container{flex-direction:column;align-items:flex-start}
  .header-search-dock{display:none}
  .transfer-result-top,.profile-booking-top,.profile-dashboard-head,.policy-alert{flex-direction:column;align-items:flex-start}
  .transfer-price-box{min-width:unset;width:100%;text-align:left}
}

/* V10.21 completion — real transfer map, customer self-service refinements */
.transfer-real-map{position:relative;min-height:460px;background:#dfeef0;border:1px solid #dbe5e9}
.transfer-real-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:22px}
.transfer-real-map .transfer-guide-callout{z-index:2}
.transfer-map-google{width:100%;margin-top:12px;justify-content:center}
.profile-dashboard-actions,.profile-login-actions,.profile-type-tabs{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.profile-type-tabs{position:sticky;top:96px;z-index:8;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);padding:10px;border:1px solid #e5ebef;border-radius:18px;box-shadow:0 8px 20px rgba(10,34,51,.05)}
.profile-type-tabs a{text-decoration:none;color:var(--ink);font-weight:800;padding:10px 14px;border-radius:12px;background:#f4f7f9}
.profile-type-tabs a strong{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;border-radius:999px;background:var(--ink);color:#fff;font-size:11px;margin-left:5px}
.profile-reservation-section{scroll-margin-top:150px;display:grid;gap:14px}
.profile-manage-details{position:relative}
.profile-manage-details>summary{list-style:none;cursor:pointer}
.profile-manage-details>summary::-webkit-details-marker{display:none}
.profile-manage-details[open]{width:100%;flex-basis:100%}
.profile-edit-form{margin-top:12px;padding:18px;border:1px solid #dce5ea;border-radius:18px;background:#f9fbfc;display:grid;gap:14px}
.profile-edit-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.transfer-return-fields[hidden]{display:none!important}
.page-transfers .transfer-result-card .transfer-note{font-size:12px;line-height:1.45;color:#7a8892}
@media(max-width:700px){
  .profile-type-tabs{top:78px;overflow-x:auto;flex-wrap:nowrap}
  .profile-type-tabs a{white-space:nowrap}
  .profile-edit-form .row{grid-template-columns:1fr}
  .transfer-real-map{min-height:360px}
}

/* V10.21 transfer booking application layout */
.transfer-app-section{padding:30px 0 46px;background:#f6f8fa;border-bottom:1px solid #e8edf1}
.transfer-app-layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:22px;align-items:stretch}
.transfer-app-sidebar{margin:0;align-self:start;position:sticky;top:112px}
.transfer-app-sidebar h1{font-size:34px;line-height:1.05;margin:8px 0 8px;color:var(--ink)}
.transfer-app-sidebar>p{color:#6c7b87;margin-top:0}
.transfer-swap-button{width:42px;height:42px;border-radius:999px;border:1px solid #d5e0e6;background:#fff;color:var(--ink);font-weight:900;cursor:pointer;margin:-4px 0 -4px auto;display:grid;place-items:center;box-shadow:0 6px 14px rgba(10,34,51,.06)}
.transfer-planner-assurance{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid #e5ebef}
.transfer-planner-assurance span{font-size:11px;font-weight:800;color:#56707d;padding:6px 9px;background:#f4f7f8;border-radius:999px}
.transfer-map-stage{min-height:690px;position:relative;overflow:hidden;border-radius:26px;border:1px solid #dce5ea;background:#dbecef;box-shadow:0 18px 34px rgba(10,34,51,.07)}
.transfer-map-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.transfer-map-stage:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.transfer-map-status{position:absolute;right:20px;top:20px;z-index:2;background:#15283b;color:#fff;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.transfer-map-help{position:absolute;left:20px;top:115px;z-index:2;max-width:300px;background:#15283b;color:#fff;border-radius:16px;padding:16px 18px;display:grid;gap:7px;box-shadow:0 12px 24px rgba(0,0,0,.18)}
.transfer-map-help strong{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#ff9551}
.transfer-map-help span{font-size:13px;line-height:1.45;color:#eef5f8}
.transfer-map-summary{position:absolute;left:20px;right:20px;bottom:20px;z-index:2;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:18px;padding:14px 16px;display:grid;grid-template-columns:1fr auto 1fr auto;gap:12px;align-items:center;border:1px solid rgba(215,225,231,.9);box-shadow:0 12px 28px rgba(10,34,51,.13)}
.transfer-map-summary div{display:grid;gap:2px;min-width:0}
.transfer-map-summary small{color:#778691;font-size:10px;text-transform:uppercase;font-weight:800;letter-spacing:.07em}
.transfer-map-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.transfer-map-summary>a{font-size:12px;font-weight:800;text-decoration:none;color:#126b7b;white-space:nowrap}
.transfer-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.transfer-result-grid .transfer-result-card{height:100%;display:flex;flex-direction:column}
.transfer-result-grid .transfer-card-actions{margin-top:auto;padding-top:14px}
@media(max-width:1080px){
 .transfer-app-layout{grid-template-columns:340px minmax(0,1fr)}
 .transfer-map-stage{min-height:620px}
 .transfer-map-summary{grid-template-columns:1fr auto 1fr}
 .transfer-map-summary>a{grid-column:1/-1}
}
@media(max-width:860px){
 .transfer-app-layout{grid-template-columns:1fr}
 .transfer-app-sidebar{position:static}
 .transfer-map-stage{min-height:460px}
 .transfer-result-grid{grid-template-columns:1fr}
}
@media(max-width:580px){
 .transfer-app-section{padding-top:16px}
 .transfer-planner-card{padding:18px}
 .transfer-app-sidebar h1{font-size:30px}
 .transfer-map-stage{min-height:380px;border-radius:20px}
 .transfer-map-help{left:12px;top:70px;max-width:250px;padding:13px}
 .transfer-map-status{right:12px;top:12px}
 .transfer-map-summary{left:10px;right:10px;bottom:10px;grid-template-columns:1fr;gap:7px}
 .transfer-map-summary>span{display:none}
 .transfer-map-summary strong{white-space:normal}
}

/* V10.21 — profile cancellation warnings and paid reservation changes */
.nonrefund-cancel{width:100%;border:1px solid #f0cccc;border-radius:16px;padding:12px;background:#fff8f8}
.nonrefund-cancel>summary{list-style:none;cursor:pointer;width:max-content}
.nonrefund-cancel>summary::-webkit-details-marker{display:none}
.nonrefund-cancel[open]>summary{margin-bottom:12px}
.nonrefund-cancel form{display:grid;gap:12px}
.profile-edit-form .field-note{margin-top:6px}
.profile-manage-details{max-width:100%}
.profile-manage-details[open]{width:100%;padding:14px;border:1px solid #dce6eb;border-radius:16px;background:#fbfdfe}
.profile-manage-details>summary{list-style:none;cursor:pointer;width:max-content}
.profile-manage-details>summary::-webkit-details-marker{display:none}
.profile-manage-details[open]>summary{margin-bottom:14px}
@media(max-width:640px){.nonrefund-cancel>summary,.profile-manage-details>summary{width:100%;justify-content:center}.profile-edit-form .row{grid-template-columns:1fr}}

/* V10.22 — refined international operator header + search experience */
.site-header-premium{background:rgba(255,255,255,.985);box-shadow:0 10px 28px rgba(12,44,67,.055)}
.nav-premium{min-height:82px;padding:10px 0;gap:18px;grid-template-columns:auto minmax(0,1fr) auto}
.nav-premium .navlinks{gap:20px;white-space:nowrap;min-width:0}
.nav-premium .navlinks a{font-size:12.5px;padding:24px 0 22px}
.nav-actions-premium{gap:10px;white-space:nowrap}
.header-whatsapp-icon{width:42px;height:42px;border-radius:50%;display:inline-grid;place-items:center;background:#56c967;color:#fff;box-shadow:0 8px 18px rgba(56,176,79,.17);flex:0 0 auto;transition:transform .18s ease,box-shadow .18s ease}
.header-whatsapp-icon:hover{transform:translateY(-1px);box-shadow:0 11px 24px rgba(56,176,79,.24)}
.header-whatsapp-icon svg{width:21px;height:21px;fill:currentColor}
.header-call-support{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);padding:5px 8px;border-radius:12px;min-width:164px;transition:background .18s ease}
.header-call-support:hover{background:#f5f8fa}
.header-call-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#f0f5f7;color:#17364b;font-size:15px;flex:0 0 auto}
.header-call-support>span:last-child{display:grid;line-height:1.04;gap:2px}
.header-call-support small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#748592;font-weight:900}
.header-call-support strong{font-size:13.5px;letter-spacing:-.01em}
.header-call-support em{font-style:normal;font-size:9px;color:#82909a;font-weight:650}
.header-profile-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:9px 4px}
.profile-icon{font-size:15px;line-height:1}
.nav-actions-premium .desktop-book{padding:13px 18px;border-radius:10px;box-shadow:0 9px 20px rgba(12,44,67,.10)}
.nav-actions-premium .language-menu summary{min-height:42px;border-radius:10px;padding:0 11px}

/* Floating search: one intentional card, not a second navigation bar. */
.header-search-dock{top:78px;padding:10px 0;z-index:38}
.header-search-dock>.container{max-width:1110px}
.header-search-dock-inner{border-radius:18px;padding:8px;background:rgba(255,255,255,.985);border:1px solid rgba(211,222,229,.95);box-shadow:0 18px 46px rgba(9,36,54,.14);display:grid;grid-template-columns:300px minmax(0,1fr);gap:10px;align-items:stretch}
.dock-service-switch{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;background:#f1f5f7;border-radius:13px}
.dock-tab{display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;padding:8px 9px;background:transparent;color:#4a5c68;cursor:pointer;transition:.18s ease;text-align:left;min-width:0}
.dock-tab>span:last-child{display:grid;gap:1px;min-width:0}
.dock-tab strong{font-size:12px;line-height:1.1}
.dock-tab small{font-size:8.5px;color:#85939c;line-height:1.1;white-space:nowrap}
.dock-tab-icon{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:#fff;color:#29465a;box-shadow:0 2px 8px rgba(13,52,76,.06);font-size:11px;flex:0 0 auto}
.dock-tab.active{background:#0d2e45;color:#fff;box-shadow:0 8px 18px rgba(12,44,67,.14)}
.dock-tab.active small{color:#cbd7dd}.dock-tab.active .dock-tab-icon{background:rgba(255,255,255,.13);color:#fff;box-shadow:none}
.dock-search-content{min-width:0;display:flex;align-items:center}
.dock-form{display:none;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;align-items:center}
.dock-form.active{display:grid}
.dock-form-transfers{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.dock-input-shell{min-width:0;display:flex;align-items:center;gap:9px;border:1px solid #dce5ea;background:#fbfcfd;border-radius:12px;padding:0 12px;height:48px;transition:border-color .18s ease,box-shadow .18s ease}
.dock-input-shell:focus-within{border-color:#82cfd0;box-shadow:0 0 0 3px rgba(69,199,200,.10)}
.dock-input-shell>span{font-size:13px;color:#80909a;flex:0 0 auto}
.dock-form .dock-input-shell input{border:0!important;background:transparent!important;border-radius:0!important;padding:0!important;width:100%;min-width:0;height:auto;box-shadow:none!important;outline:0;font-size:13px;color:#274153}
.dock-search-button{height:48px;border-radius:11px;padding:0 18px;white-space:nowrap;box-shadow:none}

/* Home service selector: integrated segmented service chooser. */
.booking-service-switch{display:grid;grid-template-columns:1fr 1fr;gap:7px;background:#eff4f6;border:1px solid #e1e9ed;border-radius:17px;padding:6px;margin:-2px 0 16px}
.booking-service-option{border:0;border-radius:12px;background:transparent;color:#445966;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;min-width:0;transition:background .18s ease,color .18s ease,box-shadow .18s ease}
.booking-service-option>span:last-child{display:grid;gap:2px;min-width:0}
.booking-service-option strong{font-size:12px;line-height:1.15}.booking-service-option small{font-size:9px;line-height:1.25;color:#81909a}
.service-switch-icon{width:31px;height:31px;border-radius:10px;background:#fff;color:#25465a;display:grid;place-items:center;box-shadow:0 3px 10px rgba(14,49,70,.07);font-size:13px;flex:0 0 auto}
.booking-service-option.active{background:#0c2c43;color:#fff;box-shadow:0 8px 18px rgba(12,44,67,.13)}
.booking-service-option.active small{color:#cbd7dd}.booking-service-option.active .service-switch-icon{background:rgba(255,255,255,.13);color:#fff;box-shadow:none}
.booking-panel-tabs{display:none!important}

@media(max-width:1360px){
  .nav-premium{gap:13px}.nav-premium .navlinks{gap:15px}.nav-premium .navlinks a{font-size:12px}
  .header-call-support{min-width:145px;padding-inline:4px}.header-call-support em{display:none}.header-call-support strong{font-size:12.5px}
  .nav-actions-premium{gap:7px}.nav-actions-premium .desktop-book{padding-inline:15px}.site-logo-crop{width:144px!important}
}
@media(max-width:1180px){
  .nav-premium .navlinks{display:none!important}.header-call-support,.header-whatsapp-icon,.header-profile-link,.desktop-book{display:none!important}.site-mobile-toggle{display:inline-flex!important}
  .nav-premium{grid-template-columns:minmax(0,1fr) auto;min-height:68px;padding:7px 0}.site-logo-crop{width:146px!important}.header-search-dock{display:none!important}
}
@media(max-width:600px){
  .booking-service-switch{gap:5px;padding:5px;border-radius:14px}.booking-service-option{padding:9px 8px;gap:7px}.booking-service-option small{display:none}.booking-service-option strong{font-size:11px}.service-switch-icon{width:28px;height:28px}
}

/* V10.23 — visual polish: header, floating search, profile, transfer cards */
.announcement-premium{background:#0d1720!important;color:#fff!important;min-height:30px;font-size:11.5px;letter-spacing:.01em}
.announcement-premium .container{min-height:30px;padding:0 18px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center}
.announcement-premium a{display:none!important}
.site-header-premium{min-height:76px!important;background:#fff!important;border-bottom:1px solid #e7edf1!important;box-shadow:0 6px 20px rgba(12,44,67,.055)!important}
.nav-premium{min-height:76px!important;padding:8px 0!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:28px!important}
.nav-premium .logo{display:flex;align-items:center;min-width:0}
.nav-premium .site-logo-crop{width:158px!important;height:54px!important;display:block;overflow:hidden}
.nav-premium .site-logo-crop img{width:100%!important;height:100%!important;object-fit:contain!important}
.nav-premium .navlinks{display:flex;justify-content:center;align-items:stretch;gap:18px!important;min-width:0}
.nav-premium .navlinks a{font-size:12px!important;padding:22px 0 20px!important;color:#304455;font-weight:750}
.nav-premium .navlinks a.active{color:var(--ink)}
.nav-actions-premium{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;min-width:0}
.header-whatsapp-icon{width:40px!important;height:40px!important;box-shadow:none!important}
.header-call-support{min-width:0!important;max-width:170px;padding:5px 7px!important;gap:7px!important}
.header-call-icon{width:28px!important;height:28px!important;font-size:13px!important;background:#edf4f6!important}
.header-call-support>span:last-child{gap:1px!important}
.header-call-support small{font-size:8.5px!important;letter-spacing:.075em!important}
.header-call-support strong{font-size:12.5px!important}
.header-call-support em{font-size:8.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-profile-link{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:40px;padding:5px 7px!important;border-radius:10px!important;text-decoration:none!important;color:var(--ink)!important;font-size:12px!important;font-weight:800!important}
.header-profile-link:hover{background:#f4f7f9!important}
.profile-icon{width:28px;height:28px;border:1px solid #dbe4e9;border-radius:50%;display:grid!important;place-items:center;background:#fff;color:var(--ink);flex:0 0 auto}
.profile-icon svg{width:15px;height:15px;fill:currentColor}
.profile-icon b{font-size:11px;line-height:1}
.header-profile-link.is-signed-in .profile-icon{background:var(--ink);color:#fff;border-color:var(--ink)}
.profile-label{max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-actions-premium .desktop-book{min-height:42px!important;padding:10px 16px!important;border-radius:10px!important;font-size:12px!important;box-shadow:none!important}
.nav-actions-premium .language-menu summary{min-height:40px!important;border-radius:10px!important;padding:0 10px!important}

/* Compact sticky search inspired by the original operator header: one coherent search card. */
.header-search-dock{top:78px!important;padding:9px 14px!important}
.header-search-dock>.container{max-width:980px!important;padding:0!important}
.header-search-dock-inner{grid-template-columns:188px minmax(0,1fr)!important;gap:8px!important;padding:7px!important;border-radius:16px!important;background:rgba(255,255,255,.992)!important;box-shadow:0 16px 36px rgba(8,31,48,.13)!important}
.dock-service-switch{gap:4px!important;padding:3px!important;border-radius:12px!important;background:#f0f4f6!important}
.dock-tab{padding:7px 8px!important;gap:5px!important;border-radius:9px!important;min-height:44px!important}
.dock-tab-icon{width:22px!important;height:22px!important;font-size:10px!important;border-radius:7px!important}
.dock-tab strong{font-size:10.5px!important}
.dock-tab small{display:none!important}
.dock-search-content{min-width:0!important}
.dock-form{gap:7px!important}
.dock-form-transfers{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto!important}
.dock-input-shell{height:44px!important;border-radius:10px!important;padding:0 11px!important}
.dock-input-shell input{font-size:12px!important}
.dock-search-button{min-height:44px!important;border-radius:10px!important;padding:0 15px!important;background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important;font-size:11.5px!important;white-space:nowrap}

/* Home service chooser: visually one premium segmented control, not two loose buttons. */
.booking-service-switch{border-radius:15px!important;padding:5px!important;background:#f1f5f7!important;border:1px solid #dfe8ed!important;gap:5px!important;margin-bottom:18px!important}
.booking-service-option{min-height:52px!important;border-radius:11px!important;padding:9px 10px!important}
.booking-service-option strong{font-size:11.5px!important}.booking-service-option small{font-size:8.8px!important}
.booking-service-option.active{background:var(--ink)!important;box-shadow:none!important}
.service-switch-icon{width:29px!important;height:29px!important;border-radius:9px!important}

/* Transfer planner and results visual consistency. */
.transfer-app-section{padding-top:34px!important}
.transfer-app-layout{gap:24px!important}
.transfer-app-sidebar{border-radius:22px!important;box-shadow:0 12px 28px rgba(10,34,51,.06)!important}
.transfer-planner-tabs{display:grid!important;grid-template-columns:1fr 1fr!important;gap:5px!important;padding:4px!important;background:#f0f4f6!important;border-radius:13px!important;margin-bottom:18px!important}
.transfer-planner-tabs button{border-radius:10px!important;background:transparent!important;color:#536875!important;padding:10px 12px!important}
.transfer-planner-tabs button.active{background:var(--ink)!important;color:#fff!important}
.transfer-map-stage{border-radius:22px!important;box-shadow:0 12px 28px rgba(10,34,51,.055)!important}
.transfer-result-grid{align-items:stretch!important}
.transfer-result-card{min-width:0!important;border-radius:20px!important;overflow:hidden!important}
.transfer-result-top>div:first-child{min-width:0}
.transfer-result-top h3,.transfer-result-top p{overflow-wrap:anywhere}
.transfer-price-box{flex:0 0 auto}

/* Fix unwrapped recap cards (transfer checkout) that inherited the zero-padding image-card style. */
.transfer-booking-recap{padding:24px!important;overflow:visible!important;width:100%!important;min-width:0!important;border-radius:18px!important}
.transfer-booking-recap .eyebrow{margin-bottom:6px!important}
.transfer-booking-recap h3{margin:0 0 14px!important;overflow-wrap:anywhere}
.transfer-booking-recap .recap-row{min-width:0!important}
.transfer-booking-recap .recap-row strong{min-width:0;max-width:62%;text-align:right;overflow-wrap:anywhere}
.booking-form-layout>*{min-width:0!important}

/* Customer profile visual balance. */
.page-profile .profile-shell{max-width:1120px}
.page-profile .profile-login-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr)!important;gap:26px!important;align-items:stretch!important}
.page-profile .profile-login-grid>.checkout-panel{height:100%;box-shadow:0 12px 30px rgba(12,44,67,.055)}
.page-profile .profile-login-grid>.booking-recap{position:static!important;padding:26px!important;overflow:visible!important;border-radius:20px!important;height:100%!important;box-shadow:0 12px 30px rgba(12,44,67,.055)!important;background:linear-gradient(180deg,#f9fcfd 0%,#fff 100%)!important;border-top:4px solid var(--cyan)!important}
.page-profile .profile-login-grid>.booking-recap .eyebrow{margin-bottom:7px}
.page-profile .profile-login-grid>.booking-recap h3{font-size:20px;line-height:1.2;margin:0 0 12px}
.page-profile .profile-login-grid>.booking-recap p{color:#667884;line-height:1.55}
.page-profile .portal-feature-list{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.page-profile .portal-feature-list li{position:relative;padding-left:22px;color:#4e6472;line-height:1.45}
.page-profile .portal-feature-list li:before{content:"✓";position:absolute;left:0;top:0;color:#278858;font-weight:900}

@media(max-width:1240px) and (min-width:1061px){
  .nav-premium{gap:18px!important}.nav-premium .navlinks{gap:13px!important}.nav-premium .navlinks a{font-size:11.5px!important}.header-call-support em{display:none}.header-call-support{max-width:146px}.profile-label{max-width:54px}.nav-actions-premium .desktop-book{padding-left:13px!important;padding-right:13px!important}
}
@media(max-width:1180px) and (min-width:1061px){
  .nav-premium .navlinks{display:flex!important}.header-call-support,.header-whatsapp-icon,.header-profile-link,.desktop-book{display:flex!important}.site-mobile-toggle{display:none!important}
}
@media(max-width:1060px){
  .nav-premium{grid-template-columns:minmax(0,1fr) auto!important;min-height:68px!important;padding:7px 0!important}.nav-premium .navlinks{display:none!important}.header-call-support,.header-whatsapp-icon,.header-profile-link,.desktop-book{display:none!important}.site-mobile-toggle{display:inline-flex!important}.nav-premium .site-logo-crop{width:146px!important;height:50px!important}.header-search-dock{display:none!important}
}
@media(max-width:900px){
  .page-profile .profile-login-grid{grid-template-columns:1fr!important}.page-profile .profile-login-grid>.booking-recap{height:auto!important}
}
@media(max-width:640px){
  .announcement-premium{font-size:10.5px}.announcement-premium .container{padding:0 12px!important}
  .transfer-booking-recap{padding:20px!important;margin:0!important}.transfer-booking-recap .recap-row{gap:10px!important}.transfer-booking-recap .recap-row strong{max-width:58%}
}

/* V10.26 — mobile drawer cleanup, language alignment and Travel Journal */
.language-globe-icon{display:inline-grid;place-items:center;width:18px;height:18px;line-height:0;flex:0 0 18px;color:#2d8f98}
.language-globe-icon svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.language-menu summary{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;line-height:1!important}
.language-menu summary .language-current{display:inline-flex;align-items:center;line-height:1;height:18px}
.language-menu summary .language-caret{display:inline-flex;align-items:center;justify-content:center;height:18px;line-height:1}

/* Mobile menu deliberately does not repeat the site logo already visible in the header. */
.mobile-drawer-head{padding:18px 20px 16px!important;min-height:76px!important;background:linear-gradient(180deg,#fbfdfe 0%,#fff 100%)!important;border-bottom:1px solid #e6edf1!important}
.mobile-drawer-head>div{display:grid;gap:3px;min-width:0}
.mobile-drawer-head>div>span{font-size:10px!important;line-height:1.2;text-transform:uppercase;letter-spacing:.13em;color:#6b7e89;font-weight:900}
.mobile-drawer-head>div>strong{font-size:17px;line-height:1.2;color:var(--ink);letter-spacing:-.02em}
.mobile-drawer-head button{width:40px!important;height:40px!important;flex:0 0 40px;border:1px solid #e0e7eb!important;background:#f4f7f9!important;color:#294657!important;font-size:25px!important;display:grid;place-items:center;line-height:1!important;cursor:pointer}
.mobile-profile-card{margin:14px 16px 8px;padding:13px 14px;border:1px solid #e0e8ed;border-radius:15px;background:#f8fbfc;display:grid;grid-template-columns:40px minmax(0,1fr) 18px;gap:11px;align-items:center;color:var(--ink);text-decoration:none}
.mobile-profile-avatar{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:900}
.mobile-profile-avatar svg{width:20px;height:20px;fill:currentColor}
.mobile-profile-card>span:nth-child(2){display:grid;gap:2px;min-width:0}
.mobile-profile-card small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#758690;font-weight:850}
.mobile-profile-card strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-profile-card>b{font-size:21px;color:#8a99a2;font-weight:400;text-align:right}
.site-mobile-drawer .mobile-primary-nav{display:grid!important;padding:5px 16px 10px!important;gap:3px!important}
.site-mobile-drawer .mobile-primary-nav a{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:48px!important;padding:0 13px!important;border:0!important;border-radius:12px!important;color:#263f50!important;font-size:15px!important;font-weight:800!important;text-decoration:none!important}
.site-mobile-drawer .mobile-primary-nav a>b{font-size:20px;font-weight:400;color:#a0abb1;line-height:1}
.site-mobile-drawer .mobile-primary-nav a:hover{background:#f5f8fa!important}
.site-mobile-drawer .mobile-primary-nav a.active{background:#eaf5f4!important;color:#0c555b!important}
.site-mobile-drawer .mobile-primary-nav a.active>b{color:#2e9597}
.mobile-drawer-quick-actions{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:8px!important;padding:12px 16px 16px!important;border-top:1px solid #edf1f3}
.mobile-quick-action{min-width:0;min-height:72px;border:1px solid #dce5ea;border-radius:14px;background:#fff;color:var(--ink);display:grid;place-items:center;align-content:center;gap:5px;text-align:center;text-decoration:none;padding:9px 5px!important}
.mobile-quick-action>span{font-size:18px;line-height:1}
.mobile-quick-action strong{font-size:10.5px;line-height:1.2}
.mobile-quick-action.primary{background:var(--ink);border-color:var(--ink);color:#fff}
.mobile-quick-action.whatsapp{background:#eefaf2;border-color:#d8ecde;color:#21753c}
.mobile-languages{padding:17px 16px 28px!important;background:#fbfcfd;border-top:1px solid #e4ebef!important}
.mobile-language-title{display:flex!important;align-items:center!important;gap:8px!important;margin-bottom:10px!important;color:#667985!important}
.mobile-language-title strong{display:block!important;margin:0!important;font-size:10px!important;letter-spacing:.1em!important}
.mobile-languages>div[data-language-list]{display:flex!important;gap:7px!important;flex-wrap:wrap!important;max-height:220px;overflow:auto}
.mobile-languages>div[data-language-list] a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;border-radius:999px!important;padding:7px 11px!important}

/* Home Travel Journal: compact headline-led module inspired by the supplied reference. */
.home-journal-section{background:#fff;padding-top:54px!important;padding-bottom:58px!important}
.home-journal-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:20px}
.home-journal-head>div{max-width:760px}
.home-journal-head h2{font-size:34px;letter-spacing:-1.2px;margin:5px 0 7px;color:var(--ink)}
.home-journal-head p{margin:0;color:#6f7f89;line-height:1.55}
.home-journal-tabs{display:flex;align-items:center;border-top:1px solid #e4e9ec;border-bottom:1px solid #e4e9ec;gap:30px;margin-bottom:25px;overflow-x:auto}
.home-journal-tabs button{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:54px;padding:0 9px;border:0;background:transparent;color:#57636b;text-transform:uppercase;font-size:11px;letter-spacing:.025em;font-weight:800;white-space:nowrap;cursor:pointer}
.home-journal-tabs button span{font-size:17px;color:#59646b}
.home-journal-tabs button:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-1px;background:transparent}
.home-journal-tabs button.active{color:var(--coral)}
.home-journal-tabs button.active span{color:var(--coral)}
.home-journal-tabs button.active:after{background:var(--coral)}
.home-journal-panel{display:none}
.home-journal-panel.active{display:block}
.home-journal-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:34px;row-gap:20px}
.home-journal-links a{display:block;color:#313e48;font-size:13px;line-height:1.3;text-decoration:none;font-weight:600;min-width:0}
.home-journal-links a:hover{color:var(--coral);text-decoration:underline;text-underline-offset:3px}
.home-journal-links a small{display:block;margin-bottom:4px;color:#87949b;text-transform:uppercase;letter-spacing:.07em;font-size:8.5px;font-weight:900}

/* Public Journal index */
.blog-hero{padding:64px 0 54px;background:linear-gradient(120deg,#092b40 0%,#0d455c 100%);color:#fff}
.blog-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:36px;align-items:center}
.blog-hero h1{max-width:790px;font-size:clamp(40px,5vw,64px);line-height:1.02;letter-spacing:-2.6px;margin:10px 0 15px;color:#fff}
.blog-hero p{max-width:760px;color:#d1e0e6;font-size:17px;line-height:1.6;margin:0}
.blog-search-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 22px 44px rgba(0,0,0,.18);color:var(--ink);display:grid;gap:11px}
.blog-search-card>label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:#6e7f89}
.blog-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}
.blog-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.blog-search-card .field{min-width:0}
.blog-featured-section{background:#fff}
.blog-featured-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-auto-rows:minmax(220px,auto);gap:18px}
.blog-featured-card{border:1px solid #e2e9ed;border-radius:20px;background:#fff;overflow:hidden;min-width:0;box-shadow:0 10px 26px rgba(10,34,51,.045)}
.blog-featured-card.blog-featured-lead{grid-row:span 2}
.blog-card-image{display:block;overflow:hidden;background:#eaf0f3;aspect-ratio:16/9}
.blog-featured-lead .blog-card-image{aspect-ratio:16/10}
.blog-card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.blog-card:hover .blog-card-image img,.blog-featured-card:hover .blog-card-image img{transform:scale(1.025)}
.blog-card-body{padding:18px;display:grid;gap:9px}
.blog-card-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#778892;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.blog-card-meta span{color:#25757c}
.blog-card-body h3{margin:0;font-size:20px;line-height:1.2;letter-spacing:-.45px;color:var(--ink)}
.blog-featured-lead .blog-card-body h3{font-size:28px}
.blog-card-body h3 a{color:inherit;text-decoration:none}
.blog-card-body p{margin:0;color:#687a86;font-size:13.5px;line-height:1.55}
.blog-card-body .text-link{margin-top:2px;width:max-content}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.blog-card{min-width:0;border:1px solid #e1e8ec;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(10,34,51,.04)}
.blog-card-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:9px;border-top:1px solid #edf1f3;color:#778791;font-size:11px}
.blog-card-footer a{color:var(--ink);font-weight:850;text-decoration:none}
.blog-index-section .section-head{margin-bottom:24px}

/* Article page */
.journal-article-head{background:#f5f8fa;padding:56px 0 42px;border-bottom:1px solid #e4eaee}
.journal-article-head-grid{max-width:980px}
.journal-back{display:inline-flex;margin-bottom:22px;color:#61727d;text-decoration:none;font-weight:800;font-size:12px}
.journal-article-head h1{font-size:clamp(42px,5.3vw,68px);line-height:1.02;letter-spacing:-2.6px;max-width:1000px;margin:8px 0 15px;color:var(--ink)}
.journal-article-head p{font-size:18px;line-height:1.6;color:#647681;max-width:850px;margin:0}
.journal-byline{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:20px;color:#768791;font-size:11px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}
.journal-article-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(270px,320px);gap:44px;align-items:start;padding-top:40px;padding-bottom:66px}
.journal-cover{margin:0 0 30px}
.journal-cover img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:22px;display:block;background:#edf2f4}
.journal-cover figcaption{margin-top:7px;color:#8a979e;font-size:9.5px;line-height:1.4}
.journal-body{color:#354b5a;font-size:16.5px;line-height:1.78}
.journal-body h2{color:var(--ink);font-size:30px;line-height:1.15;letter-spacing:-.8px;margin:34px 0 12px}
.journal-body h3{color:var(--ink);font-size:23px;margin:28px 0 10px}
.journal-body p{margin:0 0 18px}
.journal-body ul,.journal-body ol{padding-left:22px;margin:0 0 20px}
.journal-body li{margin-bottom:7px}
.journal-source{margin-top:34px;padding:22px;border:1px solid #dbe5ea;border-radius:18px;background:#f7fafb}
.journal-source strong{display:block;color:var(--ink);margin-bottom:6px}
.journal-source p{color:#657783;line-height:1.5;margin:0 0 14px}
.journal-sidebar{position:sticky;top:104px}
.journal-sidebar-card{border:1px solid #dde6ea;border-radius:20px;padding:22px;background:#fff;box-shadow:0 12px 28px rgba(10,34,51,.05);display:grid;gap:11px}
.journal-sidebar-card h3{font-size:24px;margin:0;color:var(--ink)}
.journal-sidebar-card p{margin:0 0 4px;color:#6b7c87;line-height:1.5}
.blog-grid-related{grid-template-columns:repeat(3,minmax(0,1fr))}

@media(max-width:980px){
  .home-journal-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-hero-grid{grid-template-columns:1fr}.blog-search-card{max-width:720px}
  .blog-featured-grid{grid-template-columns:1fr 1fr}.blog-featured-card.blog-featured-lead{grid-column:1/-1;grid-row:auto}.blog-featured-lead .blog-card-image{aspect-ratio:16/7}
  .blog-grid{grid-template-columns:1fr 1fr}
  .journal-article-layout{grid-template-columns:1fr;gap:24px}.journal-sidebar{position:static}.journal-sidebar-card{max-width:none}
}
@media(max-width:600px){
  .language-menu summary{min-width:74px!important;padding:0 10px!important;gap:6px!important}.language-globe-icon,.language-globe-icon svg{width:17px;height:17px}.language-current{font-size:14px!important}
  .site-mobile-drawer{width:min(345px,90vw)!important}.mobile-drawer-head{padding:14px 16px!important;min-height:66px!important}.mobile-drawer-head>div>strong{font-size:15px}.mobile-profile-card{margin:10px 12px 6px}.site-mobile-drawer .mobile-primary-nav{padding:4px 12px 8px!important}.site-mobile-drawer .mobile-primary-nav a{min-height:44px!important;font-size:14px!important}.mobile-drawer-quick-actions{padding:10px 12px 13px!important}.mobile-quick-action{min-height:66px}.mobile-languages{padding:15px 12px 24px!important}
  .home-journal-head{align-items:flex-start;flex-direction:column;gap:11px}.home-journal-head h2{font-size:29px}.home-journal-tabs{gap:15px;margin-left:-12px;margin-right:-12px;padding:0 12px}.home-journal-tabs button{font-size:10px;min-height:50px}.home-journal-links{grid-template-columns:1fr;row-gap:15px}.home-journal-links a{font-size:13px;padding-bottom:14px;border-bottom:1px solid #edf1f3}.home-journal-links a:last-child{border-bottom:0}
  .blog-hero{padding:42px 0}.blog-hero h1{font-size:39px;letter-spacing:-1.8px}.blog-hero p{font-size:15px}.blog-search-card{padding:15px;border-radius:16px}.blog-search-row,.blog-filter-row{grid-template-columns:1fr}.blog-search-row .btn{width:100%}
  .blog-featured-grid,.blog-grid,.blog-grid-related{grid-template-columns:1fr}.blog-featured-lead .blog-card-image{aspect-ratio:16/9}.blog-featured-lead .blog-card-body h3{font-size:24px}.blog-card-body h3{font-size:20px}
  .journal-article-head{padding:38px 0 30px}.journal-article-head h1{font-size:38px;letter-spacing:-1.8px}.journal-article-head p{font-size:15px}.journal-article-layout{padding-top:24px;padding-bottom:45px}.journal-cover img{border-radius:16px}.journal-body{font-size:15.5px}.journal-body h2{font-size:27px}.journal-source{padding:18px}
}

/* V10.27 — Travel Journal tabs: remove stray browser scrollbar */
.home-journal-tabs{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  overscroll-behavior-inline:contain;
}
.home-journal-tabs::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.home-journal-tabs button{
  flex:0 0 auto;
}
.home-journal-tabs button:after{
  bottom:0!important;
}
@media (min-width:769px){
  .home-journal-tabs{
    overflow:hidden!important;
  }
}

/* V10.28 — long-form Travel Journal article typography */
.journal-body{font-size:18px;line-height:1.82;color:#304857}
.journal-body>p:first-child,.journal-body .article-lead{font-size:21px;line-height:1.68;color:#18384b;font-weight:500}
.journal-body h2{font-size:34px;line-height:1.18;letter-spacing:-.025em;margin:46px 0 16px;color:var(--ink)}
.journal-body h3{font-size:25px;line-height:1.25;margin:34px 0 13px;color:var(--ink)}
.journal-body p{margin:0 0 21px}.journal-body ul,.journal-body ol{margin:14px 0 25px;padding-left:25px}.journal-body li{margin:8px 0}.journal-body strong{color:#17384b}
.journal-body figure.article-media{margin:38px 0}.journal-body figure.article-media img{display:block;width:100%;max-height:650px;object-fit:cover;border-radius:20px;box-shadow:0 16px 35px rgba(10,38,57,.08)}
.journal-body figure.article-media figcaption{margin-top:10px;color:#71828d;font-size:13px;line-height:1.5;text-align:left}
.journal-body blockquote{margin:32px 0;padding:20px 24px;border-left:5px solid var(--cyan);border-radius:0 16px 16px 0;background:#f1f8f8;color:#284958;font-size:20px;line-height:1.6}
.journal-body .article-tip-box{margin:30px 0;padding:22px 24px;border:1px solid #d6e8e7;border-radius:18px;background:linear-gradient(135deg,#f5fbfa,#fbfdfd)}
.journal-body .article-tip-box h3{margin-top:0;font-size:19px}.journal-body .article-tip-box p:last-child{margin-bottom:0}
.journal-body table{width:100%;border-collapse:collapse;margin:28px 0;font-size:15px}.journal-body th,.journal-body td{padding:12px 14px;border:1px solid #dfe7eb;text-align:left}.journal-body th{background:#f4f8fa;color:#17384b}
.journal-body hr{border:0;border-top:1px solid #e0e8ec;margin:38px 0}
.journal-cover{margin-bottom:36px}.journal-cover img{width:100%;max-height:650px;object-fit:cover;border-radius:22px}
@media(max-width:700px){.journal-body{font-size:17px}.journal-body>p:first-child,.journal-body .article-lead{font-size:19px}.journal-body h2{font-size:28px;margin-top:36px}.journal-body h3{font-size:22px}.journal-body figure.article-media{margin:28px -2px}.journal-body figure.article-media img{border-radius:15px}}

/* V10.29 — flexible payment + official Tripadvisor widget */
.payment-method-choice-grid{display:grid;gap:14px;margin:14px 0 18px}
.payment-method-choice-grid .payment-choice{margin:0}
.pay-at-ranch-choice{border-color:#b9dfc3;background:linear-gradient(180deg,#fbfffc 0%,#f4fbf6 100%)}
.pay-at-ranch-choice.selected{border-color:#2c8f4b;box-shadow:0 12px 28px rgba(44,143,75,.10)}
.online-payment-plans{display:grid;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e3e9ed}
.payment-plan-intro{margin:0 0 2px}
.tripadvisor-live-section{background:linear-gradient(180deg,#fff 0%,#f8fbfc 100%)}
.tripadvisor-official-widget{background:#fff;border:1px solid #e0e7eb;border-radius:22px;padding:22px;min-height:130px;overflow:hidden;box-shadow:0 12px 28px rgba(10,38,57,.05)}
.tripadvisor-official-widget iframe{max-width:100%!important}
.tripadvisor-official-widget img{max-width:100%;height:auto}
@media(max-width:640px){
  .tripadvisor-official-widget{padding:14px;border-radius:18px}
  .payment-method-choice-grid .payment-choice-body{grid-template-columns:1fr}
  .payment-method-choice-grid .payment-choice-money{text-align:left}
}

/* V10.30 — confirmation page polish + home-only floating search */
.confirmation-section{background:linear-gradient(180deg,#f7fafc 0%,#fff 42%)}
.confirmation-grid{grid-template-columns:minmax(0,1fr) minmax(360px,390px);gap:38px;align-items:start;max-width:1180px}
.confirmation-main-card{padding:34px;border-radius:22px;box-shadow:0 18px 40px rgba(12,44,67,.07)}
.confirmation-main-card h2{font-size:27px;line-height:1.22;letter-spacing:-.02em;margin:0 0 8px}
.confirmation-ref{border-radius:14px;padding:18px 20px;margin-bottom:24px;background:linear-gradient(180deg,#f7fafb,#f3f7f9)}
.confirmation-details{gap:14px;margin:26px 0}
.confirmation-details>div{border-radius:14px;padding:16px 17px;background:#fff}
.confirmation-payment{border:1px solid #e8eef1;border-radius:16px;padding:20px 18px;background:#f8fafb}
.confirmation-payment-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:4px}
.confirmation-payment-head h3{margin:0}
.confirmation-payment-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.confirmation-payment-status.is-ranch{background:#fff4df;color:#795219}
.confirmation-payment-status.is-paid{background:#eaf8ef;color:#1c6d3d}
.confirmation-actions{margin-top:24px}
.confirmation-side{display:grid;gap:16px;position:sticky;top:92px}
.confirmation-side-card{position:relative;background:#fff;border:1px solid #e1e8ec;border-radius:22px;padding:24px;box-shadow:0 14px 34px rgba(12,44,67,.055);overflow:hidden}
.confirmation-side-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--cyan),var(--coral))}
.confirmation-side-card .eyebrow{margin:0 0 7px;padding-left:46px;font-size:10px}
.confirmation-side-card h3{margin:0 0 10px;padding-left:46px;color:var(--ink);font-size:20px;line-height:1.2;letter-spacing:-.01em}
.confirmation-side-card p{color:#5f7280;line-height:1.58;margin:0 0 16px}
.confirmation-side-icon{position:absolute;left:22px;top:22px;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#eef3f6;color:var(--ink)}
.confirmation-side-icon svg{width:18px;height:18px;fill:currentColor}
.confirmation-side-icon.is-cyan{background:#eafafb;color:#16898b}
.confirmation-side-icon.is-coral{background:#fff0ef;color:#c55753}
.confirmation-policy-note{display:grid;gap:4px;padding:13px 14px;border-radius:14px;background:#f6f9fa;border:1px solid #e5ecef;margin:4px 0 16px}
.confirmation-policy-note strong{font-size:12px;color:var(--ink)}
.confirmation-policy-note span{font-size:11px;color:#6a7b86;line-height:1.45}
.confirmation-profile-form{display:grid;gap:12px;margin-top:8px}
.confirmation-profile-form label{display:grid;gap:6px}
.confirmation-profile-form label>span{font-size:11px;font-weight:850;color:#566c79;text-transform:uppercase;letter-spacing:.05em}
.confirmation-profile-form .form-field{min-height:50px;border-radius:12px}
.confirmation-profile-form .btn,.confirmation-full-btn{width:100%;justify-content:center;min-height:50px}
.confirmation-text-link{display:inline-flex;margin-top:14px;color:var(--ink);font-weight:850;text-decoration:none;font-size:13px}
.confirmation-text-link:hover{text-decoration:underline}
.confirmation-info-card{padding-bottom:21px}
.confirmation-info-card h3{font-size:18px}
.confirmation-support-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.confirmation-support-actions .btn{justify-content:center;min-height:46px}
@media(max-width:1000px){
  .confirmation-grid{grid-template-columns:minmax(0,1fr) 340px;gap:26px}
}
@media(max-width:900px){
  .confirmation-grid{grid-template-columns:1fr!important;max-width:760px}
  .confirmation-side{position:static;grid-template-columns:1fr 1fr}
  .confirmation-profile-card{grid-column:1/-1}
}
@media(max-width:640px){
  .confirmation-main-card{padding:20px!important;border-radius:18px}
  .confirmation-side{grid-template-columns:1fr}
  .confirmation-profile-card{grid-column:auto}
  .confirmation-side-card{padding:20px;border-radius:18px}
  .confirmation-side-icon{left:18px;top:18px}
  .confirmation-side-card .eyebrow,.confirmation-side-card h3{padding-left:43px}
  .confirmation-support-actions{grid-template-columns:1fr}
  .confirmation-payment-head{align-items:flex-start;flex-direction:column}
}

/* V10.31 — customer account menu, portal, wishlist and live change quote */
.customer-account-menu{position:relative}
.customer-account-menu>summary{list-style:none;cursor:pointer}
.customer-account-menu>summary::-webkit-details-marker{display:none}
.customer-account-menu[open] .account-caret{transform:rotate(180deg)}
.account-caret{font-size:11px;transition:transform .18s ease;color:#71838f}
.profile-avatar{display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#e9f7f7,#f1f5f8);color:var(--ink);font-weight:900;border-radius:50%;flex:0 0 auto}
.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.customer-account-popover{position:absolute;right:0;top:calc(100% + 14px);width:310px;background:#fff;border:1px solid #dfe7ec;border-radius:18px;box-shadow:0 22px 50px rgba(9,31,46,.18);padding:12px;z-index:80}
.customer-account-popover:before{content:"";position:absolute;right:36px;top:-7px;width:14px;height:14px;background:#fff;border-left:1px solid #dfe7ec;border-top:1px solid #dfe7ec;transform:rotate(45deg)}
.customer-account-head{display:flex;gap:12px;align-items:center;padding:10px 10px 14px;border-bottom:1px solid #edf1f3}
.customer-account-head .profile-avatar.large{width:46px;height:46px}
.customer-account-head div{display:grid;gap:2px;min-width:0}.customer-account-head strong{font-size:14px}.customer-account-head small{font-size:11px;color:#71808d;overflow:hidden;text-overflow:ellipsis}
.customer-account-popover nav{display:grid;padding:8px 0}
.customer-account-popover nav a{display:grid;grid-template-columns:28px 1fr;align-items:center;gap:8px;padding:11px 12px;border-radius:11px;text-decoration:none;color:#1b3447;font-size:14px}
.customer-account-popover nav a:hover{background:#f3f7f9}.customer-account-popover nav a span{font-size:18px;text-align:center}.customer-account-popover nav a b{font-weight:700}
.customer-account-logout{display:block;border-top:1px solid #edf1f3;padding:12px;text-decoration:none;color:#263d4e;font-size:14px}.customer-account-logout:hover{color:var(--coral)}
.header-profile-link .profile-avatar{width:34px;height:34px}.header-profile-link .profile-avatar img{width:100%;height:100%;object-fit:cover}

.customer-portal-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}
.customer-portal-sidebar{position:sticky;top:112px;background:#fff;border:1px solid #dfe7ec;border-radius:22px;padding:16px;box-shadow:0 12px 30px rgba(10,38,57,.05)}
.customer-portal-identity{display:flex;gap:12px;align-items:center;padding:6px 4px 16px;border-bottom:1px solid #edf2f4}.profile-avatar.xlarge{width:56px;height:56px;font-size:22px}.customer-portal-identity div{display:grid;gap:3px;min-width:0}.customer-portal-identity strong{font-size:14px}.customer-portal-identity small{font-size:11px;color:#71808c;overflow:hidden;text-overflow:ellipsis}
.customer-portal-nav{display:grid;gap:6px;padding:14px 0}.customer-portal-nav a{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:12px;border-radius:12px;color:#243d50;text-decoration:none;font-size:14px}.customer-portal-nav a:hover,.customer-portal-nav a.active{background:#eff6f7;color:#0d4051}.customer-portal-nav a span{font-size:18px;text-align:center}.customer-portal-nav a em{font-style:normal;background:#e8eef1;border-radius:999px;padding:3px 7px;font-size:10px}
.customer-portal-logout{display:block;border-top:1px solid #edf2f4;padding:14px 12px 6px;color:#263d4e;text-decoration:none}.customer-portal-logout:hover{color:var(--coral)}
.customer-portal-main{min-width:0}.customer-portal-main>.section-head{margin-top:0}
.profile-manage-details{width:100%;margin-top:4px}.profile-manage-details>summary{width:max-content;cursor:pointer}.profile-manage-details[open]{background:#f8fbfc;border:1px solid #dce6eb;border-radius:18px;padding:14px}.profile-manage-details[open]>summary{margin-bottom:14px}
.profile-edit-form{display:grid;gap:14px}.profile-edit-form .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-edit-form label{display:block;font-size:12px;font-weight:800;color:#536876;margin-bottom:6px}.change-form-intro{display:grid;gap:5px;padding:14px 16px;border-radius:14px;background:#edf7f8;color:#183e4e}.change-form-intro strong{font-size:16px}.change-form-intro span{font-size:13px;color:#5d737f;line-height:1.5}
.change-price-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:1px solid #dce5ea;background:#fff;border-radius:16px;padding:14px}.change-price-preview>div{display:grid;gap:4px;padding:10px;background:#f7fafb;border-radius:12px}.change-price-preview small{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#738590}.change-price-preview strong{font-size:16px;color:#18384d}.change-price-preview p{grid-column:1/-1;margin:0;font-size:12px;color:#637580}.change-price-preview.loading{opacity:.72}.change-price-preview.success{border-color:#bfe5cf}.change-price-preview.error{border-color:#efc3c3;background:#fffafa}.change-price-preview.error p{color:#8a2c2c}.price-up{color:#b45d1a!important}.price-down{color:#207d4b!important}
.profile-settings-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.customer-profile-form{display:grid;gap:14px}.profile-photo-editor{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;padding-bottom:16px;border-bottom:1px solid #e6ecef}.profile-avatar.xxlarge{width:94px;height:94px;font-size:34px}.profile-photo-editor>div{display:grid;gap:9px}.profile-photo-editor small{color:#71808d}
.help-center-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.help-center-grid article{border:1px solid #dfe7ec;border-radius:18px;padding:22px;background:#fff;box-shadow:0 10px 24px rgba(10,38,57,.04)}.help-center-grid article>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#edf7f8;color:#164658;font-weight:900}.help-center-grid h3{margin:14px 0 8px}.help-center-grid p{color:#657783;line-height:1.55}.help-center-grid a{font-weight:800;color:#123d51;text-decoration:none}
.wishlist-grid .tour-card{position:relative}.wishlist-remove{border:0;background:transparent;color:#b14b4b;font-weight:800;cursor:pointer}.wishlist-button{display:flex!important;gap:7px;align-items:center;justify-content:center;margin-top:8px}.wishlist-button.active{background:#fff3f3;border-color:#f0c9c9;color:#a93c3c}.product-flash{margin-top:18px}

@media(max-width:1100px){.customer-account-menu{display:none}.customer-portal-layout{grid-template-columns:1fr}.customer-portal-sidebar{position:static;display:grid;grid-template-columns:1fr;gap:8px}.customer-portal-nav{grid-template-columns:repeat(4,minmax(0,1fr));padding:8px 0}.customer-portal-nav a{grid-template-columns:1fr;text-align:center;justify-items:center}.customer-portal-nav a em{display:none}.customer-portal-logout{text-align:center}.profile-settings-grid{grid-template-columns:1fr}}
@media(max-width:720px){.customer-portal-sidebar{padding:12px}.customer-portal-nav{display:flex;overflow-x:auto;scrollbar-width:none}.customer-portal-nav::-webkit-scrollbar{display:none}.customer-portal-nav a{min-width:118px}.profile-edit-form .row,.change-price-preview,.help-center-grid{grid-template-columns:1fr}.change-price-preview p{grid-column:auto}.profile-photo-editor{grid-template-columns:1fr;justify-items:start}.profile-manage-details[open]{padding:12px}.profile-manage-details>summary{width:100%}.profile-booking-card .transfer-card-actions{align-items:stretch}.profile-booking-card .transfer-card-actions>.btn,.profile-booking-card .transfer-card-actions>form,.profile-booking-card .transfer-card-actions>details{width:100%}.profile-booking-card .transfer-card-actions form .btn{width:100%}}
.mobile-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.tour-option-refresh-status{font-size:12px;color:#6c7f8b;min-height:18px}

.product-reviews-section{scroll-margin-top:110px}.product-reviews-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.product-reviews-head h2{margin:4px 0 6px}.product-reviews-head p{margin:0;color:#6b7d87}.tripadvisor-product-widget{border:1px solid var(--line);background:#fff;padding:18px;min-height:110px;overflow:hidden}@media(max-width:720px){.product-reviews-head{flex-direction:column}.product-reviews-head .btn{width:100%;text-align:center}}

/* V10.38 PayPal checkout reliability + payment sidebar polish */
.payment-page-grid{grid-template-columns:minmax(0,1fr) 360px;gap:28px}
.payment-info-card{background:#fff;border:1px solid #dfe6eb;border-radius:14px;padding:24px;box-shadow:0 14px 36px rgba(12,44,67,.07);overflow:visible}
.payment-info-card+.payment-info-card{margin-top:16px}
.payment-info-kicker{font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#e66d66;margin-bottom:8px}
.payment-next-card h3{margin:0;color:var(--navy);font-size:20px;line-height:1.25;letter-spacing:-.2px}
.payment-info-intro{margin:9px 0 0;color:#667b88;font-size:13px;line-height:1.55}
.payment-next-card .payment-steps{margin-top:20px;gap:16px}
.payment-next-card .payment-steps li{grid-template-columns:32px minmax(0,1fr);gap:11px;align-items:start;min-width:0}
.payment-next-card .payment-steps b{width:30px;height:30px;flex:0 0 30px;background:#edf6f7;color:var(--navy);font-size:13px}
.payment-next-card .payment-steps span{display:block;min-width:0;color:#415968;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
.payment-help-card{display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:12px;row-gap:15px;align-items:start}
.payment-help-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#edf6f7;color:var(--navy);font-weight:950}
.payment-help-card strong{display:block;color:var(--navy);font-size:15px;margin-top:1px}
.payment-help-card p{margin:5px 0 0;color:#667b88;font-size:12px;line-height:1.5}
.payment-help-button{grid-column:1/-1;width:100%;justify-content:center;text-align:center}
.hosted-card-checkout{border:1px solid #dce5ea;border-radius:10px;background:linear-gradient(180deg,#fbfdfd,#f7fafb);padding:20px;display:grid;gap:11px}
.hosted-card-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#287678}
.hosted-card-checkout h4{margin:0;color:var(--navy);font-size:18px;line-height:1.3}
.hosted-card-checkout p{margin:0;color:#607582;font-size:13px;line-height:1.55;max-width:680px}
.hosted-card-brands{font-size:12px;font-weight:750;color:#425b68;background:#fff;border:1px solid #e1e8ec;border-radius:8px;padding:10px 12px}
.hosted-card-brands span{color:#9aabb4;margin:0 5px}
.hosted-card-button{width:100%;min-height:50px;margin-top:2px;display:flex;align-items:center;justify-content:center;text-align:center}
.hosted-card-button.is-loading{opacity:.68;pointer-events:none}
@media(max-width:1080px) and (min-width:901px){.payment-page-grid{grid-template-columns:minmax(0,1fr) 320px;gap:22px}.payment-info-card{padding:20px}}
@media(max-width:900px){.payment-page-grid{grid-template-columns:1fr}.payment-side{position:static}.payment-info-card{padding:22px}}
@media(max-width:600px){.payment-info-card{padding:19px}.payment-next-card h3{font-size:18px}.hosted-card-checkout{padding:16px}}

/* V10.41 traveler/passenger roster */
.traveler-roster-box{margin:18px 0;padding:18px;border:1px solid #dbe5ea;border-radius:12px;background:#f9fbfc}
.traveler-roster-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}
.traveler-roster-head strong{display:block;color:#163247;font-size:16px}
.traveler-roster-head span{display:block;color:#667d8c;font-size:13px;margin-top:3px}
.traveler-later-toggle{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #dce6eb;border-radius:9px;padding:10px 12px;cursor:pointer;white-space:nowrap}
.traveler-later-toggle span{margin:0;color:#29485c;font-weight:700;font-size:13px}
.traveler-roster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.traveler-name-field label{font-size:12px;color:#526b7a;font-weight:700}
.profile-traveler-roster{margin:14px 0;padding:14px;border:1px solid #dbe5ea;border-radius:10px;background:#fbfcfd}
.profile-traveler-roster h4{margin:0 0 8px;color:#17384b}
.profile-traveler-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.profile-traveler-list li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #edf2f4;font-size:13px}
.profile-traveler-list li:last-child{border-bottom:0}
.profile-traveler-list .pending{color:#a45d24;font-weight:700}
@media(max-width:700px){.traveler-roster-head{display:block}.traveler-later-toggle{margin-top:12px;white-space:normal}.traveler-roster-grid{grid-template-columns:1fr}}

/* V10.47 · Booking chat sidebar refinement */
.chat-layout{grid-template-columns:minmax(0,1fr) minmax(360px,390px);gap:36px}
.chat-side{display:grid;gap:16px;min-width:0}
.chat-side-card{background:#fff;border:1px solid #dde5ea;border-radius:18px;padding:24px;box-shadow:0 12px 34px rgba(12,44,67,.065);min-width:0;overflow:hidden}
.chat-side-card .eyebrow{margin-bottom:7px}
.chat-reservation-card h2{font-size:20px;line-height:1.28;letter-spacing:-.35px;margin:0 0 18px;color:var(--navy);overflow-wrap:anywhere}
.chat-reservation-details{margin:0;padding:0}
.chat-reservation-details>div{display:grid;grid-template-columns:minmax(92px,.8fr) minmax(0,1.35fr);gap:14px;align-items:start;padding:12px 0;border-top:1px solid #edf1f3}
.chat-reservation-details dt{color:#536b7a;font-weight:500;min-width:0}
.chat-reservation-details dd{margin:0;color:#17364b;font-weight:800;text-align:right;min-width:0;overflow-wrap:anywhere;word-break:normal}
.chat-help-card p{margin:8px 0 18px;color:#526b7a;line-height:1.55}
.chat-help-card .btn{width:100%;justify-content:center;text-align:center}
@media(max-width:980px){.chat-layout{grid-template-columns:1fr}.chat-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.chat-side-card{height:100%}}
@media(max-width:680px){.chat-side{grid-template-columns:1fr}.chat-side-card{padding:20px}.chat-reservation-details>div{grid-template-columns:112px minmax(0,1fr)}}


/* V10.47b · Secure chat speed + sidebar final polish */
@media(min-width:1081px){
  .chat-layout{grid-template-columns:minmax(0,1fr) minmax(400px,430px);gap:34px}
  .chat-side{top:92px}
}
.chat-side-card{padding:22px 24px;border-radius:16px}
.chat-side-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;min-width:0}
.chat-side-card-head .eyebrow{margin:0;min-width:0}
.chat-ref-pill{flex:0 0 auto;border:1px solid #dce5ea;background:#f5f8fa;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;letter-spacing:.03em;color:#536b7a;white-space:nowrap}
.chat-reservation-card h2{font-size:19px;line-height:1.3;margin:0 0 14px;overflow-wrap:break-word}
.chat-reservation-details>div{grid-template-columns:118px minmax(0,1fr);gap:12px;padding:10px 0}
.chat-reservation-details dt{font-size:13px}
.chat-reservation-details dd{font-size:13px;line-height:1.42}
.chat-help-card{padding-top:20px;padding-bottom:20px}
.chat-help-card p{font-size:13px;margin:6px 0 15px}
@media(max-width:1080px){.chat-side-card-head{align-items:flex-start}.chat-ref-pill{margin-top:1px}}
@media(max-width:680px){.chat-side-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto}.chat-reservation-details>div{grid-template-columns:105px minmax(0,1fr)}}

/* V10.55 — Smart Sales assistant (local, no external AI dependency) */
.ue-sales-assistant{position:fixed;right:22px;bottom:22px;z-index:940;max-width:calc(100vw - 28px);font-family:inherit}.ue-sales-launcher{display:flex;align-items:center;gap:10px;border:0;border-radius:999px;background:#17384b;color:#fff;padding:10px 15px 10px 10px;box-shadow:0 16px 46px rgba(12,44,67,.24);cursor:pointer;text-align:left}.ue-sales-launcher-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#78d2d5;color:#17384b;font-size:20px;font-weight:900}.ue-sales-launcher-copy{display:grid;line-height:1.15}.ue-sales-launcher-copy strong{font-size:14px}.ue-sales-launcher-copy small{font-size:11px;color:#d9e5eb;margin-top:3px}.ue-sales-panel{position:absolute;right:0;bottom:64px;width:min(390px,calc(100vw - 28px));height:min(610px,calc(100vh - 110px));background:#fff;border:1px solid #dce7eb;border-radius:20px;box-shadow:0 24px 80px rgba(12,44,67,.28);overflow:hidden;display:grid;grid-template-rows:auto 1fr auto auto auto}.ue-sales-panel[hidden]{display:none}.ue-sales-head{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 17px;background:#17384b;color:#fff}.ue-sales-head>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center}.ue-sales-head strong{font-size:15px}.ue-sales-head small{grid-column:2;color:#cfe0e7;font-size:11px;margin-top:2px}.ue-sales-head button{border:0;background:transparent;color:#fff;font-size:28px;line-height:1;cursor:pointer}.ue-sales-dot{width:8px;height:8px;border-radius:50%;background:#72d79a;box-shadow:0 0 0 4px rgba(114,215,154,.12)}.ue-sales-thread{padding:16px;overflow:auto;background:linear-gradient(#fbfcfd,#f5f8f9);display:flex;flex-direction:column;gap:10px}.ue-sales-loading{font-size:13px;color:#72838d}.ue-sales-message{display:flex}.ue-sales-message>div{max-width:84%;padding:11px 13px;border-radius:15px;font-size:13px;line-height:1.45;box-shadow:0 3px 12px rgba(20,56,75,.06)}.ue-sales-message.assistant{justify-content:flex-start}.ue-sales-message.assistant>div{background:#fff;border:1px solid #dfe8ec;border-bottom-left-radius:5px;color:#17384b}.ue-sales-message.visitor{justify-content:flex-end}.ue-sales-message.visitor>div{background:#17384b;color:#fff;border-bottom-right-radius:5px}.ue-sales-typing>div{display:flex;gap:4px;align-items:center;height:34px}.ue-sales-typing span{width:6px;height:6px;border-radius:50%;background:#8ca0ab;animation:ueSalesPulse 1.2s infinite}.ue-sales-typing span:nth-child(2){animation-delay:.15s}.ue-sales-typing span:nth-child(3){animation-delay:.3s}@keyframes ueSalesPulse{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}.ue-sales-card{display:flex;gap:10px;background:#fff;border:1px solid #dfe8ec;border-radius:14px;padding:11px;box-shadow:0 4px 16px rgba(20,56,75,.05)}.ue-sales-card img{width:78px;height:68px;object-fit:cover;border-radius:10px}.ue-sales-card>div{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.ue-sales-card strong{font-size:13px;line-height:1.3}.ue-sales-card small{font-size:11px;color:#687d88;line-height:1.35}.ue-sales-card a{font-size:12px;font-weight:800;color:#147c80;text-decoration:none;margin-top:auto}.ue-sales-quick{display:flex;gap:7px;padding:0 13px 10px;overflow-x:auto;background:#f5f8f9}.ue-sales-quick:empty{display:none}.ue-sales-quick button{white-space:nowrap;border:1px solid #cbdbe1;background:#fff;color:#17384b;border-radius:999px;padding:8px 10px;font-size:11px;font-weight:700;cursor:pointer}.ue-sales-compose{display:flex;gap:8px;padding:11px 12px;border-top:1px solid #e1e8ec;background:#fff}.ue-sales-compose textarea{flex:1;resize:none;max-height:100px;min-height:42px;border:1px solid #ccd9df;border-radius:12px;padding:10px 11px;font:inherit;font-size:13px;outline:none}.ue-sales-compose textarea:focus{border-color:#6ebec2;box-shadow:0 0 0 3px rgba(110,190,194,.12)}.ue-sales-compose button{width:42px;height:42px;border:0;border-radius:12px;background:#e76d67;color:#fff;font-size:20px;font-weight:800;cursor:pointer}.ue-sales-foot{padding:7px 12px 10px;background:#fff;color:#81919a;text-align:center;font-size:10px}.page-transactional .ue-sales-assistant{display:none!important}@media(max-width:640px){.ue-sales-assistant{right:14px;bottom:14px}.ue-sales-launcher-copy{display:none}.ue-sales-launcher{padding:8px}.ue-sales-panel{position:fixed;right:10px;left:10px;bottom:76px;width:auto;height:min(70vh,620px)}.ue-sales-launcher-icon{width:42px;height:42px}}

/* V10.56 — Wider, fuller Universal Assistant */
.ue-sales-panel{width:min(460px,calc(100vw - 28px));height:min(700px,calc(100dvh - 100px));border-radius:22px}
.ue-sales-head{padding:17px 18px}.ue-sales-head strong{font-size:16px}.ue-sales-head small{font-size:11.5px;line-height:1.35}
.ue-sales-thread{padding:18px 17px 14px;gap:11px}.ue-sales-message>div{max-width:90%;padding:12px 14px;font-size:14px;line-height:1.5}
.ue-sales-card{padding:12px}.ue-sales-card img{width:92px;height:78px}.ue-sales-card strong{font-size:14px}.ue-sales-card small{font-size:12px}.ue-sales-card a{font-size:12.5px}
.ue-sales-quick{display:flex;flex-wrap:wrap;gap:7px;padding:9px 14px 11px;overflow:visible;border-top:1px solid #edf2f4}.ue-sales-quick button{white-space:normal;text-align:left;line-height:1.25;padding:8px 11px;font-size:11.5px;max-width:100%}
.ue-sales-compose{padding:12px 13px;align-items:flex-end}.ue-sales-compose textarea{min-height:46px;max-height:128px;padding:12px 13px;font-size:14px;line-height:1.35}.ue-sales-compose button{width:46px;height:46px;border-radius:13px}
.ue-sales-foot{padding:8px 12px 11px;font-size:10.5px}.ue-sales-assistant.open .ue-sales-launcher{opacity:.92}
@media(max-width:640px){
  body.ue-sales-open{overflow:hidden}
  .ue-sales-assistant.open{position:fixed;inset:0;right:auto;bottom:auto;max-width:none;z-index:1200;pointer-events:none}
  .ue-sales-assistant.open .ue-sales-launcher{display:none}
  .ue-sales-assistant.open .ue-sales-panel{pointer-events:auto;position:fixed;inset:8px;width:auto;height:auto;max-width:none;border-radius:18px;box-shadow:0 14px 46px rgba(12,44,67,.26)}
  .ue-sales-head{padding:15px 14px}.ue-sales-head strong{font-size:16px}.ue-sales-head small{font-size:11px}
  .ue-sales-thread{padding:14px 12px;gap:9px}.ue-sales-message>div{max-width:94%;font-size:14px}
  .ue-sales-quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px 10px}.ue-sales-quick button{width:100%;padding:9px 10px;font-size:11px;text-align:center}
  .ue-sales-compose{padding:10px}.ue-sales-compose textarea{font-size:16px;min-height:48px}.ue-sales-compose button{width:48px;height:48px}
  .ue-sales-foot{padding-bottom:10px}
}
@media(max-width:380px){.ue-sales-quick{grid-template-columns:1fr}.ue-sales-message>div{max-width:96%}.ue-sales-card img{width:72px;height:64px}}

/* V10.59 — driver eligibility */
.option-rule-note{display:inline-flex;margin:8px 0 2px;padding:5px 8px;border-radius:999px;background:#fff3e6;color:#8a5516;font-size:11px;font-weight:800}.driver-eligibility-confirm{margin:18px 0;padding:16px 18px;border:1px solid #ead9af;background:#fffaf0;border-radius:12px}.driver-eligibility-confirm>div{display:flex;flex-direction:column;gap:4px}.driver-eligibility-confirm strong{color:#6f4d12}.driver-eligibility-confirm span{font-size:13px;line-height:1.45;color:#665a46}.driver-eligibility-confirm label{display:flex;gap:9px;align-items:flex-start;margin-top:12px;font-weight:700}.driver-eligibility-confirm input{margin-top:3px}

/* V10.60 — live price calendar + Adult/Youth/Child traveler picker */
.availability-picker-field{position:relative}
.availability-picker-button{
  display:flex!important;align-items:center;gap:10px;text-align:left;cursor:pointer;
  min-height:52px!important;padding:0 14px!important;background:#fff!important;
}
.availability-picker-button .picker-icon{font-size:16px;color:#2e7d79;flex:0 0 auto}
.availability-picker-button strong{font-size:14px;color:#17384b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:800}
.availability-picker-button .picker-chevron{margin-left:auto;color:#607783;font-size:16px}
.ue-calendar-popover,.ue-traveler-popover{
  position:absolute;z-index:80;top:calc(100% + 8px);left:0;background:#fff;border:1px solid #dce6ea;
  border-radius:18px;box-shadow:0 24px 70px rgba(8,35,52,.19);color:#17384b;
}
.ue-calendar-popover{width:min(760px,calc(100vw - 56px));padding:18px 20px 15px}
.ue-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.calendar-toolbar-label{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#72838c}
.calendar-nav{border:0;background:#f1f6f7;color:#17384b;width:38px;height:38px;border-radius:50%;font-size:25px;line-height:1;cursor:pointer}
.calendar-nav:hover{background:#e2eeee}
.ue-calendar-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px;min-height:310px}
.calendar-month h4{text-align:center;margin:4px 0 14px;font-size:16px;color:#15372a}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.calendar-weekdays{margin-bottom:7px;color:#51645f;font-size:11px;text-align:center;font-weight:800}
.calendar-weekdays span{padding:4px 0}
.calendar-empty{min-height:46px}
.calendar-day{
  appearance:none;border:1px solid transparent;background:#fff;border-radius:9px;min-height:47px;padding:5px 2px 4px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#17362d;cursor:pointer;font:inherit;
}
.calendar-day span{font-size:12px;font-weight:800}.calendar-day small{font-size:10px;color:#274e3a;font-weight:800}
.calendar-day:not(.disabled):hover{border-color:#98cda4;background:#f2fbf2}
.calendar-day.selected{background:#0d3922;color:#fff;border-color:#0d3922}.calendar-day.selected small{color:#d7f4d8}
.calendar-day.disabled{cursor:not-allowed;color:#a9b0ad;background:transparent;text-decoration:line-through}.calendar-day.disabled small{display:none}
.calendar-day.status-sold_out{color:#9b7d7d}.calendar-day.status-closed,.calendar-day.status-not_scheduled{color:#b1b6b4}
.calendar-footnote{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e7edef;margin-top:13px;padding-top:11px;font-size:10px;color:#708089}
.calendar-loading{grid-column:1/-1;display:grid;place-items:center;min-height:260px;font-size:13px;color:#6e8088}.calendar-loading.error{color:#9a4d49}
.ue-traveler-popover{width:360px;max-width:calc(100vw - 56px);padding:12px}
.traveler-type-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 10px;border-bottom:1px solid #e7edef}
.traveler-type-copy{display:grid;gap:2px;min-width:0}.traveler-type-copy strong{font-size:16px}.traveler-type-copy span{font-size:11px;color:#6d7d84}.traveler-type-copy small{font-size:11px;color:#b72f55;font-weight:800;margin-top:2px}
.traveler-stepper{display:flex;align-items:center;gap:10px;flex:0 0 auto}.traveler-stepper button{width:34px;height:34px;border-radius:50%;border:1px solid #173e2a;background:#0d3922;color:#fff;font-size:22px;line-height:1;cursor:pointer}.traveler-stepper button:first-child{background:#f4f7f6;color:#173e2a;border-color:#cbd7d0}.traveler-stepper b{min-width:20px;text-align:center;font-size:15px}.traveler-update-btn{width:100%;margin-top:12px;min-height:46px;border-radius:24px}
.ue-option-breakdown{font-size:11px;color:#61757f;margin-top:10px;line-height:1.45}
.ue-option-total-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-top:1px solid #e4eaed;margin-top:10px;padding-top:10px}.ue-option-total-row span{font-size:11px;color:#6b7c84;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.ue-option-total-row strong{font-size:20px;color:#17384b}

@media(max-width:980px){
  .ue-calendar-popover{left:auto;right:0;width:min(700px,calc(100vw - 40px))}
}
@media(max-width:760px){
  .ue-calendar-popover,.ue-traveler-popover{position:fixed;left:10px!important;right:10px!important;top:auto!important;bottom:calc(12px + env(safe-area-inset-bottom));width:auto!important;max-width:none!important;border-radius:20px;z-index:120}
  .ue-calendar-popover{padding:15px 12px 14px;max-height:78vh;overflow:auto}
  .ue-calendar-months{grid-template-columns:1fr;gap:0;min-height:320px}.calendar-month h4{font-size:17px}.calendar-day{min-height:48px}.calendar-footnote{flex-direction:column;gap:3px}
  .ue-traveler-popover{padding:14px}.traveler-type-row{padding:14px 8px}.traveler-stepper button{width:38px;height:38px}
  .availability-picker-button strong{font-size:14px}
}

/* V10.61 — polished live booking controls + cache-safe traveler selector */
.ue-calendar-popover[hidden],
.ue-traveler-popover[hidden]{display:none!important}

.modal-availability-section .ue-booking-head{
  display:grid!important;
  grid-template-columns:minmax(250px,.72fr) minmax(600px,1.28fr)!important;
  align-items:end!important;
  gap:26px!important;
  overflow:visible!important;
}
.modal-availability-section .ue-booking-title{align-self:center;min-width:0}
.modal-availability-section .ue-booking-controls{
  display:grid!important;
  grid-template-columns:minmax(235px,1.08fr) minmax(205px,.92fr) minmax(170px,.72fr)!important;
  align-items:end!important;
  gap:12px!important;
  margin:0!important;
  width:100%!important;
  min-width:0!important;
}
.modal-availability-section .availability-picker-field{position:relative;min-width:0!important}
.modal-availability-section .availability-picker-button{
  width:100%!important;min-width:0!important;min-height:54px!important;padding:0 15px!important;
  border:1px solid #cfdae0!important;border-radius:14px!important;background:#fff!important;
  box-shadow:0 1px 0 rgba(12,44,67,.02)!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.modal-availability-section .availability-picker-button:hover{border-color:#8fc8ca!important;background:#fbfefe!important}
.modal-availability-section .availability-picker-button:focus,
.modal-availability-section .availability-picker-button[aria-expanded="true"]{
  border-color:#50b9bc!important;box-shadow:0 0 0 4px rgba(69,199,200,.12)!important;outline:0;
}
.availability-picker-button .picker-icon{width:20px;height:20px;display:grid;place-items:center;color:#1f6f72;flex:0 0 auto}
.availability-picker-button .picker-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.availability-picker-button strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px!important;font-weight:850!important;color:#17384b!important}
.availability-picker-button .picker-chevron{margin-left:auto;font-size:17px;color:#738690;transform:translateY(-1px)}
.modal-availability-section .availability-check-btn{width:100%!important;min-width:0!important;min-height:54px!important;border-radius:14px!important;box-shadow:0 8px 20px rgba(83,182,88,.18)!important}

/* Traveler selector */
.ue-traveler-popover{
  top:calc(100% + 10px)!important;left:auto!important;right:0!important;width:390px!important;
  max-width:min(390px,calc(100vw - 32px))!important;padding:0!important;overflow:hidden;
  border:1px solid #dbe5e9!important;border-radius:18px!important;background:#fff!important;
  box-shadow:0 24px 70px rgba(9,37,54,.20)!important;z-index:220!important;
}
.traveler-popover-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px 14px;border-bottom:1px solid #e8eef1;background:#fbfdfd}
.traveler-popover-head>div{display:grid;gap:3px;min-width:0}.traveler-popover-head strong{font-size:17px;line-height:1.2;color:#13384a}.traveler-popover-head span{font-size:11px;line-height:1.35;color:#72838c}
.traveler-popover-close{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:50%;background:#edf3f5;color:#35515f;font-size:22px;line-height:1;cursor:pointer}.traveler-popover-close:hover{background:#e2ecef}
.ue-traveler-popover .traveler-type-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;padding:15px 18px!important;margin:0!important;border-bottom:1px solid #edf1f3!important;background:#fff!important}
.ue-traveler-popover .traveler-type-copy{display:grid!important;grid-template-columns:auto 1fr!important;column-gap:7px!important;row-gap:2px!important;align-items:baseline!important;min-width:0!important}
.ue-traveler-popover .traveler-type-copy strong{font-size:15px!important;line-height:1.25!important;color:#17384b!important}.ue-traveler-popover .traveler-type-copy span{font-size:11px!important;line-height:1.25!important;color:#7a8991!important}
.ue-traveler-popover .traveler-type-copy small{grid-column:1/-1!important;margin:2px 0 0!important;font-size:11px!important;line-height:1.25!important;color:#b4365c!important;font-weight:850!important}
.ue-traveler-popover .traveler-stepper{display:grid!important;grid-template-columns:38px 28px 38px!important;align-items:center!important;gap:6px!important}
.ue-traveler-popover .traveler-stepper button{width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border:1px solid #1c4d35!important;border-radius:50%!important;background:#0d3922!important;color:#fff!important;font-size:22px!important;line-height:1!important;font-weight:500!important;padding:0!important;cursor:pointer!important}
.ue-traveler-popover .traveler-stepper button:first-child{background:#fff!important;color:#17384b!important;border-color:#cbd8d2!important}.ue-traveler-popover .traveler-stepper button:hover{transform:translateY(-1px)}.ue-traveler-popover .traveler-stepper b{min-width:28px!important;text-align:center!important;font-size:15px!important;color:#17384b!important}
.ue-traveler-popover .traveler-update-btn{display:flex!important;align-items:center!important;justify-content:center!important;width:calc(100% - 28px)!important;min-height:48px!important;margin:14px!important;border-radius:999px!important;font-size:14px!important;font-weight:900!important}

/* Calendar selector */
.ue-calendar-popover{top:calc(100% + 10px)!important;left:0!important;right:auto!important;width:min(790px,calc(100vw - 40px))!important;padding:16px 18px 14px!important;overflow:hidden;border:1px solid #dbe5e9!important;border-radius:20px!important;background:#fff!important;box-shadow:0 24px 74px rgba(9,37,54,.20)!important;z-index:225!important}
.ue-calendar-toolbar{margin-bottom:8px!important}.calendar-toolbar-label{font-size:11px!important;letter-spacing:.09em!important;color:#70818a!important}.calendar-nav{width:36px!important;height:36px!important;background:#f2f6f7!important}
.ue-calendar-months{gap:34px!important;min-height:320px!important}.calendar-month h4{margin:5px 0 15px!important;font-size:16px!important;color:#173c2b!important}.calendar-weekdays{font-size:10px!important;color:#6f7c77!important}
.calendar-day{min-height:49px!important;border-radius:10px!important;padding:5px 2px!important;transition:background .14s ease,border-color .14s ease,transform .14s ease}.calendar-day:not(.disabled):hover{transform:translateY(-1px)}.calendar-day span{font-size:12px!important}.calendar-day small{font-size:10px!important}.calendar-day.selected{box-shadow:0 7px 16px rgba(13,57,34,.18)}.calendar-footnote{font-size:10px!important;color:#74848c!important}

@media(max-width:1120px){
  .modal-availability-section .ue-booking-head{grid-template-columns:1fr!important;gap:18px!important}
  .modal-availability-section .ue-booking-controls{grid-template-columns:minmax(210px,1fr) minmax(190px,.85fr) minmax(170px,.7fr)!important}
}
@media(max-width:820px){
  .modal-availability-section .ue-booking-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .modal-availability-section .availability-check-btn{grid-column:1/-1!important}
}
@media(max-width:640px){
  .modal-availability-section .ue-booking-head{display:grid!important;grid-template-columns:1fr!important;gap:17px!important;padding:20px 16px 18px!important;overflow:visible!important}
  .modal-availability-section .ue-booking-controls{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:0!important}
  .modal-availability-section .availability-check-btn{grid-column:auto!important}
  .ue-traveler-popover,.ue-calendar-popover{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;border-radius:22px!important;z-index:1300!important}
  .ue-traveler-popover{max-height:calc(100dvh - 28px)!important;overflow:auto!important}.ue-calendar-popover{max-height:calc(100dvh - 28px)!important;overflow:auto!important;padding:15px 12px 14px!important}.ue-calendar-months{grid-template-columns:1fr!important;gap:0!important}.traveler-popover-head{position:sticky;top:0;z-index:2}
}

/* V10.63 — compact horizontal availability selector; expanded details open after checking. */
.product-main-overview,.product-main-details{min-width:0;max-width:100%}
.availability-inline[hidden]{display:none!important}
.availability-inline{grid-column:1/-1;min-width:0;width:100%;margin:0 0 34px;scroll-margin-top:110px}
.availability-inline-dialog{width:100%;min-width:0;border:1px solid #dbe5e9;border-radius:18px;background:#fff;box-shadow:0 18px 48px rgba(9,37,54,.09);overflow:visible}
.availability-inline>.availability-inline-dialog>.availability-modal-bar{display:none!important}
.availability-inline .availability-inline-content{padding:0;overflow:visible}
.availability-inline .modal-availability-section{padding:0!important;margin:0!important;width:100%!important;max-width:none!important;overflow:visible!important}
.availability-inline .ue-booking-shell{min-width:0;overflow:visible;border:0!important;border-radius:18px!important;background:#fff!important}
.availability-inline .ue-booking-head{display:grid!important;grid-template-columns:minmax(220px,.72fr) minmax(0,1.78fr)!important;align-items:center!important;gap:24px!important;padding:22px 24px!important;background:#0c2c43!important;color:#fff!important;border-radius:18px 18px 0 0!important;overflow:visible!important}
.availability-inline .ue-booking-title{align-self:center;min-width:0;color:#fff!important}
.availability-inline .ue-booking-title .booking-step-kicker{display:none!important}
.availability-inline .ue-booking-title h3{margin:0!important;color:#fff!important;font-size:21px!important;letter-spacing:-.03em!important;line-height:1.15!important}
.availability-inline .ue-booking-title p{display:none!important}
.availability-inline .ue-booking-controls{display:grid!important;grid-template-columns:minmax(250px,1.45fr) minmax(92px,.5fr) minmax(165px,.82fr) minmax(190px,.92fr)!important;align-items:end!important;gap:12px!important;width:100%!important;min-width:0!important;margin:0!important}
.availability-inline .availability-field{min-width:0!important;position:relative!important}
.availability-inline .availability-field>span{display:none!important}
.availability-inline .availability-picker-button,.availability-inline .availability-check-btn{height:52px!important;min-height:52px!important;border-radius:999px!important}
.availability-inline .availability-picker-button{display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;min-width:0!important;padding:0 18px!important;background:#fff!important;border:1px solid rgba(255,255,255,.38)!important;box-shadow:0 4px 14px rgba(0,0,0,.10)!important;color:#17384b!important}
.availability-inline .availability-picker-button strong{font-size:14px!important;font-weight:850!important;color:#17384b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.availability-inline .availability-picker-button .picker-icon{width:18px!important;height:18px!important;color:#17384b!important;display:grid!important;place-items:center!important;flex:0 0 auto!important}
.availability-inline .availability-picker-button .picker-icon svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.availability-inline .availability-picker-button .picker-chevron{margin-left:auto!important;color:#17384b!important;font-size:14px!important}
.availability-inline .availability-language-pill{cursor:default!important}
.availability-inline .availability-check-btn{grid-column:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;padding:0 24px!important;background:#64e66d!important;color:#062814!important;border:1px solid rgba(255,255,255,.28)!important;box-shadow:0 6px 16px rgba(76,220,86,.32)!important;font-size:15px!important;font-weight:900!important;white-space:nowrap!important}
.availability-inline .availability-check-btn:hover{filter:brightness(.98);transform:translateY(-1px)}
.availability-inline .availability-expanded-content[hidden]{display:none!important}
.availability-inline .availability-expanded-content{padding:18px;background:#f8fbfc;border-top:1px solid #dce6ea;border-radius:0 0 18px 18px}
.availability-inline .book-ahead{margin:0 0 16px!important}
.availability-inline .ue-booking-body{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr)!important;gap:18px!important;align-items:start!important;padding:0!important;background:transparent!important}
.availability-inline .booking-step-card{height:100%;min-width:0!important;overflow:visible!important}
.availability-inline .booking-step-card-option .ue-options{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.availability-inline .booking-step-card-time .availability-result{min-height:140px}
.availability-inline .ue-booking-summary{grid-column:1/-1;position:static!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}
.availability-inline .booking-selection-summary{display:flex!important;align-items:center!important;gap:28px!important;flex-wrap:wrap!important}
.availability-inline .reserve-primary{width:auto!important;min-width:190px!important}
.availability-inline .ue-calendar-popover,.availability-inline .ue-traveler-popover{position:absolute!important;top:calc(100% + 10px)!important;left:0!important;right:auto!important;box-sizing:border-box!important;overflow:auto!important;z-index:500!important;margin-top:0!important;background:#fff!important;color:#17384b!important;box-shadow:0 24px 74px rgba(9,37,54,.20)!important}
.availability-inline .ue-calendar-popover{width:min(430px,calc(100vw - 44px))!important;max-width:min(430px,calc(100vw - 44px))!important;padding:16px 16px 14px!important;border-radius:18px!important}
.availability-inline .ue-traveler-popover{width:min(390px,calc(100vw - 44px))!important;max-width:min(390px,calc(100vw - 44px))!important;border-radius:18px!important}
.availability-inline .ue-calendar-months{grid-template-columns:minmax(0,1fr)!important;gap:0!important;min-height:0!important}
.availability-inline .calendar-footnote{flex-direction:column;gap:3px}
.availability-inline .ue-traveler-popover .traveler-type-row{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:14px!important}
.availability-inline .ue-traveler-popover .traveler-type-copy{grid-template-columns:minmax(0,1fr)!important}
@media(max-width:1180px){
  .availability-inline .ue-booking-head{grid-template-columns:1fr!important;gap:16px!important}
  .availability-inline .ue-booking-controls{grid-template-columns:minmax(220px,1fr) minmax(92px,.45fr) minmax(160px,.75fr) minmax(185px,.82fr)!important}
}
@media(max-width:900px){
  .availability-inline{grid-column:auto;margin-bottom:28px}
  .availability-inline .ue-booking-head{padding:20px 16px!important}
  .availability-inline .ue-booking-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .availability-inline .availability-check-btn{grid-column:1/-1!important}
  .availability-inline .ue-booking-body{grid-template-columns:minmax(0,1fr)!important}
  .availability-inline .booking-step-card-option .ue-options{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:640px){
  .availability-inline .ue-booking-title h3{font-size:19px!important}
  .availability-inline .ue-booking-controls{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .availability-inline .availability-language-display{display:none!important}
  .availability-inline .availability-expanded-content{padding:12px}
  .availability-inline .ue-calendar-popover,.availability-inline .ue-traveler-popover{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 28px)!important;border-radius:22px!important;z-index:1300!important}
  .availability-inline .ue-booking-summary{display:grid!important;grid-template-columns:1fr!important}
  .availability-inline .reserve-primary{width:100%!important;min-width:0!important}
}

/* V10.63 — cleaner public booking checkout presentation inspired by modern marketplace checkout cards. */
.booking-checkout-section{background:#fff!important}
.booking-checkout-section .booking-form-layout{grid-template-columns:minmax(0,1fr) 368px!important;gap:46px!important;align-items:start!important}
.booking-checkout-section .checkout-panel{border:2px solid #114573!important;border-radius:14px!important;box-shadow:none!important;padding:30px!important;background:#fff!important}
.booking-checkout-section .checkout-panel-head{margin-bottom:24px!important}.booking-checkout-section .checkout-panel-head>div{gap:16px!important}.booking-checkout-section .checkout-panel-head h2{font-size:28px!important;line-height:1.05!important;letter-spacing:-.04em!important;color:#0c2c43!important}.booking-checkout-section .checkout-panel-head p{font-size:15px!important;line-height:1.55!important;color:#566e7a!important;max-width:520px!important;text-align:left!important}.booking-checkout-section .checkout-section-number{width:38px!important;height:38px!important;background:#0c2c43!important;color:#fff!important;font-size:15px!important;flex:0 0 auto!important}
.booking-checkout-section .checkout-form{gap:18px!important}.booking-checkout-section .checkout-form label{font-weight:850!important;color:#102d1e!important}.booking-checkout-section .checkout-form .row{gap:18px!important}.booking-checkout-section .checkout-form .form-field{min-height:56px!important;border:2px solid #8b9d90!important;border-radius:5px!important;background:#fff!important;color:#173322!important;font-size:15px!important;padding-left:16px!important;padding-right:16px!important}.booking-checkout-section .checkout-form .form-field:focus{border-color:#114573!important;box-shadow:0 0 0 3px rgba(10,47,27,.10)!important;outline:0!important}.booking-checkout-section .field-note{font-size:11.5px!important;color:#68786f!important;line-height:1.45!important}
.booking-checkout-section .traveler-roster-box,.booking-checkout-section .accommodation-google-shell,.booking-checkout-section .driver-eligibility-confirm,.booking-checkout-section .payment-choice-wrap,.booking-checkout-section .checkout-trust-row,.booking-checkout-section .terms-check{border-radius:12px!important}.booking-checkout-section .traveler-roster-box,.booking-checkout-section .accommodation-google-shell,.booking-checkout-section .driver-eligibility-confirm{border:1px solid #dce9ed!important;background:#f8fbfc!important;padding:18px!important}.booking-checkout-section .checkout-panel-head.compact{border-top:1px solid #dce9ed!important;padding-top:24px!important;margin-top:32px!important}.booking-checkout-section .checkout-panel-head.compact h2{font-size:25px!important}.booking-checkout-section .checkout-panel-head.compact .checkout-section-number{background:#e7ece8!important;color:#24362b!important}
.booking-checkout-section .payment-method-choice-grid,.booking-checkout-section .online-payment-plans{display:grid!important;gap:12px!important}.booking-checkout-section .payment-choice{border:2px solid #d8e0da!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}.booking-checkout-section .payment-choice.selected{border-color:#114573!important;background:#f8fbfc!important}.booking-checkout-section .payment-choice-body{align-items:center!important}.booking-checkout-section .payment-choice-money b{color:#0c2c43!important}.booking-checkout-section .payment-plan-badge{border-radius:999px!important;background:#eaf8f8!important;color:#246a6d!important;padding:5px 9px!important}
.booking-checkout-section .checkout-trust-row{background:#f7faf8!important;border:1px solid #dce9ed!important;padding:16px!important}.booking-checkout-section .checkout-trust-row b{color:#0c2c43!important}.booking-checkout-section .terms-check{display:flex!important;gap:10px!important;align-items:flex-start!important;color:#455e6b!important}.booking-checkout-section .terms-check input{width:18px;height:18px;accent-color:#114573}.booking-checkout-section .checkout-submit{min-height:56px!important;border-radius:999px!important;background:#0c2c43!important;color:#fff!important;font-weight:900!important;font-size:16px!important;box-shadow:none!important}.booking-checkout-section .checkout-submit:hover{background:#0c2c43!important}
.booking-checkout-section .booking-recap{border:1px solid #dce6eb!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important;position:sticky!important;top:96px!important;overflow:hidden!important}.booking-checkout-section .booking-recap-body{padding:24px!important}.booking-checkout-section .booking-recap-product{display:grid!important;grid-template-columns:minmax(0,1fr) 112px!important;gap:16px!important;align-items:start!important;margin-bottom:18px!important}.booking-checkout-section .booking-recap-product .eyebrow{display:none!important}.booking-checkout-section .booking-recap-body h3{margin:0!important;font-size:18px!important;line-height:1.25!important;letter-spacing:-.02em!important;color:#0c2c43!important}.booking-checkout-section .booking-recap-image{width:112px!important;height:112px!important;border-radius:9px!important;object-fit:cover!important;background:#edf4f6!important}.booking-checkout-section .recap-row{border-top:1px solid #e3eaee!important;padding:12px 0!important}.booking-checkout-section .recap-row span{color:#566e7a!important}.booking-checkout-section .recap-row strong{color:#274858!important}.booking-checkout-section .total-row{padding-top:16px!important}.booking-checkout-section .recap-total{font-size:24px!important;color:#0c2c43!important}.booking-checkout-section .deposit-preview{background:#eaf8f8!important;border:0!important;border-radius:5px!important;color:#0c2c43!important}.booking-checkout-section .deposit-preview strong{color:#0c2c43!important}.booking-checkout-section .secure-note{border-top:1px solid #e3eaee!important;margin-top:16px!important;padding-top:16px!important}.booking-checkout-section .recap-change-link{color:#0c2c43!important;text-decoration:underline!important;font-size:13px!important}
@media(max-width:980px){.booking-checkout-section .booking-form-layout{grid-template-columns:1fr!important}.booking-checkout-section .booking-recap{position:static!important}.booking-checkout-section .checkout-panel{padding:24px!important}.booking-checkout-section .booking-recap-product{grid-template-columns:minmax(0,1fr) 96px!important}.booking-checkout-section .booking-recap-image{width:96px!important;height:96px!important}}
@media(max-width:620px){.booking-checkout-section .checkout-panel{padding:20px!important;border-width:1.5px!important}.booking-checkout-section .checkout-panel-head{display:block!important}.booking-checkout-section .checkout-panel-head>div{margin-bottom:10px!important}.booking-checkout-section .checkout-panel-head h2{font-size:24px!important}.booking-checkout-section .checkout-form .row{grid-template-columns:1fr!important}.booking-checkout-section .booking-recap-product{grid-template-columns:1fr!important}.booking-checkout-section .booking-recap-image{width:100%!important;height:160px!important}}

/* V10.64 — TripAdvisor-style booking card and cleaner availability open/closed states. */
.product-head-booking{
  min-width:360px!important;
  width:min(100%,380px)!important;
  padding:24px!important;
  background:#fff!important;
  border:1px solid #dce9ed!important;
  border-radius:16px!important;
  box-shadow:0 14px 34px rgba(9,37,54,.06)!important;
  display:grid!important;
  gap:16px!important;
  text-align:left!important;
}
.product-booking-price{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:#0c2c43}
.product-booking-price>span{font-size:18px;font-weight:900;letter-spacing:-.02em;color:#0c2c43;text-transform:none}
.product-booking-price>strong{font-size:22px;line-height:1;font-weight:950;color:#0c2c43}
.product-booking-price>small{font-size:14px;color:#4c5d53}
.product-head-booking .product-booking-primary{
  width:100%!important;
  min-width:0!important;
  min-height:50px!important;
  border-radius:999px!important;
  background:#64e66d!important;
  color:#062814!important;
  border:1px solid #38b844!important;
  box-shadow:0 4px 12px rgba(76,220,86,.28)!important;
  font-size:16px!important;
  font-weight:900!important;
}
.product-head-booking .product-booking-primary:hover{filter:brightness(.98);transform:translateY(-1px)}
.product-booking-benefits{display:grid;gap:12px}
.product-booking-benefits>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start}
.product-booking-benefits>div>span{
  width:28px;height:28px;border-radius:50%;display:grid;place-items:center;
  background:#eaf8f8;color:#155f31;font-size:15px;font-weight:900;
}
.product-booking-benefits p{margin:0;color:#405347;font-size:13.5px;line-height:1.4}
.product-booking-benefits strong{color:#26372d;text-decoration:underline;text-underline-offset:2px}
.product-head-booking .wishlist-form{margin:0}
.product-head-booking .wishlist-button{
  width:100%;
  min-height:46px;
  border-radius:12px!important;
  background:#fff!important;
  color:#17384b!important;
}

.availability-inline:not(.is-expanded) .availability-inline-dialog{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.availability-inline:not(.is-expanded) .ue-booking-shell{
  border:0!important;
  border-radius:18px!important;
  box-shadow:none!important;
  background:transparent!important;
}
.availability-inline:not(.is-expanded) .ue-booking-head{
  border-radius:18px!important;
  border:1px solid #dbe5e9!important;
  box-shadow:0 18px 44px rgba(9,37,54,.08)!important;
}
.availability-inline.is-expanded .availability-inline-dialog{
  background:#f8fbfc!important;
  border:1px solid #dbe5e9!important;
  box-shadow:0 18px 48px rgba(9,37,54,.09)!important;
}
.availability-inline.is-expanded .ue-booking-shell{
  border:0!important;
  border-radius:18px!important;
  background:#f8fbfc!important;
}
.availability-inline.is-expanded .ue-booking-head{border-radius:18px 18px 0 0!important}
.availability-inline.is-expanded .availability-expanded-content{
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
}
.availability-inline .availability-language-pill{
  position:relative!important;
  cursor:pointer!important;
}
.availability-inline .availability-language-pill select{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-width:0;
  border:0;
  background:transparent;
  color:#17384b;
  font:inherit;
  font-size:14px;
  font-weight:850;
  outline:0;
  cursor:pointer;
  padding:0 16px 0 0;
}
.availability-inline .availability-language-pill .picker-chevron{
  pointer-events:none;
  position:absolute;
  right:18px;
}
@media(max-width:900px){
  .product-head-booking{width:100%!important;min-width:0!important}
}
@media(max-width:640px){
  .product-head-booking{padding:20px!important}
  .product-booking-price>strong{font-size:21px}
  .product-booking-benefits p{font-size:13px}
  .availability-inline .availability-language-display{display:block!important}
}

/* V10.65 - sidebar booking card placement and availability CTA foundation. */
.product-head{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  margin-bottom:20px!important;
}
.product-head h1{max-width:990px!important}
.page-grid>aside{
  display:grid!important;
  align-content:start!important;
  gap:16px!important;
  min-width:0!important;
}
.page-grid>aside .product-head-booking{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.product-head-booking{
  border-color:#dce7ec!important;
  border-radius:14px!important;
  box-shadow:0 12px 32px rgba(12,44,67,.07)!important;
}
.product-booking-price,
.product-booking-price>span,
.product-booking-price>strong{color:var(--navy)!important}
.product-booking-price>small{color:#526775!important}
.product-head-booking .product-booking-primary,
.availability-inline .availability-check-btn,
.mobile-product-bookbar .btn-coral{
  background:linear-gradient(180deg,#f0827b 0%,var(--coral) 100%)!important;
  color:#fff!important;
  border-color:#d85b56!important;
  box-shadow:0 9px 22px rgba(239,107,103,.28)!important;
}
.product-head-booking .product-booking-primary:hover,
.availability-inline .availability-check-btn:hover,
.mobile-product-bookbar .btn-coral:hover{
  filter:brightness(.98)!important;
  transform:translateY(-1px)!important;
}
.product-booking-benefits>div>span{
  background:#dff8fa!important;
  color:#0f6f78!important;
}
.product-booking-benefits p{color:#405462!important}
.product-booking-benefits strong{color:var(--navy)!important}
.product-booking-ahead{
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:13px 15px!important;
  border-radius:8px!important;
  background:#dff8fa!important;
  color:#17384b!important;
  border:1px solid rgba(69,199,200,.34)!important;
}
.product-booking-ahead>span{
  width:28px!important;
  height:28px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#c8f2f4!important;
  color:#0f6f78!important;
  font-weight:900!important;
}
.product-booking-ahead p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.35!important;
  color:#426170!important;
}
.product-booking-ahead strong{color:var(--navy)!important}
.availability-inline .ue-booking-head{
  background:var(--navy)!important;
  color:#fff!important;
}
.availability-inline:not(.is-expanded) .ue-booking-head{
  border-color:#dce7ec!important;
  box-shadow:0 15px 40px rgba(12,44,67,.08)!important;
}
.availability-inline.is-expanded .ue-booking-head{
  border-bottom:0!important;
}
.availability-inline .availability-picker-button:focus,
.availability-inline .availability-picker-button[aria-expanded="true"]{
  border-color:var(--cyan)!important;
  box-shadow:0 0 0 4px rgba(69,199,200,.18)!important;
}
.availability-inline .ue-booking-title h3{color:#fff!important}
.availability-inline .availability-language-pill select{color:#17384b!important}
@media(max-width:1000px){
  .page-grid>aside{gap:14px!important}
  .product-head-booking{max-width:none!important}
}
@media(max-width:640px){
  .product-head-booking{border-radius:14px!important}
  .product-booking-ahead{grid-template-columns:1fr!important}
  .product-booking-ahead>span{display:none!important}
}

/* V10.66 - remove the empty desktop gap between overview, availability and itinerary. */
@media(min-width:1001px){
  .page-grid{
    align-items:start!important;
    column-gap:34px!important;
    row-gap:18px!important;
    padding-top:24px!important;
  }
  .product-main-overview{
    grid-column:1!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .page-grid>aside{
    grid-column:2!important;
    grid-row:1 / span 4!important;
    align-self:start!important;
  }
  .availability-inline{
    grid-column:1!important;
    grid-row:2!important;
    margin:0 0 22px!important;
  }
  .product-main-details{
    grid-column:1!important;
    grid-row:3!important;
    min-width:0!important;
  }
  .product-main-overview .content-section{
    margin-bottom:0!important;
    padding-bottom:24px!important;
  }
  .product-main-details .content-section:first-child{
    padding-top:2px!important;
  }
  .availability-inline .ue-booking-head{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    padding:18px 20px!important;
  }
  .availability-inline .ue-booking-title h3{
    font-size:20px!important;
  }
  .availability-inline .ue-booking-controls{
    grid-template-columns:minmax(210px,1.45fr) minmax(94px,.52fr) minmax(150px,.72fr) minmax(160px,.78fr)!important;
    gap:10px!important;
  }
  .availability-inline .availability-picker-button,
  .availability-inline .availability-check-btn{
    height:50px!important;
    min-height:50px!important;
  }
  .availability-inline .availability-picker-button{
    padding:0 15px!important;
  }
  .availability-inline .availability-check-btn{
    padding:0 18px!important;
  }
  .availability-inline .availability-expanded-content{
    padding:14px!important;
  }
  .availability-inline .ue-booking-body{
    grid-template-columns:minmax(0,1.04fr) minmax(280px,.96fr)!important;
    gap:14px!important;
  }
  .availability-inline .booking-step-card-option .ue-options{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .availability-inline .ue-booking-summary{
    gap:14px!important;
    padding:16px 18px!important;
  }
  .mini-book-help{
    padding:18px!important;
    gap:8px!important;
  }
  .mini-book-help p{
    margin:0!important;
    line-height:1.45!important;
  }
  .direct-booking-assurance{
    margin:2px 0!important;
    padding:11px 0!important;
  }
}

@media(min-width:1001px) and (max-width:1180px){
  .availability-inline .ue-booking-controls{
    grid-template-columns:minmax(0,1fr) minmax(92px,.45fr)!important;
  }
  .availability-inline .availability-language-display,
  .availability-inline .availability-check-btn{
    grid-column:auto!important;
  }
  .availability-inline .availability-check-btn{
    grid-column:1 / -1!important;
  }
  .availability-inline .ue-booking-body{
    grid-template-columns:minmax(0,1fr)!important;
  }
}

/* V10.67 - production trust polish: tighter product layout, mamey CTAs and safer responsive spacing. */
:root{
  --mamey:#e8756e;
  --mamey-dark:#cf5f59;
  --mamey-soft:#fff2ef;
}
.product-head-booking,
.mini-book-help,
.booking-checkout-section .booking-recap,
.booking-checkout-section .checkout-panel{
  box-shadow:0 16px 42px rgba(12,44,67,.075)!important;
}
.product-head-booking{
  gap:15px!important;
  border-color:#d8e2e8!important;
}
.product-head-booking .product-booking-primary,
.availability-inline .availability-check-btn,
.booking-checkout-section .checkout-submit,
.mobile-product-bookbar .btn-coral{
  background:linear-gradient(180deg,#f08b84 0%,var(--mamey) 100%)!important;
  border-color:var(--mamey-dark)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(232,117,110,.28)!important;
}
.product-head-booking .product-booking-primary:hover,
.availability-inline .availability-check-btn:hover,
.booking-checkout-section .checkout-submit:hover,
.mobile-product-bookbar .btn-coral:hover{
  background:linear-gradient(180deg,#ef817a 0%,#dd6b64 100%)!important;
  filter:none!important;
}
.product-booking-benefits{
  padding-top:2px!important;
}
.product-booking-benefits>div>span{
  background:#dff8fa!important;
  color:#0e7178!important;
}
.product-booking-ahead{
  background:#e8fbff!important;
  border-color:#b9edf4!important;
  color:#23495b!important;
}
.mini-book-help{
  border-radius:16px!important;
}
.direct-booking-assurance{
  display:grid!important;
  gap:7px!important;
}
.direct-booking-assurance span{
  display:flex!important;
  gap:8px!important;
  align-items:flex-start!important;
  color:#526878!important;
}
.direct-booking-assurance b{
  color:#1d8a57!important;
}
@media(min-width:1181px){
  .availability-inline .ue-booking-head{
    grid-template-columns:minmax(170px,.55fr) minmax(0,1.9fr)!important;
    gap:16px!important;
  }
  .availability-inline .ue-booking-controls{
    grid-template-columns:minmax(190px,1.4fr) minmax(86px,.5fr) minmax(138px,.72fr) minmax(150px,.72fr)!important;
  }
  .availability-inline .ue-booking-title h3{
    max-width:210px!important;
  }
}
.availability-inline .ue-booking-head{
  background:linear-gradient(135deg,#0c2c43 0%,#102f43 60%,#12384e 100%)!important;
}
.availability-inline .availability-picker-button{
  border-color:#dfe7eb!important;
  box-shadow:0 6px 16px rgba(9,37,54,.10)!important;
}
.availability-inline .availability-expanded-content{
  background:#f7fafc!important;
}
.availability-inline .booking-step-card{
  border-color:#dfe8ed!important;
  border-radius:16px!important;
}
.availability-inline .ue-booking-summary{
  border-radius:15px!important;
}
.facts{
  align-items:stretch!important;
}
.fact{
  background:#fff!important;
  min-height:88px!important;
}
.content-section#overview{
  padding-bottom:26px!important;
}
.product-main-details .content-section:first-child{
  padding-top:0!important;
}
.booking-checkout-section .checkout-panel{
  border-color:#0c2c43!important;
}
.booking-checkout-section .checkout-section-number,
.booking-checkout-section .checkout-submit{
  background:#0c2c43!important;
}
.booking-checkout-section .checkout-submit{
  background:linear-gradient(180deg,#f08b84 0%,var(--mamey) 100%)!important;
}
.booking-checkout-section .deposit-preview{
  background:#dff8fa!important;
  color:#0c2c43!important;
}
@media(max-width:900px){
  .product-head-booking,
  .mini-book-help{
    position:static!important;
    width:100%!important;
  }
  .availability-inline{
    scroll-margin-top:84px!important;
  }
  .availability-inline .ue-booking-head{
    border-radius:16px 16px 0 0!important;
  }
  .facts{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  .product-head h1{
    letter-spacing:-1.1px!important;
  }
  .product-head-booking{
    padding:20px!important;
  }
  .facts{
    grid-template-columns:1fr!important;
  }
  .availability-inline .availability-picker-button,
  .availability-inline .availability-check-btn{
    border-radius:14px!important;
  }
  .booking-checkout-section .checkout-panel,
  .booking-checkout-section .booking-recap{
    border-radius:14px!important;
  }
}

/* V10.68 Contact · Motion Adventure Google Maps */
.contact-map-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:24px;align-items:stretch}.contact-map-frame{min-height:420px;border-radius:20px;overflow:hidden;border:1px solid #dbe5ea;background:#eef3f5;box-shadow:0 16px 45px rgba(12,44,67,.08)}.contact-map-frame iframe{display:block;width:100%;height:100%;min-height:420px;border:0}.contact-map-card{background:#fff;border:1px solid #dfe7eb;border-radius:20px;padding:28px;display:flex;flex-direction:column;justify-content:center}.contact-map-card h3{font-size:25px;margin:8px 0 10px}.contact-map-card p{line-height:1.65}.contact-map-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}@media(max-width:820px){.contact-map-grid{grid-template-columns:1fr}.contact-map-frame,.contact-map-frame iframe{min-height:360px}}

/* V10.71 — immersive product photo gallery */
.product-gallery{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;height:520px;margin-bottom:2px;position:relative}.product-gallery-thumbs{display:grid;grid-template-rows:repeat(5,minmax(0,1fr));gap:9px;min-width:0}.product-gallery-thumb{position:relative;border:0;padding:0;border-radius:12px;overflow:hidden;background:#edf2f4;cursor:pointer;min-height:0;box-shadow:inset 0 0 0 1px rgba(12,44,67,.08);transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.product-gallery-thumb:hover{transform:translateY(-1px)}.product-gallery-thumb.active{box-shadow:inset 0 0 0 3px #0c2c43}.product-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.product-gallery-thumb:hover img{transform:scale(1.025)}.product-gallery-thumb:focus-visible,.product-gallery-arrow:focus-visible,.product-gallery-count:focus-visible,.product-gallery-main:focus-visible{outline:3px solid rgba(12,44,67,.28);outline-offset:2px}.product-gallery-more{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:6px;background:rgba(7,30,45,.58);color:#fff;font-weight:900;font-size:12px;text-shadow:0 1px 6px rgba(0,0,0,.4);backdrop-filter:blur(1px)}.product-gallery-more b{font-size:11px}.product-gallery-stage{position:relative;border-radius:16px;overflow:hidden;background:#edf2f4;min-width:0}.product-gallery-main{display:block;width:100%;height:100%;border:0;padding:0;background:none;cursor:zoom-in}.product-gallery-main img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .2s ease,transform .6s ease}.product-gallery-stage.is-changing .product-gallery-main img{opacity:.25}.product-gallery-stage:hover .product-gallery-main img{transform:scale(1.008)}.product-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:42px;height:42px;border-radius:50%;border:1px solid rgba(13,45,64,.16);background:rgba(255,255,255,.9);color:#0c2c43;font-size:31px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 7px 24px rgba(11,38,55,.17);backdrop-filter:blur(8px);transition:transform .18s ease,background .18s ease}.product-gallery-arrow:hover{background:#fff;transform:translateY(-50%) scale(1.04)}.product-gallery-prev{left:18px}.product-gallery-next{right:18px}.product-gallery-count{position:absolute;right:16px;bottom:16px;z-index:4;border:0;border-radius:999px;padding:9px 12px;background:rgba(9,38,58,.88);color:#fff;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800;cursor:pointer;backdrop-filter:blur(8px)}.product-gallery-count span{font-size:14px}.product-gallery-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.2);z-index:3}.product-gallery-progress span{display:block;height:100%;width:0;background:#fff;transform-origin:left center}.product-gallery-progress.running span{animation:ueGalleryProgress var(--ue-gallery-duration,5200ms) linear forwards}@keyframes ueGalleryProgress{from{width:0}to{width:100%}}
.product-gallery-lightbox[hidden]{display:none!important}.product-gallery-lightbox{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:22px}.product-gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(2,14,22,.92);backdrop-filter:blur(8px)}.product-gallery-lightbox-dialog{position:relative;z-index:1;width:min(1400px,96vw);height:min(900px,94vh);display:grid;grid-template-rows:auto minmax(0,1fr) 88px;gap:12px}.product-gallery-lightbox-top{display:flex;justify-content:space-between;align-items:center;color:#fff;min-height:42px}.product-gallery-lightbox-top strong{font-size:14px;letter-spacing:.04em}.product-gallery-lightbox-close{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.09);color:#fff;font-size:30px;display:grid;place-items:center;cursor:pointer}.product-gallery-lightbox-stage{position:relative;display:grid;place-items:center;min-height:0}.product-gallery-lightbox-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 18px 70px rgba(0,0,0,.35)}.product-gallery-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.26);background:rgba(0,0,0,.34);color:#fff;font-size:36px;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px)}.product-gallery-lightbox-arrow.prev{left:8px}.product-gallery-lightbox-arrow.next{right:8px}.product-gallery-lightbox-thumbs{display:flex;gap:9px;overflow-x:auto;align-items:center;padding:4px 2px 8px;scrollbar-width:thin}.product-gallery-lightbox-thumbs button{width:104px;height:72px;flex:0 0 auto;border:2px solid transparent;border-radius:9px;overflow:hidden;padding:0;background:#162d3b;opacity:.62;cursor:pointer}.product-gallery-lightbox-thumbs button.active{border-color:#fff;opacity:1}.product-gallery-lightbox-thumbs img{width:100%;height:100%;object-fit:cover;display:block}.ue-gallery-open{overflow:hidden!important}
@media(max-width:1000px){.product-gallery{grid-template-columns:118px minmax(0,1fr);height:450px}.product-gallery-arrow{width:40px;height:40px}.product-gallery-lightbox{padding:14px}.product-gallery-lightbox-dialog{width:98vw;height:96vh}}
@media(max-width:650px){.product-gallery{display:flex;flex-direction:column-reverse;height:auto;gap:9px}.product-gallery-stage{height:340px;border-radius:14px}.product-gallery-thumbs{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x proximity;padding-bottom:2px}.product-gallery-thumb{width:88px;height:68px;flex:0 0 auto;scroll-snap-align:start;border-radius:9px}.product-gallery-thumb:nth-child(n+6){display:none}.product-gallery-arrow{width:38px;height:38px;font-size:28px}.product-gallery-prev{left:10px}.product-gallery-next{right:10px}.product-gallery-count{right:10px;bottom:10px;padding:8px 10px}.product-gallery-lightbox{padding:0}.product-gallery-lightbox-dialog{width:100vw;height:100dvh;padding:10px;grid-template-rows:46px minmax(0,1fr) 72px}.product-gallery-lightbox-stage img{border-radius:6px}.product-gallery-lightbox-arrow{width:42px;height:42px;font-size:31px}.product-gallery-lightbox-arrow.prev{left:2px}.product-gallery-lightbox-arrow.next{right:2px}.product-gallery-lightbox-thumbs button{width:84px;height:58px}.product-gallery-lightbox-close{width:40px;height:40px}.product-gallery-more{font-size:11px}}
@media(prefers-reduced-motion:reduce){.product-gallery-main img,.product-gallery-thumb,.product-gallery-thumb img,.product-gallery-arrow{transition:none!important}.product-gallery-progress span{animation:none!important}}

/* V10.72 product page structure and offer presentation */
.trip-product-head h1{font-size:clamp(34px,4.4vw,54px);margin-bottom:10px}
.trip-rating-line{gap:12px 18px;font-size:14px;color:#425867}
.trip-rating-line span,.trip-rating-line strong{display:inline-flex;align-items:center;gap:5px}
.product-hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:22px;align-items:start;margin-bottom:18px}
.product-hero-media{min-width:0}
.trip-product-facts{display:flex;flex-wrap:wrap;gap:16px 22px;padding:14px 4px 4px;color:#284454;border-bottom:1px solid #e7eef2}
.trip-product-facts span{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.trip-product-facts b{font-size:15px}
.trip-booking-wrap{display:grid;gap:14px}
.trip-booking-card{background:#fff!important;border:1px solid #dbe5ea!important;border-radius:16px!important;padding:16px 16px 18px!important;box-shadow:0 12px 36px rgba(12,44,67,.08)!important;min-width:0!important}
.trip-booking-topline{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.trip-offer-pill,.trip-guarantee-pill{display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}
.trip-offer-pill{background:#ffecec;color:#cc3a2f}
.trip-guarantee-pill{background:#edf7f2;color:#23734b}
.trip-booking-price{display:grid;gap:4px;margin-bottom:14px}
.trip-booking-price>span{font-size:14px;color:#5f7685}
.trip-booking-price strong{font-size:22px;color:#0c2c43;line-height:1.05}
.trip-booking-price small{font-size:13px;color:#475e6b}
.trip-sale-price{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 8px}
.trip-sale-price em{font-style:normal;font-weight:900;color:#d13b30;font-size:19px}
.trip-old-price{font-size:14px;color:#6b7d88;text-decoration:line-through}
.trip-child-rate{display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:100%;padding:6px 9px;border-radius:8px;background:#eef6f1;color:#23734b;font-size:12px;font-weight:700}
.trip-booking-inline-fields{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid #d6e1e7;border-radius:12px;overflow:hidden;background:#fff;margin-bottom:14px}
.trip-mini-field{appearance:none;border:0;background:#fff;text-align:left;padding:14px 16px;display:grid;gap:3px;cursor:pointer}
.trip-mini-field+ .trip-mini-field,.trip-booking-inline-fields .trip-mini-field + .trip-mini-field{border-left:1px solid #d6e1e7}
.trip-mini-field span{font-size:13px;color:#6a7f8b}.trip-mini-field strong{font-size:22px;color:#0c2c43;line-height:1.1}
.trip-booking-card .product-booking-primary{width:100%;min-height:46px;border-radius:10px;font-size:20px;font-weight:900;margin-bottom:16px}
.trip-booking-benefits{display:grid;gap:10px;padding:0}
.trip-booking-benefits div{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;padding:0;background:none;border:0}
.trip-booking-benefits span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#1b8e58;color:#fff;font-size:11px;font-weight:900;margin-top:3px}
.trip-booking-benefits p{margin:0;color:#223d4f;font-size:14px;line-height:1.45}
.trip-booking-benefits strong{text-decoration:underline}
.trip-book-ahead{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start;padding:18px;border:1px solid #e7ddd2;border-radius:16px;background:#fffaf5;color:#244050}.trip-book-ahead span{font-size:26px;line-height:1}.trip-book-ahead p{margin:0;font-size:14px;line-height:1.45}
.trip-help-card{border-radius:16px!important;background:#fff!important;border:1px solid #dbe5ea!important;box-shadow:none!important}
.tour-card-media{position:relative}.tour-card-offer{position:absolute;top:12px;left:12px;z-index:2;background:#cb4438;color:#fff;padding:7px 9px;border-radius:999px;font-size:12px;font-weight:900;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.tour-old-price{display:block;color:#778894;text-decoration:line-through;font-size:12px;font-weight:700;margin-top:2px}
.premium-tour-card.has-offer{outline:1px solid rgba(203,68,56,.16)}
@media(max-width:1100px){.product-hero-layout{grid-template-columns:minmax(0,1fr) 360px}}
@media(max-width:900px){.product-hero-layout{grid-template-columns:1fr}.trip-booking-wrap{order:2}.trip-product-facts{padding-top:12px}.trip-booking-card .product-booking-primary{font-size:18px}}
@media(max-width:640px){.trip-rating-line{font-size:12px;gap:8px 12px}.trip-booking-inline-fields{grid-template-columns:1fr}.trip-mini-field + .trip-mini-field{border-left:0;border-top:1px solid #d6e1e7}.trip-mini-field strong{font-size:18px}.trip-product-facts{gap:10px 14px;font-size:13px}}

/* V10.73 — Viator-style refinements for product booking + offer placement */
.tour-price-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tour-card-offer{display:none!important}
.tour-card-offer-inline{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:#fff0ef;color:#cb4438;font-size:11px;font-weight:900;line-height:1}
.tour-price-row>div{display:grid;gap:3px}
.tour-old-price{margin-top:0}
.trip-booking-wrap{width:100%;align-content:start}
.trip-booking-wrap>*{width:100%;box-sizing:border-box}
.trip-booking-card{padding:14px 16px 16px!important;min-height:0!important;height:auto!important}
.trip-booking-topline{margin-bottom:8px}
.trip-booking-price{margin-bottom:12px}
.trip-booking-inline-fields{margin-bottom:12px}
.trip-booking-card .product-booking-primary{margin-bottom:14px}
.trip-book-ahead{margin-top:0}
.product-hero-layout{align-items:start}
.trip-booking-wrap{position:sticky;top:92px}
@media(max-width:900px){.trip-booking-wrap{position:static}}

/* Make the top summary card tighter and closer to the reference */
.trip-booking-card .trip-mini-field strong{font-size:16px}
.trip-booking-card .trip-mini-field span{font-size:12px;font-weight:700;text-transform:none}
.trip-booking-card .trip-sale-price strong{font-size:18px}
.trip-booking-card .trip-sale-price em{font-size:16px}
.trip-booking-card .trip-old-price{font-size:13px}
.trip-booking-benefits p{font-size:13px;line-height:1.4}

/* Availability panel / popovers — more Viator-like */
.availability-inline .ue-booking-head{background:#fff!important;color:#17384b!important;border:1px solid #dbe5ea!important;border-bottom:0!important;box-shadow:0 10px 30px rgba(12,44,67,.05)!important}
.availability-inline:not(.is-expanded) .ue-booking-head{border-radius:18px!important}
.availability-inline.is-expanded .ue-booking-head{border-radius:18px 18px 0 0!important}
.availability-inline .ue-booking-title h3{color:#17384b!important}
.availability-inline .ue-booking-title p,.availability-inline .booking-step-kicker{color:#6e7f8a!important}
.availability-inline .availability-picker-button,.availability-inline .availability-check-btn{border-radius:14px!important;height:56px!important;min-height:56px!important}
.availability-inline .availability-picker-button{box-shadow:none!important;border:1px solid #cad7df!important;background:#fff!important}
.availability-inline .availability-picker-button strong{font-size:15px!important}
.availability-inline .availability-check-btn{background:var(--coral)!important;border-color:var(--coral)!important;color:#fff!important;font-weight:900!important}
.availability-inline .availability-check-btn:hover{filter:brightness(.98)}
.availability-inline .availability-expanded-content{background:#fff!important;border:1px solid #dbe5ea!important;border-top:0!important;border-radius:0 0 18px 18px!important;padding:18px 18px 20px!important;box-shadow:0 14px 34px rgba(12,44,67,.07)!important}
.availability-inline .ue-booking-body{display:grid!important;grid-template-columns:minmax(0,1fr) 320px!important;gap:22px!important;align-items:start!important}
.availability-inline .booking-step-card-option{grid-column:1/2!important}
.availability-inline .booking-step-card-time{grid-column:1/2!important}
.availability-inline .ue-booking-summary{grid-column:2/3!important;grid-row:1 / span 2!important;display:grid!important;gap:14px!important;align-self:start!important;padding:16px!important;border:1px solid #dbe5ea!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(12,44,67,.04)!important}
.availability-inline .booking-selection-summary{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.availability-inline .booking-selection-summary small{display:block;margin-bottom:4px;color:#728390;font-weight:700}
.availability-inline .booking-selection-summary strong{font-size:18px;color:#17384b}
.availability-inline .reserve-primary{width:100%!important;min-height:48px!important;border-radius:12px!important;font-weight:900!important}
.availability-inline .book-ahead{grid-column:1/-1!important;border-radius:14px!important;background:#edf8f2!important;color:#214d36!important;padding:14px 16px!important}
.availability-inline .ue-option{border-radius:16px!important;display:grid!important;grid-template-columns:1fr auto!important;grid-template-areas:'title price' 'desc price' 'rule price' 'breakdown price' 'total action'!important;column-gap:16px;row-gap:8px;padding:18px 18px 18px 52px!important;min-height:0!important}
.availability-inline .ue-option input,.availability-inline .ue-option .option-radio-ui{left:18px;top:22px;right:auto!important}
.availability-inline .ue-option h4{grid-area:title!important;margin:0!important;font-size:16px!important}
.availability-inline .ue-option p{grid-area:desc!important;min-height:0!important;margin:0!important}
.availability-inline .ue-option .option-rule-note{grid-area:rule!important}
.availability-inline .ue-option .ue-option-breakdown{grid-area:breakdown!important}
.availability-inline .ue-option .ue-option-total-row{grid-area:total!important}
.availability-inline .ue-option .option-price-row{grid-area:price!important;display:grid!important;justify-items:end!important;align-content:start!important;text-align:right!important;min-width:130px}
.availability-inline .booking-step-card{border-radius:16px!important;padding:18px!important}
.availability-inline .availability-result{border-radius:16px!important}
.availability-inline .time-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.availability-inline .time-slot{border-radius:12px!important}

/* Larger date + traveler popovers on desktop */
.availability-inline .ue-calendar-popover{width:min(820px,calc(100vw - 54px))!important;max-width:min(820px,calc(100vw - 54px))!important;padding:20px 22px 16px!important;border-radius:18px!important}
.availability-inline .ue-calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;min-height:0!important}
.availability-inline .ue-calendar-toolbar{margin-bottom:16px!important}
.availability-inline .calendar-weekdays span{font-size:12px!important}
.availability-inline .calendar-day{min-height:58px!important;border-radius:10px!important}
.availability-inline .calendar-day span{font-size:18px!important;font-weight:800!important}
.availability-inline .calendar-day small{font-size:11px!important}
.availability-inline .calendar-footnote{padding-top:10px!important}
.availability-inline .ue-traveler-popover{width:min(430px,calc(100vw - 44px))!important;max-width:min(430px,calc(100vw - 44px))!important;padding:0!important;border-radius:18px!important;overflow:hidden!important}
.availability-inline .traveler-popover-head{padding:18px 18px 12px!important;background:#fff!important;border-bottom:1px solid #edf1f3!important}
.availability-inline .traveler-popover-head strong{display:block;font-size:18px;color:#17384b}
.availability-inline .traveler-popover-head span{font-size:13px;color:#6e7f8a}
.availability-inline .ue-traveler-popover .traveler-type-row{padding:16px 18px!important}
.availability-inline .traveler-stepper button{width:36px!important;height:36px!important;border-radius:50%!important}
.availability-inline .traveler-update-btn{width:calc(100% - 32px)!important;margin:16px!important;min-height:46px!important;border-radius:12px!important}

@media(max-width:1100px){
  .availability-inline .ue-booking-body{grid-template-columns:minmax(0,1fr) 290px!important}
}
@media(max-width:900px){
  .availability-inline .ue-booking-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  .availability-inline .availability-language-display{grid-column:1/-1!important}
  .availability-inline .availability-check-btn{grid-column:1/-1!important}
  .availability-inline .ue-booking-body{grid-template-columns:minmax(0,1fr)!important}
  .availability-inline .ue-booking-summary{grid-column:1/-1!important;grid-row:auto!important}
  .availability-inline .time-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .availability-inline .ue-calendar-popover{width:min(760px,calc(100vw - 30px))!important;max-width:min(760px,calc(100vw - 30px))!important}
}
@media(max-width:680px){
  .tour-price-line{align-items:flex-start;flex-direction:column;gap:6px}
  .tour-card-offer-inline{width:max-content}
  .availability-inline .ue-booking-controls{grid-template-columns:minmax(0,1fr)!important}
  .availability-inline .time-grid{grid-template-columns:1fr 1fr!important}
}

/* V10.74 — simplify top booking summary card */
.trip-booking-wrap{display:block!important;width:100%!important;min-width:0!important}
.trip-booking-card,
.trip-book-ahead{display:block!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
.trip-booking-card{
  padding:18px 18px 18px!important;
  min-width:0!important;
  margin:0 0 12px 0!important;
}
.trip-booking-topline{margin-bottom:14px!important}
.trip-booking-price{margin-bottom:16px!important}
.trip-booking-card .product-booking-primary{
  width:100%!important;
  min-height:52px!important;
  border-radius:999px!important;
  margin:6px 0 16px 0!important;
}
.trip-booking-inline-fields{display:none!important}
.trip-booking-benefits{margin-top:0!important}
.trip-booking-benefits div{padding:0!important}
.trip-booking-price .trip-child-rate{margin-top:4px}
.trip-book-ahead{margin-top:0!important}
@media(max-width:900px){
  .trip-booking-card{margin-bottom:14px!important}
}

/* V10.75 — remove dead space from product hero booking column */
.product-hero-layout{align-items:stretch!important}
.trip-booking-wrap{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  align-self:stretch!important;
  position:static!important;
}
.trip-booking-card,
.trip-book-ahead,
.trip-direct-support-card{width:100%!important;max-width:none!important;box-sizing:border-box!important}
.trip-booking-card{flex:0 0 auto!important}
.trip-booking-summary-grid{
  display:grid!important;
  grid-template-columns:minmax(132px,.82fr) minmax(0,1.18fr)!important;
  gap:14px!important;
  align-items:stretch!important;
  margin-bottom:14px!important;
}
.trip-direct-proof{
  min-width:0!important;
  padding:14px!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#f3fbfd 0%,#eef8f4 100%)!important;
  border:1px solid #d7ebea!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
}
.trip-direct-proof-icon{
  width:30px!important;height:30px!important;border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:#1b8e58!important;color:#fff!important;font-weight:900!important;
  box-shadow:0 6px 16px rgba(27,142,88,.18)!important;
}
.trip-direct-proof>div{display:grid!important;gap:3px!important;min-width:0!important}
.trip-direct-proof small{font-size:10px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#66808c!important}
.trip-direct-proof strong{font-size:14px!important;line-height:1.15!important;color:#0c2c43!important}
.trip-direct-proof>div>span{font-size:11px!important;line-height:1.3!important;color:#52707c!important}
.trip-booking-summary-grid .trip-booking-price{
  margin:0!important;
  padding:10px 4px 8px 0!important;
  align-content:center!important;
  justify-content:center!important;
}
.trip-booking-summary-grid .trip-booking-price>span{font-size:12px!important}
.trip-booking-summary-grid .trip-sale-price{align-items:baseline!important}
.trip-booking-summary-grid .trip-sale-price strong{font-size:20px!important}
.trip-booking-summary-grid .trip-child-rate{margin-top:5px!important;font-size:11px!important;padding:5px 8px!important}
.trip-booking-card .product-booking-primary{margin-top:0!important}
.trip-book-ahead{flex:0 0 auto!important}
.trip-direct-support-card{
  flex:1 1 auto!important;
  min-height:132px!important;
  border:1px solid #dbe6eb!important;
  border-radius:16px!important;
  background:#fff!important;
  padding:16px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:12px!important;
  box-shadow:0 10px 28px rgba(12,44,67,.045)!important;
}
.trip-direct-support-head{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important;align-items:center!important}
.trip-direct-support-head>span{width:34px!important;height:34px!important;border-radius:10px!important;background:#fff3ea!important;display:grid!important;place-items:center!important;color:#d06b3d!important;font-size:16px!important}
.trip-direct-support-head>div{display:grid!important;gap:2px!important}
.trip-direct-support-head small{font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-weight:900!important;color:#728590!important}
.trip-direct-support-head strong{font-size:14px!important;line-height:1.25!important;color:#0c2c43!important}
.trip-direct-support-list{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
.trip-direct-support-list span{display:flex!important;gap:7px!important;align-items:flex-start!important;font-size:11.5px!important;line-height:1.35!important;color:#526976!important}
.trip-direct-support-list b{color:#1b8e58!important}
.trip-direct-support-link{font-size:12px!important;font-weight:900!important;color:#0c5962!important;text-decoration:none!important;border-top:1px solid #e6edf0!important;padding-top:10px!important}
.trip-direct-support-link:hover{text-decoration:underline!important}

@media(max-width:1100px){
  .trip-booking-summary-grid{grid-template-columns:1fr!important}
  .trip-direct-proof{grid-template-columns:28px minmax(0,1fr)!important;padding:12px!important}
  .trip-direct-support-card{min-height:120px!important}
}
@media(max-width:900px){
  .trip-booking-summary-grid{grid-template-columns:minmax(132px,.8fr) minmax(0,1.2fr)!important}
  .trip-direct-support-card{flex:0 0 auto!important;min-height:0!important}
}
@media(max-width:560px){
  .trip-booking-summary-grid{grid-template-columns:1fr!important}
  .trip-direct-proof{display:flex!important;align-items:center!important}
  .trip-direct-proof>div{grid-template-columns:1fr 1fr!important;column-gap:8px!important}
  .trip-direct-proof small,.trip-direct-proof strong{grid-column:1/-1!important}
}

/* V10.76 — simplify the top booking card and remove repeated messaging */
.trip-booking-card{
  padding:18px!important;
  display:grid!important;
  gap:16px!important;
}
.trip-booking-topline,
.trip-booking-summary-grid,
.trip-direct-proof{display:none!important}
.trip-price-panel{
  margin:0!important;
  padding:16px 18px!important;
  border:1px solid #e0e8ec!important;
  border-radius:14px!important;
  background:#f8fafb!important;
  display:grid!important;
  gap:6px!important;
  align-content:start!important;
  justify-content:start!important;
  text-align:left!important;
}
.trip-price-panel>span{
  font-size:13px!important;
  font-weight:800!important;
  color:#5f7480!important;
}
.trip-price-panel .trip-sale-price{
  display:flex!important;
  align-items:baseline!important;
  flex-wrap:wrap!important;
  gap:7px!important;
}
.trip-price-panel .trip-sale-price em{
  font-size:18px!important;
  font-weight:900!important;
  color:#d84b3f!important;
}
.trip-price-panel .trip-sale-price strong{
  font-size:25px!important;
  line-height:1!important;
  color:#0c2c43!important;
}
.trip-price-panel .trip-sale-price small{
  font-size:13px!important;
  color:#536a77!important;
}
.trip-price-panel .trip-old-price{
  margin:0!important;
  font-size:13px!important;
  color:#71838e!important;
  text-decoration:line-through!important;
}
.trip-price-panel .trip-child-rate{
  margin-top:5px!important;
  width:max-content!important;
  max-width:100%!important;
  padding:6px 9px!important;
  border-radius:8px!important;
  font-size:12px!important;
}
.trip-booking-card .product-booking-primary{
  margin:0!important;
  width:100%!important;
  min-height:52px!important;
  border-radius:999px!important;
}
.trip-booking-benefits{
  display:grid!important;
  gap:12px!important;
  margin:0!important;
}
.trip-booking-benefits div{padding:0!important}
.trip-direct-support-card{
  flex:0 0 auto!important;
  min-height:0!important;
  justify-content:flex-start!important;
  gap:10px!important;
}
.trip-direct-support-link{display:none!important}
@media(max-width:560px){
  .trip-price-panel{padding:14px 15px!important}
  .trip-price-panel .trip-sale-price strong{font-size:23px!important}
}

/* V10.77 — interactive itinerary + route map */
.interactive-itinerary-section{padding-top:6px!important}
.interactive-itinerary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px}
.interactive-itinerary-head h2{margin:4px 0 7px}
.interactive-itinerary-head p{margin:0;max-width:620px;color:#657985;line-height:1.5}
.itinerary-route-link{white-space:nowrap;flex:0 0 auto}
.interactive-itinerary-layout{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(340px,1.18fr);gap:28px;align-items:start}
.interactive-itinerary-layout.no-map{grid-template-columns:1fr}
.itinerary-timeline{position:relative;padding:2px 0 4px}
.itinerary-timeline:before{content:"";position:absolute;left:22px;top:40px;bottom:42px;border-left:2px dotted #bdc9cf;z-index:0}
.itinerary-endpoint,.itinerary-route-stop{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:start;z-index:1}
.itinerary-endpoint{padding:0 0 18px}.itinerary-endpoint.end{padding:12px 0 0}
.itinerary-endpoint>span{width:46px;height:38px;display:grid;place-items:center;background:#ffea35;color:#17384b;border:2px solid #b9a800;border-radius:48% 48% 55% 55%;font-size:11px;font-weight:950;box-shadow:0 2px 0 rgba(0,0,0,.08)}
.itinerary-endpoint.end>span{border-radius:55% 55% 48% 48%}
.itinerary-endpoint strong{display:block;color:#17384b;font-size:14px;margin:5px 0 2px}.itinerary-endpoint small{display:block;color:#687c87;line-height:1.35}
.itinerary-route-stop{padding:0 0 19px}
.itinerary-route-number{width:38px;height:38px;margin-left:4px;border-radius:50%;background:#114573;color:#fff;display:grid;place-items:center;font-weight:950;font-size:14px;box-shadow:0 0 0 4px #fff;transition:transform .18s ease,background .18s ease}
.itinerary-route-stop.active .itinerary-route-number{background:var(--coral);transform:scale(1.08)}
.itinerary-route-copy{min-width:0;padding-top:1px}
.itinerary-route-copy>strong,.itinerary-route-select strong{display:block;color:#17384b;font-size:15px;margin-bottom:3px}
.itinerary-route-copy>span,.itinerary-route-select>span{display:block;color:#657985;font-size:13px;margin-bottom:4px}
.itinerary-route-copy p,.itinerary-route-select p{margin:0;color:#657985;font-size:13px;line-height:1.45}
.itinerary-route-select{appearance:none;border:0;background:transparent;padding:0;text-align:left;width:100%;cursor:pointer;color:inherit;font:inherit}
.itinerary-route-select small{display:inline-block;margin-top:5px;color:#2d8f98;font-weight:850;font-size:12px}
.itinerary-route-select:hover strong,.itinerary-route-select:focus-visible strong{color:var(--coral)}
.itinerary-route-select:focus-visible{outline:2px solid rgba(238,123,113,.45);outline-offset:5px;border-radius:5px}
.itinerary-stop-map-link{display:inline-flex;margin-top:7px;color:#526b79;font-size:11px;font-weight:750;text-decoration:underline}
.itinerary-map-card{position:sticky;top:106px;border:1px solid #dce6eb;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 12px 34px rgba(12,44,67,.08)}
.itinerary-map-frame{position:relative;height:500px;background:#edf2f4;overflow:hidden}
.itinerary-map-frame iframe,.itinerary-google-map{position:absolute;inset:0;width:100%;height:100%;border:0}
.itinerary-google-map[hidden]{display:none!important}
.itinerary-map-current{position:absolute;left:14px;bottom:14px;z-index:4;width:min(310px,calc(100% - 28px));display:grid;gap:2px;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 8px 28px rgba(12,44,67,.18);backdrop-filter:blur(8px);pointer-events:none}
.itinerary-map-current span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#758793;font-weight:900}.itinerary-map-current strong{color:#17384b;font-size:14px}.itinerary-map-current small{color:#667985;font-size:11px;line-height:1.35}
.itinerary-map-fit{position:absolute;right:14px;top:14px;z-index:4;border:1px solid #d7e1e6;background:#fff;color:#17384b;border-radius:999px;padding:8px 11px;font-weight:850;font-size:11px;cursor:pointer;box-shadow:0 6px 18px rgba(12,44,67,.12)}
.itinerary-map-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border-top:1px solid #e2e9ed;font-size:11px;color:#6b7f8b}.itinerary-map-footer a{font-weight:850;color:#2d8f98}
@media(max-width:1180px){.interactive-itinerary-layout{grid-template-columns:minmax(245px,.8fr) minmax(300px,1.2fr);gap:20px}.itinerary-map-frame{height:450px}}
@media(max-width:900px){.interactive-itinerary-head{display:grid}.itinerary-route-link{width:max-content}.interactive-itinerary-layout{grid-template-columns:1fr;gap:22px}.itinerary-map-card{position:static}.itinerary-map-frame{height:420px}}
@media(max-width:600px){.interactive-itinerary-head{gap:14px;margin-bottom:18px}.itinerary-route-link{width:100%}.itinerary-map-frame{height:360px}.itinerary-map-current{left:10px;bottom:10px;width:calc(100% - 20px)}.itinerary-map-fit{right:10px;top:10px}.itinerary-endpoint,.itinerary-route-stop{grid-template-columns:42px minmax(0,1fr);gap:12px}.itinerary-timeline:before{left:20px}.itinerary-endpoint>span{width:42px}.itinerary-route-number{margin-left:2px}}

/* V10.81 — clean route-only itinerary map */
.interactive-itinerary-head{display:block!important}
.interactive-itinerary-head>div{max-width:680px}
.itinerary-route-link,.itinerary-stop-map-link,.itinerary-map-fit,.itinerary-map-footer,.itinerary-map-current{display:none!important}
.itinerary-route-copy{position:relative}
.itinerary-route-select{display:block!important;width:100%;margin:0!important}
.itinerary-route-select strong{margin-bottom:4px!important}
.itinerary-stop-description{margin-top:4px;max-width:100%;overflow:hidden}
.itinerary-stop-description p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:0!important;line-height:1.48!important}
.itinerary-stop-description.expanded p{display:block;-webkit-line-clamp:unset;overflow:visible}
.itinerary-description-toggle,.itinerary-see-route{appearance:none;border:0;background:none;padding:0;margin-top:6px;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.itinerary-description-toggle{color:#17384b;text-decoration:underline;text-underline-offset:2px}
.itinerary-see-route{display:block;color:#2d8f98}
.itinerary-description-toggle:hover,.itinerary-see-route:hover{color:var(--coral)}
.itinerary-route-only{overflow:hidden}
.itinerary-route-canvas{height:500px!important;position:relative;background:linear-gradient(135deg,#eef5ef,#eef4f7 56%,#e8f3ee);isolation:isolate}
.itinerary-route-canvas iframe{position:absolute;inset:-2px;width:calc(100% + 4px);height:calc(100% + 4px);border:0;pointer-events:none;filter:saturate(.75) contrast(.95) brightness(1.04);z-index:1}
.itinerary-route-canvas:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:rgba(255,255,255,.10)}
.itinerary-route-svg{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.itinerary-route-svg path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.itinerary-route-svg .itinerary-route-shadow{stroke:rgba(255,255,255,.96);stroke-width:13;filter:drop-shadow(0 2px 2px rgba(13,40,68,.18))}
.itinerary-route-svg .itinerary-route-main{stroke:#2858e8;stroke-width:8}
.itinerary-route-markers{position:absolute;inset:0;z-index:4;pointer-events:none}
.itinerary-map-marker{position:absolute;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;border:4px solid #fff;background:#17384b;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:950;box-shadow:0 5px 14px rgba(12,44,67,.28);cursor:pointer;pointer-events:auto;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.itinerary-map-marker:hover{transform:translate(-50%,-50%) scale(1.07)}
.itinerary-map-marker.active{background:#e85f55;transform:translate(-50%,-50%) scale(1.12);box-shadow:0 8px 22px rgba(232,95,85,.35)}
.itinerary-map-marker:after{content:attr(data-label);position:absolute;left:35px;top:50%;transform:translateY(-50%);white-space:nowrap;color:#263842;font-size:11px;font-weight:850;text-shadow:0 1px 0 #fff,1px 0 0 #fff,-1px 0 0 #fff,0 -1px 0 #fff;pointer-events:none}
.itinerary-route-label{position:absolute;left:16px;bottom:16px;z-index:5;max-width:min(330px,calc(100% - 32px));padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(12,44,67,.14);backdrop-filter:blur(8px);pointer-events:none}
.itinerary-route-label strong{display:block;color:#17384b;font-size:14px}
.itinerary-route-label small{display:block;color:#687c88;font-size:11px;margin-top:2px;line-height:1.35}
@media(max-width:900px){.itinerary-route-canvas{height:420px!important}}
@media(max-width:600px){.itinerary-route-canvas{height:340px!important}.itinerary-map-marker{width:31px;height:31px;border-width:3px}.itinerary-map-marker:after{font-size:10px;max-width:110px;overflow:hidden;text-overflow:ellipsis}.itinerary-route-label{left:10px;bottom:10px;max-width:calc(100% - 20px)}}

/* V10.83 — Home featured experiences: exactly 3 visible, carousel for the rest */
.home-featured-carousel{position:relative}
.home-featured-viewport{overflow:hidden;border-radius:18px}
.home-featured-track{display:flex;gap:22px;align-items:stretch;will-change:transform;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.home-featured-track>[data-home-featured-card]{flex:0 0 calc((100% - 44px)/3);min-width:0;display:flex;flex-direction:column}
.home-featured-track>[data-home-featured-card] .tour-card-body{display:flex;flex:1;flex-direction:column}
.home-featured-track>[data-home-featured-card] .tour-price-row{margin-top:auto}
.home-featured-arrow{position:absolute;top:44%;z-index:4;width:44px;height:44px;border-radius:50%;border:1px solid #d7e2e8;background:#fff;color:#15384d;display:grid;place-items:center;font-size:30px;line-height:1;box-shadow:0 10px 24px rgba(13,44,63,.14);cursor:pointer;transition:transform .18s ease,opacity .18s ease}
.home-featured-arrow:hover{transform:translateY(-1px) scale(1.03)}
.home-featured-arrow.prev{left:-18px}.home-featured-arrow.next{right:-18px}
.home-featured-arrow[disabled],.home-featured-arrow.is-hidden{opacity:0;pointer-events:none}
.home-featured-footer{display:flex;align-items:center;justify-content:center;gap:14px;min-height:26px;margin-top:17px}
.home-featured-dots{display:flex;align-items:center;gap:7px}
.home-featured-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#c6d3da;cursor:pointer;transition:width .18s ease,background .18s ease,border-radius .18s ease}
.home-featured-dots button.active{width:24px;border-radius:999px;background:#1b7f82}
.home-featured-status{font-size:11px;font-weight:800;color:#71838d;min-width:74px;text-align:left}
@media(max-width:1040px){
 .home-featured-track>[data-home-featured-card]{flex-basis:calc((100% - 22px)/2)}
 .home-featured-arrow.prev{left:-10px}.home-featured-arrow.next{right:-10px}
}
@media(max-width:700px){
 .home-featured-viewport{overflow:visible;clip-path:inset(-16px 0 -16px 0)}
 .home-featured-track{gap:16px}
 .home-featured-track>[data-home-featured-card]{flex-basis:100%}
 .home-featured-arrow{top:auto;bottom:-2px;width:40px;height:40px;font-size:26px}
 .home-featured-arrow.prev{left:0}.home-featured-arrow.next{right:0}
 .home-featured-footer{margin-top:20px;padding:0 48px}
}
@media(prefers-reduced-motion:reduce){.home-featured-track{transition:none!important}}

/* V10.84 — Modern Experience Home (reversible from CMS) */
.modern-home{background:#fff;overflow:hidden}.modern-home .container{max-width:1240px}.modern-hero{position:relative;min-height:720px;display:grid;align-items:end;color:#fff;isolation:isolate}.modern-hero-media,.modern-hero-media img,.modern-hero-shade{position:absolute;inset:0;width:100%;height:100%}.modern-hero-media img{object-fit:cover;object-position:center;transition:opacity .45s ease}.modern-hero-shade{background:linear-gradient(90deg,rgba(6,26,38,.82) 0%,rgba(6,26,38,.52) 44%,rgba(6,26,38,.18) 68%,rgba(6,26,38,.36) 100%);z-index:1}.modern-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(380px,.75fr);gap:64px;align-items:end;padding-top:120px;padding-bottom:70px}.modern-hero-copy{max-width:700px;padding-bottom:18px}.modern-kicker{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:900;color:#d9f5ef}.modern-kicker.dark{color:#1b7f82}.modern-hero-copy h1{font-size:clamp(52px,6.2vw,86px);line-height:.94;letter-spacing:-4px;margin:16px 0 20px;color:#fff;max-width:780px}.modern-hero-copy>p{max-width:620px;font-size:18px;line-height:1.55;color:rgba(255,255,255,.9);margin:0}.modern-hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.modern-hero-chips span{padding:8px 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px);font-size:12px;font-weight:800}.modern-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.modern-text-action{color:#fff;text-decoration:none;font-weight:800;font-size:13px}.modern-text-action span{margin-left:5px}.modern-text-action:hover{text-decoration:underline;text-underline-offset:4px}
.modern-search-card{background:rgba(255,255,255,.97);color:#17384b;border-radius:22px;padding:16px;box-shadow:0 28px 70px rgba(0,0,0,.26);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.55)}.modern-search-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border-radius:14px;background:#edf3f5;margin-bottom:14px}.modern-search-tabs button{min-height:42px;border:0;border-radius:11px;background:transparent;color:#69808d;font-weight:850;cursor:pointer}.modern-search-tabs button.active{background:#fff;color:#17384b;box-shadow:0 4px 14px rgba(14,48,68,.08)}.modern-search-card .booking-panel-pane{display:none}.modern-search-card .booking-panel-pane.active{display:block}.modern-search-title{display:flex;justify-content:space-between;align-items:start;gap:12px;padding:5px 4px 14px}.modern-search-title span,.modern-search-title strong{display:block}.modern-search-title span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#82939c;font-weight:900}.modern-search-title strong{font-size:24px;letter-spacing:-.7px;margin-top:3px;color:#17384b}.modern-search-title small{padding:6px 9px;border-radius:999px;background:#eaf8f8;color:#246a6d;font-size:10px;font-weight:900}.modern-search-grid{display:grid;grid-template-columns:1fr .62fr .38fr;gap:8px}.modern-search-grid label,.modern-transfer-grid label{display:grid;gap:5px}.modern-search-grid label>span,.modern-transfer-grid label>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#748791;font-weight:900}.modern-search-grid .field,.modern-transfer-grid .field{height:50px;border-radius:12px;background:#fff;border:1px solid #d8e3e8;font-size:13px}.modern-search-submit{width:100%;min-height:52px;border-radius:13px;margin-top:10px;font-weight:900;font-size:16px}.modern-search-assurance{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;padding-top:12px;color:#6a7e89;font-size:10px;font-weight:800}.modern-transfer-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.modern-trust{border-bottom:1px solid #e8eef1;background:#fff}.modern-trust-row{display:grid;grid-template-columns:1.25fr repeat(4,1fr);align-items:stretch}.modern-trust-row>div{display:flex;align-items:center;gap:10px;min-height:96px;padding:13px 18px;border-right:1px solid #edf1f3}.modern-trust-row>div:first-child{padding-left:0}.modern-trust-row>div:last-child{border-right:0;padding-right:0}.modern-trust-row b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eaf8f8;color:#16794d;flex:0 0 auto}.modern-trust-row span,.modern-trust-row strong,.modern-trust-row small{display:block}.modern-trust-row strong{font-size:12px;color:#17384b}.modern-trust-row small{font-size:9px;color:#7a8b95;margin-top:2px}.modern-trust-row>.modern-award-cell{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px}.modern-award-heading{font-size:10px;font-weight:900;color:#17384b;letter-spacing:.02em}.modern-award-item{display:flex!important;align-items:center;gap:10px}.modern-award-item img{width:42px;height:42px;border-radius:11px;object-fit:cover;flex:0 0 auto}.modern-award-item>span{display:block}.modern-award-item strong{font-size:13px;line-height:1.15;color:#17384b}.modern-award-item small{font-size:12px;line-height:1.1;color:#506773;margin-top:3px}
.modern-home .featured-tours-section{padding:72px 0 68px!important;background:#f5f8f9}.modern-home .featured-tours-section .section-head{margin-bottom:28px}.modern-home .featured-tours-section .section-head h2{font-size:clamp(34px,4vw,52px);letter-spacing:-2px;line-height:1}.modern-home .featured-tours-section .premium-tour-card{background:#fff;box-shadow:0 12px 35px rgba(17,50,69,.07)}
.modern-section{padding:82px 0}.modern-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.modern-section-head>div{max-width:720px}.modern-section-head h2{font-size:clamp(34px,4vw,52px);line-height:1.02;letter-spacing:-2px;margin:8px 0 10px;color:#17384b}.modern-section-head p{margin:0;color:#6e818c;font-size:16px}.modern-section-head>a{font-weight:850;color:#17384b;text-decoration:none;white-space:nowrap}.modern-section-head>a:hover{text-decoration:underline;text-underline-offset:4px}.modern-mood-rail{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.modern-mood-card{position:relative;min-height:400px;border-radius:20px;overflow:hidden;color:#fff;text-decoration:none;isolation:isolate;background:#17384b}.modern-mood-card img,.modern-mood-overlay{position:absolute;inset:0;width:100%;height:100%}.modern-mood-card img{object-fit:cover;transition:transform .55s ease}.modern-mood-overlay{background:linear-gradient(180deg,rgba(7,28,39,.05) 25%,rgba(7,28,39,.86) 100%);z-index:1}.modern-mood-card>div{position:absolute;z-index:2;left:20px;right:20px;bottom:20px}.modern-mood-card small{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:9px;font-weight:900;color:#cdeee9}.modern-mood-card strong{display:block;font-size:22px;line-height:1.05;margin:6px 0}.modern-mood-card p{font-size:12px;line-height:1.4;color:rgba(255,255,255,.82);margin:0 0 12px}.modern-mood-card em{font-style:normal;font-weight:900;font-size:12px}.modern-mood-card:hover img{transform:scale(1.045)}
.modern-editorial{padding:88px 0}.modern-editorial-adventure{background:#fff}.modern-editorial-water{background:#f0f7f7}.modern-editorial-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:70px;align-items:center}.modern-editorial-grid.reverse{grid-template-columns:minmax(340px,.85fr) minmax(0,1.15fr)}.modern-editorial-media{position:relative;min-height:540px;border-radius:26px;overflow:hidden;display:block;background:#e8eff2}.modern-editorial-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:transform .65s ease}.modern-editorial-media:hover img{transform:scale(1.025)}.modern-editorial-media>span{position:absolute;left:20px;bottom:20px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.93);color:#17384b;font-size:11px;font-weight:900;box-shadow:0 8px 25px rgba(0,0,0,.12)}.modern-editorial-copy h2{font-size:clamp(38px,4.6vw,62px);line-height:.98;letter-spacing:-2.8px;color:#17384b;margin:12px 0 18px}.modern-editorial-copy>p{font-size:17px;line-height:1.65;color:#5f7581;margin:0 0 24px}.modern-editorial-points{display:grid;gap:12px;margin:0 0 28px}.modern-editorial-points span{display:flex;align-items:center;gap:10px;font-weight:800;color:#294c5e}.modern-editorial-points b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#eaf8f8;color:#168052;font-size:11px}.modern-editorial-copy .btn{border-radius:999px}
.modern-reviews{padding:80px 0;background:#102f43;color:#fff}.modern-review-head{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:34px;align-items:end;margin-bottom:30px}.modern-review-score{border-right:1px solid rgba(255,255,255,.16);padding-right:28px}.modern-review-score span{font-size:30px;color:#f5c54c}.modern-review-score strong{display:block;font-size:48px;line-height:1;margin:2px 0;color:#fff}.modern-review-score small{color:#b9cad2;font-size:10px}.modern-review-head h2{font-size:clamp(32px,3.6vw,48px);letter-spacing:-1.7px;line-height:1;margin:8px 0;color:#fff}.modern-review-head p{margin:0;color:#b9cad2}.modern-review-head>a{align-self:center;color:#fff;font-weight:850;text-decoration:none}.modern-review-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px}.modern-review-rail::-webkit-scrollbar{display:none}.modern-review-rail article{flex:0 0 calc((100% - 32px)/3);min-width:300px;scroll-snap-align:start;background:#fff;color:#17384b;padding:24px;border-radius:18px;box-shadow:0 14px 36px rgba(0,0,0,.12)}.modern-review-rail .stars{color:#18a66c;letter-spacing:1px}.modern-review-rail h3{font-size:18px;margin:12px 0 8px}.modern-review-rail p{font-size:13px;line-height:1.55;color:#5f7380;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.modern-review-rail small{color:#80909a;font-size:10px;font-weight:800}
.modern-local{padding:88px 0;background:#fff}.modern-local-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);min-height:500px;border-radius:28px;overflow:hidden;background:#0e3448;color:#fff;padding:0!important}.modern-local-photo{position:relative;min-height:500px}.modern-local-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.modern-local-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,rgba(14,52,72,.6))}.modern-local-photo>span{position:absolute;left:24px;bottom:24px;z-index:2;padding:10px 13px;border-radius:999px;background:#fff;color:#17384b;font-size:11px;font-weight:900}.modern-local-copy{padding:64px 56px;align-self:center}.modern-local-copy h2{font-size:clamp(36px,4vw,54px);line-height:1;letter-spacing:-2px;margin:12px 0 18px;color:#fff}.modern-local-copy>p{font-size:15px;line-height:1.65;color:#c4d4db}.modern-local-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0}.modern-local-facts span{padding:13px;border-radius:12px;background:rgba(255,255,255,.08)}.modern-local-facts b,.modern-local-facts small{display:block}.modern-local-facts b{font-size:12px}.modern-local-facts small{font-size:9px;color:#bad0d8;margin-top:3px}.modern-light-link{color:#fff;font-weight:900;text-decoration:none}.modern-light-link:hover{text-decoration:underline;text-underline-offset:4px}
.modern-final-cta{position:relative;min-height:520px;display:grid;place-items:center;text-align:center;color:#fff;isolation:isolate}.modern-final-cta>img,.modern-final-shade{position:absolute;inset:0;width:100%;height:100%}.modern-final-cta>img{object-fit:cover}.modern-final-shade{z-index:1;background:linear-gradient(rgba(8,31,44,.48),rgba(8,31,44,.76))}.modern-final-content{position:relative;z-index:2;max-width:760px}.modern-final-content h2{font-size:clamp(44px,6vw,78px);line-height:.96;letter-spacing:-3px;color:#fff;margin:14px 0 16px}.modern-final-content p{font-size:17px;color:rgba(255,255,255,.88);margin:0 auto 26px;max-width:590px}.modern-final-content>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.modern-final-content .btn{min-width:180px}
[data-modern-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s cubic-bezier(.22,.61,.36,1)}[data-modern-reveal].is-visible{opacity:1;transform:none}
@media(max-width:1100px){.modern-hero-inner{grid-template-columns:1fr 390px;gap:34px}.modern-mood-rail{grid-template-columns:repeat(3,minmax(0,1fr))}.modern-mood-card:nth-child(n+4){min-height:300px}.modern-editorial-grid,.modern-editorial-grid.reverse{gap:42px}.modern-local-copy{padding:46px 36px}.modern-review-head{grid-template-columns:150px minmax(0,1fr)}}
@media(max-width:900px){.modern-hero{min-height:auto}.modern-hero-inner{grid-template-columns:1fr;padding-top:120px;padding-bottom:38px}.modern-hero-copy{padding-top:80px}.modern-hero-copy h1{font-size:clamp(48px,10vw,70px)}.modern-search-card{max-width:620px}.modern-trust-row{grid-template-columns:repeat(3,1fr)}.modern-trust-row>div:nth-child(3){border-right:0}.modern-trust-row>div:nth-child(n+4){border-top:1px solid #edf1f3}.modern-mood-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-right:-24px;padding-right:24px;scrollbar-width:none}.modern-mood-rail::-webkit-scrollbar{display:none}.modern-mood-card{flex:0 0 48%;scroll-snap-align:start}.modern-editorial-grid,.modern-editorial-grid.reverse{grid-template-columns:1fr}.modern-editorial-grid.reverse .modern-editorial-copy{order:2}.modern-editorial-grid.reverse .modern-editorial-media{order:1}.modern-editorial-media{min-height:460px}.modern-review-head{grid-template-columns:1fr auto}.modern-review-score{grid-column:1/-1;border-right:0;border-bottom:1px solid rgba(255,255,255,.16);padding:0 0 15px}.modern-review-rail article{flex-basis:60%}.modern-local-card{grid-template-columns:1fr}.modern-local-photo{min-height:430px}.modern-local-photo:after{background:linear-gradient(180deg,transparent 70%,rgba(14,52,72,.5))}}
@media(max-width:640px){.modern-hero-inner{padding-left:18px;padding-right:18px;padding-bottom:22px}.modern-hero-copy{padding-top:62px}.modern-hero-copy h1{letter-spacing:-2.5px}.modern-hero-copy>p{font-size:15px}.modern-search-card{padding:11px;border-radius:18px}.modern-search-grid,.modern-transfer-grid{grid-template-columns:1fr 1fr}.modern-search-grid label:first-child{grid-column:1/-1}.modern-search-assurance{gap:7px 11px}.modern-trust-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.modern-trust-row>div{flex:0 0 210px;border-right:1px solid #edf1f3!important;border-top:0!important;scroll-snap-align:start}.modern-home .featured-tours-section{padding:54px 0!important}.modern-section,.modern-editorial,.modern-local{padding:60px 0}.modern-section-head{align-items:flex-start;flex-direction:column;gap:12px}.modern-section-head h2,.modern-editorial-copy h2{letter-spacing:-1.6px}.modern-mood-card{flex-basis:78%;min-height:360px}.modern-editorial-grid{gap:28px}.modern-editorial-media{min-height:380px;border-radius:20px}.modern-editorial-copy>p{font-size:15px}.modern-review-head{grid-template-columns:1fr}.modern-review-head>a{justify-self:start}.modern-review-rail article{flex-basis:86%;min-width:0}.modern-local-card{border-radius:0;margin-left:-18px;margin-right:-18px}.modern-local-photo{min-height:330px}.modern-local-copy{padding:38px 24px 44px}.modern-local-facts{grid-template-columns:1fr}.modern-final-cta{min-height:480px}.modern-final-content h2{letter-spacing:-2px}}
@media(prefers-reduced-motion:reduce){[data-modern-reveal]{opacity:1!important;transform:none!important;transition:none!important}.modern-mood-card img,.modern-editorial-media img{transition:none!important}}

/* V10.87 — International Home: compact booking-platform storefront */
.international-home{background:#fff;color:#17384b}
.international-hero{position:relative;min-height:520px;display:flex;align-items:end;overflow:hidden;background:#0c2c43}
.international-hero-media{position:absolute;inset:0}.international-hero-media img{width:100%;height:100%;object-fit:cover;display:block}.international-hero-media>span{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,31,48,.78) 0%,rgba(5,31,48,.46) 45%,rgba(5,31,48,.18) 72%,rgba(5,31,48,.08) 100%)}
.international-hero-inner{position:relative;z-index:2;width:100%;padding-top:110px;padding-bottom:40px}.international-hero-copy{max-width:720px;color:#fff;margin-bottom:30px}.international-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900;color:#d8eeee;margin-bottom:10px}.international-hero-copy h1{margin:0;font-size:clamp(44px,6vw,78px);line-height:.98;letter-spacing:-.045em;color:#fff}.international-hero-copy p{margin:18px 0 0;max-width:640px;font-size:18px;line-height:1.55;color:#e7f0f4}
.international-search{display:grid;grid-template-columns:1fr 1.55fr .78fr .66fr auto;gap:0;align-items:stretch;background:#fff;border-radius:16px;padding:8px;box-shadow:0 20px 60px rgba(2,22,35,.22);max-width:1180px}.international-search label{display:grid;align-content:center;gap:2px;padding:5px 14px;border-right:1px solid #e3eaee}.international-search label>span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:#74858f}.international-search .field{border:0!important;box-shadow:none!important;padding:3px 0!important;background:transparent!important;font-size:14px;font-weight:800;color:#17384b;min-width:0}.international-search-button{min-width:126px;border-radius:11px!important;font-weight:900!important}
.international-trust{border-bottom:1px solid #e8eef1;background:#fff}.international-trust .container{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.international-trust span{font-size:13px;font-weight:800;color:#415a68}
.international-featured .featured-tours-section{padding-top:64px!important;padding-bottom:58px!important;background:#f6f8fa!important}.international-featured .featured-tours-section .section-head{margin-bottom:22px}.international-featured .featured-tours-section .section-head h2{font-size:clamp(30px,3.6vw,46px)}
.international-categories{padding:64px 0}.international-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.international-section-head span{display:block;text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:900;color:#30858a;margin-bottom:5px}.international-section-head h2{margin:0;font-size:clamp(28px,3.2vw,42px);line-height:1.05;color:#17384b}.international-section-head>a{font-weight:900;color:#17384b;text-decoration:none;white-space:nowrap}
.international-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.international-category-card{position:relative;min-height:270px;border-radius:18px;overflow:hidden;color:#fff;text-decoration:none;background:#17384b}.international-category-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.international-category-card .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,25,38,.02) 30%,rgba(5,25,38,.82) 100%)}.international-category-card>div{position:absolute;left:18px;right:18px;bottom:17px}.international-category-card small{display:block;text-transform:uppercase;letter-spacing:.09em;font-weight:900;font-size:10px;color:#dff0ef}.international-category-card strong{display:block;font-size:22px;line-height:1.05;margin:4px 0 6px}.international-category-card p{margin:0;color:#e8f1f4;font-size:13px;line-height:1.4}.international-category-card:hover img{transform:scale(1.035)}
.international-personalized{padding:56px 0;background:#f5f9f9;border-top:1px solid #e4eded;border-bottom:1px solid #e4eded}.international-personal-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:18px}.international-upcoming-card{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px;border:1px solid #d9e7e8;border-radius:18px;background:#fff}.international-upcoming-card .status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e6f5ef;color:#1c7550;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.international-upcoming-card h3{margin:9px 0 5px;font-size:22px}.international-upcoming-card p,.international-upcoming-card small{margin:0;color:#687d89}.international-recommendations{padding:20px;border:1px solid #d9e7e8;border-radius:18px;background:#fff}.international-recommendations>span{display:block;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#70838f;margin-bottom:12px}.international-recommendations>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.international-recommendations a{display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto;gap:2px 9px;text-decoration:none;color:#17384b;align-items:center}.international-recommendations img{grid-row:1/3;width:72px;height:64px;object-fit:cover;border-radius:10px}.international-recommendations b{font-size:13px;line-height:1.25}.international-recommendations small{color:#738691;font-size:11px}
.international-proof{padding:64px 0}.international-proof-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:22px;align-items:start}.international-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.international-review-grid article{padding:20px;border:1px solid #dfe8ed;border-radius:16px;background:#fff}.international-review-grid .stars{color:#0b9b69;font-weight:900;letter-spacing:.04em}.international-review-grid p{margin:10px 0 14px;color:#405968;line-height:1.55}.international-review-grid small{font-weight:800;color:#71848f}.international-why-book{padding:24px;border-radius:18px;background:#0f384c;color:#fff}.international-why-book>span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#9ed4d4}.international-why-book h3{font-size:26px;line-height:1.08;margin:7px 0 18px;color:#fff}.international-why-book ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}.international-why-book li{display:grid;grid-template-columns:22px 1fr;gap:9px;align-items:start}.international-why-book li>b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#2a9a69;font-size:11px}.international-why-book li strong,.international-why-book li small{display:block}.international-why-book li small{margin-top:2px;color:#c7d8df}
@media(max-width:1080px){.international-search{grid-template-columns:1fr 1.35fr 1fr 1fr}.international-search-button{grid-column:1/-1;min-height:46px;margin-top:6px}.international-search label:nth-of-type(4){border-right:0}.international-category-grid{grid-template-columns:1fr 1fr}.international-personal-grid,.international-proof-grid{grid-template-columns:1fr}}
@media(max-width:720px){.international-hero{min-height:620px}.international-hero-inner{padding-top:90px;padding-bottom:24px}.international-hero-copy h1{font-size:46px}.international-hero-copy p{font-size:16px}.international-search{grid-template-columns:1fr 1fr;border-radius:14px}.international-search label{border-right:0;border-bottom:1px solid #e3eaee}.international-search label.experience{grid-column:1/-1}.international-search-button{grid-column:1/-1}.international-trust .container{justify-content:flex-start;gap:12px 20px}.international-category-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.international-category-card{min-width:78vw;scroll-snap-align:start}.international-section-head{align-items:flex-start;flex-direction:column}.international-personal-grid{grid-template-columns:1fr}.international-upcoming-card{align-items:flex-start;flex-direction:column}.international-upcoming-card .btn{width:100%}.international-recommendations>div{grid-template-columns:1fr}.international-review-grid{grid-template-columns:1fr}}

/* V10.88 — Marketplace Home: simpler storefront below the unchanged V10.87 hero */
.marketplace-home{background:#fff;color:#17384b}
.marketplace-trust{background:#fff;border-bottom:1px solid #edf1f3}.marketplace-trust-inner{min-height:48px;display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}.marketplace-trust span{font-size:12px;font-weight:800;color:#526875;white-space:nowrap}.marketplace-trust b{color:#26877f;margin-right:4px}
.marketplace-featured .featured-tours-section{background:#fff!important;padding:58px 0 52px!important}.marketplace-featured .featured-tours-section .section-head{margin-bottom:20px}.marketplace-featured .featured-tours-section .section-head .eyebrow{font-size:10px}.marketplace-featured .featured-tours-section .section-head h2{font-size:clamp(28px,3vw,40px);letter-spacing:-1.1px;line-height:1.05}.marketplace-featured .featured-tours-section .section-head p{max-width:640px;font-size:14px;margin-top:7px}.marketplace-featured .premium-tour-card{box-shadow:none;border-color:#e3e9ed;border-radius:15px}.marketplace-featured .premium-tour-card:hover{box-shadow:0 12px 28px rgba(13,43,61,.08);transform:translateY(-2px)}.marketplace-featured .premium-tour-card .tour-card-media img{height:220px}.marketplace-featured .premium-tour-card .tour-card-body{padding:17px}.marketplace-featured .premium-tour-card h3{font-size:18px;min-height:44px;margin:7px 0 10px}.marketplace-featured .tour-card-description{display:none}.marketplace-featured .tour-price-row strong{font-size:21px}.marketplace-featured .price-disclaimer{font-size:9px;color:#9aa7ae}
.marketplace-browse{padding:50px 0 56px;background:#f7f8f9;border-top:1px solid #eff2f4;border-bottom:1px solid #eff2f4}.marketplace-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.marketplace-head>div>span{display:block;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;color:#2c8585;margin-bottom:5px}.marketplace-head h2{margin:0;font-size:clamp(27px,3vw,38px);line-height:1.05;letter-spacing:-1px;color:#17384b}.marketplace-head>a{font-size:13px;font-weight:900;text-decoration:none;color:#17384b;white-space:nowrap}
.marketplace-category-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.marketplace-category{display:grid;grid-template-columns:74px minmax(0,1fr) 20px;gap:12px;align-items:center;padding:10px;border:1px solid #e1e7eb;border-radius:15px;background:#fff;text-decoration:none;color:#17384b;min-height:94px;transition:border-color .18s,transform .18s,box-shadow .18s}.marketplace-category:hover{transform:translateY(-2px);border-color:#ccd9df;box-shadow:0 8px 22px rgba(12,43,62,.06)}.marketplace-category img{width:74px;height:72px;object-fit:cover;border-radius:11px}.marketplace-category strong{display:block;font-size:15px;line-height:1.15}.marketplace-category small{display:block;margin-top:4px;color:#7a8b94;font-size:11px;line-height:1.25}.marketplace-category i{font-style:normal;font-size:18px;color:#7b8b94}
.marketplace-account-strip{padding:28px 0 0}.marketplace-account-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:14px;padding:17px 18px;border:1px solid #dfe8ec;border-radius:15px;background:#fff}.marketplace-account-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eaf5f3;color:#247d76;font-weight:900}.marketplace-account-copy small,.marketplace-account-copy strong,.marketplace-account-copy span{display:block}.marketplace-account-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#348080}.marketplace-account-copy strong{font-size:15px;margin-top:2px}.marketplace-account-copy span{font-size:12px;color:#768993;margin-top:2px}.marketplace-account-card>a{font-size:13px;font-weight:900;color:#17384b;text-decoration:none;white-space:nowrap}
.marketplace-confidence{padding:58px 0 64px}.marketplace-confidence-inner{display:grid;grid-template-columns:220px minmax(0,1fr);gap:34px;align-items:center;padding-top:30px;border-top:1px solid #e8edef}.marketplace-rating small{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900;color:#71848f}.marketplace-rating strong{display:block;margin:3px 0 1px;font-size:31px;letter-spacing:-1px}.marketplace-rating strong span{color:#18a06f}.marketplace-rating p{margin:0 0 6px;color:#7b8b94;font-size:12px}.marketplace-rating a{font-size:12px;font-weight:900;color:#17384b;text-decoration:none}.marketplace-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.marketplace-benefits>div{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start}.marketplace-benefits>div>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e9f5ef;color:#168559;font-size:13px;font-weight:900}.marketplace-benefits p{margin:0}.marketplace-benefits strong,.marketplace-benefits small{display:block}.marketplace-benefits strong{font-size:13px}.marketplace-benefits small{margin-top:3px;color:#7b8b94;font-size:11px;line-height:1.35}
@media(max-width:1000px){.marketplace-category-row{grid-template-columns:1fr 1fr}.marketplace-confidence-inner{grid-template-columns:1fr}.marketplace-benefits{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.marketplace-trust-inner{justify-content:flex-start;gap:8px 18px;padding-top:12px;padding-bottom:12px}.marketplace-featured .featured-tours-section{padding:44px 0!important}.marketplace-head{align-items:flex-start;flex-direction:column;gap:10px}.marketplace-category-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px;scrollbar-width:none}.marketplace-category-row::-webkit-scrollbar{display:none}.marketplace-category{flex:0 0 78vw;scroll-snap-align:start}.marketplace-account-card{grid-template-columns:40px 1fr}.marketplace-account-card>a{grid-column:1/-1;padding-left:54px}.marketplace-confidence{padding:44px 0}.marketplace-benefits{grid-template-columns:1fr;gap:14px}}

/* V10.96 product-specific live Tripadvisor reviews */
.product-live-reviews{margin-bottom:28px;padding:28px;border:1px solid #dde6ea;border-radius:18px;background:#f7fafb;overflow:hidden}.product-live-reviews-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:20px}.product-live-reviews-head h2{margin:4px 0 7px;color:var(--navy);font-size:clamp(28px,3vw,40px);letter-spacing:-1px}.product-live-reviews-head p{margin:0;color:#6d7f8a}.product-live-review-summary{display:grid;justify-items:end;gap:3px;white-space:nowrap}.product-live-review-summary strong{font-size:25px;color:var(--navy)}.product-live-review-summary strong span{color:#f3b92d}.product-live-review-summary small{color:#71818b}.product-live-review-summary a{font-size:12px;font-weight:800;margin-top:5px}.product-review-viewport{overflow:hidden}.product-review-rail{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding:2px 1px 8px}.product-review-rail::-webkit-scrollbar{display:none}.product-review-card{flex:0 0 calc((100% - 28px)/3);scroll-snap-align:start;background:#fff;border:1px solid #dfe7eb;border-radius:14px;padding:20px;min-height:245px;display:flex;flex-direction:column;box-shadow:0 8px 24px rgba(16,45,63,.045)}.product-review-rating{min-height:22px}.product-review-card h3{font-size:18px;color:var(--navy);margin:11px 0 8px;line-height:1.2}.product-review-card p{margin:0;color:#526875;line-height:1.58;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.product-review-meta{margin-top:auto;padding-top:16px;display:flex;justify-content:space-between;gap:12px;align-items:end;font-size:11px;color:#83919a}.product-review-meta a{font-weight:750}.product-review-controls{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:10px}.product-review-controls>button{width:38px;height:38px;border-radius:50%;border:1px solid #cedbe1;background:#fff;color:var(--navy);font-size:24px;display:grid;place-items:center;cursor:pointer}.product-review-controls>div{display:flex;gap:5px}.product-review-controls>div button{width:7px;height:7px;border:0;border-radius:50%;padding:0;background:#c1ccd2;cursor:pointer}.product-review-controls>div button.active{background:var(--navy);transform:scale(1.2)}
@media(max-width:900px){.product-review-card{flex-basis:calc((100% - 14px)/2)}.product-live-reviews-head{align-items:flex-start}.product-live-review-summary{justify-items:start}}
@media(max-width:650px){.product-live-reviews{padding:20px 16px;border-radius:14px}.product-live-reviews-head{display:grid;gap:12px}.product-review-card{flex-basis:88%;min-height:230px}.product-review-controls{justify-content:space-between}.product-live-review-summary{white-space:normal}}

/* V11.01 Professional About page */
.about-pro{background:#fff;color:var(--ink)}
.about-pro-hero{position:relative;min-height:640px;display:grid;align-items:end;overflow:hidden;background:#0b2a40;color:#fff}
.about-pro-hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.about-pro-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,31,48,.94) 0%,rgba(7,31,48,.77) 48%,rgba(7,31,48,.2) 78%,rgba(7,31,48,.08) 100%),linear-gradient(0deg,rgba(5,28,43,.55),transparent 45%)}
.about-pro-hero-inner{position:relative;z-index:2;padding:110px 0 86px}
.about-pro-hero-copy{max-width:780px}
.about-pro-hero .eyebrow{color:#7bd5d1}
.about-pro-hero h1{font-size:clamp(54px,6.2vw,86px);line-height:.96;letter-spacing:-3.2px;margin:12px 0 22px;color:#fff;max-width:900px}
.about-pro-hero p{font-size:19px;line-height:1.65;color:#d8e4ea;max-width:720px;margin:0}
.about-pro-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.about-pro-ghost{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.38);color:#fff}
.about-pro-ghost:hover{background:#fff;color:var(--ink)}
.about-pro-proof{background:#fff;border-bottom:1px solid #e1e8ec}
.about-pro-proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.about-pro-proof-grid>div{padding:28px 26px;border-right:1px solid #e1e8ec;display:grid;gap:4px}
.about-pro-proof-grid>div:first-child{padding-left:0}.about-pro-proof-grid>div:last-child{border-right:0;padding-right:0}
.about-pro-proof-grid small{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#7f909a;font-weight:850}
.about-pro-proof-grid strong{font-size:24px;letter-spacing:-.6px;color:var(--ink)}
.about-pro-proof-grid span{font-size:13px;color:#6d7e89}
.about-pro-story-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:70px;align-items:start}
.about-pro-story-copy h2,.about-pro-section-head h2,.about-pro-motion-copy h2,.about-pro-operations h2,.about-pro-award h2,.about-pro-final h2{font-size:clamp(38px,4.2vw,58px);line-height:1.02;letter-spacing:-2px;margin:10px 0 20px;color:var(--ink)}
.about-pro-story-copy p,.about-pro-section-head p,.about-pro-motion-copy p,.about-pro-operations p,.about-pro-award p,.about-pro-final p{font-size:16px;line-height:1.72;color:#5c707d}
.about-pro-lead{font-size:18px!important;color:#354e5e!important}
.about-pro-timeline{display:grid;gap:0;border-left:1px solid #d7e0e6;margin-left:18px}
.about-pro-timeline article{display:grid;grid-template-columns:56px 1fr;gap:18px;position:relative;padding:0 0 30px 28px}
.about-pro-timeline article:last-child{padding-bottom:0}
.about-pro-timeline article>span{position:absolute;left:-21px;top:0;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900;border:5px solid #fff;box-shadow:0 0 0 1px #d8e1e6}
.about-pro-timeline article>div{grid-column:2}
.about-pro-timeline small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--coral);font-weight:900}
.about-pro-timeline h3{font-size:21px;margin:4px 0 8px;color:var(--ink)}
.about-pro-timeline p{margin:0;color:#687b86;font-size:14px;line-height:1.6}
.about-pro-section-head{max-width:850px;margin-bottom:34px}
.about-pro-brand-grid{display:grid;grid-template-columns:1fr 120px 1fr;gap:24px;align-items:stretch}
.about-pro-brand-card{border-radius:22px;padding:34px;min-height:390px;display:flex;flex-direction:column}
.about-pro-brand-card.primary{background:var(--ink);color:#fff}.about-pro-brand-card.motion{background:#fff;border:1px solid #dce5ea}
.about-pro-brand-tag{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#67d4cf}
.about-pro-brand-card.motion .about-pro-brand-tag{color:var(--coral)}
.about-pro-brand-card h3{font-size:36px;line-height:1;margin:13px 0 18px;letter-spacing:-1px;color:inherit}
.about-pro-brand-card p{line-height:1.68;font-size:15px;margin:0 0 22px;color:#d6e0e6}.about-pro-brand-card.motion p{color:#5d707c}
.about-pro-brand-card ul{list-style:none;padding:0;margin:auto 0 0;display:grid;gap:10px}
.about-pro-brand-card li{position:relative;padding-left:23px;font-size:14px;font-weight:750}.about-pro-brand-card li:before{content:'✓';position:absolute;left:0;color:#67d4cf}.about-pro-brand-card.motion li:before{color:#1b8754}
.about-pro-brand-link{display:grid;place-items:center;align-content:center;text-align:center;color:#6e818c;gap:8px}
.about-pro-brand-link b{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #dce5ea;color:var(--ink);font-size:25px}
.about-pro-brand-link span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.about-pro-brand-link small{font-size:11px}
.about-pro-brand-note{margin-top:24px;border-left:4px solid var(--cyan);background:#fff;padding:18px 20px;border-radius:0 12px 12px 0;color:#58707d;font-size:14px;line-height:1.65}
.about-pro-brand-note strong{color:var(--ink)}
.about-pro-motion-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:58px;align-items:center}
.about-pro-motion-photo{position:relative;border-radius:24px;overflow:hidden;background:#eef3f5;min-height:580px}
.about-pro-motion-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.about-pro-motion-photo span{position:absolute;left:20px;bottom:20px;background:rgba(255,255,255,.93);color:var(--ink);padding:11px 15px;border-radius:12px;font-size:12px;font-weight:850;box-shadow:0 10px 30px rgba(8,39,58,.12)}
.about-pro-checks{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:26px}.about-pro-checks span{border:1px solid #dde6ea;border-radius:12px;padding:13px 14px;font-size:13px;font-weight:800;color:#36505f;background:#fff}
.about-pro-flow-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.about-pro-flow-grid article{background:#fff;border:1px solid #dfe7eb;border-radius:16px;padding:22px;min-height:250px}
.about-pro-flow-grid article>span{font-size:12px;font-weight:900;color:var(--coral)}
.about-pro-flow-grid h3{font-size:19px;line-height:1.12;margin:34px 0 10px;color:var(--ink)}
.about-pro-flow-grid p{font-size:13px;line-height:1.6;color:#687b86;margin:0}
.about-pro-operations-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:54px;align-items:stretch}
.about-pro-operation-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.about-pro-operation-cards article{border:1px solid #dfe6eb;border-radius:14px;padding:18px;background:#fff;display:grid;gap:7px}
.about-pro-operation-cards b{color:var(--ink);font-size:15px}.about-pro-operation-cards span{font-size:13px;line-height:1.55;color:#6a7c87}
.about-pro-operations-photo{position:relative;border-radius:22px;overflow:hidden;min-height:560px;background:#eef2f4}
.about-pro-operations-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.about-pro-operations-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,28,43,.78),transparent 52%)}
.about-pro-operations-photo>div{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;color:#fff;display:grid;gap:5px}.about-pro-operations-photo strong{font-size:22px}.about-pro-operations-photo span{font-size:13px;color:#dce6eb}
.about-pro-value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.about-pro-value-grid article{border:1px solid #dfe7eb;border-radius:16px;padding:24px;background:#fff}.about-pro-value-grid article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e8f7ee;color:#198350;font-weight:900;margin-bottom:25px}.about-pro-value-grid h3{font-size:19px;color:var(--ink);margin:0 0 9px}.about-pro-value-grid p{font-size:13px;line-height:1.58;color:#697b86;margin:0}
.about-pro-award{padding-top:24px}.about-pro-award-card{display:grid;grid-template-columns:110px 1fr auto;gap:34px;align-items:center;border:1px solid #dfe6ea;border-radius:24px;background:#f8fbf9;padding:34px}.about-pro-award-icon{width:96px;height:96px;border-radius:22px;overflow:hidden}.about-pro-award-icon img{width:100%;height:100%;object-fit:cover}.about-pro-award h2{font-size:42px;margin:5px 0 9px}.about-pro-award p{margin:0;max-width:760px}.about-pro-award-stats{display:flex;gap:20px;flex-wrap:wrap;margin-top:18px}.about-pro-award-stats span{font-size:12px;color:#647783}.about-pro-award-stats strong{font-size:15px;color:var(--ink)}
.about-pro-final{padding-bottom:0}.about-pro-final-card{background:var(--ink);border-radius:26px 26px 0 0;padding:48px 52px;display:flex;align-items:center;justify-content:space-between;gap:50px;color:#fff}.about-pro-final .eyebrow{color:#6ed7d3}.about-pro-final h2{color:#fff;margin-bottom:12px;max-width:720px}.about-pro-final p{color:#d6e1e6;max-width:760px;margin:0}.about-pro-final-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.about-pro-final .btn-outline.light{color:#fff;border-color:rgba(255,255,255,.4);background:transparent}.about-pro-final .btn-outline.light:hover{background:#fff;color:var(--ink)}
@media(max-width:1100px){.about-pro-proof-grid{grid-template-columns:1fr 1fr}.about-pro-proof-grid>div:nth-child(2){border-right:0}.about-pro-proof-grid>div:nth-child(-n+2){border-bottom:1px solid #e1e8ec}.about-pro-story-grid,.about-pro-motion-grid,.about-pro-operations-grid{grid-template-columns:1fr}.about-pro-brand-grid{grid-template-columns:1fr}.about-pro-brand-link{grid-template-columns:auto auto auto;justify-content:center;padding:3px 0}.about-pro-flow-grid{grid-template-columns:repeat(2,1fr)}.about-pro-value-grid{grid-template-columns:1fr 1fr}.about-pro-award-card{grid-template-columns:90px 1fr}.about-pro-award-card>.btn{grid-column:2;justify-self:start}.about-pro-final-card{align-items:flex-start;flex-direction:column}.about-pro-final-actions{justify-content:flex-start}}
@media(max-width:720px){.about-pro-hero{min-height:580px}.about-pro-hero-inner{padding:88px 0 62px}.about-pro-hero h1{font-size:48px;letter-spacing:-2.2px}.about-pro-hero p{font-size:16px}.about-pro-proof-grid{grid-template-columns:1fr}.about-pro-proof-grid>div{padding:20px 0;border-right:0;border-bottom:1px solid #e1e8ec}.about-pro-proof-grid>div:last-child{border-bottom:0}.about-pro-story-grid{gap:38px}.about-pro-timeline{margin-left:20px}.about-pro-brand-card{padding:26px;min-height:0}.about-pro-brand-card h3{font-size:30px}.about-pro-motion-photo{min-height:470px}.about-pro-checks,.about-pro-operation-cards,.about-pro-value-grid,.about-pro-flow-grid{grid-template-columns:1fr}.about-pro-flow-grid article{min-height:0}.about-pro-flow-grid h3{margin-top:22px}.about-pro-operations-photo{min-height:500px}.about-pro-award-card{grid-template-columns:1fr;gap:18px;padding:26px}.about-pro-award-card>.btn{grid-column:auto}.about-pro-award h2{font-size:34px}.about-pro-final-card{padding:36px 24px}.about-pro-final h2{font-size:38px}.about-pro-actions .btn,.about-pro-final-actions .btn{width:100%;justify-content:center}}

/* V11.04 · private admin preview ribbon */
.ue-admin-preview-ribbon{position:relative;z-index:10000;background:#ffcf66;color:#17384c;display:flex;align-items:center;justify-content:center;gap:14px;padding:9px 16px;font-size:12px;box-shadow:0 3px 14px rgba(0,0,0,.13)}.ue-admin-preview-ribbon strong{font-size:11px;letter-spacing:.08em}.ue-admin-preview-ribbon a{color:#17384c;text-decoration:none;font-weight:900;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.58)}@media(max-width:760px){.ue-admin-preview-ribbon{flex-wrap:wrap;gap:6px;justify-content:flex-start}.ue-admin-preview-ribbon span{width:100%}.ue-admin-preview-ribbon a{font-size:11px}}

/* V11.15 launch cleanup */
.launch-trust-row{grid-template-columns:repeat(4,minmax(0,1fr))!important}.booking-phone-row{grid-template-columns:minmax(0,1fr)!important}.booking-phone-row>div{max-width:620px}.booking-optional-details{margin:14px 0;border:1px solid #dfe8ed;border-radius:14px;background:#f8fbfc}.booking-optional-details summary{cursor:pointer;list-style:none;padding:14px 16px;font-weight:800;color:#17384b;display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-optional-details summary::-webkit-details-marker{display:none}.booking-optional-details summary:after{content:"+";font-size:20px}.booking-optional-details[open] summary:after{content:"−"}.booking-optional-details summary small{font-weight:500;color:#738590;margin-left:auto}.booking-optional-body{padding:0 16px 16px;display:grid;gap:14px}@media(max-width:800px){.launch-trust-row{grid-template-columns:1fr 1fr!important}.booking-optional-details summary small{display:none}}@media(max-width:520px){.launch-trust-row{grid-template-columns:1fr!important}}


/* V11.16 — public UX polish */
/* Tour cards: remove dead space and make the conversion action unmistakable. */
.premium-tour-card{display:flex;flex-direction:column;height:100%}
.premium-tour-card .tour-card-body{display:flex;flex:1;flex-direction:column}
.tour-card-booking-footer{display:grid;grid-template-columns:minmax(118px,.78fr) minmax(150px,1.22fr);gap:12px;align-items:stretch;margin-top:auto;padding-top:15px;border-top:1px solid #edf1f3}
.tour-card-price{display:flex;flex-direction:column;justify-content:center;min-width:0}
.tour-card-price>small{color:#82919a;font-size:9px;text-transform:uppercase;letter-spacing:.06em;line-height:1.35}
.tour-card-price strong,.tour-card-price .tour-price-line strong{display:block;color:#0c2c43;font-size:24px;line-height:1.05;margin:2px 0}
.tour-card-availability{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:54px;padding:12px 14px;border-radius:12px;background:#0c2c43;color:#fff!important;font-size:12px;font-weight:900;text-decoration:none;box-shadow:0 8px 18px rgba(12,44,67,.13);transition:transform .18s ease,background .18s ease}
.tour-card-availability:hover{background:#153f56;transform:translateY(-1px)}.tour-card-availability span{font-size:18px;line-height:1}
.tour-card-offer-inline{display:inline-flex!important;width:max-content;margin-bottom:4px;padding:4px 7px;border-radius:999px;background:#fff0ee;color:#c74842!important;font-size:8px!important;font-weight:950!important;letter-spacing:.03em!important;text-transform:uppercase}
.tour-old-price{color:#8e9aa1!important;text-decoration:line-through;text-transform:none!important;letter-spacing:0!important}

/* Home carousel: 3 visible desktop, additional experiences rotate; edge preview on mobile. */
.home-featured-viewport{padding:3px 2px 8px;margin:-3px -2px -8px}
.home-featured-arrow{top:42%}.home-featured-footer{margin-top:19px}
@media(max-width:700px){.home-featured-viewport{overflow:hidden;clip-path:none;margin-right:-16px;padding-right:16px}.home-featured-track>[data-home-featured-card]{flex-basis:88%}.home-featured-footer{padding:0 50px 0 0;justify-content:flex-start}.home-featured-arrow.prev{display:none}.home-featured-arrow.next{right:2px;bottom:-1px}.premium-tour-card .tour-card-media img{height:220px}}

/* Catalog: compact, useful filters instead of a stretched empty row. */
.international-filter-bar{grid-template-columns:minmax(240px,1.45fr) repeat(4,minmax(145px,.62fr)) auto auto;align-items:end}
.catalog-clear-btn{min-height:50px;border:1px solid #d8e3e8;border-radius:10px;background:#fff;color:#536b79;padding:0 14px;font-size:11px;font-weight:900;cursor:pointer;white-space:nowrap}.catalog-clear-btn:hover{background:#f4f8f9;color:#17384b}
.tours-catalog-grid{align-items:stretch}.catalog-count{align-self:stretch;display:flex;flex-direction:column;justify-content:center;border-left:1px solid #e3e9ed}
@media(max-width:1280px){.international-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-search-wrap{grid-column:span 2}.catalog-count{border-left:0;border-top:1px solid #e3e9ed;padding-top:10px}}
@media(max-width:780px){.international-filter-bar{grid-template-columns:1fr 1fr}.catalog-search-wrap{grid-column:1/-1}.catalog-clear-btn{grid-column:1/2}.catalog-count{grid-column:2/3!important;border-top:0!important;border-left:1px solid #e3e9ed!important;padding:4px 0 4px 14px!important}}
@media(max-width:520px){.international-filter-bar{grid-template-columns:1fr}.catalog-search-wrap,.catalog-clear-btn,.catalog-count{grid-column:1!important}.catalog-count{border-left:0!important;border-top:1px solid #e3e9ed!important;padding:10px 0 0!important}.tour-card-booking-footer{grid-template-columns:1fr}.tour-card-availability{min-height:50px}}

/* Product conversion card: no ambiguous empty half around From / CTA. */
.trip-price-label-row{display:flex;justify-content:space-between;gap:10px;align-items:center}.trip-price-label-row>span{font-size:13px;color:#607684;font-weight:850}.trip-price-label-row>small{font-size:9px;color:#83939c;text-transform:uppercase;letter-spacing:.07em;font-weight:900}
.trip-booking-price .trip-sale-price{display:flex;align-items:baseline;gap:8px}.trip-booking-price .trip-sale-price strong{font-size:34px!important;letter-spacing:-1.1px}.trip-booking-card .product-booking-primary{min-height:52px!important;font-size:16px!important}
.product-related-section{margin:78px 0 34px;padding-top:66px;border-top:1px solid #e6ecef}.product-related-head{align-items:end}.product-related-head p{max-width:680px}.product-related-carousel{margin-top:24px}

/* Checkout: keep the chosen product visible on small screens without duplicating the desktop recap. */
.checkout-mobile-summary{display:none;margin:0 0 16px;padding:14px 15px;border:1px solid #dce6ea;border-radius:14px;background:#f8fbfc;align-items:center;justify-content:space-between;gap:16px}.checkout-mobile-summary span,.checkout-mobile-summary strong,.checkout-mobile-summary small{display:block}.checkout-mobile-summary span{font-size:8px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:#78909c}.checkout-mobile-summary strong{margin-top:3px;color:#17384b;font-size:14px;line-height:1.25}.checkout-mobile-summary small{margin-top:4px;color:#6f818c;font-size:10px}.checkout-mobile-summary>b{white-space:nowrap;color:#0c2c43;font-size:20px}
@media(max-width:900px){.checkout-mobile-summary{display:flex}.booking-recap{position:static}.product-related-section{margin-top:56px;padding-top:48px}}
@media(max-width:600px){.checkout-progress{overflow:auto;padding-bottom:4px}.checkout-panel{padding-left:16px!important;padding-right:16px!important}.payment-choice-body{grid-template-columns:1fr!important}.payment-choice-money{text-align:left!important;margin-top:8px}.product-related-section{margin-bottom:70px}}


/* V11.18 — FINAL VISUAL POLISH
   One public design system: deep navy for structure, ocean blue for navigation,
   turquoise for focus/support, coral for conversion, green only for semantic success. */
:root{
 --brand-deep:#0c2c43;--brand-blue:#114573;--brand-aqua:#57cccd;--brand-aqua-dark:#2d8f98;
 --brand-coral:#fc6864;--brand-coral-dark:#f55e5a;--brand-aqua-soft:#eaf8f8;--brand-coral-soft:#fff1f0;
 --ink:#17384b;--muted:#687c88;--line:#dce6eb;--soft:#f6fafb;--success:#16804a;
 --radius-control:12px;--radius-card:16px;--radius-panel:22px;
 --shadow-soft:0 10px 30px rgba(12,44,67,.07);--shadow-raised:0 20px 48px rgba(12,44,67,.12)
}

/* Controls and CTA hierarchy */
.btn{border-radius:var(--radius-control);transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}
.btn-primary{background:var(--brand-blue)!important;border-color:var(--brand-blue)!important;color:#fff!important}
.btn-primary:hover{background:var(--brand-deep)!important;border-color:var(--brand-deep)!important}
.btn-coral,.tour-card-availability,.dock-search-button,.booking-checkout-section .checkout-submit,
.product-head-booking .product-booking-primary,.availability-inline .availability-check-btn,
.mobile-product-bookbar .btn-coral{background:var(--brand-coral)!important;border-color:#f55e5a!important;color:var(--brand-deep)!important;box-shadow:0 8px 20px rgba(252,104,100,.20)!important}
.btn-coral:hover,.tour-card-availability:hover,.dock-search-button:hover,.booking-checkout-section .checkout-submit:hover,
.product-head-booking .product-booking-primary:hover,.availability-inline .availability-check-btn:hover,.mobile-product-bookbar .btn-coral:hover{background:#f55e5a!important;border-color:#f55e5a!important;transform:translateY(-1px);filter:none!important}
.btn-green{background:var(--brand-aqua)!important;border-color:#3caeb0!important;color:var(--brand-deep)!important}
.btn-green:hover{background:#69d4d5!important;border-color:#3caeb0!important}
.btn-outline{background:#fff!important;border-color:#cfdce3!important;color:var(--brand-blue)!important}
.btn-outline:hover{border-color:var(--brand-aqua-dark)!important;background:#f5fbfb!important}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(87,204,205,.34);outline-offset:2px}
.field,.form-field{border-radius:var(--radius-control)!important}
.field:focus,.input:focus,.form-field:focus,.dock-input-shell:focus-within{border-color:var(--brand-aqua)!important;box-shadow:0 0 0 3px rgba(87,204,205,.13)!important}
input[type="checkbox"],input[type="radio"]{accent-color:var(--brand-blue)}

/* Header: cleaner hierarchy and consistent icons. */
.announcement,.announcement-premium{background:var(--brand-deep)!important}
.site-header,.site-header-premium{border-bottom-color:#e3ebef!important}
.navlinks a:hover,.navlinks a.active{color:var(--brand-blue)!important;border-color:var(--brand-coral)!important}
.header-call-icon svg,.dock-tab-icon svg,.dock-input-shell>span svg,.mobile-quick-action span svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.dock-tab-icon svg,.mobile-quick-action span svg{width:15px;height:15px}
.header-call-icon{font-size:0!important}.header-call-icon svg{width:15px;height:15px}
.dock-input-shell>span{display:grid;place-items:center}.dock-input-shell>span svg{width:16px;height:16px}
.dock-search-button{box-shadow:none!important}

/* Home hero: less visual noise, stronger search hierarchy. */
.modern-hero-copy h1{max-width:780px}
.modern-hero-chips{gap:8px!important}.modern-hero-chips span{background:rgba(255,255,255,.09)!important;border-color:rgba(255,255,255,.20)!important;backdrop-filter:blur(8px)}
.modern-search-card{border-radius:var(--radius-panel)!important;box-shadow:0 24px 58px rgba(5,30,47,.24)!important}
.modern-search-tabs{border-radius:14px!important}.modern-search-tabs button{border-radius:10px!important}
.modern-search-title small{background:var(--brand-aqua-soft)!important;color:#246a6d!important}
.modern-search-grid .field,.modern-transfer-grid .field{border-radius:var(--radius-control)!important}
.modern-search-submit{border-radius:var(--radius-control)!important}
.modern-search-assurance{color:#627985!important}
.modern-trust-row b{background:var(--brand-aqua-soft)!important;color:var(--brand-blue)!important}
.modern-trust-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.hero-dot.active{background:var(--brand-aqua)!important}
.eyebrow,.step-card .n{color:var(--brand-coral-dark)!important}
.hero-eyebrow{color:#8ce4e1!important}
.confidence-grid strong,.section-head h2,.tour-card h3,.tour-price-row strong,.product-head h1,.content-block h2{color:var(--brand-blue)!important}

/* Tour cards: one height, offer on image, no dead area around price. */
.tour-card,.premium-tour-card{border:1px solid #dce6eb!important;border-radius:var(--radius-card)!important;overflow:hidden;background:#fff;box-shadow:0 7px 22px rgba(12,44,67,.035);display:flex;flex-direction:column;height:100%}
.premium-tour-card .tour-card-body{display:flex;flex:1;flex-direction:column}
.premium-tour-card .tour-card-media{position:relative;overflow:hidden}.premium-tour-card .tour-card-media img{transition:transform .35s ease}.premium-tour-card:hover .tour-card-media img{transform:scale(1.025)}
.premium-tour-card h3{min-height:46px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tour-card-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:42px}
.tour-offer-badge{position:absolute;right:12px;top:12px;z-index:3;padding:7px 10px;border-radius:999px;background:var(--brand-coral)!important;color:var(--brand-deep)!important;font-size:10px;font-weight:950;letter-spacing:.03em;box-shadow:0 7px 18px rgba(0,0,0,.14)}
.tour-card-booking-footer{display:grid;grid-template-columns:minmax(112px,.72fr) minmax(158px,1.28fr);gap:12px;align-items:stretch;margin-top:auto;padding-top:15px;border-top:1px solid #e7eef1!important}
.tour-card-price{display:flex;flex-direction:column;justify-content:center;min-width:0}.tour-card-price>small{color:#7d8d96;font-size:9px;text-transform:uppercase;letter-spacing:.06em;line-height:1.35}
.tour-card-price strong,.tour-card-price .tour-price-line strong{display:block;color:var(--brand-blue)!important;font-size:24px;line-height:1.05;margin:2px 0}
.tour-old-price{color:#8e9aa1!important;text-decoration:line-through;text-transform:none!important;letter-spacing:0!important}
.tour-card-offer-inline{display:none!important}
.tour-card-availability{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:54px;padding:12px 14px;border-radius:var(--radius-control)!important;font-size:12px;font-weight:900;text-decoration:none}

/* Home / related carousels. */
.home-featured-carousel{position:relative}.home-featured-viewport{overflow:hidden;border-radius:18px;padding:3px 2px 8px;margin:-3px -2px -8px}
.home-featured-track{gap:22px;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.home-featured-arrow{top:42%;width:42px;height:42px;color:var(--brand-blue)!important;border-color:#d8e4e9!important;box-shadow:0 8px 20px rgba(13,44,63,.12)}
.home-featured-arrow:hover{border-color:var(--brand-aqua)!important}.home-featured-footer{margin-top:18px}.home-featured-dots button.active{background:var(--brand-aqua-dark)!important}

/* Tours catalog: search first, secondary filters collapsible on mobile. */
.international-filter-bar{display:grid!important;grid-template-columns:minmax(260px,1.25fr) auto!important;gap:12px!important;align-items:end!important}
.catalog-search-wrap{min-width:0}.catalog-mobile-filter-toggle{display:none;min-height:50px;border:1px solid #d8e3e8;border-radius:var(--radius-control);background:#fff;color:var(--brand-blue);padding:0 14px;font-weight:900;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.catalog-mobile-filter-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.catalog-secondary-filters{display:grid;grid-template-columns:repeat(4,minmax(145px,1fr)) auto auto;gap:12px;align-items:end}
.catalog-secondary-filters:not(.has-destination){grid-template-columns:repeat(3,minmax(145px,1fr)) auto auto}
.catalog-secondary-filters>.catalog-filter-wrap:first-child:last-child{grid-column:auto}.catalog-clear-btn{min-height:50px;border:0!important;background:transparent!important;color:#647985!important;padding:0 8px!important;text-decoration:underline;text-underline-offset:3px;border-radius:0!important}
.catalog-clear-btn:hover{color:var(--brand-blue)!important;background:transparent!important}.catalog-count{border-left:1px solid #e3e9ed;padding-left:14px;min-width:78px}

/* Product page: preserve photo impact and reduce oversized title pressure. */
.product-head h1{font-size:clamp(36px,4.2vw,56px)!important;line-height:1.02!important;letter-spacing:-1.8px!important}
.gallery,.product-gallery,.product-gallery-stage{border-radius:var(--radius-panel)!important}.product-head-booking{border-radius:var(--radius-card)!important;box-shadow:var(--shadow-soft)!important}
.product-booking-price,.product-booking-price>span,.product-booking-price>strong{color:var(--brand-blue)!important}

/* Availability: only Date + Travelers + Check availability above the fold. */
.availability-inline .ue-booking-head{display:grid!important;grid-template-columns:minmax(215px,.72fr) minmax(0,1.28fr)!important;align-items:center!important;gap:22px!important;padding:21px 24px!important;background:#fff!important;color:var(--brand-blue)!important;border-color:#dbe6eb!important;border-radius:18px 18px 0 0!important}
.availability-inline .ue-booking-title h3{color:var(--brand-blue)!important}.availability-inline .ue-booking-title p{color:#6a7e89!important}.availability-inline .booking-step-kicker{color:var(--brand-aqua-dark)!important}
.availability-inline .ue-booking-controls{display:grid!important;grid-template-columns:minmax(235px,1.15fr) minmax(175px,.82fr) minmax(190px,.92fr)!important;align-items:end!important;gap:12px!important;width:100%!important;min-width:0!important;margin:0!important}
.availability-language-display{display:none!important}.availability-inline .availability-picker-button,.availability-inline .availability-check-btn{height:52px!important;min-height:52px!important;border-radius:999px!important}
.availability-inline .availability-picker-button{border-color:#d6e2e7!important}.availability-inline .availability-picker-button:hover{border-color:var(--brand-aqua)!important;background:#fbfefe!important}
.availability-inline .ue-booking-body,.availability-inline .availability-expanded-content{background:#fff!important}
.book-ahead{background:var(--brand-aqua-soft)!important;color:#27576a!important;border-color:#d3eeee!important}.book-ahead-icon{background:#d2f1f1!important;color:var(--brand-deep)!important;display:grid;place-items:center}.book-ahead-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.package-card,.ue-option,.booking-step-card{border-color:#d7e2e8!important;border-radius:var(--radius-card)!important}.package-card.selected,.ue-option.active{border-color:var(--brand-blue)!important;box-shadow:0 0 0 2px rgba(87,204,205,.16)!important}.package-card.selected .package-radio:after{background:var(--brand-blue)!important}.ue-option.active .option-radio-ui{border-color:var(--brand-blue)!important}
.option-badge,.booking-secure-badge{background:var(--brand-aqua-soft)!important;color:#246a6d!important;border-color:#c6ecec!important}.availability-step-number{background:#eef6f8!important;color:var(--brand-blue)!important}.popular-tag{background:var(--brand-coral)!important;color:var(--brand-deep)!important}
.cal-day.selected,.calendar-day.selected{background:var(--brand-blue)!important;color:#fff!important}.cal-day:hover,.calendar-day:hover{background:#eff9f9!important}.traveler-update-btn{background:var(--brand-aqua)!important;color:var(--brand-deep)!important;border-color:#3caeb0!important}

/* Checkout: structure stays stable; only visual language is normalized. */
.booking-checkout-section{background:#f6f8fa!important}.booking-checkout-section .checkout-panel,.booking-checkout-section .booking-recap{border-radius:var(--radius-card)!important;border-color:#dce6eb!important;box-shadow:var(--shadow-soft)!important}
.booking-checkout-section .checkout-panel-head h2,.booking-checkout-section .payment-choice-money b,.booking-checkout-section .booking-recap-body h3,.booking-checkout-section .recap-total,.booking-checkout-section .recap-change-link{color:var(--brand-blue)!important}
.booking-checkout-section .checkout-section-number{background:var(--brand-blue)!important;color:#fff!important}.booking-checkout-section .payment-choice{border-color:#d8e3e8!important;border-radius:var(--radius-control)!important}.booking-checkout-section .payment-choice.selected{border-color:var(--brand-blue)!important;background:#f8fbfc!important;box-shadow:0 0 0 2px rgba(87,204,205,.13)!important}
.booking-checkout-section .payment-plan-badge,.booking-checkout-section .deposit-preview{background:var(--brand-aqua-soft)!important;color:#246a6d!important}.booking-checkout-section .checkout-trust-row{background:#f7fbfc!important;border-color:#dce9ed!important}.booking-checkout-section .terms-check input{accent-color:var(--brand-blue)!important}

/* Transfers and Contact now share the same card language as Tours. */
.transfer-planner-card,.transfer-result-card,.transfer-guide-card,.contact-panel,.contact-map-card{border-radius:var(--radius-card)!important;border-color:#dce6eb!important;box-shadow:var(--shadow-soft)!important}
.transfer-map-stage,.contact-map-frame{border-radius:var(--radius-panel)!important}.transfer-price-box{border-radius:var(--radius-control)!important;background:#f7fbfc!important;border-color:#dce8ed!important}.transfer-price-box strong{color:var(--brand-blue)!important}
.transfer-route-tag,.transfer-guide-badge{background:var(--brand-aqua-soft)!important;color:#246a6d!important}.transfer-swap-button svg,.transfer-map-status svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.transfer-map-status{display:flex;align-items:center;gap:7px;background:var(--brand-deep)!important}.transfer-card-actions .btn-coral{min-width:140px}
.contact-layout{align-items:stretch}.contact-panel{height:100%}.contact-form .btn-coral{min-width:170px}

/* About: fewer sections, calmer rhythm. */
.about-pro-story,.about-pro-brands,.about-pro-flow,.about-pro-award{padding-top:64px!important;padding-bottom:64px!important}.about-pro-brand-card,.about-pro-flow-grid article,.about-pro-award-card{border-radius:var(--radius-card)!important}.about-pro-award-card{background:#f8fbfc!important}.about-pro-brand-note{border-left-color:var(--brand-aqua)!important}.about-pro-final-card{border-radius:var(--radius-panel) var(--radius-panel) 0 0!important;background:var(--brand-deep)!important}

/* Itinerary and semantic states. */
.timeline-num,.itinerary-route-number,.route-pin{background:var(--brand-blue)!important;color:#fff!important}.timeline-num.start,.timeline-num.end,.itinerary-endpoint>span{background:var(--brand-aqua)!important;color:var(--brand-deep)!important;border-color:#319da0!important}.route-line{background:var(--brand-blue)!important}.itinerary-route-main{stroke:var(--brand-blue)!important}.itinerary-route-select small,.itinerary-see-route,.itinerary-map-footer a{color:var(--brand-aqua-dark)!important}.itinerary-map-marker{background:var(--brand-blue)!important}.itinerary-map-marker.active{background:var(--brand-coral-dark)!important}
.review-live-card,.confirmation-hero{background:var(--brand-deep)!important}.paid-text,.confirmation-check,.clean-list .yes,.header-whatsapp-icon{color:var(--success)}

/* Consistent radii and footer restraint. */
.review-card-db,.profile-booking-card,.payment-panel,.confirmation-card{border-radius:var(--radius-card)!important}.footer-proof-row{margin-bottom:34px!important}.footer-intro{padding-top:46px!important}

@media(max-width:1180px){
 .header-call-support strong,.header-call-support em{display:none}.header-call-support{width:42px;height:42px;padding:0!important;justify-content:center;border-radius:50%!important}.header-call-support small{display:none}.header-call-icon{width:32px!important;height:32px!important}
 .nav{gap:20px}.navlinks{gap:18px}.catalog-secondary-filters{grid-template-columns:repeat(3,minmax(140px,1fr)) auto auto}
 .availability-inline .ue-booking-head{grid-template-columns:1fr!important}.availability-inline .ue-booking-controls{grid-template-columns:minmax(220px,1fr) minmax(170px,.75fr) minmax(180px,.8fr)!important}
}
@media(max-width:900px){
 .modern-hero-chips{display:none!important}.modern-hero-copy h1{max-width:none}
 .international-filter-bar{grid-template-columns:1fr auto!important}.catalog-mobile-filter-toggle{display:flex}.catalog-secondary-filters{display:none;grid-column:1/-1;grid-template-columns:1fr 1fr!important;padding:14px;border:1px solid #dce6eb;border-radius:var(--radius-card);background:#fff;box-shadow:var(--shadow-soft)}.catalog-secondary-filters.is-open{display:grid}.catalog-clear-btn{justify-self:start}.catalog-count{border-left:0;border-top:1px solid #e3e9ed;padding:10px 0 0;grid-column:1/-1}
 .product-head h1{font-size:clamp(34px,7vw,48px)!important}.availability-inline .ue-booking-controls{grid-template-columns:1fr 1fr!important}.availability-inline .availability-check-btn{grid-column:1/-1!important}
}
@media(max-width:700px){
 .home-featured-viewport{overflow:hidden;clip-path:none;margin-right:-16px;padding-right:16px}.home-featured-track>[data-home-featured-card]{flex-basis:88%}.home-featured-footer{padding:0 50px 0 0;justify-content:flex-start}.home-featured-arrow.prev{display:none}.home-featured-arrow.next{right:2px;bottom:-1px}.premium-tour-card .tour-card-media img{height:220px}
 .tour-card-booking-footer{grid-template-columns:1fr}.tour-card-availability{min-height:50px}.premium-tour-card h3{min-height:auto}.tour-card-description{min-height:auto}
 .availability-inline .ue-booking-head{padding:18px!important}.availability-inline .ue-booking-controls{grid-template-columns:1fr!important}.availability-inline .availability-check-btn{grid-column:auto!important}
 .catalog-secondary-filters{grid-template-columns:1fr!important}.catalog-count{grid-column:auto}
 .transfer-result-top{align-items:flex-start!important}.transfer-price-box{min-width:125px!important}
}
@media(max-width:520px){
 .international-filter-bar{grid-template-columns:1fr auto!important}.catalog-mobile-filter-toggle{padding:0 12px}.product-head h1{font-size:36px!important;letter-spacing:-1.2px!important}
}

/* V11.18 icon normalization for assistant and payment reassurance. */
.ue-sales-launcher-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ue-sales-compose button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.secure-foot{display:flex;align-items:flex-start;gap:8px}.secure-foot-icon{display:grid;place-items:center;width:18px;height:18px;flex:0 0 18px;color:var(--brand-aqua-dark)}.secure-foot-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mobile-quick-action.primary{background:var(--brand-coral)!important;border-color:#f55e5a!important;color:var(--brand-deep)!important}.mobile-quick-action.primary svg{stroke:currentColor!important}
.trip-book-ahead{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;padding:16px!important;border:1px solid #f0d8d6!important;border-radius:var(--radius-card)!important;background:var(--brand-coral-soft)!important;color:var(--brand-deep)!important}.trip-book-ahead .book-ahead-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--brand-coral-dark);box-shadow:0 5px 14px rgba(198,75,72,.10)}.trip-book-ahead .book-ahead-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.trip-book-ahead p{margin:0!important}

/* ======================================================================
   V11.19 — Marketplace-style product detail pages
   Inspired by the information hierarchy of leading activity marketplaces,
   while using Universal Excursions' own brand palette and components.
   ====================================================================== */
.marketplace-product-page{background:#fff;color:var(--brand-deep)}
.marketplace-product-container{max-width:1280px}
.marketplace-breadcrumbs{padding:20px 0 12px;color:#758691}
.marketplace-product-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;padding:0 0 22px}
.marketplace-product-heading-copy{min-width:0;max-width:980px}
.marketplace-product-heading h1{margin:0;color:#102d48;font-size:clamp(32px,3.15vw,46px);line-height:1.04;letter-spacing:-1.35px;font-weight:900}
.marketplace-product-meta{display:flex;align-items:center;gap:10px 12px;flex-wrap:wrap;margin-top:12px;color:#667987;font-size:13px}
.marketplace-product-meta strong{color:#263f54}
.marketplace-rating-link{display:inline-flex;align-items:center;gap:5px;color:#172f4b;font-weight:850}
.marketplace-rating-link>span{font-size:18px;color:var(--brand-blue)}
.marketplace-review-link{color:#17384b;text-decoration:underline;text-underline-offset:3px;font-weight:800}
.marketplace-meta-divider{color:#a6b2b9}
.marketplace-product-actions{display:flex;align-items:center;gap:18px;flex:0 0 auto;padding-bottom:4px}
.marketplace-action-form{margin:0}
.marketplace-icon-action{appearance:none;border:0;background:transparent;padding:6px 0;display:inline-flex;align-items:center;gap:7px;color:#18344e;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px;cursor:pointer;white-space:nowrap}
.marketplace-icon-action svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.marketplace-icon-action.active{color:var(--brand-coral-dark)}
.marketplace-icon-action.active svg{fill:var(--brand-coral-soft)}

.marketplace-product-grid{display:grid;grid-template-columns:minmax(0,1fr) 342px;column-gap:28px;row-gap:0;align-items:start}
.marketplace-left-block{grid-column:1;min-width:0}
.marketplace-booking-column{grid-column:2;grid-row:1 / span 30;position:sticky;top:104px;align-self:start;z-index:8}
.marketplace-gallery-area{padding-bottom:22px}

/* Gallery mosaic: one dominant photo + four supporting photos. */
.marketplace-gallery.product-gallery{display:grid!important;grid-template-columns:minmax(0,1.8fr) minmax(260px,.9fr)!important;gap:8px!important;height:430px!important;position:relative}
.marketplace-gallery .product-gallery-stage{height:430px!important;min-width:0;border-radius:16px!important;overflow:hidden;background:#e7edf0;position:relative}
.marketplace-gallery .product-gallery-main{width:100%;height:100%;border:0;padding:0;background:#e7edf0;cursor:zoom-in;display:block}
.marketplace-gallery .product-gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,opacity .2s ease}
.marketplace-gallery .product-gallery-main:hover img{transform:scale(1.015)}
.marketplace-gallery .product-gallery-stage.is-changing img{opacity:.72}
.marketplace-gallery-grid.product-gallery-thumbs{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr 1fr!important;gap:8px!important;height:430px!important;overflow:hidden!important;padding:0!important;position:relative}
.marketplace-gallery-grid .product-gallery-thumb{display:block!important;width:auto!important;height:auto!important;min-width:0!important;border:0!important;border-radius:10px!important;padding:0!important;overflow:hidden;background:#e7edf0;position:relative;cursor:pointer;opacity:1!important;transform:none!important}
.marketplace-gallery-grid .product-gallery-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease,filter .2s ease}
.marketplace-gallery-grid .product-gallery-thumb:hover img{transform:scale(1.03);filter:brightness(.96)}
.marketplace-gallery-grid .product-gallery-thumb.active{box-shadow:inset 0 0 0 2px var(--brand-blue)!important}
.marketplace-gallery-placeholder{grid-column:1/-1;grid-row:1/-1;display:grid;place-items:center;border:1px dashed #cdd9df;border-radius:10px;background:#f6f9fa;color:#788a95;font-weight:750}
.marketplace-view-all{position:absolute;right:12px;bottom:12px;z-index:4;border:1px solid #cad5dc;background:rgba(255,255,255,.96);box-shadow:0 5px 16px rgba(10,44,67,.12);border-radius:999px;padding:9px 14px;color:#18344e;font-weight:850;display:flex;align-items:center;gap:7px;cursor:pointer}
.marketplace-view-all svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}
.marketplace-view-all span{color:#71828d;font-weight:750}
.marketplace-gallery .product-gallery-arrow{width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.95);color:#18344e;box-shadow:0 6px 18px rgba(7,35,53,.16);opacity:0;transition:opacity .18s ease,transform .18s ease}
.marketplace-gallery:hover .product-gallery-arrow,.marketplace-gallery .product-gallery-arrow:focus-visible{opacity:1}
.marketplace-gallery .product-gallery-prev{left:12px}.marketplace-gallery .product-gallery-next{right:12px}

/* Sticky marketplace booking card. */
.marketplace-booking-card{background:#fff;border:1px solid #d9e2e8;border-radius:16px;padding:20px 16px 18px;box-shadow:0 7px 24px rgba(13,47,72,.07)}
.marketplace-price-block{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;color:#5f7180;margin-bottom:12px}
.marketplace-price-block>span{font-size:14px}
.marketplace-price-block strong{font-size:29px;letter-spacing:-.8px;color:var(--brand-coral-dark);line-height:1}
.marketplace-price-block small{font-size:13px;color:#233d54}
.marketplace-price-old{text-decoration:line-through;color:#293f52;font-size:15px;font-weight:750}
.marketplace-offer-badge{display:inline-flex;margin:-2px 0 12px;padding:5px 9px;border-radius:999px;background:var(--brand-coral-soft);color:var(--brand-coral-dark);font-size:11px;font-weight:900}
.marketplace-booking-picker{width:100%;min-height:48px;border:0;border-radius:24px;background:#f0f3f5;color:#18344e;display:grid;grid-template-columns:28px minmax(0,1fr) 18px;gap:8px;align-items:center;text-align:left;padding:8px 14px;margin:0 0 8px;cursor:pointer;transition:background .18s ease,box-shadow .18s ease}
.marketplace-booking-picker:not(.is-static):hover{background:#e8eef1;box-shadow:inset 0 0 0 1px #d2dde3}
.marketplace-booking-picker.is-static{cursor:default}
.marketplace-picker-icon{display:grid;place-items:center;color:#193653}.marketplace-picker-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.marketplace-booking-picker>span:nth-child(2){min-width:0;display:grid;gap:1px}
.marketplace-booking-picker small{font-size:10px;line-height:1.05;color:#74848e;text-transform:uppercase;letter-spacing:.045em;font-weight:850}
.marketplace-booking-picker strong{font-size:14px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#17344e}
.marketplace-booking-picker>b{font-size:17px;color:#29445d;justify-self:end}
.marketplace-check-availability{width:100%;min-height:50px;border-radius:25px!important;margin:8px 0 16px!important;background:var(--brand-coral)!important;border-color:var(--brand-coral)!important;color:var(--brand-deep)!important;font-size:16px;font-weight:900;box-shadow:0 8px 18px rgba(252,104,100,.20)}
.marketplace-check-availability:hover{background:#f55e5a!important;border-color:#f55e5a!important}
.marketplace-booking-trust{border-top:1px solid #e1e7eb;padding-top:16px;display:grid;gap:14px}
.marketplace-booking-trust>div{display:grid;grid-template-columns:26px 1fr;gap:9px;align-items:start}
.marketplace-check-icon{color:#16804a}.marketplace-check-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.marketplace-booking-trust p{margin:0;display:grid;gap:2px;color:#42596c;font-size:12px;line-height:1.45}
.marketplace-booking-trust strong{color:#17344e;font-size:13px}.marketplace-booking-trust small{color:#6b7c87;font-size:11.5px;line-height:1.45}
.marketplace-local-operator{margin-top:16px;padding:13px 14px;border-radius:12px;background:#f6fafb;display:grid;gap:2px}
.marketplace-local-operator>span{color:#798a94;font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:850}.marketplace-local-operator strong{font-size:13px;color:#17344e}.marketplace-local-operator small{font-size:11px;color:#71818b}

.marketplace-intro{padding:0 0 24px;border-bottom:1px solid #e1e7eb}
.marketplace-intro p{font-size:16px;line-height:1.62;color:#263f54;margin:0;max-width:930px}
.marketplace-availability-panel{margin:22px 0 26px!important}
.marketplace-availability-panel[hidden]{display:none!important}

/* Quick-scan benefits. */
.marketplace-benefits{display:grid;grid-template-columns:1fr 1fr;gap:22px 34px;padding:26px 0 30px;border-bottom:1px solid #e1e7eb}
.marketplace-benefits article{display:grid;grid-template-columns:46px 1fr;gap:13px;align-items:start;min-width:0}
.marketplace-benefit-icon{width:46px;height:46px;border-radius:13px;background:#f0f4f6;color:#17344e;display:grid;place-items:center}
.marketplace-benefit-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.marketplace-benefits strong{display:block;color:#17344e;font-size:14px;margin:1px 0 3px}.marketplace-benefits p{margin:0;color:#687985;font-size:12.5px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Traveler review preview. */
.marketplace-reviews{padding:30px 0 34px;border-bottom:1px solid #e1e7eb}
.marketplace-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.marketplace-section-heading h2{margin:0 0 3px;font-size:21px;letter-spacing:-.35px;color:#102d48}.marketplace-section-heading p{margin:0;color:#778792;font-size:12px}.marketplace-section-heading>a{font-size:13px;color:#17344e;text-decoration:underline;text-underline-offset:4px;font-weight:850;white-space:nowrap}
.marketplace-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.marketplace-review-card{border:1px solid #dce4e9;border-radius:15px;padding:18px 19px;background:#fff;min-height:176px;display:flex;flex-direction:column}
.marketplace-review-author{display:grid;margin:10px 0 7px}.marketplace-review-author strong{font-size:13px;color:#17344e}.marketplace-review-author span{font-size:11px;color:#81909a}
.marketplace-review-card p{margin:0;color:#385165;font-size:12.5px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}

/* Itinerary section aligned with the reference layout. */
.marketplace-itinerary{padding:30px 0 34px;border-bottom:1px solid #e1e7eb}
.marketplace-itinerary .interactive-itinerary-layout{grid-template-columns:minmax(250px,.78fr) minmax(360px,1.22fr);gap:24px}
.marketplace-itinerary .itinerary-map-card{position:relative;top:auto;border-radius:12px;overflow:hidden;border:1px solid #dbe4e8;box-shadow:none}
.marketplace-itinerary .itinerary-map-frame{height:380px;border-radius:0!important}
.marketplace-itinerary .itinerary-timeline{padding-right:6px}
.marketplace-itinerary .itinerary-route-stop,.marketplace-itinerary .itinerary-endpoint{padding-bottom:18px}
.marketplace-itinerary .itinerary-route-select strong,.marketplace-itinerary .itinerary-route-copy>strong{font-size:14px;color:#18344e}.marketplace-itinerary .itinerary-route-select span,.marketplace-itinerary .itinerary-route-copy>span{font-size:11px;color:#73848f}.marketplace-itinerary .itinerary-stop-description p{font-size:11.5px;line-height:1.5;color:#657985}

/* Editorial information rows. */
.marketplace-detail-row{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:24px 0;border-bottom:1px solid #e1e7eb;scroll-margin-top:120px}
.marketplace-detail-row>h2{font-size:17px;color:#102d48;margin:0;line-height:1.25;letter-spacing:-.2px}
.marketplace-detail-row>div{min-width:0}
.marketplace-prose p{margin:0;color:#304a5f;font-size:13px;line-height:1.6}
.marketplace-bullet-list{margin:0;padding-left:18px;color:#304a5f;font-size:13px;line-height:1.65}
.marketplace-bullet-list.compact{margin-top:12px;font-size:12.5px}
.marketplace-inclusions{display:grid;gap:8px}.marketplace-inclusions ul{list-style:none;padding:0;margin:0;display:grid;gap:5px}.marketplace-inclusions li{display:grid;grid-template-columns:18px 1fr;gap:7px;color:#304a5f;font-size:13px;line-height:1.42}.marketplace-inclusions li span{font-weight:900}.marketplace-inclusions .yes span{color:#16804a}.marketplace-inclusions .no span{color:var(--brand-coral-dark)}
.marketplace-info-card{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}.marketplace-info-icon{width:40px;height:40px;border-radius:11px;background:#eff4f6;color:#17344e;display:grid;place-items:center}.marketplace-info-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.marketplace-info-card strong{display:block;color:#17344e;font-size:13px}.marketplace-info-card p{margin:4px 0 0;color:#526a79;font-size:12.5px;line-height:1.55}
.marketplace-ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}.marketplace-ticket-grid>div{display:grid;gap:3px}.marketplace-ticket-grid strong{color:#17344e;font-size:13px}.marketplace-ticket-grid span{color:#71818c;font-size:12px;line-height:1.45}
.marketplace-important-grid{display:grid;gap:18px}.marketplace-important-grid>div{display:grid;gap:4px}.marketplace-important-grid strong{font-size:13px;color:#17344e}.marketplace-important-grid p{margin:0;color:#526a79;font-size:12.5px}
.marketplace-support-box{border:1px solid #dce5ea;border-radius:14px;background:#f8fafb;padding:16px 18px;display:flex;justify-content:space-between;gap:18px;align-items:center}.marketplace-support-box strong{color:#17344e;font-size:13px}.marketplace-support-box p{margin:4px 0 0;color:#657985;font-size:12px}.marketplace-support-actions{display:flex;gap:8px;flex:0 0 auto}.marketplace-support-actions .btn{padding:9px 12px;font-size:12px}
.marketplace-related{padding-top:48px!important;margin-top:10px}.marketplace-related .section-head h2{font-size:34px}
.marketplace-mobile-bookbar{display:none}

@media(max-width:1080px){
 .marketplace-product-grid{grid-template-columns:minmax(0,1fr) 318px;column-gap:20px}
 .marketplace-gallery.product-gallery{grid-template-columns:minmax(0,1.65fr) minmax(220px,.85fr)!important;height:390px!important}
 .marketplace-gallery .product-gallery-stage,.marketplace-gallery-grid.product-gallery-thumbs{height:390px!important}
 .marketplace-product-heading h1{font-size:clamp(31px,3.7vw,42px)}
 .marketplace-booking-column{top:96px}
 .marketplace-detail-row{grid-template-columns:150px minmax(0,1fr)}
}

@media(max-width:900px){
 .marketplace-product-heading{align-items:flex-start}.marketplace-product-actions{padding-top:4px}
 .marketplace-product-grid{display:flex;flex-direction:column;gap:0}
 .marketplace-gallery-area{order:1;width:100%}.marketplace-booking-column{order:2;position:static;width:100%;margin:0 0 24px}.marketplace-intro{order:3;width:100%}.marketplace-availability-panel{order:4;width:100%}.marketplace-benefits{order:5;width:100%}.marketplace-reviews{order:6;width:100%}.marketplace-itinerary{order:7;width:100%}.marketplace-detail-row{order:8;width:100%}
 .marketplace-booking-card{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;padding:18px}.marketplace-price-block{grid-column:1/-1;margin-bottom:2px}.marketplace-offer-badge{position:absolute;right:20px;top:22px}.marketplace-booking-column{position:relative}.marketplace-booking-picker{margin:0}.marketplace-booking-picker.is-static{grid-column:1/-1}.marketplace-check-availability{grid-column:1/-1}.marketplace-booking-trust{grid-column:1/-1;grid-template-columns:1fr 1fr}.marketplace-local-operator{grid-column:1/-1}
 .marketplace-itinerary .interactive-itinerary-layout{grid-template-columns:1fr}.marketplace-itinerary .itinerary-map-frame{height:360px}
}

@media(max-width:700px){
 .marketplace-product-container{width:min(100% - 28px,1280px)}
 .marketplace-breadcrumbs{padding-top:12px}.marketplace-product-heading{display:grid;gap:13px;padding-bottom:16px}.marketplace-product-heading h1{font-size:32px;letter-spacing:-1px}.marketplace-product-actions{gap:18px}.marketplace-icon-action span{font-size:12px}
 .marketplace-gallery.product-gallery{display:flex!important;flex-direction:column!important;height:auto!important;gap:8px!important}.marketplace-gallery .product-gallery-stage{height:310px!important;border-radius:14px!important}.marketplace-gallery-grid.product-gallery-thumbs{height:78px!important;display:flex!important;overflow-x:auto!important;gap:7px!important;scroll-snap-type:x proximity}.marketplace-gallery-grid .product-gallery-thumb{width:94px!important;height:72px!important;flex:0 0 94px!important;scroll-snap-align:start}.marketplace-view-all{right:8px;bottom:8px;padding:8px 11px;font-size:11px;background:#fff}.marketplace-gallery .product-gallery-arrow{opacity:1;width:38px;height:38px}.marketplace-gallery-area{padding-bottom:16px}
 .marketplace-booking-card{display:block;padding:16px}.marketplace-offer-badge{position:static;margin-bottom:10px}.marketplace-booking-picker{margin-bottom:7px}.marketplace-booking-trust{display:grid;grid-template-columns:1fr}.marketplace-local-operator{margin-top:14px}
 .marketplace-intro{padding-bottom:20px}.marketplace-intro p{font-size:14px;line-height:1.58}
 .marketplace-benefits{grid-template-columns:1fr;gap:16px;padding:22px 0}.marketplace-benefit-icon{width:42px;height:42px;border-radius:11px}.marketplace-benefits article{grid-template-columns:42px 1fr}
 .marketplace-review-grid{grid-template-columns:1fr}.marketplace-review-card{min-height:0}.marketplace-section-heading{align-items:flex-start}.marketplace-section-heading h2{font-size:20px}
 .marketplace-itinerary{padding-top:24px}.marketplace-itinerary .itinerary-map-frame{height:300px}
 .marketplace-detail-row{grid-template-columns:1fr;gap:10px;padding:21px 0}.marketplace-detail-row>h2{font-size:16px}.marketplace-ticket-grid{grid-template-columns:1fr}.marketplace-support-box{display:grid}.marketplace-support-actions{width:100%}.marketplace-support-actions .btn{flex:1}
 .marketplace-related{padding-top:36px!important}
 .marketplace-mobile-bookbar{display:grid!important;grid-template-columns:1fr auto;align-items:center;gap:12px;position:fixed;left:0;right:0;bottom:0;z-index:58;background:rgba(255,255,255,.98);border-top:1px solid #dce5ea;padding:10px 14px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -8px 28px rgba(13,47,72,.11)}.marketplace-mobile-bookbar div{display:grid}.marketplace-mobile-bookbar small{font-size:10px;color:#73838d;text-transform:uppercase;font-weight:850}.marketplace-mobile-bookbar strong{font-size:20px;color:var(--brand-coral-dark)}.marketplace-mobile-bookbar .btn{min-height:46px;border-radius:23px!important;color:var(--brand-deep)!important}
 body:has(.marketplace-mobile-bookbar){padding-bottom:72px}
}

@media(max-width:430px){
 .marketplace-product-container{width:calc(100% - 22px)}
 .marketplace-product-heading h1{font-size:29px}.marketplace-product-meta{gap:7px 9px;font-size:11.5px}.marketplace-meta-divider{display:none}.marketplace-product-actions{justify-content:space-between;width:100%}.marketplace-gallery .product-gallery-stage{height:265px!important}.marketplace-gallery-grid.product-gallery-thumbs{height:68px!important}.marketplace-gallery-grid .product-gallery-thumb{height:62px!important;width:82px!important;flex-basis:82px!important}.marketplace-view-all{font-size:10px;padding:7px 9px}.marketplace-booking-picker strong{font-size:13px}
}

/* ======================================================================
   V11.20 — Unified product booking interaction
   One booking flow: the sticky marketplace card owns date/traveler inputs;
   the lower panel only renders option/time results.
   ====================================================================== */
.marketplace-booking-column{z-index:48}
.marketplace-booking-form{overflow:visible!important}
.marketplace-booking-field{position:relative;min-width:0}
.marketplace-booking-field .marketplace-booking-picker{margin-bottom:8px}
.marketplace-booking-field .marketplace-booking-picker[aria-expanded="true"]{background:#fff!important;box-shadow:inset 0 0 0 2px rgba(87,204,205,.72),0 8px 22px rgba(12,44,67,.08)!important}
.marketplace-booking-field .ue-traveler-popover{left:auto!important;right:0!important;top:calc(100% + 8px)!important;width:min(430px,calc(100vw - 32px))!important;max-width:min(430px,calc(100vw - 32px))!important;z-index:1200!important;border-radius:18px!important;overflow:hidden!important;padding:0!important;box-shadow:0 24px 70px rgba(12,44,67,.20)!important}
.marketplace-booking-field .ue-calendar-popover{left:auto!important;right:0!important;top:calc(100% + 8px)!important;width:min(760px,calc(100vw - 40px))!important;max-width:min(760px,calc(100vw - 40px))!important;z-index:1200!important;box-shadow:0 24px 74px rgba(12,44,67,.20)!important}
.marketplace-booking-field .traveler-popover-head{background:#fff!important}
.marketplace-booking-field .traveler-stepper button{background:var(--brand-blue)!important;border-color:var(--brand-blue)!important;color:#fff!important}
.marketplace-booking-field .traveler-stepper button:first-child{background:#fff!important;border-color:#cbd8df!important;color:var(--brand-blue)!important}
.marketplace-booking-field .traveler-stepper button:disabled{opacity:.4;cursor:not-allowed}
.marketplace-booking-field .traveler-type-copy small{color:var(--brand-coral-dark)!important}
.marketplace-booking-field .calendar-month h4{color:var(--brand-deep)!important}
.marketplace-booking-field .calendar-day:not(.disabled):hover{border-color:var(--brand-aqua)!important;background:#f1fbfb!important}
.marketplace-booking-field .calendar-day.selected{background:var(--brand-blue)!important;border-color:var(--brand-blue)!important;color:#fff!important;box-shadow:0 7px 16px rgba(17,69,115,.18)!important}
.marketplace-booking-field .calendar-day.selected small{color:#dff8f8!important}
.marketplace-booking-field .calendar-day small{color:var(--brand-blue)!important}
.marketplace-booking-field .calendar-day.selected small{color:#fff!important}
.marketplace-booking-field .traveler-update-btn{background:var(--brand-aqua)!important;border-color:#3caeb0!important;color:var(--brand-deep)!important;border-radius:12px!important}

/* The old horizontal selector is gone. This region is results only. */
.marketplace-product-grid .marketplace-booking-results{grid-column:1!important;width:100%!important;margin:22px 0 26px!important;scroll-margin-top:112px}
.marketplace-booking-results .availability-inline-dialog{border:1px solid #dbe5ea!important;border-radius:18px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 14px 34px rgba(12,44,67,.07)!important}
.marketplace-results-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px 16px;border-bottom:1px solid #e3eaee;background:#f8fbfc}
.marketplace-results-head>div{display:grid;gap:3px;min-width:0}
.marketplace-results-head>div>span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:var(--brand-aqua-dark);font-weight:950}
.marketplace-results-head h2{margin:0;color:var(--brand-deep);font-size:21px;line-height:1.18;letter-spacing:-.35px}
.marketplace-results-head p{margin:2px 0 0;color:#6c7e89;font-size:12px;line-height:1.4}
.marketplace-results-close{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #d6e1e6;border-radius:50%;background:#fff;color:#375267;font-size:22px;line-height:1;cursor:pointer}
.marketplace-results-close:hover{background:#eef5f6;border-color:#c5d7dd}
.marketplace-booking-results .availability-expanded-content{border:0!important;border-radius:0!important;padding:18px 18px 20px!important;box-shadow:none!important;background:#fff!important}
.marketplace-booking-results .book-ahead{margin-bottom:16px!important}
.marketplace-booking-results .availability-result{margin-top:0!important}

@media(max-width:1080px){
  .marketplace-booking-field .ue-calendar-popover{width:min(680px,calc(100vw - 32px))!important;max-width:min(680px,calc(100vw - 32px))!important}
}
@media(max-width:900px){
  .marketplace-booking-field{min-width:0}
  .marketplace-booking-field .marketplace-booking-picker{margin:0}
  .marketplace-booking-field .ue-traveler-popover{left:0!important;right:auto!important}
  .marketplace-booking-field .ue-calendar-popover{left:0!important;right:auto!important;width:min(720px,calc(100vw - 36px))!important;max-width:min(720px,calc(100vw - 36px))!important}
  .marketplace-product-grid .marketplace-booking-results{order:4!important}
}
@media(max-width:700px){
  .marketplace-booking-field .marketplace-booking-picker{margin-bottom:7px}
  .marketplace-booking-field .ue-calendar-popover,.marketplace-booking-field .ue-traveler-popover{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(10px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 28px)!important;border-radius:22px!important;z-index:1400!important}
  .marketplace-booking-field .ue-calendar-popover{overflow:auto!important;padding:15px 12px 14px!important}
  .marketplace-booking-field .ue-calendar-months{grid-template-columns:1fr!important;gap:0!important;min-height:0!important}
  .marketplace-booking-field .ue-traveler-popover{overflow:auto!important}
  .marketplace-results-head{padding:16px 15px 14px}.marketplace-results-head h2{font-size:19px}
  .marketplace-booking-results .availability-expanded-content{padding:12px!important}
}

/* ======================================================================
   V11.21 — Premium Clean Design
   Public visual system: neutral canvas, photography first, restrained brand
   color and a quieter Home hierarchy.
   ====================================================================== */
:root{
  --ue-text:#2f4351;
  --ue-text-muted:#6b7d88;
  --ue-border:#e4eaee;
  --ue-soft:#f7f8fa;
  --ue-card:#ffffff;
  --ue-shadow-card:0 10px 28px rgba(12,44,67,.065);
  --ue-shadow-float:0 22px 54px rgba(12,44,67,.12);
}
body{color:var(--ue-text);background:#fff}
.eyebrow{color:#6f808b!important}
.section-head h2{color:var(--brand-deep)!important}
.section-head p{color:var(--ue-text-muted)!important}
.text-link{color:var(--brand-deep)!important}
.site-header,.site-header-premium{background:rgba(255,255,255,.985)!important;border-bottom:1px solid var(--ue-border)!important;box-shadow:0 4px 18px rgba(12,44,67,.035)!important}
.navlinks{color:#465967!important}.navlinks a:hover,.navlinks a.active{color:var(--brand-deep)!important}

/* Home: remove duplicate chrome and let the hero/search do the work. */
.page-home .announcement-premium{display:none!important}
.page-home .header-search-dock{display:none!important}
.modern-home{background:#fff!important;color:var(--ue-text)}
.modern-home .modern-kicker{color:rgba(255,255,255,.82)!important;letter-spacing:.11em}
.modern-home .modern-kicker.dark{color:#71818b!important}
.modern-home .modern-hero{min-height:650px!important;align-items:end!important;background:var(--brand-deep)!important}
.modern-home .modern-hero-shade{background:linear-gradient(180deg,rgba(7,28,42,.24) 0%,rgba(7,28,42,.42) 48%,rgba(7,28,42,.76) 100%)!important}
.modern-home .modern-hero-inner{grid-template-columns:1fr!important;gap:28px!important;align-items:end!important;padding-top:132px!important;padding-bottom:52px!important}
.modern-home .modern-hero-copy{max-width:820px!important;padding:0!important}
.modern-home .modern-hero-copy h1{max-width:820px!important;font-size:clamp(48px,5.8vw,78px)!important;line-height:.98!important;letter-spacing:-3.2px!important;margin:13px 0 16px!important;color:#fff!important}
.modern-home .modern-hero-copy>p{max-width:680px!important;margin:0!important;font-size:17px!important;line-height:1.55!important;color:rgba(255,255,255,.86)!important}
.modern-home .modern-hero-chips,.modern-home .modern-hero-actions{display:none!important}

/* One calm white booking surface — no colored boxes inside colored boxes. */
.modern-home .modern-search-card-clean{width:min(1120px,100%)!important;max-width:none!important;padding:12px!important;border:1px solid rgba(255,255,255,.50)!important;border-radius:16px!important;background:rgba(255,255,255,.985)!important;box-shadow:0 18px 46px rgba(4,26,41,.18)!important;backdrop-filter:blur(10px)!important}
.modern-home .modern-search-tabs{display:flex!important;width:max-content!important;max-width:100%;gap:18px!important;padding:0 2px 8px!important;margin:0 0 7px!important;background:transparent!important;border-radius:0!important;overflow:auto!important}
.modern-home .modern-search-tabs button{min-height:auto!important;padding:3px 0 7px!important;border-radius:0!important;border-bottom:2px solid transparent!important;background:transparent!important;box-shadow:none!important;color:#7a8993!important;font-size:11px!important;white-space:nowrap!important}
.modern-home .modern-search-tabs button.active{color:var(--brand-deep)!important;border-bottom-color:var(--brand-deep)!important;background:transparent!important;box-shadow:none!important}
.modern-home .modern-search-grid-clean,.modern-home .modern-transfer-grid-clean{display:grid!important;gap:0!important;align-items:stretch!important;border:1px solid #dce4e9!important;border-radius:13px!important;overflow:hidden!important;background:#fff!important}
.modern-home .modern-search-grid-clean{grid-template-columns:minmax(260px,1.55fr) minmax(165px,.78fr) minmax(130px,.55fr) minmax(180px,.8fr)!important}
.modern-home .modern-transfer-grid-clean{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(210px,.72fr)!important}
.modern-home .modern-search-grid-clean label,.modern-home .modern-transfer-grid-clean label{gap:2px!important;padding:10px 14px 8px!important;border-right:1px solid #e5eaee!important;background:#fff!important;min-width:0!important}
.modern-home .modern-search-grid-clean label>span,.modern-home .modern-transfer-grid-clean label>span{color:#7b8a94!important;font-size:9px!important;letter-spacing:.075em!important}
.modern-home .modern-search-grid-clean .field,.modern-home .modern-transfer-grid-clean .field{height:32px!important;min-height:32px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--ue-text)!important;font-size:13px!important;box-shadow:none!important;outline:0!important}
.modern-home .modern-search-grid-clean label:focus-within,.modern-home .modern-transfer-grid-clean label:focus-within{background:#fbfcfd!important;box-shadow:inset 0 -2px 0 rgba(87,204,205,.75)!important}
.modern-home .modern-search-submit{width:100%!important;height:auto!important;min-height:58px!important;margin:0!important;border-radius:0!important;box-shadow:none!important;font-size:13px!important;padding:12px 18px!important}
.modern-home .modern-search-title,.modern-home .modern-search-assurance{display:none!important}

/* Trust strip: information, not decoration. */
.modern-home .modern-trust{background:#fff!important;border-bottom:1px solid var(--ue-border)!important}
.modern-home .modern-trust-row{min-height:86px!important;background:#fff!important;box-shadow:none!important}
.modern-home .modern-trust-row>div{padding:19px 24px!important;border-right:1px solid #edf0f2!important;border-top:0!important;background:transparent!important;gap:11px!important}
.modern-home .modern-trust-row>div:last-child{border-right:0!important}
.modern-home .modern-trust-row b{width:auto!important;height:auto!important;min-width:22px!important;padding:0!important;border-radius:0!important;background:transparent!important;color:var(--brand-deep)!important;font-size:18px!important}
.modern-home .modern-trust-icon svg{width:19px!important;height:19px!important}
.modern-home .modern-trust-row strong{color:var(--brand-deep)!important;font-size:12px!important}
.modern-home .modern-trust-row small{color:#7c8b95!important;font-size:9.5px!important}
.modern-home .modern-award-item img{width:32px!important;height:32px!important;border-radius:7px!important}

/* Featured experiences: V11.22 restores the proven V11.20 Home carousel styling. */
/* Explore by experience: photography supplies the color. */
.modern-home .modern-moods{padding:76px 0 84px!important;background:var(--ue-soft)!important}
.modern-home .modern-section-head h2{color:var(--brand-deep)!important}
.modern-home .modern-section-head p{color:var(--ue-text-muted)!important;max-width:650px!important}
.modern-home .modern-section-head>a{color:var(--brand-deep)!important}
.modern-home .modern-mood-card{border-radius:16px!important;box-shadow:none!important}
.modern-home .modern-mood-overlay{background:linear-gradient(180deg,rgba(7,28,39,.03) 30%,rgba(7,28,39,.78) 100%)!important}
.modern-home .modern-mood-card>div{bottom:19px!important}
.modern-home .modern-mood-card small{color:rgba(255,255,255,.78)!important}
.modern-home .modern-mood-card strong{font-size:24px!important;margin-bottom:0!important}
.modern-home .modern-mood-card p,.modern-home .modern-mood-card em{display:none!important}

/* Local operator story: editorial, light and credible rather than another color block. */
.modern-home .modern-local{padding:82px 0!important;background:#fff!important}
.modern-home .modern-local-card{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;min-height:470px!important;border:1px solid var(--ue-border)!important;border-radius:20px!important;overflow:hidden!important;background:var(--ue-soft)!important;color:var(--ue-text)!important;box-shadow:none!important}
.modern-home .modern-local-photo{min-height:470px!important}
.modern-home .modern-local-photo:after{background:linear-gradient(180deg,transparent 72%,rgba(8,31,44,.22))!important}
.modern-home .modern-local-photo>span{background:rgba(255,255,255,.94)!important;color:var(--brand-deep)!important;border:1px solid rgba(255,255,255,.55)!important;box-shadow:0 6px 20px rgba(12,44,67,.08)!important}
.modern-home .modern-local-copy{padding:52px 48px!important}
.modern-home .modern-local-copy .modern-kicker{color:#71818b!important}
.modern-home .modern-local-copy h2{color:var(--brand-deep)!important;font-size:clamp(34px,3.4vw,48px)!important;letter-spacing:-1.6px!important}
.modern-home .modern-local-copy>p{color:var(--ue-text-muted)!important}
.modern-home .modern-local-facts{grid-template-columns:repeat(3,1fr)!important;gap:0!important;margin:28px 0 24px!important;border-top:1px solid #e2e7ea!important;border-bottom:1px solid #e2e7ea!important}
.modern-home .modern-local-facts span{padding:15px 13px!important;border-radius:0!important;background:transparent!important;border-right:1px solid #e2e7ea!important}
.modern-home .modern-local-facts span:last-child{border-right:0!important}
.modern-home .modern-local-facts b{color:var(--brand-deep)!important}.modern-home .modern-local-facts small{color:#7a8993!important}
.modern-home .modern-light-link{color:var(--brand-deep)!important;text-decoration:underline!important;text-underline-offset:4px!important}

/* Reviews: light surface. The content is the social proof; the section need not be navy. */
.modern-home .modern-reviews{padding:78px 0 84px!important;background:var(--ue-soft)!important;color:var(--ue-text)!important}
.modern-home .modern-review-head{margin-bottom:26px!important}
.modern-home .modern-review-score{border-right:1px solid #dde4e8!important}
.modern-home .modern-review-score strong,.modern-home .modern-review-head h2{color:var(--brand-deep)!important}
.modern-home .modern-review-score small,.modern-home .modern-review-head p{color:var(--ue-text-muted)!important}
.modern-home .modern-review-head>a{color:var(--brand-deep)!important}
.modern-home .modern-review-rail article{background:#fff!important;color:var(--ue-text)!important;border:1px solid var(--ue-border)!important;border-radius:16px!important;box-shadow:none!important;padding:22px!important}
.modern-home .modern-review-rail h3{color:var(--brand-deep)!important}.modern-home .modern-review-rail p{color:#60737f!important}.modern-home .modern-review-rail small{color:#81909a!important}

/* Final CTA: the one deliberate large color moment on the Home. */
.modern-home .modern-final-cta{min-height:440px!important}
.modern-home .modern-final-shade{background:linear-gradient(rgba(8,31,44,.50),rgba(8,31,44,.80))!important}
.modern-home .modern-final-content{max-width:720px!important}
.modern-home .modern-final-content h2{font-size:clamp(42px,5.4vw,68px)!important;letter-spacing:-2.5px!important}
.modern-home .modern-final-content>div{margin-top:22px!important}

/* General public cards: quieter borders and neutral type keep the palette consistent. */
.marketplace-product-page,.booking-checkout-section,.transfer-page,.contact-page,.about-pro-page{color:var(--ue-text)}
.marketplace-product-heading h1,.marketplace-section-heading h2,.marketplace-detail-row>h2,.checkout-panel-head h2,.contact-panel h2{color:var(--brand-deep)!important}
.marketplace-product-meta,.marketplace-intro p,.marketplace-detail-content,.contact-panel p{color:var(--ue-text-muted)}
.marketplace-booking-card,.checkout-panel,.booking-recap,.transfer-planner-card,.transfer-result-card,.contact-panel{border-color:var(--ue-border)!important;box-shadow:var(--ue-shadow-card)!important}
.btn-coral,.tour-card-availability,.dock-search-button,.booking-checkout-section .checkout-submit,.product-head-booking .product-booking-primary,.availability-inline .availability-check-btn,.mobile-product-bookbar .btn-coral,.marketplace-check-availability{color:var(--brand-deep)!important}

@media(max-width:900px){
 .modern-home .modern-hero{min-height:auto!important}
 .modern-home .modern-hero-inner{padding-top:104px!important;padding-bottom:34px!important;gap:24px!important}
 .modern-home .modern-hero-copy h1{font-size:clamp(44px,9vw,66px)!important;letter-spacing:-2.5px!important}
 .modern-home .modern-search-grid-clean{grid-template-columns:1fr 1fr!important;overflow:visible!important;border:0!important;gap:8px!important;background:transparent!important}
 .modern-home .modern-search-grid-clean label:first-child{grid-column:1/-1!important}
 .modern-home .modern-search-grid-clean label{border:1px solid #dce4e9!important;border-radius:11px!important;padding:8px 11px!important}
 .modern-home .modern-search-grid-clean .modern-search-submit{grid-column:1/-1!important;border-radius:11px!important;min-height:50px!important}
 .modern-home .modern-transfer-grid-clean{grid-template-columns:1fr 1fr!important;overflow:visible!important;border:0!important;gap:8px!important;background:transparent!important}
 .modern-home .modern-transfer-grid-clean label{border:1px solid #dce4e9!important;border-radius:11px!important;padding:8px 11px!important}
 .modern-home .modern-transfer-grid-clean .modern-search-submit{grid-column:1/-1!important;border-radius:11px!important;min-height:50px!important}
 .modern-home .modern-local-card{grid-template-columns:1fr!important}
 .modern-home .modern-local-photo{min-height:390px!important}
 .modern-home .modern-review-score{border-right:0!important;border-bottom:1px solid #dde4e8!important}
}
@media(max-width:640px){
 .modern-home .modern-hero-inner{padding-left:18px!important;padding-right:18px!important;padding-top:88px!important;padding-bottom:22px!important}
 .modern-home .modern-hero-copy h1{font-size:44px!important;line-height:1!important;letter-spacing:-2px!important}
 .modern-home .modern-hero-copy>p{font-size:15px!important}
 .modern-home .modern-search-card-clean{padding:10px!important;border-radius:14px!important}
 .modern-home .modern-search-tabs{gap:15px!important}
 .modern-home .modern-search-grid-clean,.modern-home .modern-transfer-grid-clean{grid-template-columns:1fr!important}
 .modern-home .modern-search-grid-clean label:first-child,.modern-home .modern-search-grid-clean .modern-search-submit,.modern-home .modern-transfer-grid-clean .modern-search-submit{grid-column:auto!important}
 .modern-home .modern-trust-row{display:grid!important;grid-template-columns:1fr 1fr!important;overflow:visible!important}
 .modern-home .modern-trust-row>div{min-width:0!important;border-right:0!important;border-bottom:1px solid #edf0f2!important;padding:16px 8px!important}
 .modern-home .modern-trust-row>div:nth-child(odd){border-right:1px solid #edf0f2!important}.modern-home .modern-trust-row>div:nth-last-child(-n+2){border-bottom:0!important}
 .modern-home .modern-moods,.modern-home .featured-tours-section,.modern-home .modern-reviews,.modern-home .modern-local{padding-top:58px!important;padding-bottom:62px!important}
 .modern-home .modern-local-card{margin:0!important;border-radius:16px!important}
 .modern-home .modern-local-photo{min-height:300px!important}.modern-home .modern-local-copy{padding:34px 22px!important}
 .modern-home .modern-local-facts{grid-template-columns:1fr!important}.modern-home .modern-local-facts span{border-right:0!important;border-bottom:1px solid #e2e7ea!important}.modern-home .modern-local-facts span:last-child{border-bottom:0!important}
 .modern-home .modern-review-head{gap:16px!important}.modern-home .modern-review-rail article{flex-basis:88%!important}
 .modern-home .modern-final-cta{min-height:400px!important}.modern-home .modern-final-content h2{font-size:42px!important;letter-spacing:-1.8px!important}
}
/* V11.21 header restraint: support remains available in Contact/booking while the primary nav stays quiet. */
.header-whatsapp-icon,.header-call-support{display:none!important}
/* V11.22 — Restore Home Most Requested carousel exactly to the V11.20 visual treatment.
   The carousel mechanics/JS were already unchanged; these scoped rules prevent the
   V11.21 clean-theme globals from restyling the proven carousel. */
.modern-home .featured-tours-section .section-head .eyebrow{color:#177f82!important}


/* ======================================================================
   V11.23 — International Header + High-Definition Home Hero
   Keeps the logo at its established size, adds restrained motion/structure,
   restores the proven V11.20 hero composition and upgrades hero image delivery.
   ====================================================================== */

/* Header: same logo scale, more polish and hierarchy. */
.site-header-premium{
  position:sticky!important;
  top:0!important;
  overflow:visible!important;
  background:rgba(255,255,255,.985)!important;
  border-bottom:1px solid #e2e9ed!important;
  box-shadow:0 5px 20px rgba(12,44,67,.045)!important;
  transition:box-shadow .24s ease,background-color .24s ease!important;
}
.site-header-premium::before{
  content:"";
  position:absolute;
  z-index:2;
  left:0;right:0;top:0;
  height:2px;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(87,204,205,.92) 0%,rgba(87,204,205,.36) 38%,rgba(252,104,100,.28) 72%,rgba(252,104,100,.86) 100%);
  opacity:.78;
}
.site-header-premium.is-scrolled{
  background:rgba(255,255,255,.975)!important;
  box-shadow:0 10px 30px rgba(12,44,67,.09)!important;
  backdrop-filter:blur(18px);
}
.nav-premium{
  min-height:76px!important;
  padding:8px 0!important;
  transition:min-height .24s ease,padding .24s ease!important;
}
/* Preserve the established logo size. Only the scrolled state gently compacts it. */
.nav-premium .site-logo-crop{
  width:158px!important;
  height:54px!important;
  transform-origin:left center;
  transition:transform .24s ease!important;
}
.site-header-premium.is-scrolled .nav-premium{min-height:68px!important;padding:4px 0!important}
.site-header-premium.is-scrolled .nav-premium .site-logo-crop{transform:scale(.955)}

.nav-premium .navlinks a{
  position:relative!important;
  border-bottom:0!important;
  color:#344a5a!important;
  transition:color .18s ease!important;
}
.nav-premium .navlinks a::after{
  content:"";
  position:absolute;
  left:12%;right:12%;bottom:14px;
  height:2px;
  border-radius:999px;
  background:var(--brand-coral);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s cubic-bezier(.22,.61,.36,1);
}
.nav-premium .navlinks a:hover,.nav-premium .navlinks a.active{color:var(--brand-deep)!important}
.nav-premium .navlinks a:hover::after,.nav-premium .navlinks a.active::after{transform:scaleX(1)}
.site-header-premium.is-scrolled .nav-premium .navlinks a::after{bottom:10px}

/* Support tools remain available on desktop but read as one quiet utility cluster. */
.header-whatsapp-icon{display:inline-grid!important;width:40px!important;height:40px!important;border:1px solid rgba(44,164,78,.18)!important;background:#60ca70!important;box-shadow:0 6px 16px rgba(45,157,75,.13)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.header-whatsapp-icon:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(45,157,75,.20)!important}
.header-call-support{display:flex!important;border-left:1px solid #e7ecef;border-right:1px solid #e7ecef;border-radius:0!important;padding:5px 13px!important;margin:0 2px!important;transition:background .18s ease!important}
.header-call-support:hover{background:#f8fafb!important}
.header-call-icon{background:#f3f7f9!important;border-color:#dce6ea!important}
.nav-actions-premium .language-menu summary,.header-profile-link{transition:background .18s ease,border-color .18s ease,transform .18s ease!important}
.nav-actions-premium .language-menu summary:hover,.header-profile-link:hover{background:#f7fafb!important;border-color:#d8e3e8!important}
.nav-actions-premium .desktop-book{display:inline-flex!important;align-items:center!important;gap:7px!important;box-shadow:0 7px 18px rgba(198,75,72,.13)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.nav-actions-premium .desktop-book::after{content:"→";font-size:13px;line-height:1;transition:transform .18s ease}
.nav-actions-premium .desktop-book:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(198,75,72,.19)!important}
.nav-actions-premium .desktop-book:hover::after{transform:translateX(2px)}

/* Home hero: preserve the Tours & activities / Private transfers module exactly
   as a two-column booking composition while improving the photography treatment. */
.modern-home .modern-hero{
  min-height:720px!important;
  align-items:end!important;
  background:var(--brand-deep)!important;
}
.modern-home .modern-hero-media img{
  object-fit:cover!important;
  object-position:center center!important;
  image-rendering:auto!important;
  backface-visibility:hidden;
  transition:opacity .52s ease!important;
}
.modern-home .modern-hero-shade{
  background:
    linear-gradient(90deg,rgba(5,25,38,.78) 0%,rgba(5,25,38,.55) 39%,rgba(5,25,38,.20) 65%,rgba(5,25,38,.07) 100%),
    linear-gradient(180deg,rgba(4,22,34,.03) 0%,rgba(4,22,34,.08) 58%,rgba(4,22,34,.30) 100%)!important;
}
.modern-home .modern-hero-inner{
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.76fr)!important;
  gap:64px!important;
  align-items:end!important;
  padding-top:116px!important;
  padding-bottom:66px!important;
}
.modern-home .modern-hero-copy{max-width:700px!important;padding:0 0 18px!important}
.modern-home .modern-hero-copy h1{max-width:780px!important;font-size:clamp(52px,6.2vw,86px)!important;line-height:.94!important;letter-spacing:-4px!important;margin:16px 0 20px!important;color:#fff!important;text-wrap:balance}
.modern-home .modern-hero-copy>p{max-width:620px!important;font-size:18px!important;line-height:1.55!important;color:rgba(255,255,255,.90)!important;margin:0!important}
.modern-home .modern-hero-chips{display:flex!important;gap:8px!important;margin:24px 0!important}
.modern-home .modern-hero-actions{display:flex!important;align-items:center!important;gap:18px!important;flex-wrap:wrap!important}
.modern-home .modern-search-card{background:rgba(255,255,255,.985)!important;border:1px solid rgba(255,255,255,.68)!important;box-shadow:0 26px 66px rgba(0,0,0,.22)!important;backdrop-filter:blur(15px)!important}
.modern-home.hero-is-changing .modern-hero-media img,.modern-home .modern-hero.hero-is-changing .modern-hero-media img{will-change:opacity}

@media(max-width:1180px){
  .header-call-support{padding-left:8px!important;padding-right:8px!important;border-left:0!important;border-right:0!important;margin:0!important}
}
@media(max-width:1100px){
  .modern-home .modern-hero-inner{grid-template-columns:minmax(0,1fr) 390px!important;gap:34px!important}
}
@media(max-width:1020px){
  .header-whatsapp-icon,.header-call-support,.header-profile-link,.desktop-book{display:none!important}
  .site-header-premium::before{height:1px}
  .site-header-premium.is-scrolled .nav-premium .site-logo-crop{transform:none}
}
@media(max-width:900px){
  .modern-home .modern-hero{min-height:auto!important}
  .modern-home .modern-hero-inner{grid-template-columns:1fr!important;padding-top:120px!important;padding-bottom:38px!important;gap:28px!important}
  .modern-home .modern-hero-copy{padding-top:80px!important}
  .modern-home .modern-hero-copy h1{font-size:clamp(48px,10vw,70px)!important}
  .modern-home .modern-search-card{max-width:620px!important}
  .modern-home .modern-hero-chips{display:none!important}
}
@media(max-width:640px){
  .modern-home .modern-hero-inner{padding-left:18px!important;padding-right:18px!important;padding-top:88px!important;padding-bottom:22px!important}
  .modern-home .modern-hero-copy{padding-top:62px!important}
  .modern-home .modern-hero-copy h1{font-size:44px!important;letter-spacing:-2px!important;line-height:1!important}
  .modern-home .modern-hero-copy>p{font-size:15px!important}
  .modern-home .modern-search-card{padding:11px!important;border-radius:18px!important}
}
@media(prefers-reduced-motion:reduce){
  .site-header-premium,.nav-premium,.nav-premium .site-logo-crop,.nav-premium .navlinks a::after,.modern-home .modern-hero-media img{transition:none!important}
}

/* ======================================================================
   V11.24 — Restore original Home booking card
   Restores the approved V11.20/V11.23 full booking card presentation while
   keeping the V11.23 header and HD hero image pipeline unchanged.
   ====================================================================== */
.modern-home .modern-search-card{
  background:rgba(255,255,255,.985)!important;
  color:#17384b!important;
  border-radius:22px!important;
  padding:16px!important;
  box-shadow:0 28px 70px rgba(0,0,0,.26)!important;
  backdrop-filter:blur(14px)!important;
  border:1px solid rgba(255,255,255,.68)!important;
}
.modern-home .modern-search-tabs{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  width:auto!important;
  max-width:none!important;
  gap:5px!important;
  padding:4px!important;
  margin:0 0 14px!important;
  border-radius:14px!important;
  background:#edf3f5!important;
  overflow:visible!important;
}
.modern-home .modern-search-tabs button{
  min-height:42px!important;
  padding:0 12px!important;
  border:0!important;
  border-bottom:0!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#69808d!important;
  font-size:13px!important;
  font-weight:850!important;
  box-shadow:none!important;
  white-space:normal!important;
}
.modern-home .modern-search-tabs button.active{
  background:#fff!important;
  color:#17384b!important;
  border-bottom-color:transparent!important;
  box-shadow:0 4px 14px rgba(14,48,68,.08)!important;
}
.modern-home .modern-search-title{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:12px!important;
  padding:5px 4px 14px!important;
}
.modern-home .modern-search-title span,.modern-home .modern-search-title strong{display:block!important}
.modern-home .modern-search-title span{
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  color:#82939c!important;
  font-weight:900!important;
}
.modern-home .modern-search-title strong{
  font-size:24px!important;
  letter-spacing:-.7px!important;
  margin-top:3px!important;
  color:#17384b!important;
}
.modern-home .modern-search-title small{
  display:inline-flex!important;
  align-items:center!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:#eaf8f8!important;
  color:#246a6d!important;
  font-size:10px!important;
  font-weight:900!important;
}
.modern-home .modern-search-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(112px,.62fr) minmax(82px,.38fr)!important;
  gap:8px!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
.modern-home .modern-search-grid label,.modern-home .modern-transfer-grid label{
  display:grid!important;
  gap:5px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  min-width:0!important;
}
.modern-home .modern-search-grid label>span,.modern-home .modern-transfer-grid label>span{
  font-size:10px!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
  color:#748791!important;
  font-weight:900!important;
}
.modern-home .modern-search-grid .field,.modern-home .modern-transfer-grid .field{
  height:50px!important;
  min-height:50px!important;
  padding:0 13px!important;
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid #d8e3e8!important;
  color:#17384b!important;
  font-size:13px!important;
  box-shadow:none!important;
}
.modern-home .modern-search-grid label:focus-within,.modern-home .modern-transfer-grid label:focus-within{
  background:transparent!important;
  box-shadow:none!important;
}
.modern-home .modern-search-submit{
  width:100%!important;
  min-height:52px!important;
  height:auto!important;
  border-radius:13px!important;
  margin-top:10px!important;
  padding:12px 18px!important;
  box-shadow:none!important;
  font-weight:900!important;
  font-size:16px!important;
}
.modern-home .modern-search-assurance{
  display:flex!important;
  justify-content:center!important;
  gap:15px!important;
  flex-wrap:wrap!important;
  padding-top:12px!important;
  color:#6a7e89!important;
  font-size:10px!important;
  font-weight:800!important;
}
.modern-home .modern-transfer-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
@media(max-width:900px){
  .modern-home .modern-search-card{max-width:620px!important}
}
@media(max-width:640px){
  .modern-home .modern-search-card{padding:11px!important;border-radius:18px!important}
  .modern-home .modern-search-tabs{gap:5px!important;padding:4px!important;margin-bottom:12px!important}
  .modern-home .modern-search-tabs button{min-height:40px!important;font-size:12px!important;padding:0 8px!important}
  .modern-home .modern-search-title{padding:4px 2px 12px!important}
  .modern-home .modern-search-title strong{font-size:22px!important}
  .modern-home .modern-search-grid,.modern-home .modern-transfer-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .modern-home .modern-search-grid label:first-child{grid-column:1/-1!important}
  .modern-home .modern-search-grid .field,.modern-home .modern-transfer-grid .field{height:48px!important;min-height:48px!important}
  .modern-home .modern-search-submit{min-height:50px!important;border-radius:12px!important;margin-top:9px!important;font-size:15px!important}
  .modern-home .modern-search-assurance{gap:7px 11px!important;padding-top:10px!important}
}


/* ======================================================================
   V11.25 — Brand Coral CTA Refresh
   Uses the coral from the Universal Excursions identity as the single public
   conversion color. Deep navy text preserves contrast and brand continuity.
   ====================================================================== */
:root{
  --coral:#fc6864;
  --brand-coral:#fc6864;
  --brand-coral-dark:#f55e5a;
  --brand-coral-soft:#fff0ef;
}
.btn-coral,
.tour-card-availability,
.dock-search-button,
.booking-checkout-section .checkout-submit,
.product-head-booking .product-booking-primary,
.availability-inline .availability-check-btn,
.mobile-product-bookbar .btn-coral,
.marketplace-check-availability,
.modern-home .modern-search-submit,
.mobile-quick-action.primary{
  background:var(--brand-coral)!important;
  border-color:var(--brand-coral)!important;
  color:var(--brand-deep)!important;
  box-shadow:0 8px 20px rgba(252,104,100,.20)!important;
}
.btn-coral:hover,
.tour-card-availability:hover,
.dock-search-button:hover,
.booking-checkout-section .checkout-submit:hover,
.product-head-booking .product-booking-primary:hover,
.availability-inline .availability-check-btn:hover,
.mobile-product-bookbar .btn-coral:hover,
.marketplace-check-availability:hover,
.modern-home .modern-search-submit:hover,
.mobile-quick-action.primary:hover{
  background:#f55e5a!important;
  border-color:#f55e5a!important;
  color:var(--brand-deep)!important;
  filter:none!important;
}
.btn-coral:active,
.tour-card-availability:active,
.dock-search-button:active,
.booking-checkout-section .checkout-submit:active,
.product-head-booking .product-booking-primary:active,
.availability-inline .availability-check-btn:active,
.mobile-product-bookbar .btn-coral:active,
.marketplace-check-availability:active,
.modern-home .modern-search-submit:active,
.mobile-quick-action.primary:active{
  background:#f35a56!important;
  border-color:#f35a56!important;
  transform:translateY(0)!important;
}

/* ======================================================================
   V11.26 — Premium Dark Blue CTA
   Changes ONLY the primary public conversion buttons to a deeper ocean blue.
   Brand typography, headings, links, labels, active navigation, badges and
   decorative accent colors remain unchanged.
   ====================================================================== */
:root{
  --ue-cta-blue:#1f5e8c;
  --ue-cta-blue-hover:#174b73;
  --ue-cta-blue-active:#103e60;
  --ue-cta-blue-shadow:rgba(31,94,140,.20);
}

/* Header + primary Home conversion actions */
.site-header .desktop-book,
.modern-home .modern-hero-actions .btn-coral,
.modern-home .modern-search-submit,
.modern-home .modern-final-content .btn-coral,
.international-cta .btn-coral,
.home-hero .btn-coral,
.home-booking-panel .btn-coral,
.international-search-button,
.dock-search-button,
/* Tour/product conversion */
.tour-card-availability,
.product-head-booking .product-booking-primary,
.availability-inline .availability-check-btn,
.marketplace-check-availability,
.ue-booking-summary .reserve-primary,
.mobile-product-bookbar .btn-coral,
.mobile-quick-action.primary,
/* Booking/payment conversion */
.booking-checkout-section .checkout-submit,
.payment-panel .hosted-card-button,
/* Transfer conversion */
.transfer-app-section .booking-panel-submit,
.transfer-result-card .transfer-card-actions .btn-coral,
.transfer-booking-recap ~ * .btn-coral,
/* Contact + confirmation/support positive actions */
.contact-page .contact-form .btn-coral,
.confirmation-actions .btn-coral,
.confirmation-support-actions .btn-primary{
  background:var(--ue-cta-blue)!important;
  border-color:var(--ue-cta-blue)!important;
  color:#fff!important;
  box-shadow:0 8px 20px var(--ue-cta-blue-shadow)!important;
}

.site-header .desktop-book:hover,
.modern-home .modern-hero-actions .btn-coral:hover,
.modern-home .modern-search-submit:hover,
.modern-home .modern-final-content .btn-coral:hover,
.international-cta .btn-coral:hover,
.home-hero .btn-coral:hover,
.home-booking-panel .btn-coral:hover,
.international-search-button:hover,
.dock-search-button:hover,
.tour-card-availability:hover,
.product-head-booking .product-booking-primary:hover,
.availability-inline .availability-check-btn:hover,
.marketplace-check-availability:hover,
.ue-booking-summary .reserve-primary:hover,
.mobile-product-bookbar .btn-coral:hover,
.mobile-quick-action.primary:hover,
.booking-checkout-section .checkout-submit:hover,
.payment-panel .hosted-card-button:hover,
.transfer-app-section .booking-panel-submit:hover,
.transfer-result-card .transfer-card-actions .btn-coral:hover,
.contact-page .contact-form .btn-coral:hover,
.confirmation-actions .btn-coral:hover,
.confirmation-support-actions .btn-primary:hover{
  background:var(--ue-cta-blue-hover)!important;
  border-color:var(--ue-cta-blue-hover)!important;
  color:#fff!important;
  filter:none!important;
}

.site-header .desktop-book:active,
.modern-home .modern-hero-actions .btn-coral:active,
.modern-home .modern-search-submit:active,
.modern-home .modern-final-content .btn-coral:active,
.international-cta .btn-coral:active,
.home-hero .btn-coral:active,
.home-booking-panel .btn-coral:active,
.international-search-button:active,
.dock-search-button:active,
.tour-card-availability:active,
.product-head-booking .product-booking-primary:active,
.availability-inline .availability-check-btn:active,
.marketplace-check-availability:active,
.ue-booking-summary .reserve-primary:active,
.mobile-product-bookbar .btn-coral:active,
.mobile-quick-action.primary:active,
.booking-checkout-section .checkout-submit:active,
.payment-panel .hosted-card-button:active,
.transfer-app-section .booking-panel-submit:active,
.transfer-result-card .transfer-card-actions .btn-coral:active,
.contact-page .contact-form .btn-coral:active,
.confirmation-actions .btn-coral:active,
.confirmation-support-actions .btn-primary:active{
  background:var(--ue-cta-blue-active)!important;
  border-color:var(--ue-cta-blue-active)!important;
  color:#fff!important;
  transform:translateY(0)!important;
}

/* Match the premium header shadow to the new button hue without recoloring text. */
.nav-actions-premium .desktop-book{
  box-shadow:0 7px 18px rgba(31,94,140,.16)!important;
}
.nav-actions-premium .desktop-book:hover{
  box-shadow:0 10px 24px rgba(31,94,140,.23)!important;
}

/* V11.27 — Transfers public-route resilience */
.transfer-search-notice{margin-bottom:18px!important}
.transfer-result-grid>.empty-transfer-state{grid-column:1/-1}
