@font-face{font-family:PP Editorial New Ultralight;src:url(/assets/fonts/PPEditorialNew-Ultralight.otf) format("opentype");font-style:normal;font-weight:200;font-display:swap}@font-face{font-family:PP Editorial New;src:url(/assets/fonts/PPEditorialNew-Ultralight.otf) format("opentype");font-style:normal;font-weight:200;font-display:swap}@font-face{font-family:PP Neue Montreal Book;src:url(/assets/fonts/PPNeueMontreal-Book.otf) format("opentype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:PP Neue Montreal Medium;src:url(/assets/fonts/PPNeueMontreal-Medium.otf) format("opentype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:PP Neue Montreal Thin;src:url(/assets/fonts/PPNeueMontreal-Thin.otf) format("opentype");font-style:normal;font-weight:100;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Thin.woff2) format("woff2");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-ThinItalic.woff2) format("woff2");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-LightItalic.woff2) format("woff2");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-BoldItalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Akkurat LL Trial;src:url(/assets/fonts/akkurat-ll-trial/AkkuratLLTrialWeb-BlackItalic.woff2) format("woff2");font-weight:900;font-style:italic;font-display:swap}:root{--color-neutral-white: #FFFFFF;--color-neutral-black: #1A1815;--color-neutral-lightest: #fdfdfd;--color-neutral-surface: #F2EFE9;--color-neutral-border-subtle: #D8D3CB;--color-neutral-light: #E7E3DB;--color-neutral-mid: #B7B0A5;--color-neutral-dark: #6A6561;--color-neutral-darkest: #504c49;--color-bg: var(--color-neutral-lightest);--color-surface: var(--color-neutral-surface);--color-surface-inset: var(--color-neutral-light);--color-text-primary: var(--color-neutral-darkest);--color-text-secondary: var(--color-neutral-dark);--color-text-muted: color-mix(in srgb, var(--color-neutral-dark) 58%, var(--color-neutral-mid) 42%);--color-border: var(--color-neutral-mid);--color-border-subtle: var(--color-neutral-border-subtle);--color-border-faint: var(--color-neutral-light);--color-grid: #f5f3f0;--color-glass-nav: rgba(255, 255, 255, .72);--color-glass-pill: rgba(255, 255, 255, .45);--color-glass-surface: rgba(253, 253, 253, .01);--color-blue: #235ED2;--color-teal: #4FB1D8;--color-green: #73C58E;--color-yellow: #DED038;--color-orange: #E55A33;--color-pink: #E66288;--color-lavender: #C0A4DD;--color-cognac: #AD6531;--color-accent: var(--color-blue);--color-cursor: var(--color-neutral-dark);--cursor-basic: url(/assets/cursor/BasicCursor.png) 0 0;--color-accent-hover: #1A4AAD;--color-accent-muted: #80a0e0;--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-serif: "Georgia", "Times New Roman", serif;--font-mono: "IBM Plex Mono", "Courier New", monospace;--font-editorial-ultralight: "PP Editorial New Ultralight", "PP Editorial New", "Times New Roman", serif;--font-neue-montreal-book: "PP Neue Montreal Book", "PP Neue Montreal", system-ui, -apple-system, sans-serif;--font-neue-montreal-medium: "PP Neue Montreal Medium", "PP Neue Montreal", system-ui, -apple-system, sans-serif;--font-neue-montreal-thin: "PP Neue Montreal Thin", "PP Neue Montreal", system-ui, -apple-system, sans-serif;--font-akkurat-ll-trial: "Akkurat LL Trial", system-ui, -apple-system, sans-serif;--font-fraunces: "Fraunces", Georgia, "Times New Roman", serif;--font-questrial: "Questrial", system-ui, -apple-system, sans-serif;--font-rethink-sans: "Rethink Sans", system-ui, -apple-system, sans-serif;--font-zalando-sans: "Zalando Sans", system-ui, -apple-system, sans-serif;--font-heading: var(--font-editorial-ultralight);--font-label: var(--font-neue-montreal-medium);--font-body: var(--font-neue-montreal-book);--font-display-light: var(--font-neue-montreal-thin);--font-body-bold: var(--font-neue-montreal-book);--font-link: var(--font-neue-montreal-book);--text-xs: .64rem;--text-sm: .8rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.563rem;--text-xl: 1.953rem;--text-2xl: 2.441rem;--text-3xl: 3.052rem;--text-4xl: 3.815rem;--weight-ultralight: 200;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--leading-tight: 1.15;--leading-snug: 1.35;--leading-normal: 1.5;--leading-loose: 1.75;--tracking-tight: -.02em;--tracking-normal: 0em;--tracking-wide: .04em;--tracking-wider: .08em;--tracking-widest: .12em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-18: 4.5rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--section-padding-y: var(--space-24);--section-padding-x: var(--space-8);--page-gutter: var(--space-8);--grid-columns: 12;--grid-gap: var(--space-6);--project-card-vp-inset: 24px;--project-card-viewport-height: calc(100vh - 2 * var(--project-card-vp-inset));--project-card-viewport-height-d: calc(100dvh - 2 * var(--project-card-vp-inset));--site-header-block-end: calc(var(--space-10) + 52px);--site-header-block-end-mobile: calc(var(--page-gutter) + 48px);--project-card-sticky-top: var(--project-card-vp-inset);--project-card-sticky-viewport-height: calc(100vh - 2 * var(--project-card-vp-inset));--project-card-sticky-viewport-height-d: calc(100dvh - 2 * var(--project-card-vp-inset));--project-card-stack-gap: var(--space-16);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-xl: 32px;--radius-full: 9999px;--radius-tooltip: 20px;--border-width: 1px;--border-width-md: 2px;--shadow-sm: 0 1px 3px rgba(42, 38, 36, .08), 0 1px 2px rgba(42, 38, 36, .04);--shadow-md: 0 4px 12px rgba(42, 38, 36, .1), 0 2px 4px rgba(42, 38, 36, .06);--shadow-lg: 0 12px 32px rgba(42, 38, 36, .12), 0 4px 8px rgba(42, 38, 36, .08);--shadow-xl: 0 24px 64px rgba(42, 38, 36, .14), 0 8px 16px rgba(42, 38, 36, .08);--effect-clickable-shadow: 0 4px 24px rgba(0, 0, 0, .1), 0 1px 6px rgba(0, 0, 0, .06), 1px 1px 4px rgba(0, 0, 0, .14), inset 1px 1px 0 rgba(255, 255, 255, .85), inset -1px -1px 0 rgba(255, 255, 255, .95), inset -1px 0 0 rgba(255, 255, 255, .2), inset 0 -1px 0 rgba(0, 0, 0, .08), inset 1px 1px 12px rgba(0, 0, 0, .11);--effect-tooltip-shadow: 0 2px 12px rgba(0, 0, 0, .06), 0 1px 4px rgba(0, 0, 0, .04), inset 0 2px 0 rgba(255, 255, 255, 1), inset 1px 0 0 rgba(255, 255, 255, .65), inset -1px 0 0 rgba(255, 255, 255, .2), inset 1px 1px 12px rgba(0, 0, 0, .08), inset 0 -1px 0 rgba(0, 0, 0, .08);--effect-clickable-blur: blur(28px) saturate(1.2) brightness(1.04);--effect-tooltip-blur: blur(40px) saturate(1.1) brightness(1.02);--effect-card-shadow: 0 8px 32px rgba(0, 0, 0, .1), 0 2px 8px rgba(0, 0, 0, .06), inset 0 1.5px 0 rgba(255, 255, 255, .75), inset 1px 0 0 rgba(255, 255, 255, .3), inset 0 -1px 0 rgba(0, 0, 0, .08), inset -1px 0 0 rgba(0, 0, 0, .04), inset 1px 1px 40px rgba(0, 0, 0, .11);--effect-card-blur: blur(28px) saturate(1.2) brightness(1.04);--effect-card-border: 1px solid rgba(255, 255, 255, .35);--effect-mock-drop-shadow: 0 0 4px rgba(0, 0, 0, .08), 0 2px 2px rgba(0, 0, 0, .04), 0 2px 12px rgba(0, 0, 0, .06);--duration-instant: 80ms;--duration-fast: .16s;--duration-normal: .28s;--duration-slow: .48s;--duration-slower: .72s;--duration-crawl: 1.2s;--gsap-duration-fast: .16;--gsap-duration-normal: .28;--gsap-duration-slow: .48;--gsap-duration-slower: .72;--gsap-duration-crawl: 1.2;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-linear: linear;--gsap-stagger: .12;--z-below: -1;--z-base: 0;--z-raised: 10;--z-overlay: 50;--z-modal: 100;--z-nav: 200;--z-tooltip: 350;--z-cursor: 400;--z-preloader: 500}:root[data-theme=dark]{--color-bg: #171717;--color-surface: #1A1A1A;--color-surface-inset: #161616;--color-text-primary: #fdfdfd;--color-text-secondary: rgba(253, 253, 253, .78);--color-text-muted: rgba(253, 253, 253, .58);--color-border: rgba(255, 255, 255, .12);--color-border-subtle: rgba(255, 255, 255, .06);--color-border-faint: rgba(255, 255, 255, .06);--color-accent: #c99ce0;--color-accent-hover: #d9b8ec;--color-accent-muted: #e7cdf7;--color-glass-nav: rgba(25, 25, 25, .82);--color-glass-pill: rgba(30, 30, 30, .1);--color-glass-surface: rgba(0, 0, 0, .1);--color-grid: #1C1C1C;--color-cursor: var(--color-neutral-mid);--cursor-basic: url(/assets/cursor/BasicCursorDark.png) 0 0;--effect-clickable-shadow: 2px 2px 6px rgba(59, 55, 51, .48), 2px 3px 14px rgba(59, 55, 51, .34), 0 0 26px rgba(59, 55, 51, .24), 0 0 42px rgba(80, 76, 73, .18), 0 0 64px rgba(0, 0, 0, .095), inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 0 14px rgba(255, 255, 255, .03), inset 0 -1px 4px rgba(0, 0, 0, .26);--effect-clickable-border: 1px solid transparent;--effect-card-border: 1px solid rgba(255, 255, 255, .08);--effect-card-shadow: 0 8px 32px rgba(0, 0, 0, .1), 0 2px 8px rgba(0, 0, 0, .06), inset 0 1px 0 rgba(255, 255, 255, .1), inset 1px 0 0 rgba(255, 255, 255, .25), inset 0 -1px 0 rgba(0, 0, 0, .08), inset -1px 0 0 rgba(0, 0, 0, .04), inset 1px 1px 40px rgba(0, 0, 0, .11);--effect-tooltip-shadow: 0 2px 12px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .05), inset 0 1px 0 rgba(255, 255, 255, .1), inset 1px 0 0 rgba(255, 255, 255, .25), inset 0 -1px 0 rgba(0, 0, 0, .08), inset -1px 0 0 rgba(0, 0, 0, .04), inset 1px 1px 40px rgba(0, 0, 0, .11)}@media(prefers-color-scheme:dark){:root:not([data-theme]){--color-bg: #171717;--color-surface: #1A1A1A;--color-surface-inset: #161616;--color-text-primary: #fdfdfd;--color-text-secondary: rgba(253, 253, 253, .78);--color-text-muted: rgba(253, 253, 253, .58);--color-border: rgba(255, 255, 255, .12);--color-border-subtle: rgba(255, 255, 255, .06);--color-border-faint: rgba(255, 255, 255, .06);--color-accent: #c99ce0;--color-accent-hover: #d9b8ec;--color-accent-muted: #e7cdf7;--color-glass-nav: rgba(25, 25, 25, .82);--color-glass-pill: rgba(30, 30, 30, .1);--color-glass-surface: rgba(0, 0, 0, .1);--color-grid: #1C1C1C;--color-cursor: var(--color-neutral-mid);--cursor-basic: url(/assets/cursor/BasicCursorDark.png) 0 0;--effect-clickable-shadow: 2px 2px 6px rgba(59, 55, 51, .48), 2px 3px 14px rgba(59, 55, 51, .34), 0 0 26px rgba(59, 55, 51, .24), 0 0 42px rgba(80, 76, 73, .18), 0 0 64px rgba(0, 0, 0, .095), inset 0 1px 0 rgba(255, 255, 255, .08), inset 0 0 14px rgba(255, 255, 255, .03), inset 0 -1px 4px rgba(0, 0, 0, .26);--effect-clickable-border: 1px solid transparent;--effect-card-border: 1px solid rgba(255, 255, 255, .08);--effect-card-shadow: 0 8px 32px rgba(0, 0, 0, .1), 0 2px 8px rgba(0, 0, 0, .06), inset 0 1px 0 rgba(255, 255, 255, .1), inset 1px 0 0 rgba(255, 255, 255, .25), inset 0 -1px 0 rgba(0, 0, 0, .08), inset -1px 0 0 rgba(0, 0, 0, .04), inset 1px 1px 40px rgba(0, 0, 0, .11);--effect-tooltip-shadow: 0 2px 12px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .05), inset 0 1px 0 rgba(255, 255, 255, .1), inset 1px 0 0 rgba(255, 255, 255, .25), inset 0 -1px 0 rgba(0, 0, 0, .08), inset -1px 0 0 rgba(0, 0, 0, .04), inset 1px 1px 40px rgba(0, 0, 0, .11)}}@media(max-width:768px){:root{--page-gutter: var(--space-5)}}.site-header{position:fixed;top:var(--space-10);left:var(--space-10);right:var(--space-10);z-index:var(--z-nav);display:flex;align-items:stretch;justify-content:space-between;gap:var(--space-4);pointer-events:none;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-normal);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.site-header>*{pointer-events:auto}.site-header--nav-only{justify-content:flex-start}.theme-toggle{position:relative;flex-shrink:0;align-self:stretch;display:flex;align-items:stretch;gap:6px;padding:3px 4px;background-color:var(--color-glass-nav);backdrop-filter:var(--effect-clickable-blur);-webkit-backdrop-filter:var(--effect-clickable-blur);border-radius:var(--radius-full);border:none;cursor:var(--cursor-basic),pointer;box-shadow:0 0 1px #00000040,inset 0 0 20px #ffffff0a,inset -1px -1px 1px #fff,inset -1px -1px 3px #ffffff0a,inset 1px 1px 1px #e9e4dc,inset 1px 1px 20px #fdfdfd,inset 1px 1px 8px #fdfdfd}:root[data-theme=dark] .theme-toggle{background-color:var(--color-glass-nav);box-shadow:var(--effect-clickable-shadow)}:root[data-theme=dark] .theme-toggle:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffff24,#ffffff0d 40%,#ffffff08 60%,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.theme-toggle__slot{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:48px;min-height:0;height:100%;transition:width .2s var(--ease-out)}.theme-toggle__slot--active{position:relative;width:48px;min-width:48px;height:48px;border-radius:var(--radius-full);background-color:var(--color-glass-nav);backdrop-filter:var(--effect-clickable-blur);-webkit-backdrop-filter:var(--effect-clickable-blur);box-shadow:var(--effect-clickable-shadow)}:root[data-theme=dark] .theme-toggle__slot--active:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffff24,#ffffff0d 40%,#ffffff08 60%,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.theme-toggle__icon{width:32px;height:32px;object-fit:contain;pointer-events:none;user-select:none;transition:width .2s var(--ease-out),height .2s var(--ease-out)}.theme-toggle__slot--active .theme-toggle__icon{position:relative;z-index:1;width:52px;height:52px}.nav{position:relative;display:flex;align-items:stretch;flex:0 0 auto;min-width:0}.nav__pill{position:relative;display:flex;align-items:center;align-self:stretch;height:100%;gap:var(--space-8);padding:var(--space-3) var(--space-6);background-color:var(--color-glass-nav);backdrop-filter:var(--effect-clickable-blur);-webkit-backdrop-filter:var(--effect-clickable-blur);border-radius:var(--radius-full);box-shadow:var(--effect-clickable-shadow)}:root[data-theme=dark] .nav__pill:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffff24,#ffffff0d 40%,#ffffff08 60%,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.nav__link{font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--color-text-primary);text-decoration:none;white-space:nowrap;transition:color var(--duration-fast) var(--ease-out)}.nav__link:hover,.nav__link--active{color:var(--color-accent)}.nav__burger{display:none;position:relative;flex-shrink:0;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:0;cursor:pointer;border-radius:var(--radius-full);background-color:var(--color-glass-nav);backdrop-filter:var(--effect-clickable-blur);-webkit-backdrop-filter:var(--effect-clickable-blur);box-shadow:var(--effect-clickable-shadow)}.nav__burger-bar{position:absolute;left:15px;width:18px;height:2px;background-color:var(--color-text-primary);border-radius:var(--radius-full);transition:top var(--duration-normal) var(--ease-spring),transform var(--duration-normal) var(--ease-spring),opacity var(--duration-fast) var(--ease-out)}.nav__burger-bar:nth-child(1){top:16px}.nav__burger-bar:nth-child(2){top:23px}.nav__burger-bar:nth-child(3){top:30px}.nav__burger.is-open .nav__burger-bar:nth-child(1){top:23px;transform:rotate(45deg)}.nav__burger.is-open .nav__burger-bar:nth-child(2){opacity:0}.nav__burger.is-open .nav__burger-bar:nth-child(3){top:23px;transform:rotate(-45deg)}@media(max-width:640px){.site-header{top:var(--page-gutter);left:var(--page-gutter);right:var(--page-gutter)}.nav{gap:var(--space-3)}.nav__burger{display:flex}.nav__pill{width:0;height:48px;gap:var(--space-3);padding-inline:0;overflow:hidden;pointer-events:none}.nav__pill.is-open{width:auto;padding-inline:var(--space-4);pointer-events:auto}.nav__link{font-size:var(--text-base);padding-block:var(--space-2);opacity:0}.nav__pill.is-open .nav__link{opacity:1}}@media(prefers-reduced-motion:reduce)and (max-width:640px){.nav__pill,.nav__link,.nav__burger-bar{transition:none}}.pill-link,.pill-link-small{position:relative;display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);background-color:var(--color-glass-pill);backdrop-filter:var(--effect-clickable-blur);-webkit-backdrop-filter:var(--effect-clickable-blur);border-radius:var(--radius-full);border:var(--border-width-md) solid transparent;box-shadow:var(--effect-clickable-shadow);font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--color-accent);white-space:nowrap;width:fit-content;transition:box-shadow var(--duration-slow) var(--ease-out),border-color var(--duration-slower) var(--ease-out)}.pill-link-small{font-size:var(--text-sm);padding:var(--space-1) var(--space-3)}.pill-link:hover,.pill-link-small:hover{border-color:var(--color-accent-hover);box-shadow:var(--effect-clickable-shadow),0 4px 16px #00000014}:root[data-theme=dark] .pill-link,:root[data-theme=dark] .pill-link-small{background-color:var(--color-glass-nav)}:root[data-theme=dark] .pill-link-small:after{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#ffffff24,#ffffff0d 40%,#ffffff08 60%,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}:root[data-theme=dark] .pill-link:hover,:root[data-theme=dark] .pill-link-small:hover{border-color:var(--color-accent-hover);box-shadow:var(--effect-clickable-shadow),0 3px 14px #00000017,0 6px 28px #0000000e}.pill-link__arrow,.pill-link-small__arrow{font-style:normal}.project-card__left,.section-split__left,.experience-card__left{display:flex;flex-direction:column;justify-content:center}.card{background-color:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;border:var(--border-width) solid var(--color-border-subtle);transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card__media{width:100%;aspect-ratio:16 / 9;background-color:var(--color-surface-inset);overflow:hidden}.card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out)}.card:hover .card__media img{transform:scale(1.03)}.card__body{padding:var(--space-6)}.card__eyebrow{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2)}.card__title{font-size:var(--text-md);font-weight:var(--weight-semibold);line-height:var(--leading-snug);color:var(--color-text-primary);margin-bottom:var(--space-3)}.card__description{font-size:var(--text-sm);line-height:var(--leading-normal);color:var(--color-text-secondary)}.card-surface{background-color:var(--color-glass-surface);backdrop-filter:var(--effect-card-blur);-webkit-backdrop-filter:var(--effect-card-blur);border:var(--effect-card-border);box-shadow:var(--effect-card-shadow);border-radius:var(--radius-xl);overflow:clip}.glass--fallback{background-image:radial-gradient(120% 90% at 50% 0%,#fff3,#fff0 65%),linear-gradient(135deg,#ffffff1f,#fff0 45%)}:root[data-theme=dark] .glass--fallback{background-image:radial-gradient(120% 90% at 50% 0%,#ffffff14,#fff0 65%),linear-gradient(135deg,#ffffff0d,#fff0 45%)}.preloader{position:fixed;inset:0;z-index:var(--z-preloader);display:grid;place-items:center}html[data-preloading] .site-header,html[data-preloading] main,html[data-preloading] footer{visibility:hidden}.preloader__content{--preloader-frame-size: min(440px, 85vw);display:flex;flex-direction:column;align-items:center;text-align:center}.preloader__headline{font-family:var(--font-heading);font-weight:var(--weight-ultralight);font-size:var(--text-3xl);letter-spacing:var(--tracking-tight);color:var(--color-text-primary);margin:0 0 calc(var(--preloader-frame-size) * -.33)}:root[data-theme=dark] .preloader__headline{text-shadow:1px 1px 10px #3b3733,0 0 10px #3b3733,0 0 30px #504c49,0 0 90px black}.preloader__frame{width:var(--preloader-frame-size);aspect-ratio:1 / 1;object-fit:contain;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.preloader__frame.is-ready{opacity:1}.preloader__subhead{font-family:var(--font-body-bold);font-size:var(--text-md);color:var(--color-text-secondary);margin:calc(var(--preloader-frame-size) * -.3) 0 0}.tag{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);background-color:var(--color-neutral-light);color:var(--color-text-secondary);border:var(--border-width) solid var(--color-border-subtle)}.tag--blue{background-color:#e8eefa;color:var(--color-blue);border-color:#c5d4f7}.tag--teal{background-color:#e5f5fb;color:#2d8bad;border-color:#b8e4f3}.tag--green{background-color:#ebf8ef;color:#3d8a57;border-color:#bfe8ce}.tag--yellow{background-color:#fafadf;color:#8a7f00;border-color:#edec9f}.tag--orange{background-color:#fdeee9;color:#b03a1a;border-color:#f7c9ba}.tag--pink{background-color:#fdeef2;color:#b03050;border-color:#f5bccc}.tag--lavender{background-color:#f2eef9;color:#7a58ab;border-color:#dccff0}.tag--cognac{background-color:#f7eddf;color:#7a4415;border-color:#e8c99d}.label{font-size:var(--text-sm);font-family:var(--font-label);letter-spacing:var(--tracking-wider);text-transform:uppercase;line-height:var(--leading-normal);color:var(--color-text-secondary)}.body-sm{font-size:var(--text-sm);font-weight:var(--weight-light);line-height:var(--leading-normal)}.ui-text{font-size:var(--text-md);font-weight:var(--weight-medium);line-height:var(--leading-normal)}
