@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("../fonts/bodonimoda-i-x.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 900;
  font-display: swap;
  src: url("../fonts/bodonimoda-i-l.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("../fonts/bodonimoda-n-x.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("../fonts/bodonimoda-n-l.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/hankengrotesk-n-x.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/hankengrotesk-n-l.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Literata';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url("../fonts/literata-i-x.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Literata';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url("../fonts/literata-i-l.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("../fonts/literata-n-x.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("../fonts/literata-n-l.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{
  --indigo:#1c2f5e;
  --indigo-deep:#13213f;
  --vat:#2e4c8a;
  --wash:#cfd9ea;
  --linen:#f4f1e8;
  --linen-2:#e9e4d6;
  --ink:#141a2c;
  --ink-2:#4a5068;
  --mute:#7b8094;
  --thread:#d8d1bf;
  --display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --text:"Literata",Georgia,"Times New Roman",serif;
  --ui:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --pad:clamp(18px,4.5vw,60px);
  --max:1240px;
  --ease:cubic-bezier(.2,.75,.2,1);
  --flower:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cg fill='%23f4f1e8'%3E%3Ccircle cx='22' cy='22' r='2.6'/%3E%3Ccircle cx='22' cy='15.5' r='2.6'/%3E%3Ccircle cx='28.2' cy='20' r='2.6'/%3E%3Ccircle cx='25.8' cy='27.3' r='2.6'/%3E%3Ccircle cx='18.2' cy='27.3' r='2.6'/%3E%3Ccircle cx='15.8' cy='20' r='2.6'/%3E%3Ccircle cx='0' cy='0' r='1.6'/%3E%3Ccircle cx='44' cy='0' r='1.6'/%3E%3Ccircle cx='0' cy='44' r='1.6'/%3E%3Ccircle cx='44' cy='44' r='1.6'/%3E%3C/g%3E%3C/svg%3E");
  --wave:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='24' viewBox='0 0 40 24'%3E%3Cpath d='M0 12 Q10 2 20 12 T40 12' fill='none' stroke='%23f4f1e8' stroke-width='2'/%3E%3Ccircle cx='10' cy='19' r='1.6' fill='%23f4f1e8'/%3E%3Ccircle cx='30' cy='5' r='1.6' fill='%23f4f1e8'/%3E%3C/svg%3E");
  --dot:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Ccircle cx='4' cy='4' r='2' fill='%23f4f1e8'/%3E%3Ccircle cx='12' cy='12' r='2' fill='%23f4f1e8'/%3E%3C/svg%3E");
  --lattice:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M12 1 23 12 12 23 1 12Z' fill='none' stroke='%23f4f1e8' stroke-width='1.6'/%3E%3Ccircle cx='12' cy='12' r='2.2' fill='%23f4f1e8'/%3E%3C/svg%3E");
  --leaf:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath d='M8 22C8 12 14 7 22 7c0 9-5 15-14 15Z' fill='%23f4f1e8'/%3E%3Cpath d='M8 22 18 12' stroke='%231c2f5e' stroke-width='1.3'/%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--linen);color:var(--ink);font:400 18px/1.7 var(--text);font-optical-sizing:auto;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
picture{display:block}
a{color:var(--indigo);text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.2em;text-decoration-color:rgba(28,47,94,.35);transition:text-decoration-color .25s,text-decoration-thickness .25s,color .2s}
a:hover{text-decoration-color:var(--indigo);text-decoration-thickness:2px}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--vat);outline-offset:3px}
h1,h2,h3{margin:0;font-family:var(--text);font-weight:650;line-height:1.08;letter-spacing:-.018em;color:var(--indigo);font-optical-sizing:auto}
.cut h2,.pb-head h1,.ws-head h1,.woven h2,.next h2,.note-form h2,.ws-body h2,.story-text h2{font-family:var(--display);letter-spacing:-.01em}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:300;background:var(--indigo);color:var(--linen);padding:8px 14px;font-family:var(--ui)}
.skip:focus{top:12px}
main{display:block;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.small{font-family:var(--ui);font-size:14px;color:var(--mute)}

.pat-flower{background:var(--indigo) var(--flower)}
.pat-wave{background:var(--indigo) var(--wave)}
.pat-dot{background:var(--indigo) var(--dot)}
.pat-lattice{background:var(--indigo) var(--lattice)}
.pat-leaf{background:var(--indigo) var(--leaf)}
.sw{display:inline-block;width:14px;height:14px;margin-right:8px;vertical-align:-1px;background-size:8px 8px!important;flex:none}
.sw-book{background:var(--indigo);box-shadow:inset 0 0 0 3px var(--indigo),inset 0 0 0 4px var(--linen)}

.dye{position:relative;background:var(--indigo);overflow:hidden}
.dye img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.12) brightness(1.06);mix-blend-mode:screen;transition:filter .9s var(--ease),transform 1.4s var(--ease)}
.dye::after{content:"";position:absolute;inset:0;background:var(--linen);mix-blend-mode:multiply;opacity:.9;pointer-events:none;transition:opacity .9s var(--ease)}
a:hover .dye img,.story-fig:hover .dye img{filter:none;mix-blend-mode:normal;transform:scale(1.02)}
a:hover .dye::after,.story-fig:hover .dye::after{opacity:0}

