*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #141414;--bg-card: #1c1c1c;--text-primary: #f0f0f0;--text-muted: #888888;--text-dim: #555555;--border: #2a2a2a;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Source Serif 4", "Iowan Old Style", "Palatino", Georgia, serif;--accent: #ff7a45;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--radius: 6px;--max-w: 1120px}html{background-color:var(--bg);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{max-width:var(--max-w);margin:0 auto;padding:0 var(--space-6)}.site-header{padding:var(--space-6) 0 var(--space-7);display:flex;align-items:baseline;justify-content:space-between}.site-name{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary)}.site-nav{display:flex;gap:var(--space-5);list-style:none}.site-nav a{font-size:12px;color:var(--text-muted);transition:color .15s ease}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text-primary)}.identity-bar{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--space-8);padding-bottom:var(--space-5);border-bottom:1px solid var(--border);margin-bottom:var(--space-5)}.identity-name{font-size:14px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary)}.identity-role{font-size:14px;color:var(--text-muted)}.hero{display:grid;grid-template-columns:2fr 1.5fr 1fr;gap:var(--space-8);padding-bottom:var(--space-9)}.hero-label{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--space-4)}.hero-body{font-size:14px;line-height:1.45;color:var(--text-primary)}.hero-approach-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.hero-approach-list li{font-size:14px;line-height:1.5;color:var(--text-primary)}.hero-links-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-3)}.hero-links-list a{font-size:14px;color:var(--text-primary);transition:color .15s ease}.hero-links-list a:hover{color:var(--text-muted)}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5);padding-bottom:var(--space-10)}.project-card{display:block;cursor:pointer}.project-card__thumbnail{width:100%;aspect-ratio:4 / 3;border-radius:var(--radius);overflow:hidden;background-color:var(--bg-card);margin-bottom:var(--space-3);transition:opacity .2s ease}.project-card:hover .project-card__thumbnail{opacity:.85}.project-card__thumbnail img{width:100%;height:100%;object-fit:cover}.project-card__thumbnail--placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e2a4a,#2d1f6e)}.project-card__company{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:2px}.project-card__title{font-size:13px;font-weight:400;color:var(--text-muted)}.timeline-section{padding-bottom:var(--space-10);border-top:1px solid var(--border);padding-top:var(--space-7)}.section-label{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--space-6)}.timeline{display:flex;flex-direction:column}.timeline-item{display:grid;grid-template-columns:160px 1fr;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.timeline-years{font-size:13px;color:var(--text-dim);padding-top:2px}.timeline-role{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:2px}.timeline-company{font-size:13px;color:var(--text-muted)}.site-footer{border-top:1px solid var(--border);padding:var(--space-6) 0;display:flex;justify-content:space-between;align-items:center}.site-footer p{font-size:12px;color:var(--text-dim)}.footer-links{display:flex;gap:var(--space-5);list-style:none}.footer-links a{font-size:12px;color:var(--text-dim);transition:color .15s ease}.footer-links a:hover{color:var(--text-primary)}.case-study{padding-top:var(--space-7);padding-bottom:var(--space-10)}.case-study-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,760px) minmax(0,1fr);gap:0;align-items:start}.case-study-sidebar{position:sticky;top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-7);justify-self:start;width:140px;margin-left:-32px}.case-study-main{grid-column:2;min-width:0}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);transition:color .15s ease}.back-link:hover{color:var(--text-primary)}.case-study-hero-image{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius);margin-bottom:var(--space-7);background-color:var(--bg-card)}.case-study-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-5);margin-bottom:var(--space-8);padding-bottom:var(--space-7);border-bottom:1px solid var(--border)}.case-study-meta__col{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.case-study-meta__col dt{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.case-study-meta__col dd{font-size:14px;line-height:1.5;color:var(--text-primary);margin:0}.case-study-header{margin-bottom:var(--space-8)}.case-study-eyebrow{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-4)}.case-study-title{font-family:var(--font-serif);font-size:44px;font-weight:400;letter-spacing:-.01em;line-height:1.1;color:var(--text-primary);margin-bottom:var(--space-4)}.case-study-summary{font-size:17px;line-height:1.5;color:var(--text-muted);max-width:56ch}.case-study-toc__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.case-study-toc__list a{position:relative;display:flex;align-items:center;gap:var(--space-3);font-size:13px;line-height:1.4;color:var(--text-dim);padding:2px 0;transition:color .15s ease}.case-study-toc__list a:hover{color:var(--text-primary)}.case-study-toc__dot{width:6px;height:6px;border-radius:50%;background:transparent;flex:0 0 6px;transition:background-color .2s ease,transform .2s ease}.case-study-toc__text{min-width:0}.case-study-toc__list a.is-active{color:var(--text-primary)}.case-study-toc__list a.is-active .case-study-toc__dot{background:var(--accent);transform:scale(1.1)}html{scroll-behavior:smooth}.case-study-content h2{scroll-margin-top:var(--space-5)}.case-study-content{color:var(--text-primary)}.case-study-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border:1px solid var(--border);border-radius:6px;font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--text-primary);background:var(--bg-card);text-decoration:none;transition:border-color .15s,background .15s}.case-study-btn:hover{border-color:#555;background:#222}.case-study-btn svg{flex-shrink:0;opacity:.6}.case-study-content>.case-study-btn:first-child{margin-top:-40px}.case-study-content>.case-study-btn:first-child+h2{margin-top:var(--space-6)}.case-study-content h2{font-family:var(--font-sans);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-top:var(--space-9);margin-bottom:var(--space-4)}.case-study-content h3{font-family:var(--font-serif);font-size:36px;font-weight:400;letter-spacing:-.01em;line-height:1.15;color:var(--text-primary);margin-top:0;margin-bottom:var(--space-5)}.case-study-content h4{font-family:var(--font-serif);font-size:22px;font-weight:400;letter-spacing:-.005em;line-height:1.25;color:var(--text-primary);margin-top:var(--space-6);margin-bottom:var(--space-3)}.case-study-content h1{font-family:var(--font-serif);font-size:44px;font-weight:400;letter-spacing:-.01em;line-height:1.1;color:var(--text-primary);margin-bottom:var(--space-6)}.case-study-content p{font-size:15px;line-height:1.7;color:var(--text-muted);margin-bottom:var(--space-5)}.case-study-content ul,.case-study-content ol{margin:0 0 var(--space-5) var(--space-5);padding:0}.case-study-content li{font-size:15px;line-height:1.7;color:var(--text-muted);margin-bottom:var(--space-2)}.case-study-content strong{font-weight:600;color:var(--text-primary)}.case-study-content em{font-style:italic;color:var(--text-muted)}.case-study-content h2+p,.case-study-content h3+p{margin-top:0}.case-study-content code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.92em;background:var(--bg-card);padding:2px 6px;border-radius:4px}.case-study-content img{display:block;max-width:100%;border-radius:var(--radius);margin:var(--space-7) auto var(--space-7) 0}.case-study-content p:has(>img){margin:0}.case-study-content img+p,.case-study-content p:has(>img)+p{margin-top:calc(var(--space-4) - var(--space-7));font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);font-style:normal}.case-study-content img+p strong,.case-study-content p:has(>img)+p strong{font-weight:500;color:var(--text-muted)}.case-study-content img.is-small{max-width:480px;width:100%}.visual-placeholder{width:100%;aspect-ratio:16 / 9;background:var(--bg-card);border:1px dashed var(--border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;padding:var(--space-6);margin:var(--space-7) 0}.visual-placeholder figcaption{font-size:13px;line-height:1.6;color:var(--text-muted);text-align:center;max-width:48ch}.visual-placeholder figcaption em{font-style:italic;color:var(--text-muted)}.visual-placeholder--hero{margin-top:0;margin-bottom:var(--space-8)}@media (max-width: 960px){.case-study-layout{grid-template-columns:1fr;gap:var(--space-5)}.case-study-sidebar{position:static;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-5)}.case-study-toc{display:none}}@media (max-width: 720px){.case-study-title{font-size:34px}.case-study-summary{font-size:15px}.case-study-meta{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}.case-study-content h1{font-size:30px}.case-study-content h2{font-size:24px}.case-study-content p,.case-study-content li{font-size:14px}.visual-placeholder{aspect-ratio:auto;min-height:180px;padding:var(--space-5)}}.about-content{max-width:520px;padding-bottom:var(--space-10)}.about-content p{font-size:15px;line-height:1.75;color:var(--text-muted);margin-bottom:var(--space-5)}.project-card__thumbnail{position:relative}.project-card__badge{position:absolute;top:var(--space-3);left:var(--space-3);padding:4px 8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);background:#141414b3;border:1px solid var(--border);border-radius:999px;backdrop-filter:blur(6px)}.coming-soon{position:fixed;inset:0;background:#000;overflow:hidden;cursor:crosshair}.coming-soon__canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.coming-soon__back{position:absolute;top:var(--space-5);left:var(--space-5);z-index:2;margin-bottom:0}.coming-soon__headline{position:absolute;left:0;right:0;bottom:-.22em;z-index:1;text-align:center;font-family:var(--font-sans);font-weight:800;font-size:clamp(48px,12vw,180px);line-height:.9;letter-spacing:-.04em;color:#fff;white-space:nowrap;pointer-events:none;user-select:none}@media (max-width: 860px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.projects-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:var(--space-1)}.case-study-meta{grid-template-columns:1fr 1fr}}
