/* Final client-ready presentation refinements */
html,body{overflow-x:hidden}
.site-header,.site-header.sticky,.inner-page .site-header{position:fixed;height:76px;padding:0 clamp(22px,5vw,72px);background:rgba(255,253,248,.98);color:var(--ink);border-bottom:1px solid rgba(23,53,34,.12);box-shadow:0 5px 24px rgba(23,53,34,.07);backdrop-filter:blur(14px)}
.brand-official{width:220px;height:64px;overflow:hidden;border-radius:3px;background:#fff;flex:0 0 auto}
.brand-official img{width:100%;height:100%;object-fit:cover;object-position:center 47%;transform:scale(1.04);background:#fff;border-radius:0}
.site-header nav{gap:23px}.site-header nav a{font-size:13px}.nav-cta{padding:10px 19px}
.hero-home{min-height:660px;grid-template-columns:minmax(0,1fr) 340px;padding:118px clamp(24px,8vw,130px) 54px;gap:6vw}
.hero-copy h1{font-size:clamp(54px,6vw,86px);line-height:.96;letter-spacing:-2px;margin-bottom:20px}.hero-copy>p:not(.eyebrow){font-size:17px;max-width:610px}.hero-planner{padding:26px}.hero-planner h2{font-size:29px;margin-bottom:20px}.hero-planner small{font-size:11px}.scroll-note{display:none}
.trust-bar div{padding:22px 28px}.section{padding-top:88px;padding-bottom:88px}
.trip-grid{align-items:stretch}.trip-card{display:flex;flex-direction:column;height:100%;overflow:hidden}.card-image{height:235px;flex:0 0 auto}.card-body{display:flex;flex-direction:column;flex:1}.card-body .text-link{margin-top:auto;align-self:flex-start}.card-body h3{font-size:25px}.card-route{overflow-wrap:anywhere}
.tailor-image{min-height:610px}.tailor-image img{min-height:610px}.tailor-copy{padding-top:70px;padding-bottom:70px}
.footer-brand>img{width:190px;height:72px;object-fit:cover;object-position:center 47%;border-radius:4px}
.inner-hero{padding-top:76px;min-height:360px}.inner-hero h1{font-size:clamp(46px,5vw,72px);line-height:1}.filter-section{padding-top:34px}.filters{top:88px}.trip-hero{min-height:590px;padding-top:120px}.trip-hero h1{font-size:clamp(48px,5.5vw,76px)}.trip-nav{scrollbar-width:none}.trip-nav::-webkit-scrollbar{display:none}
@media(max-width:980px){
body.menu-open{overflow:auto}.site-header,.site-header.sticky,.inner-page .site-header{height:70px;padding:0 16px}.brand-official{width:174px;height:56px}.menu-toggle{display:block;position:relative;z-index:3;color:var(--forest)}
.site-header nav{position:fixed;inset:82px 12px auto auto;width:min(340px,calc(100vw - 24px));max-height:calc(100vh - 96px);overflow:auto;background:#fff;color:var(--ink);padding:12px 20px 20px;gap:0;border:1px solid rgba(23,53,34,.12);border-radius:12px;box-shadow:0 24px 60px rgba(15,36,23,.22);opacity:0;transform:translateY(-12px) scale(.98);pointer-events:none;transition:opacity .22s,transform .22s}
.site-header nav.open{opacity:1;transform:none;pointer-events:auto}.site-header nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-size:15px}.site-header nav .nav-cta{margin-top:12px;padding:13px 18px;text-align:center;border:0;border-radius:8px}
.hero-home{min-height:620px;height:auto;display:flex;align-items:flex-end;padding:110px 22px 52px}.hero-planner{display:none}.hero-copy{max-width:640px}.hero-copy h1{font-size:clamp(47px,11vw,68px)}.hero-copy>p:not(.eyebrow){font-size:16px}.trust-bar{grid-template-columns:1fr 1fr}.tailor-image,.tailor-image img{min-height:400px}.inner-hero{padding-top:70px;min-height:330px}.trip-hero{min-height:520px;padding-top:100px}
}
@media(max-width:620px){
.brand-official{width:156px;height:52px}.hero-home{min-height:570px;padding:102px 18px 38px}.hero-copy h1{font-size:46px}.hero-copy .eyebrow{font-size:10px;letter-spacing:2.2px;margin-bottom:14px}.hero-copy>p:not(.eyebrow){line-height:1.55}.hero-copy .actions{gap:9px;margin-top:24px}.hero-copy .btn{min-height:48px}.trust-bar{grid-template-columns:1fr 1fr;padding:0}.trust-bar div{padding:16px 17px}.trust-bar strong{font-size:15px}.trust-bar span{font-size:10px}.section{padding-top:62px;padding-bottom:62px}.card-image{height:220px}.tailor-image,.tailor-image img{min-height:300px}.tailor-copy{padding-top:52px;padding-bottom:52px}.inner-hero{min-height:290px;padding:52px 20px 34px}.inner-hero h1{font-size:42px}.inner-hero>p{font-size:15px;line-height:1.55}.filters{padding:16px}.trip-hero{min-height:480px;padding:105px 20px 36px}.trip-hero h1{font-size:43px}.trip-summary{gap:13px}.trip-summary span{font-size:12px}.footer-brand>img{width:174px;height:68px}
}

/* September client handoff: planner, horizontal browsing and review carousel */
.hero-planner input,.hero-planner select{width:100%;min-height:48px;background:#fff;border:1px solid var(--line);padding:11px 13px;color:var(--ink);border-radius:2px}.planner-people{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-planner .btn{width:100%}.form-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.horizontal-track{display:flex;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;padding-bottom:14px}.horizontal-track::-webkit-scrollbar{height:6px}.horizontal-track::-webkit-scrollbar-thumb{background:var(--gold);border-radius:999px}.horizontal-track>*{scroll-snap-align:start;flex:0 0 calc((100% - 36px)/3)}
.review-grid{grid-template-columns:none}.review-grid blockquote{display:flex;flex-direction:column;min-height:295px}.review-grid blockquote>p{flex:1}.carousel-note{text-align:right;margin-top:10px;color:var(--muted);font-size:11px;letter-spacing:.5px}.card-meta strong{font-size:14px;color:var(--clove)}
@media(max-width:980px){.hero-home{min-height:620px;height:auto;display:grid;grid-template-columns:1fr;align-items:end;padding:110px 22px 52px}.hero-planner{display:block;margin-top:26px;max-width:620px;width:100%}.horizontal-track>*{flex-basis:calc((100% - 18px)/2)}}
@media(max-width:620px){.hero-home{min-height:auto;padding:102px 18px 38px}.hero-planner{padding:22px 18px}.hero-planner h2{font-size:27px}.horizontal-track{margin-right:-22px;padding-right:22px}.horizontal-track>*{flex-basis:84vw;max-width:360px}.type-card{min-height:300px}.review-grid blockquote{min-height:280px}}

/* October contact update: social channels directly below the fixed header. */
.social-strip{position:fixed;z-index:49;top:76px;left:0;right:0;min-height:38px;display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:6px clamp(22px,5vw,72px);background:var(--forest);color:#fff;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 5px 18px rgba(14,35,23,.12);font-size:12px}
.social-strip>span{margin-right:auto;color:rgba(255,255,255,.7);font-size:10px;font-weight:800;letter-spacing:1.4px;text-transform:uppercase}
.social-strip a{display:inline-flex;align-items:center;gap:6px;color:#fff;font-weight:700;white-space:nowrap}
.social-strip a:hover,.social-strip a:focus-visible{color:var(--gold)}
.social-logo{display:block;width:22px;height:22px;flex:0 0 22px;border-radius:6px;box-shadow:0 2px 7px rgba(0,0,0,.18)}
footer{grid-template-columns:minmax(300px,1.35fr) minmax(130px,.55fr) minmax(170px,.65fr) minmax(150px,.6fr);gap:clamp(28px,5vw,74px)}
.footer-social a{display:inline-flex;align-items:center;gap:9px}
.footer-social .social-logo{width:24px;height:24px;flex-basis:24px}
.hero-home{padding-top:146px}
.inner-page{padding-top:114px}
.inner-page .inner-hero{padding-top:38px}
.inner-page .trip-hero{padding-top:82px}
.inner-page .form-page{padding-top:100px}
@media(max-width:980px){
.social-strip{top:70px;min-height:42px;padding:7px 16px;gap:14px}
.site-header nav{inset:124px 12px auto auto}
.hero-home{padding-top:136px}
.inner-page{padding-top:112px}
.inner-page .inner-hero{padding-top:30px}
.inner-page .trip-hero{padding-top:63px}
.inner-page .form-page{padding-top:98px}
footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:620px){
.social-strip{justify-content:center;gap:12px;padding-inline:10px;font-size:11px}
.social-strip>span{display:none}
.social-strip .social-logo{width:20px;height:20px;flex-basis:20px}
.hero-home{padding-top:130px}
footer{grid-template-columns:1fr}.footer-brand{grid-column:auto}
}
@media(max-width:380px){.social-strip a span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.social-strip .social-logo{width:23px;height:23px;flex-basis:23px}}