.selvedge{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 20px;padding:8px var(--pad);background:var(--indigo-deep);color:var(--linen);font-family:var(--ui);font-size:13.5px;position:relative}
.selvedge::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:6px;background:var(--indigo-deep) var(--dot);background-size:8px 8px}
.selvedge p{margin:0}
.sel-sk{margin-left:12px;opacity:.7}
.sel-dst{background:var(--linen);color:var(--indigo);padding:2px 10px;font-weight:600}
.sel-time b{font-variant-numeric:tabular-nums;font-weight:700;font-size:15px;margin-left:4px}

.mast{position:relative;text-align:center;padding:clamp(34px,5vw,58px) var(--pad) 18px}
.mast-name{display:inline-block;text-decoration:none;color:var(--indigo);line-height:1}
.mast-small{display:block;margin-bottom:-.15em;font-family:var(--display);font-style:italic;font-weight:500;font-size:clamp(1.2rem,2.2vw,1.7rem);letter-spacing:.02em}
.mast-big{display:block;line-height:.86;font-family:var(--display);font-weight:800;font-size:clamp(4.6rem,13vw,9.6rem);letter-spacing:-.035em;font-variation-settings:"opsz" 96}
.mast-tag{margin:34px auto 0;max-width:46ch;font-style:italic;color:var(--ink-2);font-size:17px}
.mast-menu{display:none;position:absolute;right:var(--pad);top:18px;border:1px solid var(--indigo);background:transparent;color:var(--indigo);padding:7px 14px;font-family:var(--ui);font-weight:600;font-size:14px;cursor:pointer}
.sections{border-top:1px solid var(--indigo);border-bottom:1px solid var(--indigo);position:relative;margin-bottom:6px}
.sections::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:4px;border-bottom:1px solid var(--indigo)}
.sections ul{list-style:none;margin:0 auto;padding:0 var(--pad);max-width:var(--max);display:flex;justify-content:center;flex-wrap:wrap}
.sections a{display:flex;align-items:center;padding:12px 16px;font-family:var(--ui);font-weight:600;font-size:15px;color:var(--ink);text-decoration:none;transition:background .3s,color .3s}
.sections a:hover,.sections a[aria-current]{background:var(--indigo);color:var(--linen)}
.sections a:hover .sw,.sections a[aria-current] .sw{box-shadow:0 0 0 1.5px var(--linen)}

