:root{--ink:#13211d;--muted:#65736e;--paper:#f5f3ed;--card:#fff;--green:#173c31;--lime:#d9f06d;--line:#dfe3df;--danger:#a83f36}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wordmark{letter-spacing:-.04em;font-size:1.22rem;font-weight:850}.eyebrow{color:#39705e;letter-spacing:.13em;margin-bottom:1rem;font-size:.72rem;font-weight:800;display:block}.button,.auth-form button,.empty-state button{background:var(--green);color:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:52px;padding:0 1.5rem;font-weight:750;display:inline-flex}.button.small{min-height:40px;padding:0 1rem}.marketing-page{min-height:100vh;padding-top:80px;overflow:hidden}.marketing-shell{width:calc(100% - clamp(2.5rem,10vw,10rem));max-width:1180px;margin-inline:auto}.marketing-nav{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;background:#f5f3edeb;border-bottom:1px solid #13211d1a;justify-content:space-between;align-items:center;width:100%;min-height:80px;padding:1.25rem max(50vw - 590px,clamp(2.5rem,10vw,10rem)/2);display:flex;position:fixed;inset:0 0 auto}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links>a:not(.button){color:#4f5f59;font-size:.9rem;font-weight:650}.button{gap:.7rem;transition:transform .2s,background .2s}.button:hover{background:#245545;transform:translateY(-2px)}#how-it-works,#why-paintmargin{scroll-margin-top:100px}.hero{grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);align-items:center;gap:clamp(3rem,6vw,6rem);min-height:calc(100vh - 82px);padding:clamp(4rem,9vh,7.5rem) 0;display:grid}.hero h1{letter-spacing:-.075em;margin:0;font-size:clamp(3.8rem,6.6vw,6.4rem);line-height:.9}.hero h1 em{color:#3b735f;font-family:Georgia,serif;font-weight:500}.hero-copy>p{color:var(--muted);max-width:650px;margin:1.7rem 0 0;font-size:clamp(1.05rem,1.7vw,1.26rem);line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:1.5rem;margin-top:2rem;display:flex}.text-link{border-bottom:1px solid #85928d;padding:.55rem 0;font-size:.94rem;font-weight:750}.trust{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:.8rem 1.5rem;margin-top:3rem;padding-top:1rem;font-size:.78rem;display:flex}.hero-visual{border-radius:28px;height:640px;margin:0 0 5rem 2rem;position:relative;box-shadow:0 35px 90px #173c3126}.hero-photo{object-fit:cover;border-radius:28px}.hero-visual:after{content:"";pointer-events:none;background:linear-gradient(#0000 56%,#0c1b16a3);border-radius:28px;position:absolute;inset:0}.photo-caption{color:#fff;z-index:1;gap:.2rem;display:grid;position:absolute;bottom:9.5rem;left:1.5rem}.photo-caption span{color:var(--lime);letter-spacing:.12em;text-transform:uppercase;font-size:.61rem;font-weight:850}.photo-caption b{font-size:.88rem}.product-preview{background:#fdfdfb;border:1px solid #d5dbd7;border-radius:24px;min-width:0;overflow:hidden;transform:rotate(1.25deg);box-shadow:0 35px 90px #173c3126}.hero-visual .product-preview{z-index:2;position:absolute;bottom:-4rem;left:-3rem;right:1.5rem;transform:rotate(-1.5deg)}.hero-visual .preview-body{min-height:270px}.hero-visual .scope-card{padding:1rem 1.15rem}.hero-visual .scope-line{padding:.75rem 0}.hero-visual .scope-question,.hero-visual .margin-row{margin-top:.75rem}.preview-topbar{border-bottom:1px solid var(--line);align-items:center;gap:.7rem;padding:.8rem 1rem;font-size:.76rem;font-weight:750;display:flex}.preview-logo{background:var(--green);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:25px;height:25px;font-size:.6rem;display:inline-flex}.status-pill{color:#236044;background:#e8f4ec;border-radius:999px;margin-left:auto;padding:.3rem .6rem}.preview-body{grid-template-columns:145px minmax(0,1fr);min-height:420px;display:grid}.room-list{border-right:1px solid var(--line);background:#f1f2ed;flex-direction:column;gap:.45rem;padding:1.15rem .65rem;display:flex}.room-list>small{color:#7b8883;letter-spacing:.14em;margin:.2rem .45rem .5rem;font-size:.58rem;font-weight:850}.room{border-radius:9px;gap:.25rem;padding:.65rem .6rem;font-size:.66rem;display:grid}.room b{color:#779087;text-transform:uppercase;font-size:.55rem}.room.active{background:#fff;box-shadow:0 2px 10px #13211d0f}.scope-card{min-width:0;padding:1.35rem}.scope-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:1rem;display:flex}.scope-heading small{color:#4b7969;letter-spacing:.12em;font-size:.57rem;font-weight:850}.scope-heading h3{letter-spacing:-.04em;margin:.2rem 0 0;font-size:1.3rem}.scope-heading>span{color:var(--muted);background:#edf0ec;border-radius:999px;padding:.35rem .55rem;font-size:.62rem}.scope-line{border-bottom:1px solid #eaedea;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:1rem 0;display:grid}.scope-line i{color:#39705e;background:#e6f2e8;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:.65rem;font-style:normal;display:flex}.scope-line div{gap:.18rem;display:grid}.scope-line b,.scope-question b{font-size:.72rem}.scope-line small,.scope-question small{color:var(--muted);font-size:.6rem}.scope-line strong{font-size:.72rem}.scope-question{background:#fff6d8;border:1px solid #edd998;border-radius:10px;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:.65rem;margin-top:1rem;padding:.75rem;display:grid}.scope-question i{background:#f4d66d;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:.67rem;font-style:normal;display:flex}.scope-question div{gap:.16rem;display:grid}.margin-row{background:var(--green);color:#fff;border-radius:11px;justify-content:space-between;margin-top:1rem;padding:.8rem;font-size:.6rem;display:flex}.margin-row span{gap:.2rem;display:grid}.margin-row b{color:var(--lime);font-size:.83rem}.problem-strip{background:#e9eee8;padding:clamp(5rem,10vw,8.5rem) 0}.problem-grid{grid-template-columns:.7fr 1.35fr;align-items:start;gap:2rem 4rem;display:grid}.problem-side{gap:clamp(2rem,3vw,3.25rem);display:grid}.problem-grid .eyebrow{margin:0}.problem-copy{gap:1.5rem;display:grid}.problem-grid h2,.section-heading h2,.final-cta h2{letter-spacing:-.065em;margin:0;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.98}.problem-grid p{color:var(--muted);max-width:690px;margin:0;font-size:1.05rem;line-height:1.75}.scope-gap-card{background:#f8faf6;border:1px solid #cbd5ce;border-radius:18px;align-self:stretch;overflow:hidden;box-shadow:0 18px 45px #173c3114}.scope-gap-topline{border-bottom:1px solid #dce3de;justify-content:space-between;align-items:center;padding:.85rem 1rem;font-size:.66rem;display:flex}.scope-gap-topline span{color:#63736d;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.scope-gap-topline b{color:#745b18;background:#fff0c9;border-radius:999px;padding:.3rem .55rem;font-size:.6rem}.scope-gap-item{border-bottom:1px solid #e2e7e3;grid-template-columns:28px 1fr;align-items:center;gap:.75rem;padding:1rem;display:grid}.scope-gap-mark{color:#a44b3c;background:#fae6df;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.72rem;font-weight:900;display:flex}.scope-gap-item div{gap:.18rem;display:grid}.scope-gap-item small{color:#728079;letter-spacing:.1em;font-size:.54rem;font-weight:850}.scope-gap-item strong{letter-spacing:-.01em;font-size:.78rem}.scope-gap-result{background:var(--green);color:#fff;justify-content:space-between;align-items:end;padding:1rem;display:flex}.scope-gap-result span{color:#bdcec7;font-size:.68rem}.scope-gap-result strong{color:var(--lime);font-family:Georgia,serif;font-size:1.08rem;font-weight:500}.workflow-section{padding:clamp(5rem,10vw,9rem) 0 clamp(2.5rem,4vw,4rem)}.section-heading{max-width:790px}.workflow-grid,.principles-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:4rem;display:grid}.workflow-grid article{border-top:1px solid #bcc5c0;padding:1.5rem .25rem 0}.workflow-grid article>span,.principles-grid article>span{color:#3b735f;font-family:Georgia,serif;font-size:1.1rem}.workflow-grid h3,.principles-grid h3{letter-spacing:-.035em;margin:2rem 0 .7rem;font-size:1.4rem}.workflow-grid p,.principles-grid p{color:var(--muted);margin:0;line-height:1.7}.visual-story{grid-template-columns:repeat(3,1fr);gap:1rem;padding:0 0 clamp(5rem,10vw,9rem);display:grid}.visual-story article{min-width:0}.visual-image-wrap{aspect-ratio:3/2;border-radius:18px;margin-bottom:1.4rem;overflow:hidden}.visual-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .45s}.visual-story article:hover img{transform:scale(1.025)}.visual-story .eyebrow{margin:0 0 .55rem;font-size:.62rem}.visual-story h3{letter-spacing:-.035em;margin:0 0 .55rem;font-size:1.35rem}.visual-story p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.65}.principles-section{background:var(--green);color:#fff;padding:clamp(5rem,10vw,9rem) 0}.section-heading.light .eyebrow,.principles-grid article>span{color:var(--lime)}.principles-grid article{border-top:1px solid #ffffff3d;padding-top:1.5rem}.principles-grid p{color:#bfcfc9}.faq-section{grid-template-columns:.85fr 1.15fr;gap:clamp(2.5rem,7vw,6rem);padding:clamp(5rem,10vw,9rem) 0;display:grid}.faq-list{border-top:1px solid #bdc6c1}.faq-list details{border-bottom:1px solid #bdc6c1;padding:0}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;padding:1.4rem 0;font-size:1.08rem;font-weight:750;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:#3b735f;font-size:1.35rem;font-weight:400;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:var(--muted);margin:0;padding:0 2.5rem 1.5rem 0;line-height:1.7}.final-cta{text-align:center;padding:clamp(6rem,12vw,11rem) 0}.final-cta .eyebrow{margin-bottom:1.4rem}.final-cta h2{max-width:900px;margin-inline:auto}.final-cta p{color:var(--muted);margin:1.5rem 0 2rem;font-size:1.08rem}.marketing-footer{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem 2rem;padding:2rem 0;display:grid}.marketing-footer p{color:var(--muted);margin:0;font-size:.82rem}.marketing-footer div{gap:1.25rem;font-size:.84rem;font-weight:700;display:flex}.policy-page{max-width:900px;min-height:100vh;margin:auto;padding:0 1.25rem}.policy-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex}.policy-nav>a:last-child{color:var(--muted);font-size:.86rem;font-weight:700}.policy-page article{border:1px solid var(--line);background:#fff;border-radius:24px;margin:clamp(3rem,8vw,6rem) 0;padding:clamp(1.5rem,6vw,4.5rem)}.policy-page h1{letter-spacing:-.065em;margin:0;font-size:clamp(2.8rem,7vw,5rem);line-height:.95}.policy-updated{border-bottom:1px solid var(--line);color:var(--muted);margin:1.5rem 0 2.5rem;padding-bottom:1.5rem;font-size:.84rem}.policy-page h2{letter-spacing:-.025em;margin:2.25rem 0 .6rem;font-size:1.25rem}.policy-page article>p:not(.policy-updated){color:#50605a;line-height:1.75}.policy-page footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:1.5rem 0 2.5rem;font-size:.8rem;display:flex}.policy-page footer div{gap:1rem;display:flex}.auth-form button:disabled{cursor:wait;opacity:.68}.auth-page{min-height:100vh;padding:1.5rem}.auth-page>.wordmark{max-width:440px;margin:auto;display:block}.auth-card{background:var(--card);border:1px solid var(--line);border-radius:24px;max-width:440px;margin:clamp(3rem,9vh,7rem) auto 0;padding:clamp(1.5rem,5vw,2.5rem);box-shadow:0 24px 70px #12211c14}.auth-card h1{letter-spacing:-.055em;margin:0;font-size:2.25rem;line-height:1}.auth-card>p{color:var(--muted);line-height:1.55}.auth-form{gap:1rem;margin-top:1.6rem;display:grid}.auth-form label{color:#44534e;gap:.45rem;font-size:.82rem;font-weight:700;display:grid}.auth-form input{border:1px solid #cbd2ce;border-radius:12px;min-height:50px;padding:0 .9rem}.auth-form input:focus{border-color:#39705e;outline:3px solid #39705e1f}.auth-form button{cursor:pointer;width:100%;margin-top:.35rem}.auth-links{color:var(--muted);justify-content:space-between;margin-top:1.25rem;font-size:.88rem;display:flex}.auth-links a{color:var(--green);font-weight:750}.notice{border-radius:12px;margin:1rem 0;padding:.8rem 1rem;font-size:.9rem}.notice.error{color:var(--danger);background:#fcebe8}.notice.success{color:#236044;background:#e8f4ec}.setup-page{max-width:720px;margin:auto;padding:2rem 1.25rem}.setup-page section{border:1px solid var(--line);background:#fff;border-radius:24px;margin-top:5rem;padding:2rem}.setup-page code{background:#eef0ed;border-radius:5px;padding:.1rem .3rem}.app-frame{max-width:1180px;min-height:100vh;margin:auto}.app-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem;padding:1.25rem;display:grid}.app-brand{gap:.15rem;display:grid}.app-header small{color:var(--muted)}.app-nav{align-items:center;gap:.35rem;display:flex}.app-nav a{color:#52625c;border-radius:999px;padding:.6rem .85rem;font-size:.84rem;font-weight:750}.app-nav a:hover{color:var(--green);background:#e7ece7}.app-header>form{justify-self:end}.text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;font-weight:700}.dashboard{padding:clamp(2rem,7vw,5rem) 1.25rem}.dashboard>h1{letter-spacing:-.065em;margin:.1rem 0 2.5rem;font-size:clamp(2.3rem,7vw,4.6rem)}.dashboard-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem;display:flex}.dashboard-heading h1{letter-spacing:-.065em;margin:.1rem 0 0;font-size:clamp(2.3rem,7vw,4.6rem)}.empty-state{border:1px solid var(--line);text-align:center;background:#fff;border-radius:24px;padding:clamp(2rem,7vw,4rem)}.empty-state h2{letter-spacing:-.04em;margin:.7rem 0;font-size:1.8rem}.empty-state p{color:var(--muted);max-width:480px;margin:0 auto 1.5rem}.empty-icon{color:#39705e;background:#edf2ea;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.6rem;display:inline-flex}.empty-state button:disabled{cursor:not-allowed;opacity:.45}.empty-state.warning{border-color:#e8c9a2}.price-book-page,.workspace-page{padding:clamp(2.5rem,6vw,5rem) 1.25rem 6rem}.narrow-workspace-page{max-width:920px;margin:auto}.workspace-title-row{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem;display:flex}.workspace-title-row h1,.job-detail-hero h1{letter-spacing:-.07em;margin:0;font-size:clamp(3rem,7vw,5.7rem);line-height:.9}.workspace-title-row p,.job-detail-hero p{color:var(--muted);max-width:650px;margin:1.25rem 0 0;line-height:1.65}.workspace-page textarea{color:var(--ink);resize:vertical;background:#fbfcfa;border:1px solid #cbd3ce;border-radius:11px;width:100%;min-height:110px;padding:.8rem}.workspace-page textarea:focus{border-color:#39705e;outline:3px solid #39705e1f}.workspace-page button:disabled{cursor:wait;opacity:.68;pointer-events:none;transform:none}.client-picker{gap:.8rem;display:grid}.client-picker label{gap:.4rem;display:grid}.client-picker input,.client-picker select{color:var(--ink);background:#fbfcfa;border:1px solid #cbd3ce;border-radius:11px;width:100%;min-height:46px;padding:.65rem .8rem}.client-search{gap:.4rem;max-width:34rem;margin:1rem 0 1.25rem;display:grid}.client-search input{color:var(--ink);background:#fbfcfa;border:1px solid #cbd3ce;border-radius:11px;width:100%;min-height:46px;padding:.65rem .8rem}.client-search input:focus,.client-picker input:focus,.client-picker select:focus{border-color:#39705e;outline:3px solid #39705e1f}.client-create-panel{margin-bottom:0}.record-section{padding-top:clamp(3rem,6vw,5rem)}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.client-card{border:1px solid var(--line);background:#fff;border-radius:18px;grid-template-columns:auto 1fr;align-items:start;gap:1rem;padding:1.25rem;display:grid}.client-initial{color:#356b58;background:#e8f1eb;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-weight:850;display:flex}.client-card h3{margin:.15rem 0 .35rem}.client-card p{color:var(--muted);margin:0;font-size:.82rem}.client-card small{color:var(--muted);margin-top:.6rem;line-height:1.5;display:block}.client-card>a{color:#356b58;grid-column:2;font-size:.76rem;font-weight:800}.back-link{color:#52625c;margin-bottom:2rem;font-size:.82rem;font-weight:750;display:inline-block}.job-form{gap:1rem;display:grid}.form-section{border:1px solid var(--line);background:#fff;border-radius:20px;gap:1.5rem;padding:clamp(1.25rem,4vw,2rem);display:grid}.form-section-heading{grid-template-columns:auto 1fr;align-items:start;gap:1rem;display:grid}.form-section-heading>span{color:#356b58;background:#e8f1eb;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-family:Georgia,serif;display:flex}.form-section h2{letter-spacing:-.04em;margin:0;font-size:1.55rem}.form-section-heading p,.field-help{color:var(--muted);margin:.3rem 0 0;font-size:.8rem;line-height:1.5}.form-section>label{color:#53625d;gap:.4rem;font-size:.72rem;font-weight:800;display:grid}.form-section select{color:var(--ink);background:#fbfcfa;border:1px solid #cbd3ce;border-radius:11px;width:100%;min-height:46px;padding:0 .8rem}.field-help a{color:#356b58;font-weight:800}.job-form-actions{justify-content:flex-end;align-items:center;gap:1.25rem;padding-top:.75rem;display:flex}.job-form-actions>a{color:var(--muted);font-size:.85rem;font-weight:750}.job-list{gap:.85rem;display:grid}.job-card{border:1px solid var(--line);background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:2rem;padding:1.35rem 1.5rem;transition:border-color .2s,transform .2s;display:flex}.job-card:hover{border-color:#9cafa5;transform:translateY(-2px)}.job-card h2{letter-spacing:-.035em;margin:.55rem 0 .3rem;font-size:1.35rem}.job-card p{color:var(--muted);margin:0;font-size:.82rem}.job-card>span{color:#356b58;white-space:nowrap;font-size:.8rem;font-weight:800}.status-chip{color:#356b58;letter-spacing:.08em;text-transform:uppercase;background:#e8f1eb;border-radius:999px;padding:.32rem .58rem;font-size:.58rem;font-weight:850;display:inline-flex}.job-detail-hero{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.job-overview-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.job-overview-grid section{border:1px solid var(--line);background:#fff;border-radius:18px;padding:1.35rem}.job-overview-grid .eyebrow{margin-bottom:.8rem}.job-overview-grid h2{letter-spacing:-.025em;text-transform:capitalize;margin:0;font-size:1.15rem}.job-overview-grid p{color:var(--muted);margin:.55rem 0 0;font-size:.8rem;line-height:1.55}.rooms-placeholder{text-align:center;border:1px dashed #bdc7c1;border-radius:20px;margin-top:1rem;padding:clamp(2rem,6vw,4rem)}.rooms-placeholder h2{margin:.8rem 0 .4rem}.rooms-placeholder p{color:var(--muted);max-width:540px;margin:0 auto}.quote-summary{background:var(--green);color:#fff;border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;margin-top:1.25rem;padding:1.5rem 1.75rem;display:grid}.quote-summary h2{letter-spacing:-.035em;margin:.45rem 0;font-size:1.35rem}.quote-summary p{color:#bdcec7;max-width:550px;margin:0;font-size:.8rem;line-height:1.5}.quote-metrics{grid-template-columns:repeat(4,auto);gap:1.25rem;display:grid}.quote-metrics span{white-space:nowrap;gap:.28rem;display:grid}.quote-metrics small{color:#bdcec7;text-transform:uppercase;font-size:.6rem;font-weight:800}.quote-metrics b{color:var(--lime);font-family:Georgia,serif;font-size:1.25rem}.proposal-page{max-width:780px;margin:0 auto;padding:clamp(2rem,7vw,6rem) 1.25rem}.proposal-page h1{letter-spacing:-.06em;margin:.6rem 0 1rem;font-size:clamp(2.4rem,7vw,5rem)}.proposal-page>p{color:var(--muted);font-size:1.05rem;line-height:1.65}.proposal-page section{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.4rem}.proposal-line,.proposal-total{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.proposal-accept{border-top:1px solid var(--line);gap:.8rem;margin-top:2.5rem;padding-top:1.5rem;display:grid}.proposal-accept label{gap:.35rem;font-weight:700;display:grid}.proposal-accept input{border:1px solid var(--line);border-radius:8px;min-height:44px;padding:0 .7rem}.proposal-accept .button{justify-self:start}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.photo-grid article{border:1px solid var(--line);border-radius:12px;padding:.6rem;overflow:hidden}.photo-grid img{aspect-ratio:1.2;object-fit:cover;width:100%}.photo-grid p{margin:.5rem 0;font-size:.72rem}.photo-upload-preview{aspect-ratio:1.5;border:1px solid var(--line);object-fit:cover;border-radius:12px;width:100%;max-height:15rem;display:block}.photo-error,.photo-preview-error{color:#9f1239;font-size:.8rem}.photo-preview-error{aspect-ratio:1.2;background:#fff1f2;align-items:center;padding:1rem;display:grid}.photo-locked{border:1px solid var(--line);background:#f8fafc;border-radius:10px;margin:1rem 0 0;padding:.8rem;font-size:.85rem}.proposal-line span{gap:.2rem;display:grid}.proposal-line small{color:var(--muted)}.proposal-total strong{color:var(--green);font-family:Georgia,serif;font-size:1.8rem}.room-workspace-section{padding-top:clamp(3rem,6vw,5rem)}.room-section-heading{grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-bottom:1.5rem;display:grid}.room-section-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,4vw,2.8rem)}.room-section-heading>div>p{color:var(--muted);max-width:620px;margin:.8rem 0 0;line-height:1.6}.add-room-form{border:1px solid var(--line);background:#fff;border-radius:16px;align-items:end;gap:.7rem;padding:1rem;display:flex}.add-room-form label{color:#53625d;gap:.35rem;font-size:.7rem;font-weight:800;display:grid}.add-room-form input{background:#fbfcfa;border:1px solid #cbd3ce;border-radius:10px;min-width:220px;min-height:44px;padding:0 .75rem}.add-room-form .button{white-space:nowrap;min-height:44px}.room-list-grid{gap:.75rem;display:grid}.room-card{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1rem;padding:1.1rem 1.25rem;transition:border-color .2s,transform .2s;display:grid}.room-card:hover{border-color:#9cafa5;transform:translateY(-2px)}.room-number{color:#39705e;font-family:Georgia,serif;font-size:1.1rem}.room-card h3{letter-spacing:-.025em;margin:0;font-size:1.1rem}.room-card p{color:var(--muted);margin:.25rem 0 0;font-size:.72rem}.room-card>b{color:#39705e}.room-status{text-transform:uppercase;border-radius:999px;padding:.35rem .6rem;font-size:.6rem;font-weight:850}.room-status.needs_review{color:#765b13;background:#fff3cf}.room-status.ready{color:#236044;background:#e5f3e8}.room-page{grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 88px);display:grid}.room-sidebar{border-right:1px solid var(--line);padding:2rem 1.25rem}.room-sidebar .back-link{margin-bottom:2rem}.room-job-name{border-bottom:1px solid var(--line);gap:.35rem;padding-bottom:1.25rem;display:grid}.room-job-name>span{color:#39705e;letter-spacing:.12em;font-size:.58rem;font-weight:850}.room-job-name b{font-size:.9rem}.room-job-name small{color:var(--muted);font-size:.7rem;line-height:1.4}.room-sidebar nav{gap:.35rem;margin-top:1.25rem;display:grid}.room-sidebar nav a{border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:.7rem;padding:.75rem;display:grid}.room-sidebar nav a.active{background:#fff;box-shadow:0 4px 16px #13211d0f}.room-sidebar nav a>span{color:#39705e;font-family:Georgia,serif;font-size:.75rem}.room-sidebar nav a>div{gap:.18rem;display:grid}.room-sidebar nav b{font-size:.78rem}.room-sidebar nav small{color:var(--muted);font-size:.6rem}.room-main{min-width:0;padding:clamp(2rem,5vw,4rem)}.room-header{justify-content:space-between;align-items:end;gap:2rem;display:flex}.room-header h1{letter-spacing:-.07em;margin:0;font-size:clamp(3rem,7vw,5.4rem);line-height:.9}.room-header p{color:var(--muted);margin:.8rem 0 0}.room-progress{border-bottom:1px solid #bdc6c1;gap:2rem;margin:2.5rem 0;display:flex}.room-progress span{color:var(--muted);padding-bottom:.8rem;font-size:.72rem;font-weight:800;position:relative}.room-progress span.active,.room-progress span.complete{color:#236044}.room-progress span.active:after,.room-progress span.complete:after{content:"";bottom:-1px;background:#39705e;height:3px;position:absolute;inset-inline:0}.room-module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.room-module-grid article{border:1px solid var(--line);background:#fff;border-radius:18px;padding:1.35rem}.room-module-grid article>span{color:#39705e;font-family:Georgia,serif}.room-module-grid h2{letter-spacing:-.035em;margin:1.25rem 0 .45rem;font-size:1.35rem}.room-module-grid p{color:var(--muted);margin:0 0 1.2rem;font-size:.8rem;line-height:1.55}.room-module-grid button{color:#82908a;background:#f2f4f1;border:1px solid #d7ddd8;border-radius:999px;min-height:38px;padding:0 .9rem;font-size:.7rem;font-weight:800}.room-live-grid{gap:1rem;display:grid}.locked-fieldset{border:0;min-width:0;margin:0;padding:0}.locked-fieldset:disabled{opacity:.62}.document-locked{background:#fff3cf;border:1px solid #edd998;border-radius:14px;justify-content:space-between;align-items:center;gap:.7rem;margin:1.2rem 0;padding:.9rem 1rem;display:flex}.document-locked b{color:#765b13}.document-locked span{color:#765b13;font-size:.8rem}.room-live-section{border:1px solid var(--line);background:#fff;border-radius:20px;padding:clamp(1.25rem,3vw,2rem)}.room-live-heading{justify-content:space-between;align-items:start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.room-live-heading h2{letter-spacing:-.045em;margin:0;font-size:1.65rem}.room-live-heading p{color:var(--muted);max-width:620px;margin:.6rem 0 0;font-size:.85rem;line-height:1.6}.room-live-heading>b{color:#356b58;white-space:nowrap;background:#e8f1eb;border-radius:999px;padding:.45rem .65rem;font-size:.67rem}.scope-add-form,.measurements-form{gap:1rem;display:grid}.scope-add-form .editor-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.scope-list{gap:.7rem;margin-top:1.25rem;display:grid}.scope-list article{background:#f8faf7;border:1px solid #e0e5e0;border-radius:13px;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.scope-list article.excluded{opacity:.55}.scope-list h3{margin:.35rem 0 .15rem;font-size:.94rem}.scope-list p{color:var(--muted);margin:0;font-size:.72rem}.room-empty{color:var(--muted);background:#f8faf7;border:1px dashed #c7d0c9;border-radius:13px;align-items:center;gap:.6rem;margin-top:1.25rem;padding:1rem;display:flex}.room-empty span{color:#39705e;font-size:1.2rem}.room-empty p{margin:0;font-size:.8rem}.measurements-form .advanced-fields{background:#f8faf7}.quantity-strip{background:var(--green);color:#fff;border-radius:14px;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.25rem;padding:1rem 1.15rem;display:grid}.quantity-strip span{gap:.2rem;display:grid}.quantity-strip small{color:#b8cbc2;letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:800}.quantity-strip b{color:var(--lime);font-size:1.05rem}.quantity-strip em{color:#fff;font-size:.65rem;font-style:normal;font-weight:500}.next-room-modules{grid-template-columns:repeat(3,1fr);gap:.85rem;margin-top:1rem;display:grid}.next-room-modules article{border:1px dashed #c7d0c9;border-radius:16px;padding:1.15rem}.next-room-modules span{color:#39705e;font-family:Georgia,serif}.next-room-modules h3{margin:1rem 0 .35rem;font-size:1rem}.next-room-modules p{color:var(--muted);margin:0;font-size:.75rem;line-height:1.5}.page-title-row{grid-template-columns:1fr auto;align-items:end;gap:2rem;display:grid}.page-title-row h1{letter-spacing:-.07em;margin:0;font-size:clamp(3rem,7vw,5.7rem);line-height:.9}.page-title-row>div:first-child>p{color:var(--muted);max-width:650px;margin:1.25rem 0 0;line-height:1.65}.starter-note{background:#fff6d8;border:1px solid #ead896;border-radius:14px;gap:.25rem;max-width:280px;padding:1rem 1.1rem;display:grid}.starter-note b{color:#6d5617;font-size:.8rem}.starter-note span{color:#776d4e;font-size:.74rem;line-height:1.45}.subnav{border-bottom:1px solid #bdc6c1;gap:1.5rem;margin:3rem 0 2rem;display:flex}.subnav a{color:var(--muted);padding:0 .1rem 1rem;font-size:.9rem;font-weight:800;position:relative}.subnav a.active{color:var(--green)}.subnav a.active:after{background:var(--green);content:"";height:3px;position:absolute;bottom:-1px;left:0;right:0}.subnav span{background:#e7ebe7;border-radius:999px;justify-content:center;align-items:center;min-width:21px;height:21px;margin-left:.3rem;padding:0 .35rem;font-size:.64rem;display:inline-flex}.create-panel{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:.72fr 1.28fr;align-items:start;gap:clamp(2rem,5vw,5rem);padding:clamp(1.5rem,4vw,3rem);display:grid}.create-panel h2,.library-heading h2,.migration-state h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,4vw,2.8rem)}.create-panel>div>p,.library-heading>p,.migration-state p{color:var(--muted);line-height:1.65}.create-panel form{gap:1.25rem;display:grid}.editor-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.editor-fields label{color:#53625d;gap:.4rem;font-size:.72rem;font-weight:800;display:grid}.editor-fields input,.editor-fields select,.category-tool input{color:var(--ink);background:#fbfcfa;border:1px solid #cbd3ce;border-radius:11px;width:100%;min-height:46px;padding:0 .8rem}.editor-fields input:focus,.editor-fields select:focus,.category-tool input:focus{border-color:#39705e;outline:3px solid #39705e1f}.span-2{grid-column:span 2}.advanced-fields{border:1px solid var(--line);border-radius:12px;padding:.8rem}.advanced-fields>summary{color:#466158;cursor:pointer;font-size:.76rem;font-weight:800;list-style:none}.advanced-fields>summary:after{content:"＋";float:right}.advanced-fields[open]>summary{border-bottom:1px solid var(--line);margin-bottom:1rem;padding-bottom:.8rem}.advanced-fields[open]>summary:after{content:"−"}.check-field{flex-direction:row;align-items:center;min-height:40px;display:flex!important}.check-field input{accent-color:var(--green);width:auto;min-height:auto}.create-panel .button{cursor:pointer;justify-self:start;min-height:46px}.price-book-page button:disabled{cursor:wait;opacity:.68;pointer-events:none;transform:none}.price-book-page .notice{border:1px solid #0000;padding:1rem 1.1rem;font-weight:750}.price-book-page .notice.success{border-color:#b9d8c3;box-shadow:0 8px 24px #23604414}.category-tool{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:2rem;padding:1.5rem .25rem;display:flex}.category-tool>div{gap:.25rem;display:grid}.category-tool span{color:var(--muted);font-size:.76rem}.category-tool form{gap:.5rem;display:flex}.category-tool input{min-width:210px}.category-tool button,.quiet-button{color:var(--green);cursor:pointer;background:#fff;border:1px solid #bdc7c1;border-radius:999px;min-height:42px;padding:0 1rem;font-size:.76rem;font-weight:800}.library-section{padding-top:clamp(3rem,6vw,5rem)}.library-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.5rem;display:flex}.library-heading>p{max-width:430px;margin:0;font-size:.85rem}.library-list{gap:.85rem;display:grid}.library-card{border:1px solid var(--line);background:#fff;border-radius:18px;transition:opacity .2s;overflow:hidden}.library-card.inactive{opacity:.58}.library-card-main{grid-template-columns:minmax(220px,1fr) minmax(310px,.85fr);align-items:center;gap:1.5rem;padding:1.25rem 1.35rem;display:grid}.library-card h3{letter-spacing:-.03em;margin:.45rem 0 .2rem;font-size:1.15rem}.library-card-main>div:first-child>small{color:var(--muted)}.category-chip{color:#356b58;letter-spacing:.08em;text-transform:uppercase;background:#e8f1eb;border-radius:999px;padding:.3rem .55rem;font-size:.56rem;font-weight:850;display:inline-flex}.rate-pair{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.rate-pair>span{gap:.15rem;display:grid}.rate-pair small{color:#7a8882;text-transform:uppercase;font-size:.62rem;font-weight:800}.rate-pair strong{color:var(--green);font-size:1.3rem}.rate-pair b{font-size:.9rem}.rate-pair em{color:var(--muted);font-size:.7rem;font-style:normal}.library-actions{border-top:1px solid var(--line);background:#f3f5f1;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.35rem;display:flex}.library-actions>details{flex:1}.library-actions>details>summary{color:#496058;cursor:pointer;font-size:.76rem;font-weight:800;list-style:none}.library-actions>details[open]>summary{margin-bottom:1rem}.library-actions>details>form{border-top:1px solid #d8deda;gap:1rem;padding-top:1rem;display:grid}.library-actions .button{cursor:pointer;justify-self:start;min-height:42px}.empty-library,.migration-state{text-align:center;background:#fff;border:1px dashed #b9c4bd;border-radius:20px;padding:clamp(2rem,6vw,4rem)}.empty-library>span{color:#4c7768;font-size:2rem}.empty-library h3{margin:.8rem 0 .4rem;font-size:1.4rem}.empty-library p{color:var(--muted);margin:0}.migration-state{margin-top:2rem}.migration-state p{max-width:660px;margin:1rem auto 0}.migration-state code{background:#edf0ed;border-radius:5px;padding:.1rem .3rem}@media (max-width:900px){.hero{grid-template-columns:1fr;padding-top:5rem}.hero-visual{width:100%;max-width:650px;margin:0 auto 6rem}.hero-visual .product-preview{left:-1.25rem;right:-1.25rem}.nav-links>a[href^=\#]{display:none}.problem-grid{grid-template-columns:1fr}.problem-side,.problem-copy{display:contents}.problem-grid .eyebrow{grid-row:1}.problem-grid h2{grid-row:2}.problem-grid p{grid-row:3}.scope-gap-card{grid-row:4;width:100%;max-width:520px;margin-top:.75rem}.faq-section,.create-panel{grid-template-columns:1fr}.page-title-row{grid-template-columns:1fr;align-items:start}.starter-note{max-width:520px}.room-section-heading,.quote-summary{grid-template-columns:1fr;align-items:start}.quote-metrics{grid-template-columns:repeat(2,1fr)}.room-page{grid-template-columns:1fr}.room-sidebar{border-bottom:1px solid var(--line);border-right:0}.room-sidebar nav{display:flex;overflow-x:auto}.room-sidebar nav a{min-width:160px}.scope-add-form .editor-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.next-room-modules{grid-template-columns:1fr}}@media (max-width:650px){.marketing-shell{width:calc(100% - 2.2rem)}.marketing-nav{width:100%}.nav-links{gap:.9rem}.nav-links>a:not(.button):not(:last-of-type){display:none}.hero{min-height:auto;padding:4.5rem 0 5.5rem}.hero h1{font-size:clamp(3rem,15vw,4.2rem)}.hero-visual{height:570px;margin-bottom:7rem}.hero-visual .product-preview{bottom:-6rem;left:-.4rem;right:-.4rem}.photo-caption{bottom:10rem}.preview-body{grid-template-columns:1fr}.room-list{border-bottom:1px solid var(--line);border-right:0;flex-direction:row;min-width:0;overflow:hidden}.room-list>small{display:none}.room{min-width:115px}.scope-card{padding:1rem}.margin-row{gap:.5rem}.workflow-grid,.principles-grid,.visual-story{grid-template-columns:1fr}.visual-story article+article{margin-top:2rem}.workflow-grid article+article,.principles-grid article+article{margin-top:1.5rem}.marketing-footer{text-align:center;grid-template-columns:1fr}.marketing-footer div{justify-content:center}.auth-page{padding:1.1rem}.auth-card{border-radius:20px}.app-header{grid-template-columns:1fr auto;gap:.7rem}.app-brand small{display:none}.app-nav{order:3;grid-area:2/1/auto/-1;justify-content:center}.app-header>form{grid-area:1/2}.price-book-page{padding-top:2.5rem}.page-title-row h1{font-size:3.6rem}.editor-fields{grid-template-columns:1fr}.span-2{grid-column:1}.category-tool,.category-tool form{flex-direction:column;align-items:stretch}.category-tool input{min-width:0}.library-heading{flex-direction:column;align-items:start}.library-card-main{grid-template-columns:1fr;align-items:start}.rate-pair{border-top:1px solid var(--line);padding-top:1rem}.library-actions{flex-direction:column;align-items:stretch}.library-actions>form{align-self:flex-start}.workspace-title-row,.dashboard-heading,.job-detail-hero{flex-direction:column;align-items:stretch}.workspace-title-row .button,.dashboard-heading .button,.job-detail-hero .button{align-self:flex-start}.client-grid,.job-overview-grid{grid-template-columns:1fr}.job-card{flex-direction:column;align-items:flex-start;gap:1rem}.add-room-form{flex-direction:column;align-items:stretch}.add-room-form input{width:100%;min-width:0}.room-card{grid-template-columns:auto 1fr auto}.room-card>b{display:none}.room-header{flex-direction:column;align-items:stretch}.room-header form{align-self:flex-start}.room-module-grid,.scope-add-form .editor-fields,.quantity-strip{grid-template-columns:1fr}.room-live-heading,.scope-list article{flex-direction:column;align-items:flex-start}.scope-list article form{align-self:flex-start}}
