:root{--paper:#faf8f3;--ink:#263c35;--muted:#66716b;--green:#275a4e;--line:#e4e5dd;--accent:#bd653e;--light:#edf1e8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{transition:background .15s,transform .15s}button:active{transform:translateY(1px)}:focus-visible{outline:3px solid #b36d36;outline-offset:4px}button:disabled{cursor:default;opacity:.5}input:disabled{background:#f1f1ed;color:#7b817b}.site-header{max-width:1160px;margin:auto;padding:26px 32px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{font-size:23px;font-weight:700;letter-spacing:-1px;text-decoration:none;display:inline-flex;align-items:center;gap:2px}.brand>span:not(.brand-icon){font-weight:400}.brand-icon{display:inline-grid;place-items:center;background:var(--green);color:#fff;width:32px;height:32px;border-radius:8px;margin-right:8px;font-size:25px}nav{display:flex;gap:28px;font-size:14px}nav a{text-decoration:none}nav a:hover{text-decoration:underline}main{max-width:1096px;padding:0 24px;margin:auto}.intro{text-align:center;padding:52px 0 36px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--green);margin:0 0 12px}.intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(34px,4.4vw,53px);letter-spacing:-1.5px;line-height:1.15;margin:0 0 18px}.intro>p:not(.eyebrow){font-size:17px;color:var(--muted);line-height:1.65;margin:0}.trust{display:flex;justify-content:center;gap:23px;margin:24px 0 0;font-size:12px;color:var(--green)}.calculator-layout{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,1fr);gap:24px;align-items:start}.card,.result-card{border:1px solid var(--line);border-radius:16px}.form-card{background:#fff;padding:30px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.25;letter-spacing:-.5px}.section-head h2{font:600 18px Arial,Helvetica,sans-serif;display:flex;align-items:center;gap:10px;margin:0;letter-spacing:-.3px}.step{background:var(--light);color:var(--green);width:26px;height:26px;border-radius:50%;font-size:12px;display:grid;place-items:center}.unit-toggle{border:0;padding:3px;margin:0;background:#f3f3ee;border-radius:7px;display:flex;gap:2px}.unit-toggle label{cursor:pointer}.unit-toggle input{position:absolute;opacity:0;pointer-events:none}.unit-toggle span{display:block;padding:3px 10px;font-size:12px;border-radius:5px}.unit-toggle input:checked+span{background:white;box-shadow:0 1px 3px #0002;color:var(--green);font-weight:700}.unit-toggle input:focus-visible+span{outline:2px solid var(--accent)}.field{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.full{margin-bottom:16px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 16px}input:not([type=checkbox],[type=radio]),select{width:100%;min-width:0;height:46px;background:#fff;border:1px solid #d7ddd5;border-radius:7px;padding:10px 12px;color:var(--ink);font-weight:400;font-size:15px}select{padding-right:24px}input::placeholder{color:#8b928d}.input-wrap{position:relative;display:block}.input-wrap input{padding-right:40px}.input-wrap>span{position:absolute;right:13px;top:11px;font-size:13px;font-weight:400;color:#778078;pointer-events:none}.hint{font-size:12px;line-height:1.6;color:var(--muted);font-weight:400;margin:10px 0 0}.divider{height:1px;background:var(--line);margin:26px 0}.small-link{font-size:12px;color:var(--green)}.section-copy{font-size:13px;color:var(--muted);margin:-7px 0 18px}.options{border-top:1px solid var(--line);margin-top:22px;font-size:13px}.options+.options{margin-top:0}.options summary{padding:15px 0;font-weight:600}.options summary span{font-size:11px;color:var(--muted);font-weight:400;float:right;margin-top:3px}.options-body{padding:0 0 20px}.options-body>.hint:first-child{margin-top:0;margin-bottom:15px}.options-body>.field{margin-top:15px}.check-label{display:flex;align-items:center;gap:8px;margin-bottom:10px}.check-label input{accent-color:var(--green);width:17px;height:17px}.check-label+.hint{margin-bottom:16px}.primary{width:100%;display:flex;justify-content:space-between;align-items:center;border:0;color:white;background:var(--green);border-radius:8px;padding:14px 18px;font-size:15px;font-weight:600;margin-top:16px}.primary:hover{background:#1b463c}.primary span{font-size:22px;line-height:1}.form-actions{display:flex;justify-content:space-between;margin-top:13px}.form-actions button{background:none;border:0;color:var(--muted);font-size:12px;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.result-card{padding:30px;background:#edf1e8;position:sticky;top:24px}.result-top{display:flex;justify-content:space-between;align-items:center}.result-top .eyebrow{font-size:10px;margin:0}.dot{width:7px;height:7px;background:#7d9581;border-radius:50%}.result-card h2{font-size:32px;margin:22px 0 14px}.blanket-preview{position:relative;display:flex;align-items:center;flex-direction:column;padding:0 20px;margin:20px 0 25px;gap:9px}.woven{width:188px;height:204px;border:7px solid #d7b597;border-radius:3px;display:grid;place-items:center;box-shadow:9px 10px 0 #223c3509;background:repeating-linear-gradient(0deg,transparent 0 3px,#ffffff38 3px 4px),repeating-linear-gradient(90deg,transparent 0 3px,#f8f3e72b 3px 4px),repeating-linear-gradient(0deg,#c79d7b 0 35px,#e7d4b9 35px 68px,#a6b6a3 68px 102px,#e7d4b9 102px 136px);transform:rotate(-3deg)}.woven-stitch{background:#fcfaf0e6;transform:rotate(3deg);border:1px solid #e0d3ba;padding:4px 11px;font-family:Georgia,serif;font-style:italic;font-size:14px;color:#716854}.dimension{font-size:11px;color:#657465}.dimension.top{margin-bottom:4px}.dimension.bottom{margin-top:7px}#empty-result{text-align:center;font-size:14px}#empty-result>p:first-child{margin-bottom:6px}#empty-result .hint{margin-top:0}.result-numbers{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #d2dacd;border-bottom:1px solid #d2dacd;margin:14px 0 16px;padding:18px 0;gap:12px}.result-numbers strong{display:block;font-family:Georgia,serif;font-size:42px;font-weight:400;line-height:1.1}.result-numbers span{font-size:12px;color:var(--muted)}.result-numbers>div+div{border-left:1px solid #d2dacd;padding-left:22px}.result-line{display:flex;gap:12px;justify-content:space-between;font-size:12px;margin:12px 0}.result-line strong{text-align:right}.result-note{font-size:11px;line-height:1.6;color:#5d6c61;margin:12px 0}.result-status{font-size:12px;font-weight:600;margin:0}.result-status.stale{color:#8c491f}.secondary{width:100%;padding:10px;background:transparent;border:1px solid #a7b7a5;border-radius:7px;color:var(--green);font-weight:600;font-size:13px}.secondary:hover{background:#e1e8da}.error{color:#9b3529;font-size:13px;background:#fff1ec;padding:12px;border-radius:6px}.how-section{padding:66px 0 46px;border-bottom:1px solid var(--line)}.how-section>h2,.information-grid h2{font-size:29px;margin:0 0 28px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.guide-number{font-family:Georgia,serif;font-size:24px;color:#a57454}.how-grid h3{font-size:15px;margin:10px 0 7px}.how-grid p,.information-grid p{font-size:14px;color:var(--muted);line-height:1.8;margin:0 0 15px}.information-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:50px 0 65px}.information-grid .eyebrow{font-size:10px;color:var(--green);margin-bottom:12px}.formula{background:#eeeee5;border-left:3px solid #9cae91;border-radius:0 7px 7px 0;padding:18px 20px;margin:20px 0;font-size:15px}.formula span{color:var(--green);font-weight:600}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-size:14px;font-weight:600;padding:15px 0;line-height:1.5}.faq details p{font-size:13px;margin-bottom:16px}footer{max-width:1096px;padding:26px 24px 35px;margin:auto;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}footer .brand{font-size:19px}footer p{font-size:12px;color:var(--muted);margin:0}footer nav{font-size:12px;gap:20px}.skip{position:absolute;top:-100px;left:15px;z-index:10;background:#fff;padding:10px}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}.prose{max-width:720px;margin:50px auto 80px}.prose h1{font:400 40px Georgia,serif}.prose h2{margin-top:35px;font-size:26px}.prose p,.prose li{color:var(--muted);font-size:15px}.prose a{color:var(--green)}@media(max-width:760px){.site-header{padding:18px 20px}.brand{font-size:20px}.brand-icon{width:28px;height:28px}.site-header nav{gap:16px;font-size:12px}main{padding:0 16px}.intro{padding:35px 0 28px}.intro h1{font-size:37px;letter-spacing:-1px}.intro>p:not(.eyebrow){font-size:15px}.desktop{display:none}.trust{gap:17px;font-size:11px;margin-top:18px}.calculator-layout{grid-template-columns:1fr;gap:18px}.form-card,.result-card{padding:23px}.result-card{position:static}.result-card h2{font-size:28px}.blanket-preview{margin:18px 0}.woven{width:150px;height:155px}.how-section{padding:42px 5px 28px}.how-grid{grid-template-columns:1fr;gap:16px}.how-grid article{display:grid;grid-template-columns:35px 1fr;gap:0 12px}.guide-number{grid-row:1/3}.how-grid h3{margin:3px 0 6px}.how-grid p{grid-column:2}.how-section>h2,.information-grid h2{font-size:27px}.information-grid{grid-template-columns:1fr;gap:30px;padding:35px 5px 40px}footer{padding:24px 20px;flex-wrap:wrap;gap:15px}footer p{display:none}footer nav{gap:15px}.prose{margin:30px auto}.prose h1{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}button{transition:none}}@media print{body{background:#fff}.site-header,.intro,.form-card,.how-section,.information-grid,footer,.secondary,.skip{display:none}.calculator-layout{display:block}.result-card{position:static;max-width:600px;margin:20px auto;break-inside:avoid;background:#fff}.result-card:before{content:'Blanket Math · Crochet blanket plan';font-weight:bold}.blanket-preview{display:none}main{max-width:none}}
