:root{--ink:#15161c;--muted:#5d6070;--paper:#fff;--line:#e3e5ec;--orange:#ff5a1f;--orange-ink:#361006;--stage:#eaf1f5;--soft:#f4f7f8;--green:#36694f;--ease:cubic-bezier(.16,1,.3,1);font-family:'Bricolage Grotesque',system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light;scroll-behavior:smooth;scrollbar-color:#a6b5be #f4f7f8}
*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.5;font-variant-numeric:tabular-nums}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b43d13;outline-offset:4px}a{color:inherit;text-underline-offset:5px}::selection{background:#ffccba;color:#351307}input,textarea{caret-color:var(--orange)}textarea::placeholder,input::placeholder{color:#69767e}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em;text-wrap:balance}h1,h2{font-weight:800}p{max-width:68ch}svg.icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.shell{max-width:1440px;width:calc(100% - 112px);margin-inline:auto}.skip{position:absolute;left:20px;top:-70px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.brand{font-size:25px;font-weight:800;letter-spacing:-.04em;display:inline-flex;align-items:center;gap:8px;text-decoration:none;white-space:nowrap}.brand .icon{width:30px;height:30px}.site-header{height:104px;display:flex;align-items:center;justify-content:space-between;gap:22px}.site-header nav{display:flex;align-items:center;gap:34px}.quiet-nav{font-size:14px;font-weight:650;text-decoration:none;display:flex;align-items:center;min-height:44px}.quiet-nav:hover{text-decoration:underline}.nav-project{display:flex;gap:9px;align-items:center;border:1px solid #c8d3d9;border-radius:999px;background:white;font-weight:650;font-size:14px;min-height:46px;padding:10px 18px}.nav-project .icon{width:17px}.nav-project span{background:var(--ink);color:white;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;font-size:12px}.studio{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.06fr);gap:62px;padding-top:30px;align-items:start;min-height:690px}.conversation{padding:25px 0 20px;min-width:0}.welcome h1{font-size:clamp(58px,7.5vw,96px);line-height:.99;max-width:650px}.welcome h1 span{color:#465b65}.intro{font-size:21px;line-height:1.5;margin-top:24px;max-width:520px;color:var(--muted)}.intent-composer{margin-top:31px;border:1px solid #afbec7;border-radius:23px;padding:20px 21px 15px;background:white;transition:border-color .2s,box-shadow .25s}.intent-composer:focus-within{border-color:#607581;box-shadow:0 10px 28px -20px #273f5080}.intent-composer label{display:block;font-size:14px;font-weight:650;color:#41535f}.intent-composer textarea{resize:none;border:0;background:transparent;width:100%;font-size:20px;line-height:1.4;min-height:95px;padding:11px 0 5px;color:var(--ink)}.intent-composer textarea:focus{outline:none}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.guide-label{display:flex;align-items:center;gap:8px;font-size:12px;color:#5a6c77}.guide-mark{display:inline-block;position:relative;flex-shrink:0;width:22px;height:22px;border:5px solid var(--orange);border-radius:50%;background:transparent}.guide-mark::after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--orange);right:-7px;bottom:-3px;border:2px solid white}.composer-bottom button{border:0;display:flex;align-items:center;gap:15px;padding:12px 17px;min-height:46px;background:var(--orange);color:var(--orange-ink);font-weight:750;font-size:14px;border-radius:999px;transition:background .2s,transform .25s var(--ease)}.composer-bottom button:hover{background:#ff763e;transform:translateX(2px)}.input-note{font-size:12px;color:var(--muted);margin:12px 4px 0}.idea-starters{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.idea-starters button{display:flex;gap:9px;align-items:center;text-align:left;border:1px solid var(--line);padding:9px 14px;border-radius:999px;background:white;min-height:42px;font-size:13px;font-weight:550;transition:background .2s,border-color .2s}.idea-starters button:hover{background:#f3f7f9;border-color:#9eaeb7}.idea-starters .icon{width:15px;height:15px}.welcome-secondary{display:flex;flex-direction:column;align-items:start;margin-top:22px;gap:1px}.welcome-secondary>span{font-size:12px;color:var(--muted)}.text-action{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:5px 0;background:transparent;border:0;color:var(--ink);font-size:14px;font-weight:650;text-decoration:underline;text-underline-offset:5px}.text-action .icon{width:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:0;min-height:50px;border-radius:999px;padding:13px 22px;font-weight:700;font-size:15px;text-decoration:none;line-height:1.3;transition:transform .25s var(--ease),background .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--orange);color:var(--orange-ink)}.button.primary:hover{background:#ff743f}.button.secondary{background:white;color:var(--ink);box-shadow:inset 0 0 0 1px #bccbd2}.button.secondary:hover{background:#f4f7f8}.button.ink{background:var(--ink);color:#fff}.button .icon{width:19px}.visual-side{position:relative;min-width:0}.house-stage{position:relative;height:638px;background:var(--stage);border-radius:36px;overflow:hidden;isolation:isolate;transition:background .6s var(--ease)}.house-stage[data-project=adu]{background:#e7f0ed}.house-stage[data-project=remodel]{background:#f0eef6}.house-stage[data-project=roofing]{background:#edf1f6}.stage-top{position:absolute;top:24px;left:28px;right:22px;display:flex;align-items:center;justify-content:space-between;z-index:3;color:#516976;font-size:13px}.stage-top>span{display:flex;align-items:center;gap:8px}.stage-dot{width:7px;height:7px;border-radius:50%;background:#668d7c}.round-button{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.8);border:0;display:grid;place-items:center;color:#465e6a}.round-button:hover{background:#fff}.round-button .icon{width:19px}.scene-host{position:absolute;inset:68px 0 119px;overflow:hidden}.scene-host>img{width:calc(100% - 60px);height:calc(100% - 40px);object-fit:cover;margin:20px 30px;border-radius:24px;opacity:.75}.scene-host.ready>img{display:none}#scene-canvas{position:absolute;inset:0}#scene-canvas canvas{display:block;width:100%;height:100%;touch-action:pan-y}.scene-hotspots{position:absolute;inset:68px 0 119px;pointer-events:none}.scene-hotspot{pointer-events:auto;position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;align-items:center;gap:9px;background:#fff;border:0;border-radius:999px;padding:9px 12px;min-height:42px;font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 8px 19px -10px #47616e70;transition:box-shadow .25s,background .25s;z-index:4}.scene-hotspot:hover{background:#fff7f2;box-shadow:0 12px 24px -11px #334c6670}.scene-hotspot[aria-pressed=true]{background:var(--orange);color:var(--orange-ink)}.scene-hotspot .icon{width:14px;height:14px}.hotspot-dot{width:6px;height:6px;border-radius:50%;background:#a3b6bf}.scene-hotspot[aria-pressed=true] .hotspot-dot{background:currentColor}.scene-caption{position:absolute;left:30px;right:30px;bottom:59px;text-align:center;display:flex;flex-direction:column;gap:8px;z-index:3}.scene-caption strong{font-size:23px;line-height:1.15;letter-spacing:-.025em}.scene-caption span{font-size:13px;color:#536974}.model-note{position:absolute;bottom:20px;left:20px;right:20px;text-align:center;color:#536670;font-size:12px}.project-receipt{margin-top:16px;border:1px solid #d5e0e4;border-radius:22px;background:white;padding:24px 27px}.receipt-header{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;font-weight:600;color:var(--muted)}.receipt-header>span{display:flex;align-items:center;gap:8px}.receipt-header .icon{width:17px}.icon-button{width:38px;height:38px;background:transparent;border:0;display:grid;place-items:center;border-radius:50%;color:#54636e}.icon-button:hover{background:var(--soft)}.project-receipt h2{font-size:25px;line-height:1.15;margin-top:10px}.receipt-details{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.brief-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#edf4f0;padding:6px 11px;font-size:12px;color:#315b45}.brief-chip .icon{width:14px;height:14px}.receipt-progress{display:flex;gap:5px;margin-top:22px}.receipt-progress span{height:3px;flex:1;background:#e0e7ea;border-radius:5px}.receipt-progress .done{background:#668f78}.project-receipt>p{font-size:12px;color:var(--muted);margin-top:12px}.studio.is-guiding .house-stage{height:405px}.studio.is-guiding .scene-host,.studio.is-guiding .scene-hotspots{inset:53px 0 90px}.studio.is-guiding .stage-top{top:16px}.studio.is-guiding .scene-caption{bottom:41px}.studio.is-guiding .scene-caption strong{font-size:19px}.studio.is-guiding .scene-caption span{display:none}.studio.is-guiding .model-note{bottom:14px}.studio.is-guiding .scene-hotspot{font-size:12px;padding:7px 10px;min-height:36px}.studio.is-guiding .scene-hotspot .hotspot-dot{display:none}.flow-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 37px}.flow-tools>span{font-size:12px;color:var(--muted)}.back-action{display:flex;align-items:center;gap:8px;min-height:44px;border:0;background:transparent;padding:0;font-size:13px;font-weight:600}.back-action .icon{width:16px}.flow-heading{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}.flow-heading #ai-mode{margin-left:auto;font-size:12px;color:#536571;font-weight:400}.question-body{padding-top:25px}.question-body h2{font-size:clamp(33px,3.4vw,48px);line-height:1.08;max-width:540px}.question-body .reflection{font-size:17px;line-height:1.55;color:var(--muted);margin-top:18px}.question-body .user-quote{font-size:13px;color:#4d616c;margin-bottom:19px;max-width:95%;border:0;padding:0}.question-body .user-quote::before{content:'“'}.question-body .user-quote::after{content:'”'}.answer-options{display:flex;flex-direction:column;gap:10px;margin-top:28px}.answer-option{display:flex;justify-content:space-between;gap:15px;align-items:center;background:#fff;border:1px solid #c6d2d9;color:var(--ink);border-radius:15px;padding:17px 20px;min-height:61px;font-weight:650;font-size:16px;text-align:left;transition:background .2s,border-color .2s,transform .2s var(--ease)}.answer-option:hover{background:#f0f5f6;border-color:#6a838f;transform:translateX(3px)}.answer-option .option-mark{width:22px;height:22px;border:1px solid #b4c4cd;border-radius:50%;flex-shrink:0}.answer-option:hover .option-mark{border:6px solid var(--orange)}.answer-option.small-option{font-size:14px;min-height:48px;font-weight:450}.answer-option.small-option .option-mark{width:18px;height:18px}.skip-question{margin-top:15px;display:flex;align-items:center;justify-content:space-between;gap:14px}.skip-question button{font-size:13px}.why-question{margin-top:20px;font-size:13px;color:var(--muted)}.why-question summary{cursor:pointer;min-height:34px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px}.why-question p{margin-top:7px;max-width:50ch}.custom-answer{display:flex;gap:8px;margin-top:18px}.custom-answer input{min-width:0;flex:1;padding:13px 14px;border:1px solid #b4c4cd;border-radius:12px;background:white}.custom-answer button{border:0;flex-shrink:0;border-radius:12px;background:var(--ink);color:white;width:48px;display:grid;place-items:center}.city-search{position:relative;margin-top:25px}.city-search input{width:100%;padding:15px 18px 15px 45px;border:1px solid #b4c4cd;border-radius:15px;background:white;font-size:17px}.city-search>.icon{position:absolute;left:16px;top:17px;color:#647b88;width:19px}.city-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px;max-height:270px;overflow-y:auto;padding:4px}.city-options button{min-height:52px;border:1px solid #d5dfe4;border-radius:12px;background:white;padding:10px 15px;text-align:left;font-size:14px;font-weight:550}.city-options button:hover{border-color:#7b949f;background:#f3f7f9}.small{font-size:12px;line-height:1.5;color:var(--muted)}.city-hint{font-size:12px;color:var(--muted);margin-top:15px}.thinking-block{padding:12px 0}.thinking-block h2{font-size:43px}.thinking-block p{color:var(--muted);margin-top:20px;font-size:17px}.thinking-line{width:150px;height:5px;overflow:hidden;background:#e7ecef;border-radius:5px;margin-top:34px}.thinking-line::after{content:'';display:block;width:60px;height:5px;border-radius:5px;background:var(--orange);animation:thinking 1.4s ease-in-out infinite}.loading-links{display:flex;gap:20px;margin-top:30px}.inline-error{background:#fff1e8;color:#702d16;border-radius:16px;padding:18px 20px;margin-top:22px;font-size:14px;line-height:1.6}.inline-error button{margin-top:9px;font-size:13px}.manual-categories{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}.manual-categories button{min-height:55px;padding:14px;text-align:left;background:white;border:1px solid #c4d0d6;border-radius:14px;font-size:15px;font-weight:600}.manual-categories button:hover{background:#edf3f6}.resume-strip{padding:15px 0;border-top:1px solid var(--line);margin-top:20px}.resume-strip p{font-size:13px;color:var(--muted)}.confidence-strip{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;align-items:center;padding:23px 0;margin-top:46px}.confidence-strip p{display:flex;align-items:center;gap:10px;font-size:13px;color:#4f646f}.confidence-strip .icon{width:18px;height:18px}.how-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-top:91px}.how-section h2{font-size:42px;line-height:1.07}.how-section>div>p{font-size:18px;color:var(--muted);margin-top:20px;max-width:420px}.how-story article{position:relative;padding:0 0 31px 31px;border-left:1px solid #cbd6dc}.how-story article:last-child{padding-bottom:0;border-color:transparent}.story-line{position:absolute;width:9px;height:9px;background:#6e8e9d;border-radius:50%;left:-5px;top:7px}.how-story h3{font-size:22px;line-height:1.15}.how-story p{font-size:15px;color:var(--muted);margin-top:9px;max-width:430px}.results{margin-top:52px;scroll-margin-top:30px}.results-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:29px}.result-context{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--muted);margin-bottom:12px}.results-heading h2{font-size:clamp(40px,4.1vw,58px);line-height:1.05}.results-heading #results-intro{font-size:17px;color:var(--muted);margin-top:15px;max-width:730px}.results-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:48px}.record-explainer{border-block:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;align-items:start;gap:22px;font-size:12px;line-height:1.55;color:var(--muted)}.record-explainer strong{color:var(--ink);font-weight:650}.record-explainer a{white-space:nowrap;min-height:36px;display:flex;align-items:center}.contractor-record{border-bottom:1px solid var(--line);padding:26px 0}.record-top{display:flex;align-items:start;gap:15px}.rank-number{flex-shrink:0;width:29px;height:29px;display:grid;place-items:center;border:1px solid #bacbd4;border-radius:50%;font-size:12px;margin-top:2px}.record-top h3{font-size:24px;line-height:1.12;flex:1}.record-top h3 a{text-decoration:none}.record-top h3 a:hover{text-decoration:underline}.save-record{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #adbec8;border-radius:999px;background:white;min-height:42px;padding:9px 14px;flex-shrink:0;font-size:12px;font-weight:650}.save-record .icon{width:16px;height:16px}.save-record[aria-pressed=true]{background:#253b43;color:#fff;border-color:#253b43}.record-facts{display:flex;gap:31px;margin:19px 0 0 44px}.record-facts>div{font-size:12px;color:var(--muted)}.record-facts strong{display:block;font-size:26px;line-height:1.2;font-weight:750;letter-spacing:-.025em;color:#354f5a}.record-facts .zip-value{font-size:16px;letter-spacing:0;font-weight:600;margin:4px 0 6px}.record-ask{font-size:13px;color:var(--muted);margin:17px 0 0 44px;max-width:580px}.record-link{display:inline-flex;min-height:40px;align-items:center;gap:8px;margin:6px 0 0 44px;font-weight:600;font-size:13px}.record-link .icon{width:16px}.records-footer{padding-top:18px}.records-footer a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:650}.records-footer p{font-size:12px;color:var(--muted);margin-top:8px}.next-step{position:sticky;top:25px;padding:26px;background:#eff4f6;border-radius:24px}.next-step h3{font-size:27px;line-height:1.12}.next-step>p{font-size:14px;color:var(--muted);margin-top:13px}.next-step .button{width:100%;margin-top:20px}.next-step .small{font-size:12px}.saved-name{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #d2dfe5;padding:16px 0;font-size:14px;font-weight:600;line-height:1.25}.saved-name button{flex-shrink:0;background:transparent;border:0;width:36px;height:36px;display:grid;place-items:center;border-radius:50%}.saved-name button:hover{background:white}.saved-name .icon{width:16px}.empty-list{padding-top:22px;display:flex;gap:7px}.empty-list span{width:30px;height:30px;border:1px dashed #9cafb9;border-radius:50%;display:grid;place-items:center;color:#617581}.record-limit{border-top:1px solid #cedbe1;padding-top:18px;margin-top:22px;font-size:13px}.record-limit summary{cursor:pointer;line-height:1.5;font-weight:550}.record-limit p{color:var(--muted);margin-top:10px;font-size:12px}.comparison{margin-top:80px;scroll-margin-top:25px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.section-heading h2{font-size:43px;line-height:1.1}.section-heading p{font-size:16px;color:var(--muted);margin-top:14px}.section-heading>span{font-size:13px;color:var(--muted)}.compare-records{display:grid;grid-template-columns:repeat(var(--columns,2),minmax(0,1fr));gap:0;background:#f0f5f6;border-radius:24px;overflow:hidden}.compare-record{padding:28px;border-right:1px solid #d2dfe3}.compare-record:last-child{border:0}.compare-record h3{font-size:24px;line-height:1.13}.compare-record dl{margin:22px 0 16px}.compare-record dt{font-size:12px;color:var(--muted);margin-top:16px}.compare-record dd{font-size:16px;margin:3px 0 0}.compare-record a{font-size:13px;font-weight:650;min-height:44px;display:inline-flex;align-items:center;gap:8px}.compare-record a .icon{width:17px}.contact-brief{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;margin-top:48px}.contact-brief h3{font-size:30px;line-height:1.13}.contact-brief p{font-size:16px;color:var(--muted);margin-top:16px}.contact-brief .text-action{font-size:13px;margin-top:15px}.contact-brief label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.contact-brief textarea{width:100%;resize:vertical;min-height:330px;border:1px solid #a9bdc8;padding:19px;border-radius:18px;font-size:15px;line-height:1.6;color:var(--ink)}.contact-actions{display:flex;gap:10px;margin-top:14px}.contact-brief .small{font-size:12px}.site-footer{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:85px;padding:32px 0}.site-footer .brand{font-size:21px}.site-footer .brand .icon{width:25px}.site-footer>div>p{font-size:13px;color:var(--muted);margin-top:7px}.site-footer nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.site-footer nav a,.site-footer nav button{font-size:12px;display:inline-flex;align-items:center;min-height:44px;background:transparent;border:0;color:var(--muted);text-decoration:underline;text-underline-offset:4px;padding:0}.site-footer .preview-note{font-size:12px;color:#596c77;width:100%;max-width:none}.ai-disclosure{width:100%;background:#f0f5f6;padding:20px;border-radius:15px}.ai-disclosure p{max-width:95ch!important;font-size:13px!important}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);max-width:min(570px,calc(100% - 32px));background:#233b45;color:white;border-radius:16px;padding:15px 20px;font-size:13px;box-shadow:0 15px 30px -18px #20394780;z-index:50;opacity:0;pointer-events:none;transition:opacity .2s,transform .35s var(--ease)}.toast.show{opacity:1;transform:translate(-50%,0)}.no-script{padding:25px;background:#fff1e8;text-align:center}.ready-summary{margin-top:23px;padding:21px 0;border-block:1px solid var(--line)}.ready-summary p{font-size:15px;color:var(--muted)}.ready-summary p+p{margin-top:9px}.ready-actions{display:flex;gap:15px;align-items:center;margin-top:24px;flex-wrap:wrap}.error-recovery{padding:28px;background:#fff2e9;border-radius:20px;margin-top:25px}.error-recovery h3{font-size:27px}.error-recovery p{font-size:15px;color:#6f4a39;margin-top:12px}.error-recovery .button{margin-top:20px}.empty-cities{grid-column:1/-1;font-size:14px;padding:18px 6px;color:var(--muted)}
@keyframes thinking{0%{transform:translateX(-60px)}100%{transform:translateX(160px)}}
@keyframes question-in{from{opacity:.4;transform:translateY(14px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
.question-body.entering{animation:question-in .45s var(--ease) both}.contractor-record.entering{animation:question-in .45s var(--ease) both}.project-receipt.revealing{animation:question-in .5s var(--ease) both}
@media(min-width:1600px){.studio{gap:88px}.conversation{padding-top:45px}.house-stage{height:666px}}
@media(max-width:1180px){.shell{width:calc(100% - 64px)}.studio{gap:35px;grid-template-columns:1fr 1fr}.welcome h1{font-size:76px}.intro{font-size:19px}.house-stage{height:620px}.intent-composer{padding:18px 16px 14px}.composer-bottom{align-items:end}.guide-label{font-size:12px;gap:6px}.composer-bottom button{font-size:13px;padding:12px 14px;gap:8px}.guide-mark{width:19px;height:19px;border-width:4px}.scene-caption strong{font-size:21px}.scene-caption{left:22px;right:22px}.how-section{gap:65px}.results-layout{grid-template-columns:minmax(0,1fr) 280px;gap:32px}.record-top h3{font-size:22px}.next-step{padding:22px}.contact-brief{gap:45px}.scene-hotspot{gap:7px;padding:9px 10px;font-size:12px}}
@media(max-width:920px){.shell{width:calc(100% - 48px)}.site-header{height:87px}.site-header nav{gap:22px}.studio{gap:26px;padding-top:18px}.welcome h1{font-size:64px}.conversation{padding-top:18px}.intro{font-size:18px}.intent-composer textarea{font-size:18px;min-height:110px}.composer-bottom{align-items:center;flex-wrap:wrap;gap:12px}.composer-bottom button{margin-left:auto}.house-stage{height:625px}.stage-top{left:19px;right:16px;font-size:12px}.scene-host,.scene-hotspots{inset:95px -16px 151px}.scene-caption{bottom:65px}.model-note{bottom:25px;left:25px;right:25px}.scene-caption strong{font-size:21px}.scene-caption span{font-size:12px}.idea-starters{gap:7px;margin-top:22px}.idea-starters button{font-size:12px;padding:9px 12px}.welcome-secondary>span{font-size:12px}.studio.is-guiding{grid-template-columns:1.1fr .9fr}.studio.is-guiding .scene-hotspots{display:none}.project-receipt{padding:20px}.project-receipt h2{font-size:23px}.receipt-header>span{font-size:12px}.receipt-header .icon{display:none}.question-body h2{font-size:38px}.flow-heading #ai-mode{display:none}.confidence-strip{gap:20px;align-items:start}.confidence-strip p{font-size:12px}.how-section{gap:45px}.how-section h2{font-size:35px}.how-section>div>p{font-size:16px}.results-layout{grid-template-columns:minmax(0,1fr) 250px;gap:26px}.record-facts{gap:20px}.record-top{gap:10px}.record-top h3{font-size:21px}.rank-number{display:none}.record-facts,.record-ask,.record-link{margin-left:0}.save-record{padding:9px 10px}.next-step{padding:21px}.next-step .button{font-size:13px;padding:12px}.contact-brief{grid-template-columns:1fr;gap:24px}.compare-record{padding:23px}.compare-record h3{font-size:21px}.site-footer nav{gap:18px}.confidence-strip{margin-top:28px}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.site-header{height:79px}.brand{font-size:22px;gap:7px}.brand .icon{width:26px;height:26px}.quiet-nav{display:none}.nav-project{padding:9px 13px;font-size:12px;min-height:42px;gap:7px}.nav-project .icon{width:15px}.nav-project span{width:20px;height:20px;font-size:12px}.studio{grid-template-columns:1fr;gap:25px;padding-top:8px;min-height:0}.conversation{padding:14px 0 0}.welcome h1{font-size:clamp(60px,11vw,80px);line-height:.98}.intro{font-size:18px;line-height:1.5;margin-top:20px}.intent-composer{margin-top:26px;padding:18px 17px 15px;border-radius:21px}.intent-composer label{font-size:13px}.intent-composer textarea{font-size:19px;min-height:97px;padding-top:12px}.composer-bottom{flex-wrap:nowrap;align-items:center;gap:9px}.composer-bottom button{font-size:12px;gap:9px;padding:12px 13px;min-height:45px}.guide-label{font-size:12px;gap:7px}.guide-mark{width:18px;height:18px}.input-note{font-size:12px;margin-top:11px}.idea-starters{margin-top:22px;gap:8px}.idea-starters button{font-size:12px;min-height:42px;padding:9px 12px}.welcome-secondary{margin-top:17px}.welcome-secondary>span{font-size:12px}.house-stage{height:470px;border-radius:28px}.stage-top{top:18px;left:22px;right:18px}.scene-host,.scene-hotspots{inset:51px -6px 101px}.scene-caption{bottom:53px;left:18px;right:18px}.scene-caption strong{font-size:21px}.scene-caption span{font-size:12px;max-width:290px;margin:auto}.model-note{font-size:12px;bottom:18px}.round-button{width:38px;height:38px}.scene-hotspot{font-size:12px;min-height:38px;padding:8px 10px;gap:6px}.scene-hotspot .hotspot-dot{display:none}.scene-hotspot .icon{width:12px;height:12px}.confidence-strip{display:flex;flex-direction:column;gap:12px;margin-top:30px;padding:22px 0}.confidence-strip p{font-size:13px}.how-section{grid-template-columns:1fr;gap:29px;margin-top:56px}.how-section h2{font-size:36px}.how-section>div>p{font-size:17px;margin-top:17px;max-width:330px}.how-story article{padding-left:24px;padding-bottom:26px}.how-story h3{font-size:21px}.how-story p{font-size:15px}.studio.is-guiding{display:flex;flex-direction:column;gap:26px}.studio.is-guiding .conversation{width:100%}.studio.is-guiding .visual-side{width:100%;display:grid;grid-template-columns:1fr;gap:0}.studio.is-guiding .house-stage{height:264px;border-radius:24px}.studio.is-guiding .scene-host{inset:22px 0 53px}.studio.is-guiding .stage-top{top:12px;font-size:12px}.studio.is-guiding .round-button{width:33px;height:33px}.studio.is-guiding .scene-caption{bottom:24px}.studio.is-guiding .scene-caption strong{font-size:17px}.studio.is-guiding .model-note{display:none}.studio.is-guiding .project-receipt{margin-top:12px;padding:20px 23px;border-radius:20px}.receipt-header>span{font-size:12px}.receipt-header .icon{display:block}.receipt-header .icon-button{height:30px;width:30px}.project-receipt h2{font-size:23px}.receipt-progress{margin-top:19px}.project-receipt>p{font-size:12px}.flow-tools{margin-bottom:24px}.question-body{padding-top:23px}.question-body h2{font-size:38px;line-height:1.08}.question-body .reflection{font-size:16px;margin-top:18px}.answer-options{margin-top:25px}.answer-option{padding:16px 18px;font-size:15px;min-height:58px}.answer-option.small-option{font-size:14px}.city-search input{font-size:16px}.city-options{max-height:270px}.thinking-block h2{font-size:39px}.results{margin-top:43px;scroll-margin-top:20px}.results-heading{display:block;margin-bottom:25px}.results-heading h2{font-size:40px}.results-heading #results-intro{font-size:16px;margin-top:15px}.results-heading>.button{margin-top:19px;min-height:44px;font-size:13px}.results-layout{display:flex;flex-direction:column;gap:28px}.record-column{width:100%}.record-explainer{font-size:12px;gap:16px}.record-top h3{font-size:22px}.rank-number{display:none}.record-top{gap:16px}.record-facts{gap:24px;margin-top:17px}.record-facts strong{font-size:25px}.record-facts .zip-value{font-size:15px}.record-facts>div{font-size:12px}.record-ask{font-size:12px}.contractor-record{padding:24px 0}.next-step{position:static;width:100%;border-radius:21px;padding:24px}.next-step h3{font-size:26px}.next-step .button{font-size:15px;margin-top:20px}.next-step>p{font-size:14px}.next-step .small{font-size:12px}.comparison{margin-top:52px}.section-heading{align-items:start}.section-heading h2{font-size:34px;max-width:300px}.section-heading>span{font-size:12px;max-width:62px;text-align:right}.section-heading p{font-size:15px}.compare-records{grid-template-columns:1fr;border-radius:21px}.compare-record{border-right:0;border-bottom:1px solid #d2dfe3;padding:25px}.compare-record h3{font-size:25px}.compare-record dl{display:grid;grid-template-columns:1fr 1.2fr;gap:12px 20px;margin-top:22px}.compare-record dt,.compare-record dd{margin:0;font-size:13px}.contact-brief{margin-top:30px;gap:22px}.contact-brief h3{font-size:29px}.contact-brief p{font-size:15px;margin-top:13px}.contact-brief textarea{font-size:14px;min-height:340px;padding:17px}.contact-actions{flex-wrap:wrap;gap:10px}.contact-actions .button{font-size:13px;min-height:46px;padding:11px 17px}.site-footer{margin-top:56px;gap:15px;padding:28px 0}.site-footer nav{gap:10px 22px}.site-footer .preview-note{font-size:12px}.error-recovery{padding:23px}.error-recovery h3{font-size:26px}.ready-actions{gap:11px}.ready-actions .button{font-size:14px}.guide-flow{scroll-margin-top:15px}}
@media(max-width:370px){.shell{width:calc(100% - 28px)}.brand{font-size:19px}.brand .icon{width:24px}.nav-project{padding:8px 11px;gap:5px;font-size:12px}.welcome h1{font-size:59px}.composer-bottom .guide-label{font-size:12px;gap:5px}.composer-bottom .guide-mark{width:16px;height:16px;border-width:3px}.composer-bottom button{font-size:12px;padding:11px}.house-stage{height:435px}.scene-caption strong{font-size:19px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,.answer-option:hover,.composer-bottom button:hover{transform:none}.thinking-line::after{transform:translateX(45px)}}
.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}.spatial-label{display:block;font-size:13px;font-weight:600;margin:27px 0 10px}.spatial-intent{display:block;width:100%;border:1px solid #a9bdc8;border-radius:17px;background:white;padding:16px;font-size:17px;resize:vertical;min-height:124px;margin-bottom:15px}.spatial-direct{margin-top:22px;font-size:13px}.change-kind{font-size:12px;margin-top:16px}.question-body h2:focus,.results h2:focus{outline:none}.scene-canvas,#scene-canvas{width:100%;height:100%}#scene-canvas canvas{display:block;width:100%;height:100%}.ready-summary strong{color:var(--ink)}

#privacy-note{font:inherit;border:0;background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px;padding:0;min-height:30px}.more-records{display:block;margin-bottom:12px}.record-facts>div:first-child{max-width:100px}.scene-hotspot{min-height:44px}.house-stage{isolation:isolate}.input-note{margin-top:7px}

/* Finish review: readable, reachable decisions on each device. */
.next-step{align-self:start}.result-context{margin-top:15px;margin-bottom:0}.results-heading #results-intro{margin-top:12px}.receipt-header{align-items:start}.receipt-header h2{margin:0;flex:1}.receipt-header .icon-button{margin-left:14px;flex-shrink:0}.project-receipt #receipt-details{margin-top:18px}.flow-status{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:12px}.flow-status #ai-mode{padding-left:14px;border-left:1px solid var(--line)}.mobile-house-slot,.mobile-shortlist-bar{display:none}
@media(max-width:700px){
  .mobile-house-slot{display:block}.welcome h1{font-size:54px}.intro{margin-top:16px}.welcome .house-stage{height:240px;margin-top:20px;border-radius:24px}.welcome .house-stage .stage-top{top:12px;left:17px;right:12px;font-size:12px}.welcome .house-stage .round-button{height:33px;width:33px}.welcome .house-stage .scene-host,.welcome .house-stage .scene-hotspots{inset:28px 0 28px}.welcome .house-stage .scene-caption{display:none}.welcome .house-stage .model-note{display:block;bottom:7px;left:10px;right:10px;font-size:11px}.welcome .house-stage .scene-hotspot{min-height:40px;font-size:11px;padding:7px 10px}.welcome .intent-composer{margin-top:18px}.welcome .intent-composer textarea{min-height:75px;height:75px;font-size:18px}.welcome .idea-starters{margin-top:16px}.studio{gap:0}.visual-side:empty{display:none}.studio.is-guiding .visual-side{margin-top:20px}.flow-tools{margin-bottom:14px}.flow-status{gap:8px;font-size:11px}.flow-status #ai-mode{font-size:11px;padding-left:8px}.studio.is-guiding #mobile-house-guide{position:relative;border-radius:20px}.question-body{scroll-margin-top:20px}.studio.is-guiding #mobile-house-guide .house-stage{height:180px;border-radius:20px}.studio.is-guiding .house-stage .scene-host{inset:8px 0 36px}.studio.is-guiding .house-stage .scene-caption{bottom:12px}.studio.is-guiding .house-stage .scene-caption strong{font-size:15px}.studio.is-guiding .house-stage .stage-top>span{display:none}.studio.is-guiding .house-stage .stage-top{top:9px;right:10px}.studio.is-guiding .house-stage .round-button{height:32px;width:32px}.question-body{padding-top:23px}.question-body h2{font-size:34px}.project-receipt h2{font-size:23px}.receipt-header .icon-button{margin-top:-2px}.result-context{margin-top:16px;font-size:12px}.mobile-shortlist-bar{position:fixed;left:18px;right:18px;bottom:16px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#243a44;color:white;border-radius:18px;padding:12px 14px;box-shadow:0 10px 26px #1a333d30}.mobile-shortlist-bar>span{font-size:13px;white-space:nowrap}.mobile-shortlist-bar button{display:flex;align-items:center;gap:9px;min-height:44px;border:0;border-radius:999px;background:var(--orange);color:var(--orange-ink);font-size:13px;font-weight:700;padding:10px 14px}.mobile-shortlist-bar .icon{width:17px;height:17px}.has-shortlist{padding-bottom:94px}.has-shortlist .toast{bottom:102px}.input-note{font-size:12px}
}
/* Projects keep moving even when a permit-ranking category is unavailable. */
.research-comparison-context{margin:0 0 22px;color:var(--muted);font-size:14px;line-height:1.6;max-width:75ch}.research-comparison-context p+p{margin-top:8px}.research-comparison-context strong{color:var(--ink)}.compare-record .research-evidence{margin:18px 0 10px}.compare-record .research-evidence a{display:inline;overflow-wrap:anywhere}.compare-record .research-evidence ul{padding-left:18px}
.research-progress{padding:22px 0;margin:25px 0;border-block:1px solid var(--line)}.research-progress>p:first-child{font-weight:650}.research-progress .small{margin-top:12px;font-size:14px}.research-evidence{font-size:14px;line-height:1.6;margin-top:18px}.research-evidence summary{cursor:pointer;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:list-item;padding-block:10px}.research-evidence p{margin-block:10px;color:var(--muted)}.research-evidence ul{padding-left:20px}.research-evidence li{margin-block:8px;overflow-wrap:anywhere}.research-record .record-link{margin-left:0}.research-record h3,.research-record dd{overflow-wrap:anywhere}.record-explainer .research-evidence a{display:inline;white-space:normal}.record-explainer #research-update{margin-top:8px}.research-record .license-facts{font-size:14px}
.coverage-plan{margin-top:28px;padding:24px 0;border-block:1px solid var(--line,#d2dfe3)}.coverage-plan h3{font-size:25px;line-height:1.2}.coverage-plan p{margin-top:12px;line-height:1.6}.coverage-plan .button{margin-top:19px}.coverage-plan .small,.coverage-brief .small{font-size:13px;line-height:1.6;color:#4a5b61}.coverage-brief{margin-top:28px}.coverage-brief>label{display:block;font-weight:650;margin-bottom:12px}.coverage-brief textarea{display:block;width:100%;min-height:300px;resize:vertical;padding:18px;border:1px solid #89999e;border-radius:12px;background:#fff;font:inherit;font-size:15px;line-height:1.6;color:#17272e}.coverage-brief .contact-actions{margin-top:16px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.coverage-brief .small{margin:14px 0}.city-options .use-city{background:#e5eff2;justify-content:space-between;gap:12px}.license-record .record-top{display:flex;align-items:flex-start}.license-record .record-top h3{flex:1}.license-facts{display:grid;grid-template-columns:minmax(120px,1fr) 1.4fr;gap:9px 22px;margin:22px 0;font-size:14px;line-height:1.55}.license-facts dt{color:#4a5b61}.license-facts dd{margin:0;font-weight:550}.license-record .save-record{flex-shrink:0}.coverage-plan .button{max-width:100%;white-space:normal}.coverage-brief textarea:focus-visible{outline:3px solid #087f8c;outline-offset:3px}
@media(max-width:700px){.coverage-plan h3{font-size:23px}.coverage-brief textarea{font-size:16px}.license-facts{font-size:13px;gap:9px 14px}.license-record .record-top h3{font-size:22px}.license-record .record-top{gap:14px}}

/* Location confirmation keeps unfamiliar cities in the same guided flow. */
.location-form{display:grid;gap:12px;margin-top:28px}.location-form label{font-size:14px;font-weight:650}.location-form label:not(:first-child){margin-top:10px}.location-input{display:block;width:100%;min-height:50px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font:inherit;font-size:16px}.location-form .button{justify-self:start;margin-top:12px}.safety-note{padding:18px 0;margin-bottom:24px;border-block:1px solid #b74925;color:#783015;line-height:1.6}.safety-note strong{font-size:20px}.safety-note p{margin-top:8px}.location-input:focus-visible{outline:3px solid #087f8c;outline-offset:3px}

.directory-cities{margin-top:68px;padding-top:34px;border-top:1px solid var(--line)}.directory-cities h2{font-size:clamp(28px,3vw,40px);line-height:1.1}.directory-cities>p{margin-top:14px;color:var(--muted)}.directory-cities ul{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin-top:24px}.directory-cities a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}

/* Touch targets retain compact icons while giving each action a reliable hit area. */
@media(max-width:700px){
  :is(.studio,#results,.site-header,footer,.mobile-shortlist-bar) button{min-height:44px;min-width:44px}
  .studio .house-stage .round-button,.studio .project-receipt .icon-button{width:44px;height:44px}
  .studio .house-stage .scene-hotspot{min-height:44px}
  .studio .why-question summary,.studio .next-step summary{min-height:44px}
  #privacy-note{min-height:44px}
}