.cut{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin:clamp(64px,8vw,104px) 0 28px;padding-bottom:18px;position:relative}
.cut::after{content:"";position:absolute;left:0;right:0;bottom:0;height:9px;background:linear-gradient(135deg,var(--indigo) 25%,transparent 25%) -9px 0/18px 18px,linear-gradient(225deg,var(--indigo) 25%,transparent 25%) -9px 0/18px 18px;opacity:.9}
.cut h2{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:700;font-style:italic}
.cut p{margin:0;color:var(--ink-2);font-family:var(--ui);font-size:15px;max-width:44ch}

.lead{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center;padding-top:clamp(30px,4vw,48px)}
.lead-pic{display:block;padding:12px;background:var(--indigo) var(--flower);background-size:30px 30px}
.lead-pic .dye{aspect-ratio:3/2}
.lead-k{margin:0;font-family:var(--ui);font-weight:600;font-size:14px;color:var(--vat)}
.lead h2{font-size:clamp(2.2rem,4vw,3.4rem);font-weight:650;margin:14px 0 18px;text-wrap:balance}
.lead h2 a{color:var(--indigo);text-decoration:none}
.lead h2 a:hover{text-decoration:underline;text-decoration-thickness:2px}
.lead-dek{margin:0;font-size:19.5px;color:var(--ink-2)}
.lead-m{margin:18px 0 0;font-family:var(--ui);font-size:14px;color:var(--mute)}

