.ride-planner{--ink-soft:#66564a;--rule:#c9bba8;--planner-nav-height:73px;overflow-x:clip}.ride-planner #main{padding-top:var(--planner-nav-height)}.ride-planner [hidden]{display:none!important}:where(.ride-planner) :is(button,input,select,textarea){font:inherit}.ride-planner button{cursor:pointer}.planner-shell :focus-visible{outline:3px solid #a83b26;outline-offset:4px}.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}.planner-shell{display:grid;grid-template-columns:43% 57%;align-items:start;background:linear-gradient(90deg,var(--dirt) 43%,var(--beige) 43%)}.ride-scene{position:sticky;top:var(--planner-nav-height);height:calc(100svh - var(--planner-nav-height));min-height:420px;background:var(--dirt);color:var(--beige);overflow:hidden;display:flex;flex-direction:column;padding:32px clamp(24px,3.2vw,56px)}.scene-images,.scene-images:after,.scene-images img{position:absolute;inset:0;width:100%;height:100%}.scene-images img{object-fit:cover;object-position:17% center}#scene-next{opacity:0}.scene-images:after{content:"";background:linear-gradient(180deg,transparent 18%,rgba(20,14,10,.15) 35%,rgba(20,14,10,.94) 90%)}.scene-story{position:relative;margin-top:auto;padding-top:120px}.scene-story p{font-size:15px;line-height:1.5;color:var(--beige)}.live-brief{position:relative;border-top:1px solid #a89b8980;margin-top:24px}.live-brief summary{font-size:18px;line-height:1.5;display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;list-style:none;color:var(--gold);min-height:64px}.live-brief summary::-webkit-details-marker{display:none}.live-brief summary>span{transition:transform var(--dur-med) var(--ease-out)}.live-brief[open] summary>span{transform:rotate(45deg)}#live-summary{max-height:49svh;overflow:auto;scrollbar-width:thin;scrollbar-color:#a89b89 transparent;padding-right:6px}.live-row{display:grid;grid-template-columns:90px minmax(0,1fr);align-items:start;gap:18px;font-size:15px;line-height:1.55}.live-row>span{padding:12px 0;color:#c1b6a6}.live-row button{font:inherit;display:block;min-height:44px;padding:12px 0;line-height:inherit;overflow-wrap:anywhere;background:none;border:0;text-align:left;color:var(--beige)}.live-row button:hover{text-decoration:underline;text-underline-offset:4px}.ride-scene :focus-visible{outline-color:var(--gold)}.planner-workspace{min-width:0;padding:16px clamp(24px,4vw,72px) 24px;min-height:calc(100svh - var(--planner-nav-height))}.planner-return{display:inline-flex;align-items:center;gap:12px;font-size:14px;min-height:44px;margin-bottom:0;color:var(--ink-soft)}.planner-return:hover{text-decoration:underline;text-underline-offset:4px}.planner-tools{display:flex;justify-content:space-between;align-items:center;gap:16px}.planner-tools>button{font-size:14px;min-height:44px;background:none;border:0;color:var(--ink-soft);white-space:nowrap}.planner-tools>button:hover{text-decoration:underline;text-underline-offset:4px}.resume-note,.restart-confirm{border-left:3px solid var(--molten);padding:12px 16px;background:var(--beige-d);font-size:14px;line-height:1.6;margin:8px 0 20px}.resume-note{display:flex;align-items:center;justify-content:space-between;gap:12px}.resume-note button{border:0;background:none;min-width:44px;min-height:44px;font-size:24px}.restart-confirm>div{display:flex;gap:24px;flex-wrap:wrap;margin-top:8px}.restart-confirm button{border:0;border-bottom:1px solid var(--ink-soft);background:none;min-height:44px;font-size:14px}.step-track{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:24px}.step-track button{border:0;border-top:2px solid var(--rule);padding:14px 0 8px;width:100%;display:flex;gap:7px;align-items:center;background:none;color:var(--ink-soft);font-size:14px;min-height:44px;white-space:nowrap}.step-track button[aria-current]{border-color:var(--dirt);color:var(--dirt);font-weight:700}.step-track button:disabled{opacity:.5;cursor:default}.step-track button.done{border-color:#9b4633}.step-index{display:none}.question-head{margin-bottom:24px}.question-head h2{font-size:clamp(38px,4vw,62px);line-height:.98;letter-spacing:-.015em;margin-bottom:12px;scroll-margin-top:calc(var(--planner-nav-height) + 24px)}.question-head>p:last-child{font-size:16px;color:var(--ink-soft);max-width:45ch;line-height:1.6}.ride-planner fieldset{border:0;min-width:0}.ride-planner legend{font-size:16px;font-weight:600;margin-bottom:16px}.terrain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.terrain-choice{display:block;position:relative;min-width:0;min-height:160px;aspect-ratio:2.1;cursor:pointer;background:var(--dirt);color:var(--beige);overflow:hidden}.terrain-choice>img{height:100%;width:100%;position:absolute;object-fit:cover;transition:transform var(--dur-slow) var(--ease-out)}.terrain-choice input,.choice input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;z-index:3;margin:0}.terrain-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,#1c130df2 100%)}.terrain-copy{position:absolute;bottom:20px;left:20px;right:16px}.terrain-copy strong{font-family:shuttleblock-condensed,sans-serif;font-size:28px;line-height:1.1;text-transform:uppercase;font-weight:700;display:block;max-width:18ch}.terrain-check{position:absolute;right:12px;top:12px;border:1px solid #fff9;width:24px;height:24px;display:grid;place-content:center;color:transparent;z-index:2;font-size:14px;transition:background-color var(--dur-fast) ease}.terrain-choice:has(input:checked){outline:3px solid var(--molten);outline-offset:-3px}.terrain-choice:has(input:checked) .terrain-check{background:var(--molten);color:var(--dirt);border-color:var(--molten)}.terrain-choice:has(input:focus-visible),.choice:has(input:focus-visible){outline:3px solid #a83b26;outline-offset:4px}.any-choice{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:16px;cursor:pointer;min-height:55px}.any-choice input{accent-color:var(--dirt);width:18px;height:18px;flex:none}.any-check{margin-left:auto;opacity:0}.any-choice:has(input:checked) .any-check{opacity:1}.selection-note{font-size:14px;color:var(--ink-soft);margin-top:12px;line-height:1.5}.selection-note:empty{display:none}.ride-choices{margin-bottom:30px}.choice-options{display:grid;gap:8px}.choice{position:relative;display:flex;align-items:center;gap:16px;border:1px solid var(--rule);padding:17px 18px;min-height:58px;cursor:pointer;transition:background-color var(--dur-fast) ease,border-color var(--dur-fast) ease}.choice-mark{width:16px;height:16px;border:1px solid #9f9081;border-radius:50%;flex:none}.choice strong{font-size:16px;font-weight:400;display:block;line-height:1.5}.choice small{display:block;font-size:14px;font-weight:400;color:var(--ink-soft);margin-top:4px;line-height:1.6}.choice:has(input:checked){border-color:var(--dirt);background:var(--dirt);color:var(--beige)}.choice:has(input:checked) .choice-mark{border:5px solid var(--gold);background:var(--dirt)}.choice:has(input:checked) small{color:var(--beige-d)}.compact .choice-options{grid-template-columns:repeat(2,minmax(0,1fr))}.compact .choice{padding:16px;gap:12px}[data-group=electric] .choice-options{grid-template-columns:repeat(3,minmax(0,1fr))}.ride-step>label,.field-pair>label,[data-branch]>label,.prototype-controls label{font-size:16px;font-weight:500;display:block;margin-top:24px}.ride-planner label>small{font-size:14px;color:var(--ink-soft);font-weight:400;margin-left:8px}.ride-planner input:not([type=radio]):not([type=checkbox]),.ride-planner textarea,.ride-planner select{display:block;width:100%;min-width:0;min-height:56px;margin-top:10px;border:1px solid #b9aa98;background:#f8f3ea;color:var(--dirt);padding:16px;font-size:16px;border-radius:0}.ride-planner input::placeholder,.ride-planner textarea::placeholder{color:#7b6a58;opacity:1}.ride-planner textarea{resize:vertical;line-height:1.8}.field-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field-hint,.setup-note{font-size:14px;line-height:1.6;color:var(--ink-soft);margin:10px 0 20px}.check-line{display:flex!important;align-items:center;gap:10px;font-size:14px!important;line-height:1.6;min-height:44px;margin:15px 0 24px!important}.check-line input{accent-color:var(--dirt);width:18px;height:18px;flex:none}[data-branch=count]{margin-top:-12px;margin-bottom:30px}.summary-row button{background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:14px;min-height:44px;color:var(--dirt)}.suggestions{margin-bottom:32px}.suggestions h2{font-size:32px;line-height:1.1}.suggestions>p{font-size:15px;color:var(--ink-soft);margin:10px 0 20px;line-height:1.65;max-width:48ch}#suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.suggestion-card{min-width:0;background:#e8ddcc;border:1px solid var(--rule);display:flex;flex-direction:column}.suggestion-photo{position:relative;aspect-ratio:1.5;background:var(--dirt);overflow:hidden}.suggestion-photo:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#1c130db3)}.suggestion-photo img{width:100%;height:100%;object-fit:cover}.suggestion-place{position:absolute;bottom:14px;left:16px;right:16px;font-size:15px;color:var(--beige);z-index:1}.suggestion-body{padding:18px;display:flex;flex-direction:column;flex:1}.suggestion-card h3{font-family:shuttleblock-condensed,sans-serif;font-size:28px;line-height:1.1;margin-bottom:12px}.suggestion-card p{font-size:14px;line-height:1.7}.suggestion-date{color:var(--ink-soft);margin:4px 0 18px}.suggestion-links{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin-top:auto}.suggestion-links a,.suggestion-links button{font:inherit;font-size:14px;min-height:44px;display:flex;justify-content:space-between;align-items:center;border:0;border-bottom:1px solid var(--rule);background:none;padding:10px 0;text-align:left;color:var(--dirt)}.suggestion-links button[aria-pressed=true]{color:#923b28;border-color:#923b28;font-weight:700}.suggestion-card.is-selected{border-color:#923b28;box-shadow:inset 0 -3px #923b28}.shortlist-controls{display:none}.recap-details{border-top:1px solid var(--dirt);border-bottom:1px solid var(--dirt);margin:28px 0}.recap-details>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:20px 0;font-size:18px;font-weight:600;list-style:none}.recap-details>summary::-webkit-details-marker{display:none}.recap-details>summary>span{font-size:14px;font-weight:400;color:var(--ink-soft)}.summary-row{display:grid;grid-template-columns:100px minmax(0,1fr) 44px;gap:12px;align-items:baseline;font-size:15px;line-height:1.6;border-top:1px solid var(--rule);padding:9px 0}.summary-row>span{font-size:14px;color:var(--ink-soft)}.summary-row>p{overflow-wrap:anywhere}.privacy-note{font-size:14px;color:var(--ink-soft);margin-top:14px;line-height:1.7}.privacy-note a{text-decoration:underline}.response-promise{display:flex;gap:16px;padding:20px 0 10px;font-size:14px;line-height:1.7;margin-top:14px}.response-promise>span{font-size:32px;line-height:1;color:#943d2b}.response-promise strong{display:block;margin-bottom:3px}.prototype-note{font-size:14px;color:var(--ink-soft);display:flex;gap:9px;align-items:center;margin:20px 0}.prototype-note>span{width:6px;height:6px;flex:none;border-radius:50%;background:#a6402c}.prototype-controls{font-size:14px;color:var(--ink-soft);border-top:1px dashed var(--rule);padding-top:15px}.prototype-controls summary{cursor:pointer;min-height:44px}.prototype-controls label{margin-top:5px}#form-error{border-left:3px solid #a03822;color:#812c19;background:#efd6c5;padding:14px 16px;margin-top:20px;font-size:16px;line-height:1.6}.ride-planner input[aria-invalid=true]:not([type=radio]):not([type=checkbox]),.ride-planner select[aria-invalid=true]{border-color:#a03822}.ride-choices.is-invalid .choice{border-color:#a03822}.planner-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding-top:18px;border-top:1px solid var(--rule)}#step-count{font-size:14px;color:var(--ink-soft);margin-right:auto}.next-button{border:1px solid var(--dirt);padding:18px 22px;background:var(--dirt);color:var(--beige);font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:56px;transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease}.next-button>span{font-size:20px;line-height:1}.next-button:hover{background:var(--molten);color:var(--dirt)}.next-button:disabled{opacity:.65;cursor:wait}.back-button{background:none;border:0;border-bottom:1px solid var(--rule);padding:12px 0;font-size:14px;min-height:44px;white-space:nowrap}.back-button:hover{border-color:var(--dirt)}.outcome{padding-top:38px}.outcome-stamp{display:grid;place-content:center;width:68px;height:68px;border:1px solid var(--dirt);border-radius:50%;font-size:30px;margin-bottom:30px;background:var(--gold)}.chapter{font-size:14px;color:#97412d;margin-bottom:12px}.outcome h2{font-size:clamp(40px,4.6vw,70px);line-height:1;margin:15px 0 25px}.outcome>p:not(.chapter){font-size:16px;line-height:1.8;max-width:52ch}.reference{color:var(--ink-soft);margin-top:18px;font-size:14px!important}.saved-brief{margin-top:25px;border-block:1px solid var(--rule);padding:18px 0;font-size:14px}.saved-brief summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.saved-brief pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;padding-top:20px;line-height:1.8}.outcome-actions{display:flex;gap:24px;align-items:center;margin:24px 0 12px;flex-wrap:wrap}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid var(--rule);margin-top:26px;padding:10px 0}.nojs{padding-top:50px}.nojs h2{font-size:48px}.nojs p{margin-top:25px}.nojs a{text-decoration:underline}@media(hover:hover)and (pointer:fine){.terrain-choice:hover>img{transform:scale(1.045)}.choice:hover{border-color:var(--dirt)}}@media(min-width:1500px){.planner-workspace{padding-top:28px}.question-head{margin-top:40px}.terrain-choice{min-height:210px}}@media(max-width:1200px){.step-label{display:none}.step-index{display:inline}.step-track button{justify-content:center}.planner-workspace{padding-inline:28px}.live-row{grid-template-columns:78px minmax(0,1fr);gap:12px;font-size:14px}.terrain-copy{left:16px;bottom:16px}.terrain-copy strong{font-size:25px}.suggestion-body{padding:14px}}@media(max-width:900px){.ride-planner{--planner-nav-height:65px}.planner-shell{grid-template-columns:1fr;background:var(--beige)}.ride-scene{position:relative;top:auto;height:auto;min-height:0;padding:0;display:block}.scene-images{height:280px}.scene-images img{object-position:center 42%}.scene-images:after{background:linear-gradient(180deg,transparent 20%,#1c130d55 50%,#1c130de6)}.scene-story{margin:0;height:216px;padding:0 24px;display:flex;align-items:flex-end}.scene-story p{font-size:14px}.ride-scene:has(.live-brief[hidden]) .scene-story{height:280px;padding-bottom:24px}.live-brief{margin:12px 24px 0;padding-bottom:20px}.live-brief summary{font-size:16px;min-height:44px}.live-brief[open] summary{margin-bottom:8px}#live-summary{max-height:none;padding-right:0}.live-row{grid-template-columns:90px minmax(0,1fr)}.planner-workspace{padding:18px 26px 36px;min-height:600px}.planner-return{margin-bottom:4px}.step-track{margin-bottom:28px}.step-label{display:inline}.step-index{display:none}.step-track button{justify-content:flex-start}.question-head h2{font-size:48px}.terrain-choice{aspect-ratio:1.65}.terrain-copy strong{font-size:28px}.suggestion-body{padding:20px}}@media(max-width:560px){.scene-images{height:232px}.scene-story{height:176px;padding-inline:20px}.ride-scene:has(.live-brief[hidden]) .scene-story{height:232px;padding-bottom:20px}.live-brief{margin-inline:20px;padding-bottom:16px}.planner-workspace{padding:14px 20px 32px}.step-label{display:none}.step-index{display:inline}.step-track{gap:8px;margin-bottom:24px}.step-track button{justify-content:center}.question-head{margin-bottom:28px}.question-head h2{font-size:clamp(31px,9.4vw,46px);line-height:1.02}.terrain-grid{gap:10px}.terrain-choice{height:180px;min-height:180px;aspect-ratio:auto}.terrain-copy{left:14px;bottom:16px;right:12px}.terrain-copy strong{font-size:24px}.terrain-check{width:22px;height:22px;right:10px;top:10px}.any-choice{font-size:15px}.choice{padding:15px 16px;gap:12px}.choice strong{font-size:15px}.compact .choice{padding:14px 12px;gap:10px}.compact .choice-mark{width:14px;height:14px}.compact .choice:has(input:checked) .choice-mark{border-width:4px}.field-pair{grid-template-columns:1fr;gap:0}.planner-actions{gap:12px}.planner-actions #step-count{display:none}.planner-actions .next-button{margin-left:auto;padding-inline:18px;gap:14px;font-size:14px}.summary-row{grid-template-columns:1fr 44px;gap:6px;font-size:15px}.summary-row>span{grid-column:1/-1;padding-top:8px}.summary-row>p{grid-column:1}.summary-row button{grid-column:2}.recap-details>summary{font-size:17px}.recap-details>summary>span{font-size:13px}.suggestions h2{font-size:30px}#suggestions{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 4px 8px;margin:-4px -4px -8px}.suggestion-card{flex:0 0 calc(100% - 28px);scroll-snap-align:start}.suggestion-card:only-child{flex-basis:100%}.shortlist-controls{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:12px;font-size:14px}.shortlist-controls button{width:44px;height:44px;background:none;border:1px solid var(--rule);font-size:20px}.shortlist-controls button:disabled{opacity:.35;cursor:default}.suggestion-photo{aspect-ratio:1.8}.suggestion-body{padding:20px}.suggestion-card h3{font-size:30px}.suggestion-links{flex-direction:row;gap:24px}.suggestion-links a,.suggestion-links button{font-size:14px;flex:1}.outcome{padding-top:20px}.outcome h2{font-size:40px}.outcome-actions{gap:18px}}@media(max-width:360px){.planner-workspace{padding-inline:16px}.terrain-choice{height:170px;min-height:170px}.terrain-copy strong{font-size:22px}.compact .choice-options{grid-template-columns:1fr}[data-group=electric] .choice-options{grid-template-columns:repeat(3,minmax(0,1fr))}.compact .choice{min-height:54px}.planner-return{font-size:13px}.recap-details>summary>span{font-size:12px}.live-row{grid-template-columns:76px minmax(0,1fr);gap:10px}.suggestion-links{gap:16px}.suggestion-links a,.suggestion-links button{font-size:13px}}@media(min-width:901px)and (max-height:650px){.ride-scene{position:relative;top:0;height:auto;min-height:500px}.scene-story{padding-top:200px}#live-summary{max-height:none}}@media(prefers-reduced-motion:reduce){.ride-planner *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
