:root{--paper:#f3f6f2;--white:#fffefa;--ink:#243e3b;--muted:#64756d;--teal:#32675f;--mint:#d8e7dc;--line:#ccdad0;--coral:#c9876c}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}[hidden]{display:none!important}.wrap{width:min(1130px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:12px;top:-90px;background:white;padding:10px;z-index:10}.skip:focus{top:12px}.header{padding:25px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font:bold 29px Georgia,serif;text-decoration:none;letter-spacing:-1.3px}.brand span{color:#79a08c}nav{display:flex;gap:25px;font-size:13px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center;padding:64px 0 52px}.eyebrow{color:#567f70;font-size:10px;letter-spacing:2px;text-transform:uppercase;font-weight:bold;margin:0 0 15px}h1{font:normal 60px/1.05 Georgia,serif;letter-spacing:-1.6px;margin:0 0 23px}h1 em{color:#568075;font-weight:normal}.intro{max-width:465px;font-size:17px;color:var(--muted)}.button{display:inline-block;border:0;border-radius:5px;background:var(--teal);color:white;padding:14px 20px;font-size:13px;font-weight:bold;text-decoration:none}.button:hover{background:#28564f}.small{font-size:12px;color:var(--muted)}.hero-art{padding:20px;background:var(--mint);border-radius:90px 90px 6px 6px}.hero-art svg{display:block;width:100%;height:auto}.art-note{text-align:center;font-size:10px;letter-spacing:1.5px;color:#5e8270;margin:13px 0 4px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}h2{font:normal 33px/1.25 Georgia,serif;letter-spacing:-.5px;margin:0 0 14px}.section-heading h2{margin:0}.quiet{border:0;background:none;color:var(--teal);font-size:11px;padding:6px 0;text-decoration:underline;text-underline-offset:4px}.planner{padding-bottom:45px;scroll-margin-top:24px}.planner-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:start}.panel{padding:28px;background:var(--white);border:1px solid var(--line);border-radius:7px}.panel h3{font-size:14px;margin:0 0 10px}.help{font-size:12px;line-height:1.7;color:var(--muted);margin:7px 0 17px}label{display:block;font-size:11px;font-weight:bold}input,select{width:100%;min-width:0;border:1px solid #bfd0c4;padding:11px 10px;border-radius:4px;background:white;color:var(--ink);margin-top:6px;font-size:14px}input:focus,select:focus,a:focus-visible,button:focus-visible{outline:2px solid #6c9989;outline-offset:3px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fields small{display:block;font-size:10px;font-weight:normal;color:var(--muted);line-height:1.6;margin-top:6px}.group{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.check{display:flex;gap:10px;align-items:center;font-size:12px}.check input{width:17px;height:17px;margin:0;accent-color:var(--teal)}.piece-fields{margin-top:15px}.piece-fields>.check{margin-top:17px}.result-panel{position:sticky;top:20px;padding:31px;background:#2c524b;color:#f8fbf4;border-radius:7px}.result-panel .eyebrow{color:#bdd5c6}.big{font:normal 47px/1.2 Georgia,serif;letter-spacing:-1.5px;overflow-wrap:anywhere}.result-unit{color:#c6dacf;font-size:13px;margin:9px 0 15px}.imperial{font-size:19px;margin:0 0 22px;color:#e4eddf}.breakdown{border-top:1px solid #55786b;padding-top:18px;font-size:12px}.breakdown div{margin:13px 0}.breakdown span{display:block;color:#bbd0c2;font-size:11px}.breakdown strong{display:block;font-weight:normal;margin-top:4px}.result-panel .help{color:#c7dbce}.fit{background:#3a665b;padding:13px;border-left:2px solid var(--coral);font-size:12px}.result-actions{display:flex;gap:10px;margin:23px 0}.result-actions .button{flex:1;text-align:center;padding:12px 8px;background:#deebdc;color:#294c43}.result-actions .outline{background:none;color:#f8fbf4;border:1px solid #92b19e}.model-note{border-left:2px solid var(--coral);padding-left:12px;font-size:11px;color:#d5e3d5;line-height:1.7}.error{background:#f4decc;color:#704331;padding:16px;border-radius:5px;font-size:13px}.status{font-size:12px;color:var(--muted);min-height:20px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;border-top:1px solid var(--line);padding:35px 0 50px}.principles h3{font:normal 23px Georgia,serif;margin:0 0 10px}.principles p{font-size:13px;color:var(--muted);margin:0}.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;color:var(--muted);font-size:11px}.footer-links{display:flex;gap:20px}.article{max-width:770px;padding:55px 0 65px}.article h1{font-size:48px}.article .lead{font-size:18px}.article p,.article li{font-size:15px;color:var(--muted)}.article h2{font-size:28px;margin-top:32px}.callout{padding:21px 24px;background:#e2ece1;border-left:3px solid #81a893}.formula{padding:18px;background:#e2ece1;border-radius:5px;font:22px/1.5 Georgia,serif;color:var(--ink)}.print-only{display:none}.noscript{padding:15px;background:#f4decc}
@media(max-width:800px){.hero{gap:30px;padding:44px 0}.hero h1{font-size:47px}.planner-grid{grid-template-columns:1fr}.result-panel{position:static}nav{gap:17px}.hero-art{padding:17px}}
@media(max-width:550px){.wrap{width:calc(100% - 32px)}.header{flex-wrap:wrap;padding:20px 0;gap:15px}.brand{font-size:26px}nav{font-size:12px;gap:20px}.hero{grid-template-columns:1fr;gap:27px;padding-top:34px}.hero h1{font-size:44px}.hero-art{max-width:310px;justify-self:center;padding:23px}.intro{font-size:16px}.section-heading{display:block}.section-heading .quiet{margin-top:15px}.panel{padding:19px}.fields{gap:14px}.result-panel{padding:25px}.big{font-size:44px}.principles{grid-template-columns:1fr;gap:25px;padding:30px 0}.footer{flex-direction:column;align-items:flex-start;gap:12px}.footer-links{gap:18px;flex-wrap:wrap}.article{padding:36px 0 45px}.article h1{font-size:40px}.article p,.article li{font-size:14px}.formula{font-size:19px}}
@media print{body{background:white;color:#111}.header,.hero,.section-heading,.panel,.result-panel,.principles,.footer,.status,.noscript{display:none!important}.print-only{display:block;font:12px/1.7 Arial,sans-serif;white-space:pre-wrap;max-width:700px;padding:25px}.wrap{width:100%}.planner-grid{display:none}.planner{padding:0}}
