.premium-calculator{margin-top:2rem;padding:clamp(1.25rem,3vw,2.5rem);background:#183029 url('assets/textures/contours-night.svg');color:#f5f0e3;border:1px solid #667265;border-radius:6px}.premium-calculator h3{color:inherit;font-size:clamp(1.5rem,3vw,2rem)}.premium-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.premium-inputs label{display:flex;flex-direction:column;gap:.45rem}.premium-inputs select,.premium-inputs input{width:100%;min-height:48px;background:#f6f1e6;color:#20372c;border:1px solid #b4a789;border-radius:3px;padding:.6rem;font:inherit}.premium-calculator [hidden],.premium-bike-viewer[hidden],.premium-map[hidden],#premium-help [hidden]{display:none!important}.quote-status{border-left:3px solid #dfa657;padding-left:1rem}.quote-totals{display:grid;grid-template-columns:1fr auto;gap:1rem;border-block:1px solid #647163;padding-block:1.25rem}.quote-totals dt,.quote-totals dd{margin:0;align-self:center}.quote-totals dd{text-align:right;font-size:1.5rem;font-weight:700}.quote-totals small{display:block;font-size:.85rem;font-weight:400;color:#dedacc}.quote-totals dd:last-child{font-size:clamp(1.7rem,3vw,2.2rem);color:#f1be62}.quote-terms{font-size:.9rem}.premium-map{height:440px;max-height:70vh;background:#e7e3d7;margin-top:1rem;z-index:0}.premium-map:fullscreen,.premium-map.map-expanded{height:100vh;max-height:none;width:100vw}.premium-map.map-expanded{position:fixed;inset:0;z-index:9999}.premium-map-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block:1rem}.premium-map-privacy{font-size:.875rem}.premium-map-pin{background:#20392c;color:#fff;border:2px solid #f8eed6;border-radius:15px;text-align:center;line-height:26px;font:700 12px/26px sans-serif;box-shadow:0 2px 5px #0007}.map-day-button{display:block;text-align:left;color:#853915;background:#f5f0e5;border:1px solid #c8c0b2;padding:.6rem;margin:.5rem 0;min-height:44px;width:100%;cursor:pointer}.premium-selected-day{outline:2px solid #a64a23;outline-offset:4px}.premium-route-link{display:inline-block;margin-top:1rem}.premium-bike-link{display:inline-block;margin:1rem 0}.premium-bike-viewer{grid-column:1/-1;background:#183029;color:#f5f0e3;padding:1.5rem;border-radius:5px}.viewer-stage{height:clamp(240px,40vw,540px);overflow:hidden;touch-action:pan-y;cursor:grab;background:#16281f;display:grid;place-items:center}.viewer-stage img{height:100%;width:100%;object-fit:contain;user-select:none;pointer-events:none}.viewer-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.viewer-controls button,#premium-help button{min-height:44px;padding:.6rem .8rem;font:inherit;cursor:pointer}.premium-help-launcher{position:fixed;right:18px;z-index:44;min-height:44px;padding:.6rem 1rem;border:1px solid #c4b489;border-radius:4px;background:#20382d;color:#fff7e3;font:700 .9rem inherit;box-shadow:0 3px 12px #0003;cursor:pointer}#premium-help{width:min(480px,calc(100vw - 24px));max-height:85dvh;box-sizing:border-box;background:#f7f2e7;color:#20382d;border:1px solid #8a937c;border-radius:7px;padding:1.25rem;overflow-y:auto;z-index:10000}#premium-help::backdrop{background:#101c16a3}.premium-help-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.premium-help-heading h2{font-size:1.5rem;margin:0}.help-mode{font-size:.85rem}.help-topics{display:flex;gap:.5rem;flex-wrap:wrap}.help-answer{margin-block:1rem;white-space:pre-line}.help-answer strong{display:block}.help-answer p{margin-top:.35rem}.help-handoff{display:grid;gap:.7rem;border-top:1px solid #c5beaf;padding-top:1rem}.help-ai{border-top:1px solid #c5beaf;padding-top:1rem}.help-ai label{display:block;margin:.8rem 0}.help-ai textarea{width:100%;font:inherit;padding:.6rem;box-sizing:border-box}.help-ai p{font-size:.85rem}.premium-map-actions button:focus-visible,.premium-calculator :focus-visible,.premium-bike-viewer :focus-visible,#premium-help :focus-visible,.premium-help-launcher:focus-visible{outline:3px solid #f4bd52;outline-offset:4px}@media(max-width:600px){.premium-inputs{grid-template-columns:1fr}.quote-totals{gap:.8rem}.quote-totals dd{font-size:1.2rem}.quote-totals dt{font-size:.9rem}.premium-map{height:360px}.premium-help-launcher{right:12px}.premium-calculator .btn{width:100%;box-sizing:border-box}}@media(prefers-reduced-motion:reduce){.premium-bike-viewer *{scroll-behavior:auto;transition:none!important}}
.route-viewer:fullscreen,.route-viewer.premium-map-expanded{position:fixed;inset:0;z-index:9999;background:#f7f2e7;color:#20382d;padding:1.5rem;overflow:auto;box-sizing:border-box}.route-viewer:fullscreen .premium-map,.premium-map-expanded .premium-map{height:60vh;max-height:60vh}.premium-map .leaflet-popup-content{color:#20382d}.premium-bike-viewer h3{color:inherit}

/* Tour help uses the same terrain, typography and warm accents as the site. */
body.adventure-ui .premium-help-launcher{
 display:inline-flex;align-items:center;gap:10px;padding:12px 18px;
 background:#20382d url('assets/textures/contours-night.svg') center/460px;
 border:1px solid #9b9875;border-radius:5px;color:#f7f3ea;
 font:600 16px/1.2 var(--adv-heading);letter-spacing:.045em;text-transform:uppercase;
 box-shadow:0 5px 18px #0c19163d;transition:background-color var(--adv-ease),box-shadow var(--adv-ease);
}
body.adventure-ui .premium-help-launcher::before{
 content:'?';display:grid;place-items:center;width:22px;height:22px;box-sizing:border-box;
 border:1.5px solid #e7b96e;border-radius:50%;color:#e7b96e;font:600 15px/1 var(--adv-heading);
}
body.adventure-ui .premium-help-launcher:hover{background-color:#2a4738;box-shadow:0 7px 22px #0c191655}
body.adventure-ui #premium-help{
 width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 48px);margin:auto;padding:0;
 background:linear-gradient(#182d25e8,#182d25f5),url('assets/textures/contours-night.svg') center/640px;
 background-color:#182d25;color:#f7f3ea;border:1px solid #788170;border-top:3px solid #c26835;
 border-radius:9px;box-shadow:0 24px 90px #06110dcc;overscroll-behavior:contain;
 scrollbar-width:thin;scrollbar-color:#75816d #182d25;isolation:isolate;
 font:400 15px/1.6 Roboto,Arial,sans-serif;text-align:left;
}
body.adventure-ui #premium-help::backdrop{background:#07150fd1;backdrop-filter:blur(5px)}
body.adventure-ui #premium-help .premium-help-heading{
 position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:18px;
 margin:0;padding:24px 28px 18px;background:#182d25 url('assets/textures/contours-night.svg') center/640px;
 border-bottom:1px solid #85907838;
}
body.adventure-ui #premium-help .premium-help-heading h2{
 margin:0;color:#f7f3ea;font:650 32px/1.1 var(--adv-heading);text-transform:uppercase;letter-spacing:.015em;
}
body.adventure-ui #premium-help .help-close{
 display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;min-height:40px;margin:0;padding:0;
 background:#f7f3ea08;border:1px solid #a4aa945c;border-radius:4px;color:#f7f3ea;font-size:0;box-shadow:none;
}
body.adventure-ui #premium-help .help-close::before{content:'×';font:300 29px/1 Arial,sans-serif}
body.adventure-ui #premium-help .help-close:hover{background:#f7f3ea18;border-color:#cdbb91}
body.adventure-ui #premium-help .help-context{margin:20px 28px 10px;color:#f7f3ea;font-size:17px;line-height:1.55}
body.adventure-ui #premium-help .help-mode{
 display:block;margin:0 28px 22px;padding:0 0 0 12px;border-left:2px solid #c89c5e;
 color:#c6cbbb;font-size:12px;line-height:1.55;
}
body.adventure-ui #premium-help .help-topics{display:grid;grid-template-columns:1fr;gap:9px;margin:0 28px 22px;padding:0}
body.adventure-ui #premium-help .help-topics button{
 display:flex;align-items:center;gap:14px;float:none;width:100%;min-height:58px;margin:0;padding:14px 17px;
 border:1px solid #82927663;border-radius:5px;background:#f7f3ea09;color:#f7f3ea;text-align:left;
 font:500 18px/1.35 var(--adv-heading);letter-spacing:.025em;text-transform:uppercase;
 transition:background-color var(--adv-ease),border-color var(--adv-ease);
}
body.adventure-ui #premium-help .help-topics button::before{
 content:'';flex:0 0 23px;width:23px;height:23px;background:#e3b66f;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m16 8-3 5-5 3 3-5 5-3Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.adventure-ui #premium-help .help-topics button::after{content:'→';margin-left:auto;color:#d2cfbe;font:400 23px/1 Arial,sans-serif}
