:root{--bg: #FFFFFF;--bg-shell: #F7F7F5;--bg-subtle: #FAFAFA;--surface: #FFFFFF;--surface-elevated: #FFFFFF;--ink: #111111;--ink-secondary: #666666;--ink-muted: #8E8E93;--border: #E7E7E4;--border-subtle: rgba(17, 17, 17, .06);--border-strong: #111111;--accent: #E54D2E;--accent-muted: rgba(229, 77, 46, .08);--accent-ink: #FFFFFF;--accent-hover: #D63D25;--accent-blue: #1D4ED8;--font-display: "Inter Tight", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", "SF Mono", Consolas, monospace;--font-serif: "Newsreader", "Times New Roman", Georgia, serif;--radius-shell: clamp(32px, 4vw, 52px);--radius-shell-sm: 22px;--radius-pill: 9999px;--radius-card: 20px;--radius-sm: 10px;--container-max: 1240px;--container-narrow: 920px;--pad-x: clamp(1.25rem, 3.5vw, 3rem);--pad-shell: clamp(3.5rem, 6vw, 6.5rem) clamp(1.5rem, 4vw, 3.5rem);--pad-section-gap: clamp(2.5rem, 4vw, 4.5rem);--ease-editorial: cubic-bezier(.16, 1, .3, 1);--ease-smooth: cubic-bezier(.25, 1, .5, 1);--duration-fast: .18s;--duration-base: .3s;--duration-slow: .6s}[data-theme=dark]{--bg: #0C0C0D;--bg-shell: #151517;--bg-subtle: #19191C;--surface: #1E1E22;--surface-elevated: #242429;--ink: #F7F7F8;--ink-secondary: #9AA0A6;--ink-muted: #6B7280;--border: rgba(255, 255, 255, .08);--border-subtle: rgba(255, 255, 255, .04);--border-strong: rgba(255, 255, 255, .25);--accent: #FF5A36;--accent-muted: rgba(255, 90, 54, .12);--accent-ink: #FFFFFF;--accent-hover: #FF7052}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;background-color:var(--bg);color:var(--ink)}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;position:relative;transition:background-color var(--duration-base) var(--ease-editorial),color var(--duration-base) var(--ease-editorial)}a{color:inherit;text-decoration:none}img,video{max-width:100%;height:auto;display:block}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}::selection{background-color:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.meta-tag{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.container{width:100%;max-width:var(--container-max);margin-left:auto;margin-right:auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}.container-narrow{max-width:var(--container-narrow)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.editorial-line{width:100%;height:1px;background-color:var(--border);border:none;margin:0}.section-shell{width:100%;max-width:var(--container-max);margin:0 auto var(--pad-section-gap) auto;background-color:var(--bg-shell);border:1px solid var(--border);border-radius:var(--radius-shell);padding:var(--pad-shell);position:relative;overflow:hidden;box-sizing:border-box}.section-shell-white{width:100%;max-width:var(--container-max);margin:0 auto var(--pad-section-gap) auto;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-shell);padding:var(--pad-shell);position:relative;overflow:hidden;box-sizing:border-box}@media (max-width: 768px){.section-shell,.section-shell-white{border-radius:var(--radius-shell-sm);padding:clamp(2.2rem,6vw,3.5rem) 1.25rem}}.display-hero{font-family:var(--font-display);font-size:clamp(2.2rem,5.5vw,4.4rem);font-weight:750;line-height:1.05;letter-spacing:-.035em;color:var(--ink)}.display-section{font-family:var(--font-display);font-size:clamp(1.8rem,4vw,3.2rem);font-weight:750;line-height:1.1;letter-spacing:-.03em;color:var(--ink)}.subheadline{font-family:var(--font-sans);font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.6;color:var(--ink-secondary);font-weight:400}.body-text{font-family:var(--font-sans);font-size:.98rem;line-height:1.7;color:var(--ink-secondary)}.body-sm{font-family:var(--font-sans);font-size:.86rem;line-height:1.6;color:var(--ink-muted)}.section-header-centered{text-align:center;max-width:760px;margin:0 auto clamp(2.5rem,5vw,4rem) auto}.section-pill-tag{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .85rem;border-radius:var(--radius-pill);background-color:var(--surface);border:1px solid var(--border);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-secondary);margin-bottom:1.2rem}.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-size:.86rem;font-weight:500;padding:.65rem 1.4rem;background-color:var(--ink);color:var(--bg);border:1px solid transparent;border-radius:var(--radius-pill);transition:all var(--duration-fast) var(--ease-editorial);cursor:pointer;text-decoration:none;line-height:1}.btn-pill:hover{background-color:#222;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.btn-pill-subtle{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-sans);font-size:.86rem;font-weight:500;padding:.65rem 1.4rem;background-color:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-pill);transition:all var(--duration-fast) var(--ease-editorial);cursor:pointer;text-decoration:none;line-height:1}.btn-pill-subtle:hover{border-color:var(--ink);transform:translateY(-1px)}.link-text-arrow{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-sans);font-size:.88rem;font-weight:500;color:var(--ink);text-decoration:none;position:relative;transition:color var(--duration-fast) ease,gap var(--duration-fast) ease;cursor:pointer;background:none;border:none;padding:.2rem 0}.link-text-arrow:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background-color:currentColor;transition:width var(--duration-base) var(--ease-editorial)}.link-text-arrow:hover{color:var(--accent);gap:.65rem}.link-text-arrow:hover:after{width:100%}.link-editorial-underline{display:inline-flex;align-items:baseline;gap:.4rem;font-family:var(--font-sans);font-size:.86rem;font-weight:500;color:var(--ink);border-bottom:1px solid var(--border);padding-bottom:2px;transition:all var(--duration-fast) ease;cursor:pointer;text-decoration:none;background:none;border-top:none;border-left:none;border-right:none}.link-editorial-underline:hover{color:var(--accent);border-bottom-color:var(--accent)}.tag-chip{display:inline-flex;align-items:center;padding:.35rem .85rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;background-color:var(--surface);border:1px solid var(--border);color:var(--ink-secondary);border-radius:var(--radius-pill)}.minimal-project-row{display:grid;grid-template-columns:2.8rem 1.4fr 1fr auto;align-items:baseline;padding:clamp(1.4rem,2.5vw,2rem) 0;border-top:1px solid var(--border);gap:1.5rem;color:var(--ink);text-decoration:none;transition:padding-left var(--duration-fast) var(--ease-editorial),border-color var(--duration-fast) ease;cursor:pointer}.minimal-project-row:last-child{border-bottom:1px solid var(--border)}.minimal-project-row:hover{border-top-color:var(--ink);padding-left:.5rem}.minimal-project-row:hover .project-arrow{transform:translate(4px);color:var(--accent)}@media (max-width: 768px){.minimal-project-row{grid-template-columns:2.2rem 1fr auto;gap:1rem}.minimal-project-row .project-meta-col{display:none}}.minimal-practice-row{display:flex;justify-content:space-between;align-items:baseline;padding:clamp(1.6rem,3vw,2.2rem) 0;border-top:1px solid var(--border);gap:1.5rem;flex-wrap:wrap;transition:all var(--duration-fast) ease}.minimal-practice-row:last-child{border-bottom:1px solid var(--border)}.minimal-practice-row:hover h3{color:var(--accent)}.partner-strip{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:clamp(1.5rem,3vw,3rem);padding-top:clamp(2rem,4vw,3.5rem);margin-top:clamp(2.5rem,4vw,4rem);border-top:1px solid var(--border);color:var(--ink-muted);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border)}::-webkit-scrollbar-thumb:hover{background:var(--ink-muted)}
