:root{color-scheme:dark;--bg:#0a0a0a;--bg-alt:#111;--surface:#141414;--surface-2:#161616;--border:#222;--border-2:#262626;--border-strong:#333;--input-border:#666;--text:#f5f5f5;--text-2:#d4d4d4;--text-muted:#a3a3a3;--text-subtle:#8a8a8a;--label:#c4c4c4;--code:#e5e5e5;--accent:#ff3b30;--on-accent:#0a0a0a;--font-display:"Space Grotesk", sans-serif;--font-body:Inter, system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--container:1200px;--gutter:32px;--section-y:120px}*,:before,:after{box-sizing:border-box}html{background:var(--bg);scroll-padding-top:104px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);margin:0;font-size:16px;line-height:1.6}a{color:var(--text)}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dot{color:var(--accent)}.section{border-top:1px solid var(--border)}.section--flush{border-top:0}.section__inner{max-width:var(--container);padding:var(--section-y) var(--gutter);margin:0 auto}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:64px;display:flex}.section-header__title,.contact__title,.blog-index__title{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;margin:0;font-size:clamp(32px,10.4vw,64px);font-weight:700}.section-header__number,.contact__number,.service__number{font-family:var(--font-mono);color:var(--accent);font-size:14px}.section-more{margin:48px 0 0}.site-header{z-index:10;background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header__inner{max-width:var(--container);padding:16px var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.logo{flex-direction:column;text-decoration:none;display:flex}.logo__name{font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;font-size:20px;font-weight:700}.logo__role{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.site-nav{flex-wrap:wrap;align-items:center;gap:8px 24px;font-size:15px;font-weight:500;display:flex}.site-nav__link{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.site-nav__link[aria-current=page]{color:var(--accent)}.lang-toggle{font-family:var(--font-mono);align-items:center;gap:6px;font-size:13px;display:flex}.lang-toggle--divided{border-left:1px solid var(--border-strong);padding-left:20px}.lang-toggle__active{color:var(--accent);padding:12px 4px}.lang-toggle__separator{color:var(--input-border)}.lang-toggle a{color:var(--text-muted);padding:12px 4px;text-decoration:none}.lang-toggle a:hover{color:var(--accent)}.button{cursor:pointer;border:0;border-radius:0;justify-content:center;align-items:center;min-height:52px;padding:0 28px;font-family:inherit;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.button--primary{background:var(--accent);color:var(--on-accent)}.button--primary:hover{background:var(--text);color:var(--on-accent)}.button--secondary{border:1px solid var(--text);color:var(--text);background:0 0}.button--secondary:hover{border-color:var(--accent);color:var(--accent)}.button--muted{border-color:var(--input-border)}.button--small{min-height:44px;padding:0 20px;font-size:14px}.button--medium{min-height:48px;padding:0 24px;font-size:15px}.button:disabled{opacity:.6;cursor:default}.text-link{min-height:44px;font-family:var(--font-mono);color:var(--accent);align-items:center;font-size:14px;display:inline-flex}.hero{max-width:var(--container);padding:140px var(--gutter) 120px;margin:0 auto}.hero--portfolio{padding-top:160px;padding-bottom:140px}.hero__label{font-family:var(--font-mono);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:28px;font-size:14px}.hero__title{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;margin:0;font-weight:700}.hero__title--consulting{max-width:1000px;font-size:clamp(48px,7.5vw,112px);line-height:.95}.hero__title--portfolio{font-size:clamp(56px,10vw,152px);line-height:.92}.hero__intro{max-width:680px;color:var(--text-muted);margin:40px 0 0;font-size:22px;line-height:1.5}.hero__actions{flex-wrap:wrap;gap:16px;margin-top:48px;display:flex}.placeholder{border:1px solid var(--border-2);background:var(--surface-2);font-family:var(--font-mono);color:var(--text-subtle);text-align:center;justify-content:center;align-items:center;padding:16px;font-size:13px;display:flex}.meta-label{font-family:var(--font-mono);color:var(--text-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:13px}.project{flex-wrap:wrap;align-items:center;gap:48px;margin-bottom:96px;display:flex}.project:last-child{margin-bottom:0}.project--reverse{flex-wrap:wrap-reverse}.project__media{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--border-2);flex:7 480px;width:100%;min-width:0;height:auto;display:block}.project__body{flex-direction:column;flex:5 340px;gap:16px;min-width:0;display:flex}.project__heading{flex-direction:column;gap:8px;display:flex}.project__client{font-family:var(--font-mono);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:14px}.project__title{font-family:var(--font-display);text-transform:uppercase;margin:0;font-size:36px;font-weight:700;line-height:1.1}.project__summary{color:var(--text-muted);margin:0;font-size:17px;line-height:1.6}.work-more{border-top:1px solid var(--border);padding-top:48px}.work-more__title{font-family:var(--font-display);text-transform:uppercase;margin:0;font-size:36px;font-weight:700;line-height:1.1}.work-more__text{max-width:760px;color:var(--text-muted);margin:16px 0 0;font-size:17px;line-height:1.6}.tech-list{font-family:var(--font-mono);color:var(--label);flex-wrap:wrap;gap:8px;font-size:12px;display:flex}.tech-list span{border:1px solid var(--border-strong);padding:6px 10px}.button-row{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.bio-grid{flex-wrap:wrap;gap:64px;display:flex}.bio{flex-direction:column;flex:360px;gap:24px;min-width:0;display:flex}.bio__portrait{aspect-ratio:1;width:100%;max-width:360px;height:auto;display:block}.bio__text{color:var(--text-2);margin:0;font-size:19px;line-height:1.6}.timeline{flex-direction:column;flex:420px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.timeline__item{border-top:1px solid var(--border-2);gap:32px;padding:28px 0;display:flex}.timeline__item:last-child{border-bottom:1px solid var(--border-2)}.timeline__period{font-family:var(--font-mono);color:var(--accent);flex:0 0 120px;font-size:14px}.timeline__role{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.3}.timeline__org{color:var(--text-muted);margin-top:6px;font-size:16px}.post-grid{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:32px;display:grid}.teaser{border-top:1px solid var(--border-strong);flex-direction:column;gap:16px;padding-top:28px;text-decoration:none;display:flex}.teaser--accent{border-top:2px solid var(--accent)}.teaser__meta{font-family:var(--font-mono);color:var(--text-subtle);font-size:13px}.teaser__title{font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1.25}.teaser__text{color:var(--text-muted);font-size:16px;line-height:1.6}.teaser__read{font-family:var(--font-mono);color:var(--accent);font-size:14px}.service-grid{border:1px solid var(--border-2);background:var(--border-2);grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:1px;display:grid}.service{background:var(--bg);flex-direction:column;gap:20px;padding:48px 40px;display:flex}.service__title{font-family:var(--font-display);text-transform:uppercase;margin:0;font-size:32px;font-weight:700;line-height:1.2}.service__text{color:var(--text-muted);margin:0;font-size:17px;line-height:1.6}.service__deliverables{color:var(--text-2);flex-direction:column;gap:10px;margin:0;padding:0;font-size:15px;list-style:none;display:flex}.service__deliverables li:before{content:"- "}.typical{flex-wrap:wrap;gap:48px;margin-top:72px;display:flex}.typical__title{font-family:var(--font-display);text-transform:uppercase;flex:280px;margin:0;font-size:28px;font-weight:700;line-height:1.2}.typical__list{min-width:0;color:var(--text-2);flex:2 560px;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:0 40px;margin:0;padding:0;font-size:17px;line-height:1.5;list-style:none;display:grid}.typical__list li{border-top:1px solid var(--border-2);padding:18px 0}.steps{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:48px;margin:0;padding:0;list-style:none;display:grid}.step{border-top:2px solid var(--border-strong);flex-direction:column;gap:16px;padding-top:28px;display:flex}.step:first-child{border-top-color:var(--accent)}.step__title{font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1.2}.step__text{color:var(--text-muted);font-size:16px;line-height:1.6}.about-row{flex-wrap:wrap;align-items:flex-start;gap:64px;display:flex}.about-row__portrait{aspect-ratio:4/5;flex:0 340px;width:100%}.about-row__text{flex-direction:column;flex:460px;gap:24px;min-width:0;display:flex}.about-row__lead{font-family:var(--font-display);margin:0;font-size:28px;font-weight:500;line-height:1.35}.about-row__body{color:var(--text-muted);margin:0;font-size:18px;line-height:1.6}.link-row{flex-wrap:wrap;gap:16px;display:flex}.case-grid{grid-template-columns:repeat(auto-fit,minmax(min(440px,100%),1fr));gap:32px;display:grid}.case{flex-direction:column;gap:20px;display:flex}.case__image{aspect-ratio:16/10}.case__title{font-family:var(--font-display);margin:0;font-size:28px;font-weight:700;line-height:1.2}.case__text{color:var(--text-muted);margin:0;font-size:16px;line-height:1.6}.contact{--field-bg:var(--surface)}.contact--alt{--field-bg:var(--bg);background:var(--bg-alt)}.contact__inner{max-width:var(--container);padding:var(--section-y) var(--gutter);flex-wrap:wrap;gap:64px;margin:0 auto;display:flex}.contact__intro{flex-direction:column;flex:360px;gap:24px;min-width:0;display:flex}.contact__title{line-height:1}.contact__text{color:var(--text-muted);margin:0;font-size:18px;line-height:1.6}.contact__note{font-family:var(--font-mono);color:var(--label);margin:0;font-size:14px}.contact__social{font-family:var(--font-mono);flex-direction:column;gap:4px;font-size:15px;display:flex}.contact__social a{align-items:center;min-height:44px;display:inline-flex}.form{flex-direction:column;flex:440px;gap:24px;min-width:0;display:flex;position:relative}.form__row{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:24px;display:grid}.field{flex-direction:column;gap:8px;display:flex}.field label{font-family:var(--font-mono);color:var(--label);letter-spacing:.06em;text-transform:uppercase;font-size:13px}.field input,.field select,.field textarea{border:1px solid var(--input-border);background:var(--field-bg);width:100%;min-height:52px;color:var(--text);font:inherit;border-radius:0;padding:0 16px;font-size:16px}.field textarea{resize:vertical;padding:16px}.form__footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.form__status{margin:0;font-size:16px}.form__status:empty,.form--sent>:not(.form__status){display:none}.form__status[data-state=error]{color:var(--accent)}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.site-footer{border-top:1px solid var(--border)}.site-footer__inner{max-width:var(--container);padding:40px var(--gutter);font-family:var(--font-mono);color:var(--text-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;font-size:13px;display:flex}.site-footer__links{flex-wrap:wrap;gap:8px 24px;display:flex}.site-footer__links a{min-height:44px;color:var(--label);align-items:center;display:inline-flex}.site-footer__links a:hover{color:var(--accent)}.blog-index{max-width:var(--container);padding:var(--section-y) var(--gutter);margin:0 auto}.blog-index__title{margin-bottom:64px}.post{max-width:760px;padding:96px var(--gutter) 140px;margin:0 auto}.post__back{min-height:44px;font-family:var(--font-mono);color:var(--text-muted);align-items:center;font-size:14px;text-decoration:none;display:inline-flex}.post__meta{font-family:var(--font-mono);color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin-top:48px;font-size:14px}.post__title{font-family:var(--font-display);letter-spacing:-.02em;margin:20px 0 0;font-size:clamp(40px,6vw,64px);font-weight:700;line-height:1.05}.post__standfirst{color:var(--text-muted);margin:28px 0 0;font-size:22px;line-height:1.5}.post__cover{aspect-ratio:16/9;border:1px solid var(--border-2);object-fit:cover;width:100%;margin-top:56px;display:block}.post__footer{border-top:1px solid var(--border-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:80px;padding-top:32px;display:flex}.post__next{min-height:44px;font-family:var(--font-mono);color:var(--accent);align-items:center;font-size:14px;text-decoration:none;display:inline-flex}.prose{color:var(--text-2);flex-direction:column;gap:28px;margin-top:56px;font-size:19px;line-height:1.75;display:flex}.prose p{margin:0}.prose h2{font-family:var(--font-display);color:var(--text);margin:24px 0 0;font-size:30px;font-weight:700;line-height:1.2}.prose blockquote{border-left:3px solid var(--accent);font-family:var(--font-display);color:var(--text);margin:16px 0;padding:8px 0 8px 28px;font-size:26px;font-weight:500;line-height:1.4}.prose pre{border:1px solid var(--border-2);background:var(--surface);color:var(--code);margin:0;padding:24px;font-size:14px;line-height:1.6;overflow-x:auto}.prose code{font-family:var(--font-mono)}.prose a{color:var(--accent)}@media (width<=1100px){html{scroll-padding-top:216px}}@media (width<=640px){:root{--section-y:72px}html{scroll-padding-top:24px}.site-header{position:static}.hero,.hero--portfolio{padding-top:72px;padding-bottom:72px}.hero__title--consulting{font-size:9.4vw}.hero__title--portfolio{font-size:12.4vw}.hero__intro{font-size:19px}.section-header{margin-bottom:40px}.service{padding:32px 24px}.service__title{font-size:26px}.project__title,.work-more__title{font-size:28px}.timeline__item{flex-direction:column;gap:8px}.timeline__period{flex-basis:auto}.post{padding-top:48px;padding-bottom:72px}.post__title{font-size:34px}}@media (width<=480px){.site-nav{justify-content:space-between;gap:8px 12px;width:100%;font-size:14px}.site-nav__link--linkedin{display:none}.lang-toggle--divided{padding-left:12px}}@media (width<=359px){.site-nav{gap:8px}.lang-toggle--divided{border-left:0;padding-left:0}}