.almanac{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(44px,6vw,72px);border-top:1px solid var(--indigo);border-bottom:1px solid var(--indigo)}
.almanac > div{padding:24px 26px 26px}
.almanac > div + div{border-left:1px solid var(--thread)}
.alm-name{background:var(--indigo);color:var(--linen);position:relative;overflow:hidden;isolation:isolate}
.alm-name::before{content:"";position:absolute;inset:0;background:var(--flower);background-size:44px 44px;opacity:.12;z-index:-1}
.alm-k{margin:0;font-family:var(--ui);font-weight:700;font-size:13.5px;color:var(--vat)}
.alm-name .alm-k{color:var(--wash)}
.alm-big{margin:6px 0 10px;font-family:var(--display);font-weight:700;font-size:clamp(2.6rem,4.4vw,3.6rem);line-height:1;color:var(--indigo);font-variant-numeric:lining-nums tabular-nums}
.alm-name .alm-big{color:var(--linen);font-style:italic}
.alm-txt{margin:0;font-size:15.5px;line-height:1.55;color:var(--ink-2)}
.alm-name .alm-txt{color:#dfe5f1}

.drop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.drop-col{display:grid;gap:22px}
.drop-col:nth-child(2){margin-top:clamp(60px,10vw,150px)}
.block{position:relative;border:1px solid var(--indigo);background:var(--linen);padding:14px 14px 18px;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.block:hover{transform:translateY(-3px);box-shadow:6px 6px 0 var(--wash)}
.block-pic{display:block;margin-bottom:14px}
.block-pic .dye{aspect-ratio:3/2}
.block-k{margin:0;font-family:var(--ui);font-weight:600;font-size:13px;color:var(--vat);display:flex;align-items:center}
.block h3{font-size:1.4rem;font-weight:600;margin:8px 0 8px;line-height:1.12}
.block h3 a{color:var(--indigo);text-decoration:none}
.block h3 a:hover{text-decoration:underline}
.block-dek{margin:0;font-size:15.5px;line-height:1.55;color:var(--ink-2)}
.block-m{margin:12px 0 0;font-family:var(--ui);font-size:13px;color:var(--mute)}
.block-neg{background:var(--indigo);color:var(--linen);border-color:var(--indigo)}
.block-neg:hover{box-shadow:6px 6px 0 var(--wash)}
.block-neg .block-pic .dye{background:var(--linen)}
.block-neg .dye img{mix-blend-mode:multiply;filter:grayscale(1) contrast(1.05) brightness(1.15)}
.block-neg .dye::after{background:var(--indigo);mix-blend-mode:screen;opacity:.85}
.block-neg h3 a{color:var(--linen)}
.block-neg .block-k{color:var(--wash)}
.block-neg .block-dek{color:#dbe2ef}
.block-neg .block-m{color:#aab5cf}
.block-neg .sw{box-shadow:0 0 0 1.5px var(--linen)}

.keep-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
.keep-list li{display:grid;grid-template-columns:72px 1fr auto;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid var(--thread)}
.dt-d{display:grid;place-items:center;align-content:center;width:72px;height:72px;background:var(--indigo);color:var(--linen);font-family:var(--display);font-weight:700;font-size:30px;line-height:1;clip-path:polygon(18% 0,100% 0,100% 100%,18% 100%,0 50%)}
.dt-d small{font-family:var(--ui);font-size:12px;font-weight:600;margin-top:4px}
.keep-list a{font-family:var(--text);font-weight:500;font-size:1.15rem;line-height:1.2;text-decoration:none;color:var(--ink)}
.keep-list a:hover{color:var(--indigo);text-decoration:underline}
.dt-c{font-family:var(--ui);font-weight:700;font-size:13.5px;color:var(--vat);white-space:nowrap;border:1px solid var(--vat);padding:3px 10px}
.keep-list li.is-now .dt-c{background:var(--indigo);color:var(--linen);border-color:var(--indigo)}
.keep-list li.is-past{opacity:.45}

.sb-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.sb-row a{display:grid;gap:4px;text-decoration:none;color:var(--ink)}
.big-sw{display:block;aspect-ratio:1;background-size:auto!important;transition:background-position 1.2s var(--ease),transform .5s var(--ease)}
.sb-row a:hover .big-sw{background-position:22px 22px;transform:rotate(-1.5deg)}
.sb-row b{font-family:var(--text);font-weight:600;font-size:1.35rem;margin-top:10px;color:var(--indigo)}
.sb-row span:not(.big-sw){font-family:var(--ui);font-size:13.5px;color:var(--mute)}

.story{display:grid;grid-template-columns:92px minmax(0,1fr);gap:clamp(20px,4vw,56px);padding-top:clamp(28px,4vw,44px)}
.story-edge{position:sticky;top:20px;align-self:start;display:flex;flex-direction:column;align-items:center;gap:14px;padding:14px 0 18px;background:var(--indigo);color:var(--linen);font-family:var(--ui);font-size:13px;font-weight:600}
.edge-sw{display:block;width:64px;height:64px;background-size:22px 22px!important;box-shadow:0 0 0 1px var(--linen)}
.story-edge p{margin:0;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.04em}
.story-edge a{color:var(--linen);text-decoration:none}
.story-main{min-width:0;max-width:960px}
.story-k{margin:0;font-family:var(--ui);font-weight:600;font-size:14px;color:var(--vat)}
.story-head h1{font-size:clamp(2.3rem,4.8vw,4rem);font-weight:650;margin:14px 0 18px;text-wrap:balance}
.story-dek{margin:0;font-size:clamp(1.15rem,1.8vw,1.35rem);font-style:italic;color:var(--ink-2);max-width:60ch}
.story-by{margin:18px 0 0;font-family:var(--ui);font-size:14px;color:var(--mute)}
.story-by a{font-weight:700}
.story-fig{margin:30px 0 0}
.story-fig .dye{aspect-ratio:3/2}
.story-fig figcaption{margin-top:8px;font-family:var(--ui);font-size:13px;color:var(--mute)}
.story-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,4vw,52px);margin-top:clamp(28px,4vw,44px)}
.care{position:sticky;top:20px;align-self:start;margin:0;background:#fff;padding:16px 16px 10px;box-shadow:0 0 0 1px var(--thread);outline:1px dashed var(--wash);outline-offset:-7px;font-family:var(--ui)}
.care-h{margin:0 0 6px;font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--indigo);text-align:center;padding-bottom:8px;border-bottom:1px solid var(--thread)}
.care div{padding:8px 0;border-bottom:1px solid var(--linen-2)}
.care div:last-child{border-bottom:0}
.care dt{font-size:12px;font-weight:700;color:var(--vat)}
.care dd{margin:2px 0 0;font-size:14.5px;line-height:1.45;color:var(--ink)}
.story-text{max-width:680px;font-size:19px;line-height:1.78}
.story-text > p{margin:0 0 1.15em}
.story-text > p:first-child::first-letter{float:left;font-family:var(--display);font-weight:800;font-size:4.6em;line-height:.8;margin:6px 12px 0 0;color:var(--indigo)}
.story-text h2{font-size:clamp(1.6rem,2.6vw,2rem);font-style:italic;margin:1.4em 0 .5em}
.src{display:inline-block;min-width:1.4em;padding:0 3px;text-align:center;font-family:var(--ui);font-weight:700;font-size:.68em;color:var(--linen);background:var(--vat);text-decoration:none;line-height:1.4}
.src:hover{background:var(--indigo)}
.woven{margin-top:40px;padding:24px 26px;border:1px solid var(--indigo);position:relative;background:var(--linen)}
.woven::before{content:"";position:absolute;left:-1px;right:-1px;top:-8px;height:8px;background:var(--indigo) var(--dot);background-size:8px 8px}
.woven h2{font-size:1.9rem;font-style:italic}
.woven > p{margin:6px 0 14px;font-family:var(--ui);font-size:14.5px;color:var(--ink-2)}
.woven ol{margin:0;padding-left:26px;display:grid;gap:10px;font-size:16px}
.woven li::marker{font-family:var(--ui);font-weight:700;color:var(--vat)}
.woven li:target{background:var(--wash)}
.woven b{display:block;font-family:var(--ui);font-size:13px;color:var(--ink-2)}
.woven a{overflow-wrap:anywhere}
.woven-fix{margin:16px 0 0!important}
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:24px;font-family:var(--ui);font-size:14px}
.share span{font-weight:700;margin-right:6px;color:var(--ink-2)}
.share a,.share button{border:1px solid var(--indigo);background:transparent;color:var(--indigo);padding:6px 14px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .25s,color .25s}
.share a:hover,.share button:hover{background:var(--indigo);color:var(--linen)}
.next{margin-top:clamp(44px,6vw,72px)}
.next h2{font-size:2rem;font-style:italic;margin-bottom:16px}
.next > div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.next-item{display:grid;gap:6px;padding:18px 20px;border:1px solid var(--indigo);text-decoration:none;color:var(--ink);transition:background .3s,color .3s}
.next-item span{font-family:var(--ui);font-weight:600;font-size:13px;color:var(--vat)}
.next-item b{font-family:var(--text);font-weight:600;font-size:1.3rem;line-height:1.2;color:var(--indigo)}
.next-item:hover{background:var(--indigo)}
.next-item:hover b,.next-item:hover span{color:var(--linen)}

.pb-head{display:flex;gap:24px;align-items:center;padding:clamp(34px,5vw,60px) 0 clamp(20px,3vw,32px)}
.head-sw{display:block;flex:none;width:110px;height:110px;background-size:28px 28px!important}
.pb-k{margin:0;font-family:var(--ui);font-weight:700;font-size:14px;color:var(--vat)}
.pb-head h1,.ws-head h1{font-size:clamp(2.8rem,6vw,4.8rem);font-weight:700;font-style:italic;margin:6px 0 10px}
.pb-head p:last-child,.ws-head > p:not(.pb-k):not(.ws-date){margin:0;max-width:60ch;color:var(--ink-2)}
.pb-day{margin-top:28px}
.pb-day h2{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;font-size:1.55rem;padding:10px 0;border-bottom:1px solid var(--indigo)}
.pb-day h2 span{font-family:var(--ui);font-size:14px;font-weight:500;color:var(--mute)}
.pb-day ol{list-style:none;margin:0;padding:0}
.pb-e{display:grid;grid-template-columns:70px 34px minmax(0,1fr);gap:16px;align-items:start;padding:18px 0;border-bottom:1px solid var(--thread)}
.pb-no{font-family:var(--display);font-weight:800;font-size:2.4rem;line-height:.9;color:var(--indigo);font-variant-numeric:lining-nums}
.pb-sw{display:block;width:34px;height:34px;background-size:12px 12px!important;margin-top:4px}
.pb-e a{font-family:var(--text);font-weight:600;font-size:1.4rem;line-height:1.2;text-decoration:none;color:var(--indigo)}
.pb-e a:hover{text-decoration:underline}
.pb-e p{margin:6px 0 4px;font-size:15.5px;color:var(--ink-2);line-height:1.55}
.pb-e small{font-family:var(--ui);font-size:13px;color:var(--mute)}

.ws-head{padding:clamp(34px,5vw,60px) 0 clamp(20px,3vw,32px);max-width:820px}
.ws-date{margin:10px 0 0;font-family:var(--ui);font-size:13.5px;color:var(--mute)}
.ws{display:grid;grid-template-columns:220px minmax(0,740px);gap:clamp(24px,5vw,72px)}
.ws-toc{position:sticky;top:20px;align-self:start;border-left:4px solid var(--indigo);padding-left:14px}
.ws-toc ol{margin:0;padding-left:18px;display:grid;gap:6px;font-family:var(--ui);font-size:14.5px}
.ws-toc li::marker{color:var(--vat);font-weight:700}
.ws-toc a{text-decoration:none;color:var(--ink-2)}
.ws-toc a:hover{color:var(--indigo);text-decoration:underline}
.ws-body section{margin-bottom:30px}
.ws-body h2{font-size:1.75rem;font-style:italic;margin-bottom:10px}
.ws-body p,.ws-body li{color:#2e3448}
.ws-body p{margin:0 0 .8em}
.ws-body ul{margin:0;padding-left:22px}
.tbl{width:100%;border-collapse:collapse;font-family:var(--ui);font-size:14.5px;border-top:2px solid var(--indigo)}
.tbl th,.tbl td{text-align:left;padding:10px 8px 10px 0;border-bottom:1px solid var(--thread);overflow-wrap:anywhere}
.tbl th{font-size:13px;color:var(--vat)}
.about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,64px);align-items:start}
.about-fig{margin:0;padding:10px;background:var(--indigo) var(--flower);background-size:30px 30px}
.about-fig .dye{aspect-ratio:4/5}
.about-fig figcaption{color:var(--wash);font-family:var(--ui);font-size:12.5px;margin-top:8px}
.team{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.team li{border:1px solid var(--indigo);padding:20px 18px}
.mono{display:grid;place-items:center;width:58px;height:58px;background:var(--indigo) var(--dot);background-size:8px 8px;color:var(--linen);font-family:var(--display);font-weight:800;font-size:22px;text-shadow:0 0 6px var(--indigo),0 0 2px var(--indigo);margin-bottom:14px}
.team h2{font-size:1.45rem}
.team h2 a{text-decoration:none}
.role{margin:4px 0 10px;font-family:var(--ui);font-weight:600;font-size:13px;color:var(--vat)}
.team p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-2)}
.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.desk-list{margin:0;border-top:2px solid var(--indigo)}
.desk-list div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--thread)}
.desk-list dt{font-family:var(--ui);font-weight:700;font-size:14px;color:var(--vat)}
.desk-list dd{margin:0;overflow-wrap:anywhere}
.desk-list small{display:block;font-family:var(--ui);font-size:13px;color:var(--mute)}
.note-form{display:grid;gap:14px;padding:clamp(20px,3vw,30px);background:var(--indigo);color:var(--linen);position:relative}
.note-form::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px;background:var(--indigo) var(--flower);background-size:16px 16px}
.note-form h2{color:var(--linen);font-style:italic;font-size:2rem}
.note-form label{display:grid;gap:5px;font-family:var(--ui);font-size:14px;font-weight:600;color:var(--wash)}
.note-form input,.note-form select,.note-form textarea{border:0;border-bottom:2px solid var(--wash);background:var(--linen);color:var(--ink);padding:10px 12px;font-family:var(--text);font-weight:400;border-radius:0;transition:border-color .2s}
.note-form input:focus,.note-form select:focus,.note-form textarea:focus{outline:0;border-bottom-color:#fff;box-shadow:0 4px 0 -1px var(--vat)}
.note-form [aria-invalid="true"]{border-bottom-color:#ffb4a8}
.note-form .chk{display:block;font-weight:400}
.note-form .chk input{margin-right:8px;accent-color:var(--vat)}
.note-form .chk a{color:var(--linen)}
.note-form .ink-btn{justify-self:start;background:var(--linen);color:var(--indigo)}
.note-form .ink-btn::before{background:var(--wash)}
.form-msg{margin:0;font-family:var(--ui);font-size:13px;color:#c3cde2}

.ink-btn{position:relative;display:inline-block;overflow:hidden;isolation:isolate;border:1px solid var(--indigo);background:var(--indigo);color:var(--linen);padding:12px 22px;font-family:var(--ui);font-weight:700;font-size:15px;text-decoration:none;cursor:pointer;transition:color .35s,transform .15s}
.ink-btn::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:0;z-index:-1;background:var(--vat);border-radius:50% 50% 0 0/14px 14px 0 0;transition:height .45s var(--ease)}
.ink-btn:hover::before{height:140%}
.ink-btn:active{transform:scale(.97)}
a.ink-btn{color:var(--linen)}

.hem{margin-top:clamp(72px,9vw,120px);background:var(--indigo);color:#d7deec;font-family:var(--ui);font-size:14.5px}
.hem-band{height:26px;background:var(--indigo-deep) var(--flower);background-size:26px 26px;border-bottom:1px solid rgba(244,241,232,.25)}
.hem-in{max-width:var(--max);margin:0 auto;padding:44px var(--pad) 24px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px}
.hem-name{margin:0 0 12px;font-family:var(--display);font-weight:800;font-size:2.4rem;line-height:1;color:var(--linen)}
.hem-name i{font-weight:600}
.hem-about p:last-child{margin:0;font-family:var(--text);font-size:15px;line-height:1.6}
.hem h2{font-family:var(--ui);font-size:13px;font-weight:700;color:var(--wash);margin-bottom:12px}
.hem ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.hem a{color:var(--linen);text-decoration-color:rgba(244,241,232,.35)}
.hem a:hover{text-decoration-color:var(--linen)}
.hem button{border:0;background:none;padding:0;color:var(--linen);cursor:pointer;text-decoration:underline;text-decoration-color:rgba(244,241,232,.35);text-underline-offset:.2em}
.hem address{font-style:normal;line-height:1.7}
.hem-end{max-width:var(--max);margin:0 auto;padding:16px var(--pad) 28px;border-top:1px solid rgba(244,241,232,.18);font-size:12.5px;color:#9fabc6}

.tag{position:fixed;right:22px;bottom:22px;z-index:250;width:min(360px,calc(100vw - 32px));background:var(--linen);border:1px solid var(--indigo);padding:30px 20px 16px;font-family:var(--ui);font-size:14px;line-height:1.5;box-shadow:8px 8px 0 var(--indigo);transform-origin:50% 0;animation:swing 1.6s var(--ease) both}
@keyframes swing{0%{opacity:0;transform:translateY(-18px) rotate(-6deg)}40%{opacity:1;transform:rotate(3deg)}70%{transform:rotate(-1.2deg)}100%{transform:rotate(0)}}
.tag[hidden]{display:none}
.tag-hole{position:absolute;top:10px;left:50%;width:12px;height:12px;margin-left:-6px;border-radius:50%;border:1px solid var(--indigo);background:var(--linen-2)}
.tag-h{margin:0 0 6px;font-family:var(--display);font-style:italic;font-weight:700;font-size:1.5rem;color:var(--indigo);text-align:center}
.tag p{margin:0 0 12px;color:var(--ink-2)}
.tag-opts{border:1px dashed var(--vat);margin:0 0 12px;padding:8px 12px;display:grid;gap:6px}
.tag-opts[hidden]{display:none}
.tag-opts legend{font-weight:700;font-size:12.5px;color:var(--vat);padding:0 4px}
.tag-opts label{display:flex;gap:8px;align-items:center;font-weight:600}
.tag-opts input{accent-color:var(--indigo);width:16px;height:16px}
.tag-act{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.tag-act button:not(.ink-btn){border:1px solid var(--indigo);background:transparent;color:var(--indigo);padding:8px 12px;font-weight:700;font-size:13.5px;cursor:pointer}
.tag-act button:not(.ink-btn):hover{background:var(--wash)}
.tag-act .ink-btn{padding:8px 14px;font-size:13.5px}

@media (max-width:1080px){
  .sb-row{grid-template-columns:repeat(3,minmax(0,1fr))}
  .team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hem-in{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .lead{grid-template-columns:1fr}
  .almanac{grid-template-columns:1fr}
  .almanac > div + div{border-left:0;border-top:1px solid var(--thread)}
  .drop{grid-template-columns:1fr 1fr}
  .drop-col:nth-child(2){margin-top:80px}
  .keep-list{grid-template-columns:1fr}
  .story{grid-template-columns:1fr}
  .story-edge{position:static;flex-direction:row;justify-content:flex-start;padding:10px 14px;gap:16px}
  .edge-sw{width:34px;height:34px}
  .story-edge p{writing-mode:horizontal-tb;transform:none}
  .story-grid{grid-template-columns:1fr}
  .care{position:static}
  .ws{grid-template-columns:1fr}
  .ws-toc{position:static}
  .about,.contact{grid-template-columns:1fr}
}
@media (max-width:720px){
  .mast{padding-top:26px}
  .mast-menu{display:block}
  .sections{display:none}
  .sections.is-open{display:block}
  .sections ul{flex-direction:column;align-items:stretch;padding:0}
  .sections a{padding:13px var(--pad);border-top:1px solid var(--thread)}
  .drop{grid-template-columns:1fr}
  .drop-col:nth-child(2){margin-top:0}
  .drop{gap:20px}
  .sb-row{grid-template-columns:1fr 1fr}
  .next > div{grid-template-columns:1fr}
  .team{grid-template-columns:1fr}
  .hem-in{grid-template-columns:1fr}
  .pb-e{grid-template-columns:52px minmax(0,1fr)}
  .pb-sw{display:none}
  .pb-no{font-size:2rem}
  .head-sw{width:70px;height:70px}
  .desk-list div{grid-template-columns:1fr;gap:2px}
  .keep-list li{grid-template-columns:60px 1fr;row-gap:6px}
  .dt-d{width:60px;height:60px;font-size:24px}
  .dt-c{grid-column:2;justify-self:start}
  .story-text{font-size:17.5px}
  .selvedge{font-size:12.5px}
  .sel-sk{display:block;margin:0}
}
@media (max-width:420px){
  .mast-big{font-size:clamp(4rem,21vw,5.2rem)}
  .mast-menu{position:static;margin:14px auto 0}
  .tag{right:12px;bottom:12px;box-shadow:5px 5px 0 var(--indigo)}
  .tag-act button{flex:1}
  .sb-row{grid-template-columns:1fr 1fr;gap:12px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

sup{line-height:0;vertical-align:.45em}
