*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--container-max:75rem;--gutter:clamp(1.25rem, 5vw, 4rem);--section-y:clamp(4rem, 8.5vw, 7rem);--section-y-small:clamp(3rem, 6.5vw, 5rem);--intro-y:clamp(3rem, 7vw, 5.5rem);--gap-split:clamp(2.5rem, 6vw, 5rem);--gap-grid:clamp(1rem, 2.4vw, 1.5rem);--space-head:clamp(2rem, 4.5vw, 3.25rem);--header-height:4.5rem;--control-height:2.5rem;--control-size:2.5rem;--tile-height:3.25rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-badge:999px;--radius:.75rem;--radius-card:1.125rem;--radius-panel:1.5rem;--font-heading:var(--font-gluten), "Trebuchet MS", sans-serif;--font-body:var(--font-be-vietnam), system-ui, sans-serif;--font-mono:var(--font-be-vietnam), system-ui, sans-serif;--fs-h1:clamp(2.5rem, 5.6vw, 4.25rem);--fs-h2:clamp(1.875rem, 3.4vw, 2.75rem);--fs-h2-small:clamp(1.5rem, 2.6vw, 2rem);--fs-h3:clamp(1.25rem, 1.8vw, 1.5rem);--fs-number:clamp(2rem, 3.6vw, 3rem);--fs-title:1.5rem;--fs-title-sm:1.25rem;--fs-lead:clamp(1.125rem, 1.5vw, 1.25rem);--fs-body:clamp(1rem, 1.05vw, 1.0625rem);--fs-small:.9375rem;--fs-xs:.875rem;--fs-2xs:.8125rem;--fs-mono:.78125rem;--fs-mono-small:.71875rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--ease:cubic-bezier(.22, .61, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-tok:cubic-bezier(.34, 1.56, .64, 1);--color-tok:#c8452c;--color-tok-hover:#b33a23;--color-tok-ink:#fff7ee;--color-kraft:#e6cfa4;--color-kraft-deep:#b88d57;--color-kraft-ink:#24211c;--color-stamp:#2d3f94;--color-on-photo:#f6efe1;--shadow-on-dark:.125rem .375rem 1.5rem #00000073;--shadow-on-dark-pressed:inset .0625rem .0625rem .625rem #0000008c;--shadow-raised:var(--shadow-outer), var(--shadow-inner-none);--shadow-pressed:var(--shadow-outer-none), var(--shadow-inner)}@media (pointer:coarse){:root{--control-height:2.75rem;--control-size:2.75rem}}:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--color-bg:#f4ecdc;--color-bg-alt:#ebdec4;--color-card:#fbf7ef;--color-text:#24211c;--color-text-soft:#4a443a;--color-muted:#675d4f;--color-line:#ddd0b6;--color-line-field:#8f8470;--color-accent:#6b4320;--color-accent-strong:#55341a;--color-accent-soft:#eedcbf;--color-warm-text:#a33a24;--color-warm-soft:#f8dfd4;--color-good:#2f6b46;--color-good-soft:#dcebdf;--color-photo:#ddd0b6;--color-primary:#6b4320;--color-primary-text:#fbf7ef;--color-primary-hover:#5c391b;--color-selected:#eedcbf;--color-error:#a8261c;--color-focus:#24211c;--color-selection:#f3c9b8;--color-ink:#3b2715;--color-ink-slate:#33210f;--color-ink-footer:#24170b;--color-ink-text:#f4ecdc;--color-ink-muted:#d6c7b0;--color-ink-line:#54391f;--color-ink-label:#f4b39f;--color-surface:#fbf7ef;--color-surface-2:#f1e8d6;--color-context:var(--color-bg);--pressed-shade:4%;--color-overlay:#24211c73;--shadow-outer:.0625rem .125rem .75rem #4a341629;--shadow-outer-none:0 0 0 0 #4a341600;--shadow-inner:inset .0625rem .0625rem .625rem #4a341633;--shadow-inner-active:inset .125rem .125rem .75rem #4a34164d;--shadow-inner-none:inset 0 0 0 0 #4a341600;--shadow-float:0 .75rem 2rem #4a34162e, 0 .125rem .375rem #4a34161a;--shadow-overlay:0 1.5rem 3.5rem #4a34163d;--shadow-up:0 -.0625rem .625rem #4a341624}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;--color-bg:#1c150e;--color-bg-alt:#221a11;--color-card:#2c2217;--color-text:#f4ecdc;--color-text-soft:#ddd3c0;--color-muted:#b2aa9a;--color-line:#40321f;--color-line-field:#8a7d68;--color-accent:#e6cfa4;--color-accent-strong:#f1e1c2;--color-accent-soft:#3b2d1c;--color-warm-text:#f5a58d;--color-warm-soft:#3d2622;--color-good:#9dd3ae;--color-good-soft:#1f3329;--color-photo:#31261a;--color-primary:#e6cfa4;--color-primary-text:#1c150e;--color-primary-hover:#eedcb6;--color-selected:#3b2d1c;--color-error:#f0a49a;--color-focus:#e6cfa4;--color-selection:#5a3328;--color-ink:#2e2215;--color-ink-slate:#281d11;--color-ink-footer:#120c06;--color-ink-text:#f4ecdc;--color-ink-muted:#cdbfa9;--color-ink-line:#3f2f1d;--color-ink-label:#f4b39f;--color-surface:#2c2217;--color-surface-2:#34291b;--color-context:var(--color-bg);--pressed-shade:30%;--color-overlay:#0000008c;--color-kraft:#d6bd90;--shadow-outer:.0625rem .125rem .75rem #0000008c;--shadow-outer-none:0 0 0 0 #0000;--shadow-inner:inset .0625rem .0625rem .625rem #0009;--shadow-inner-active:inset .125rem .125rem .75rem #000000d9;--shadow-inner-none:inset 0 0 0 0 #0000;--shadow-float:0 .75rem 2rem #00000080, 0 .125rem .375rem #0000004d;--shadow-overlay:0 1.5rem 3.5rem #0009;--shadow-up:0 -.0625rem .625rem #0009}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;--color-bg:#1c150e;--color-bg-alt:#221a11;--color-card:#2c2217;--color-text:#f4ecdc;--color-text-soft:#ddd3c0;--color-muted:#b2aa9a;--color-line:#40321f;--color-line-field:#8a7d68;--color-accent:#e6cfa4;--color-accent-strong:#f1e1c2;--color-accent-soft:#3b2d1c;--color-warm-text:#f5a58d;--color-warm-soft:#3d2622;--color-good:#9dd3ae;--color-good-soft:#1f3329;--color-photo:#31261a;--color-primary:#e6cfa4;--color-primary-text:#1c150e;--color-primary-hover:#eedcb6;--color-selected:#3b2d1c;--color-error:#f0a49a;--color-focus:#e6cfa4;--color-selection:#5a3328;--color-ink:#2e2215;--color-ink-slate:#281d11;--color-ink-footer:#120c06;--color-ink-text:#f4ecdc;--color-ink-muted:#cdbfa9;--color-ink-line:#3f2f1d;--color-ink-label:#f4b39f;--color-surface:#2c2217;--color-surface-2:#34291b;--color-context:var(--color-bg);--pressed-shade:30%;--color-overlay:#0000008c;--color-kraft:#d6bd90;--shadow-outer:.0625rem .125rem .75rem #0000008c;--shadow-outer-none:0 0 0 0 #0000;--shadow-inner:inset .0625rem .0625rem .625rem #0009;--shadow-inner-active:inset .125rem .125rem .75rem #000000d9;--shadow-inner-none:inset 0 0 0 0 #0000;--shadow-float:0 .75rem 2rem #00000080, 0 .125rem .375rem #0000004d;--shadow-overlay:0 1.5rem 3.5rem #0009;--shadow-up:0 -.0625rem .625rem #0009}}.band_ink,.band_slate,.band_footer{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;background-color:var(--band-bg);color:var(--color-ink-text);--color-text:var(--color-ink-text);--color-text-soft:var(--color-ink-muted);--color-muted:var(--color-ink-muted);--color-line:var(--color-ink-line);--color-line-field:#8d8fb0;--color-accent:var(--color-ink-label);--color-accent-strong:#f8cbbd;--color-primary:var(--color-ink-label);--color-primary-text:#1f1a17;--color-primary-hover:#f7c4b3;--color-focus:#f4b39f;--color-error:#f0a49a;--color-surface:color-mix(in srgb, var(--band-bg), white 7%);--color-surface-2:color-mix(in srgb, var(--band-bg), white 11%);--color-context:var(--band-bg);--pressed-shade:30%;--shadow-outer:var(--shadow-on-dark);--shadow-inner:var(--shadow-on-dark-pressed);--shadow-inner-active:inset .125rem .125rem .75rem #000000bf}.band_ink{--band-bg:var(--color-ink)}.band_slate{--band-bg:var(--color-ink-slate)}.band_footer{--band-bg:var(--color-ink-footer)}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem);-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;flex-direction:column;line-height:1.6;display:flex}body.menu-open{overflow:hidden}main{flex:1}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:0;text-wrap:balance;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-synthesis:none;font-weight:700;line-height:1.12}h3,h4{font-family:var(--font-body);font-weight:var(--fw-bold);letter-spacing:-.01em}p{text-wrap:pretty}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}ul,ol{list-style:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;border-radius:0}::selection{background-color:var(--color-selection);color:var(--color-text)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@keyframes fade-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}[data-reveal-ready] [data-reveal]:not([data-revealed]){opacity:0;transform:translateY(1.5rem)}[data-reveal-ready] [data-reveal]{transition:opacity .8s var(--ease-out), transform .8s var(--ease-out)}[data-reveal-ready] [data-reveal=stagger]:not([data-revealed]){opacity:1;transform:none}[data-reveal-ready] [data-reveal=stagger]:not([data-revealed])>*{opacity:0;transform:translateY(1.5rem)}[data-reveal-ready] [data-reveal=stagger]>*{transition:opacity .8s var(--ease-out), transform .8s var(--ease-out)}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(2){transition-delay:70ms}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(3){transition-delay:.14s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(4){transition-delay:.21s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(5){transition-delay:.28s}[data-reveal-ready] [data-reveal=stagger]>*:nth-child(n+6){transition-delay:.35s}[data-reveal-ready] [data-reveal=line]:not([data-revealed]){opacity:1;transform:scaleX(0)}[data-reveal=line]{transform-origin:0}[data-reveal-ready] [data-reveal=line]{transition:transform 1.4s var(--ease-out)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}[data-reveal-ready] [data-reveal]:not([data-revealed]),[data-reveal-ready] [data-reveal=stagger]:not([data-revealed])>*,[data-reveal-ready] [data-reveal=line]:not([data-revealed]){opacity:1;transform:none}}.hover_in_shadow{isolation:isolate;position:relative}.hover_in_shadow:before,.hover_in_shadow:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0}.hover_in_shadow:before{z-index:-1;box-shadow:var(--shadow-outer);background-color:#0000;transition:box-shadow .3s,background-color .3s}.hover_in_shadow:after{z-index:2;box-shadow:var(--shadow-inner);opacity:0;transition:opacity .3s,box-shadow .15s}:is(.hover_in_shadow:hover,.hover_in_shadow:focus-visible,.hover_in_shadow[aria-expanded=true],.hover_in_shadow[aria-pressed=true]):before{box-shadow:var(--shadow-outer-none);background-color:color-mix(in srgb, var(--color-context), black var(--pressed-shade))}:is(.hover_in_shadow:hover,.hover_in_shadow:focus-visible,.hover_in_shadow[aria-expanded=true],.hover_in_shadow[aria-pressed=true]):after{opacity:1}.hover_in_shadow:active:after{box-shadow:var(--shadow-inner-active)}.container{width:100%;max-width:calc(var(--container-max) + 2 * var(--gutter));padding-inline:var(--gutter);margin:0 auto}.visually_hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page_title{font-size:var(--fs-h1);letter-spacing:-.02em;line-height:1.04}.section_title{font-size:var(--fs-h2);letter-spacing:-.015em;line-height:1.08}.section_title_small{font-size:var(--fs-h2-small);letter-spacing:-.01em;line-height:1.12}.page_title em,.section_title em,.section_title_small em{color:var(--color-accent);background:radial-gradient(circle, color-mix(in srgb, var(--color-tok) 55%, transparent) 0 .04em, transparent .05em) 0 96% / .26em .14em repeat-x;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-bottom:.08em;font-style:normal}.label{color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-mono);font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;align-self:flex-start;align-items:center;gap:.625rem;line-height:1.3;display:inline-flex}.label:before{content:"";background-color:color-mix(in srgb, var(--color-context), black 9%);width:.8rem;height:.8rem;box-shadow:inset .08rem .1rem .18rem #00000059, 0 0 0 .16rem color-mix(in srgb, var(--color-kraft-deep) 55%, transparent);border-radius:50%;flex-shrink:0}.perforation{background:radial-gradient(circle, color-mix(in srgb, var(--color-text) 22%, transparent) 0 .16rem, transparent .18rem) 0 50% / .9rem .5rem repeat-x;height:.5rem}.mono{color:var(--color-muted);font-size:var(--fs-mono);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase}.tabular{font-variant-numeric:tabular-nums}.lead{max-width:38rem;color:var(--color-text-soft);font-size:var(--fs-lead);font-weight:300;line-height:1.55}.text_link{min-height:2.75rem;color:var(--color-accent);font-weight:var(--fw-semibold);text-underline-offset:3px;align-self:flex-start;align-items:center;text-decoration:underline;text-decoration-thickness:1px;transition:color .15s;display:inline-flex}.text_link:after{content:" →";transition:transform .15s;display:inline-block}.text_link:hover{color:var(--color-text)}.text_link:hover:after{transform:translate(2px)}
html[data-a11y-text="112"]{font-size:112.5%}html[data-a11y-text="125"]{font-size:125%}html[data-a11y-text="150"]{font-size:125%}@media (min-width:45em){html[data-a11y-text="150"]{font-size:150%}}html[data-a11y-spacing=on] body :where(p,li,dd,dt,blockquote,td,th,label,figcaption,small){line-height:1.75!important}html[data-a11y-spacing=on] body :where(p,li,dd,dt,blockquote,td,th,label,figcaption,small,a,button,span){letter-spacing:.12em!important;word-spacing:.16em!important}html[data-a11y-spacing=on] body :where(p){margin-block-end:1em}html[data-a11y-font=on] body,html[data-a11y-font=on] body :where(:not(svg,svg *,code,kbd,pre)){font-family:Atkinson Hyperlegible,Verdana,Tahoma,Segoe UI,system-ui,sans-serif!important;font-style:normal!important}html[data-a11y-contrast=on] body{text-shadow:none!important}html[data-a11y-contrast=on] :focus-visible{outline-offset:3px!important;outline:3px solid!important}html[data-a11y-contrast=on] body :where(img,video){filter:none!important}html[data-a11y-contrast=on] body :where(input,select,textarea){border:2px solid!important}html[data-a11y-contrast=max]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only;background:#000!important}html[data-a11y-contrast=max] body,html[data-a11y-contrast=max] body :not(svg,svg *,img,picture,video,canvas,iframe){color:#fff!important;box-shadow:none!important;text-shadow:none!important;background-color:#000!important;background-image:none!important;border-color:#fff!important}html[data-a11y-contrast=max] body :where(a,a *){color:#ffe14d!important}html[data-a11y-contrast=max] body :where(button,[role=button],input,select,textarea,dialog>*){border:2px solid #fff!important}html[data-a11y-contrast=max] :focus-visible{outline-offset:3px!important;outline:3px solid #ffe14d!important}html[data-a11y-contrast=max] ::placeholder{color:#c8c8c8!important}html[data-a11y-colors=deutan]{filter:url(#a11y-deutan)}html[data-a11y-colors=protan]{filter:url(#a11y-protan)}html[data-a11y-colors=tritan]{filter:url(#a11y-tritan)}html[data-a11y-cursor=on],html[data-a11y-cursor=on] *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M5 3v31l8.5-8 5.5 12.5 6-2.6-5.4-12.2H31Z' fill='%23111' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 5 3,auto!important}html[data-a11y-cursor=on] :is(a,button,summary,label,select,[role=button],[role=switch],[role=tab]),html[data-a11y-cursor=on] :is(a,button,summary,label,[role=button]) *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M5 3v31l8.5-8 5.5 12.5 6-2.6-5.4-12.2H31Z' fill='%23ffd21a' stroke='%23111' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 5 3,pointer!important}html[data-a11y-cursor=on] :is(input:not([type=checkbox],[type=radio],[type=range],[type=submit],[type=button]),textarea){cursor:text!important}html[data-a11y-speech=on] main :where(h1,h2,h3,h4,p,li,blockquote,figcaption,dt,dd,td,th){cursor:pointer}[data-a11y-reading]{outline-offset:2px;border-radius:.25rem;background-color:#ffe14d66!important;outline:2px solid #e0b400!important}html[data-a11y-contrast=max] body [data-a11y-reading]{background-color:#2b2b2b!important;outline-color:#ffe14d!important}html[data-a11y-links=on] body a{text-underline-offset:.22em!important;text-decoration-line:underline!important;text-decoration-thickness:.1em!important}html[data-a11y-motion=on],html[data-a11y-motion=on] *{scroll-behavior:auto!important}html[data-a11y-motion=on] *,html[data-a11y-motion=on] :before,html[data-a11y-motion=on] :after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}html[data-a11y-save=on] *,html[data-a11y-save=on] :before,html[data-a11y-save=on] :after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}