body.adventure-ui #premium-help .help-topics button:hover{background:#f7f3ea13;border-color:#cba36b}
body.adventure-ui #premium-help .help-answer:empty{display:none}
body.adventure-ui #premium-help .help-answer:not(:empty){
 margin:0 28px 22px;padding:20px;background:#f5f0e5;color:#24382c;border-radius:5px;
 border:1px solid #c6beac;white-space:normal;font-size:14px;line-height:1.65;
}
body.adventure-ui #premium-help .help-answer strong{display:block;margin:18px 0 6px;color:#20372b;font:600 19px/1.3 var(--adv-heading)}
body.adventure-ui #premium-help .help-answer strong:first-child{margin-top:0}
body.adventure-ui #premium-help .help-answer p{margin:0 0 12px;color:#394c3e;white-space:pre-line;font-size:14px;line-height:1.65}
body.adventure-ui #premium-help .help-answer a{display:inline-block;color:#973b1b;font-weight:600;text-decoration:underline;text-underline-offset:3px}
body.adventure-ui #premium-help>.help-answer+form+p{margin:0 28px 20px;color:#c6cbbb;font-size:12px;line-height:1.65}
body.adventure-ui #premium-help .help-handoff{display:grid;gap:9px;margin:0 28px 26px;padding:20px 0 0;border-top:1px solid #8590784d}
body.adventure-ui #premium-help .help-handoff a{
 display:flex;align-items:center;justify-content:space-between;gap:12px;box-sizing:border-box;min-height:48px;
 padding:12px 17px;border:1px solid #82927663;border-radius:5px;background:#f7f3ea06;color:#f7f3ea;
 font:500 16px/1.35 var(--adv-heading);letter-spacing:.025em;text-transform:uppercase;text-decoration:none;
 transition:background-color var(--adv-ease),box-shadow var(--adv-ease),transform var(--adv-ease);
}
body.adventure-ui #premium-help .help-handoff a::after{content:'↗';font:400 21px/1 Arial,sans-serif}
body.adventure-ui #premium-help .help-handoff a:first-child{
 min-height:53px;border-color:#da8148;background-color:var(--adv-orange);color:#fff;
 background-image:url('assets/textures/cta-terrain.svg'),linear-gradient(115deg,#e870292e,#70200b30);
 background-position:center;background-size:100% 100%;box-shadow:inset 0 1px 0 #ffc28b40,0 3px 10px #0002;
 font-weight:600;font-size:18px;
}
body.adventure-ui #premium-help .help-handoff a:hover{background-color:#f7f3ea12;border-color:#cba36b}
body.adventure-ui #premium-help .help-handoff a:first-child:hover{background-color:#933717;transform:translateY(-2px);box-shadow:0 6px 16px #0004}
body.adventure-ui #premium-help .help-ai{margin:0 28px 20px;padding:18px 0 0;background:transparent;border:0;border-top:1px solid #8590784d;box-shadow:none;color:#f7f3ea}
body.adventure-ui #premium-help .help-ai p,body.adventure-ui #premium-help .help-ai label{color:#d5d8ca;font-size:13px}
body.adventure-ui #premium-help .help-ai a{color:#e3b66f}
body.adventure-ui #premium-help .help-ai textarea{background:#f5f0e5;color:#20372b;border:1px solid #c6beac;border-radius:4px;max-width:100%}
body.adventure-ui #premium-help .help-ai button{background:var(--adv-orange);color:#fff;border:1px solid #da8148;border-radius:4px;font-family:var(--adv-heading)}
body.adventure-ui #premium-help :focus-visible,body.adventure-ui .premium-help-launcher:focus-visible{outline:3px solid #efbb62;outline-offset:3px}
@media(max-width:600px){
 body.adventure-ui #premium-help{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
 body.adventure-ui #premium-help .premium-help-heading{padding:20px 20px 16px}
 body.adventure-ui #premium-help .premium-help-heading h2{font-size:29px}
 body.adventure-ui #premium-help .help-context{margin:18px 20px 10px;font-size:16px}
 body.adventure-ui #premium-help .help-mode{margin:0 20px 18px}
 body.adventure-ui #premium-help .help-topics{margin:0 20px 18px}
 body.adventure-ui #premium-help .help-topics button{font-size:17px;min-height:56px;padding:13px 14px;gap:12px}
 body.adventure-ui #premium-help .help-answer:not(:empty){margin:0 20px 18px;padding:17px}
 body.adventure-ui #premium-help>.help-answer+form+p{margin:0 20px 18px}
 body.adventure-ui #premium-help .help-handoff{margin:0 20px 20px;padding-top:18px}
 body.adventure-ui #premium-help .help-ai{margin:0 20px 18px}
}
@media(prefers-reduced-motion:reduce){body.adventure-ui #premium-help *,body.adventure-ui .premium-help-launcher{transition:none!important}body.adventure-ui #premium-help .help-handoff a:first-child:hover{transform:none}}
