@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-sans-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-sans-latin-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-sans-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-sans-latin-ext-600.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/plex-sans-thai-400.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/plex-sans-thai-600.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/newsreader-latin-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Newsreader;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/newsreader-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Newsreader;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/newsreader-latin-ext-600.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Noto Serif Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-serif-thai-400.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Serif Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/noto-serif-thai-600.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-latin-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-latin-ext-700.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-ext-600.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/figtree-latin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/figtree-latin-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/figtree-latin-ext-400.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/figtree-latin-ext-700.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,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}
:root{--paper:#fff;--paper-soft:#f5f5f5;--paper-raised:#fff;--ink:#111;--ink-muted:#5c5c5c;--ink-faint:#8a8a8a;--rule:#e2e2e2;--rule-strong:#111;--accent:#d52b1e;--accent-ink:#fff;--font-display:"IBM Plex Sans", "IBM Plex Sans Thai", system-ui, sans-serif;--font-body:"IBM Plex Sans", "IBM Plex Sans Thai", system-ui, sans-serif;--body-line:1.6;--body-line-thai:1.85;--heading-line:1.12;--heading-track:-.02em;--heading-weight:600;--heading-transform:none;--measure:34rem;--wide:76rem;--radius:0px;--radius-lg:0px;--border-w:1px;--panel-bg:transparent;--panel-border:var(--border-w) solid var(--rule-strong);--panel-shadow:none;--panel-blur:none;--button-bg:var(--ink);--button-ink:var(--paper);--button-border:1px solid var(--ink);--button-radius:0px;--button-shadow:none;--button-hover-bg:var(--accent);--button-hover-ink:var(--accent-ink);--button-weight:600;--button-transform:none;--button-track:0;--header-bg:var(--paper);--header-border:1px solid var(--rule);--header-shadow:none;--hero-bg:transparent;--hero-border:1px solid var(--rule);--hero-pad:4rem;--field-bg:var(--paper);--field-border:1px solid var(--rule-strong);--field-radius:0px;--list-rule:1px solid var(--rule);--footer-border:1px solid var(--rule-strong);--drop-cap:none}:root[data-theme=editorial]{--paper:#fbfaf6;--paper-soft:#f2efe7;--paper-raised:#fff;--ink:#171613;--ink-muted:#5a554b;--ink-faint:#8d867a;--rule:#ddd8cc;--rule-strong:#171613;--accent:#9c3b23;--accent-ink:#fff;--font-display:"Instrument Serif", "Noto Serif Thai", Georgia, serif;--font-body:"Newsreader", "Noto Serif Thai", Georgia, serif;--body-line:1.72;--body-line-thai:1.95;--heading-line:1.04;--heading-track:-.01em;--heading-weight:400;--measure:36rem;--wide:72rem;--radius:0px;--radius-lg:0px;--border-w:1px;--panel-border:1px solid var(--rule-strong);--button-bg:transparent;--button-ink:var(--ink);--button-border:1px solid var(--rule-strong);--button-hover-bg:var(--ink);--button-hover-ink:var(--paper);--button-weight:400;--button-transform:uppercase;--button-track:.1em;--header-border:1px solid var(--rule);--hero-border:1px solid var(--rule);--hero-pad:5rem;--field-border:1px solid var(--rule-strong);--list-rule:1px solid var(--rule);--footer-border:1px solid var(--rule-strong);--drop-cap:block}:root[data-theme=brutalist]{--paper:#fffef9;--paper-soft:#f2f0e6;--paper-raised:#fff;--ink:#0a0a0a;--ink-muted:#3d3d3d;--ink-faint:#6b6b6b;--rule:#0a0a0a;--rule-strong:#0a0a0a;--accent:#ff4d00;--accent-ink:#0a0a0a;--font-display:"Space Grotesk", "IBM Plex Sans Thai", system-ui, sans-serif;--font-body:"Space Grotesk", "IBM Plex Sans Thai", system-ui, sans-serif;--body-line:1.55;--body-line-thai:1.8;--heading-line:1;--heading-track:-.035em;--heading-weight:700;--measure:34rem;--wide:78rem;--radius:0px;--radius-lg:0px;--border-w:2px;--panel-bg:var(--paper-raised);--panel-border:2px solid var(--ink);--panel-shadow:6px 6px 0 var(--ink);--button-bg:var(--accent);--button-ink:var(--accent-ink);--button-border:2px solid var(--ink);--button-radius:0px;--button-shadow:4px 4px 0 var(--ink);--button-hover-bg:var(--ink);--button-hover-ink:#fff;--button-weight:700;--button-transform:uppercase;--button-track:.02em;--header-border:2px solid var(--ink);--hero-border:2px solid var(--ink);--hero-pad:4.5rem;--field-border:2px solid var(--ink);--list-rule:2px solid var(--ink);--footer-border:2px solid var(--ink)}:root[data-theme=aurora]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0a0c11;--paper-soft:#11141c;--paper-raised:#ffffff0b;--ink:#edf0f6;--ink-muted:#9aa4b6;--ink-faint:#6d768a;--rule:#ffffff1a;--rule-strong:#ffffff38;--accent:#7aa2ff;--accent-ink:#06080d;--font-display:"Inter", "IBM Plex Sans Thai", system-ui, sans-serif;--font-body:"Inter", "IBM Plex Sans Thai", system-ui, sans-serif;--body-line:1.65;--body-line-thai:1.9;--heading-line:1.08;--heading-track:-.03em;--heading-weight:600;--measure:35rem;--wide:76rem;--radius:12px;--radius-lg:20px;--border-w:1px;--panel-bg:var(--paper-raised);--panel-border:1px solid var(--rule);--panel-shadow:0 18px 50px -20px #000c;--panel-blur:saturate(160%) blur(14px);--button-bg:var(--accent);--button-ink:var(--accent-ink);--button-border:1px solid transparent;--button-radius:999px;--button-shadow:0 10px 30px -12px color-mix(in srgb, var(--accent) 70%, transparent);--button-hover-bg:#fff;--button-hover-ink:#06080d;--button-weight:600;--header-bg:color-mix(in srgb, var(--paper) 78%, transparent);--header-border:1px solid var(--rule);--header-shadow:0 1px 0 #ffffff0a;--hero-bg:radial-gradient(110% 80% at 12% -10%, color-mix(in srgb, var(--accent) 28%, transparent) 0%, transparent 60%), radial-gradient(90% 70% at 92% 0%, #9b6dff3d 0%, transparent 62%);--hero-border:1px solid var(--rule);--hero-pad:5.5rem;--field-bg:#ffffff0a;--field-border:1px solid var(--rule);--field-radius:10px;--list-rule:1px solid var(--rule);--footer-border:1px solid var(--rule)}:root[data-theme=warm]{--paper:#fdf8f2;--paper-soft:#f4ebdf;--paper-raised:#fff;--ink:#2b2118;--ink-muted:#6d5c4b;--ink-faint:#9c8b78;--rule:#e6d9c8;--rule-strong:#d8c6ae;--accent:#a8552a;--accent-ink:#fff;--font-display:"Figtree", "IBM Plex Sans Thai", system-ui, sans-serif;--font-body:"Figtree", "IBM Plex Sans Thai", system-ui, sans-serif;--body-line:1.7;--body-line-thai:1.95;--heading-line:1.12;--heading-track:-.02em;--heading-weight:700;--measure:34rem;--wide:74rem;--radius:16px;--radius-lg:28px;--border-w:1px;--panel-bg:var(--paper-raised);--panel-border:1px solid var(--rule);--panel-shadow:0 16px 40px -24px #50371e73;--button-bg:var(--accent);--button-ink:var(--accent-ink);--button-border:1px solid transparent;--button-radius:999px;--button-shadow:0 10px 24px -14px #78461eb3;--button-hover-bg:var(--ink);--button-hover-ink:var(--paper);--button-weight:700;--header-bg:color-mix(in srgb, var(--paper) 86%, transparent);--header-border:1px solid var(--rule);--hero-bg:radial-gradient(120% 90% at 80% -20%, color-mix(in srgb, var(--accent) 16%, transparent) 0%, transparent 65%);--hero-border:1px solid var(--rule);--hero-pad:5rem;--field-bg:var(--paper-raised);--field-border:1px solid var(--rule-strong);--field-radius:12px;--list-rule:1px solid var(--rule);--footer-border:1px solid var(--rule)}
:root{--gutter:1.25rem;--step-0:1rem;--step-1:1.125rem;--step-2:1.5rem;--step-3:2rem;--step-4:2.625rem;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2.5rem;--space-5:4rem;--space-6:6rem}@media (min-width:48rem){:root{--gutter:2rem;--step-2:1.625rem;--step-3:2.375rem;--step-4:3.75rem}}:root[data-theme=editorial]{--step-4:3rem}@media (min-width:48rem){:root[data-theme=editorial]{--step-4:4.5rem}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--paper)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:var(--body-line);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}html[lang=th] body{line-height:var(--body-line-thai)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--heading-weight);line-height:var(--heading-line);letter-spacing:var(--heading-track);margin:0 0 var(--space-2);text-wrap:balance}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3{letter-spacing:0;line-height:1.35}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-2)}p,ul,ol{margin:0 0 var(--space-2)}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}img,svg,video{max-width:100%;height:auto;display:block}hr{border:0;border-top:var(--list-rule);margin:var(--space-4) 0}::selection{background:var(--accent);color:var(--accent-ink)}.wrap{width:100%;max-width:var(--wide);padding-inline:var(--gutter);margin-inline:auto}.measure{max-width:var(--measure)}.site{background:var(--paper);min-height:100dvh;color:var(--ink);flex-direction:column;display:flex}main{flex:1 0 auto}.skip-link{background:var(--ink);color:var(--paper);padding:var(--space-1) var(--space-2);z-index:100;position:absolute;top:0;left:-9999px}.skip-link:focus{left:var(--gutter);top:var(--space-1)}.site-header{border-bottom:var(--header-border);background:var(--header-bg);box-shadow:var(--header-shadow);z-index:20;-webkit-backdrop-filter:var(--panel-blur);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:4rem;display:flex}.site-header__right{align-items:center;gap:var(--space-1);display:flex}.brand{font-family:var(--font-display);font-weight:var(--heading-weight);font-size:var(--step-1);letter-spacing:var(--heading-track);align-items:center;gap:.625rem;padding-block:.5rem;text-decoration:none;display:inline-flex}:root[data-theme=brutalist] .brand,:root[data-theme=warm] .brand{font-weight:700}.brand img{width:auto;max-height:2rem}.nav{display:none}.nav ul{align-items:center;gap:var(--space-3);margin:0;padding:0;list-style:none;display:flex}.nav a{border-bottom:2px solid #0000;padding-block:.75rem;font-size:.9375rem;text-decoration:none;display:inline-block}.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--accent)}.nav__sub{display:none}@media (min-width:60rem){.nav{display:block}.nav__item{position:relative}.nav__item:hover .nav__sub,.nav__item:focus-within .nav__sub{background:var(--paper);border:var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);min-width:12rem;padding:var(--space-1) 0;display:block;position:absolute;top:100%;left:0}.nav__sub ul{flex-direction:column;align-items:stretch;gap:0}.nav__sub a{padding:.5rem var(--space-2);width:100%}}.menu-toggle{display:block}.menu-toggle>summary{cursor:pointer;border:var(--border-w) solid var(--rule-strong);border-radius:var(--button-radius);color:var(--ink);font-family:var(--font-body);font-size:.875rem;font-weight:var(--button-weight);text-transform:var(--button-transform);letter-spacing:var(--button-track);-webkit-user-select:none;user-select:none;background:0 0;align-items:center;min-height:2.75rem;padding:.625rem .75rem;list-style:none;display:inline-flex}.menu-toggle>summary::-webkit-details-marker{display:none}.menu-panel{background:var(--paper);border-bottom:var(--header-border);padding:var(--space-2) var(--gutter) var(--space-3);position:absolute;top:100%;left:0;right:0}.menu-panel ul{margin:0;padding:0;list-style:none}.menu-panel a{border-bottom:var(--list-rule);min-height:2.75rem;padding:.75rem 0;text-decoration:none;display:block}.menu-panel ul ul a{padding-left:var(--space-2);color:var(--ink-muted)}@media (min-width:60rem){.menu-toggle{display:none}}.langs{align-items:center;gap:.125rem;margin:0;padding:0;list-style:none;display:flex}.langs a{letter-spacing:.04em;min-width:2.75rem;min-height:2.75rem;color:var(--ink-faint);border-radius:var(--radius);justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.langs a[aria-current=true]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}:root[data-theme=warm] .langs a[aria-current=true],:root[data-theme=aurora] .langs a[aria-current=true]{background:color-mix(in srgb, var(--accent) 18%, transparent);box-shadow:none}.hero{padding-block:var(--hero-pad) var(--space-4);border-bottom:var(--hero-border);background:var(--hero-bg)}.hero__intro{font-size:var(--step-1);color:var(--ink-muted);max-width:var(--measure)}.hero__image{margin-top:var(--space-4);border-radius:var(--radius-lg);width:100%}.page-head{padding-block:var(--space-4) var(--space-3)}.block{padding-block:var(--space-4)}.block+.block{padding-top:0}.prose{max-width:var(--measure)}.prose--wide{max-width:52rem}.prose h2{margin-top:var(--space-4)}.prose h3{margin-top:var(--space-3)}.prose ul,.prose ol{padding-left:1.25rem}.prose li{margin-bottom:.375rem}.prose blockquote{margin:var(--space-3) 0;padding-left:var(--space-2);border-left:2px solid var(--accent);color:var(--ink-muted)}.prose a{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.prose img{border-radius:var(--radius)}:root[data-theme=editorial] h3,:root[data-theme=editorial] .feature h3,:root[data-theme=editorial] .post-list h2{font-family:var(--font-body);font-weight:600}.prose>p:first-of-type:first-letter{display:var(--drop-cap,none);float:left;font-family:var(--font-display);color:var(--accent);padding-top:.06em;padding-right:.08em;font-size:3.4em;line-height:.82}.figure figcaption{color:var(--ink-muted);margin-top:var(--space-1);font-size:.875rem}.figure img{border-radius:var(--radius)}.figure--full{margin-inline:calc(var(--gutter) * -1)}.figure--full img{border-radius:0}@media (min-width:76rem){.figure--full{margin-inline:calc((100vw - var(--wide)) / -2 - var(--gutter))}}.features__grid{gap:var(--space-3);border-top:var(--list-rule);padding-top:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:40rem){.features__grid[data-columns="2"],.features__grid[data-columns="3"],.features__grid[data-columns="4"]{grid-template-columns:repeat(2,1fr)}}@media (min-width:64rem){.features__grid[data-columns="3"]{grid-template-columns:repeat(3,1fr)}.features__grid[data-columns="4"]{grid-template-columns:repeat(4,1fr)}}.feature h3{font-size:var(--step-1);margin-bottom:.25rem}.feature p{color:var(--ink-muted);margin:0}:root[data-theme=brutalist] .features__grid,:root[data-theme=aurora] .features__grid,:root[data-theme=warm] .features__grid{border-top:0;padding-top:0}:root[data-theme=brutalist] .feature,:root[data-theme=aurora] .feature,:root[data-theme=warm] .feature{background:var(--panel-bg);border:var(--panel-border);border-radius:var(--radius-lg);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:var(--panel-blur);padding:var(--space-3)}.cta{border:var(--panel-border);border-radius:var(--radius-lg);background:var(--panel-bg);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:var(--panel-blur);padding:var(--space-3)}@media (min-width:48rem){.cta{padding:var(--space-4);align-items:center;gap:var(--space-3);grid-template-columns:1fr auto;display:grid}}.cta h2{margin-bottom:var(--space-1)}.cta p{color:var(--ink-muted);max-width:var(--measure);margin:0}.button{background:var(--button-bg);min-height:2.75rem;color:var(--button-ink);border:var(--button-border);border-radius:var(--button-radius);box-shadow:var(--button-shadow);font-family:var(--font-body);font-weight:var(--button-weight);text-transform:var(--button-transform);letter-spacing:var(--button-track);cursor:pointer;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.9375rem;text-decoration:none;transition:background-color .15s,color .15s,transform .1s,box-shadow .15s;display:inline-flex}.button:hover{background:var(--button-hover-bg);color:var(--button-hover-ink);border-color:var(--button-hover-bg)}:root[data-theme=brutalist] .button:hover{box-shadow:2px 2px 0 var(--ink);border-color:var(--ink);transform:translate(2px,2px)}.post-list{border-top:var(--list-rule);margin:0;padding:0;list-style:none}.post-list li{border-bottom:var(--list-rule)}.post-list a{padding-block:var(--space-3);gap:.25rem;text-decoration:none;display:grid}@media (min-width:48rem){.post-list a{gap:var(--space-3);grid-template-columns:9rem 1fr;align-items:baseline}}.post-list time{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.875rem}.post-list h2{font-size:var(--step-2);margin:0 0 .25rem}.post-list p{color:var(--ink-muted);max-width:var(--measure);margin:0}.post-list a:hover h2{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.2em}.post-meta{color:var(--ink-faint);margin-bottom:var(--space-3);font-size:.875rem}.back-link{margin-top:var(--space-4);font-size:.9375rem;display:inline-block}.form{max-width:var(--measure);gap:var(--space-2);display:grid}.field{gap:.375rem;display:grid}.field label{font-size:.875rem;font-weight:600}.field input,.field textarea{font-family:var(--font-body);color:var(--ink);background:var(--field-bg);border:var(--field-border);border-radius:var(--field-radius);width:100%;min-height:2.75rem;padding:.75rem;font-size:1rem}.field textarea{resize:vertical;min-height:9rem}.field input:focus-visible,.field textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.hp{width:1px;height:1px;left:-10000px;overflow:hidden;position:absolute!important}.notice{border-left:3px solid var(--accent);border-radius:var(--radius);background:var(--paper-soft);padding:var(--space-2);margin-bottom:var(--space-3);max-width:var(--measure)}.notice--error{border-left-color:#c0362c}.contact-details{margin:0 0 var(--space-3);color:var(--ink-muted);padding:0;list-style:none}.site-footer{border-top:var(--footer-border);margin-top:var(--space-6);padding-block:var(--space-4) var(--space-3);font-size:.9375rem}.site-footer__cols{gap:var(--space-3);grid-template-columns:1fr;display:grid}@media (min-width:40rem){.site-footer__cols{grid-template-columns:repeat(2,1fr)}}@media (min-width:64rem){.site-footer__cols{grid-template-columns:repeat(4,1fr)}}.site-footer h2{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin-bottom:var(--space-1);font-size:.8125rem;font-weight:600}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin-bottom:.375rem}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.site-footer__base{margin-top:var(--space-4);padding-top:var(--space-2);border-top:var(--list-rule);gap:var(--space-2);color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;font-size:.875rem;display:flex}.social{gap:var(--space-2);margin:var(--space-4) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}@media print{.site-header,.site-footer,.langs,.menu-toggle{display:none!important}:root{--paper:#fff;--ink:#000}body{font-size:11pt}}
:root{--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1);--t-fast:.14s;--t-base:.26s;--t-slow:.52s;--lift:-3px}:root[data-theme=swiss],:root[data-theme=editorial]{--lift:0px}@view-transition{navigation:auto}::view-transition-old(root){animation-duration:.24s;animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:.24s;animation-timing-function:var(--ease-out)}@media (hover:hover){.prose a,.site-footer a,.contact-details a,.back-link{background-image:linear-gradient(var(--accent), var(--accent));transition:background-size var(--t-base) var(--ease-out);background-position:0 100%;background-repeat:no-repeat;background-size:0 1.5px;padding-bottom:2px;text-decoration:none}.prose a:hover,.site-footer a:hover,.contact-details a:hover,.back-link:hover{background-size:100% 1.5px;text-decoration:none}.back-link{transition:background-size var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out)}.back-link:hover{transform:translate(-3px)}}.prose a:focus-visible,.site-footer a:focus-visible{background-size:100% 1.5px}.nav a{border-bottom:0;position:relative}.nav a:after{content:"";background:var(--accent);transform-origin:100%;height:2px;transition:transform var(--t-base) var(--ease-out);position:absolute;bottom:.4rem;left:0;right:0;transform:scaleX(0)}.nav a:hover:after,.nav a:focus-visible:after,.nav a[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.brand{transition:opacity var(--t-fast) ease}@media (hover:hover){.brand:hover{opacity:.72}}.langs a{transition:color var(--t-fast) ease, background-color var(--t-fast) ease, box-shadow var(--t-fast) ease}@media (hover:hover){.langs a:hover{color:var(--ink)}}@media (prefers-reduced-motion:no-preference){.menu-toggle[open] .menu-panel{animation:panel-in var(--t-base) var(--ease-out) both}}@keyframes panel-in{0%{opacity:0;transform:translateY(-8px)}}.menu-toggle>summary{transition:background-color var(--t-fast) ease, color var(--t-fast) ease}@media (hover:hover){.menu-toggle>summary:hover{background:var(--ink);color:var(--paper)}}.feature,.cta{transition:transform var(--t-base) var(--ease-out), box-shadow var(--t-base) var(--ease-out), border-color var(--t-base) ease, background-color var(--t-base) ease}@media (hover:hover){:root[data-theme=warm] .feature:hover,:root[data-theme=warm] .cta:hover,:root[data-theme=aurora] .feature:hover,:root[data-theme=aurora] .cta:hover{transform:translateY(var(--lift))}:root[data-theme=aurora] .feature:hover,:root[data-theme=aurora] .cta:hover{border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:0 18px 50px -20px #000c, 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent)}:root[data-theme=warm] .feature:hover,:root[data-theme=warm] .cta:hover{box-shadow:0 22px 46px -22px #50371e8c}:root[data-theme=brutalist] .feature:hover,:root[data-theme=brutalist] .cta:hover{box-shadow:9px 9px 0 var(--ink);transform:translate(-3px,-3px)}:root[data-theme=swiss] .feature,:root[data-theme=editorial] .feature{padding-top:.75rem;position:relative}:root[data-theme=swiss] .feature:before,:root[data-theme=editorial] .feature:before{content:"";background:var(--accent);transform-origin:0;width:100%;height:2px;transition:transform var(--t-base) var(--ease-out);position:absolute;inset:0 auto auto 0;transform:scaleX(0)}:root[data-theme=swiss] .feature:hover:before,:root[data-theme=editorial] .feature:hover:before{transform:scaleX(1)}}.button{will-change:transform;position:relative;overflow:hidden}.button:active{transform:translateY(1px)}:root[data-theme=brutalist] .button:active{box-shadow:1px 1px 0 var(--ink);transform:translate(3px,3px)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.button:after{content:"";transition:transform var(--t-slow) var(--ease-soft);pointer-events:none;background:linear-gradient(100deg,#0000 20%,#ffffff47 50%,#0000 80%);position:absolute;inset:0;transform:translate(-120%)}.button:hover:after{transform:translate(120%)}:root[data-theme=aurora] .button:hover{box-shadow:0 14px 40px -12px color-mix(in srgb, var(--accent) 85%, transparent)}}.figure,.hero__image-frame{border-radius:var(--radius);overflow:hidden}.figure img,.hero__image{transition:transform var(--t-slow) var(--ease-out);will-change:transform}@media (hover:hover){.figure:hover img{transform:scale(1.035)}}.post-list a{transition:background-color var(--t-base) ease}.post-list a>*{transition:transform var(--t-base) var(--ease-out)}.post-list h2{transition:color var(--t-fast) ease}.post-list h2:after{content:" →";opacity:0;transition:opacity var(--t-base) var(--ease-out), transform var(--t-base) var(--ease-out);display:inline-block;transform:translate(-6px)}@media (hover:hover){.post-list a:hover{background:var(--paper-soft)}.post-list a:hover>*{transform:translate(.6rem)}.post-list a:hover h2{text-decoration:none}.post-list a:hover h2:after,.post-list a:focus-visible h2:after{opacity:1;transform:translate(0)}}.field label{transition:color var(--t-fast) ease}.field:focus-within label{color:var(--accent)}.field input,.field textarea{transition:border-color var(--t-fast) ease, box-shadow var(--t-fast) ease, background-color var(--t-fast) ease}@media (hover:hover){.field input:hover,.field textarea:hover{border-color:color-mix(in srgb, var(--accent) 60%, var(--rule-strong))}}.notice{animation:notice-in var(--t-base) var(--ease-out) both}@keyframes notice-in{0%{opacity:0;transform:translateY(-6px)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.block,.post-list li,.site-footer__cols>*{animation:linear both rise-in;animation-timeline:view();animation-range:entry entry 45%}.site-header{animation:linear both header-settle;animation-timeline:scroll(root);animation-range:0 140px}}}@keyframes rise-in{0%{opacity:0;transform:translateY(20px)}}@keyframes header-settle{to{box-shadow:0 10px 30px -24px #000000a6}}:root[data-theme=aurora] .hero{isolation:isolate;position:relative;overflow:hidden}:root[data-theme=aurora] .hero:before{content:"";z-index:-1;background:radial-gradient(30rem 30rem at var(--pointer-x,50%) var(--pointer-y,0%), color-mix(in srgb, var(--accent) 26%, transparent), transparent 68%);opacity:var(--pointer-glow,0);transition:opacity .6s var(--ease-out);pointer-events:none;position:absolute;inset:0}
