.logo-img[data-v-087763a1],.logo-wrapper[data-v-087763a1]{cursor:pointer}.nav-links[data-v-087763a1]{gap:24px}.nav-btn[data-v-087763a1]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:6px;text-decoration:none;color:var(--text-muted);padding:6px 2px;position:relative;-webkit-transition:color .2s ease;transition:color .2s ease}.nav-num[data-v-087763a1]{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.06em;opacity:.55}.nav-label[data-v-087763a1]{font-family:var(--font-sans);font-size:.92rem;font-weight:500;letter-spacing:-.005em;position:relative}.nav-label[data-v-087763a1]:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:left center;transform-origin:left center;-webkit-transition:-webkit-transform .25s ease;transition:-webkit-transform .25s ease;transition:transform .25s ease;transition:transform .25s ease,-webkit-transform .25s ease}.nav-btn[data-v-087763a1]:hover{color:var(--text)}.nav-btn:hover .nav-label[data-v-087763a1]:after{-webkit-transform:scaleX(1);transform:scaleX(1)}.nav-btn-active[data-v-087763a1]{color:var(--text)}.nav-btn-active .nav-label[data-v-087763a1]:after{-webkit-transform:scaleX(1);transform:scaleX(1);background:var(--suggest-fg)}.nav-right[data-v-087763a1]{gap:14px}.theme-btn[data-v-087763a1]{background:transparent;border:1px solid var(--rule);width:34px;height:34px;border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--text-muted);cursor:pointer;-webkit-transition:color .2s ease,border-color .2s ease,-webkit-transform .2s ease;transition:color .2s ease,border-color .2s ease,-webkit-transform .2s ease;transition:color .2s ease,border-color .2s ease,transform .2s ease;transition:color .2s ease,border-color .2s ease,transform .2s ease,-webkit-transform .2s ease;outline:none}.theme-btn[data-v-087763a1]:hover{color:var(--text);border-color:var(--text-muted);-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}.theme-btn[data-v-087763a1]:focus-visible{border-color:var(--suggest-fg);-webkit-box-shadow:0 0 0 2px var(--suggest-bg);box-shadow:0 0 0 2px var(--suggest-bg)}.contact-cta[data-v-087763a1]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--text);text-decoration:none;padding:8px 16px;border:1px solid var(--text);border-radius:3px;-webkit-transition:background .2s ease,color .2s ease;transition:background .2s ease,color .2s ease}.contact-cta[data-v-087763a1]:hover{background:var(--text);color:var(--paper)}.contact-cta:hover .contact-arrow[data-v-087763a1]{-webkit-transform:translateX(2px);transform:translateX(2px)}.contact-arrow[data-v-087763a1]{display:inline-block;-webkit-transition:-webkit-transform .2s ease;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}.drawer-eyebrow[data-v-087763a1]{margin:0}.drawer-item[data-v-087763a1]{border-radius:3px!important;margin-bottom:4px;padding:8px 14px!important}.drawer-num[data-v-087763a1]{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;color:var(--text-soft)}.drawer-label[data-v-087763a1]{font-family:var(--font-serif)!important;font-size:1.2rem!important;font-weight:500!important;letter-spacing:-.02em!important;color:var(--text)!important}.drawer-cta[data-v-087763a1]{font-family:var(--font-sans)!important;font-size:.92rem!important;font-weight:600!important;color:var(--text)!important}@media (max-width:600px){.logo-img[data-v-087763a1]{max-width:100px}}.footer-dark[data-v-5293bded]{background:var(--paper)!important;border-top:1px solid var(--rule)!important}.footer-light[data-v-5293bded]{background:var(--paper-warm)!important;border-top:1px solid var(--rule)!important}.signoff[data-v-5293bded]{padding:36px 0 22px;max-width:720px}.signoff-eyebrow[data-v-5293bded]{margin-bottom:14px}.signoff-line[data-v-5293bded]{font-family:var(--font-serif)!important;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:400;font-style:italic;line-height:1.3;letter-spacing:-.018em;color:var(--text);margin:0}.period[data-v-5293bded]{color:var(--suggest-fg);font-style:normal}.footer-name[data-v-5293bded]{font-family:var(--font-serif)!important;font-size:1.2rem;font-weight:500;letter-spacing:-.015em;color:var(--text);margin-bottom:4px}.footer-tagline[data-v-5293bded]{font-family:var(--font-mono)!important;font-size:.66rem;letter-spacing:.14em;color:var(--text-soft)}.footer-nav[data-v-5293bded]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:18px}.footer-nav-btn[data-v-5293bded]{font-family:var(--font-sans);font-weight:500;font-size:.85rem;letter-spacing:-.005em;color:var(--text-muted);text-decoration:none;-webkit-transition:color .2s ease;transition:color .2s ease;padding:4px 0}.footer-nav-btn[data-v-5293bded]:hover{color:var(--text)}.social-btn[data-v-5293bded]{background:transparent;border:1px solid var(--rule);width:34px;height:34px;border-radius:50%;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--text-muted);cursor:pointer;margin:0 4px;-webkit-transition:color .2s ease,border-color .2s ease,-webkit-transform .2s ease;transition:color .2s ease,border-color .2s ease,-webkit-transform .2s ease;transition:color .2s ease,border-color .2s ease,transform .2s ease;transition:color .2s ease,border-color .2s ease,transform .2s ease,-webkit-transform .2s ease;outline:none}.social-btn[data-v-5293bded]:hover{color:var(--text);border-color:var(--text-muted);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.social-btn[data-v-5293bded]:focus-visible{border-color:var(--suggest-fg);-webkit-box-shadow:0 0 0 2px var(--suggest-bg);box-shadow:0 0 0 2px var(--suggest-bg)}.footer-copyright[data-v-5293bded]{font-family:var(--font-mono)!important;font-size:.62rem;letter-spacing:.14em;color:var(--text-soft)}@media (max-width:600px){.signoff[data-v-5293bded]{padding:28px 0 18px}.signoff-line[data-v-5293bded]{font-size:clamp(1.15rem,5vw,1.4rem);line-height:1.35}.footer-nav[data-v-5293bded]{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:12px 18px}.footer-copyright[data-v-5293bded]{font-size:.56rem;letter-spacing:.1em}}:root{--font-serif:"Newsreader","Iowan Old Style","Hoefler Text",Garamond,Georgia,serif;--font-sans:"Inter",ui-sans-serif,system-ui,"SF Pro Text","Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--ink:#0b0f17;--text:#000;--text-muted:#4a5468;--text-soft:#6b7385;--paper:#fff;--paper-warm:#fafafb;--rule:rgba(13,19,32,0.1);--rule-soft:rgba(13,19,32,0.06);--strike:#9aa0ac;--suggest-bg:#e8f5e9;--suggest-fg:#1e5631;--suggest-ink:#173b2e}#app.theme-ink{--ink:#fff;--text:#e8edf6;--text-muted:#98a0b3;--text-soft:#6f7689;--paper:#0b0f17;--paper-warm:#15191f;--rule:rgba(232,237,246,0.1);--rule-soft:rgba(232,237,246,0.06);--strike:#5c6273;--suggest-bg:#173b2e;--suggest-fg:#b8e6c2;--suggest-ink:#e8f5e9}html{scroll-behavior:smooth}#app{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.v-application .container{padding-left:22px;padding-right:22px}@media (min-width:600px){.v-application .container{padding-left:28px;padding-right:28px}}@media (min-width:960px){.v-application .container{padding-left:36px;padding-right:36px}}.font-display,.v-application h1,.v-application h2{font-family:var(--font-serif)!important;-webkit-font-feature-settings:"kern" 1,"liga" 1,"calt" 1;font-feature-settings:"kern" 1,"liga" 1,"calt" 1}.font-serif{font-family:var(--font-serif)!important}.font-sans{font-family:var(--font-sans)!important}.font-mono{font-family:var(--font-mono)!important;-webkit-font-feature-settings:"kern" 1;font-feature-settings:"kern" 1}.editorial-eyebrow{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft)}.editorial-rule{border:0;border-top:1px solid var(--rule);margin:0}.page-fade-enter-active,.page-fade-leave-active{-webkit-transition:opacity .3s ease,-webkit-transform .3s ease;transition:opacity .3s ease,-webkit-transform .3s ease;transition:opacity .3s ease,transform .3s ease;transition:opacity .3s ease,transform .3s ease,-webkit-transform .3s ease}.page-fade-enter{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}.page-fade-leave-active{opacity:0;-webkit-transform:translateY(-8px);transform:translateY(-8px)}.reveal{opacity:0;-webkit-transform:translateY(24px);transform:translateY(24px);-webkit-transition:opacity .7s cubic-bezier(.4,0,.2,1),-webkit-transform .7s cubic-bezier(.4,0,.2,1);transition:opacity .7s cubic-bezier(.4,0,.2,1),-webkit-transform .7s cubic-bezier(.4,0,.2,1);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1),-webkit-transform .7s cubic-bezier(.4,0,.2,1)}.reveal.is-visible{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}::-moz-selection{background:var(--suggest-bg);color:var(--suggest-ink)}::selection{background:var(--suggest-bg);color:var(--suggest-ink)}.about-section[data-v-69cc1446]{padding:4rem 0 3rem;max-width:920px;margin:0 auto}.section-mast[data-v-69cc1446]{margin-bottom:12px}.section-mast .editorial-rule[data-v-69cc1446]{margin-top:8px}.about-title[data-v-69cc1446]{font-family:var(--font-serif)!important;font-size:clamp(1.8rem,4vw,2.6rem);font-weight:500;letter-spacing:-.028em;line-height:1.15;color:var(--text);margin:0}.period[data-v-69cc1446]{color:var(--suggest-fg)}.about-text[data-v-69cc1446]{font-family:var(--font-serif);font-size:1.06rem;line-height:1.78;color:var(--text);letter-spacing:-.003em}.about-text p[data-v-69cc1446]{margin-bottom:1rem}.about-text p[data-v-69cc1446]:last-child{margin-bottom:0}.lede[data-v-69cc1446]:first-letter{font-family:var(--font-serif);font-size:3.2em;float:left;line-height:.86;padding-right:8px;padding-top:4px;font-weight:500;color:var(--text)}.inline-link[data-v-69cc1446]{color:var(--text);text-decoration:none;background-image:-webkit-gradient(linear,left top,left bottom,from(currentColor),to(currentColor));background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-repeat:no-repeat;background-position:0 95%;-webkit-transition:color .2s ease;transition:color .2s ease}.inline-link[data-v-69cc1446]:hover{color:var(--suggest-fg)}.colophon[data-v-69cc1446]{background:var(--paper-warm);border:1px solid var(--rule);padding:1.4rem 1.4rem 1.2rem;border-radius:4px;height:100%}.colophon-title[data-v-69cc1446]{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-soft);margin-bottom:14px}.colophon-list[data-v-69cc1446]{margin:0;display:grid;grid-template-columns:minmax(80px,auto) 1fr;-webkit-column-gap:14px;-moz-column-gap:14px;column-gap:14px;row-gap:9px;font-size:.86rem}.colophon-list dt[data-v-69cc1446]{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.12em;color:var(--text-soft);text-transform:uppercase;-ms-flex-item-align:baseline;align-self:baseline;padding-top:3px}.colophon-list dd[data-v-69cc1446]{margin:0;font-family:var(--font-serif);color:var(--text);font-size:.96rem;line-height:1.4}.dispatch-wrap[data-v-69cc1446]{margin-top:56px;padding-top:28px;border-top:1px solid var(--rule)}.dispatch-eyebrow[data-v-69cc1446]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;margin-bottom:18px}.signal-dot[data-v-69cc1446]{width:7px;height:7px;border-radius:50%;background:var(--suggest-fg);-webkit-animation:signal-pulse-data-v-69cc1446 2.4s ease-in-out infinite;animation:signal-pulse-data-v-69cc1446 2.4s ease-in-out infinite}@-webkit-keyframes signal-pulse-data-v-69cc1446{0%,to{opacity:1}50%{opacity:.3}}@keyframes signal-pulse-data-v-69cc1446{0%,to{opacity:1}50%{opacity:.3}}.dispatch-list[data-v-69cc1446]{list-style:none;padding:0;margin:0}.dispatch-item[data-v-69cc1446]{padding:0}.dispatch-link[data-v-69cc1446]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:14px;padding:14px 0;text-decoration:none;color:var(--text);-webkit-transition:color .2s ease;transition:color .2s ease}.dispatch-link[data-v-69cc1446]:hover{color:var(--suggest-fg)}.dispatch-name[data-v-69cc1446]{font-family:var(--font-serif)!important;font-size:1.4rem;font-weight:500;letter-spacing:-.018em;white-space:nowrap}.dispatch-rule[data-v-69cc1446]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:1px;background:var(--rule);-ms-flex-item-align:center;align-self:center;min-width:12px}.dispatch-desc[data-v-69cc1446]{font-family:var(--font-serif);font-size:.92rem;color:var(--text-muted);font-style:italic;text-align:right}.postcard[data-v-69cc1446]{margin-top:56px;display:grid;grid-template-columns:minmax(220px,.9fr) 1fr;gap:24px;background:var(--paper-warm);border:1px solid var(--rule);border-radius:4px;overflow:hidden}.postcard-image[data-v-69cc1446]{position:relative;min-height:220px}.postcard-image img[data-v-69cc1446]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;-webkit-filter:grayscale(.2) contrast(1.02);filter:grayscale(.2) contrast(1.02)}.postcard-meta[data-v-69cc1446]{padding:22px 26px 22px 0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.postcard-city[data-v-69cc1446]{font-family:var(--font-serif)!important;font-size:clamp(1.5rem,3.4vw,2rem);font-weight:500;letter-spacing:-.02em;line-height:1.1;color:var(--text);margin:6px 0 8px}.postcard-sub[data-v-69cc1446]{font-family:var(--font-serif)!important;font-style:italic;font-size:.95rem;color:var(--text-muted);margin:0}@media (max-width:720px){.postcard[data-v-69cc1446]{grid-template-columns:1fr}.postcard-meta[data-v-69cc1446]{padding:18px 20px 22px}.dispatch-link[data-v-69cc1446]{-ms-flex-wrap:wrap;flex-wrap:wrap;gap:4px 14px}.dispatch-desc[data-v-69cc1446]{text-align:left;-ms-flex-preferred-size:100%;flex-basis:100%}}@media (max-width:600px){.about-section[data-v-69cc1446]{padding:2.5rem 0 2rem}.about-title[data-v-69cc1446]{font-size:clamp(1.6rem,7vw,2rem)}.about-text[data-v-69cc1446]{font-size:1rem;line-height:1.7}.lede[data-v-69cc1446]:first-letter{font-size:2.8em;padding-right:6px;padding-top:3px}.colophon[data-v-69cc1446]{padding:1.1rem 1.2rem}.colophon-list[data-v-69cc1446]{grid-template-columns:1fr;row-gap:4px}.colophon-list dt[data-v-69cc1446]{padding-top:6px}.colophon-list dd[data-v-69cc1446]{font-size:.95rem}.dispatch-name[data-v-69cc1446]{font-size:1.2rem}}.suggestion-frame[data-v-7607d8ef]{position:relative;width:100%;max-width:620px;padding:22px 26px 18px;border-radius:6px;font-family:var(--font-serif);-webkit-transition:background .25s ease,border-color .25s ease;transition:background .25s ease,border-color .25s ease}.frame-dark[data-v-7607d8ef],.frame-light[data-v-7607d8ef]{background:var(--paper-warm);border:1px solid var(--rule)}.frame-header[data-v-7607d8ef]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);margin-bottom:12px;-ms-flex-wrap:wrap;flex-wrap:wrap}.frame-header[data-v-7607d8ef],.frame-tag[data-v-7607d8ef]{-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}.frame-tag[data-v-7607d8ef]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-weight:500}.frame-mode[data-v-7607d8ef]{font-weight:600;color:var(--text-muted)}.dot[data-v-7607d8ef]{width:6px;height:6px;border-radius:50%;background:var(--suggest-fg);display:inline-block;-webkit-animation:pulse-dot-data-v-7607d8ef 2.4s ease-in-out infinite;animation:pulse-dot-data-v-7607d8ef 2.4s ease-in-out infinite}@-webkit-keyframes pulse-dot-data-v-7607d8ef{0%,to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:.35;-webkit-transform:scale(.85);transform:scale(.85)}}@keyframes pulse-dot-data-v-7607d8ef{0%,to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:.35;-webkit-transform:scale(.85);transform:scale(.85)}}.frame-rule[data-v-7607d8ef]{border:0;border-top:1px solid var(--rule-soft);margin:0 0 14px}.manuscript[data-v-7607d8ef]{font-family:var(--font-serif);font-size:clamp(.97rem,1.7vw,1.08rem);line-height:1.65;color:var(--text);letter-spacing:-.005em;min-height:17em}.ms-line[data-v-7607d8ef]{display:grid;grid-template-columns:44px 1fr;gap:14px;margin:0 0 10px;padding:4px 0;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;-webkit-transition:opacity .4s ease;transition:opacity .4s ease;min-height:4em}.ms-line[data-v-7607d8ef]:last-child{margin-bottom:0}.ms-num[data-v-7607d8ef]{font-size:.66rem;letter-spacing:.08em;color:var(--text-soft);font-weight:500;padding-top:4px}.ms-text[data-v-7607d8ef]{display:block}.is-accepted[data-v-7607d8ef]{opacity:.86;-webkit-animation:accept-settle-data-v-7607d8ef .5s ease both;animation:accept-settle-data-v-7607d8ef .5s ease both}@-webkit-keyframes accept-settle-data-v-7607d8ef{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:.86;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes accept-settle-data-v-7607d8ef{0%{opacity:0;-webkit-transform:translateY(-4px);transform:translateY(-4px)}to{opacity:.86;-webkit-transform:translateY(0);transform:translateY(0)}}.is-accepted .ms-old[data-v-7607d8ef]{color:var(--strike);text-decoration:line-through;-webkit-text-decoration-color:var(--strike);text-decoration-color:var(--strike);text-decoration-thickness:1px;margin-right:.3ch}.is-accepted .ms-new[data-v-7607d8ef]{background:var(--suggest-bg);color:var(--suggest-ink);padding:.04em .28em;border-radius:2px;font-style:italic}.is-active[data-v-7607d8ef]{color:var(--text)}.body-old[data-v-7607d8ef]{display:inline;position:relative;color:var(--text);-webkit-transition:color .45s ease,opacity .5s ease;transition:color .45s ease,opacity .5s ease}.body-old.struck[data-v-7607d8ef]{color:var(--strike)}.body-old.struck[data-v-7607d8ef]:after{content:"";position:absolute;left:0;right:0;top:52%;height:1.5px;background:var(--strike);-webkit-transform-origin:left center;transform-origin:left center;-webkit-animation:strike-data-v-7607d8ef .45s cubic-bezier(.45,.05,.2,1) forwards;animation:strike-data-v-7607d8ef .45s cubic-bezier(.45,.05,.2,1) forwards}@-webkit-keyframes strike-data-v-7607d8ef{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes strike-data-v-7607d8ef{0%{-webkit-transform:scaleX(0);transform:scaleX(0)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.body-old.gone[data-v-7607d8ef]{opacity:0}.body-new[data-v-7607d8ef]{display:inline;margin-left:.4ch;padding:.04em .28em;background:var(--suggest-bg);color:var(--suggest-ink);border-radius:2px;-webkit-animation:flip-in-data-v-7607d8ef .5s cubic-bezier(.2,0,0,1.05) both;animation:flip-in-data-v-7607d8ef .5s cubic-bezier(.2,0,0,1.05) both;-webkit-transform-origin:left center;transform-origin:left center;font-style:italic}@-webkit-keyframes flip-in-data-v-7607d8ef{0%{opacity:0;-webkit-transform:perspective(600px) rotateX(-90deg) translateY(-3px);transform:perspective(600px) rotateX(-90deg) translateY(-3px)}60%{opacity:1;-webkit-transform:perspective(600px) rotateX(10deg) translateY(0);transform:perspective(600px) rotateX(10deg) translateY(0)}to{opacity:1;-webkit-transform:perspective(600px) rotateX(0deg);transform:perspective(600px) rotateX(0deg)}}@keyframes flip-in-data-v-7607d8ef{0%{opacity:0;-webkit-transform:perspective(600px) rotateX(-90deg) translateY(-3px);transform:perspective(600px) rotateX(-90deg) translateY(-3px)}60%{opacity:1;-webkit-transform:perspective(600px) rotateX(10deg) translateY(0);transform:perspective(600px) rotateX(10deg) translateY(0)}to{opacity:1;-webkit-transform:perspective(600px) rotateX(0deg);transform:perspective(600px) rotateX(0deg)}}.caret[data-v-7607d8ef]{display:inline-block;width:1px;margin-left:1px;color:var(--text);font-weight:400;-webkit-animation:blink-data-v-7607d8ef 1.05s steps(1) infinite;animation:blink-data-v-7607d8ef 1.05s steps(1) infinite;font-style:normal}.caret-new[data-v-7607d8ef]{color:var(--suggest-ink)}@-webkit-keyframes blink-data-v-7607d8ef{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes blink-data-v-7607d8ef{0%,50%{opacity:1}51%,to{opacity:0}}.is-upcoming[data-v-7607d8ef]{opacity:.32}.upcoming-text[data-v-7607d8ef]{color:var(--text-soft);font-style:italic}.frame-note[data-v-7607d8ef]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;gap:10px;margin-top:10px;margin-left:58px;font-size:.7rem;letter-spacing:.03em;color:var(--text-soft);min-height:1.6em;opacity:0;-webkit-transform:translateX(-4px);transform:translateX(-4px);-webkit-transition:opacity .32s ease,-webkit-transform .32s ease;transition:opacity .32s ease,-webkit-transform .32s ease;transition:opacity .32s ease,transform .32s ease;transition:opacity .32s ease,transform .32s ease,-webkit-transform .32s ease}.frame-note.is-visible[data-v-7607d8ef]{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}.note-rule[data-v-7607d8ef]{display:inline-block;width:14px;height:1px;background:var(--text-soft);margin-top:8px;-ms-flex-negative:0;flex-shrink:0}.frame-actions[data-v-7607d8ef]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;margin-top:14px;margin-left:58px;min-height:32px}.action-btn[data-v-7607d8ef]{font-family:var(--font-sans);font-size:.74rem;font-weight:600;letter-spacing:.02em;padding:6px 14px;border-radius:3px;border:1px solid transparent;background:transparent;cursor:pointer;opacity:0;-webkit-transform:translateY(4px);transform:translateY(4px);-webkit-transition:opacity .32s ease,background .18s ease,color .18s ease,border-color .18s ease,-webkit-transform .32s ease;transition:opacity .32s ease,background .18s ease,color .18s ease,border-color .18s ease,-webkit-transform .32s ease;transition:opacity .32s ease,transform .32s ease,background .18s ease,color .18s ease,border-color .18s ease;transition:opacity .32s ease,transform .32s ease,background .18s ease,color .18s ease,border-color .18s ease,-webkit-transform .32s ease;outline:none}.action-btn.visible[data-v-7607d8ef]{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}.action-btn[data-v-7607d8ef]:focus-visible{-webkit-box-shadow:0 0 0 2px var(--suggest-fg);box-shadow:0 0 0 2px var(--suggest-fg)}.action-accept[data-v-7607d8ef]{background:var(--suggest-ink);color:var(--paper);border-color:var(--suggest-ink)}.frame-dark .action-accept[data-v-7607d8ef]{border-color:var(--suggest-fg)}.action-accept[data-v-7607d8ef]:hover,.frame-dark .action-accept[data-v-7607d8ef]{background:var(--suggest-fg);color:var(--suggest-ink)}.action-accept.flash[data-v-7607d8ef]{-webkit-animation:accept-flash-data-v-7607d8ef .34s ease;animation:accept-flash-data-v-7607d8ef .34s ease}@-webkit-keyframes accept-flash-data-v-7607d8ef{0%{-webkit-box-shadow:0 0 0 0 var(--suggest-fg);box-shadow:0 0 0 0 var(--suggest-fg)}60%{-webkit-box-shadow:0 0 0 8px transparent;box-shadow:0 0 0 8px transparent}to{-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent}}@keyframes accept-flash-data-v-7607d8ef{0%{-webkit-box-shadow:0 0 0 0 var(--suggest-fg);box-shadow:0 0 0 0 var(--suggest-fg)}60%{-webkit-box-shadow:0 0 0 8px transparent;box-shadow:0 0 0 8px transparent}to{-webkit-box-shadow:0 0 0 0 transparent;box-shadow:0 0 0 0 transparent}}.action-explain[data-v-7607d8ef],.action-reject[data-v-7607d8ef]{color:var(--text-muted);border-color:var(--rule)}.action-explain[data-v-7607d8ef]:hover,.action-reject[data-v-7607d8ef]:hover{color:var(--text);border-color:var(--text-muted)}.action-explain[data-v-7607d8ef]{border-color:transparent}.action-reject[data-v-7607d8ef]{-webkit-transition-delay:.04s;transition-delay:.04s}.action-explain[data-v-7607d8ef]{-webkit-transition-delay:.08s;transition-delay:.08s}.action-spacer[data-v-7607d8ef]{-webkit-box-flex:1;-ms-flex:1;flex:1}.action-hint[data-v-7607d8ef]{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px}.hint-dot[data-v-7607d8ef]{width:5px;height:5px;border-radius:50%;background:var(--text-soft);-webkit-animation:hint-pulse-data-v-7607d8ef 1.4s ease-in-out infinite;animation:hint-pulse-data-v-7607d8ef 1.4s ease-in-out infinite}@-webkit-keyframes hint-pulse-data-v-7607d8ef{0%,to{opacity:.4}50%{opacity:1}}@keyframes hint-pulse-data-v-7607d8ef{0%,to{opacity:.4}50%{opacity:1}}@media (max-width:600px){.suggestion-frame[data-v-7607d8ef]{padding:16px 14px 14px;border-radius:4px}.frame-header[data-v-7607d8ef]{font-size:.6rem;letter-spacing:.11em;margin-bottom:10px;row-gap:4px}.frame-tag[data-v-7607d8ef]{gap:6px}.ms-line[data-v-7607d8ef]{grid-template-columns:30px 1fr;gap:8px;padding:2px 0;margin:0 0 8px;min-height:5.2em}.manuscript[data-v-7607d8ef]{font-size:.94rem;line-height:1.55;min-height:22em}.ms-num[data-v-7607d8ef]{font-size:.6rem;padding-top:3px}.frame-actions[data-v-7607d8ef],.frame-note[data-v-7607d8ef]{margin-left:38px}.frame-actions[data-v-7607d8ef]{-ms-flex-wrap:wrap;flex-wrap:wrap;gap:6px}.action-hint[data-v-7607d8ef]{font-size:.56rem;letter-spacing:.1em}.action-btn[data-v-7607d8ef]{font-size:.7rem;padding:5px 10px}.frame-note[data-v-7607d8ef]{font-size:.66rem;min-height:2em}}@media (max-width:380px){.suggestion-frame[data-v-7607d8ef]{padding:14px 12px 12px}.ms-line[data-v-7607d8ef]{grid-template-columns:26px 1fr;gap:6px;min-height:6em}.frame-actions[data-v-7607d8ef],.frame-note[data-v-7607d8ef]{margin-left:32px}.manuscript[data-v-7607d8ef]{font-size:.9rem;min-height:24em}}@media (prefers-reduced-motion:reduce){.action-btn[data-v-7607d8ef],.body-new[data-v-7607d8ef],.body-old.struck[data-v-7607d8ef]:after,.dot[data-v-7607d8ef],.hint-dot[data-v-7607d8ef],.is-accepted[data-v-7607d8ef],.note-text[data-v-7607d8ef]{-webkit-animation:none!important;animation:none!important}}.home-page[data-v-3be7c093]{min-height:100vh}.home-dark[data-v-3be7c093],.home-light[data-v-3be7c093]{background:var(--paper)}.hero[data-v-3be7c093]{min-height:90vh;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;padding-top:8px}.hero-container[data-v-3be7c093]{padding-top:56px;padding-bottom:48px}.hero-row[data-v-3be7c093]{min-height:60vh}.masthead[data-v-3be7c093]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:14px;margin-bottom:40px;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-soft);-webkit-animation:fadeUp-data-v-3be7c093 .5s ease both;animation:fadeUp-data-v-3be7c093 .5s ease both}.masthead-tag[data-v-3be7c093]{font-family:var(--font-mono);white-space:nowrap}.masthead-rule[data-v-3be7c093]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:1px;background:var(--rule)}.hero-text[data-v-3be7c093]{padding:8px 0}.hero-greeting[data-v-3be7c093]{margin-bottom:12px;-webkit-animation:fadeUp-data-v-3be7c093 .5s ease both;animation:fadeUp-data-v-3be7c093 .5s ease both}.hero-name[data-v-3be7c093]{font-family:var(--font-serif)!important;font-size:clamp(3.2rem,7vw,6rem);font-weight:500;line-height:.98;letter-spacing:-.035em;color:var(--text);margin-bottom:14px;-webkit-animation:fadeUp-data-v-3be7c093 .55s ease .08s both;animation:fadeUp-data-v-3be7c093 .55s ease .08s both}.period[data-v-3be7c093]{color:var(--suggest-fg)}.hero-role[data-v-3be7c093]{font-family:var(--font-mono)!important;font-size:.78rem;letter-spacing:.16em;color:var(--text-muted);margin-bottom:22px;-webkit-animation:fadeUp-data-v-3be7c093 .55s ease .15s both;animation:fadeUp-data-v-3be7c093 .55s ease .15s both}.hero-bio[data-v-3be7c093]{font-family:var(--font-serif)!important;font-size:1.1rem;line-height:1.7;color:var(--text);max-width:540px;margin-bottom:32px;-webkit-animation:fadeUp-data-v-3be7c093 .6s ease .22s both;animation:fadeUp-data-v-3be7c093 .6s ease .22s both;letter-spacing:-.005em}.hero-link[data-v-3be7c093]{color:var(--text);text-decoration:none;background-image:-webkit-gradient(linear,left top,left bottom,from(currentColor),to(currentColor));background-image:linear-gradient(currentColor,currentColor);background-size:100% 1px;background-repeat:no-repeat;background-position:0 95%;-webkit-transition:background-position .25s ease,color .2s ease;transition:background-position .25s ease,color .2s ease;white-space:nowrap}.hero-link[data-v-3be7c093]:hover{color:var(--suggest-fg)}.hero-animation[data-v-3be7c093]{margin-bottom:36px;-webkit-animation:fadeUp-data-v-3be7c093 .65s ease .32s both;animation:fadeUp-data-v-3be7c093 .65s ease .32s both}.hero-actions[data-v-3be7c093]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:10px;-webkit-animation:fadeUp-data-v-3be7c093 .6s ease .4s both;animation:fadeUp-data-v-3be7c093 .6s ease .4s both}.hero-btn-primary[data-v-3be7c093]{font-weight:600!important;padding:0 22px!important}.hero-btn-primary[data-v-3be7c093],.hero-btn-secondary[data-v-3be7c093]{border-radius:4px!important;text-transform:none!important;font-family:var(--font-sans)!important;letter-spacing:0!important;font-size:.92rem!important;height:46px!important}.hero-btn-secondary[data-v-3be7c093]{font-weight:500!important;padding:0 20px!important;border-color:var(--rule)!important;color:var(--text)!important}.portrait-figure[data-v-3be7c093]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0;-webkit-animation:fadeIn-data-v-3be7c093 .8s ease .2s both;animation:fadeIn-data-v-3be7c093 .8s ease .2s both}.portrait-frame[data-v-3be7c093]{position:relative;width:280px;height:340px;padding:14px 14px 18px;background:var(--paper-warm);border:1px solid var(--rule);-webkit-box-shadow:0 1px 0 var(--rule);box-shadow:0 1px 0 var(--rule)}.portrait-img[data-v-3be7c093]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;-webkit-filter:grayscale(.18) contrast(1.02);filter:grayscale(.18) contrast(1.02);-webkit-transition:-webkit-filter .4s ease;transition:-webkit-filter .4s ease;transition:filter .4s ease;transition:filter .4s ease,-webkit-filter .4s ease}.portrait-frame:hover .portrait-img[data-v-3be7c093]{-webkit-filter:grayscale(0) contrast(1);filter:grayscale(0) contrast(1)}.portrait-caption[data-v-3be7c093]{margin-top:12px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-soft);text-align:center;max-width:280px;font-style:normal}.stats-row[data-v-3be7c093]{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:64px;padding-top:28px;border-top:1px solid var(--rule);-webkit-animation:fadeUp-data-v-3be7c093 .6s ease .48s both;animation:fadeUp-data-v-3be7c093 .6s ease .48s both}.stat-item[data-v-3be7c093]{padding:8px 22px;border-right:1px solid var(--rule-soft)}.stat-item[data-v-3be7c093]:last-child{border-right:none}.stat-number[data-v-3be7c093]{font-family:var(--font-serif)!important;font-size:2.6rem;font-weight:500;letter-spacing:-.03em;color:var(--text);line-height:1;margin-bottom:10px}.stat-label[data-v-3be7c093]{font-family:var(--font-mono)!important;font-size:.64rem;font-weight:500;letter-spacing:.16em;color:var(--text-soft)}@-webkit-keyframes fadeUp-data-v-3be7c093{0%{opacity:0;-webkit-transform:translateY(16px);transform:translateY(16px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeUp-data-v-3be7c093{0%{opacity:0;-webkit-transform:translateY(16px);transform:translateY(16px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeIn-data-v-3be7c093{0%{opacity:0;-webkit-transform:scale(.97);transform:scale(.97)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes fadeIn-data-v-3be7c093{0%{opacity:0;-webkit-transform:scale(.97);transform:scale(.97)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@media (prefers-reduced-motion:reduce){.hero-actions[data-v-3be7c093],.hero-animation[data-v-3be7c093],.hero-bio[data-v-3be7c093],.hero-greeting[data-v-3be7c093],.hero-name[data-v-3be7c093],.hero-role[data-v-3be7c093],.masthead[data-v-3be7c093],.portrait-figure[data-v-3be7c093],.stats-row[data-v-3be7c093]{-webkit-animation:none;animation:none;opacity:1;-webkit-transform:none;transform:none}}@media (max-width:960px){.hero[data-v-3be7c093]{min-height:auto;padding:8px 0 32px}.hero-container[data-v-3be7c093]{padding-top:32px}.hero-row[data-v-3be7c093]{min-height:auto}.masthead[data-v-3be7c093]{margin-bottom:28px}.hero-text[data-v-3be7c093]{padding:8px 0}.stats-row[data-v-3be7c093]{margin-top:40px;grid-template-columns:1fr;gap:0}.stat-item[data-v-3be7c093]{border-right:none;border-bottom:1px solid var(--rule-soft);padding:14px 0}.stat-item[data-v-3be7c093]:last-child{border-bottom:none}}@media (max-width:600px){.hero-container[data-v-3be7c093]{padding-top:24px}.masthead[data-v-3be7c093]{gap:10px;margin-bottom:22px;font-size:.6rem;letter-spacing:.14em}.hero-name[data-v-3be7c093]{font-size:clamp(2.6rem,11vw,3.4rem);line-height:1.02}.hero-role[data-v-3be7c093]{font-size:.7rem;letter-spacing:.12em}.hero-bio[data-v-3be7c093]{font-size:1rem;line-height:1.6}.hero-animation[data-v-3be7c093]{margin-bottom:28px}.hero-actions[data-v-3be7c093]{width:100%}.hero-btn-primary[data-v-3be7c093],.hero-btn-secondary[data-v-3be7c093]{-webkit-box-flex:1;-ms-flex:1;flex:1;min-width:0;padding:0 14px!important;font-size:.86rem!important}.hero-actions .ml-2[data-v-3be7c093]{margin-left:0!important}.stat-item[data-v-3be7c093]{padding:14px 4px}.stat-number[data-v-3be7c093]{font-size:2.2rem}}.portfolio-page[data-v-52403bf1]{min-height:100vh;background:var(--paper)}.section-header[data-v-52403bf1]{padding:4.5rem 0 2.5rem}.mast-row[data-v-52403bf1]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;margin-bottom:18px}.mast-row .editorial-eyebrow[data-v-52403bf1]{white-space:nowrap}.mast-row .editorial-rule[data-v-52403bf1]{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0}.section-title[data-v-52403bf1]{font-family:var(--font-serif)!important;font-size:clamp(2.2rem,5.4vw,3.8rem);font-weight:500;letter-spacing:-.032em;line-height:1.05;color:var(--text);margin:0 0 16px}.period[data-v-52403bf1]{color:var(--suggest-fg)}.section-desc[data-v-52403bf1]{font-family:var(--font-serif)!important;font-size:1.05rem;line-height:1.65;color:var(--text-muted);max-width:580px;margin:0}.project-col[data-v-52403bf1]{padding:12px}.project-card[data-v-52403bf1]{border-radius:4px;overflow:hidden;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;background:var(--paper);border:1px solid var(--rule);-webkit-transition:border-color .25s ease,-webkit-transform .28s cubic-bezier(.4,0,.2,1),-webkit-box-shadow .28s ease;transition:border-color .25s ease,-webkit-transform .28s cubic-bezier(.4,0,.2,1),-webkit-box-shadow .28s ease;transition:border-color .25s ease,transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s ease;transition:border-color .25s ease,transform .28s cubic-bezier(.4,0,.2,1),box-shadow .28s ease,-webkit-transform .28s cubic-bezier(.4,0,.2,1),-webkit-box-shadow .28s ease}.project-card-light[data-v-52403bf1]{background:var(--paper)}.project-card-dark[data-v-52403bf1]{background:var(--paper-warm)}.project-card[data-v-52403bf1]:hover{border-color:var(--text-muted);-webkit-transform:translateY(-3px);transform:translateY(-3px)}.project-media[data-v-52403bf1]{position:relative;overflow:hidden;background:var(--paper-warm)}.project-media-img[data-v-52403bf1]{width:100%;height:220px;-o-object-fit:cover;object-fit:cover;display:block;-webkit-transition:-webkit-transform .4s ease,-webkit-filter .4s ease;transition:-webkit-transform .4s ease,-webkit-filter .4s ease;transition:transform .4s ease,filter .4s ease;transition:transform .4s ease,filter .4s ease,-webkit-transform .4s ease,-webkit-filter .4s ease;-webkit-filter:grayscale(.1) contrast(1.02);filter:grayscale(.1) contrast(1.02)}.project-card:hover .project-media-img[data-v-52403bf1]{-webkit-transform:scale(1.025);transform:scale(1.025);-webkit-filter:grayscale(0) contrast(1);filter:grayscale(0) contrast(1)}.project-badge[data-v-52403bf1]{position:absolute;top:12px;left:12px;display:inline-block;padding:4px 10px;background:var(--paper);color:var(--text);font-size:.62rem;font-weight:600;letter-spacing:.14em;border:1px solid var(--rule);border-radius:2px}.project-content[data-v-52403bf1]{padding:18px 22px 22px;-webkit-box-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-top:1px solid var(--rule-soft)}.project-meta[data-v-52403bf1]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;font-size:.6rem;letter-spacing:.16em;color:var(--text-soft);margin-bottom:10px;text-transform:uppercase}.project-meta-rule[data-v-52403bf1]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:1px;background:var(--rule);max-width:60px}.project-header[data-v-52403bf1]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:.6rem;gap:8px}.project-title[data-v-52403bf1]{font-family:var(--font-serif)!important;font-size:1.55rem;font-weight:500;letter-spacing:-.022em;line-height:1.15;color:var(--text);-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0}.project-link-btn[data-v-52403bf1]{-ms-flex-negative:0;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:transparent;border:1px solid var(--rule);color:var(--text);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;-webkit-transition:background .18s ease,color .18s ease,border-color .18s ease;transition:background .18s ease,color .18s ease,border-color .18s ease;outline:none}.project-link-btn[data-v-52403bf1]:hover:not(:disabled){background:var(--text);color:var(--paper);border-color:var(--text)}.project-link-btn[data-v-52403bf1]:focus-visible{border-color:var(--suggest-fg);-webkit-box-shadow:0 0 0 2px var(--suggest-bg);box-shadow:0 0 0 2px var(--suggest-bg)}.project-link-btn.disabled[data-v-52403bf1],.project-link-btn[data-v-52403bf1]:disabled{color:var(--text-soft);cursor:not-allowed}.project-desc[data-v-52403bf1]{font-family:var(--font-serif)!important;font-size:.96rem;line-height:1.6;color:var(--text-muted);margin-bottom:1rem;-webkit-box-flex:1;-ms-flex:1;flex:1;letter-spacing:-.002em}.project-tags[data-v-52403bf1]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:6px;margin-top:auto}.tech-tag[data-v-52403bf1]{display:inline-block;padding:3px 8px;border-radius:2px;font-size:.64rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:transparent;color:var(--text-soft);border:1px solid var(--rule)}@media (max-width:960px){.section-header[data-v-52403bf1]{padding:3rem 0 1.5rem}}@media (max-width:600px){.section-header[data-v-52403bf1]{padding:2.5rem 0 1.5rem}.mast-row[data-v-52403bf1]{gap:10px;margin-bottom:14px}.section-title[data-v-52403bf1]{font-size:clamp(2rem,9vw,2.8rem)}.section-desc[data-v-52403bf1]{font-size:.98rem;line-height:1.55}.project-col[data-v-52403bf1]{padding:8px 0}.project-content[data-v-52403bf1]{padding:16px 18px 18px}.project-title[data-v-52403bf1]{font-size:1.35rem}.project-desc[data-v-52403bf1]{font-size:.94rem;line-height:1.55}.project-media-img[data-v-52403bf1]{height:180px}}.skills-page[data-v-84e52128]{min-height:100vh;background:var(--paper)}.section-header[data-v-84e52128]{padding:4.5rem 0 2.5rem}.mast-row[data-v-84e52128]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;margin-bottom:18px}.mast-row .editorial-eyebrow[data-v-84e52128]{white-space:nowrap}.mast-row .editorial-rule[data-v-84e52128]{-webkit-box-flex:1;-ms-flex:1;flex:1;margin:0}.section-title[data-v-84e52128]{font-family:var(--font-serif)!important;font-size:clamp(2.2rem,5.4vw,3.8rem);font-weight:500;letter-spacing:-.032em;line-height:1.05;color:var(--text);margin:0 0 16px}.period[data-v-84e52128]{color:var(--suggest-fg)}.section-desc[data-v-84e52128]{font-family:var(--font-serif)!important;font-size:1.05rem;line-height:1.65;color:var(--text-muted);max-width:580px;margin:0}.skill-category[data-v-84e52128]{margin-bottom:3rem}.category-header[data-v-84e52128]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:14px;margin-bottom:22px}.category-num[data-v-84e52128]{font-family:var(--font-mono)!important;font-size:.74rem;letter-spacing:.12em;color:var(--text-soft)}.category-title[data-v-84e52128]{font-family:var(--font-serif)!important;font-size:1.4rem;font-weight:500;letter-spacing:-.02em;color:var(--text);margin:0}.category-rule[data-v-84e52128]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:1px;background:var(--rule);-ms-flex-item-align:center;align-self:center;min-width:12px}.skill-card[data-v-84e52128]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:12px;padding:1.2rem .75rem;border-radius:4px;-webkit-transition:border-color .22s ease,-webkit-transform .22s ease;transition:border-color .22s ease,-webkit-transform .22s ease;transition:border-color .22s ease,transform .22s ease;transition:border-color .22s ease,transform .22s ease,-webkit-transform .22s ease;text-align:center;aspect-ratio:1;background:var(--paper);border:1px solid var(--rule)}.skill-card-dark[data-v-84e52128]{background:var(--paper-warm)}.skill-card[data-v-84e52128]:hover{border-color:var(--text-muted);-webkit-transform:translateY(-2px);transform:translateY(-2px)}.skill-icon[data-v-84e52128]{width:42px;height:42px;-o-object-fit:contain;object-fit:contain;-webkit-transition:-webkit-transform .22s ease;transition:-webkit-transform .22s ease;transition:transform .22s ease;transition:transform .22s ease,-webkit-transform .22s ease;-webkit-filter:grayscale(.15);filter:grayscale(.15)}.skill-card:hover .skill-icon[data-v-84e52128]{-webkit-transform:scale(1.06);transform:scale(1.06);-webkit-filter:grayscale(0);filter:grayscale(0)}.skill-name[data-v-84e52128]{font-family:var(--font-mono)!important;font-size:.68rem;font-weight:500;letter-spacing:.04em;color:var(--text-muted);line-height:1.2}@media (max-width:960px){.section-header[data-v-84e52128]{padding:3rem 0 1.5rem}}@media (max-width:600px){.section-header[data-v-84e52128]{padding:2.5rem 0 1.5rem}.mast-row[data-v-84e52128]{gap:10px;margin-bottom:14px}.section-title[data-v-84e52128]{font-size:clamp(2rem,9vw,2.8rem)}.section-desc[data-v-84e52128]{font-size:.98rem;line-height:1.55}.category-header[data-v-84e52128]{gap:10px;margin-bottom:16px}.category-title[data-v-84e52128]{font-size:1.25rem}.skill-card[data-v-84e52128]{padding:.9rem .5rem;gap:8px}.skill-icon[data-v-84e52128]{width:36px;height:36px}}