@font-face{font-family:General Sans;src:url(../../../fonts/general-sans-variable.woff2) format("woff2");font-weight:200 700;font-display:swap}:root{--bg: #FAFAFA;--ink: #111111;--gray: #6F6F6F;--gray-light: #A3A3A3;--hairline: #E7E7E7;--hairline-dark: #2A2A2A;--gray-on-dark: #8C8C8C;--panel-base: #F0F0EE;--feature-media-base: #1E1E1E;--fulbright: #1D4ED8;--available: #16A34A;--accent-a: #4338CA;--accent-b: #FB7A57;--accent-gradient: linear-gradient(135deg, var(--accent-a), var(--accent-b));--pattern-dot: rgba(17, 17, 17, .06);--pattern-size: 28px;--font-sans: "General Sans", -apple-system, "Helvetica Neue", sans-serif;--gutter: clamp(1.25rem, 4vw, 4rem);--section-pad: clamp(5rem, 14vh, 11rem);--ease-out: cubic-bezier(.22, 1, .36, 1)}:root[data-theme=dark]{--bg: #121212;--ink: #F2F2EF;--gray: #A0A0A0;--gray-light: #6E6E6E;--hairline: #2A2A2A;--hairline-dark: #C9C9C4;--gray-on-dark: #6F6F6F;--panel-base: #242424;--feature-media-base: #DFDFDA;--fulbright: #8AB0FF;--available: #2FBF6B;--accent-a: #8B87FF;--accent-b: #FF9270;--pattern-dot: rgba(255, 255, 255, .08)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scrollbar-width:thin;scrollbar-color:var(--gray-light) transparent}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip;transition:background-color .4s ease,color .4s ease}a{color:inherit;text-decoration:none}button{font:inherit;background:none;border:none;cursor:pointer;color:inherit}img{max-width:100%;display:block}::selection{background:var(--ink);color:var(--bg)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.container{width:100%;padding-inline:var(--gutter);margin-inline:auto;max-width:1560px}.label{font-size:.75rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gray)}.mask{display:block;overflow:hidden}.mask>.inner{display:block;transform:translateY(115%);will-change:transform}.gradient-text{background:var(--accent-gradient);background-size:200% auto;background-clip:text;-webkit-background-clip:text;color:transparent}@media(prefers-reduced-motion:no-preference){.gradient-text{animation:gradient-drift 8s ease-in-out infinite}@keyframes gradient-drift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}}h1,h2,h3{font-weight:500;letter-spacing:-.03em;line-height:1.02;color:var(--ink)}.section{padding-block:var(--section-pad)}.hline{width:100%;height:1px;background:var(--hairline);transform-origin:left}@media(prefers-reduced-motion:reduce){.mask>.inner{transform:none;will-change:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.nav.svelte-rfuq4y{position:fixed;inset:0 0 auto 0;z-index:60;display:flex;justify-content:space-between;align-items:center;padding:1.4rem var(--gutter);mix-blend-mode:difference;color:#fff;font-size:.875rem;font-weight:500}.nav-name.svelte-rfuq4y{letter-spacing:-.01em}.nav-name-short.svelte-rfuq4y{display:none}.nav-links.svelte-rfuq4y{display:flex;align-items:center;gap:2rem}.nav-link.svelte-rfuq4y{opacity:.6;transition:opacity .25s}.nav-link.svelte-rfuq4y:hover,.nav-link[aria-current].svelte-rfuq4y{opacity:1}.lang.svelte-rfuq4y{display:flex;gap:.35rem;align-items:center;font-size:.75rem}.lang.svelte-rfuq4y span:where(.svelte-rfuq4y){opacity:.35}.lang.svelte-rfuq4y button:where(.svelte-rfuq4y){opacity:.45;transition:opacity .25s;letter-spacing:.05em}.lang.svelte-rfuq4y button:where(.svelte-rfuq4y):hover{opacity:.8}.lang.svelte-rfuq4y button.active:where(.svelte-rfuq4y){opacity:1}.nav-right.svelte-rfuq4y{display:flex;align-items:center;gap:1.25rem;margin-left:2rem}.theme-toggle.svelte-rfuq4y{display:flex;align-items:center;opacity:.6;transition:opacity .25s}.theme-toggle.svelte-rfuq4y:hover{opacity:1}.theme-disc.svelte-rfuq4y{width:15px;height:15px;border-radius:50%;border:1.5px solid currentColor;background:linear-gradient(90deg,currentColor 50%,transparent 50%);transition:transform .45s var(--ease-out)}[data-theme=dark] .theme-disc.svelte-rfuq4y{transform:rotate(180deg)}.nav-toggle.svelte-rfuq4y{display:none}.menu.svelte-rfuq4y{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:var(--bg);display:flex;flex-direction:column;justify-content:space-between;padding:7rem var(--gutter) 2.5rem}.menu-links.svelte-rfuq4y{display:flex;flex-direction:column}.menu-links.svelte-rfuq4y a:where(.svelte-rfuq4y){display:flex;align-items:baseline;gap:1rem;font-size:clamp(2.6rem,11vw,4rem);font-weight:500;letter-spacing:-.03em;line-height:1.3;padding-block:.6rem;border-bottom:1px solid var(--hairline)}.menu-idx.svelte-rfuq4y{color:var(--gray-light)}.menu-bottom.svelte-rfuq4y{display:flex;flex-direction:column;gap:1.5rem}.menu-lang.svelte-rfuq4y{display:flex;gap:1.5rem}.menu-lang.svelte-rfuq4y button:where(.svelte-rfuq4y){font-size:.9375rem;color:var(--gray)}.menu-lang.svelte-rfuq4y button.active:where(.svelte-rfuq4y){color:var(--ink);text-decoration:underline;text-underline-offset:5px}.menu-mail.svelte-rfuq4y{font-size:.9375rem;font-weight:500}@media(prefers-reduced-motion:no-preference){.menu.svelte-rfuq4y{animation:svelte-rfuq4y-menu-in .35s var(--ease-out)}@keyframes svelte-rfuq4y-menu-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}@media(max-width:700px){.nav-links.svelte-rfuq4y{display:none}.nav-right.svelte-rfuq4y{margin-left:0;gap:1rem}.nav-toggle.svelte-rfuq4y{display:block;font-size:.875rem;font-weight:500}.nav-name-full.svelte-rfuq4y{display:none}.nav-name-short.svelte-rfuq4y{display:inline;font-weight:600}}@media(min-width:701px){.menu.svelte-rfuq4y{display:none}}.footer.svelte-p2q93p{background:var(--ink);color:var(--bg);padding-block:var(--section-pad) 1.75rem}.footer.svelte-p2q93p .label:where(.svelte-p2q93p){color:var(--gray-on-dark);margin-bottom:3.5rem}.footer-title.svelte-p2q93p{font-size:clamp(3rem,10vw,8.5rem);color:var(--bg);letter-spacing:-.04em}.footer-sub.svelte-p2q93p{color:var(--gray-on-dark);margin-top:1.5rem;max-width:30rem}.footer-mail.svelte-p2q93p{display:inline-block;margin-top:3.5rem;font-size:clamp(1.25rem,3vw,2rem);font-weight:500;letter-spacing:-.02em;border-bottom:1px solid var(--hairline-dark);padding-bottom:.3rem;transition:border-color .3s}.footer-mail.svelte-p2q93p:hover{border-color:var(--bg)}.footer-bottom.svelte-p2q93p{display:flex;justify-content:space-between;align-items:baseline;margin-top:6rem;padding-top:1.5rem;border-top:1px solid var(--hairline-dark);font-size:.8125rem;color:var(--gray-on-dark)}.footer-socials.svelte-p2q93p{display:flex;gap:1.75rem}.footer-socials.svelte-p2q93p a:where(.svelte-p2q93p){transition:color .25s}.footer-socials.svelte-p2q93p a:where(.svelte-p2q93p):hover{color:var(--bg)}.bg-pattern.svelte-1lpc64a{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.bg-pattern-base.svelte-1lpc64a,.bg-pattern-spotlight.svelte-1lpc64a{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;background-image:radial-gradient(var(--pattern-dot) 1px,transparent 1px);background-size:var(--pattern-size) var(--pattern-size)}.bg-pattern-spotlight.svelte-1lpc64a{opacity:0;background-image:radial-gradient(color-mix(in srgb,var(--accent-a) 55%,var(--pattern-dot)) 1px,transparent 1px);-webkit-mask-image:radial-gradient(circle 320px at var(--mx, 50%) var(--my, 50%),black 0%,transparent 70%);mask-image:radial-gradient(circle 320px at var(--mx, 50%) var(--my, 50%),black 0%,transparent 70%)}.cursor-dot.svelte-1nx4icj,.cursor-ring.svelte-1nx4icj{position:fixed;top:0;left:0;pointer-events:none;z-index:200;opacity:0;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot.svelte-1nx4icj{width:8px;height:8px;background:var(--ink)}.cursor-ring.svelte-1nx4icj{width:36px;height:36px;border:1px solid var(--ink);display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:500;letter-spacing:.02em;text-transform:uppercase;transition:width .35s var(--ease-out),height .35s var(--ease-out),background .35s var(--ease-out),border-color .35s var(--ease-out)}.cursor-ring.svelte-1nx4icj span:where(.svelte-1nx4icj){color:var(--bg);opacity:0;transition:opacity .2s}html.has-custom-cursor,html.has-custom-cursor *{cursor:none}
