:root{--ink:#18322e;--ink2:#29433d;--muted:#61756e;--forest:#195342;--forest2:#10392f;--sage:#d9e8db;--mint:#eaf3e9;--cream:#f8f8f3;--paper:#fffefb;--line:#dbe3db;--sun:#f6c679;--peach:#ffe9d7;--blue:#e4eff5;--danger:#a34232;--shadow:0 15px 44px rgba(24,50,46,.07);--round:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #79b19b;outline-offset:2px}svg{display:block}img{max-width:100%}h1,h2,h3,p,ul{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.6rem,5.3vw,5.2rem);font-weight:750}h2{font-size:clamp(1.9rem,3vw,2.9rem);font-weight:750}h3{font-size:1.15rem;letter-spacing:-.02em}.serif{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:500}.container{max-width:1180px;margin:0 auto;padding-left:28px;padding-right:28px}.section{padding:82px 0}.muted{color:var(--muted)}.small{font-size:13px}.kicker{text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800;color:var(--forest)}.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}.site-header{position:sticky;top:0;z-index:50;background:rgba(248,248,243,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(24,50,46,.08)}.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:11px;white-space:nowrap;font-size:21px;font-weight:850;letter-spacing:-.055em}.brand-mark{width:39px;height:39px;border-radius:13px;background:var(--forest);color:#fff;display:grid;place-items:center}.brand-mark svg{width:25px;height:25px}.nav-items{display:flex;align-items:center;gap:29px;margin-left:auto}.nav-items a{font-weight:620;font-size:14px;color:#425c53}.nav-items a:hover,.nav-items a[aria-current=page]{color:var(--forest)}.nav-tools{display:flex;align-items:center;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 20px;border-radius:13px;font-weight:750;font-size:14px;border:1px solid transparent;transition:transform .15s,background .15s,box-shadow .15s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--forest);color:#fff;box-shadow:0 7px 17px rgba(18,77,57,.12)}.btn-primary:hover{background:var(--forest2)}.btn-outline{border-color:var(--line);background:var(--paper);color:var(--ink)}.btn-soft{background:#e6eee7;color:var(--forest)}.btn-link{padding:0;background:transparent;color:var(--forest);border:0;min-height:32px}.btn-sm{font-size:13px;min-height:38px;padding:8px 13px;border-radius:11px}.menu-toggle{display:none;background:none;border:1px solid var(--line);border-radius:12px;padding:10px;line-height:0}.menu-toggle svg{width:19px}.site-footer{background:#143b32;color:#fff;margin-top:65px;padding:62px 0 26px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}.footer-grid .brand-mark{background:#e4eee6;color:var(--forest)}.footer-grid p{color:#c2d7cc;max-width:340px;margin:18px 0 0}.footer-links{display:grid;gap:10px;margin-top:18px;font-size:14px;color:#d6e6dd}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #3b5d51;margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:25px;color:#c2d7cc;font-size:12px}.eyebrow{display:inline-flex;gap:8px;align-items:center;padding:7px 13px;border:1px solid #c7dbcd;background:#eaf1e9;border-radius:50px;font-size:12px;font-weight:800;color:var(--forest)}.dot{height:8px;width:8px;background:#e49b64;border-radius:50%}.hero{padding:82px 0 95px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;align-items:center;gap:52px}.hero h1{max-width:620px;margin:23px 0}.hero h1 .serif{color:#588c70}.hero-lead{font-size:18px;color:#536c62;max-width:550px;line-height:1.7;margin-bottom:27px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-proof{display:flex;gap:22px;align-items:center;margin-top:31px;color:#5f756a;font-size:13px}.hero-proof span{display:inline-flex;align-items:center;gap:7px}.hero-art{position:relative;padding:18px 14px 22px;min-height:490px}.hero-art:before{content:"";position:absolute;inset:15px -35px 25px 22px;background:#dce9de;border-radius:53% 47% 60% 40% / 48% 50% 50% 52%;transform:rotate(-10deg)}.demo-window{position:relative;background:#fffefb;border:1px solid #d8e3d9;border-radius:22px;box-shadow:0 24px 70px rgba(24,68,52,.15);overflow:hidden;transform:rotate(-2deg)}.demo-top{padding:19px 21px;border-bottom:1px solid #e9ebe5;display:flex;justify-content:space-between;align-items:center}.demo-body{padding:22px}.demo-mini-brand{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800}.demo-mini-brand i{height:20px;width:20px;border-radius:8px;background:var(--forest);display:block}.demo-project{background:#f0f4ec;border-radius:17px;padding:19px 21px}.demo-project>span{font-size:11px;color:#697b70}.demo-project h3{margin:7px 0 13px;font-size:22px}.demo-progress{display:flex;justify-content:space-between;font-size:11px;margin-bottom:9px;font-weight:700}.bar{height:9px;border-radius:20px;background:#d7e6d8;overflow:hidden}.bar>span{display:block;height:100%;background:#6fa58a;border-radius:20px}.demo-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:13px 0}.demo-metric{background:#fff;border:1px solid #edf0ea;padding:16px;border-radius:15px}.demo-metric small{display:block;color:#78887f;font-size:11px;margin-bottom:6px}.demo-metric strong{font-size:24px;letter-spacing:-.04em}.demo-tasks{border:1px solid #e8ebe5;border-radius:16px;padding:15px 17px}.demo-task{display:flex;gap:9px;align-items:center;color:#344b40;font-size:12px;padding:9px 0}.demo-task+.demo-task{border-top:1px solid #edf0ea}.demo-check{display:grid;place-items:center;background:#d8ecdc;color:#387457;height:19px;width:19px;border-radius:7px;font-weight:800}.demo-check.empty{background:#fff;border:1px solid #cddcd0}.float-tag{position:absolute;background:#fffdf4;border:1px solid #f5dfb8;border-radius:14px;padding:12px 16px;right:-16px;bottom:3px;box-shadow:0 12px 24px rgba(54,65,37,.11);font-size:12px;font-weight:800;display:flex;align-items:center;gap:8px;transform:rotate(6deg)}.float-tag span{display:grid;place-items:center;height:27px;width:27px;border-radius:9px;background:#fce3ac}.band{background:#e5eee6;border-top:1px solid #d5e2d7;border-bottom:1px solid #d5e2d7}.band-row{display:flex;align-items:center;justify-content:space-around;gap:28px;padding:21px 0;flex-wrap:wrap}.band-row span{font-size:13px;font-weight:750;color:#547261;display:flex;align-items:center;gap:9px}.band-row svg{width:18px;height:18px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.section-head h2{max-width:730px;margin:8px 0 0}.section-head p{max-width:400px;color:var(--muted);margin:0}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--round);padding:23px;box-shadow:0 2px 8px rgba(24,50,46,.016)}.link-card{display:flex;flex-direction:column;gap:13px;transition:transform .16s,box-shadow .16s,border-color .16s;min-height:222px}.link-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#a8cbb4}.card-icon{height:49px;width:49px;border-radius:15px;background:var(--mint);color:var(--forest);display:grid;place-items:center}.card-icon svg{height:24px;width:24px}.card:nth-child(4n+2) .card-icon{background:#fff0df}.card:nth-child(4n+3) .card-icon{background:var(--blue)}.card h3{margin:4px 0 4px;font-size:19px}.card p{font-size:13px;color:var(--muted);margin:0;line-height:1.6}.card .go{font-weight:750;font-size:13px;color:var(--forest);margin-top:auto;display:flex;align-items:center;gap:7px}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.feature-paper{background:#e9ede1;border-radius:35px;padding:26px;min-height:330px;position:relative;overflow:hidden}.feature-paper:after{content:'';width:200px;height:200px;border:28px solid #d4dfcc;border-radius:50%;position:absolute;right:-88px;top:-65px}.feature-list{display:grid;gap:16px;margin:24px 0 30px}.feature-item{display:flex;align-items:start;gap:12px;font-size:15px}.feature-item svg{color:#49886a;flex:0 0 22px}.quote-preview{position:relative;background:white;border-radius:19px;max-width:420px;padding:23px;box-shadow:0 18px 50px rgba(20,48,39,.08)}.quote-preview .qrow{display:flex;justify-content:space-between;border-bottom:1px solid #eff0e8;padding:12px 0;font-size:13px}.qrow strong{font-size:16px}.qcheck{border-radius:8px;background:#e9f4e7;font-size:11px;padding:5px 9px;color:#216445}.callout{background:#164839;color:#fff;border-radius:32px;padding:46px;display:flex;align-items:center;justify-content:space-between;gap:35px}.callout h2{max-width:630px;margin:0 0 14px}.callout p{margin:0;color:#c5dacc;max-width:600px}.callout .btn{background:#e7edcf;color:#214636}.page-head{padding:69px 0 38px}.page-head h1{font-size:clamp(2.25rem,4.3vw,4.2rem);max-width:950px;margin:17px 0 14px}.page-head p{max-width:760px;color:#5f746a;font-size:18px;line-height:1.7}.breadcrumbs{display:flex;gap:9px;flex-wrap:wrap;color:#748479;font-size:12px;align-items:center}.breadcrumbs a:hover{color:var(--forest);text-decoration:underline}.breadcrumb-sep{color:#a3b2a8}.tool-layout{display:grid;grid-template-columns:minmax(0,1.17fr) minmax(310px,.83fr);gap:24px;align-items:start}.tool-form,.result-card{background:var(--paper);border:1px solid var(--line);border-radius:25px;padding:28px;box-shadow:0 10px 35px rgba(14,52,37,.035)}.form-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.form-heading h2{font-size:22px;margin:0}.segmented{display:inline-flex;background:#edf1eb;border:1px solid #dce6dd;padding:4px;border-radius:12px;gap:3px}.segmented button{min-width:53px;border:0;border-radius:9px;background:transparent;font-size:12px;color:#5d7468;font-weight:800;padding:8px 11px}.segmented button.active{background:white;box-shadow:0 2px 6px rgba(0,0,0,.07);color:var(--forest)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.field{display:grid;gap:7px}.field label{font-size:12px;font-weight:780;color:#445b51}.field input,.field select,.field textarea{border:1px solid #d4ded5;background:#fff;border-radius:11px;padding:11px 12px;width:100%;color:var(--ink);min-width:0;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#5c9477;box-shadow:0 0 0 3px rgba(92,148,119,.15)}.field textarea{resize:vertical;min-height:90px}.form-divider{border-top:1px solid #e4eae1;margin:22px 0}.result-card{position:sticky;top:98px;background:#edf4e8;border-color:#d8e6d5}.result-card .result-eyebrow{font-size:12px;font-weight:800;color:#5e8169;text-transform:uppercase;letter-spacing:.1em}.result-hero{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;padding:13px 0 18px}.result-number{font-size:clamp(3rem,5vw,4.5rem);font-weight:820;letter-spacing:-.07em;line-height:1}.result-unit{color:#658370;font-weight:750}.result-metrics{display:grid;grid-template-columns:1fr 1fr;gap:9px}.result-metric{padding:13px;background:#fff;border-radius:12px;min-height:78px}.result-metric span{color:#698373;font-size:11px;display:block}.result-metric strong{font-size:16px;letter-spacing:-.025em}.result-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0;padding:14px 0;border-bottom:1px solid #cddcce;border-top:1px solid #cddcce}.result-total strong{font-size:24px}.result-actions{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.result-actions .field{grid-column:1/-1}.result-actions button{min-width:0}.result-note{font-size:11px;color:#698170;margin-top:15px;line-height:1.5}.steps{display:grid;gap:10px;padding-left:18px;color:#587166;font-size:13px;margin:15px 0 0}.tool-guide{max-width:840px;margin:70px auto 10px}.tool-guide .prose{font-size:16px;line-height:1.8;color:#4e655b}.tool-guide h2{font-size:28px;margin:36px 0 14px}.tool-guide h3{font-size:20px;margin:26px 0 10px}.tip-list{padding-left:24px;line-height:1.9;color:#496258}.faq-item{padding:18px 0;border-bottom:1px solid var(--line)}.faq-item h3{font-size:16px;margin:0 0 7px}.faq-item p{font-size:14px;color:var(--muted);margin:0}.references{font-size:13px;line-height:1.8;color:var(--muted)}.references a{text-decoration:underline;text-underline-offset:3px}.tool-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.soft-box{border-radius:22px;border:1px solid #d7e3da;background:#eaf2e8;padding:22px}.disclaimer{background:#f9efe2;padding:16px 18px;border-radius:14px;border:1px solid #f3dcc4;color:#6e563e;font-size:13px;line-height:1.7}.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:25px;align-items:start;margin-top:2px}.app-side{border:1px solid var(--line);background:#fffefa;border-radius:22px;padding:19px;position:sticky;top:94px}.app-side h3{font-size:14px;margin-bottom:15px}.app-side .subtle{font-size:11px;color:var(--muted)}.side-nav{display:grid;gap:6px}.side-nav button{width:100%;border:0;text-align:left;padding:12px 13px;border-radius:11px;background:none;color:#52695e;font-weight:700;font-size:13px}.side-nav button.active{background:#e7f0e8;color:#27644b}.app-main{min-width:0}.app-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:19px;flex-wrap:wrap}.app-head h2{font-size:26px;margin:0}.app-card{background:#fffefb;border:1px solid var(--line);border-radius:22px;padding:24px;margin-bottom:18px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.project-tile{background:#fffefb;border:1px solid var(--line);border-radius:20px;padding:20px;display:grid;gap:12px;position:relative}.project-tile:hover{border-color:#a2c6ac;box-shadow:var(--shadow)}.project-tile h3{margin:0;font-size:20px}.project-tile p{margin:0;font-size:12px;color:var(--muted)}.project-tile .project-actions{display:flex;gap:8px;flex-wrap:wrap}.status-pill{display:inline-block;border-radius:99px;background:#e6efdf;color:#466549;font-size:10px;font-weight:850;letter-spacing:.045em;padding:5px 9px;text-transform:uppercase}.status-pill.done{background:#e6eef4;color:#55718c}.progress-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#657d6f;margin-bottom:8px}.pill{display:inline-block;border-radius:20px;font-size:11px;font-weight:700;padding:5px 11px;background:#f0f4eb;color:#47634e}.empty-state{text-align:center;padding:45px 25px;border:1px dashed #bfd3c2;border-radius:23px;background:#f4f8f1}.empty-state h3{font-size:23px;margin:13px 0 9px}.empty-state p{color:var(--muted);margin:0 auto 21px;max-width:410px}.empty-illustration{width:60px;height:60px;border-radius:18px;background:#dfeee0;display:grid;place-items:center;margin:0 auto;color:var(--forest)}.empty-illustration svg{height:32px;width:32px}.app-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:13px 0 22px}.stat{background:white;border:1px solid var(--line);border-radius:17px;padding:18px}.stat span{color:#6e8477;font-size:12px;display:block}.stat strong{display:block;font-size:25px;letter-spacing:-.045em;margin-top:5px}.app-list{display:grid;gap:9px}.task-row,.expense-row,.material-row{border:1px solid #e7eae5;border-radius:12px;padding:12px 14px;background:white;display:flex;align-items:center;gap:12px;justify-content:space-between}.task-left{display:flex;align-items:center;gap:11px;min-width:0}.task-left input{height:19px;width:19px;accent-color:var(--forest)}.task-row .details,.expense-row .details{font-size:11px;color:#77857d}.task-title{font-weight:720;font-size:13px;overflow-wrap:anywhere}.task-title.completed{text-decoration:line-through;color:#96a89c}.tiny-actions{display:flex;gap:6px}.icon-btn{border:1px solid #e0e7df;border-radius:10px;background:#fff;color:#5e7367;padding:8px;line-height:0;display:inline-grid;place-items:center}.icon-btn svg{height:14px;width:14px}.icon-btn:hover{background:#f0f4ee}.inline-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:end}.inline-form.two{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-form .span2{grid-column:span 2}.inline-form .field input,.inline-form .field select{font-size:13px;padding:10px}.inline-form .btn{min-width:0}.money-negative{color:#a8443b}.project-tab-panel{display:none}.project-tab-panel.active{display:block}.tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:22px;overflow:auto}.tabs button{border:0;background:transparent;border-radius:10px;font-size:13px;padding:10px 14px;color:#5d7167;font-weight:800;white-space:nowrap}.tabs button.active{background:#e6f0e6;color:var(--forest)}.project-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:20px}.project-topline h2{margin:8px 0}.project-topline p{font-size:13px;color:var(--muted);max-width:680px}.text-button{border:0;background:none;color:#456c55;font-size:12px;font-weight:750;padding:6px}.text-button:hover{text-decoration:underline}.danger{color:var(--danger)}.modal-backdrop{position:fixed;inset:0;background:rgba(14,36,27,.57);z-index:99;display:grid;place-items:center;padding:18px}.modal{width:min(100%,515px);max-height:94vh;overflow:auto;background:var(--paper);padding:30px;border-radius:25px;box-shadow:0 35px 100px rgba(0,0,0,.18)}.modal h2{font-size:28px;margin:0 0 6px}.modal .field{margin:14px 0}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.hidden,[hidden]{display:none!important}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#173f32;color:white;font-size:13px;padding:13px 20px;border-radius:12px;box-shadow:var(--shadow);z-index:120;max-width:min(95vw,500px)}.compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quote-card{background:#fffefb;border:1px solid var(--line);border-radius:20px;padding:20px;min-width:0}.quote-card .field{margin-bottom:13px}.scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 17px;margin:17px 0}.checkline{display:flex;align-items:start;gap:9px;font-size:13px;color:#4f685c}.checkline input{accent-color:var(--forest);margin-top:3px}.comparison-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;background:white;overflow:auto}.comparison-table th,.comparison-table td{border-bottom:1px solid var(--line);padding:12px 11px;vertical-align:top}.comparison-table th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;background:#eaf2e9}.comparison-table td+td{border-left:1px solid #e6eae2}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:17px}.maint-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.maint-item{background:white;border:1px solid var(--line);border-radius:17px;padding:18px}.maint-top{display:flex;gap:11px;align-items:flex-start;justify-content:space-between}.maint-item h3{font-size:16px;margin:0 0 6px}.maint-meta{font-size:12px;color:var(--muted)}.maint-actions{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.due-soon{background:#fff0dc;color:#825a2d}.guide-content{max-width:840px;margin:30px auto}.guide-content>p{font-size:18px;color:#4e6459;line-height:1.85}.guide-content h2{margin:38px 0 13px;font-size:27px}.guide-content li,.guide-content p{line-height:1.9;color:#4b6257}.checklist-box{background:#eaf3e9;padding:27px;border-radius:23px;margin:32px 0}.checklist-box h2{margin:0 0 20px}.checklist-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.checklist-grid label{display:flex;align-items:center;gap:9px;font-size:14px}.checklist-grid input{accent-color:var(--forest)}.badge-gold{background:#fff0da;color:#825c27;border:1px solid #eedac0}.ad-slot{display:none}.notice{display:flex;align-items:start;gap:12px;padding:17px;background:#f0f4e9;border-radius:14px;font-size:13px;color:#5d725f;margin:15px 0}.notice svg{flex:0 0 20px}.flex-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.count{font-size:12px;color:#6c8073}.guide-links{display:grid;gap:12px}.guide-links a{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px;display:block}.guide-links a:hover{border-color:#a5c5af}.guide-links strong{display:block;margin-bottom:7px}.guide-links span{font-size:13px;color:#6f8077}.fineprint{font-size:12px;color:#789083;line-height:1.65}.footer-spacer{height:0}@media(max-width:1020px){.nav-items{gap:16px}.hero-grid{gap:25px}.hero-art{min-height:430px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-list{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:190px minmax(0,1fr)}.compare-grid{grid-template-columns:1fr}.quote-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 17px}.quote-card h3,.quote-card .scope-heading,.quote-card .scope-grid,.quote-card .quote-notes{grid-column:1/-1}.quote-card .field{margin:0}}@media(max-width:760px){.container{padding-left:19px;padding-right:19px}.nav-wrap{min-height:67px}.brand{font-size:19px}.brand-mark{width:34px;height:34px}.nav-tools>.btn{display:none}.menu-toggle{display:grid}.nav-items{position:absolute;top:66px;left:0;right:0;background:#fffefb;border-bottom:1px solid var(--line);display:none;gap:0;padding:13px 19px 22px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.nav-items.open{display:flex}.nav-items a{padding:12px 6px}.hero{padding:53px 0 62px}.hero-grid{grid-template-columns:1fr;gap:17px}.hero h1{font-size:clamp(2.6rem,9vw,4.3rem);max-width:620px}.hero-lead{font-size:16px}.hero-art{min-height:0;padding:10px 20px 20px;margin:10px 0 0}.hero-art:before{inset:18px -9px 10px 13px}.float-tag{right:-2px;bottom:1px}.demo-window{max-width:500px;margin:auto}.section{padding:58px 0}.section-head{display:block}.section-head p{margin-top:14px}.split-feature{grid-template-columns:1fr;gap:25px}.feature-paper{min-height:300px}.callout{padding:30px 24px;display:block}.callout .btn{margin-top:25px}.page-head{padding:41px 0 27px}.page-head h1{font-size:clamp(2.1rem,7.2vw,3.4rem)}.page-head p{font-size:15px}.tool-layout{grid-template-columns:1fr;gap:14px}.result-card{position:relative;top:0;order:2}.tool-form{padding:21px}.result-card{padding:22px}.tool-guide{margin-top:45px}.app-shell{display:block}.app-side{position:static;margin-bottom:13px;padding:13px}.side-nav{display:flex;overflow:auto}.side-nav button{min-width:fit-content}.app-stats{grid-template-columns:repeat(2,1fr)}.app-stats .stat:last-child{grid-column:1/-1}.app-card{padding:18px}.project-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:10px}.maint-grid{grid-template-columns:1fr}.inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-form .btn{grid-column:1/-1}.checklist-grid{grid-template-columns:1fr}.tool-list{grid-template-columns:1fr}.result-hero{padding-top:9px}}@media(max-width:450px){.card-grid{grid-template-columns:1fr}.link-card{min-height:168px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-proof{flex-wrap:wrap;gap:10px}.form-grid{gap:13px}.result-metrics{gap:7px}.stat strong{font-size:21px}.tool-form,.result-card{border-radius:19px}.section-head h2{font-size:29px}.quote-card{display:block}.quote-card .field{margin-bottom:12px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}@media print{.site-header,.site-footer,.no-print,.btn,.tabs,.app-side,.ad-slot,.menu-toggle,.toast,.form-heading button{display:none!important}body{background:white;color:#000}.container{max-width:none}.app-shell{display:block}.app-card,.quote-card,.result-card,.tool-form{box-shadow:none;border-color:#bbb;break-inside:avoid}.project-tab-panel{display:block!important}.result-card{position:static}.page-head{padding:15px 0}.section{padding:16px 0}a{text-decoration:none}}

/* RenoThread personal appearance and privacy features. Does not alter existing layout or storage keys. */
:root{--accent-surface:#eaf2ea;--accent-text:#fff;--focus-ring:#12704e;--header-bg:rgba(248,248,243,.97);--control-bg:#fff;--control-border:#d4ded5}
html[data-accent="forest"]{--forest:#195342;--forest2:#10392f;--focus-ring:#24654e;--accent-surface:#eaf2ea}
html[data-accent="ocean"]{--forest:#245c97;--forest2:#153e6c;--focus-ring:#245c97;--accent-surface:#eaf3ff}
html[data-accent="violet"]{--forest:#6d3fa9;--forest2:#4c287b;--focus-ring:#6d3fa9;--accent-surface:#f2ecff}
html[data-accent="terracotta"]{--forest:#9e493c;--forest2:#713024;--focus-ring:#9e493c;--accent-surface:#fff0ea}
html[data-accent="gold"]{--forest:#735310;--forest2:#513900;--focus-ring:#735310;--accent-surface:#fff4d8}
html[data-accent="teal"]{--forest:#116962;--forest2:#0b4945;--focus-ring:#116962;--accent-surface:#e4f7f4}
:where(a,button,input,textarea,select,summary):focus-visible{outline:3px solid var(--focus-ring)!important;outline-offset:3px}
.btn-primary{background:var(--forest);color:var(--accent-text)}
.btn-primary:hover{background:var(--forest2)}
.btn-soft,.tabs button.active,.side-nav button.active{background:var(--accent-surface);color:var(--forest)}
.brand-mark{color:var(--forest)}
.hero h1 .serif,.nav-items a:hover,.nav-items a[aria-current=page],.report-tool-trigger,.text-button:not(.danger){color:var(--forest)}
.app-side input[type="checkbox"],.checkline input,.task-left input,.checklist-grid input{accent-color:var(--forest)}
.appearance-panel{position:relative;display:inline-flex}
.appearance-toggle,.header-report{display:inline-flex;align-items:center;justify-content:center;background:var(--paper);border:1px solid var(--line);color:var(--ink);height:39px;border-radius:12px;font-weight:740;font-size:12px}
.appearance-toggle{width:42px}
.appearance-toggle[aria-expanded="true"]{border-color:var(--forest);color:var(--forest)}
.header-report{padding:0 13px;white-space:nowrap}
.appearance-toggle:hover,.header-report:hover{border-color:var(--forest)}
.appearance-menu{position:absolute;top:calc(100% + 14px);right:-86px;width:min(325px,calc(100vw - 20px));background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 18px 55px rgba(5,25,15,.21);padding:22px;border-radius:20px;z-index:75}
.appearance-menu h2{font-size:18px;margin:0 0 16px}.appearance-menu fieldset{border:0;padding:0;margin:0 0 16px;min-width:0}.appearance-menu legend{font-size:12px;color:var(--muted);font-weight:800;margin-bottom:9px}.appearance-menu p{font-size:11px;color:var(--muted);margin:0}
.appearance-modes{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.appearance-modes label{display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;padding:9px 3px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.appearance-modes label:has(input:checked){border-color:var(--forest);background:var(--accent-surface);color:var(--forest);font-weight:800}
.appearance-modes input{accent-color:var(--forest);width:13px;height:13px}.accent-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.accent-choices label{font-size:12px;border-radius:12px;padding:10px 3px;display:flex;align-items:center;flex-direction:column;gap:5px;cursor:pointer;border:2px solid transparent}.accent-choices label:has(input:checked){border-color:var(--forest);background:var(--accent-surface);font-weight:800}.accent-choices input{appearance:none;width:25px;height:25px;border-radius:50%;background:var(--swatch);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--line);cursor:pointer}.accent-choices input:checked{box-shadow:0 0 0 2px var(--forest)}.accent-choices input:focus-visible{outline:3px solid var(--focus-ring)!important;outline-offset:3px}
.report-dialog{border:1px solid var(--line);border-radius:22px;padding:25px;width:min(92vw,550px);max-height:min(89dvh,770px);overflow:auto;background:var(--paper);color:var(--ink);box-shadow:0 35px 105px rgba(0,0,0,.25);margin:auto}
.report-dialog::backdrop{background:rgba(7,19,19,.72)}.report-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.report-heading h2{font-size:25px;margin:0}.report-close{background:none;border:1px solid var(--line);border-radius:11px;color:var(--ink);font-size:25px;line-height:1;width:39px;height:39px}.report-dialog>p{font-size:13px;color:var(--muted);line-height:1.7;margin:12px 0 19px}.report-dialog .field{margin:14px 0}.report-dialog textarea{max-width:100%;resize:vertical}.report-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:16px}.report-dialog #report-status{min-height:24px;font-size:13px;font-weight:700;color:var(--ink)}.report-tool-trigger{margin-top:16px;border:1px solid var(--line);border-radius:11px;padding:8px 13px;background:var(--paper)}
.privacy-controls{padding:19px 22px;border:1px solid var(--line);border-radius:17px;background:var(--accent-surface);margin:20px 0}.privacy-optout{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:760}.privacy-optout input{width:20px;height:20px;accent-color:var(--forest)}.privacy-controls p{margin:8px 0 0 30px}
html[data-theme="dark"]{--ink:#e8efeb;--ink2:#d5e5dc;--muted:#b3c2b9;--paper:#1e2c2b;--cream:#121c1b;--line:#40534d;--sage:#304c3f;--mint:#1d3932;--danger:#ff9a87;--shadow:0 16px 48px rgba(0,0,0,.25);--header-bg:rgba(20,31,29,.96);--control-bg:#152522;--control-border:#50665c;--accent-text:#09221b;--accent-surface:#274237;--focus-ring:#a9e8c4}
html[data-theme="dark"][data-accent="forest"]{--forest:#94dfb6;--forest2:#b7f1d0;--accent-surface:#254139;--focus-ring:#94dfb6}
html[data-theme="dark"][data-accent="ocean"]{--forest:#a1caff;--forest2:#c5e1ff;--accent-surface:#273d56;--focus-ring:#a1caff}
html[data-theme="dark"][data-accent="violet"]{--forest:#d0afff;--forest2:#e3d1ff;--accent-surface:#3b304d;--focus-ring:#d0afff}
html[data-theme="dark"][data-accent="terracotta"]{--forest:#ffac9e;--forest2:#ffccc0;--accent-surface:#48312f;--focus-ring:#ffac9e}
html[data-theme="dark"][data-accent="gold"]{--forest:#f6d785;--forest2:#ffe7a7;--accent-surface:#433d2c;--focus-ring:#f6d785}
html[data-theme="dark"][data-accent="teal"]{--forest:#84e8d7;--forest2:#aff7eb;--accent-surface:#22453f;--focus-ring:#84e8d7}
html[data-theme="dark"] .site-header{background:var(--header-bg);border-color:var(--line)}
html[data-theme="dark"] .site-footer{background:#102220;border-color:var(--line)}
html[data-theme="dark"] .nav-items a{color:#d0dfd5}
html[data-theme="dark"] .btn-primary,html[data-theme="dark"] .status-pill{color:#10231e}
html[data-theme="dark"] .brand-mark{background:var(--accent-surface);color:var(--forest)}
html[data-theme="dark"] :is(.tool-form,.result-card,.app-card,.app-side,.project-tile,.card,.quote-card,.maint-item,.guide-links a,.stat,.modal,.demo-window,.demo-metric,.task-row,.expense-row,.material-row,.callout,.soft-box,.empty-state,.comparison-table,.float-tag,.result-metric,.checklist-box,.feature-paper,.notice,.checkline,.pill,.comparison-table th){background:var(--paper);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] :is(.field input,.field textarea,.field select,.inline-form .field input,.appearance-menu,.report-dialog){background:var(--paper);border-color:var(--line);color:var(--ink)}
html[data-theme="dark"] :is(.tool-form input,.tool-form select,.tool-form textarea,.comparison-table input,.form-grid input){background:var(--control-bg);color:var(--ink);border-color:var(--control-border)}
html[data-theme="dark"] .comparison-table th{background:#283b36}
html[data-theme="dark"] :is(.demo-top,.demo-check.empty,.stat,.task-row,.expense-row,.material-row){background:#223633;border-color:var(--line)}
html[data-theme="dark"] :is(.nav-items,.nav-items.open){background:#1d2d28}
html[data-theme="dark"] :is(.eyebrow,.btn-soft,.status-pill.done,.tabs button.active,.side-nav button.active,.privacy-controls,.checklist-box){background:var(--accent-surface);color:var(--forest);border-color:var(--line)}
html[data-theme="dark"] :is(.result-eyebrow,.result-card .result-eyebrow,.kicker,.nav-items a:hover,.nav-items a[aria-current=page]){color:var(--forest)}
html[data-theme="dark"] :is(.fineprint,.muted,.small.muted,.app-stats span,.guide-content>p,.guide-content p,.guide-content li,.breadcrumbs,.result-note,.tool-guide .prose,.card p){color:var(--muted)}
html[data-theme="dark"] :is(.btn-outline,.icon-btn,.header-report,.appearance-toggle,.text-button,.tabs button,.side-nav button){color:var(--ink);border-color:var(--line);background:var(--paper)}
html[data-theme="dark"] .hero-art:before{opacity:.35}
html[data-theme="dark"] .toast{background:#305246;color:#fff}
html[data-theme="dark"] .appearance-menu{background:var(--paper);color:var(--ink)}
html[data-theme="dark"] .appearance-modes label:has(input:checked),html[data-theme="dark"] .accent-choices label:has(input:checked){color:var(--forest);background:var(--accent-surface)}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#a6b8ae}
@media(max-width:760px){.appearance-menu{position:fixed;top:67px;right:10px;max-width:calc(100vw - 20px)}.header-report{height:37px;padding:0 10px}.appearance-toggle{height:37px;width:37px}.nav-wrap{gap:8px}.nav-tools{gap:7px}.brand{font-size:18px}}
@media(max-width:360px){.header-report{font-size:11px;padding:0 7px}.brand{font-size:16px}.brand-mark{width:31px;height:31px}.nav-tools{gap:5px}}
@media print{.report-dialog,.report-tool-trigger,.appearance-panel,.header-report{display:none!important}}


.synthetic-banner{background:#382d12;color:#fff4cf;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;padding:9px 18px;font-size:12px;font-weight:700}.synthetic-banner button{border:1px solid #e5bd65;border-radius:8px;background:#fff3c6;color:#382d12;padding:5px 10px;font-weight:800}.synthetic-banner button:focus-visible{outline:3px solid #fff!important}
@media(max-width:360px){.nav-wrap{gap:4px}.nav-wrap.container{padding-left:12px;padding-right:12px}.nav-tools{gap:3px}.nav-wrap .brand{gap:6px;font-size:15px;letter-spacing:-.045em}.nav-wrap .brand-mark{width:29px;height:29px}.nav-wrap .brand-mark svg{width:20px;height:20px}.nav-tools .appearance-toggle{width:32px;height:32px}.nav-tools .header-report{height:32px;font-size:10px;padding:0 5px}.nav-tools .menu-toggle{padding:7px}.nav-tools .menu-toggle svg{width:18px}}
/* Compact handsets: avoid grid min-content expansion of calculator cards. */
@media(max-width:450px){.tool-layout{grid-template-columns:minmax(0,1fr)}.tool-layout>.tool-form,.tool-layout>.result-card{min-width:0;max-width:100%}.form-heading{flex-wrap:wrap;gap:10px}.form-heading .segmented{max-width:100%}}
@media(max-width:360px){.tool-form .form-grid{grid-template-columns:minmax(0,1fr)}.tool-form,.result-card{padding:17px}.result-card .result-number{overflow-wrap:anywhere}.report-dialog{padding:18px}.report-actions .btn{flex:1}}

/* Keep the original house icon visible in every appearance theme. */
.site-header .brand-mark,html[data-theme="dark"] .site-header .brand-mark{background:var(--forest);color:var(--accent-text,#fff);flex-shrink:0}

/* Keep the mobile brand and controls balanced, with breathing room at both edges. */
@media(max-width:760px){
 .site-header .nav-wrap.container{padding-left:20px;padding-right:20px;gap:8px}
 .site-header .brand{font-size:clamp(14px,4vw,18px);gap:7px;flex-shrink:0}
 .site-header .brand-mark{width:32px;height:32px;border-radius:11px}
 .site-header .brand-mark svg{width:23px;height:23px}
 .site-header .nav-tools{gap:5px;margin-left:auto;flex-shrink:0}
 .site-header .appearance-toggle{width:36px;height:36px}
 .site-header .header-report{font-size:10px;padding:0 6px;height:36px}
 .site-header .menu-toggle{width:36px;height:36px;padding:8px;display:flex;align-items:center;justify-content:center}
 .site-header .menu-toggle svg{width:20px;height:20px}
}
@media(max-width:360px){
 .site-header .nav-wrap.container{padding-left:16px;padding-right:16px;gap:6px}
 .site-header .brand{font-size:13px;gap:6px;letter-spacing:-.035em}
 .site-header .brand-mark{width:28px;height:28px;border-radius:9px}
 .site-header .brand-mark svg{width:21px;height:21px}
 .site-header .nav-tools{gap:4px}
 .site-header .header-report{font-size:9px;padding:0 4px}
}
