:root{
  --bg:#06131b;--bg2:#081823;--panel:#0a1b26;--panel2:#0d202b;--text:#f4f7f6;--muted:#9cadb5;--muted2:#758790;--line:#1c3340;--teal:#31d4c4;--teal2:#1db9aa;--max:1440px;--radius:8px;--shadow:0 26px 70px rgba(0,0,0,.28)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:radial-gradient(circle at 66% 7%,rgba(35,212,196,.06),transparent 29%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.container{width:min(calc(100% - 80px),var(--max));margin:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:9999;background:#fff;color:#000;padding:.65rem 1rem;transform:translateY(-160%)}.skip-link:focus{transform:none}.progress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:1000}.progress span{display:block;height:100%;width:0;background:var(--teal)}

.site-header{position:sticky;top:0;z-index:100;background:rgba(5,15,22,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(46,78,92,.35)}.nav-shell{height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-mark{font-weight:900;font-style:italic;color:var(--teal);font-size:27px;letter-spacing:-.08em}.brand-name{font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:14px}.nav{display:flex;gap:34px;align-items:center}.nav a{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#d9e2e4;position:relative}.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-25px;height:1px;background:var(--teal);transition:right .25s ease}.nav a:hover::after,.nav a.is-active::after{right:0}.nav-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.linkedin-chip{border:1px solid #52636b;width:30px;height:30px;display:grid;place-items:center;border-radius:4px;font-weight:800;font-size:14px}.nav-toggle{display:none;background:none;border:0;color:white;width:44px;height:44px}.nav-toggle i{display:block;width:24px;height:1px;background:currentColor;margin:7px auto}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:46px;padding:0 18px;border-radius:4px;border:1px solid transparent;text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:.05em;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--teal);color:#051418}.btn-primary:hover{background:#58e5d7}.btn-outline{border-color:#2d4c58;background:rgba(8,24,35,.6)}.btn-outline:hover{border-color:var(--teal);color:var(--teal)}.btn-sm{min-height:40px;padding:0 16px}.link-arrow{color:var(--teal);font-size:13px}.link-arrow:hover{text-decoration:underline;text-underline-offset:5px}

.eyebrow{margin:0 0 14px;color:var(--teal);font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.hero{position:relative;border-bottom:1px solid rgba(33,55,66,.75);overflow:hidden}.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(48,213,196,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(48,213,196,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,transparent 30%,#000 60%,transparent 95%)}.hero-layout{min-height:485px;padding:62px 0 42px;display:grid;grid-template-columns:minmax(0,1fr) minmax(560px,.95fr);gap:56px;align-items:center;position:relative}.hero-copy{max-width:670px}.hero h1{font-size:clamp(48px,4.35vw,72px);line-height:.97;letter-spacing:-.055em;margin:0;max-width:700px}.hero h1 span{display:block;color:var(--teal)}.hero-lead{max-width:610px;color:#b7c4c9;font-size:15px;line-height:1.6;margin:22px 0 18px}.tech-line{display:flex;flex-wrap:wrap;gap:9px}.tech-line span{border:1px solid #263a45;background:#0a1821;padding:7px 12px;border-radius:5px;font-size:11px;color:#e0e7e8}.hero-actions{display:flex;gap:14px;align-items:center;margin-top:18px}.hero-values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:28px;max-width:650px}.hero-values div{padding:0 22px;border-left:1px solid #29404b}.hero-values div:first-child{padding-left:0;border-left:0}.hero-values strong{display:block;font-size:11px}.hero-values span{display:block;color:#82969e;font-size:10px;margin-top:3px}.hero-visual-wrap{position:relative;min-height:330px;display:flex;align-items:center}.hero-art{width:min(100%,705px);filter:drop-shadow(0 24px 40px rgba(0,0,0,.25));transform:translateY(4px)}.hero-disciplines{position:absolute;right:0;top:45px;display:grid;gap:10px}.hero-disciplines span{min-width:166px;display:flex;align-items:center;gap:14px;font-size:12px;color:#e6eded}.hero-disciplines b{width:46px;height:42px;display:grid;place-items:center;border:1px solid #24424e;border-radius:7px;background:rgba(10,29,40,.88);color:var(--teal);font-size:18px;box-shadow:0 0 30px rgba(49,212,196,.05)}

.credibility{border-bottom:1px solid #162c36;background:#07141d}.credibility-grid{min-height:88px;display:grid;grid-template-columns:280px 1fr;align-items:center;gap:36px}.credibility-label{padding-right:30px;border-right:1px solid #233b46;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.credibility-label span,.credibility-label strong{display:block}.credibility-label strong{color:var(--teal)}.brand-strip{display:grid;grid-template-columns:repeat(7,1fr);align-items:center;gap:24px;color:#c7d0d2}.brand-strip span{text-align:center;white-space:nowrap;font-weight:700;font-size:12px;letter-spacing:.18em;opacity:.9}.brand-strip .brand-ikea{font-size:17px;letter-spacing:.02em;border:1px solid #9aa7ac;border-radius:50%;padding:3px 8px}

.section{padding:72px 0;border-bottom:1px solid #172b35}.work{padding-top:54px}.work-heading{display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:end;margin-bottom:30px}.work-heading h2{font-size:32px;line-height:1.05;letter-spacing:-.035em;margin:0}.work-heading h2 span{color:var(--teal)}.work-heading>p{justify-self:end;max-width:400px;color:#a7b8be;font-size:13px;margin:0 0 3px}.project-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.project-card{border:1px solid #1e3742;background:#081821;min-width:0;overflow:hidden;border-radius:5px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.project-card:hover{transform:translateY(-5px);border-color:#315967;box-shadow:var(--shadow)}.project-card img{width:100%;aspect-ratio:1.72/1;object-fit:cover;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .3s ease}.project-card:hover img{transform:scale(1.035);filter:saturate(1.06)}.project-body{padding:15px 14px 16px}.project-type{font-size:9px!important;color:var(--teal)!important;text-transform:uppercase;letter-spacing:.08em;margin:0 0 8px!important}.project-body h3{font-size:15px;margin:0 0 7px}.project-body>p{font-size:11px;color:#aebdc2;line-height:1.55;margin:0 0 13px}.project-body dl{margin:0}.project-body dl div{margin-top:9px}.project-body dt{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#617882}.project-body dd{margin:2px 0 0;font-size:9px;line-height:1.45;color:#d6dfe2}.case-link{margin-top:12px;padding:0;border:0;background:none;color:var(--teal);text-transform:uppercase;font-weight:800;font-size:9px;letter-spacing:.05em;cursor:pointer}.case-link span{display:inline-block;margin-left:8px;transition:transform .2s}.case-link:hover span{transform:translateX(4px)}

.capabilities-layout{display:grid;grid-template-columns:230px 1fr;gap:40px;align-items:start}.cap-intro h2{font-size:30px;line-height:1.03;letter-spacing:-.035em;margin:0}.cap-grid{display:grid;grid-template-columns:repeat(6,1fr)}.cap-card{padding:2px 20px 2px;border-left:1px solid #1f3742;min-height:116px}.cap-card:first-child{border-left:0}.cap-card>span{font-size:29px;color:var(--teal);display:block;margin-bottom:8px;line-height:1}.cap-card h3{font-size:13px;margin:0 0 7px}.cap-card p{font-size:10.5px;color:#93a5ac;margin:0;line-height:1.55}

.ai-workflow{background:linear-gradient(180deg,#071720,#07141c)}.ai-layout{display:grid;grid-template-columns:1.05fr 1.65fr;gap:60px;align-items:center}.ai-layout h2{font-size:32px;line-height:1.05;max-width:560px;margin:0 0 15px}.ai-layout>div>p:last-child{color:#9dafb6;font-size:13px;max-width:620px}.workflow{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(5,1fr);list-style:none;margin:0;padding:0;position:relative}.workflow::before{content:"";position:absolute;left:5%;right:5%;top:25px;height:1px;background:linear-gradient(90deg,var(--teal),#29414c)}.workflow li{position:relative;text-align:center;padding-top:52px}.workflow li::before{content:"";position:absolute;top:20px;left:50%;width:10px;height:10px;border-radius:50%;background:#081821;border:2px solid var(--teal);transform:translateX(-50%)}.workflow span{font-size:9px;color:#6f8790}.workflow b{display:block;margin-top:4px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.workflow-note{grid-column:2;margin:-18px 0 0;text-align:center;color:#81959d;font-size:10px}.workflow-note strong{color:#d7e1e3}

.process-layout{display:grid;grid-template-columns:270px 1fr;gap:58px;align-items:start}.process-heading h2{font-size:40px;line-height:1;letter-spacing:-.04em;margin:0}.process-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #203741}.process-grid article{padding:24px 20px 0;border-left:1px solid #203741;min-height:150px}.process-grid article:first-child{border-left:0}.process-grid span{font-size:10px;color:var(--teal)}.process-grid h3{font-size:14px;margin:14px 0 7px}.process-grid p{font-size:11px;color:#96a9b0;margin:0;line-height:1.55}

.experience{background:#07141d}.experience-layout{display:grid;grid-template-columns:230px 1fr;gap:40px}.experience-heading h2{font-size:28px;line-height:1.05;margin:0}.timeline{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.timeline::before{content:"";position:absolute;left:0;right:0;top:10px;height:1px;background:#29434f}.timeline-item{padding:25px 26px 0 24px;position:relative;border-left:1px solid #1d3540}.timeline-item::before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px #07141d}.timeline-item p{font-size:10px;color:#9bb0b7;margin:0 0 8px}.timeline-item h3{color:var(--teal);font-size:14px;margin:0 0 3px}.timeline-item strong{display:block;font-size:11px;margin-bottom:7px}.timeline-item span{display:block;color:#91a5ad;font-size:10px;line-height:1.55}

.about-layout{display:grid;grid-template-columns:230px 230px 1fr;gap:40px;align-items:center}.about-title h2{font-size:30px;line-height:1.04;margin:0}.portrait-placeholder{height:180px;border:1px solid #24404b;border-radius:5px;background:linear-gradient(145deg,#0d2330,#071821);display:flex;flex-direction:column;justify-content:flex-end;padding:18px;position:relative;overflow:hidden}.portrait-placeholder::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(49,212,196,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(49,212,196,.07) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(135deg,transparent 12%,#000)}.portrait-placeholder span{position:absolute;top:14px;left:14px;color:var(--teal);font-size:9px}.portrait-placeholder strong,.portrait-placeholder small{position:relative}.portrait-placeholder strong{font-size:16px;letter-spacing:.08em}.portrait-placeholder small{color:#799099}.about-copy>p{color:#a7b8be;font-size:12.5px;max-width:680px;margin:0 0 12px}.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.about-tags span{border-left:2px solid var(--teal);padding:4px 9px;background:#091923;font-size:10px;color:#c4d0d4}

.contact{padding:58px 0 50px;background:#051019}.contact-layout{display:grid;grid-template-columns:1.2fr auto;gap:34px;align-items:end}.contact h2{font-size:38px;margin:0 0 8px;letter-spacing:-.035em}.contact p{color:#9caeb5;margin:0;font-size:13px}.contact-actions{display:flex;gap:10px;justify-content:flex-end}.contact-meta{grid-column:1/-1;display:flex;gap:18px;color:#6f838c;font-size:10px;padding-top:18px;border-top:1px solid #172b34}.footer{border-top:1px solid #142932;background:#040d13}.footer .container{min-height:60px;display:flex;align-items:center;gap:18px;color:#657982;font-size:9px}.footer a:last-child{margin-left:auto;color:#8ea2a9}

.case-dialog{width:min(920px,calc(100% - 32px));max-height:88vh;overflow:auto;border:1px solid #2b4c59;background:#071720;color:#f3f7f6;border-radius:8px;padding:0;box-shadow:0 30px 100px rgba(0,0,0,.65)}.case-dialog::backdrop{background:rgba(1,6,10,.78);backdrop-filter:blur(7px)}.dialog-content{padding:46px}.dialog-content h2{font-size:44px;margin:0 0 12px}.dialog-intro{font-size:15px;color:#aec0c6;max-width:760px}.dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.dialog-grid section{padding-top:16px;border-top:1px solid #28414c}.dialog-grid h3{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);margin:0 0 9px}.dialog-grid p,.dialog-grid li{font-size:12px;color:#a8bac0}.dialog-grid ul{margin:0;padding-left:18px}.dialog-close{position:sticky;float:right;top:15px;margin:15px 15px 0 0;width:38px;height:38px;border-radius:50%;border:1px solid #2b4b56;background:#081923;color:white;font-size:24px;cursor:pointer;z-index:2}.dialog-close:hover{border-color:var(--teal)}

.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}.reveal.is-visible{opacity:1;transform:none}

@media (max-width:1300px){.container{width:min(calc(100% - 54px),var(--max))}.hero-layout{grid-template-columns:1fr 520px}.hero-disciplines{right:-5px}.project-grid{grid-template-columns:repeat(3,1fr)}.cap-grid{grid-template-columns:repeat(3,1fr);row-gap:28px}.cap-card:nth-child(4){border-left:0}.brand-strip{grid-template-columns:repeat(7,max-content);justify-content:space-between;gap:16px}.brand-strip span{font-size:10px}.timeline{grid-template-columns:repeat(2,1fr);row-gap:34px}}
@media (max-width:1024px){.nav-shell{grid-template-columns:1fr auto auto}.nav{position:fixed;left:20px;right:20px;top:78px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#071720;border:1px solid #28424e;border-radius:6px;padding:8px}.nav.is-open{display:flex}.nav a{padding:14px 12px}.nav a::after{display:none}.nav-toggle{display:block}.nav-actions .linkedin-chip{display:none}.hero-layout{grid-template-columns:1fr;padding-top:54px}.hero-copy{max-width:760px}.hero-visual-wrap{max-width:760px}.hero-art{width:100%}.hero-disciplines{right:2%;top:42px}.credibility-grid{grid-template-columns:1fr}.credibility-label{border-right:0;padding-right:0;padding-top:20px}.brand-strip{padding-bottom:20px;overflow:auto;justify-content:flex-start}.work-heading,.capabilities-layout,.process-layout,.experience-layout{grid-template-columns:1fr}.work-heading>p{justify-self:start}.cap-intro h2,.experience-heading h2{max-width:680px}.process-grid{grid-template-columns:repeat(5,1fr)}.about-layout{grid-template-columns:220px 1fr}.about-title{grid-column:1/-1}.portrait-placeholder{grid-column:1}.about-copy{grid-column:2}.contact-layout{grid-template-columns:1fr}.contact-actions{justify-content:flex-start}}
@media (max-width:768px){.container{width:min(calc(100% - 32px),var(--max))}.site-header .brand-name{font-size:11px}.nav-cv{display:none}.hero-layout{padding:44px 0 30px;min-height:auto;gap:30px}.hero h1{font-size:clamp(42px,12vw,60px)}.hero-lead{font-size:14px}.hero-actions{align-items:stretch;flex-wrap:wrap}.hero-actions .btn{flex:1 1 46%}.link-arrow{width:100%;padding-top:4px}.hero-values{grid-template-columns:1fr 1fr;gap:18px}.hero-values div{border-left:0!important;padding:0!important}.hero-values div:nth-child(3){grid-column:1/-1}.hero-visual-wrap{min-height:auto}.hero-art{width:112%;max-width:none;margin-left:-6%}.hero-disciplines{position:static;grid-template-columns:1fr 1fr;margin-top:-12px;width:100%}.hero-disciplines span{min-width:0}.credibility{padding:0}.credibility-grid{gap:14px}.brand-strip{padding-bottom:18px}.work,.section{padding:54px 0}.work-heading h2{font-size:34px}.project-grid{grid-template-columns:1fr 1fr}.project-body{padding:16px}.project-body>p{font-size:12px}.project-body dd{font-size:10px}.cap-grid{grid-template-columns:1fr 1fr}.cap-card:nth-child(odd){border-left:0}.cap-card:nth-child(even){border-left:1px solid #1f3742}.ai-layout{grid-template-columns:1fr;gap:26px}.workflow,.workflow-note{grid-column:1;grid-row:auto}.workflow{overflow-x:auto}.workflow li{min-width:100px}.process-grid{grid-template-columns:1fr 1fr;border-top:0}.process-grid article{border-top:1px solid #203741}.timeline{grid-template-columns:1fr}.timeline::before{left:4px;right:auto;top:0;bottom:0;width:1px;height:auto}.timeline-item{padding:8px 0 28px 24px}.timeline-item::before{left:0;top:11px}.about-layout{grid-template-columns:1fr}.about-title,.portrait-placeholder,.about-copy{grid-column:1}.portrait-placeholder{max-width:300px}.contact h2{font-size:34px}.contact-actions{flex-direction:column;align-items:stretch}.contact-actions .btn{width:100%}.dialog-content{padding:32px 20px}.dialog-content h2{font-size:36px}.dialog-grid{grid-template-columns:1fr}}
@media (max-width:520px){body{font-size:15px}.brand-name{display:none}.hero h1{font-size:43px}.tech-line span{font-size:10px}.hero-actions .btn{flex:1 1 100%}.hero-disciplines{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.cap-grid{grid-template-columns:1fr}.cap-card,.cap-card:nth-child(even),.cap-card:nth-child(odd){border-left:0;border-top:1px solid #1f3742;padding:18px 0}.process-grid{grid-template-columns:1fr}.process-grid article{border-left:0;padding-left:0}.contact-meta{flex-direction:column;gap:4px}.footer .container{flex-wrap:wrap;padding:14px 0}.footer a:last-child{margin-left:0;width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.project-card,.project-card img,.btn,.case-link span{transition:none!important}}

/* Build: V4.1 cache-busted 2026-08-16 */
