@font-face{font-family:Libre Caslon Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cdde600a8ab553b5-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Libre Caslon Display;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/66a476ca42fc796d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Libre Caslon Display Fallback;src:local("Times New Roman");ascent-override:105.36%;descent-override:28.89%;line-gap-override:0.00%;size-adjust:92.06%}.__className_1454fc{font-family:Libre Caslon Display,Libre Caslon Display Fallback;font-weight:400;font-style:normal}.__variable_1454fc{--ff-display:"Libre Caslon Display","Libre Caslon Display Fallback"}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/de32ab4287127d46-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/52c789a43a83edb4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/53a2694769c6fc4b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/109cd0be88080556-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/9f5251eb979d3d3e-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/b1c71187c85bb732-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/1d0267b201e007a0-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/192b55935f4e8c71-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/130fa9c96dfc2da9-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/a325990d5fec1d3f-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1392a8708768005c-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6a64cc3acf910f14-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/b42be14db559d7fe-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/84d7006d28fb721d-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/a8803dd9fdd15a53-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a905a6179bab2b08-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/273b2e150de7c4a9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/692781be160fc9d0-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/1e9fc5e960416d85-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e244d3ca994d3054-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/95fbe602f95f5b1d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d7fd192484976c0a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e478c40a90656953-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/680964f1bd688e24-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3e68fbb477d90635-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/eba0a4e5bf800560-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6adccebe1b78ad4c-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1ee996a2e7c8d770-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/581701471b17b157-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Spectral;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1eedfae966de4e1c-s.p.woff2) format("woff2");unicode-range:u+00??,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:Spectral Fallback;src:local("Times New Roman");ascent-override:96.46%;descent-override:42.17%;line-gap-override:0.00%;size-adjust:109.78%}.__className_cfa357{font-family:Spectral,Spectral Fallback}.__variable_cfa357{--ff-body:"Spectral","Spectral Fallback"}@font-face{font-family:Courier Prime;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/cb70882a0e1cc565-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Courier Prime;font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/2ae08af5ebbe6cc2-s.p.woff2) format("woff2");unicode-range:u+00??,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:Courier Prime;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/1fe023b8369d1a78-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Courier Prime;font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/5ea0084f89316569-s.p.woff2) format("woff2");unicode-range:u+00??,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:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d76bee0872897641-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/111c93f1bc244164-s.p.woff2) format("woff2");unicode-range:u+00??,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:Courier Prime;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/459821db3ab9c520-s.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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Courier Prime;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/828e2958d60bafae-s.p.woff2) format("woff2");unicode-range:u+00??,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:Courier Prime Fallback;src:local("Arial");ascent-override:58.08%;descent-override:25.41%;line-gap-override:0.00%;size-adjust:134.50%}.__className_1f2f78{font-family:Courier Prime,Courier Prime Fallback}.__variable_1f2f78{--ff-mono:"Courier Prime","Courier Prime Fallback"}:root{--paper:#f3ead8;--paper-2:#efe1c8;--paper-card:#faf4e6;--ink:#241f1b;--ink-soft:#5a5046;--ink-faint:#8a7e6f;--line:rgba(36,31,27,0.16);--line-strong:rgba(36,31,27,0.34);--paper-tint:rgba(36,31,27,0.04);--terracotta:#b5482f;--terracotta-2:#9a3a25;--green:#3f6b4e;--green-2:#2f5640;--ochre:#d98a2b;--ochre-2:#bd7415;--plum:#7a3b53;--accent:var(--terracotta);--accent-deep:var(--terracotta-2);--accent-ink:#faf4e6;--font-display:"Bodoni Moda","Libre Caslon Display",Georgia,serif;--font-body:"Newsreader",Georgia,"Times New Roman",serif;--font-mono:"Courier Prime","Courier New",monospace;--t-hero:clamp(3rem,1.2rem + 6.4vw,6.6rem);--t-h2:clamp(2.2rem,1.2rem + 4vw,4.2rem);--t-h3:clamp(1.5rem,1.1rem + 1.6vw,2.2rem);--t-lead:clamp(1.25rem,1.05rem + 0.9vw,1.7rem);--t-body:clamp(1rem,0.96rem + 0.2vw,1.12rem);--t-small:0.86rem;--t-micro:0.72rem;--s-1:0.5rem;--s-2:1rem;--s-3:1.5rem;--s-4:2rem;--s-5:3rem;--s-6:4rem;--s-8:6rem;--s-10:8rem;--r-sm:4px;--r-md:8px;--r-lg:14px;--r-arch:50% 50% 8px 8px/38% 38% 8px 8px;--ease:cubic-bezier(0.22,1,0.36,1);--ease-back:cubic-bezier(0.34,1.56,0.64,1);--dur:480ms;--dur-fast:240ms;--bloom-stroke:1.6;--card-shadow:0 18px 44px -28px rgba(36,31,27,0.55);--card-offset:0px;--grain-opacity:0.05;color-scheme:light}[data-theme=dark]{--paper:#1c1a14;--paper-2:#16140f;--paper-card:#25221a;--ink:#f1e7d2;--ink-soft:#c3b6a0;--ink-faint:#8e8270;--line:rgba(241,231,210,0.16);--line-strong:rgba(241,231,210,0.32);--paper-tint:rgba(241,231,210,0.05);--terracotta:#db6a4c;--terracotta-2:#c5563b;--green:#71a37e;--green-2:#5d8b69;--ochre:#e8ab4d;--ochre-2:#d2913a;--plum:#b9657f;--accent-ink:#1c1a14;--card-shadow:0 22px 50px -26px rgba(0,0,0,0.7);--grain-opacity:0.07;color-scheme:dark}[data-accent=terracotta]{--accent:var(--terracotta);--accent-deep:var(--terracotta-2)}[data-accent=green]{--accent:var(--green);--accent-deep:var(--green-2)}[data-accent=ochre]{--accent:var(--ochre);--accent-deep:var(--ochre-2)}[data-accent=plum]{--accent:var(--plum);--accent-deep:#5f2c40}[data-theme=dark][data-accent=ochre]{--accent-ink:#1c1a14}[data-fonts=classic]{--font-display:var(--ff-display),"Libre Caslon Display",Georgia,serif;--font-body:var(--ff-body),"Spectral",Georgia,serif;--font-mono:var(--ff-mono),"Courier Prime","Courier New",monospace}[data-style=press]{--bloom-stroke:1.6;--card-offset:0px;--grain-opacity:0.05}[data-style=ink]{--bloom-stroke:3;--card-offset:7px;--grain-opacity:0.04;--card-shadow:none}[data-style=ink] .btn,[data-style=ink] .card,[data-style=ink] .chip,[data-style=ink] .photo-frame{border-width:2.5px}[data-style=riso]{--bloom-stroke:2;--grain-opacity:0.13;--card-offset:0px}[data-theme=dark][data-style=ink]{--card-shadow:none}[data-motion=off] *,[data-motion=off] :after,[data-motion=off] :before{animation:none!important;transition:none!important}[data-motion=subtle] .bloom,[data-motion=subtle] .currently .dancer,[data-motion=subtle] .hero-role .open .pip,[data-motion=subtle] .mock-term .blink{animation:none!important}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--t-body);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}body:before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:multiply}[data-theme=dark] body:before{mix-blend-mode:screen}::selection{background:var(--accent);color:var(--accent-ink)}a{color:inherit}img{display:block;max-width:100%}:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:2px}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;margin:0;line-height:.98}.wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 clamp(1.25rem,4vw,3.5rem)}.wrap,main{z-index:2}.wrap,main,section{position:relative}.eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.22em;font-size:var(--t-micro);color:var(--accent);font-weight:700;display:inline-flex;align-items:center;gap:.6em}.eyebrow:before{content:"";width:1.8em;height:2px;background:currentColor;display:inline-block}.skip{position:absolute;left:-999px;top:0;z-index:100;background:var(--ink);color:var(--paper);padding:.7rem 1.1rem;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--t-small)}.skip:focus{left:1rem;top:1rem}.site-head{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--paper) 82%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.site-head.scrolled{border-bottom-color:var(--line)}.head-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:var(--s-2)}.brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--font-display)}.brand .monogram{width:38px;height:38px;color:var(--accent);flex:none}.brand b{font-weight:600;font-size:1.4rem;letter-spacing:.01em;white-space:nowrap}.brand .dot{color:var(--accent)}.nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.2rem)}.nav a{text-decoration:none;font-family:var(--font-mono);font-size:var(--t-small);letter-spacing:.04em;color:var(--ink-soft);position:relative;padding:.3rem 0}.nav a:after{content:"";position:absolute;left:0;bottom:-2px;height:1.5px;width:0;background:var(--accent);transition:width var(--dur) var(--ease)}.nav a:hover{color:var(--ink)}.nav a:hover:after{width:100%}.nav-links{display:flex;gap:clamp(1rem,2.5vw,2rem)}.theme-toggle{width:44px;height:44px;flex:none;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);background:transparent;color:var(--ink);cursor:pointer;display:grid;place-items:center;transition:transform var(--dur) var(--ease-back),border-color var(--dur) var(--ease),background var(--dur) var(--ease)}.theme-toggle:hover{border-color:var(--accent);transform:rotate(-12deg);background:var(--paper-tint)}.theme-toggle svg{width:21px;height:21px}.theme-toggle .moon,[data-theme=dark] .theme-toggle .sun{display:none}[data-theme=dark] .theme-toggle .moon{display:block}.btn{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:var(--t-small);letter-spacing:.03em;text-decoration:none;cursor:pointer;border:1.8px solid var(--ink);padding:.78rem 1.3rem;border-radius:var(--r-sm);background:transparent;color:var(--ink);transition:transform var(--dur) var(--ease-back),background var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease),border-color var(--dur) var(--ease);position:relative}.btn svg{width:17px;height:17px}.btn:hover{transform:translateY(-3px)}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 10px 28px -12px var(--accent)}.btn-primary:hover{background:var(--accent-deep);border-color:var(--accent-deep);box-shadow:0 16px 34px -12px var(--accent)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}[data-style=ink] .btn-primary{box-shadow:var(--card-offset) var(--card-offset) 0 var(--ink)}[data-style=ink] .btn-primary:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 var(--ink)}.tlink{color:var(--ink);text-decoration:none;font-family:var(--font-mono);font-size:var(--t-small);display:inline-flex;align-items:center;gap:.4rem;position:relative;padding-bottom:2px;background-image:linear-gradient(var(--accent),var(--accent));background-size:0 1.5px;background-repeat:no-repeat;background-position:0 100%;transition:background-size var(--dur) var(--ease),color var(--dur) var(--ease)}.tlink:hover{color:var(--accent);background-size:100% 1.5px}.tlink svg{width:15px;height:15px;transition:transform var(--dur) var(--ease-back)}.tlink:hover svg{transform:translate(2px,-2px)}.hero{padding:clamp(1.5rem,3vw,2.5rem) 0 clamp(2rem,4vw,3rem);min-height:calc(100svh - 72px);display:flex}.hero,.hero-grid{align-items:center}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:clamp(1.5rem,4vw,4rem);gap:clamp(1.5rem,4vw,4rem);width:100%}.hero-copy{max-width:36ch}.hero-name{font-size:var(--t-hero);letter-spacing:-.015em;margin:.5rem 0 .1rem;line-height:.84}.hero-name .ln{display:block;overflow:visible}.hero-name .ln span{display:block}.hero-name em{font-style:italic;color:var(--accent);position:relative}.hero-role{font-family:var(--font-mono);font-size:clamp(.8rem,.4vw + .7rem,.94rem);letter-spacing:.05em;color:var(--ink-soft);margin:.9rem 0 0;line-height:1.5;display:flex;flex-wrap:wrap;gap:.5rem .7rem;align-items:center}.hero-role .sep{color:var(--accent)}.hero-role .open{border:1.4px solid var(--line-strong);border-radius:var(--r-sm);padding:.2rem .6rem;font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--green);display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}.hero-role .open .pip{width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.7)}}.hero-lead{font-size:var(--t-lead);line-height:1.32;margin:1.2rem 0 0;color:var(--ink);font-weight:400;text-wrap:pretty;max-width:30ch}.hero-lead .hl{color:var(--accent);font-style:italic}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}.currently{margin-top:1.4rem;display:inline-flex;align-items:center;gap:.7rem;font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-faint)}.currently .dancer{font-style:normal;display:inline-block;transform-origin:60% 90%;animation:sway 2.6s ease-in-out infinite}@keyframes sway{0%,to{transform:rotate(-9deg)}50%{transform:rotate(11deg)}}.currently b{color:var(--ink-soft);font-weight:600}.hero-art{justify-self:center;width:min(100%,420px)}.photo-frame{position:relative;aspect-ratio:4/5;border-radius:var(--r-arch);background:radial-gradient(120% 90% at 50% 8%,color-mix(in srgb,var(--accent) 30%,var(--paper-card)) 0,var(--paper-card) 60%);border:2px solid var(--ink);overflow:visible;box-shadow:var(--card-shadow)}[data-style=ink] .photo-frame{box-shadow:var(--card-offset) var(--card-offset) 0 var(--accent)}.photo-frame:after{content:"";position:absolute;inset:10px;border:1px solid var(--line-strong);border-radius:calc(var(--r-arch));pointer-events:none}.photo-frame .portrait{position:absolute;inset:0;width:100%;height:116%;top:auto;bottom:0;object-fit:contain;object-position:bottom center;filter:grayscale(.12) contrast(1.03);border-radius:0 0 8px 8px;-webkit-mask-image:linear-gradient(0deg,#000 86%,transparent);mask-image:linear-gradient(0deg,#000 86%,transparent)}.photo-frame .ribbon{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%) rotate(-2deg);background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;padding:.45rem 1rem;border-radius:var(--r-sm);white-space:nowrap;z-index:4;box-shadow:var(--card-shadow)}.bloom,.photo-frame .ribbon .heart{color:var(--accent)}.bloom{position:absolute;pointer-events:none;z-index:-1}.bloom svg{width:100%;height:100%;display:block}.bloom circle,.bloom line,.bloom path{stroke-width:var(--bloom-stroke)}.bloom-1{width:150px;top:-42px;right:-34px;color:var(--green);transform:rotate(14deg);animation:drift 9s ease-in-out infinite}.bloom-2{width:120px;bottom:-30px;left:-46px;color:var(--ochre);transform:rotate(-18deg);animation:drift 11s ease-in-out infinite reverse}.bloom-3{width:86px;top:44%;right:-56px;color:var(--terracotta);animation:drift 8s ease-in-out infinite}@keyframes drift{0%,to{transform:translateY(0) rotate(var(--rot,0deg))}50%{transform:translateY(-14px) rotate(calc(var(--rot, 0deg) + 4deg))}}[data-style=riso] .hero-name span{text-shadow:.04em .05em 0 color-mix(in srgb,var(--green) 70%,transparent),-.03em -.02em 0 color-mix(in srgb,var(--accent) 55%,transparent)}.section{padding:clamp(3.5rem,8vw,7rem) 0}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-3);margin-bottom:clamp(2rem,4vw,3.5rem);flex-wrap:wrap}.sec-head .left{max-width:30ch}.sec-title{font-size:var(--t-h2);letter-spacing:-.01em;margin-top:.7rem}.sec-title .idx{font-family:var(--font-mono);font-size:.34em;color:var(--accent);vertical-align:super;letter-spacing:0;margin-right:.5rem;font-weight:700}.sec-note{color:var(--ink-soft);max-width:40ch;font-size:var(--t-body)}.rule{height:1px;background:var(--line);border:0;margin:0}.projects{display:flex;flex-direction:column;gap:clamp(2rem,5vw,4.5rem)}.case{display:grid;grid-template-columns:.95fr 1.05fr;grid-gap:clamp(1.5rem,4vw,3.5rem);gap:clamp(1.5rem,4vw,3.5rem);align-items:center}.case:nth-child(2n) .case-visual{order:2}.case-visual{position:relative;border-radius:var(--r-lg);border:2px solid var(--ink);background:var(--paper-card);aspect-ratio:4/3;overflow:hidden;box-shadow:var(--card-shadow)}[data-style=ink] .case-visual{box-shadow:var(--card-offset) var(--card-offset) 0 var(--ink)}.case-visual .tag{position:absolute;top:14px;left:14px;z-index:3;font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--paper);padding:.3rem .7rem;border-radius:var(--r-sm)}.mock{position:absolute;inset:0;display:flex;flex-direction:column}.mock-bar{height:34px;flex:none;display:flex;align-items:center;gap:6px;padding:0 12px;border-bottom:1.5px solid var(--line);background:color-mix(in srgb,var(--ink) 6%,var(--paper-card))}.mock-bar i{width:9px;height:9px;border-radius:50%;background:var(--line-strong)}.mock-bar i:first-child{background:var(--terracotta)}.mock-bar i:nth-child(2){background:var(--ochre)}.mock-bar i:nth-child(3){background:var(--green)}.mock-bar .url{margin-left:8px;font-family:var(--font-mono);font-size:.62rem;color:var(--ink-faint);letter-spacing:.02em}.mock-body{flex:1 1;position:relative;overflow:hidden}.case-body{min-width:0}.case-kicker{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.case-title{font-size:var(--t-h3);margin:.5rem 0 .2rem;letter-spacing:-.01em}.case-sub{color:var(--ink-soft);font-size:var(--t-small);font-family:var(--font-mono)}.case-narrative{margin:1.4rem 0 0;grid-gap:.9rem}.case-narrative,.nrow{display:grid;gap:.9rem}.nrow{grid-template-columns:auto 1fr;grid-gap:.9rem;align-items:start}.nrow .lbl{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);padding-top:.18rem;white-space:nowrap;border-right:1.5px solid var(--line);padding-right:.9rem;min-width:88px}.nrow .val{font-size:var(--t-body);line-height:1.5;text-wrap:pretty}.nrow .val b{font-weight:600}.nrow .val b,.nrow.out .val{color:var(--ink)}.nrow.out .lbl{color:var(--accent)}.chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.3rem}.chip{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.04em;border:1.5px solid var(--line-strong);color:var(--ink-soft);padding:.32rem .66rem;border-radius:var(--r-sm);background:var(--paper-tint);transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease-back)}.chip:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.case-links{display:flex;gap:1.3rem;margin-top:1.5rem;flex-wrap:wrap}.about-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(2rem,5vw,4.5rem);gap:clamp(2rem,5vw,4.5rem);align-items:start}.bloom-about{width:180px;height:180px;top:-10px;right:2%;color:var(--ochre);transform:rotate(8deg);opacity:.9}@media (max-width:760px){.bloom-about{display:none}}.about-lead{font-size:var(--t-lead);line-height:1.4;text-wrap:pretty}.about-lead .hl{color:var(--accent);font-style:italic}.about-p{color:var(--ink-soft);margin:1.2rem 0 0;max-width:46ch}.about-p .ink{color:var(--ink);font-weight:600}.stack-block{margin-top:0}.stack-group{margin-bottom:1.6rem}.stack-group h4{font-family:var(--font-mono);font-weight:700;font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .7rem}.stack-list{display:flex;flex-wrap:wrap;gap:.5rem}.stack-list .chip:hover{transform:translateY(-2px) rotate(-2deg)}.facts{list-style:none;margin:0;padding:0;display:grid;grid-gap:.8rem;gap:.8rem}.facts li{display:grid;grid-template-columns:26px 1fr;grid-gap:.7rem;gap:.7rem;align-items:start;font-size:var(--t-body);color:var(--ink-soft)}.facts li .ic{color:var(--accent);width:22px;height:22px;flex:none;margin-top:2px}.facts li b{color:var(--ink);font-weight:600}.contact,.contact-card{position:relative;overflow:hidden}.contact-card{border:2px solid var(--ink);border-radius:var(--r-lg);background:var(--paper-card);padding:clamp(2rem,5vw,4rem);text-align:center;box-shadow:var(--card-shadow)}[data-style=ink] .contact-card{box-shadow:9px 9px 0 var(--accent)}.contact-card .big{font-size:var(--t-h2);letter-spacing:-.01em;margin:.6rem 0 0}.contact-card .big em{font-style:italic;color:var(--accent)}.contact-sub{color:var(--ink-soft);max-width:44ch;margin:1.1rem auto 0}.contact-actions{gap:.8rem}.contact-actions,.contact-socials{display:flex;justify-content:center;flex-wrap:wrap;margin-top:2rem}.contact-socials{gap:1.4rem}.contact-card .bloom-c{position:absolute;opacity:.5}.contact-card .bc1{width:130px;bottom:-30px;left:-24px;color:var(--green);transform:rotate(-22deg)}.contact-card .bc2{width:110px;top:-28px;right:-20px;color:var(--ochre);transform:rotate(18deg)}.foot{border-top:1px solid var(--line);padding:2.5rem 0 3.5rem}.foot-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink-faint)}.foot-inner a{color:var(--ink-soft);text-decoration:none}.foot-inner a:hover,.foot-note .seed{color:var(--accent)}.to-top{display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;background:none;border:0;color:var(--ink-soft);font:inherit}.to-top:hover{color:var(--accent)}.to-top svg{width:16px;height:16px}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}@media (max-width:900px){.hero{min-height:0;padding-top:2rem}.hero-grid{grid-template-columns:1fr;gap:2.5rem}.hero-art{order:-1;width:min(78%,320px)}.hero-copy{max-width:none}.case{grid-template-columns:1fr;gap:1.6rem}.case:nth-child(2n) .case-visual{order:0}.about-grid{grid-template-columns:1fr;gap:2.5rem}}@media (max-width:620px){.nav-links{display:none}.hero-name{line-height:.9}.nrow{grid-template-columns:1fr;gap:.25rem}.nrow .lbl{border-right:0;border-left:2px solid var(--accent);padding-left:.7rem;padding-right:0;min-width:0}.btn{flex:1 1 auto;justify-content:center}.hero-actions{gap:.6rem}}.mock-bank{padding:clamp(.7rem,2.2vw,1.2rem);gap:.7rem}.bk-card,.mock-bank{display:flex;flex-direction:column}.bk-card{border-radius:var(--r-md);padding:.9rem 1rem;color:var(--accent-ink);background:linear-gradient(135deg,var(--accent),var(--accent-deep));gap:.18rem;box-shadow:0 8px 20px -12px var(--accent)}.bk-lbl{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;opacity:.85}.bk-amt{font-family:var(--font-display);font-size:clamp(1.3rem,4vw,1.9rem);line-height:1}.bk-amt span{opacity:.6;font-size:.6em}.bk-iban{font-family:var(--font-mono);font-size:.56rem;letter-spacing:.04em;opacity:.8;margin-top:.3rem}.bk-actions{display:flex;gap:.4rem}.bk-actions span{flex:1 1;text-align:center;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.04em;padding:.4rem 0;border:1.4px solid var(--line-strong);border-radius:var(--r-sm);color:var(--ink-soft)}.bk-actions span.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.bk-rows{display:flex;flex-direction:column;gap:.32rem}.bk-row{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.62rem;color:var(--ink-soft);padding:.3rem 0;border-bottom:1px solid var(--line)}.bk-row .in{color:var(--green)}.bk-row .out{color:var(--terracotta)}.mock-term{background:#17140f;padding:clamp(.8rem,2.4vw,1.3rem);display:flex;flex-direction:column;gap:.3rem;font-family:var(--font-mono);font-size:clamp(.6rem,1.6vw,.74rem);line-height:1.7}.mock-term code{color:#cdbfa6;white-space:nowrap}.mock-term .pr{color:#71a37e}.mock-term .pk{color:#e8ab4d}.mock-term .ok{color:#71a37e;font-size:.86em}.mock-term .kw{color:#db6a4c}.mock-term .cmp{color:#e8ab4d}.mock-term .str{color:#9ec4a8}.mock-term .cm{color:#6f6552;font-style:italic}.mock-term .sp{height:.3rem}.mock-term .blink{animation:blink 1.1s steps(1) infinite;color:#e8ab4d}@keyframes blink{50%{opacity:0}}.mock-yebo{padding:clamp(.7rem,2.2vw,1.2rem);display:flex;flex-direction:column;gap:.6rem}.yb-head{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-mono);font-size:.66rem;color:var(--ink-soft)}.yb-head .yb-day{color:var(--accent);letter-spacing:.04em}.yb-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:.4rem;gap:.4rem}.yb-grid span{font-family:var(--font-mono);font-size:.62rem;text-align:center;padding:.5rem 0;border-radius:var(--r-sm);border:1.4px solid var(--line);color:var(--ink-faint)}.yb-grid .free{color:var(--ink-soft);border-color:var(--line-strong)}.yb-grid .busy{opacity:.45;text-decoration:line-through}.yb-grid .sel{background:var(--green);color:#fff;border-color:var(--green);font-weight:700}.yb-foot{display:flex;justify-content:space-between;align-items:center;margin-top:.2rem}.yb-price{font-family:var(--font-display);font-size:1rem}.yb-book{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.04em;background:var(--accent);color:var(--accent-ink);padding:.45rem .7rem;border-radius:var(--r-sm)}:root{--toon-outline:#1a1712;--accent-ink:#241f1b}[data-theme=dark]{--accent:var(--plum);--accent-deep:#5f2c40;--accent-ink:#f1e7d2;--toon-outline:var(--paper)}[data-theme=dark][data-accent=green],[data-theme=dark][data-accent=ochre],[data-theme=dark][data-accent=plum],[data-theme=dark][data-accent=terracotta]{--accent:var(--plum);--accent-deep:#5f2c40}.deco{position:absolute;pointer-events:none;z-index:0}.deco svg{width:100%;height:100%;display:block}.spark{color:var(--accent)}.spark svg path{fill:currentColor;stroke:var(--toon-outline);stroke-width:4;stroke-linejoin:round;paint-order:stroke}.burst{color:var(--accent)}.burst svg polygon{fill:currentColor;stroke:var(--toon-outline);stroke-width:3.5;stroke-linejoin:miter;paint-order:stroke}.halftone{background-image:radial-gradient(var(--accent) 30%,transparent 33%);background-size:13px 13px;color:var(--accent);border-radius:50%;opacity:.55}[data-theme=dark] .halftone{opacity:.4}.hero-art .toon-burst{width:150px;height:150px;top:-46px;left:-54px;color:var(--green);z-index:-1}.hero-art .toon-ht{width:160px;height:160px;top:26px;right:-54px;z-index:-1;color:var(--ochre);transform:rotate(8deg)}.hero-art .s1{width:46px;height:46px;top:-22px;right:54px;color:var(--terracotta)}.hero-art .s2{width:34px;height:34px;bottom:34px;left:-30px;color:var(--plum)}.hero-art .s3{width:26px;height:26px;bottom:96px;right:-34px;color:var(--green)}.badge-hi{position:absolute;top:4px;left:-20px;z-index:6;width:86px;height:86px;display:grid;place-items:center;transform:rotate(-12deg)}.badge-hi .burst{position:absolute;inset:0;color:var(--accent)}.badge-hi b{position:relative;z-index:2;font-family:var(--font-display);color:var(--accent-ink);font-size:1.5rem;letter-spacing:.01em;-webkit-text-stroke:0;transform:rotate(2deg)}.photo-frame .ribbon{border:2px solid var(--toon-outline);letter-spacing:.12em}.photo-frame .ribbon .star{color:var(--ochre)}#about .sec-head .toon-cluster{right:3%;top:-14px;width:190px;height:150px}#about .toon-cluster .burst{position:absolute;width:92px;height:92px;top:18px;right:10px;color:var(--ochre)}#about .toon-cluster .spark{position:absolute;width:46px;height:46px;top:-2px;right:96px;color:var(--green)}#about .toon-cluster .s-sm{position:absolute;width:30px;height:30px;bottom:6px;right:96px;color:var(--terracotta)}@media (max-width:760px){#about .sec-head .toon-cluster{display:none}}.contact-card .ht-c{width:150px;height:150px;bottom:-36px;left:-30px;color:var(--green)}.contact-card .b-c{width:70px;height:70px;top:22px;right:34px;color:var(--ochre)}.contact-card .s-c{width:40px;height:40px;top:30px;left:40px;color:var(--terracotta)}.contact-card .s-c2{width:30px;height:30px;bottom:46px;right:56px;color:var(--plum)}@media (max-width:620px){.contact-card .b-c,.contact-card .ht-c{display:none}}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .spark{animation:toonpop 3.2s var(--ease) infinite}[data-motion=playful] .s2{animation-delay:.8s}[data-motion=playful] .s3{animation-delay:1.6s}[data-motion=playful] .toon-burst{animation:toonspin 22s linear infinite}[data-motion=playful] .badge-hi{animation:toonwiggle 3.6s var(--ease) infinite}}@keyframes toonpop{0%,to{transform:scale(1) rotate(0deg)}50%{transform:scale(1.18) rotate(10deg)}}@keyframes toonspin{to{transform:rotate(1turn)}}@keyframes toonwiggle{0%,to{transform:rotate(-12deg)}50%{transform:rotate(-4deg) scale(1.05)}}:root{--char-ink:#1d1812;--char-line:4.5}.toon-char{position:absolute;z-index:5;pointer-events:none}.toon-char .c-svg{width:100%;height:100%;display:block;overflow:visible}.c-svg .ink{stroke:var(--char-ink);stroke-width:var(--char-line);stroke-linejoin:round;stroke-linecap:round;paint-order:stroke}.c-svg .ink-thin{stroke:var(--char-ink);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.c-svg .fill-glove{fill:#f7efdd}.c-svg .fill-cuff{fill:var(--accent)}.c-svg .fill-cab{fill:var(--terracotta)}.c-svg .fill-screen{fill:#cfe6dc}.c-svg .fill-knob{fill:#f7efdd}.c-svg .fill-star{fill:var(--ochre)}.c-svg .fill-eye{fill:#fff}.c-svg .fill-ink{fill:var(--char-ink)}.c-hand .c-wave{transform-origin:60px 110px}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-hand .c-wave{animation:handwave 2.4s var(--ease) infinite}}@keyframes handwave{0%,60%,to{transform:rotate(-16deg)}20%{transform:rotate(10deg)}40%{transform:rotate(-2deg)}}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-tv{animation:tvbob 4s ease-in-out infinite}[data-motion=playful] .c-tv .c-face{animation:tvflick 3.2s steps(1) infinite;transform-origin:center}}@keyframes tvbob{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes tvflick{0%,92%,to{opacity:1}94%{opacity:.35}96%{opacity:1}}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-star{animation:starbob 3.4s var(--ease) infinite}[data-motion=playful] .c-star .c-pupil{animation:googly 2.8s ease-in-out infinite}}@keyframes starbob{0%,to{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-10px) rotate(6deg)}}@keyframes googly{0%,to{transform:translate(0)}25%{transform:translate(2.4px,-1.6px)}50%{transform:translate(-2px,1.6px)}75%{transform:translate(1.6px,2px)}}.c-svg .fill-top{fill:#1c1c21}.c-svg .fill-blz{fill:#43434c}.c-svg .fill-blz-dk{fill:#2c2c33}.c-svg .fill-btn{fill:#d2cdd3}.c-svg .fill-skin{fill:#7a4a30}.c-svg .fill-skin-sh{fill:#5d3622}.c-svg .fill-hair{fill:#171210}.c-svg .fill-gold{fill:#e8ab4d}.c-svg .fill-mouth{fill:#5d272c}.c-svg .fill-teeth{fill:#fbf5e7}.c-svg .sh-ink{fill:none;stroke:var(--char-ink);stroke-width:5;stroke-linejoin:round}.c-svg .sh-frame{fill:#2a2530;stroke:#c89aa6;stroke-width:3;stroke-linejoin:round;paint-order:stroke}.c-svg .sh-arm-ink{fill:none;stroke:var(--char-ink);stroke-width:5;stroke-linecap:round}.c-svg .sh-arm,.c-svg .sh-bridge{fill:none;stroke:#c89aa6;stroke-width:2.6;stroke-linecap:round}.c-svg .sh-glint{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;opacity:.8}.c-ana .sh-ink{stroke-width:8.5}.c-ana .sh-frame{stroke-width:5}.c-ana .sh-arm-ink{stroke-width:8.5}.c-ana .sh-arm,.c-ana .sh-bridge,.c-ana .sh-glint{stroke-width:4.5}.c-ana .av-bob{transform-origin:100px 205px}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-ana .av-bob{animation:anabob 4.5s ease-in-out infinite}[data-motion=playful] .c-ana .c-wavehand{animation:anawave 1.5s ease-in-out infinite}[data-motion=playful] .c-ana .c-dance{animation:anadance 1.15s ease-in-out infinite}}@keyframes anabob{0%,to{transform:translateY(0) rotate(-1.6deg)}50%{transform:translateY(-6px) rotate(1.6deg)}}.c-ana .sl-ink{fill:none;stroke:var(--char-ink);stroke-width:23;stroke-linecap:round}.c-ana .sl-blz{fill:none;stroke:#43434c;stroke-width:18;stroke-linecap:round}.c-ana .c-wavehand{transform-origin:51px 100px}@keyframes anawave{0%,to{transform:rotate(-13deg)}50%{transform:rotate(15deg)}}.c-ana .c-dance{transform-origin:100px 232px}@keyframes anadance{0%,to{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(5deg) translateY(-5px)}}.hero-art .toon-hand{width:92px;height:112px;top:-46px;left:-40px;transform:rotate(-6deg)}.hero-art .toon-star{width:78px;height:78px;bottom:-30px;right:-34px}#about .sec-head .toon-tv{width:132px;height:116px;top:-30px;right:1%}@media (max-width:760px){#about .sec-head .toon-tv{display:none}}.contact-card .toon-star-c{width:84px;height:84px;top:-34px;right:30px;z-index:3}@media (max-width:620px){.contact-card .toon-star-c{top:-28px;right:12px;width:66px;height:66px}}.hero-art .toon-ana{width:168px;height:196px;left:-76px;bottom:-28px;z-index:6}.contact .wrap{position:relative}.contact-card{z-index:1}.contact .toon-ana-c{width:124px;height:145px;top:-96px;right:7%;z-index:0}#about .sec-head{position:relative}#about .sec-head .toon-ana-dance{width:138px;height:166px;top:-46px;right:0;z-index:5}@media (max-width:760px){#about .sec-head .toon-ana-dance{display:none}}@media (max-width:900px){.hero-art .toon-ana{width:120px;height:140px;left:-22px;bottom:-16px}}@media (max-width:620px){.hero-art .toon-ana{width:104px;height:121px;left:-14px;bottom:-12px}.contact .toon-ana-c{width:96px;height:112px;top:-74px;right:5%}}.contact-card .big{font-size:clamp(2rem,1.3rem + 3.2vw,3.5rem);line-height:1.16}.contact-sub{margin-top:1.7rem}.sec-title{line-height:1.04}.hero-name{line-height:.92}.hero-art{width:min(88%,384px);position:relative}.hero-blob{position:absolute;z-index:-1;left:50%;bottom:5%;transform:translateX(-50%);width:98%;aspect-ratio:1/1;background:var(--accent);opacity:.92;border-radius:46% 54% 48% 52%/40% 44% 56% 60%}[data-theme=dark] .hero-blob{opacity:.82}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .hero-blob{animation:blobmorph 16s ease-in-out infinite}}@keyframes blobmorph{0%,to{border-radius:46% 54% 48% 52%/40% 44% 56% 60%}50%{border-radius:56% 44% 55% 45%/50% 54% 46% 50%}}.hero-photo{position:relative}.hero-photo:after{content:"";position:absolute;left:50%;bottom:3%;transform:translateX(-50%);width:60%;height:16px;background:rgba(29,24,18,.24);filter:blur(8px);border-radius:50%;z-index:-1}.hero-photo .portrait{position:relative;width:100%;height:auto;display:block;object-fit:contain;filter:drop-shadow(5px 9px 9px rgba(29,24,18,.3));-webkit-mask-image:linear-gradient(180deg,#000 92%,transparent);mask-image:linear-gradient(180deg,#000 92%,transparent)}.hero-photo .ribbon{position:absolute;left:-6%;bottom:18%;transform:rotate(-6deg);z-index:7;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;padding:.5rem .9rem;border-radius:var(--r-sm);white-space:nowrap;border:2.5px solid var(--toon-outline);box-shadow:3px 3px 0 var(--accent)}@media (max-width:900px){.hero-photo .ribbon{left:0;bottom:14%}}.case-visual.is-arch{aspect-ratio:auto;overflow:hidden;cursor:zoom-in;background:#fbf6ea;display:flex;flex-direction:column}.case-visual.is-arch .tag{z-index:6}.arch-tabs{display:flex;gap:.4rem;padding:.55rem .6rem;flex:none;border-bottom:1.5px solid rgba(29,24,18,.14);background:rgba(29,24,18,.04)}.arch-tab{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:#6f6552;background:transparent;border:1.4px solid rgba(29,24,18,.2);border-radius:var(--r-sm);padding:.3rem .6rem;cursor:pointer;transition:all var(--dur-fast) var(--ease)}.arch-tab:hover{border-color:var(--char-ink);color:#2a2017}.arch-tab.on{background:#1d1812;color:#fbf6ea;border-color:#1d1812}.arch-stage{position:relative;flex:1 1;min-height:280px}.arch-img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:.7rem;opacity:0;transition:opacity var(--dur) var(--ease)}.arch-img.on{opacity:1}.arch-zoom{position:absolute;bottom:8px;right:10px;z-index:5;pointer-events:none;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;color:#6f6552;background:rgba(251,246,234,.9);border:1px solid rgba(29,24,18,.2);padding:.18rem .5rem;border-radius:var(--r-sm);display:inline-flex;align-items:center;gap:.34rem}.arch-zoom svg{width:12px;height:12px}.lightbox{position:fixed;inset:0;z-index:120;background:rgba(18,14,10,.93);display:none;place-items:safe center;padding:clamp(1rem,4vw,3rem);overflow-y:auto;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.lightbox.open{display:grid}.lightbox figure{margin:auto;display:flex;flex-direction:column;align-items:center;gap:.9rem;max-width:100%}.lightbox img{max-width:94vw;max-height:72vh;border-radius:8px;background:#fbf6ea;box-shadow:0 30px 80px -20px rgba(0,0,0,.7)}.lb-tabs{display:flex;gap:.5rem}.lb-tab{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:#e9dcc4;background:rgba(255,255,255,.08);border:1.5px solid rgba(255,255,255,.25);border-radius:var(--r-sm);padding:.4rem .85rem;cursor:pointer}.lb-tab.on{background:var(--ochre);color:#1d1812;border-color:var(--ochre)}.lb-cap{font-family:var(--font-mono);font-size:.78rem;color:#cdbfa6;text-align:center;max-width:60ch}.lb-close{position:absolute;top:18px;right:22px;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:grid;place-items:center;font-size:1.4rem;line-height:1}.lb-close:hover{background:rgba(255,255,255,.2)}.about-cards{columns:240px 3;column-gap:1.2rem;margin-top:2.4rem}.about-cards>.about-map,.about-cards>.fcard,.about-cards>.feat-duo{page-break-inside:avoid;break-inside:avoid;width:100%;margin:0 0 1.2rem}.about-cards>.about-map{max-width:none}.feat{position:relative;text-align:left;font:inherit;cursor:pointer;background:var(--paper-card);border:2.5px solid var(--toon-outline);border-radius:14px;padding:1rem 1.1rem 1.05rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:5px 5px 0 var(--accent);transition:transform var(--dur) var(--ease-back),box-shadow var(--dur) var(--ease)}.feat:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--accent)}.feat:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--accent)}.feat-k{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);display:inline-flex;align-items:center;gap:.45rem}.feat-k svg{width:16px;height:16px;color:var(--accent)}.feat-v{font-family:var(--font-display);font-size:clamp(1.5rem,1.1rem + 1.2vw,2rem);line-height:1;color:var(--ink)}.feat-h{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.02em;color:var(--accent)}.feat.busy .feat-h{opacity:.6}.say-bubble{position:absolute;left:50%;bottom:calc(100% + 14px);transform:translateX(-50%) scale(.6);width:max-content;max-width:240px;background:var(--paper-card);color:var(--ink);border:2.5px solid var(--toon-outline);border-radius:14px;padding:.7rem .95rem;font-family:var(--font-body);font-size:.92rem;line-height:1.3;text-align:center;box-shadow:4px 4px 0 var(--accent);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-back);z-index:8}.say-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:9px solid transparent;border-top:9px solid var(--toon-outline)}.say-bubble.show{opacity:1;transform:translateX(-50%) scale(1)}.facts li{grid-template-columns:44px 1fr;gap:.95rem;align-items:center}.facts li .ic{width:44px;height:44px;margin-top:0;border:2.5px solid var(--toon-outline);border-radius:11px;display:grid;place-items:center;background:var(--paper-card);box-shadow:3px 3px 0 var(--accent);transition:transform var(--dur) var(--ease-back)}.facts li:hover .ic{transform:translateY(-3px) rotate(-5deg)}.facts li .ic svg{width:25px;height:25px}.facts li:first-child .ic{box-shadow:3px 3px 0 var(--terracotta);color:var(--terracotta)}.facts li:nth-child(2) .ic{box-shadow:3px 3px 0 var(--green);color:var(--green)}.facts li:nth-child(3) .ic{box-shadow:3px 3px 0 var(--ochre);color:var(--ochre-2)}.facts li:nth-child(4) .ic{box-shadow:3px 3px 0 var(--plum);color:var(--plum)}.facts li a{color:var(--accent);text-decoration:none;border-bottom:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent)}.facts li a:hover{border-bottom-color:var(--accent)}.tlink.is-static{background:none;cursor:default;padding-bottom:2px}.tlink.is-static,.tlink.is-static:hover{color:var(--ink-faint)}.tlink.is-static svg{width:14px;height:14px}button.tlink{background:none;border:0;font:inherit;cursor:pointer;font-family:var(--font-mono);font-size:var(--t-small);color:var(--ink)}.c-svg .fill-trouser{fill:#2c2c33}.c-svg .fill-shoe{fill:#1c1c21}.c-svg .fill-stool{fill:#b5482f}.c-svg .fill-stool-lg{fill:none;stroke:var(--char-ink);stroke-width:5;stroke-linecap:round}.c-svg .sl-ink2{fill:none;stroke:var(--char-ink);stroke-width:13;stroke-linecap:round}.c-svg .sl-blz2{fill:none;stroke:#43434c;stroke-width:9;stroke-linecap:round}.c-svg .leg-ink{fill:none;stroke:var(--char-ink);stroke-width:14;stroke-linecap:round}.c-svg .leg{fill:none;stroke:#2c2c33;stroke-width:10;stroke-linecap:round}.c-lab .ink{stroke:var(--char-ink);stroke-width:3;stroke-linejoin:round}.c-lab .lab-wall{fill:#efe5d2}.c-lab .lab-ceil{fill:#e4d8c0}.c-lab .lab-light{fill:#fcf7e4;stroke:rgba(29,24,18,.25);stroke-width:1}.c-lab .lab-window{fill:#cfe0e6}.c-lab .lab-mullion{fill:none;stroke:rgba(29,24,18,.4);stroke-width:2}.c-lab .lab-banner{fill:#e07b3a}.c-lab .lab-banner-t{fill:#fff;font-family:var(--font-mono);font-weight:700;font-size:7px;letter-spacing:.04em}.c-lab .lab-floor{fill:#e9e0cd}.c-lab .lab-aisle{fill:#f4ede1}.c-lab .lab-tile{fill:none;stroke:rgba(29,24,18,.12);stroke-width:2}.c-lab .lab-tv{fill:#1c1c21}.c-lab .lab-tv-screen{fill:#4b2fa0}.c-lab .lab-pin{fill:#2c1a70}.c-lab .lab-mount{fill:none;stroke:rgba(29,24,18,.4);stroke-width:2;stroke-linecap:round}.c-lab .lab-stand{fill:#2a2a30}.c-lab .lab-bezel{fill:#1c1c21}.c-lab .lab-screen{fill:#5b3bb0}.c-lab .lab-wood{fill:#c87a3a}.c-lab .lab-deskdark{fill:#2a1d12}.c-lab .lab-deskfront{fill:#a55f28}.c-lab .lab-q1{fill:#e1483b}.c-lab .lab-q2{fill:#2a7fd4}.c-lab .lab-q3{fill:#e8ab4d}.c-lab .lab-q4{fill:#3f8f5a}.c-lab .lab-glow{fill:#b39bff;opacity:0;mix-blend-mode:screen;pointer-events:none}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-lab .lab-glow{animation:labglow 3.4s ease-in-out infinite}[data-motion=playful] .c-lab .lab-q1{animation:labq 2.8s steps(1) infinite}[data-motion=playful] .c-lab .lab-q2{animation:labq 2.8s steps(1) .7s infinite}[data-motion=playful] .c-lab .lab-q3{animation:labq 2.8s steps(1) 1.4s infinite}[data-motion=playful] .c-lab .lab-q4{animation:labq 2.8s steps(1) 2.1s infinite}}@keyframes labglow{0%,to{opacity:0}50%{opacity:.32}}@keyframes labq{0%,88%,to{opacity:1}90%{opacity:.4}}[data-theme=dark] .c-lab .lab-wall{fill:#2a2620}[data-theme=dark] .c-lab .lab-ceil{fill:#221f19}[data-theme=dark] .c-lab .lab-floor{fill:#1f1b15}[data-theme=dark] .c-lab .lab-aisle{fill:#2a261f}[data-theme=dark] .c-lab .lab-window{fill:#3a4a52}.c-tape .cs-body{fill:var(--accent)}.c-tape .cs-label{fill:#fbf6ea}.c-tape .cs-hub{fill:#2a2530}.c-tape .cs-hole{fill:#fbf6ea}.c-tape .cs-spoke{stroke:#fbf6ea;stroke-width:2;stroke-linecap:round}.c-tape .cs-line{stroke:var(--char-ink);stroke-width:2.4;stroke-linecap:round;opacity:.5}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-tape.spin .cs-reel{animation:tapespin 1.1s linear infinite}}@keyframes tapespin{to{transform:rotate(1turn)}}.c-map .mp-ocean{fill:color-mix(in srgb,var(--green) 22%,var(--paper-card))}.c-map .mp-grid{fill:none;stroke:var(--char-ink);stroke-width:1.4;opacity:.22}.c-map .mp-land{fill:var(--ochre);stroke:var(--char-ink);stroke-width:2.4;stroke-linejoin:round}.c-map .mp-land2{fill:var(--green)}.c-map .mp-pin-body{fill:var(--terracotta)}.c-map .mp-pin-dot{fill:#fbf6ea}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .c-map .mp-pin{animation:pinbob 2.2s ease-in-out infinite;transform-origin:104px 104px}}@keyframes pinbob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.c-map .mp-arc{fill:none;stroke:var(--char-ink);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:6 6;stroke-dashoffset:200}.c-map .mp-arc,.c-map .mp-you{opacity:0;transition:opacity var(--dur) var(--ease)}.c-map .mp-you circle{fill:var(--plum)}.c-map .mp-you .mp-you-r{fill:none;stroke:var(--plum);stroke-width:2}.c-map.located .mp-arc{opacity:.85;animation:dashdraw 1s var(--ease) forwards}.c-map.located .mp-you{opacity:1}.c-map.located .mp-you .mp-you-r{animation:ping 1.6s ease-out infinite}@keyframes dashdraw{to{stroke-dashoffset:0}}@keyframes ping{0%{transform:scale(1);opacity:.8}to{transform:scale(3.4);opacity:0}}.c-map .mp-you .mp-you-r{transform-box:fill-box;transform-origin:center}.fcard{position:relative;background:var(--paper-card);border:2.5px solid var(--toon-outline);border-radius:16px;padding:1.1rem 1.2rem 1.2rem;box-shadow:5px 5px 0 var(--accent);display:flex;flex-direction:column;gap:.7rem}.fcard-top{display:flex;align-items:center;gap:.8rem}.fcard-art{display:grid;place-items:center}.fcard p{margin:0;font-size:.98rem;line-height:1.4;color:var(--ink);text-wrap:pretty}.fcard p a{color:var(--accent);text-decoration:none;border-bottom:1.5px solid color-mix(in srgb,var(--accent) 45%,transparent)}.fcard p a:hover{border-bottom-color:var(--accent)}.mini-btn{align-self:flex-start;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:2px solid var(--toon-outline);border-radius:8px;background:var(--accent);color:var(--accent-ink);padding:.42rem .8rem;display:inline-flex;align-items:center;gap:.45rem;box-shadow:2px 2px 0 var(--toon-outline);transition:transform var(--dur-fast) var(--ease-back),box-shadow var(--dur-fast) var(--ease)}.mini-btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--toon-outline)}.mini-btn:active{transform:translate(2px,2px);box-shadow:0 0 0 var(--toon-outline)}.mini-btn svg{width:14px;height:14px}.mini-btn{white-space:nowrap}.fcard--tape .c-tape{width:76px;height:50px}.eq{display:flex;align-items:flex-end;gap:3px;height:34px;width:56px}.eq i{flex:1 1;background:var(--accent);border-radius:2px 2px 0 0;height:30%}.fcard--beat.on .eq i{animation:eqbar .9s ease-in-out infinite}.eq i:nth-child(2){animation-delay:.15s}.eq i:nth-child(3){animation-delay:.3s}.eq i:nth-child(4){animation-delay:.45s}.eq i:nth-child(5){animation-delay:.1s}@keyframes eqbar{0%,to{height:22%}50%{height:100%}}.fcard--beat .note{position:absolute;font-size:1rem;opacity:0;pointer-events:none}.fcard--beat.on .note{animation:floatnote 1.4s ease-out infinite}@keyframes floatnote{0%{opacity:0;transform:translateY(0) rotate(0)}20%{opacity:.9}to{opacity:0;transform:translateY(-38px) rotate(18deg)}}.fcard--class .cl-reveal{display:none}.fcard--class.open .cl-reveal{display:block;margin-top:.5rem}@media (prefers-reduced-motion:no-preference){.fcard--class.open .cl-reveal{animation:clopen var(--dur) var(--ease)}}@keyframes clopen{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.fcard--class .c-class{width:100%;height:auto;border:2px solid var(--toon-outline);border-radius:10px;background:var(--paper)}.fcard--class .class-mount{display:block;width:100%}.fcard--joke .joke{min-height:2.6em;font-family:var(--font-body);font-size:1rem;line-height:1.35;color:var(--ink)}.fcard--joke .joke .punch{display:block;color:var(--accent);font-style:italic;margin-top:.2rem}.fcard--joke .joke.pop{animation:jokepop var(--dur) var(--ease-back)}@keyframes jokepop{0%{transform:scale(.96);opacity:.4}to{transform:scale(1);opacity:1}}.feat--map,.feat--tall{align-items:stretch}.tall-figure{position:relative;height:96px;width:100%;margin-bottom:.2rem;display:grid;place-items:end center}.tall-figure .c-chibi{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:96px;width:auto;transition:opacity var(--dur) var(--ease)}.tall-figure .fig-stand{transform:translateX(-50%) translateY(6px)}.feat--tall .feat-h:after{content:" · hover: stand up"}.feat--map .map-wrap{width:100%;display:grid;place-items:center;margin-bottom:.3rem}.feat--map .c-map{width:100%;max-width:150px;height:auto}@media (max-width:620px){.about-cards{column-count:1}}.c-svg{display:block}.fcard-art{flex:none}.fcard--tape .fcard-art .tape-mount{display:block;line-height:0}.fcard--tape .c-tape{width:78px;height:51px}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .fcard--tape:hover .cs-reel{animation:tapespin 1.1s linear infinite}}.ic-badge{width:46px;height:46px;border:2.5px solid var(--toon-outline);border-radius:12px;display:grid;place-items:center;background:var(--paper-card);box-shadow:3px 3px 0 var(--bc,var(--accent));color:var(--bc,var(--accent))}.ic-badge svg{width:25px;height:25px}.fcard--beat{overflow:hidden}.fcard--beat .note{left:58px;top:20px;color:var(--accent)}.fcard--beat .note.n2{left:74px}.fcard--beat .note.n3{left:90px}.fcard--beat.on .note.n2{animation-delay:.35s}.fcard--beat.on .note.n3{animation-delay:.7s}.tall-figure .c-chibi-mount{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:96px;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease-back)}.tall-figure .c-chibi-mount .c-chibi{height:96px;width:auto;display:block}.tall-figure .fig-stand{opacity:0;transform:translateX(-50%) translateY(8px)}.feat--tall:focus-visible .fig-stand,.feat--tall:hover .fig-stand{opacity:1;transform:translateX(-50%) translateY(0)}.feat--tall:focus-visible .fig-sit,.feat--tall:hover .fig-sit{opacity:0}.about-map{margin:1.8rem auto 0;padding:0;width:100%;max-width:540px;border:2.5px solid var(--toon-outline);border-radius:14px;box-shadow:5px 5px 0 var(--accent);background:var(--paper-card);overflow:hidden}.map-stage{position:relative;width:100%;background:var(--map-ocean,#e9ddc4)}.map-svg{display:block;width:100%;height:auto}.map-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}.map-ocean{fill:var(--map-ocean,#e9ddc4)}.map-graticule path{fill:none;stroke:var(--toon-outline);stroke-width:.6;opacity:.12}.map-land{fill:var(--map-land,#3f6b4e);stroke:none}.map-borders{fill:none;stroke:var(--map-ocean,#e9ddc4);stroke-width:.8;opacity:.55}.map-arc{fill:none;stroke:var(--terracotta);stroke-width:4;stroke-linecap:round}.map-pin .pin-shadow{fill:rgba(20,14,8,.28)}.map-pin .pin-body{fill:var(--terracotta);stroke:var(--toon-outline);stroke-width:1.6}.map-pin .pin-dot{fill:#fff}.map-avatar{position:absolute;transform:translate(-72%,-82%);width:10%;pointer-events:none;z-index:3;opacity:0;transition:opacity var(--dur) var(--ease);filter:drop-shadow(2px 3px 3px rgba(20,14,8,.35))}.map-avatar .c-chibi{width:100%;height:auto;display:block}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .map-avatar{animation:mapbob 4.5s ease-in-out infinite}}@keyframes mapbob{0%,to{transform:translate(-72%,-82%)}50%{transform:translate(-72%,-88%)}}.map-wordmark{position:absolute;right:10px;bottom:9px;z-index:3;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent);padding:.25rem .55rem;border-radius:5px;border:1.6px solid var(--toon-outline);box-shadow:1.5px 1.5px 0 var(--toon-outline)}.map-cap{margin:0;padding:.8rem 1rem .9rem;text-align:center;font-size:.95rem;line-height:1.4;color:var(--ink);text-wrap:pretty;border-top:1.5px solid var(--toon-outline)}.map-cap b{color:var(--ink);font-weight:600}.map-cap .map-num{color:var(--accent);font-style:italic;font-weight:600;white-space:nowrap}.about-map.map-failed .map-stage{display:none}:root{--map-ocean:#ece0c6;--map-land:#5e8a6c}[data-theme=dark]{--map-ocean:#211c14;--map-land:#46583a}[data-theme=dark] .map-borders{stroke:#211c14;opacity:.5}[data-theme=dark] .map-graticule path{stroke:#8a7e6f;opacity:.14}.fcard--class .cl-photo{position:relative;margin:0;width:100%;aspect-ratio:4/3;overflow:hidden;border:2px solid var(--toon-outline);border-radius:10px;background:var(--ink)}.fcard--class .cl-photo img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04)}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .fcard--class .cl-photo img{animation:labpan 18s ease-in-out infinite alternate}}@keyframes labpan{0%{transform:scale(1.04) translate(0)}to{transform:scale(1.12) translate(-2.5%,-1.5%)}}.fcard--class .cl-photo:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 14%,transparent),transparent 40%,color-mix(in srgb,var(--ink) 30%,transparent));mix-blend-mode:multiply;opacity:.55}[data-theme=dark] .fcard--class .cl-photo:after{opacity:.7}.fcard--class .cl-sheen{position:absolute;top:-60%;left:-40%;width:40%;height:220%;background:linear-gradient(90deg,transparent,rgba(255,245,220,.5),transparent);transform:rotate(18deg);pointer-events:none;opacity:0}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .fcard--class .cl-sheen{animation:sheen 7s ease-in-out infinite}}@keyframes sheen{0%,70%{left:-40%;opacity:0}80%{opacity:.9}to{left:130%;opacity:0}}.fcard--class .cl-screenglow{position:absolute;top:4%;left:50%;transform:translateX(-50%);width:22%;height:22%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(150,110,255,.55),transparent 70%);mix-blend-mode:screen;opacity:0}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .fcard--class .cl-screenglow{animation:labglow 3.6s ease-in-out infinite}}.fcard--class .cl-spark{position:absolute;width:7px;height:7px;border-radius:50%;pointer-events:none;background:var(--ochre);box-shadow:0 0 6px 2px color-mix(in srgb,var(--ochre) 60%,transparent);opacity:0}.fcard--class .cl-spark.s1{top:24%;left:22%}.fcard--class .cl-spark.s2{top:38%;right:20%;background:var(--terracotta);box-shadow:0 0 6px 2px color-mix(in srgb,var(--terracotta) 60%,transparent)}@media (prefers-reduced-motion:no-preference){[data-motion=playful] .fcard--class .cl-spark.s1{animation:twinkle 2.6s ease-in-out infinite}[data-motion=playful] .fcard--class .cl-spark.s2{animation:twinkle 2.6s ease-in-out 1.3s infinite}}@keyframes twinkle{0%,to{opacity:0;transform:scale(.5)}50%{opacity:.9;transform:scale(1)}}.feat-duo{display:flex;gap:1rem;page-break-inside:avoid;break-inside:avoid;margin:0 0 1.2rem}.feat-duo>.feat{flex:1 1;min-width:0;margin:0}