:root{--ink:#24332c;--muted:#606b65;--paper:#f8f6f0;--panel:#fffefb;--line:#dfdfd5;--accent:#466d54;--soft:#e8eee5;--highlight:#e0b963;--serif:Georgia,'Times New Roman',serif;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;line-height:1.6}a{color:inherit;text-underline-offset:.2em}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.1}h1{font-size:clamp(2.5rem,4vw,4.3rem);max-width:790px;margin-bottom:22px}h2{font-size:clamp(1.8rem,2.6vw,2.65rem)}h3{font-size:1.08rem;line-height:1.35}p{margin-bottom:1.1em}.wrap{max-width:1260px;margin:auto;padding:0 34px}.skip{position:absolute;left:12px;top:-90px;background:var(--panel);z-index:20;padding:8px}.skip:focus{top:8px}.topbar{border-bottom:1px solid var(--line);background:var(--panel)}.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:1.23rem;font-weight:750;letter-spacing:-.04em}.logo{width:34px;height:34px;display:grid;place-items:center;border:1.5px solid var(--accent);border-radius:9px;color:var(--accent);font-size:20px}.navlinks{display:flex;gap:28px;font-size:.88rem;align-items:center}.navlinks a{text-decoration:none}.navlinks a:hover{text-decoration:underline}.hero{padding:65px 0 42px;display:grid;grid-template-columns:1.5fr .8fr;align-items:center;gap:50px}.eyebrow{font-size:.73rem;font-weight:750;text-transform:uppercase;letter-spacing:.15em;display:flex;align-items:center;gap:10px;margin-bottom:18px}.eyebrow:before{content:'';width:22px;height:2px;background:var(--accent)}.lede{color:var(--muted);font-size:1.06rem;max-width:650px;margin-bottom:20px}.badges{display:flex;flex-wrap:wrap;gap:9px}.badge{font-size:.72rem;border:1px solid var(--line);padding:5px 10px;border-radius:20px}.heroart{max-width:330px;justify-self:center;width:100%;color:var(--accent)}.heroart svg{width:100%;height:auto}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-top:1px solid var(--line);font-size:.78rem;gap:15px}.toolbar strong{font-size:.82rem}.tool{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.85fr);align-items:start;gap:26px;margin-bottom:60px}.inputs{background:var(--panel);border:1px solid var(--line);border-radius:17px;overflow:hidden}.form-head{padding:23px 26px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.form-head h2{font:650 1.1rem/1.4 Inter,system-ui;margin:0;letter-spacing:0}.smallbutton,.secondary{background:transparent;border:1px solid var(--line);border-radius:8px;padding:8px 13px;font-size:.8rem;font-weight:600;color:var(--ink)}.smallbutton:hover,.secondary:hover{background:var(--soft)}.form-body{padding:25px 26px}.section-label{display:flex;align-items:center;gap:10px;font-size:.74rem;font-weight:750;text-transform:uppercase;letter-spacing:.09em;margin:0 0 16px}.section-label span{border:1px solid var(--line);border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:.67rem}.section-gap{margin-top:28px;border-top:1px solid var(--line);padding-top:23px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:block;min-width:0;font-size:.81rem;font-weight:650}.field label{display:block;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #c9cec8;background:var(--panel);border-radius:7px;min-height:47px;padding:10px 12px;color:var(--ink);font-size:.95rem}.field small,.hint{display:block;color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.5;margin-top:6px}.field textarea{resize:vertical;min-height:80px}.full{grid-column:1/-1}.check{display:flex;align-items:flex-start;gap:9px;font-size:.8rem;margin:13px 0}.check input{accent-color:var(--accent);width:17px;height:17px;flex:none;margin-top:4px}.weekdays{display:flex;flex-wrap:wrap;gap:11px}.weekdays .check{margin:0}.calculate{width:100%;border:0;background:var(--accent);color:white;padding:15px 20px;border-radius:8px;margin-top:25px;font-weight:700;letter-spacing:.01em}.calculate:hover{filter:brightness(.92)}.form-note{font-size:.72rem;text-align:center;margin:12px 0 0;color:var(--muted)}.result{position:sticky;top:20px;background:var(--soft);border:1px solid var(--line);border-radius:17px;padding:29px 28px}.result-tag{font-size:.68rem;letter-spacing:.13em;font-weight:750;text-transform:uppercase;color:var(--accent)}.result-value{font-family:var(--serif);font-size:3.9rem;letter-spacing:-.045em;line-height:1.1;margin:17px 0 3px;overflow-wrap:anywhere}.result-unit{font-size:.9rem;color:var(--muted)}.result-secondary{display:flex;gap:12px;margin:20px 0;padding-bottom:20px;border-bottom:1px solid #cbd4c9}.result-secondary>div{flex:1}.result-secondary strong{display:block;font-size:1.25rem;letter-spacing:-.025em}.result-secondary span{font-size:.72rem;color:var(--muted)}.breakdown{margin:18px 0;font-size:.78rem}.breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:7px 0;border-bottom:1px solid #d6ded2}.breakdown dt{color:var(--muted)}.breakdown dd{font-weight:650;text-align:right;margin:0}.formula{padding:15px;background:rgba(255,255,255,.55);border-radius:8px;font-size:.78rem}.formula p{margin:0}.result-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.result-actions button{font-size:.72rem}.result-note{font-size:.73rem;line-height:1.6;color:var(--muted);margin:17px 0 0}.error{background:#fff0ec;color:#882e1d;padding:14px;border:1px solid #e1afa4;border-radius:8px;font-size:.85rem;margin-bottom:20px}.error:empty{display:none}.result.stale{opacity:.62}.status{font-size:.75rem;margin-top:10px;color:var(--muted)}[hidden]{display:none!important}.bed,.zone{padding:15px;background:var(--paper);border:1px solid var(--line);border-radius:9px;margin-bottom:12px}.bed legend,.zone legend{font-size:.78rem;font-weight:650;padding:0 6px}.remove-row{margin-top:12px}.add-row{margin:8px 0 12px}.explain{border-top:1px solid var(--line);padding:50px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:28px}.section-heading h2{margin:0}.section-heading a{font-size:.83rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.step-num{font:2rem var(--serif);color:var(--accent);display:block;margin-bottom:16px}.steps p{color:var(--muted);font-size:.88rem}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.guide-card{border:1px solid var(--line);border-radius:12px;padding:25px;background:var(--panel);text-decoration:none;display:flex;flex-direction:column;transition:transform .15s,border-color .15s}.guide-card:hover{transform:translateY(-3px);border-color:var(--accent)}.guide-card .guide-label{font-size:.65rem;color:var(--accent);font-weight:750;text-transform:uppercase;letter-spacing:.11em;margin-bottom:15px}.guide-card h3{font:400 1.35rem/1.3 var(--serif);letter-spacing:-.02em}.guide-card p{font-size:.8rem;color:var(--muted);flex:1}.guide-card b{font-size:.8rem}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px}.faq details{border-bottom:1px solid var(--line);padding:17px 0}.faq summary{font-size:.91rem;font-weight:600;cursor:pointer}.faq details p{margin:12px 0 0;color:var(--muted);font-size:.85rem}.footer{border-top:1px solid var(--line);padding:38px 0;margin-top:35px;font-size:.76rem;color:var(--muted)}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:25px}.footer nav{display:flex;flex-wrap:wrap;gap:13px 20px}.footer p{max-width:650px}.text-link{border:0;padding:0;background:none;color:inherit;text-decoration:underline;font:inherit}.article{max-width:800px;padding:55px 25px;margin:auto}.article h1{font-size:clamp(2.25rem,4vw,3.6rem)}.article h2{font-size:1.75rem;margin:38px 0 18px}.article h3{margin-top:28px}.article p,.article li{font-size:1rem;color:#3f4c44;line-height:1.85}.article a{color:var(--accent)}.article .meta{font-size:.75rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:25px;margin-bottom:28px}.callout{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:23px;margin:28px 0}.callout a{font-weight:650}.sources li{font-size:.81rem}.crumb{font-size:.75rem;margin-bottom:25px;color:var(--muted)}.schedule{max-height:300px;overflow:auto;margin-top:15px;border:1px solid var(--line);border-radius:8px}.schedule table{width:100%;border-collapse:collapse;background:var(--panel);font-size:.75rem}.schedule th,.schedule td{padding:8px;text-align:left;border-bottom:1px solid var(--line)}.schedule th{position:sticky;top:0;background:var(--soft)}.schedule .excluded{color:var(--muted)}.result .schedule summary{font-size:.8rem}.ad-gap{max-width:100%;overflow:hidden}.worksheet-table{border-collapse:collapse;width:100%;font-size:.9rem}.worksheet-table td,.worksheet-table th{border:1px solid var(--line);padding:10px;text-align:left}.worksheet-table td{height:45px}@media(max-width:900px){.wrap{padding:0 22px}.hero{gap:20px;grid-template-columns:1.5fr .6fr;padding-top:42px}.tool{grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);gap:18px}.form-body,.form-head,.result{padding:22px}.guide-grid{grid-template-columns:repeat(2,1fr)}.result-value{font-size:3.1rem}}@media(max-width:700px){.nav{min-height:75px;gap:10px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.brand{font-size:1.1rem}.navlinks{gap:17px;font-size:.76rem}.hero{grid-template-columns:1fr;padding:38px 0 28px}.heroart{display:none}.tool{grid-template-columns:1fr}.result{position:static}.toolbar{font-size:.7rem}.toolbar span:last-child{max-width:150px;text-align:right}.steps{grid-template-columns:1fr;gap:15px}.step-num{float:left;margin:0 20px 25px 0}.guide-grid{grid-template-columns:1fr}.faq{grid-template-columns:1fr;gap:5px}.footer-top{flex-direction:column}.section-heading{align-items:start;flex-direction:column;gap:12px}.explain{padding:33px 0}.article{padding-top:35px}.form-body,.form-head,.result{padding:21px}.result-value{font-size:3.4rem}.fields{gap:15px 12px}}@media(max-width:380px){.wrap{padding:0 15px}.fields{grid-template-columns:1fr}.full{grid-column:auto}.navlinks{gap:12px}.form-body,.form-head,.result{padding:17px}}@media print{.topbar,.heroart,.navlinks,.footer,.result-actions,.smallbutton,.calculate,.explain,.remove-row,.add-row{display:none!important}.wrap{padding:0;max-width:none}.hero{padding:0}.hero h1{font-size:28px}.tool{display:block}.inputs{border:0}.result{position:static;break-inside:avoid}.fields{grid-template-columns:1fr 1fr}.article{max-width:none;padding:0}.article a{color:inherit}.article a[href^='http']:after{content:' (' attr(href) ')';font-size:.7em}.result{margin-top:20px}.form-body{padding:0}.ad-gap{display:none}}
