@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-500-normal.BsRWmXhO.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-500-normal.zIXX3Q-H.woff)format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/cormorant-garamond-latin-500-italic.Y14P-dkT.woff2)format("woff2"),url(/_astro/cormorant-garamond-latin-500-italic.DhNIfkTX.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-latin-400-normal.PaqtzbVb.woff2)format("woff2"),url(/_astro/manrope-latin-400-normal.8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-latin-500-normal.BYYD-dBL.woff2)format("woff2"),url(/_astro/manrope-latin-500-normal.DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-latin-600-normal.4f0koTD-.woff2)format("woff2"),url(/_astro/manrope-latin-600-normal.BqgrALkZ.woff)format("woff")}:root{--paper:#f7f3ec;--paper-2:#efe7da;--ink:#2b2123;--muted:#5f5254;--accent:#5a2c38;--thread:#9b2d3b;--line:#d6c9b9;--grid:#5a2c3813;--on-accent:#fbf6ef;--band:#4a2430;--band-ink:#f6ece2;--band-muted:#e2cfcd;--band-accent:#e8c493;--band-line:#f6ece238;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Manrope", system-ui, sans-serif;--ease:cubic-bezier(.2, .7, .2, 1);--header:76px;color-scheme:light;background:var(--paper);color:var(--ink);font-family:var(--sans);font-synthesis:none}:root[data-theme=dark]{--paper:#1d1719;--paper-2:#271f22;--ink:#f2eae1;--muted:#c9b9b8;--accent:#e9bfc9;--thread:#ec8f9b;--line:#4a3b41;--grid:#e9bfc90f;--on-accent:#2a1a1f;--band:#331920;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--header) + 16px);-webkit-text-size-adjust:100%}html:has(.menu[open]){overflow:hidden}body{background:var(--paper);text-rendering:optimizelegibility;margin:0;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button,summary,select{cursor:pointer}p{margin:0 0 1em}h1,h2,h3{font-family:var(--serif);text-wrap:balance;margin:0;font-weight:500}h1{letter-spacing:-.035em;font-size:clamp(3.1rem,6.6vw,7rem);line-height:.96}h2{letter-spacing:-.025em;font-size:clamp(2.3rem,4.2vw,4.2rem);line-height:1.02}h3{letter-spacing:-.01em;font-size:1.6rem;line-height:1.15}h1 em,h2 em{color:var(--accent)}address{font-style:normal}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--thread);outline-offset:4px;border-radius:2px}a,button,summary{-webkit-tap-highlight-color:transparent}.wrap{width:min(1320px,100% - 2*clamp(20px,5vw,72px));margin-inline:auto}.section{padding-block:clamp(64px,9vw,128px)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:40;background:var(--accent);color:var(--on-accent);border-radius:999px;padding:12px 18px;position:fixed;top:-120px;left:16px}.skip-link:focus{top:12px}.soft{color:var(--muted);font-size:15px}.soft a{text-underline-offset:3px;text-decoration:underline}.kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:14px;margin:0 0 22px;font-size:13px;font-weight:500;display:flex}.kicker:before{content:"";border-top:1px dashed;flex:none;width:32px}.lead{color:var(--muted);max-width:40ch;font-size:clamp(1.06rem,1.3vw,1.2rem);line-height:1.7}.actions{flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:32px;display:flex}.pill{border:1px solid var(--ink);text-align:center;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 24px;font-size:15px;font-weight:500;line-height:1.2;transition:background-color .25s,color .25s,transform .2s;display:inline-flex}.pill:hover{background:var(--paper-2)}.pill:active{transform:translateY(1px)}.pill-solid{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.pill-solid:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.pill:disabled{opacity:.6;cursor:wait}.text-link{background:linear-gradient(90deg, var(--thread) 0 8px, transparent 8px 13px) left bottom / 13px 1px repeat-x;align-items:center;min-height:44px;padding-bottom:2px;font-size:15px;font-weight:500;display:inline-flex}.text-link:after{content:"↗";margin-left:8px;transition:transform .2s}.text-link:hover:after{transform:translate(2px,-2px)}.tape{opacity:.45;background:repeating-linear-gradient(90deg, var(--ink) 0 1px, transparent 1px 10px) left bottom / 100% 6px no-repeat, repeating-linear-gradient(90deg, var(--ink) 0 1px, transparent 1px 50px) left bottom / 100% 13px no-repeat;height:22px}.section-head{max-width:860px;margin-bottom:clamp(36px,5vw,64px)}.section-head>p:last-child:not(.kicker){color:var(--muted);max-width:52ch;margin-top:18px}.section-head.split{grid-template-columns:1.3fr 1fr;align-items:end;gap:40px 64px;max-width:none;display:grid}.section-head.split>p{color:var(--muted);margin:0}.sewn{view-timeline-name:--sewn}.sewn:after{content:"";background:linear-gradient(90deg, var(--thread) 0 10px, transparent 10px 16px) left / 16px 2px repeat-x;width:min(220px,55%);height:2px;margin-top:20px;display:block}.pattern-piece{width:100%;height:auto;overflow:visible}.pp-cut{fill:var(--paper);stroke:var(--ink);stroke-width:1.2px;vector-effect:non-scaling-stroke}.pp-marks{fill:none;stroke:var(--ink);stroke-width:.9px;opacity:.55;vector-effect:non-scaling-stroke}.pp-seam{fill:none;stroke:var(--thread);stroke-width:1.4px;stroke-dasharray:1.6 1.1;stroke-linecap:round;vector-effect:non-scaling-stroke}.header{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{height:var(--header);align-items:center;gap:32px;display:flex}.brand{flex:none;align-items:center;gap:12px;display:inline-flex}.brand-mark{width:34px;color:var(--accent);display:block}.brand-mark svg{width:100%;height:auto}.brand span{font-family:var(--serif);letter-spacing:.01em;font-size:27px;line-height:1}.nav{gap:34px;margin-left:auto;font-size:15px;display:flex}.nav a{padding-block:10px;position:relative}.nav a:after{content:"";background:linear-gradient(90deg, var(--thread) 0 8px, transparent 8px 13px) 0 0 / 13px 1px repeat-x;clip-path:inset(0 100% 0 0);height:1px;transition:clip-path .35s var(--ease);position:absolute;bottom:4px;left:0;right:0}.nav a:hover:after,.nav a[aria-current=page]:after{clip-path:inset(0)}.nav a[aria-current=page]{color:var(--accent)}.header-call{min-height:44px;padding:0 18px;font-size:14px}.menu{display:none}.hero{min-height:min(calc(100svh - var(--header) - 22px), 880px);grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(32px,5vw,80px);padding-block:clamp(32px,5vw,72px) clamp(48px,6vw,88px);display:grid}.hero h1{margin-bottom:28px}.practical{border-top:1px dashed var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:560px;margin:40px 0 0;padding-top:22px;display:grid}.practical dt,.visit h3,.contact-block h2,.footer-label,.menu-label{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 8px;font-size:12px;font-weight:600}.practical dd{margin:0;font-size:15px;line-height:1.6}.sheet{aspect-ratio:5/6;background:linear-gradient(var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, var(--paper-2);border:1px solid var(--line);margin:0;position:relative}.sheet-piece,.service-photo,.story-photo{filter:drop-shadow(1px 0 0 var(--ink)) drop-shadow(-1px 0 0 var(--ink)) drop-shadow(0 1px 0 var(--ink)) drop-shadow(0 -1px 0 var(--ink));position:absolute;inset:7% 8% 13%}.sheet-piece img,.service-photo img,.story-photo img{object-fit:cover;clip-path:polygon(0 6%,50% 0,100% 7%,96% 100%,4% 100%);width:100%;height:100%}.sheet-thread{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sheet-thread path{fill:none;stroke:var(--thread);stroke-width:1.6px;stroke-dasharray:1.3 .9;stroke-linecap:round;vector-effect:non-scaling-stroke}.sheet figcaption,.service-figure figcaption,.story-figure figcaption{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);justify-content:space-between;gap:16px;font-size:12px;display:flex;position:absolute;bottom:4%;left:8%;right:8%}.pieces{border-top:1px solid var(--ink);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.pieces>li{border-right:1px dashed var(--line)}.pieces>li:last-child{border-right:0}.piece{flex-direction:column;gap:12px;height:100%;padding:28px 22px 32px;transition:background-color .3s;display:flex}.piece .pattern-piece{max-width:180px;transition:transform .5s var(--ease);margin:0 auto 14px}.piece:hover,.piece:focus-visible{background:var(--paper-2)}.piece:hover .pattern-piece,.piece:focus-visible .pattern-piece{transform:translateY(-6px)rotate(-1.5deg)}.piece-cran{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:12.5px;font-weight:600}.piece h3{font-size:clamp(1.45rem,1.8vw,1.8rem)}.piece-text{color:var(--muted);font-size:15px;line-height:1.55}.piece-all{background:var(--paper-2);justify-content:flex-end}.story-band,.footer{--paper:var(--band);--paper-2:#ffffff0d;--ink:var(--band-ink);--muted:var(--band-muted);--accent:var(--band-accent);--thread:var(--band-accent);--line:var(--band-line);--on-accent:var(--band);background:var(--band);color:var(--band-ink)}.story-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.story-mark .brand-mark,.welcome-mark .brand-mark{width:min(240px,100%);color:var(--accent);margin-inline:auto}.story-band .lead{max-width:52ch}.story-figure-line{border-top:1.5px dashed var(--thread);max-width:52ch;color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:32px 0 30px;padding-top:24px;display:flex}.story-figure-line span{font-family:var(--serif);color:var(--ink);font-size:clamp(2.6rem,4vw,3.6rem);line-height:1}.steps-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px);margin:0;padding:0;list-style:none;display:grid}.steps-list li{border-top:1px solid var(--ink);padding-top:22px}.step-cran{letter-spacing:.12em;text-transform:uppercase;color:var(--on-accent);background:var(--accent);clip-path:polygon(0 0,100% 0,calc(100% - 8px) 50%,100% 100%,0 100%);margin-bottom:18px;padding:4px 12px 4px 10px;font-size:12px;font-weight:600;display:inline-block}.steps-list h3{margin-bottom:12px}.steps-list p{color:var(--muted);margin:0}.faq-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(32px,5vw,80px);margin:0;display:grid}.faq-list>div{border-top:1px dashed var(--line);padding:26px 0 30px}.faq-list dt{font-family:var(--serif);margin-bottom:10px;font-size:1.5rem;line-height:1.2}.faq-list dd{color:var(--muted);margin:0}.crumbs{color:var(--muted);padding-top:22px;font-size:13px}.crumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--line);margin-right:6px}.crumbs a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.page-hero{padding-block:clamp(36px,6vw,88px) clamp(40px,5vw,72px)}.page-hero h1{max-width:15ch;margin-bottom:26px}.toc ul{flex-wrap:wrap;gap:10px;margin:36px 0 0;padding:0;list-style:none;display:flex}.toc a{border:1px dashed var(--ink);border-radius:999px;align-items:center;min-height:44px;padding:0 18px;font-size:14px;display:inline-flex}.toc a:hover{background:var(--paper-2);border-style:solid}.chapter{border-top:1px solid var(--line);scroll-margin-top:calc(var(--header) + 16px);grid-template-columns:minmax(140px,220px) 1fr;align-items:start;gap:clamp(28px,6vw,96px);padding-block:clamp(44px,6vw,80px);display:grid}.chapter:first-child{border-top:0}.chapter .pattern-piece{top:calc(var(--header) + 32px);position:sticky}.chapter h2{margin:10px 0}.chapter-promise{font-family:var(--serif);color:var(--accent);font-size:1.5rem;font-style:italic}.chapter-copy>p:not(.chapter-promise){color:var(--muted);max-width:60ch}.ticks{flex-wrap:wrap;gap:10px 28px;margin:22px 0 0;padding:0;list-style:none;display:flex}.ticks li{align-items:center;gap:10px;font-size:15px;display:flex}.ticks li:before{content:"";border-top:1.5px dashed var(--thread);width:16px}.finder{background:linear-gradient(var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, var(--paper-2);scroll-margin-top:var(--header);padding-block:clamp(64px,8vw,112px)}.finder-pieces{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:36px;display:grid}.finder-pieces[hidden]{display:none}.finder-piece{border:1px solid var(--line);background:var(--paper);border-radius:4px;flex-direction:column;align-items:center;gap:12px;padding:20px 12px 16px;font-size:15px;font-weight:500;transition:border-color .25s,transform .25s;display:flex}.finder-piece .pattern-piece{width:64%;max-width:110px}.finder-piece:hover{transform:translateY(-2px)}.finder-piece[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--thread)}.finder-bottom{border-top:1px solid var(--ink);grid-template-columns:1fr 1.1fr auto;align-items:end;gap:28px 48px;padding-top:28px;display:grid}.finder-sentence{font-family:var(--serif);flex-wrap:wrap;align-items:baseline;gap:10px 14px;font-size:1.6rem;display:flex}.finder-sentence select{border:0;border-bottom:1.5px dashed var(--thread);max-width:100%;min-height:48px;font-family:var(--serif);color:var(--accent);background:0 0;border-radius:0;padding:4px 30px 4px 4px;font-size:1.6rem}.finder-sentence select[hidden],.finder-sentence label[hidden]{display:none}.finder-result h3{margin-bottom:8px}.finder-result p{color:var(--muted);margin:0}.finder-submit .soft{max-width:30ch;margin:12px 0 0;font-size:13px}.service-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(32px,6vw,96px);padding-block:clamp(24px,4vw,56px) clamp(48px,6vw,88px);display:grid}.service-hero h1{margin-bottom:26px;font-size:clamp(2.9rem,5.6vw,6rem)}.service-figure,.story-figure{margin:0;position:relative}.service-photo,.story-photo{aspect-ratio:var(--hero-ratio,4 / 3);position:relative;inset:auto}.service-overlay{filter:drop-shadow(0 10px 18px #2b212329);width:28%;max-width:150px;position:absolute;bottom:44px;right:-3%}.service-figure figcaption,.story-figure figcaption,.plate figcaption{letter-spacing:0;text-transform:none;color:var(--muted);justify-content:space-between;align-items:baseline;gap:16px;margin-top:14px;font-size:13px;line-height:1.5;display:flex;position:static}.service-figure figcaption span,.story-figure figcaption span,.plate figcaption span{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:none;font-size:11px;font-weight:600}.plate{margin:0}.plate-frame{aspect-ratio:var(--ratio);background:var(--paper-2);overflow:hidden}.plate-frame img{object-fit:cover;object-position:var(--pos);width:100%;height:100%}.plate-row{padding-bottom:clamp(56px,7vw,104px)}.plate-wide{width:min(100%,980px);margin-left:auto}.observe-split{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:center;gap:clamp(32px,5vw,80px);display:grid}.observe-split .observe-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bring-split{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:clamp(28px,4vw,64px);display:grid}.atelier-plates{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);margin-top:clamp(48px,6vw,96px);display:grid}.atelier-plates .plate:last-child{margin-top:clamp(48px,9vw,140px)}.story-plate{margin-block:clamp(40px,5vw,64px) 0}.story-plate+.story-part{margin-top:clamp(40px,5vw,64px)}.chapter-visual{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}.chapter-visual:nth-child(2n) .chapter-media{order:2}.chapter-media{position:relative}.chapter-visual .chapter-piece{filter:drop-shadow(0 8px 16px #2b212329);width:20%;max-width:110px;position:absolute;top:20px;bottom:auto;right:-14px}.contact-plate{max-width:520px;margin-top:40px}.offer-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,4vw,56px);margin:0;display:grid}.offer-list>div{border-top:1px dashed var(--line);padding:24px 0 30px}.offer-list dt{font-family:var(--serif);margin-bottom:8px;font-size:1.6rem;line-height:1.15}.offer-list dd{color:var(--muted);margin:0}.offer+.offer{padding-top:0}.bring-card{border:1px solid var(--line);background:linear-gradient(var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, var(--grid) 1px, transparent 1px) 0 0 / 28px 28px, var(--paper-2);padding:clamp(28px,5vw,64px)}.bring-card .section-head{margin-bottom:28px}.bring-list{counter-reset:bring;gap:14px;margin:0 0 24px;padding:0;list-style:none;display:grid}.bring-list li{counter-increment:bring;grid-template-columns:44px 1fr;align-items:baseline;gap:14px;font-size:17px;display:grid}.bring-list li:before{content:counter(bring, decimal-leading-zero);letter-spacing:.1em;color:var(--accent);border-bottom:1.5px dashed var(--thread);padding-bottom:2px;font-size:13px;font-weight:600}.pieces-small{grid-template-columns:repeat(3,minmax(0,1fr))}.pieces-small .pattern-piece{max-width:110px;margin:0 0 8px}.related h2{margin-bottom:36px}.story-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(32px,6vw,96px);padding-block:clamp(24px,4vw,56px) clamp(48px,6vw,88px);display:grid}.story-hero h1{margin-bottom:26px}.story-band-light{background:var(--paper-2);scroll-margin-top:var(--header)}.story-article{max-width:760px;position:relative}.story-article:before{content:"";border-left:1.5px dashed var(--thread);position:absolute;top:clamp(64px,9vw,128px);bottom:clamp(64px,9vw,128px);left:-36px}.story-part{position:relative}.story-part+.story-part{margin-top:clamp(48px,6vw,80px)}.part-number{text-align:right;width:44px;font-family:var(--serif);color:var(--accent);font-size:1.6rem;font-style:italic;position:absolute;top:4px;left:-96px}.story-part h2{margin-bottom:22px;font-size:clamp(2rem,3.4vw,3rem)}.story-part p{color:var(--ink);max-width:64ch;font-size:clamp(1.06rem,1.25vw,1.16rem);line-height:1.8}.story-part p.first:first-letter{float:left;font-family:var(--serif);color:var(--accent);padding:6px 12px 0 0;font-size:4.6em;line-height:.82}.signature-line{letter-spacing:.04em;flex-direction:column;gap:2px;margin-top:36px;display:flex;color:var(--muted)!important;font-size:14px!important}.signature-line span{font-family:var(--serif);letter-spacing:0;color:var(--accent);font-size:2.2rem;font-style:italic}.observe-band{background:var(--paper-2)}.observe-list{counter-reset:observe;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:clamp(20px,3vw,40px);margin:0;padding:0;list-style:none;display:grid}.observe-list li{counter-increment:observe;border-top:1px solid var(--ink);padding-top:20px}.observe-list li:before{content:counter(observe, decimal-leading-zero);letter-spacing:.12em;color:var(--accent);margin-bottom:12px;font-size:12px;font-weight:600;display:block}.observe-list h3{margin-bottom:10px}.observe-list p{color:var(--muted);margin:0}.welcome{grid-template-columns:.5fr 1.5fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.welcome h2{max-width:18ch;margin-bottom:22px}.contact{grid-template-columns:.9fr 1.1fr;gap:clamp(40px,7vw,112px);padding-top:clamp(40px,5vw,72px);display:grid}.contact-phone{font-family:var(--serif);color:var(--accent);margin-bottom:12px;font-size:clamp(2.6rem,4.6vw,4rem);line-height:1;display:block}.contact-email{text-underline-offset:5px;text-decoration:underline;text-decoration-color:var(--thread);font-size:17px}.contact-block{border-top:1px dashed var(--line);margin-top:44px;padding-top:22px}.contact-block address{margin-bottom:4px;font-size:18px;line-height:1.6}.hours{margin:0}.hours div{justify-content:space-between;gap:20px;padding-block:8px;display:flex}.hours dt{color:var(--muted)}.hours dd{text-align:right;margin:0}.contact-info>.soft{margin-top:36px}.contact-form-wrap{border:1px solid var(--line);background:var(--paper-2);padding:clamp(24px,4vw,52px)}.contact-form-wrap h2{margin-bottom:18px}.contact-project{border-left:2px solid var(--thread);background:var(--paper);margin-bottom:18px;padding:14px 16px;font-size:15px}.contact-project[hidden],.challenge-retry[hidden]{display:none}.contact-project p{margin:0 0 6px}.contact-project a{text-underline-offset:3px;font-size:14px;text-decoration:underline}.form-note{color:var(--muted);border-left:2px solid var(--accent);padding-left:14px;font-size:14px}.field{flex-direction:column;gap:8px;margin-top:22px;display:flex}.field label{font-size:15px;font-weight:500}.field label span{color:var(--muted);font-size:13px;font-weight:400}.field input,.field textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:4px;padding:14px 16px;font-size:16px}.field input:focus,.field textarea:focus{outline:2px solid var(--thread);outline-offset:1px;border-color:#0000}.field textarea{resize:vertical;min-height:170px}.field textarea::placeholder{color:var(--muted)}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-privacy{color:var(--muted);margin:22px 0;font-size:13px}.form-privacy a{text-underline-offset:3px;text-decoration:underline}#form-status{margin:20px 0 0;font-size:15px}#form-status:empty{display:none}.form-error{color:var(--thread);border-left:2px solid;padding-left:12px}.form-success{border-left:2px solid var(--accent);padding-left:12px}.contact-form-wrap noscript p{color:var(--muted);font-size:14px}.legal{width:min(760px,100% - 40px);margin-inline:auto;padding-block:clamp(48px,7vw,96px)}.legal h1{margin-bottom:36px;font-size:clamp(2.8rem,5vw,4.4rem)}.legal h2{margin:40px 0 12px;font-size:1.9rem}.legal p{color:var(--muted)}.legal a{text-underline-offset:3px;text-decoration:underline}.not-found{flex-direction:column;justify-content:center;min-height:62vh;padding-block:64px;display:flex}.not-found h1{margin-bottom:20px}.footer{padding-bottom:28px}.footer .tape{opacity:.3}.visit{border-bottom:1px solid var(--line);grid-template-columns:1.1fr 1fr;gap:clamp(40px,6vw,96px);padding-block:clamp(56px,8vw,104px);display:grid}.visit h2{margin-bottom:20px}.visit-lead>p:not(.kicker){color:var(--muted);max-width:44ch}.pill-light{background:var(--ink);color:var(--band);border-color:var(--ink)}.pill-light:hover{color:var(--ink);background:0 0}.visit-facts{grid-template-columns:1fr 1fr;align-content:center;gap:36px;display:grid}.visit-facts address,.visit-facts p{margin:0 0 8px;font-size:17px;line-height:1.65}.visit-facts .soft{font-size:14px}.footer-main{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:36px;padding-block:48px 40px;display:grid}.footer-main .brand-mark{color:var(--accent)}.footer-main ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.footer-main a:not(.brand):hover{color:var(--accent)}.footer-main p,.footer-main li{color:var(--muted);font-size:15px}.footer-main p a{color:var(--ink)}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 28px;padding-top:22px;font-size:13px;display:flex}.footer-bottom nav,.prefs{flex-wrap:wrap;gap:6px 22px;display:flex}.footer-bottom a{text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.footer-bottom a:hover{color:var(--ink)}.footer-bottom small{font-size:13px}.prefs button{min-height:40px;color:var(--muted);text-underline-offset:4px;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline dotted}.prefs button:hover{color:var(--ink)}.dock{display:none}.reveal-ready{opacity:0;transition:opacity .7s var(--ease), translate .7s var(--ease);translate:0 18px}.reveal-ready.is-visible{opacity:1;translate:0}@media (prefers-reduced-motion:no-preference){html:not([data-motion=reduced]){scroll-behavior:smooth}html:not([data-motion=reduced]) .hero-copy>*{animation:rise .9s var(--ease) both}html:not([data-motion=reduced]) .hero-copy>:nth-child(3){animation-delay:.12s}html:not([data-motion=reduced]) .hero-copy>:nth-child(n+4){animation-delay:.22s}html:not([data-motion=reduced]) .sheet-thread path{animation:thread-draw 2.2s .3s var(--ease) both, stitch 1.2s 2.5s linear 2}html:not([data-motion=reduced]) .piece:hover .pp-seam,html:not([data-motion=reduced]) .piece:focus-visible .pp-seam,html:not([data-motion=reduced]) .finder-piece[aria-pressed=true] .pp-seam{animation:1.4s linear infinite stitch}@supports (animation-timeline:view()){html:not([data-motion=reduced]) .sewn:after{animation:linear both sew --sewn;animation-range:entry 20% cover 40%}}@view-transition{navigation:auto}::view-transition-old(root){animation:.15s both route-out}::view-transition-new(root){animation:route-in .25s var(--ease) both}.header{view-transition-name:site-header}::view-transition-group(site-header){animation:none}}@keyframes route-out{to{opacity:0}}@keyframes route-in{0%{opacity:0;translate:0 8px}}html[data-motion=reduced]::view-transition-old(root),html[data-motion=reduced]::view-transition-new(root){animation:none}@keyframes rise{0%{opacity:0;translate:0 16px}to{opacity:1;translate:0}}@keyframes thread-draw{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes stitch{to{stroke-dashoffset:-5.4px}}@keyframes sew{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}html[data-motion=reduced] *,html[data-motion=reduced] :before,html[data-motion=reduced] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html[data-motion=reduced] .reveal-ready{opacity:1;translate:0}@media (prefers-reduced-motion:reduce){.reveal-ready{opacity:1;translate:0}}@media (width<=1100px){.pieces{grid-template-columns:repeat(3,minmax(0,1fr))}.pieces>li:nth-child(3n){border-right:0}.pieces>li:nth-child(n+4){border-top:1px dashed var(--line)}.offer-list{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main,.finder-bottom{grid-template-columns:1fr 1fr}.finder-submit{grid-column:1/-1}.story-article{padding-left:28px}.story-article:before{left:0}.part-number{text-align:left;width:auto;margin-bottom:6px;font-size:1.3rem;display:block;position:static}}@media (width<=860px){:root{--header:64px}body{padding-bottom:84px;font-size:16px}.nav,.header-call{display:none}.brand span{font-size:24px}.brand-mark{width:30px}.menu{margin-left:auto;display:block}.menu summary{align-items:center;gap:12px;min-height:44px;padding:0 4px 0 16px;font-size:15px;font-weight:500;list-style:none;display:flex}.menu summary::-webkit-details-marker{display:none}.menu-lines{width:22px;height:10px;position:relative}.menu-lines:before,.menu-lines:after{content:"";transition:transform .25s var(--ease), top .25s var(--ease);border-top:1.5px solid;position:absolute;left:0;right:0}.menu-lines:before{top:0}.menu-lines:after{top:8.5px}.menu[open] .menu-lines:before{top:4.25px;transform:rotate(45deg)}.menu[open] .menu-lines:after{top:4.25px;transform:rotate(-45deg)}.menu-sheet{z-index:25;inset:var(--header) 0 0;padding:28px 20px calc(36px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);position:fixed;overflow-y:auto}.menu-sheet nav{display:grid}.menu-main{font-family:var(--serif);border-bottom:1px dashed var(--line);padding-block:8px;font-size:2.4rem;line-height:1.15}.menu-main[aria-current=page]{color:var(--accent)}.menu-label{margin-top:28px}.menu-services{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.menu-services a{border:1px dashed var(--ink);border-radius:999px;align-items:center;min-height:44px;padding:0 16px;font-size:15px;display:inline-flex}.menu-practical{gap:16px;margin-top:32px;display:grid}.menu-practical p{color:var(--muted);margin:0;font-size:15px}.dock{z-index:30;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));background:var(--ink);border-radius:999px;grid-template-columns:1fr 1.4fr;padding:5px;display:grid;position:fixed;box-shadow:0 10px 30px #2b212340}.dock a{min-height:50px;color:var(--paper);border-radius:999px;justify-content:center;align-items:center;font-size:15px;font-weight:600;display:flex}.dock a+a{background:var(--accent);color:var(--on-accent)}html:has(.menu[open]) .dock{display:none}.hero,.service-hero,.story-hero{grid-template-columns:1fr;gap:40px;min-height:0;padding-top:24px}.hero h1{font-size:clamp(2.9rem,13vw,4.4rem)}.service-hero h1,.page-hero h1{font-size:clamp(2.6rem,11vw,3.8rem)}.lead{font-size:1.05rem}.actions .pill{flex:auto}.practical{grid-template-columns:1fr 1fr;gap:16px}.sheet{aspect-ratio:4/4.4}.plate-frame{aspect-ratio:var(--ratio-m)}.plate-frame img{object-position:var(--pos-m)}.plate-wide{width:100%}.observe-split,.bring-split,.atelier-plates,.chapter.chapter-visual{grid-template-columns:minmax(0,1fr);gap:24px}.observe-split .observe-list{grid-template-columns:1fr}.atelier-plates .plate:last-child{width:82%;margin-top:0;margin-left:auto}.chapter.chapter-visual:nth-child(2n) .chapter-media{order:0}.chapter.chapter-visual .chapter-piece{width:16%;max-width:64px;position:absolute;top:12px;bottom:auto;right:12px}.sheet figcaption{flex-direction:column;gap:2px;font-size:11px}.section-head.split{grid-template-columns:1fr;gap:16px}.pieces{grid-template-columns:1fr}.pieces>li{border-right:0;border-top:1px dashed var(--line)}.pieces>li:first-child{border-top:0}.piece{grid-template-rows:auto auto auto;grid-template-columns:76px 1fr;gap:4px 18px;padding:20px 4px;display:grid}.piece .pattern-piece{grid-row:1/4;max-width:76px;margin:0}.piece h3{font-size:1.4rem}.piece-all{display:flex}.pieces-small .pattern-piece{max-width:64px}.story-grid,.welcome{grid-template-columns:1fr}.story-mark .brand-mark,.welcome-mark .brand-mark{width:96px;margin:0}.story-article{padding-left:20px}.steps-list,.faq-list,.offer-list{grid-template-columns:1fr}.faq-list dt{font-size:1.35rem}.toc ul{scrollbar-width:none;flex-wrap:nowrap;margin-inline:-20px;padding-inline:20px;overflow-x:auto}.toc li{flex:none}.chapter{grid-template-columns:64px minmax(0,1fr);gap:18px}.chapter h2{overflow-wrap:break-word;font-size:clamp(1.9rem,9vw,2.6rem)}.chapter .pattern-piece{position:static}.chapter-promise{font-size:1.3rem}.finder-pieces{scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:-20px;padding:2px 20px 8px;display:flex;overflow-x:auto}.finder-piece{scroll-snap-align:start;flex:0 0 128px}.finder-bottom{grid-template-columns:1fr;gap:24px}.finder-sentence,.finder-sentence select{font-size:1.35rem}.finder-submit .pill{width:100%}.service-overlay{display:none}.bring-card{padding:24px 18px}.bring-list li{grid-template-columns:30px 1fr;gap:10px;font-size:16px}.story-part p.first:first-letter{padding-right:8px;font-size:3.6em}.contact,.visit,.visit-facts{grid-template-columns:1fr}.visit-facts{gap:24px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-main>.brand{grid-column:1/-1}.footer-bottom{flex-direction:column;align-items:flex-start}}@media (width<=360px){.header-inner{gap:10px}.brand{gap:8px}.brand span{font-size:21px}.menu summary{gap:8px;padding-left:8px}.practical,.footer-main{grid-template-columns:1fr}.finder-piece{flex-basis:116px}}
