*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-ms-overflow-style:none;scrollbar-width:none}html::-webkit-scrollbar{display:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--bg: #fafafb;--bg-alt: #f1f1f3;--bg-dark: #18181c;--text: #18181c;--text-secondary: #707078;--text-muted: #9a9aa2;--text-on-dark: #fafafb;--text-on-dark-muted: #b4b4bc;--accent: #18181c;--accent-hover: #000000;--divider: #e7e7ea;--border: #d8d8dd;--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, sans-serif;--font-size-hero: clamp(2.5rem, 5vw, 4rem);--font-size-h1: clamp(2rem, 4vw, 3rem);--font-size-h2: clamp(1.5rem, 3vw, 2rem);--font-size-h3: clamp(1.1rem, 2vw, 1.35rem);--font-size-body: 1rem;--font-size-small: .875rem;--font-size-xs: .75rem;--line-height: 1.7;--letter-spacing-wide: .15em;--letter-spacing-normal: .03em;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--section-gap: clamp(3rem, 6vw, 5rem);--page-top: 6rem;--content-padding: clamp(1.5rem, 4vw, 4rem);--max-width: 1200px;--shadow-subtle: 0 1px 3px rgba(24, 24, 28, .06);--shadow-medium: 0 4px 16px rgba(24, 24, 28, .08);--shadow-image: 0 8px 30px rgba(24, 24, 28, .12);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-base: .4s cubic-bezier(.4, 0, .2, 1);--transition-slow: .6s cubic-bezier(.4, 0, .2, 1);--overlay: rgba(24, 24, 28, .6);--overlay-light: rgba(24, 24, 28, .3)}.site{background-color:var(--bg);color:var(--text);font-family:var(--font-body);line-height:var(--line-height);letter-spacing:var(--letter-spacing-normal);overflow-x:hidden;min-height:100vh;display:flex;flex-direction:column}.header{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:1.5rem var(--content-padding);background:transparent;transition:background var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.header--solid{background:var(--bg);border-bottom:1px solid var(--divider);box-shadow:var(--shadow-subtle)}.logo{font-family:var(--font-display);font-size:1.3rem;font-weight:400;color:var(--text-on-dark);text-decoration:none;letter-spacing:var(--letter-spacing-wide);transition:color var(--transition-base)}.header--solid .logo{color:var(--text)}.nav{display:flex;gap:2.5rem;align-items:center}.nav-link{font-size:var(--font-size-small);color:var(--text-on-dark);text-decoration:none;letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;position:relative;transition:opacity var(--transition-fast),color var(--transition-base)}.header--solid .nav-link{color:var(--text)}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--text-on-dark);transition:width var(--transition-base),background var(--transition-base)}.header--solid .nav-link:after{background:var(--text)}.nav-link:hover:after{width:100%}.nav-link:hover{opacity:.8}.lang-toggle{background:none;border:1px solid rgba(250,250,251,.3);color:var(--text-on-dark);font-family:var(--font-body);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);padding:.3rem .6rem;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-base),opacity var(--transition-fast)}.header--solid .lang-toggle{border-color:var(--border);color:var(--text)}.lang-toggle:hover{border-color:var(--text-on-dark);opacity:.8}.header--solid .lang-toggle:hover{border-color:var(--text)}.lang-dropdown{position:relative}.lang-toggle{display:inline-flex;align-items:center;gap:.3em}.lang-chevron{transition:transform var(--transition-fast);flex-shrink:0}.lang-toggle[aria-expanded=true] .lang-chevron{transform:rotate(180deg)}.lang-menu{position:absolute;top:calc(100% + .5rem);right:0;list-style:none;padding:.25rem 0;margin:0;background:var(--bg);border:1px solid var(--border);box-shadow:var(--shadow-medium);min-width:4rem;z-index:101}.lang-option{display:block;width:100%;padding:.45rem .9rem;background:none;border:none;cursor:pointer;font-family:var(--font-body);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);color:var(--text-secondary);text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.lang-option:hover{background:var(--bg-alt);color:var(--text)}.lang-option.is-active{color:var(--text);font-weight:500}.footer{background-color:var(--bg);border-top:1px solid var(--divider);padding:var(--space-xl) var(--content-padding);text-align:center;margin-top:auto}.footer-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.footer-meta{display:flex;align-items:center;gap:var(--space-md);color:var(--text-secondary)}.footer-divider{color:var(--text-secondary);opacity:.5}.footer-name{font-family:var(--font-display);font-size:1.1rem;color:var(--text);letter-spacing:var(--letter-spacing-wide)}.footer-social{display:inline-flex;align-items:center;color:var(--text-secondary);font-size:1.2rem;line-height:1;transition:color var(--transition-fast)}.footer-social:hover{color:var(--text)}.footer-copy{font-size:var(--font-size-xs);color:var(--text-secondary);letter-spacing:var(--letter-spacing-normal);line-height:1}.section-label{display:block;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--accent);margin-bottom:var(--space-sm);font-weight:500}.section-title{font-family:var(--font-display);font-size:var(--font-size-h2);font-weight:400;color:var(--text);margin:0 0 var(--space-md);line-height:1.2}.page-title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:400;color:var(--text);margin:0 0 var(--space-xl);line-height:1.2}.link-arrow{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-small);color:var(--accent);text-decoration:none;letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:500;transition:gap var(--transition-fast),color var(--transition-fast)}.link-arrow:hover{gap:var(--space-sm);color:var(--accent-hover)}.page-content{padding-top:var(--page-top)}.skip-link{position:absolute;top:-100%;left:0;z-index:200;padding:.5rem 1rem;background:var(--bg-dark);color:var(--text-on-dark);text-decoration:none;font-size:var(--font-size-small)}.skip-link:focus{top:0}.menu-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:transparent}@media(max-width:768px){.menu-backdrop{display:block}}.menu-toggle{display:none;position:relative;width:28px;height:22px;background:none;border:none;cursor:pointer;padding:0}.menu-toggle-bar{position:absolute;left:0;width:100%;height:2px;background:var(--text-on-dark);transition:transform var(--transition-base),opacity var(--transition-fast),top var(--transition-base),background var(--transition-base)}.header--solid .menu-toggle-bar{background:var(--text)}.menu-toggle-bar:nth-child(1){top:0}.menu-toggle-bar:nth-child(2){top:50%;transform:translateY(-50%)}.menu-toggle-bar:nth-child(3){top:calc(100% - 2px)}.menu-toggle.is-open .menu-toggle-bar:nth-child(1){top:50%;transform:translateY(-50%) rotate(45deg)}.menu-toggle.is-open .menu-toggle-bar:nth-child(2){opacity:0}.menu-toggle.is-open .menu-toggle-bar:nth-child(3){top:50%;transform:translateY(-50%) rotate(-45deg)}@media(max-width:768px){.header{padding:1rem var(--content-padding)}.header--solid{border-bottom:none;box-shadow:none}.page-title{margin:0 0 var(--space-lg)}.page-content{padding-top:4rem}.footer{padding:var(--space-lg) var(--content-padding)}.menu-toggle{display:block;z-index:101}.nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:center;gap:0;background:var(--bg);padding:0;max-height:0;overflow:hidden;transition:max-height var(--transition-base),padding var(--transition-base)}.nav--open{max-height:300px;padding:var(--space-xs) 0 var(--space-md);border-bottom:1px solid var(--divider)}.nav-link{padding:var(--space-sm) 0}.lang-toggle{margin-top:var(--space-sm)}}@media(max-width:480px){.logo{font-size:1.1rem}.page-title{margin:0 0 var(--space-md)}}
