/* Adventure-only presentation. The quote API owns all prices and allocations. */
.v-product-page .v-product-hero{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6%;padding:4px 0 64px}
.v-product-page .v-product-hero h1{font-size:clamp(42px,5vw,72px);line-height:1.03;margin:18px 0 26px;overflow-wrap:normal}
.v-product-page .v-product-hero>.v-photo{height:clamp(460px,45vw,610px)}
.v-product-page .v-product-hero .v-facts{padding:16px 0;font-size:14px;color:var(--olive)}
.v-product-page .v-product-hero p{max-width:40ch;margin:10px 0 28px;font-size:17px;line-height:1.7}
.v-product-page .v-product-copy>.vd-section{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:8%;padding:48px 0;border-top:1px solid var(--line)}
.v-product-page .vd-section>h2{font-size:clamp(30px,3.2vw,44px);margin:0;max-width:12ch;line-height:1.15}
.vd-section-content{min-width:0}
.v-product-page .v-highlights{display:block;margin:0;padding:0}
.v-product-page .v-highlights li{display:flex;align-items:baseline;gap:24px;border:0;border-bottom:1px solid var(--line);font:26px/1.35 Georgia,serif;padding:18px 0!important}
.v-product-page .v-highlights li:first-child{padding-top:0!important}
.v-highlights li>span{font:italic 16px Georgia,serif;color:var(--olive)}
.v-product-page .vd-places{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 28px}
.v-product-page .vd-places li{font:20px/1.45 Georgia,serif;padding:9px 0;border-bottom:1px solid var(--line)}
.v-product-page .vd-photography{display:block!important}
.v-product-page .vd-photography>h2{max-width:none;margin-bottom:24px}
.v-product-page .v-gallery figure{flex-basis:46%;margin:0}
.v-product-page .v-gallery{gap:24px;scrollbar-width:thin;scrollbar-color:var(--olive) transparent}
.v-product-page .v-gallery .v-photo{height:420px}
.v-product-page .v-gallery figcaption{font-size:12px}
.vd-itinerary{list-style:none;margin:0;padding:0!important}
.vd-itinerary li{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:24px 0!important;border-bottom:1px solid var(--line)}
.vd-itinerary li:first-child{padding-top:0!important}
.vd-itinerary h3{font:26px/1.3 Georgia,serif;margin:0 0 12px}
.vd-itinerary p{margin:0}
.v-product-page .v-inclusions{gap:40px}
.v-product-page .v-inclusions h3{margin:0 0 18px;font-size:25px}
.v-product-page .v-inclusions ul{padding-left:18px;margin:0;font-size:15px;line-height:1.65}
.v-product-page .v-practical summary{font-size:23px;line-height:1.4;padding:20px 0}
.v-product-page .v-practical details:first-child summary{border-top:0;padding-top:0}
.v-product-page .v-practical p,.v-product-page .v-practical li{font-size:15px;line-height:1.65}
.v-product-page .v-booking{position:static;order:initial;scroll-margin-top:24px;background:var(--paper);padding:48px;margin:32px 0 0;border-top:1px solid var(--olive);width:100%}
.v-booking #booking-heading{font-size:clamp(36px,3.8vw,52px);line-height:1.12;margin:0 0 14px}
.v-booking>.v-kicker{margin-bottom:14px}
.qc-intro,.qc-note{font-size:14px;line-height:1.6;color:var(--olive);margin:10px 0 0}
.qc-intro{margin:0 0 36px;max-width:50ch}
#qc-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:8%;align-items:start}
.qc-fields{min-width:0}
.qc-step{padding:26px 0;border-top:1px solid var(--line)}
.qc-step h3,.qc-step>label{display:block;font:400 25px/1.3 Georgia,serif;margin:0 0 16px;color:var(--ink)}
.qc-step:first-child{padding-top:0;border-top:0}
.qc-journey p{font-size:15px;margin:0}
.qc-lodging{border-top:1px solid var(--line);padding:18px 0}
.v-booking .qc-lodging>summary{font:400 25px/1.3 Georgia,serif;cursor:pointer;min-height:48px;margin:0;padding:8px 0}
.qc-option{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}
.qc-option strong{font:21px/1.3 Georgia,serif}.qc-option small{display:block;font-size:12px;color:var(--olive);margin-top:5px}
.qc-counter{display:flex;align-items:center;gap:4px;flex-shrink:0}
.qc-counter button{width:44px;height:44px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:22px}
.qc-counter output{min-width:25px;text-align:center;font-size:17px;font-variant-numeric:tabular-nums}
#qc-form button:disabled{opacity:.4;cursor:default}
#qc-form .v-stepper{border-color:var(--line);margin-top:12px;height:58px;max-width:270px;grid-template-columns:56px minmax(0,1fr) 56px}
#qc-form .v-stepper input{width:100%;min-width:0;font-size:22px;background:transparent;color:var(--ink);border-radius:0}
#qc-form .v-stepper button{background:transparent;font-size:25px}
#qc-form input[type=date]{box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:54px;padding:12px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:16px Arial,sans-serif}
#qc-capacity{font-size:14px;line-height:1.5;margin:14px 0 0;color:var(--olive)}
#qc-capacity.qc-capacity-short{color:#922e25}
.qc-summary{position:sticky;top:min(24px,calc(100dvh - var(--summary-height,760px) - 24px));border-top:1px solid var(--olive);padding-top:24px;min-width:0}
.qc-summary>h3{font:28px/1.2 Georgia,serif;margin:0 0 22px}
.qc-selection{margin:0 0 24px}
.qc-selection>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;padding:7px 0;font-size:13px;line-height:1.6}
.qc-selection dt{color:var(--olive)}.qc-selection dd{margin:0;overflow-wrap:anywhere}
.qc-result{border-top:1px solid var(--line);padding:24px 0 0;font-size:15px}
.qc-result>strong{display:block;font:28px/1.25 Georgia,serif}.qc-result p{line-height:1.65}
.qc-caption{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--olive)}
.qc-total{display:flex;flex-direction:column;gap:8px;margin:14px 0 26px;font-size:13px}
.qc-total strong{font:400 clamp(36px,3.6vw,48px)/1.1 Georgia,serif;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
.qc-result dl{margin:0}.qc-result dl>div{display:flex;justify-content:space-between;gap:18px;margin:12px 0;font-size:14px}
.qc-result dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.qc-due{margin:20px 0;font-size:13px}.qc-due strong{font-weight:500;color:var(--ink)}
.qc-updating{font-size:13px;color:var(--olive);margin:0 0 12px}
.qc-result.is-updating>*:not(.qc-updating){opacity:.4}
#qc-wa{display:flex;width:fit-content;margin:12px auto 0;font-size:13px;min-height:48px}
.qc-reassurance{text-align:center;font-size:12px;margin-top:16px}
#qc-error:empty{display:none}#qc-submit{width:100%;min-height:52px;margin-top:18px}
#qc-form :focus-visible{outline:2px solid var(--olive);outline-offset:4px}
#qc-form button:not(:disabled):hover{background:var(--sage);color:var(--ink)}
.v-product-page .vd-related .v-kicker{margin-top:18px}
.v-product-page .vd-final{border-top:1px solid var(--line);padding:48px 0 70px;display:flex;align-items:center;justify-content:space-between;gap:40px}
.vd-final h2{font-size:clamp(34px,3.4vw,48px);max-width:600px;margin:0}
.vd-final .v-button{flex-shrink:0}
@media(max-width:1024px){
 .v-product-page .v-booking{padding:32px}
 #qc-form{gap:6%;grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
 .qc-selection>div{grid-template-columns:75px 1fr;gap:12px}
 .v-product-page .v-gallery .v-photo{height:340px}
}
@media(max-width:850px){
 .v-product-page .v-product-hero{grid-template-columns:1fr;gap:28px;padding-bottom:40px}
 .v-product-page .v-product-hero>.v-photo{height:400px}
 .v-product-page .v-product-hero h1{font-size:clamp(40px,7.4vw,62px);max-width:700px;margin:14px 0 18px}
 .v-product-page .v-product-hero p{font-size:16px;margin:0 0 22px;max-width:52ch}
 .v-product-page .v-crumbs{padding:10px 0 16px;line-height:1.5}
 .v-product-page .v-product-copy>.vd-section{grid-template-columns:1fr;gap:24px;padding:32px 0}
 .v-product-page .vd-section>h2{max-width:600px;font-size:34px}
 .v-product-page .v-gallery figure{flex-basis:76%}
 .v-product-page .v-booking{padding:28px 24px;margin-top:20px}
 #qc-form{display:block}
 .qc-summary{position:static;margin-top:32px;padding-top:28px}
 .qc-selection>div{grid-template-columns:100px 1fr}
 .qc-intro{margin-bottom:28px}
 .qc-total strong{font-size:42px}
 .v-product-page .v-bottom{gap:12px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--paper)}
 .v-product-page .v-bottom .v-button{font-size:12px;min-height:48px;padding:10px 16px}
 .v-product-page .v-bottom span{max-width:42%;line-height:1.5}.v-bottom b{font-size:14px}
 .v-product-page{padding-bottom:calc(85px + env(safe-area-inset-bottom))}
 .v-product-page .whatsapp{bottom:calc(100px + env(safe-area-inset-bottom))!important}
 .v-product-page .vd-final{display:block;padding:32px 0 48px}
 .vd-final .v-button{margin-top:24px}
}
@media(max-width:480px){
 .v-product-page .v-product-hero>.v-photo{height:315px}
 .v-product-page .v-product-hero .v-kicker{font-size:10px;margin-bottom:14px}
 .v-product-page .vd-places{grid-template-columns:1fr 1fr;gap:0 20px}
 .v-product-page .vd-places li{font-size:18px}
 .v-product-page .v-gallery .v-photo{height:280px}
 .v-product-page .v-gallery{gap:16px}
 .v-product-page .v-booking{padding:28px 18px;margin-inline:-4px;width:calc(100% + 8px)}
 .v-booking #booking-heading{font-size:36px}
 .qc-option{gap:8px}.qc-option strong{font-size:19px}
 .qc-counter{gap:2px}.qc-counter output{min-width:22px}
 .qc-step h3,.qc-step>label,.v-booking .qc-lodging>summary{font-size:24px}
 .qc-selection>div{grid-template-columns:84px 1fr;gap:12px}
 .v-product-page .v-inclusions{grid-template-columns:1fr;gap:28px}
}
@media(prefers-reduced-motion:no-preference){.qc-counter button,#qc-form .v-stepper button{transition:background-color .16s,color .16s}.qc-result>*{transition:opacity .16s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.v-product-page *{scroll-behavior:auto!important}}
