@font-face{font-family:Fraunces;src:url('/faro/assets/fraunces.woff') format('woff');font-weight:600;font-display:swap}@font-face{font-family:Bricolage;src:url('/faro/assets/bricolage.woff') format('woff');font-weight:100 900;font-display:swap}
:root{--earth:#171210;--bark:#26201b;--bone:#f3eadb;--amber:#f2a33a;--moss:#7fb069;--muted:#c9bca9;--clay:#c8553d;color-scheme:dark;font-family:Bricolage,Arial,sans-serif;color:var(--bone);background:var(--earth)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--amber);outline-offset:5px}button:disabled{cursor:default;opacity:.6}h1:focus{outline:0}button{color:inherit}button:active{transform:translateY(1px)}.faro-shell{position:relative;min-height:650px;height:100svh;height:100dvh;display:grid;grid-template-rows:88px minmax(0,1fr) 92px;isolation:isolate;overflow:hidden}.scenery{position:absolute;inset:0;z-index:-4;background:url('/faro/assets/tupi-scene.webp') center/cover no-repeat;transform:scale(1.025);animation:scene-in 1.2s ease-out both}.shade{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(23,18,16,.72),transparent 70%),linear-gradient(0deg,#171210 0%,transparent 28%,transparent 75%,rgba(23,18,16,.45));pointer-events:none}#atmosphere{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:.65}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 5vw;gap:20px}.wordmark{display:block;line-height:0}.wordmark img{width:130px;height:auto}.concept{font-size:10px;letter-spacing:2px;display:flex;align-items:center;gap:12px;color:var(--muted)}.concept i{width:4px;height:4px;background:var(--amber);border-radius:50%}.back-posteral{font-size:13px;display:flex;align-items:center;gap:28px;min-height:44px}.back-posteral span{font-size:22px}main{min-height:0;position:relative}.screen{height:100%;padding:12px 7vw 10px}.screen[hidden]{display:none!important}.intro{display:flex;align-items:center}.intro-copy{width:min(510px,48vw)}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:600;color:var(--amber);margin:0 0 20px;display:flex;align-items:center;gap:10px}.small-line{width:28px;height:1px;background:var(--amber)}h1{font:600 clamp(44px,5.5vw,82px)/1.02 Fraunces,Georgia,serif;letter-spacing:-2.6px;margin:0 0 18px;text-wrap:balance}h1 em{font-style:normal;color:var(--amber)}.lede{font-size:17px;line-height:1.5;color:var(--muted);margin:0 0 26px}.budget-block{max-width:360px}.budget-block label{font-size:14px}.budget-row{display:flex;align-items:baseline;gap:12px;margin-top:7px}.budget-row output{font-size:36px;letter-spacing:-1px}.budget-row>span{font-size:12px;color:var(--muted)}input[type=range]{width:100%;height:28px;accent-color:var(--amber);cursor:pointer;margin:7px 0 0}.budget-labels{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.preferences{display:flex;gap:25px;margin:20px 0}.preferences label{font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:5px;min-width:0}.preferences select{border:0;border-bottom:1px solid #77644a;background:#211c17;color:var(--bone);border-radius:0;font-size:14px;min-height:40px;padding:2px 24px 2px 8px;max-width:180px}.primary{background:var(--amber);color:var(--earth);border:1px solid var(--amber);min-height:52px;padding:14px 22px;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:28px;border-radius:9px;transition:background .2s,transform .2s}.primary:hover{background:#ffc46f}.primary span{font-size:20px;font-weight:400}.intro .primary{width:360px;max-width:100%}.tupi-caption{position:absolute;right:7vw;bottom:4%;display:flex;align-items:center;gap:16px}.tupi-caption p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}.tupi-caption strong{color:var(--bone);font-size:14px;font-weight:500}.caption-line{width:40px;height:1px;background:var(--amber)}footer{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:0 5vw;border-top:1px solid #c9bca92b}.step-nav{display:flex;gap:22px;align-items:center}.step-nav button{border:0;background:none;padding:15px 0;color:var(--muted);font-size:12px;min-height:44px;white-space:nowrap}.step-nav span{font-size:10px;margin-right:8px;color:#a99985}.step-nav button[aria-current=step]{color:var(--amber)}.step-nav button[aria-current=step] span{color:var(--amber)}.resources{display:flex;align-items:center;gap:22px;font-size:11px;color:var(--muted)}.resources a{display:flex;align-items:center;min-height:44px}.resources a:hover{color:var(--bone)}#motion{background:transparent;border:1px solid #c9bca94b;border-radius:50%;height:44px;width:44px;font-size:16px}.faro-shell[data-step="1"] .shade,.faro-shell[data-step="2"] .shade{background:rgba(23,18,16,.94)}.screen-heading{margin-bottom:25px}.screen-heading .eyebrow{margin-bottom:10px}.screen-heading h1{font-size:clamp(38px,4vw,60px);margin-bottom:0}.idea-screen,.trail-screen{display:flex;flex-direction:column;justify-content:center;max-width:1440px;width:100%;margin:auto}.idea-card{display:grid;grid-template-columns:1fr 1.1fr;border:1px solid #c9bca930;background:#26201bc4;min-height:0;border-radius:16px;overflow:hidden;max-height:450px}.idea-art{min-height:0;position:relative;overflow:hidden}.idea-art:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#171210bb)}.idea-art img{width:100%;height:100%;object-fit:cover}.art-label{position:absolute;bottom:20px;left:25px;z-index:1;font-size:9px;letter-spacing:2px}.idea-count{position:absolute;top:20px;left:25px;font-size:13px;color:var(--bone);background:#171210b3;padding:7px 10px;border-radius:5px}.idea-info{padding:28px 32px;display:flex;flex-direction:column;min-height:0}.idea-info .eyebrow{margin-bottom:10px}h2{font:600 clamp(26px,3vw,42px)/1.12 Fraunces,Georgia,serif;letter-spacing:-1px;margin:0 0 12px}.idea-description{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 20px}.numbers{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 25px;margin:0;padding:18px 0;border-top:1px solid #c9bca930;border-bottom:1px solid #c9bca930}.numbers dt{font-size:11px;color:var(--muted);margin-bottom:4px}.numbers dd{margin:0;font-size:23px;font-weight:500}.estimate{font-size:11px;color:#d8ba8a;margin:10px 0 6px}.condition{font-size:11px;line-height:1.5;color:var(--muted);margin:0 0 16px}.idea-actions{display:flex;gap:12px;margin-top:auto}.idea-actions .primary{flex:1}.circle{width:52px;min-width:52px;border:1px solid #c9bca960;border-radius:50%;background:transparent;font-size:23px}.trail-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;min-height:0;align-items:center}.trail-story{display:grid;grid-template-columns:150px 1fr;gap:0 25px;align-items:center}.trail-portrait{grid-row:span 2;height:200px;border-radius:45% 45% 10% 10%;background:url('/faro/assets/tupi-scene.webp') 92% center/auto 100%;border-bottom:1px solid #f2a33a88}.trail-story p{font:600 26px/1.28 Fraunces,Georgia,serif;letter-spacing:-.5px;margin:0}.trail-story p em{color:var(--amber);font-style:normal}.trail-story>span{font-size:8px;letter-spacing:1.8px;color:var(--muted)}.trail-panel{max-width:540px;width:100%;justify-self:end}.progress-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:14px}.progress-label span:last-child{color:var(--moss)}.progress-track{height:3px;background:#f3eadb26}.progress-track>div{height:100%;width:0;background:var(--moss);transition:width .4s}.trail-steps{padding:0;margin:18px 0;list-style:none;counter-reset:steps}.trail-steps li{display:flex;align-items:center;gap:14px;font-size:14px;min-height:51px;border-bottom:1px solid #f3eadb16;color:var(--muted)}.trail-steps li:before{counter-increment:steps;content:counter(steps,decimal-leading-zero);font-size:10px;color:#a79b8a;flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #f3eadb2b}.trail-steps li.current{color:var(--bone)}.trail-steps li.current:before{color:var(--earth);background:var(--amber);border-color:var(--amber)}.trail-steps li.done:before{content:'✓';color:var(--moss);border-color:var(--moss)}.step-detail{min-height:62px;font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 16px}.trail-panel .primary{width:100%}.supplier-note{font-size:10px;color:var(--muted);margin:12px 0 0;line-height:1.4}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.paused *{animation:none!important;transition:none!important}@keyframes scene-in{from{transform:scale(1.07);opacity:.6}to{transform:scale(1.025);opacity:1}}
@media(min-width:801px) and (min-height:561px) and (max-height:790px){.faro-shell{grid-template-rows:72px minmax(0,1fr) 68px}.intro h1{font-size:clamp(42px,4.5vw,62px)}.eyebrow{margin-bottom:12px}.lede{margin-bottom:16px}.preferences{margin:12px 0}.budget-row output{font-size:30px}.idea-info{padding:16px 24px}.idea-description{margin-bottom:12px}.numbers{gap:12px;padding:12px 0}.screen-heading{margin-bottom:18px}}
@media(max-width:800px){.faro-shell{min-height:620px;grid-template-rows:68px minmax(0,1fr) 114px}.topbar{padding:12px 6vw}.wordmark img{width:120px}.concept{font-size:8px;letter-spacing:1px}.concept i,.concept{display:none}.back-posteral{font-size:12px;gap:14px}.screen{padding:10px 6vw}.scenery{background-position:80% top;background-size:auto 68%;background-color:var(--earth);background-repeat:no-repeat}.shade{background:linear-gradient(0deg,#171210 20%,#171210f5 37%,#17121077 61%,#17121000 90%)}.intro{align-items:flex-end}.intro-copy{width:100%;position:relative}.intro .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:10px}.intro h1{font-size:clamp(38px,9.3vw,58px);line-height:1.03;letter-spacing:-1.6px;margin-bottom:10px}.lede{font-size:14px;line-height:1.35;margin-bottom:15px}.lede br{display:none}.budget-block{max-width:none}.budget-block label{font-size:13px}.budget-row{margin-top:4px}.budget-row output{font-size:29px}.budget-row>span{font-size:10px}.preferences{margin:12px 0;gap:22px}.preferences label{font-size:9px;flex:1}.preferences select{font-size:13px;min-height:36px;max-width:none;width:100%}.primary{font-size:13px;min-height:48px;padding:11px 17px}.intro .primary{width:100%}.tupi-caption{display:none}footer{flex-direction:column;gap:0;margin:0 6vw;justify-content:center;padding:6px 0}.step-nav{width:100%;justify-content:space-between;gap:8px}.step-nav button{font-size:11px;padding:12px 0}.step-nav span{margin-right:5px;font-size:8px}.resources{width:100%;justify-content:center;gap:25px;font-size:10px}.resources #motion{width:34px;height:34px;min-width:34px;font-size:12px}.screen-heading{margin-bottom:16px}.screen-heading .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:8px}.screen-heading h1{font-size:36px;letter-spacing:-1px}.idea-screen,.trail-screen{justify-content:center}.idea-card{grid-template-columns:1fr;max-height:none}.idea-art{height:140px}.idea-art img{object-position:center 55%}.art-label{bottom:12px;left:17px;font-size:7px}.idea-count{top:12px;left:17px;font-size:10px;padding:5px 8px}.idea-info{padding:17px}.idea-info .eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:7px}.idea-info h2{font-size:28px;margin-bottom:7px}.idea-description{font-size:12px;line-height:1.4;margin:0 0 12px}.numbers{gap:10px 20px;padding:10px 0}.numbers dt{font-size:9px}.numbers dd{font-size:20px}.estimate{font-size:9px;margin:8px 0 4px}.condition{font-size:10px;line-height:1.4;margin-bottom:12px}.circle{width:46px;min-width:46px}.idea-actions .primary{font-size:12px;gap:10px}.trail-layout{display:block}.trail-story{display:none}.trail-panel{max-width:none}.trail-steps li{min-height:56px;font-size:13px}.step-detail{font-size:12px;min-height:74px}.supplier-note{font-size:9px}.trail-screen .screen-heading{margin-bottom:25px}.progress-label{font-size:12px}.faro-shell[data-step="2"] .scenery{background-size:auto 100%}.faro-shell[data-step="2"] .shade{background:rgba(23,18,16,.91)}}
@media(max-width:800px) and (max-height:740px){.faro-shell{grid-template-rows:56px minmax(0,1fr) 98px;min-height:568px}.intro h1{font-size:37px}.intro .lede{margin-bottom:10px;font-size:12px}.intro .eyebrow{margin-bottom:6px}.intro-copy{padding-top:0}.preferences{margin:9px 0}.budget-row output{font-size:26px}.budget-labels{font-size:9px}input[type=range]{margin-top:2px;height:22px}.budget-block label{font-size:12px}.screen-heading h1{font-size:30px}.screen-heading{margin-bottom:10px}.idea-art{height:80px}.idea-info{padding:12px 15px}.idea-info h2{font-size:25px}.idea-description{font-size:11px;margin-bottom:8px}.numbers{gap:7px}.numbers dd{font-size:18px}.condition{font-size:9px;margin-bottom:9px}.estimate{font-size:9px}.trail-screen .screen-heading{margin-bottom:16px}.trail-steps{margin:12px 0}.trail-steps li{min-height:44px;font-size:12px}.step-detail{min-height:64px;font-size:11px;margin-bottom:10px}.supplier-note{margin-top:8px}.resources{gap:20px}.resources a{min-height:36px}.step-nav button{min-height:40px}}
@media(max-height:560px) and (min-width:600px){.faro-shell{min-height:360px;grid-template-rows:50px minmax(0,1fr) 55px}.topbar{padding:6px 5vw}.wordmark img{width:120px}.concept{display:none}.screen{padding:5px 5vw}.intro-copy{width:70%;display:grid;grid-template-columns:1fr 1fr;gap:8px 25px}.intro .eyebrow{display:none}.intro h1{font-size:36px;grid-row:span 2;align-self:center;margin:0}.intro .lede{display:none}.budget-block{grid-column:2}.budget-block label{font-size:11px}.budget-row output{font-size:24px}.preferences{grid-column:2;margin:0}.preferences select{min-height:32px;font-size:11px}.intro .primary{grid-column:2;min-height:42px;font-size:11px}.budget-labels{font-size:8px}.tupi-caption{display:none}footer{flex-direction:row;padding:0;gap:25px}.step-nav{width:auto;gap:20px}.resources{width:auto;gap:15px}.resources #motion{width:32px;height:32px}.idea-screen,.trail-screen{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:25px}.screen-heading h1{font-size:36px}.screen-heading .eyebrow{font-size:8px}.idea-card{grid-template-columns:.5fr 1fr;max-height:100%}.idea-art{height:auto}.idea-info{padding:12px 16px}.idea-info h2{font-size:25px}.idea-description,.art-label{display:none}.condition{display:block;font-size:8px;line-height:1.25;margin:0 0 5px}.numbers{padding:8px 0;gap:7px}.numbers dd{font-size:17px}.estimate{font-size:9px;margin:7px 0}.idea-actions .primary{min-height:40px;font-size:10px;padding:7px 10px;gap:8px}.circle{width:40px;min-width:40px}.trail-story{display:none}.trail-layout{display:block}.trail-steps{margin:7px 0}.trail-steps li{min-height:31px;font-size:11px}.trail-steps li:before{width:22px;height:22px}.step-detail{min-height:38px;font-size:10px;margin-bottom:7px}.trail-panel .primary{min-height:40px;font-size:11px}.supplier-note{font-size:8px;margin-top:5px}.progress-label{font-size:11px;margin-bottom:8px}}
@media(max-width:800px) and (max-height:610px) and (orientation:portrait){.faro-shell{grid-template-rows:48px minmax(0,1fr) 88px}.screen{padding:5px 6vw}.topbar{padding:4px 6vw}.screen-heading h1{font-size:28px}.screen-heading{margin-bottom:8px}.idea-art{height:42px;flex-shrink:0}.art-label{left:auto;right:10px;bottom:8px}.idea-count{top:7px;left:12px}.idea-info{padding:10px 12px}.idea-info h2{font-size:23px;margin-bottom:5px}.idea-info .eyebrow{font-size:7px;margin-bottom:5px}.idea-description{font-size:10px;margin-bottom:7px}.numbers{padding:8px 0;gap:6px}.numbers dd{font-size:18px}.numbers dt{margin-bottom:3px}.condition{font-size:9px;margin-bottom:8px}.estimate{font-size:8px;margin-top:6px}.idea-actions .primary{min-height:44px;padding:8px 10px;font-size:11px}.trail-screen .screen-heading{margin-bottom:10px}.trail-steps{margin:8px 0}.trail-steps li{min-height:36px;font-size:11px}.step-detail{min-height:62px;font-size:10px;line-height:1.35;margin-bottom:8px}.trail-panel .primary{min-height:44px}.supplier-note{font-size:8px}.progress-label{margin-bottom:9px}.intro h1{font-size:33px}.intro .lede{font-size:11px}.preferences select{min-height:32px}.intro .primary{min-height:44px}.step-nav button{font-size:10px}.step-nav span{margin-right:3px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}#atmosphere{display:none}}@media(forced-colors:active){button,a,input,select{outline:1px solid ButtonText}.shade{background:Canvas}.scenery,#atmosphere{display:none}}

@media(orientation:landscape) and (max-height:560px) and (min-width:600px) and (max-width:800px){.idea-card{grid-template-columns:1fr}.idea-art{display:none}.idea-info h2{font-size:23px}.idea-screen,.trail-screen{grid-template-columns:.8fr 2fr;gap:18px}.screen-heading h1{font-size:30px}.step-nav{gap:12px}.resources{gap:12px}.trail-steps li{min-height:30px}.trail-screen .screen-heading{margin-bottom:0}}

@media(min-width:801px) and (min-height:561px) and (max-height:790px){.trail-steps{margin:12px 0}.trail-steps li{min-height:44px}.step-detail{min-height:55px;margin-bottom:10px}.trail-story{grid-template-columns:110px 1fr;gap:0 15px}.trail-portrait{height:160px}.trail-story p{font-size:22px}.supplier-note{margin-top:8px}}

/* Keep readable type at every viewport. Short windows reflow vertically. */
.faro-shell{height:auto;min-height:100svh;min-height:100dvh;grid-template-rows:auto minmax(min-content,1fr) auto;overflow:visible}
.scenery{transform:none;animation:faro-scene-appear 1.2s ease-out both}
@keyframes faro-scene-appear{from{opacity:.6}to{opacity:1}}
.topbar{min-height:88px;padding:20px max(5vw,env(safe-area-inset-right)) 20px max(5vw,env(safe-area-inset-left));padding-top:max(20px,env(safe-area-inset-top))}
.concept{font-size:12px;letter-spacing:1.5px}.back-posteral{font-size:14px}
main{display:grid;min-width:0}.screen{height:auto;min-width:0;padding:16px max(7vw,env(safe-area-inset-right)) 20px max(7vw,env(safe-area-inset-left))}
.intro-copy{width:min(510px,48vw)}.intro .eyebrow,.eyebrow{font-size:12px;letter-spacing:1.8px;line-height:1.35;margin-bottom:16px}
.intro h1{font-size:clamp(44px,5.5vw,82px);margin-bottom:18px}.intro .lede{display:block;font-size:17px;line-height:1.5;margin-bottom:20px}
.budget-block label{font-size:14px;line-height:1.4}.budget-row{margin-top:6px}.budget-row output{font-size:36px}.budget-row>span,.budget-labels{font-size:12px}
input[type=range]{font-size:16px;min-height:32px;margin:4px 0 0}.preferences{display:flex;gap:20px;margin:16px 0}.preferences label{font-size:12px;line-height:1.35;gap:5px;min-width:0}
.preferences select{font-size:16px;min-height:44px;padding:4px 28px 4px 8px;max-width:none;width:100%}
.primary,.intro .primary,.idea-actions .primary,.trail-panel .primary{min-height:48px;font-size:14px;line-height:1.35;padding:11px 17px;gap:12px}.primary span{flex:none}.circle{width:48px;min-width:48px;min-height:48px}
footer{min-height:92px;padding:12px 0 max(12px,env(safe-area-inset-bottom));margin:0 max(5vw,env(safe-area-inset-right)) 0 max(5vw,env(safe-area-inset-left));gap:16px}
.step-nav{gap:20px;min-width:0}.step-nav button{font-size:12px;line-height:1.35;min-height:44px;padding:10px 0}.step-nav span{font-size:12px;margin-right:6px}
.resources{font-size:12px;gap:20px}.resources a{min-height:44px}.resources #motion{width:44px;height:44px;min-width:44px;font-size:16px}
.screen-heading,.trail-screen .screen-heading{margin-bottom:18px}.screen-heading .eyebrow{font-size:12px;letter-spacing:1.5px;margin-bottom:8px}.screen-heading h1{font-size:clamp(38px,4vw,60px)}
.idea-screen,.trail-screen{display:flex;flex-direction:column;justify-content:center;gap:0}.idea-card{grid-template-columns:1fr 1.1fr;max-height:none;min-height:auto;overflow:visible}
.idea-art{display:block;height:auto;min-height:180px;border-radius:15px 0 0 15px}.idea-art img{display:block}.art-label{display:block;font-size:12px;letter-spacing:1px;bottom:16px;left:20px;right:auto}.idea-count{font-size:14px;top:16px;left:20px}
.idea-info{min-width:0;min-height:auto;padding:24px}.idea-info .eyebrow{font-size:12px;letter-spacing:1.5px;margin-bottom:8px}.idea-info h2{font-size:clamp(28px,3vw,42px);margin-bottom:10px}
.idea-description{display:block;font-size:14px;line-height:1.4;margin:0 0 14px}.numbers{gap:12px 20px;padding:14px 0}.numbers dt{font-size:12px;line-height:1.3;margin-bottom:4px}.numbers dd{font-size:23px;line-height:1.2}
.estimate{font-size:12px;line-height:1.4;margin:10px 0 6px}.condition{display:block;font-size:12px;line-height:1.4;margin:0 0 14px}.idea-actions{margin-top:auto}
.trail-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:5vw;min-width:0}.trail-story{display:grid;grid-template-columns:130px 1fr;gap:0 20px}.trail-portrait{height:180px}.trail-story p{font-size:24px}.trail-story>span{font-size:12px;letter-spacing:1px}
.trail-panel{min-width:0}.progress-label{font-size:14px;line-height:1.4;gap:12px;margin-bottom:12px}.progress-label span:last-child{white-space:nowrap}.trail-steps{margin:16px 0}.trail-steps li{min-height:48px;font-size:14px;line-height:1.4;padding:8px 0;gap:12px}.trail-steps li:before{font-size:12px;width:28px;height:28px}
.step-detail{font-size:14px;line-height:1.45;min-height:82px;margin:0 0 14px}.supplier-note{font-size:12px;line-height:1.4;margin:10px 0 0}
.no-script{display:flex;flex-direction:column;align-items:flex-start;gap:20px;max-width:640px;min-height:100svh;margin:auto;padding:max(32px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(32px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.no-script h1{font-size:clamp(36px,7vw,60px);margin:0}.no-script p{font-size:16px;line-height:1.5;margin:0}.no-script a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;color:var(--amber);text-decoration:underline;text-underline-offset:4px}
@media(max-width:1100px) and (min-width:801px){.trail-story{grid-template-columns:100px 1fr;gap:0 14px}.trail-story p{font-size:22px}.trail-portrait{height:160px}.resources{gap:14px}.step-nav{gap:14px}.topbar .concept{font-size:12px;letter-spacing:1px}}
@media(max-width:800px){
 .faro-shell{min-height:100svh;min-height:100dvh;grid-template-rows:auto minmax(min-content,1fr) auto}
 .topbar{min-height:64px;padding:max(10px,env(safe-area-inset-top)) max(6vw,env(safe-area-inset-right)) 10px max(6vw,env(safe-area-inset-left))}.wordmark img{width:120px}.back-posteral{font-size:14px;gap:14px}
 .screen{padding:12px max(6vw,env(safe-area-inset-right)) 12px max(6vw,env(safe-area-inset-left))}.intro{align-items:flex-end}.intro-copy{display:block;width:100%;padding:0}
 .intro .eyebrow{display:flex;font-size:12px;letter-spacing:1.2px;margin-bottom:10px}.intro h1{font-size:clamp(36px,9.3vw,58px);line-height:1.03;margin-bottom:12px}.intro .lede{font-size:14px;line-height:1.4;margin-bottom:14px}
 .budget-block{max-width:none}.budget-block label{font-size:14px}.budget-row output{font-size:30px}.budget-row>span,.budget-labels{font-size:12px}
 .preferences{gap:12px;margin:14px 0}.preferences label{font-size:12px;flex:1}.preferences label:first-child{flex:0 0 34%}.preferences select{min-height:44px;font-size:16px}.intro .primary{width:100%}
 footer{flex-direction:column;justify-content:center;gap:0;min-height:104px;padding:8px 0 max(8px,env(safe-area-inset-bottom));margin:0 max(6vw,env(safe-area-inset-right)) 0 max(6vw,env(safe-area-inset-left))}
 .step-nav{width:100%;justify-content:space-between;gap:6px}.step-nav button{font-size:12px;white-space:normal;text-align:left;min-height:44px;padding:8px 0}.step-nav span{font-size:12px;margin-right:4px}.resources{width:100%;justify-content:center;font-size:12px;gap:18px}.resources a{min-height:44px}
 .screen-heading,.trail-screen .screen-heading{margin-bottom:14px}.screen-heading .eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:6px}.screen-heading h1{font-size:32px;line-height:1.1}
 .idea-screen,.trail-screen{display:flex;justify-content:center;gap:0}.idea-card{grid-template-columns:1fr;max-height:none}.idea-art{display:block;height:88px;min-height:88px;border-radius:15px 15px 0 0}.idea-art img{object-position:center 55%}.art-label{font-size:12px;letter-spacing:.6px;left:auto;right:12px;bottom:10px}.idea-count{font-size:12px;left:12px;top:10px;padding:5px 8px}
 .idea-info{padding:12px}.idea-info .eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:6px}.idea-info h2{font-size:28px;line-height:1.12;margin-bottom:8px}.idea-description{font-size:14px;line-height:1.4;margin-bottom:8px}.numbers{gap:8px 16px;padding:10px 0}.numbers dt{font-size:12px;margin-bottom:4px}.numbers dd{font-size:22px}.estimate{font-size:12px;line-height:1.4;margin:8px 0 4px}.condition{font-size:12px;line-height:1.4;margin-bottom:10px}.idea-actions .primary{font-size:14px;gap:10px;padding:11px 12px}
 .trail-layout{display:block}.trail-story{display:none}.trail-panel{max-width:none}.trail-steps{margin:12px 0}.trail-steps li{font-size:14px;min-height:48px}.step-detail{font-size:14px;line-height:1.45;min-height:84px;margin-bottom:12px}.supplier-note{font-size:12px;margin-top:10px}.progress-label{font-size:14px;margin-bottom:10px}
}
@media(max-width:360px){.step-nav button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px}.step-nav span{margin-right:0}.resources{gap:12px}}
@media(max-height:560px) and (min-width:600px){
 .topbar{min-height:64px}.intro{align-items:center}.intro-copy{width:min(560px,75%);display:block}.intro .eyebrow{display:flex}.intro h1{font-size:42px}.intro .lede{display:block}.tupi-caption{display:none}
 .idea-screen,.trail-screen{display:flex;flex-direction:column;gap:0}.idea-card{grid-template-columns:1fr 1.25fr}.idea-art{display:block;height:auto;min-height:180px;border-radius:15px 0 0 15px}.idea-description,.art-label{display:block}.trail-layout{display:block}.trail-story{display:none}.trail-panel{max-width:none}
 footer{flex-direction:column}.step-nav,.resources{width:100%;justify-content:center;gap:20px}.screen-heading h1{font-size:36px}
}
/* An explicit arrow keeps native select chrome from covering the chosen text. */
.preferences select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--bone) 50%),linear-gradient(135deg,var(--bone) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-size:4px 4px;background-repeat:no-repeat}
@media(max-width:800px){.faro-shell[data-step="0"] .shade{background:linear-gradient(0deg,#171210 20%,#171210f5 37%,#17121099 61%,#17121088 100%)}}

