:root{--bg:#faf9f7;--surface:#f4f1ee;--surface-2:#efebe7;--band:#f8e9e9;--ink:#1b1a19;--ink-2:#4a4643;--muted:#7d7671;--line:#e4ded8;--accent:#a94550;--accent-ink:#fff;--accent-soft:#c9868c;--font-display:"Didot", "Bodoni MT", "Playfair Display", "Iowan Old Style", "Apple Garamond", Georgia, "Times New Roman", serif;--font-ui:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--w:1180px;--gap:14px;--radius:3px;--card-ratio:3 / 4}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-weight:400}h1{font-size:clamp(30px,7vw,46px);line-height:1.1}h2{font-size:clamp(21px,4.4vw,27px);line-height:1.2}h3{font-size:17px;line-height:1.25}p{margin:0 0 .85em}.wrap{width:100%;max-width:var(--w);margin:0 auto;padding:0 16px}.section{margin:34px 0}.section>h2{margin-bottom:14px}.lede{color:var(--ink-2);max-width:62ch}.muted{color:var(--muted)}.muted a,.small.muted a{color:var(--accent);border-bottom:1px solid var(--accent-soft)}.small{font-size:13px}.site-header{border-bottom:1px solid var(--line);background:var(--bg);z-index:40;position:sticky;top:0}.site-header .wrap{align-items:center;gap:12px;min-height:56px;display:flex}.brand{font-family:var(--font-display);white-space:nowrap;align-items:center;gap:8px;font-size:21px;line-height:1;display:inline-flex}.brand__mark{flex:none}.nav{gap:20px;margin-left:auto;display:none}.nav a{color:var(--ink-2);font-size:14px}.nav a:hover,.nav a[aria-current=page]{color:var(--accent)}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.nav+.header-actions{margin-left:20px}.btn{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:7px;padding:8px 15px;font-size:13px;display:inline-flex}.btn--solid{background:var(--accent);color:var(--accent-ink)}.btn--plain{border-color:var(--line);color:var(--ink-2)}.btn:hover{opacity:.88}.nav-toggle{margin-left:auto}.nav-toggle>summary{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius);padding:8px 10px;font-size:13px;list-style:none}.nav-toggle>summary::-webkit-details-marker{display:none}.nav-drawer{background:var(--bg);border-bottom:1px solid var(--line);gap:2px;padding:10px 16px 16px;display:grid;position:absolute;left:0;right:0}.nav-drawer a{border-bottom:1px solid var(--line);padding:9px 2px;font-size:15px}@media (width>=900px){.nav{display:flex}.nav-toggle{display:none}}.grid{gap:var(--gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width>=640px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.grid--axes{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=640px){.grid--axes{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.grid--axes{grid-template-columns:repeat(6,minmax(0,1fr))}}.grid--thumbs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media (width>=640px){.grid--thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=900px){.grid--thumbs{grid-template-columns:repeat(8,minmax(0,1fr))}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:hidden}.card__media{width:100%;aspect-ratio:var(--card-ratio);background:var(--surface-2);display:block;position:relative;overflow:hidden}button.card__media{font:inherit;color:inherit;cursor:zoom-in;text-align:left;appearance:none;border:0;margin:0;padding:0}.card__media img{object-fit:cover;width:100%;height:100%}.card__body{justify-content:space-between;align-items:flex-start;gap:8px;padding:9px 10px 10px;display:flex}.card__title{font-family:var(--font-display);font-size:14.5px;line-height:1.25}.card__sub{color:var(--muted);margin-top:3px;font-size:11.5px}.card a.card__title:hover{color:var(--accent)}.icon-btn{cursor:pointer;width:30px;height:30px;color:var(--ink-2);background:#ffffffeb;border:0;border-radius:999px;place-items:center;padding:0;display:grid}.card__save{z-index:2;position:absolute;top:8px;right:8px;box-shadow:0 1px 3px #0000001f}.icon-btn[aria-pressed=true]{color:var(--accent)}.icon-btn[aria-pressed=true] svg{fill:currentColor}.card__copy{background:0 0;flex:none;width:26px;height:26px}.card__copy[data-copied="1"]{color:var(--accent)}.ph{text-align:center;background:linear-gradient(135deg, #00000005 25%, transparent 25%) 0 0/16px 16px, var(--surface-2);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;place-content:center;gap:4px;font-size:10.5px;display:grid;position:absolute;inset:0}.ph b{color:var(--ink-2);font-size:11px;font-weight:600}.chips{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{border:1px solid var(--line);color:var(--ink-2);background:var(--bg);border-radius:999px;flex:none;padding:6px 13px;font-size:13px}.chip:hover{border-color:var(--accent-soft);color:var(--accent)}.chip[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.linkrow{flex-wrap:wrap;gap:8px 20px;display:flex}.linkrow a{color:var(--ink-2);border-bottom:1px solid var(--line);padding-bottom:2px;font-size:13.5px}.linkrow a:hover{color:var(--accent);border-color:var(--accent-soft)}.linkrow a:after{content:" →";color:var(--muted)}.crumbs{color:var(--muted);flex-wrap:wrap;gap:6px;margin:14px 0 10px;font-size:12.5px;display:flex}.crumbs a:hover{color:var(--accent)}.crumbs span[aria-hidden]{color:var(--line)}.filters{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:14px;display:flex}.filter{position:relative}.filter>summary{cursor:pointer;color:var(--ink-2);border-bottom:1px solid var(--line);padding:3px 0;font-size:13px;list-style:none}.filter>summary::-webkit-details-marker{display:none}.filter>summary:after{content:" ⌄";color:var(--muted)}.filter__menu{z-index:20;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);min-width:170px;padding:6px;display:grid;position:absolute;top:100%;left:0;box-shadow:0 6px 20px #00000012}.filter__menu a{border-radius:var(--radius);padding:6px 9px;font-size:13.5px}.filter__menu a:hover{background:var(--surface);color:var(--accent)}.filter__menu a[aria-current=page]{color:var(--accent)}.band{background:var(--band);border-radius:var(--radius);padding:22px 18px}.band--cta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.ad{border:1px dashed var(--line);background:var(--band);border-radius:var(--radius);min-height:96px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;place-items:center;margin:26px 0;font-size:12px;display:grid}.table-wrap{overflow-x:auto}table.glance{border-collapse:collapse;width:100%;min-width:520px;font-size:14px}table.glance th,table.glance td{border:1px solid var(--line);text-align:left;padding:10px 12px}table.glance th{background:var(--surface);color:var(--ink-2);font-weight:500}.steps{counter-reset:s;grid-template-columns:1fr;gap:16px;margin:0;padding:0;list-style:none;display:grid}@media (width>=640px){.steps{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.steps{grid-template-columns:repeat(5,1fr)}}.steps li{gap:10px;display:flex}.steps .n{background:var(--band);width:24px;height:24px;color:var(--accent);border-radius:999px;flex:none;place-items:center;font-size:12px;display:grid}.steps h3{font-family:var(--font-ui);margin-bottom:2px;font-size:14px;font-weight:600}.steps p{color:var(--ink-2);margin:0;font-size:13px}.supplies{gap:var(--gap);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=900px){.supplies{grid-template-columns:repeat(4,1fr)}}.supply{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-align:center;padding:14px}.supply__ph{aspect-ratio:5/4;max-width:150px;color:var(--muted);place-items:center;margin:0 auto 8px;font-size:11px;display:grid}.supply-shape{border:1px solid var(--line);background:linear-gradient(#f4dfd8,#eac8bf);border-radius:7px 7px 10px 10px;width:42px;height:66px;display:block;position:relative;box-shadow:inset 0 0 0 6px #ffffff59}.supply-shape:before{content:"";border:1px solid var(--line);background:var(--ink-2);border-bottom:0;border-radius:4px 4px 0 0;height:22px;position:absolute;top:-22px;left:12px;right:12px}.supply-shape--tool{width:64px;height:8px;box-shadow:none;background:#f5f3ef;border-radius:999px;transform:rotate(-30deg)}.supply-shape--tool:before{background:var(--accent-soft);border:0;border-radius:0 999px 999px 0;width:30px;height:4px;top:1px;left:auto;right:-28px}.supply-shape--guide{background:repeating-linear-gradient(180deg, #fff 0 5px, var(--line) 5px 7px);width:58px;height:46px;box-shadow:none;border-radius:2px}.supply-shape--guide:before,.supply-shape--care:before{display:none}.supply-shape--care{background:#e9cba9;border-radius:50% 50% 8px 8px}.supply__name{font-family:var(--font-display);font-size:15px}.faq{border:1px solid var(--line);border-radius:var(--radius);gap:0;display:grid;overflow:hidden}.faq details{border-bottom:1px solid var(--line);background:var(--bg)}.faq details:last-child{border-bottom:0}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;padding:12px 14px;font-size:14px;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--muted)}.faq details[open] summary:after{content:"–"}.faq p{color:var(--ink-2);margin:0;padding:0 14px 13px;font-size:13.5px}.two-col{gap:26px;display:grid}@media (width>=900px){.two-col{grid-template-columns:1fr 1.15fr;gap:40px}}.site-footer{border-top:1px solid var(--line);margin-top:44px;padding:30px 0 22px}.footer-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}@media (width>=900px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr 1.4fr}}.footer-grid h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 9px;font-size:11px;font-weight:600}.footer-grid ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.footer-grid a{color:var(--ink-2);font-size:13px}.footer-grid a:hover{color:var(--accent)}.copyright{text-align:center;color:var(--muted);margin-top:26px;font-size:12px}form.subscribe{gap:6px;display:flex}form.subscribe input{min-width:0;font:inherit;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex:1;padding:8px 10px;font-size:13px}dialog.lightbox{background:0 0;border:0;max-width:min(560px,92vw);padding:0}dialog.lightbox::backdrop{background:#141211b8}.lightbox__inner{background:var(--bg);border-radius:var(--radius);overflow:hidden}.lightbox__media{aspect-ratio:var(--card-ratio);background:var(--surface-2);position:relative}.lightbox__media img{object-fit:cover;width:100%;height:100%}.lightbox__body{gap:10px;padding:14px;display:grid}.lightbox__actions{flex-wrap:wrap;gap:8px;display:flex}.search-box{gap:8px;max-width:520px;display:flex}.search-box input{font:inherit;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex:1;padding:11px 13px}.results{gap:2px;margin:18px 0 0;padding:0;list-style:none;display:grid}.results li a{border-bottom:1px solid var(--line);padding:11px 2px;display:block}.results li a:hover{color:var(--accent)}.results .k{color:var(--muted);font-size:12px}.quiz{gap:18px;max-width:620px;display:grid}.quiz fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:16px}.quiz legend{font-family:var(--font-display);padding:0 6px;font-size:18px}.quiz label{cursor:pointer;align-items:flex-start;gap:9px;padding:7px 0;font-size:14px;display:flex}.shape-svgs{flex-wrap:wrap;gap:16px;display:flex}.shape-svgs figure{text-align:center;color:var(--ink-2);margin:0;font-size:12px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}@media (width<=599px){.header-actions .btn--plain{display:none}}.quiz>button{justify-self:start}
