:root{color-scheme:light;--canvas:#f7f1e8;--paper:#fffaf2;--charcoal:#24211f;--thread-red:#9d3f35;--muted-teal:#3f7772;--tape-yellow:#e0b44c;--line:#cfc3b4;--font-display:"Fraunces", Georgia, serif;--font-ui:Inter, ui-sans-serif, system-ui, sans-serif;--space-1:.375rem;--space-2:.75rem;--space-3:1.125rem;--space-4:1.75rem;--space-5:2.75rem;--space-6:4.5rem;--radius:.35rem;--content:72rem}*{box-sizing:border-box}html{background:var(--canvas);color:var(--charcoal);scroll-behavior:smooth}body{min-width:320px;min-height:100vh;font-family:var(--font-ui);margin:0;font-size:16px;line-height:1.65}a{color:var(--muted-teal);text-underline-offset:.18em}a:hover{color:var(--thread-red)}img,svg{max-width:100%}button,input,select,textarea{min-height:44px;font:inherit}button,.button,.primary-action{border:2px solid var(--charcoal);border-radius:var(--radius);background:var(--charcoal);min-height:44px;color:var(--paper);cursor:pointer;justify-content:center;align-items:center;padding:.7rem 1rem;font-weight:750;text-decoration:none;display:inline-flex}button:hover,.button:hover,.primary-action:hover{background:var(--thread-red);color:var(--paper)}:focus-visible{outline:3px solid var(--tape-yellow);outline-offset:3px}.skip-link{z-index:100;background:var(--charcoal);color:var(--paper);padding:.75rem 1rem;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.site-header,.site-footer,main{width:min(var(--content), calc(100% - 2rem));margin-inline:auto}.site-header{border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:78px;display:flex}.brand{color:var(--charcoal);font-family:var(--font-display);align-items:center;gap:.6rem;font-size:1.35rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{border:2px solid var(--thread-red);width:42px;height:42px;color:var(--thread-red);font-family:var(--font-ui);letter-spacing:.08em;border-radius:50% 50% 45% 55%;place-items:center;font-size:.72rem;display:grid}.nav-list,.footer-links{gap:.25rem var(--space-3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nav-list a{min-height:44px;color:var(--charcoal);align-items:center;font-weight:700;text-decoration:none;display:inline-flex}.hero{align-items:center;gap:var(--space-6);min-height:68vh;padding:var(--space-6) 0;grid-template-columns:minmax(0,1.15fr) minmax(16rem,.85fr);display:grid}.eyebrow{margin:0 0 var(--space-2);color:var(--thread-red);letter-spacing:.13em;text-transform:uppercase;font-size:.78rem;font-weight:800}h1,h2,h3{color:var(--charcoal);font-family:var(--font-display);margin-top:0;line-height:1.05}h1{max-width:13ch;margin-bottom:var(--space-3);letter-spacing:-.045em;font-size:clamp(3.1rem,8vw,6.8rem)}h2{letter-spacing:-.025em;font-size:clamp(2rem,4vw,3.4rem)}h3{font-size:1.45rem}p{max-width:66ch}.hero-copy{color:#554f4b;font-size:clamp(1.1rem,2vw,1.35rem)}.hero-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.secondary-action{align-items:center;min-height:44px;padding:.65rem .25rem;font-weight:750;display:inline-flex}.cutting-mat{aspect-ratio:4/3;border:1px solid var(--line);border-radius:var(--radius);background-color:var(--paper);background-image:linear-gradient(#3f77721f 1px,#0000 1px),linear-gradient(90deg,#3f77721f 1px,#0000 1px);background-size:22px 22px;position:relative;overflow:hidden;box-shadow:12px 12px #9d3f3517}.pattern-piece{border:2px solid var(--thread-red);font-family:var(--font-display);background:#e0b44c38;place-items:center;font-weight:750;display:grid;position:absolute}.pattern-piece.one{inset:12% 47% 48% 10%}.pattern-piece.two{inset:55% 10% 10% 37%}.tape{background:repeating-linear-gradient(90deg, var(--tape-yellow) 0 9px, #9a7727 9px 10px);border:1px solid #967422;width:70%;height:2.4rem;position:absolute;top:45%;right:-8%;transform:rotate(-12deg)}.content-band{padding:var(--space-6) 0;border-top:1px solid var(--line)}.feature-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.feature-card{padding:var(--space-4);border:1px solid var(--line);border-top:5px solid var(--muted-teal);border-radius:var(--radius);background:var(--paper)}.feature-card p{color:#625b56}.measurement-rule{height:36px;margin:var(--space-4) 0;border-top:2px solid var(--thread-red);background:repeating-linear-gradient(90deg, transparent 0 19px, var(--thread-red) 19px 20px) top / 100% 9px no-repeat;position:relative}.measurement-rule span{color:var(--thread-red);text-transform:uppercase;font-size:.75rem;font-weight:800;position:absolute;top:10px;right:0}.breadcrumbs{margin-top:var(--space-3);font-size:.9rem}.breadcrumbs ol{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";color:#776e68;margin-right:.4rem}.site-footer{margin-top:var(--space-6);padding:var(--space-5) 0;border-top:2px solid var(--charcoal)}.footer-grid{gap:var(--space-5);grid-template-columns:1fr 1.4fr;display:grid}.footer-brand{font-size:1.6rem}.footer-links{justify-content:flex-end}.footer-links a{align-items:center;min-height:44px;display:inline-flex}.footer-note{padding-top:var(--space-3);border-top:1px dashed var(--line);color:#625b56;font-size:.88rem}.ad-slot{border:1px dashed var(--line)}.page-heading,.tool-heading{padding:var(--space-5) 0 var(--space-4)}.page-heading h1,.tool-heading h1{max-width:18ch;font-size:clamp(2.6rem,6vw,5rem)}.tool-group{padding:var(--space-4) 0}.tool-page{padding-bottom:var(--space-4)}.calculator-grid{gap:var(--space-4);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;display:grid}.calculator-panel,.result-panel,.method-copy,.worked-example,.source-list{padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.field-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-field{min-width:0}.form-field label{margin-bottom:.3rem;font-weight:750;display:block}.form-field input:not([type=checkbox]),.form-field select{border-radius:var(--radius);width:100%;color:var(--charcoal);background:#fff;border:1px solid #776e68;padding:.55rem .65rem}.checkbox-field{grid-column:span 2}.checkbox-field label{align-items:center;gap:.7rem;min-height:44px;display:flex}.checkbox-field input{width:22px;height:22px;min-height:22px}.field-help{color:#655d58;margin:.3rem 0 0;font-size:.82rem;line-height:1.45}.field-error{color:var(--thread-red);margin:.35rem 0 0;font-size:.86rem;font-weight:750}[aria-invalid=true]{box-shadow:0 0 0 2px #9d3f352e;border-color:var(--thread-red)!important}.form-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.print-button{color:var(--charcoal);background:0 0}.result-rows{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.result-rows div{padding:var(--space-2);border-left:4px solid var(--muted-teal);background:var(--canvas)}.result-rows dt{color:#655d58;text-transform:uppercase;font-size:.8rem;font-weight:750}.result-rows dd{margin:.2rem 0 0;font-size:1.1rem;font-weight:800}.technical-diagram{margin:var(--space-4) 0 0}.technical-diagram svg{border:1px solid var(--line);background:var(--canvas);width:100%;min-height:250px}.technical-diagram rect,.technical-diagram line,.technical-diagram path{fill:#e0b44c38;stroke:var(--thread-red);stroke-width:1.4px}.technical-diagram text{fill:var(--charcoal);font-family:var(--font-ui);text-anchor:middle;dominant-baseline:middle;font-size:4px}.technical-diagram figcaption{color:#655d58;font-size:.82rem}.cut-list,.result-warnings{margin-top:var(--space-3);padding:var(--space-3);border:1px dashed var(--line)}.result-warnings{border-color:var(--tape-yellow);background:#e0b44c1f}.method-copy{margin-top:var(--space-4)}.precedence-note{padding-left:var(--space-3);border-left:4px solid var(--thread-red);font-weight:650}.support-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.source-list a{text-transform:capitalize}.guide-heading{padding:var(--space-5) 0 var(--space-4)}.guide-heading h1{max-width:19ch;font-size:clamp(2.7rem,6vw,5.3rem)}.review-line{color:#655d58;font-size:.9rem}.guide-grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 18rem;align-items:start;display:grid}.guide-prose{max-width:48rem;font-family:Georgia,serif;font-size:1.08rem}.guide-prose h2,.guide-prose h3{margin-top:var(--space-5);font-family:var(--font-display)}.guide-prose li{margin-bottom:.45rem}.guide-aside{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--line);background:var(--paper);display:grid;position:sticky;top:1rem}.guide-aside h2{margin-bottom:0;font-size:1.25rem}.guide-diagram{margin:var(--space-4) 0;padding:var(--space-2);border:1px solid var(--line);background:var(--paper)}.guide-diagram svg{width:100%}.guide-diagram .diagram-paper{fill:var(--canvas);stroke:var(--line)}.guide-diagram .diagram-shape{fill:#e0b44c33;stroke:var(--thread-red);stroke-width:4px}.guide-diagram .diagram-shape.alt{fill:#3f777229;stroke:var(--muted-teal)}.guide-diagram line,.guide-diagram .measure-line{fill:none;stroke:var(--charcoal);stroke-width:3px;stroke-dasharray:8 6}.guide-diagram text{fill:var(--charcoal);font-family:var(--font-ui);text-anchor:middle;font-size:18px}.guide-diagram figcaption{color:#655d58;font-size:.85rem}.related-guides,.guide-group{padding:var(--space-5) 0}.reference-page{max-width:58rem;margin-inline:auto}.reference-page section{margin-top:var(--space-5)}.table-wrap{border:1px solid var(--line);background:var(--paper);overflow-x:auto}table{border-collapse:collapse;width:100%}caption{padding:var(--space-3);font-family:var(--font-display);text-align:left;font-size:1.35rem;font-weight:750}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;min-width:10rem;padding:.8rem}thead th{background:#3f77721f}.trust-page{max-width:48rem;margin-inline:auto}.trust-page>h2{margin-top:var(--space-5)}.source-records{gap:var(--space-3);display:grid}.source-record{padding:var(--space-3);border:1px solid var(--line);background:var(--paper);scroll-margin-top:1rem}.source-record dl div{gap:var(--space-2);border-bottom:1px solid var(--line);grid-template-columns:7rem 1fr;padding:.35rem 0;display:grid}.source-record dt{font-weight:750}.source-record dd{margin:0}.project-actions,.privacy-controls,.consent-actions{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.project-actions button,.privacy-controls button,.consent-actions button{color:var(--charcoal);background:0 0}.privacy-control-wrap{width:min(var(--content), calc(100% - 2rem));margin:var(--space-4) auto 0;padding-top:var(--space-3);border-top:1px dashed var(--line)}.consent-banner{z-index:50;justify-content:space-between;align-items:center;gap:var(--space-3);width:min(56rem,100% - 2rem);padding:var(--space-3);border:2px solid var(--charcoal);background:var(--paper);margin-inline:auto;display:flex;position:fixed;bottom:1rem;left:1rem;right:1rem;box-shadow:8px 8px #24211f2e}.consent-banner[hidden]{display:none}.consent-banner h2,.consent-banner p{margin:0}.home-preview,.trust-band{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--line);background:var(--paper);grid-template-columns:1fr 1fr;align-items:center;display:grid}.home-tool-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tool-tile{min-height:44px;padding:var(--space-3);border:1px solid var(--line);background:var(--paper);gap:.25rem;text-decoration:none;display:grid}.tool-tile span{color:#655d58}.workflow{gap:var(--space-3);counter-reset:workflow;grid-template-columns:repeat(3,1fr);padding:0;list-style:none;display:grid}.workflow li{padding:var(--space-3);border-top:5px solid var(--tape-yellow);background:var(--paper);gap:.5rem;display:grid}.workflow strong{font-family:var(--font-display);font-size:1.5rem}.trust-band a{min-height:44px;margin-right:var(--space-3);align-items:center;display:inline-flex}@media (width<=760px){.header-inner{flex-direction:column;align-items:flex-start;padding:.75rem 0}.nav-list{gap:0 .9rem}.hero{gap:var(--space-4);min-height:auto;padding:var(--space-5) 0;grid-template-columns:1fr}.cutting-mat{width:min(100%,34rem)}.feature-grid,.footer-grid,.calculator-grid,.support-grid,.guide-grid{grid-template-columns:1fr}.guide-aside{position:static}.home-preview,.trust-band,.home-tool-grid,.workflow,.field-grid{grid-template-columns:1fr}.checkbox-field{grid-column:auto}.footer-links{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media print{:root{--canvas:#fff;--paper:#fff;--charcoal:#000;--line:#555}.site-header,.site-footer,.breadcrumbs,.no-print,.consent-controls,button{display:none!important}main{width:100%}body{color:#000;background:#fff;font-size:11pt}.tool-results,.technical-diagram,.cut-list{break-inside:avoid}svg *{vector-effect:non-scaling-stroke;fill:none!important;stroke:#000!important}}
