@font-face{font-family:Inter;src:url('../assets/fonts/inter-400.woff2')}@font-face{font-family:Inter;src:url('../assets/fonts/inter-600.woff2');font-weight:600}@font-face{font-family:Space;src:url('../assets/fonts/space-grotesk-500.woff2');font-weight:500}@font-face{font-family:Mono;src:url('../assets/fonts/jetbrains-mono-400.woff2')}
:root{color-scheme:light;--bg:#f7f4ee;--surface:#fff;--text:#1f2a24;--muted:#536259;--primary:#1f6f54;--accent:#e0a526;--border:#c5cec2;--ui-border:#657167;--button-text:#fff;--code-bg:#17251d;--code-text:#eaf0ea;--code-muted:#bdcdc1;--transparent:transparent;--mask-solid:#000;--avatar-edge-color:#0c0a0d;--shadow:rgba(31,42,36,.14);--grain:rgba(31,42,36,.04);--overlay:rgba(247,244,238,.94);--focus:#1f6f54;--selected:#e4eee3;--backdrop:rgba(9,17,12,.7);--ground:#8a765b}
[data-theme=dark]{color-scheme:dark;--bg:#101712;--surface:#18221c;--text:#eaf0ea;--muted:#b1c1b6;--primary:#79cba5;--accent:#e8b63a;--border:#3e5145;--ui-border:#8c9e91;--button-text:#101712;--shadow:rgba(0,0,0,.24);--grain:rgba(234,240,234,.025);--overlay:rgba(16,23,18,.95);--focus:#79cba5;--selected:#284331;--ground:#857255}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font:400 15px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:var(--surface);border:1px solid var(--ui-border);border-radius:6px}button:disabled{cursor:default;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button:hover,a:hover{color:var(--primary)}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Space,Arial,sans-serif;font-weight:500;line-height:1.08;letter-spacing:-.05em}h2{font-size:clamp(38px,4.4vw,66px);margin-bottom:25px}h3{font-size:25px;letter-spacing:-.035em}.mono,.eyebrow{font:400 10px/1.7 Mono,monospace;letter-spacing:.11em}.eyebrow{color:var(--primary);margin-bottom:24px}.small{font-size:12px;color:var(--muted)}.gradient-text{background:var(--grad-text);background-clip:text;-webkit-background-clip:text;color:transparent}.skip{position:fixed;left:20px;top:-80px;background:var(--surface);z-index:100;padding:10px}.skip:focus{top:10px}.site-header{height:96px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:20;border-bottom:1px solid var(--border)}.wordmark{font-family:Space,sans-serif;font-size:37px;letter-spacing:-.08em;font-weight:500;line-height:1;display:flex;align-items:center}.wordmark span{color:var(--primary)}.wordmark small{font:10px Mono;letter-spacing:.17em;margin-left:20px}.site-header nav{display:flex;gap:32px;font-size:12px}.site-header nav a.active{color:var(--primary);text-decoration:underline;text-underline-offset:8px}.header-actions{display:flex;gap:24px;align-items:center}.header-actions button{border:0;background:transparent;font-size:24px}.header-contact{font-size:12px}.header-contact span{margin-left:20px}#menu{display:none}.hero{min-height:810px;position:relative;overflow:hidden;background:var(--grad-hero);padding:190px 6% 0}.hero:after,.section:after{content:'';position:absolute;inset:0;pointer-events:none;background-image:repeating-radial-gradient(circle at 10% 20%,var(--grain) 0 .6px,transparent .6px 3px);opacity:.12}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:1%;position:relative;z-index:1;min-height:490px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(50px,5.2vw,82px);line-height:1.05;margin:0 0 30px;letter-spacing:-.065em}.hero .eyebrow{font-size:11px;display:flex;align-items:center;gap:10px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--primary)}.role{font-weight:600;font-size:15px;margin-bottom:3px}.specialty{font-size:11px;color:var(--muted);max-width:440px}.hero-description{max-width:390px;font-size:14px;color:var(--muted);margin:22px 0 28px}.hero-actions{display:flex;align-items:center;gap:28px}.button{border:1px solid var(--ui-border);padding:13px 21px;display:inline-flex;justify-content:center;gap:25px;align-items:center;border-radius:4px;font-size:12px;background:var(--surface);font-weight:600;line-height:1.4}.primary{background:var(--grad-button);border-color:var(--primary);color:var(--button-text)}.primary:hover{color:var(--button-text);transform:translateY(-2px)}.text-link{border:0;border-bottom:1px solid var(--ui-border);padding:7px 0;background:transparent;font-size:12px;border-radius:0}.text-link span{margin-left:10px}.hero-bottom{border-top:1px solid var(--border);padding:25px 0;display:flex;justify-content:space-between;margin-top:45px;position:relative;z-index:2;color:var(--muted)}.hero-orbit{width:650px;height:650px;border:1px solid var(--border);border-radius:50%;position:absolute;right:-290px;top:110px;pointer-events:none;opacity:.5}.scene-wrap{position:relative;min-width:0;isolation:isolate;align-self:center;perspective:900px}.scene-halo{position:absolute;inset:-27% -15% -16%;background:var(--grad-avatar-halo);filter:blur(24px);z-index:-2;pointer-events:none;transition:opacity .25s;animation:drift 16s ease-in-out infinite alternate}.avatar-stage{aspect-ratio:16/9;position:relative;transform-origin:50% 94%;pointer-events:none;margin:0;isolation:isolate}.scene-backdrop{position:absolute;inset:-24%;background:radial-gradient(ellipse at center,var(--avatar-edge-color) 22%,transparent 69%);z-index:-1;filter:blur(10px)}.avatar-stage video{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;mask-image:linear-gradient(to right,transparent 0%,var(--mask-solid) 5%,var(--mask-solid) 96%,transparent 100%),linear-gradient(to bottom,transparent 0%,var(--mask-solid) 4%,var(--mask-solid) 97%,transparent 100%);mask-composite:intersect;transform:translateX(3%);transition:opacity .25s}.contact-shadow{position:absolute;left:18%;right:4%;bottom:-5%;height:13%;border-radius:50%;background:var(--shadow);filter:blur(14px);z-index:-1}.scene-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:24px;border-top:1px solid var(--ground);padding-top:14px;position:relative;z-index:3}.scene-meta>.mono{font-size:8px;color:var(--muted);letter-spacing:.12em}.video-controls{display:flex;gap:5px}.video-controls button{font-size:10px;padding:5px 10px;background:var(--surface)}.video-failure{position:absolute;inset:auto 10% 12%;padding:7px;background:var(--surface);font-size:11px}.intro-strip{display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:30px;padding:65px 6%;border-bottom:1px solid var(--border)}.intro-strip>p{font-family:Space;font-size:28px;line-height:1.25;letter-spacing:-.03em;margin:0}.intro-strip>div{display:flex;flex-direction:column;color:var(--muted);font-size:12px;gap:7px}.intro-strip .eyebrow{margin:0}.section{padding:115px 6%;position:relative;overflow:hidden}.section>*{position:relative;z-index:1}.section-intro{max-width:500px;color:var(--muted);font-size:14px}.section-heading{margin-bottom:50px}.work-section{background:var(--grad-section-a)}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-card{padding:28px;background:var(--grad-card);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;min-width:0;transition:box-shadow .25s,transform .25s}.project-card:hover{box-shadow:0 20px 45px var(--shadow);transform:translateY(-5px);color:var(--text)}.project-card.featured{grid-column:span 2}.project-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.project-top .mono{font-size:9px;color:var(--muted)}.project-arrow{font-size:24px;color:var(--primary)}.mini-diagram{height:155px;display:flex;align-items:center;justify-content:center;gap:0;position:relative}.mini-diagram span{border:1px solid var(--ui-border);background:var(--surface);border-radius:9px;padding:14px 10px;font:9px/1.6 Mono;text-align:center;max-width:120px;flex:1}.mini-diagram i{width:20px;height:1px;background:var(--primary);flex-shrink:0}.featured .mini-diagram span{max-width:170px;padding:20px;font-size:11px}.featured .mini-diagram i{width:45px}.project-card h3{font-size:24px;margin-bottom:14px}.project-card p{font-size:12px;color:var(--muted);max-width:470px;margin-bottom:24px}.card-link{font-size:9px;color:var(--primary);margin-top:auto}.case-library{margin-top:30px}.case-library details{border-bottom:1px solid var(--border);padding:15px 0}.case-library details p,.case-library li{font-size:13px}.enhanced .case-library{display:none}.module-section{background:var(--bg)}.version-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:24px;gap:20px}.version-row>div{display:flex;gap:8px}.version{width:42px;height:39px;font:13px Mono}.version[aria-pressed=true]{background:var(--primary);color:var(--button-text)}.module-map{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto 120px auto;gap:28px;position:relative;margin:45px 0}.connections{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.connections path{fill:none;stroke:var(--ui-border);stroke-width:1;stroke-dasharray:5 7}.connections path.selected{stroke:var(--primary);stroke-width:3;animation:dash 2s linear infinite}.module-group{border:1px solid var(--border);border-radius:7px;padding:22px;background:var(--surface)}.module-group h3{font-size:17px;letter-spacing:-.02em;margin-bottom:18px}.group-3,.group-4,.group-5{grid-row:3}.odoo-center{grid-row:2;grid-column:2;align-self:center;justify-self:center;background:var(--surface);border:1px solid var(--border);padding:10px 26px;border-radius:12px;display:flex;flex-direction:column;align-items:center}.odoo-center img{width:100px;height:55px;object-fit:contain}.odoo-center .mono{font-size:7px;color:var(--muted)}.logo-dark{display:none}[data-theme=dark] .logo-dark{display:block}[data-theme=dark] .logo-light{display:none}.module-chips{display:flex;flex-wrap:wrap;gap:8px}.module-chip{font-size:10px;display:flex;align-items:center;gap:7px;padding:6px 8px;border-color:var(--border);border-radius:4px}.module-chip img{width:23px;height:23px;object-fit:contain}.module-chip[aria-expanded=true],.module-chip.known{background:var(--selected);border-color:var(--primary)}.module-panel{padding:24px 28px;border-left:3px solid var(--primary);background:var(--grad-card);min-height:130px}.module-panel p{font-size:13px;margin-bottom:8px}.module-panel .eyebrow{font-size:10px}.studio-section{background:var(--grad-section-b)}.studio-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:7%;align-items:center}.studio-visual .scene-meta{margin-bottom:45px}.story-tabs{display:flex;flex-direction:column;gap:8px}.story-tabs button{text-align:left;border:0;background:transparent;padding:12px 15px;font-size:13px;border-left:2px solid var(--border);border-radius:0}.story-tabs button[aria-pressed=true]{border-color:var(--primary);background:var(--surface)}.story-tabs .mono{margin-right:15px;color:var(--primary)}.code-panel,.terminal{background:var(--code-bg);color:var(--code-text);border-radius:8px;box-shadow:0 20px 50px var(--shadow);overflow:hidden}.code-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 21px;border-bottom:1px solid var(--ui-border);color:var(--code-muted)}.code-title .mono{font-size:8px}.window-dots{font-size:9px;letter-spacing:3px;color:var(--code-muted)}pre{overflow:auto;font:11px/2.1 Mono,monospace;margin:0;padding:30px 25px;min-height:285px;white-space:pre-wrap;overflow-wrap:anywhere}.architecture{display:flex;align-items:center;justify-content:space-around;gap:7px;margin:0 22px;padding:16px 0;border-top:1px solid var(--ui-border);font:9px Mono}.code-panel>p{padding:0 25px 20px;font-size:12px;color:var(--code-muted)}.story-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:70px;border-top:1px solid var(--border);padding-top:30px}.story-steps h3{font-size:22px;margin-top:15px}.story-steps p{font-size:12px;color:var(--muted)}.story-steps .mono{color:var(--primary)}.skill-section{padding:45px 0;background:var(--surface);overflow:hidden;border-block:1px solid var(--border)}.skill-section>.eyebrow{margin-left:6%;font-size:9px}.ribbon>div{display:flex;width:max-content;gap:40px;padding:0 6vw}.ribbon span{font-family:Space;font-size:28px;white-space:nowrap;letter-spacing:-.03em}.ribbon span:after{content:'✳';font-size:14px;margin-left:40px;color:var(--primary)}.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.demo-panel{background:var(--grad-card);border:1px solid var(--border);border-radius:8px;padding:30px}.demo-panel label{font-size:12px;display:block;margin-bottom:10px}.demo-panel ol{padding:12px 0 12px 25px;font-size:13px;line-height:3}.demo-panel li.done{color:var(--primary);font-weight:600}.demo-panel output{display:block;font-size:11px;margin-top:20px;color:var(--muted)}.button-row{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.terminal{min-height:320px}#terminal-output{height:245px;overflow:auto;padding:25px;font:11px/1.9 Mono;white-space:pre-wrap}#terminal-output p{margin-bottom:9px}.terminal form{display:flex;gap:12px;padding:16px 23px;border-top:1px solid var(--ui-border)}.terminal input{background:transparent;border:0;color:var(--code-text);flex:1;min-width:0;padding:0;font:12px Mono}.terminal button{background:transparent;color:var(--code-text);padding:2px 10px}.journey-section{background:var(--grad-section-a)}.timeline article{display:grid;grid-template-columns:1fr 2fr;gap:50px;border-top:1px solid var(--border);padding:35px 0}.timeline-date{color:var(--muted);padding-top:5px}.timeline h3{font-size:30px}.timeline .eyebrow{margin-bottom:14px}.timeline p{font-size:13px;max-width:640px}.timeline .career-stages{display:flex;gap:17px;flex-wrap:wrap;font-size:12px;margin-bottom:15px;color:var(--primary)}.contact-section{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--grad-section-b)}.contact-section .section-heading{margin-bottom:30px}.contact-section>div>p{font-size:13px;max-width:430px;color:var(--muted)}.email-link{display:block;font-family:Space;font-size:clamp(15px,1.65vw,24px);margin:25px 0;overflow-wrap:anywhere}.contact-section .text-link{display:inline-block}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px}input,textarea,select{display:block;width:100%;border:1px solid var(--ui-border);background:var(--surface);color:var(--text);padding:12px;border-radius:4px;margin:8px 0 20px;font-size:13px}textarea{resize:vertical}::placeholder{color:var(--muted);opacity:1}footer{display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:center;padding:45px 6% 25px}footer p{font-size:12px;margin:0}footer>a:last-of-type{text-align:right}.trademark{grid-column:1/-1;border-top:1px solid var(--border);padding-top:25px;font-size:10px;color:var(--muted)}dialog{border:1px solid var(--border);border-radius:10px;padding:35px;width:min(900px,92vw);max-height:90dvh;overflow:auto;color:var(--text);background:var(--bg)}dialog::backdrop{background:var(--backdrop);backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;gap:10px}.dialog-top .mono{font-size:9px}.dialog-top button{padding:6px 12px}dialog h2{font-size:40px}dialog p{font-size:13px}.case-facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.case-facts h3{font-size:19px;margin-bottom:12px}.case-facts p{color:var(--muted)}.workflow{width:100%;height:auto;margin:20px 0}.flow-line{stroke:var(--primary);stroke-width:2;fill:none}.flow-dot{fill:var(--primary)}.flow-node{cursor:pointer}.flow-node rect{fill:var(--surface);stroke:var(--ui-border)}.flow-node.active rect{fill:var(--selected);stroke:var(--primary);stroke-width:3}.flow-node text{font:12px Mono;fill:var(--text)}.case-nav{display:flex;justify-content:space-between;margin-top:35px;border-top:1px solid var(--border);padding-top:20px;font-size:12px}.letter{display:inline-block;transform-origin:center}.word{display:inline-block}.word-mask{display:inline-block;overflow:hidden;vertical-align:bottom}.asset-placeholder{font:9px Mono;color:var(--muted);padding:3px;border:1px dashed var(--ui-border)}@keyframes drift{to{transform:translate(2%,3%) scale(1.06)}}@keyframes dash{to{stroke-dashoffset:-24}}
@media(min-width:1500px){.hero,.section,.intro-strip{padding-left:max(6%,calc((100vw - 1380px)/2));padding-right:max(6%,calc((100vw - 1380px)/2))}}
@media(max-width:1100px){.hero{padding-top:155px;min-height:750px}.hero-grid{grid-template-columns:1.1fr 1fr}.hero h1{font-size:56px}.hero-actions{gap:18px}.projects{grid-template-columns:1fr 1fr}.project-card.featured{grid-column:auto}.featured .mini-diagram span{font-size:9px;padding:14px 10px}.featured .mini-diagram i{width:20px}.module-group{padding:15px}.module-map{gap:16px}.studio-layout{gap:35px}.scene-meta>.mono{font-size:7px}.site-header nav{gap:18px}}
@media(max-width:850px){.hero{padding:145px 7% 0}.hero-grid{grid-template-columns:1fr;gap:55px}.hero h1{font-size:clamp(48px,8vw,72px)}.hero-copy{max-width:650px}.hero-description{max-width:500px}.hero .scene-wrap{width:85%;max-width:640px;justify-self:center}.hero-bottom{margin-top:40px}.site-header{padding:0 7%;height:82px}.wordmark small{display:none}.intro-strip{grid-template-columns:1fr 1.5fr}.intro-strip>div{grid-column:2}.section{padding:85px 7%}.module-map{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.odoo-center{grid-row:1;grid-column:1/-1}.module-group{grid-row:auto}.connections{display:none}.studio-layout{grid-template-columns:1fr;gap:40px}.studio-visual .scene-wrap{width:85%;margin:auto}.story-tabs{flex-direction:row;margin-top:30px}.story-tabs button{flex:1;font-size:11px}.story-tabs .mono{display:block}.intro-strip{padding-inline:7%}.contact-section{gap:40px}.scene-meta>.mono{font-size:8px}.story-steps{gap:20px}.story-steps h3{font-size:20px}.lab-grid{gap:20px}.demo-panel{padding:22px}.case-facts{gap:15px}}
@media(max-width:600px){.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--border);padding:25px 7%;flex-direction:column}.site-header nav.open{display:flex}#menu{display:block}.header-actions{gap:17px}.header-contact{font-size:11px}.header-contact span{margin-left:4px}.hero{padding-top:130px}.hero h1{font-size:clamp(36px,9vw,54px);line-height:1.1}.hero .eyebrow{font-size:9px}.hero-grid{gap:42px}.hero .scene-wrap{width:100%}.hero .specialty{font-size:10px;max-width:310px}.hero-description{font-size:13px}.hero-actions{gap:18px}.hero-actions .button{padding:13px 15px;font-size:11px}.hero-actions .text-link{font-size:10px}.hero-bottom{gap:20px;margin-top:32px;padding-bottom:25px}.hero-bottom .mono{font-size:7px}.hero-bottom>span{max-width:165px}.hero-bottom>a{max-width:95px;text-align:right}.intro-strip{grid-template-columns:1fr;gap:20px;padding-block:38px}.intro-strip>div{grid-column:auto;font-size:11px}.intro-strip>p{font-size:25px}.section{padding-block:65px}h2{font-size:38px}.section-heading{margin-bottom:30px}.projects{grid-template-columns:1fr;gap:16px}.project-card{padding:24px}.project-card h3{font-size:25px}.mini-diagram{height:135px}.version-row{align-items:flex-start;flex-direction:column;gap:15px}.version-row>div{gap:6px}.version{width:36px;height:36px}.module-map{gap:12px}.module-group{padding:13px}.module-group h3{font-size:15px;line-height:1.25}.module-chips{gap:5px}.module-chip{padding:5px 6px;font-size:9px;gap:5px}.module-chip img{width:19px;height:19px}.module-panel{padding:20px}.studio-visual .scene-wrap{width:100%}.story-tabs button{padding:10px 6px;font-size:10px}.story-steps{grid-template-columns:1fr;gap:10px;margin-top:35px}.story-steps article{display:grid;grid-template-columns:30px 1fr;gap:10px}.story-steps h3{margin:0}.story-steps p{grid-column:2}.studio-layout{gap:28px}.code-title{padding:14px}.code-title .mono{font-size:7px}pre{font-size:9px;padding:22px 16px;min-height:245px}.architecture{font-size:8px;margin:0 15px}.ribbon span{font-size:24px}.lab-grid{grid-template-columns:1fr}.timeline article{grid-template-columns:1fr;gap:15px;padding:28px 0}.timeline h3{font-size:25px}.timeline .career-stages{font-size:10px;gap:10px}.contact-section{grid-template-columns:1fr;gap:35px}.form-row{grid-template-columns:1fr;gap:0}.email-link{font-size:19px}.contact-section .button-row{gap:12px}.contact-section .button{font-size:11px}footer{grid-template-columns:auto 1fr;gap:22px}footer>a:last-of-type{grid-column:2;font-size:8px}.trademark{font-size:9px}dialog{padding:23px;width:94vw}dialog h2{font-size:30px}.case-facts{grid-template-columns:1fr;gap:0}.workflow text{font-size:13px}.scene-meta{margin-top:17px}.video-controls button{font-size:9px}.scene-halo{filter:blur(17px)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.letter,.word,.project-card{transform:none!important;opacity:1!important;filter:none!important;clip-path:none!important}.ribbon>div{flex-wrap:wrap;width:auto;gap:20px}.ribbon span{font-size:20px}.ribbon span:after{display:none}}

.gradient-text .letter{background:var(--grad-text);background-clip:text;-webkit-background-clip:text;color:transparent}.avatar-stage video{mask-image:radial-gradient(ellipse 95% 110% at 55% 55%,var(--mask-solid) 48%,transparent 73%),linear-gradient(to right,transparent,var(--mask-solid) 8%,var(--mask-solid) 97%,transparent),linear-gradient(to bottom,transparent,var(--mask-solid) 4%,var(--mask-solid) 97%,transparent);mask-composite:intersect}.scene-backdrop{inset:-35%;background:radial-gradient(ellipse,var(--avatar-edge-color) 15%,transparent 67%);filter:blur(20px)}

.scene-meta{background:var(--bg);padding:10px 12px;border:1px solid var(--border);border-radius:5px}.hero .scene-wrap{translate:0 var(--ground-offset,0px)}.hero-grid{margin-bottom:var(--ground-reserve,0px)}.ground-line{position:absolute;top:94%;left:0;width:100%;height:1px;background:var(--ground);z-index:-1;pointer-events:none}.scene-halo{transition:background .25s,opacity .25s}.scene-backdrop{transition:background .25s,opacity .25s}

@media(max-width:600px){html:not(.enhanced) .site-header nav{display:flex;flex-direction:row;flex-wrap:wrap;font-size:10px;padding:10px 7%}html:not(.enhanced) .hero{padding-top:160px}}
.skip{clip-path:inset(50%)}.skip:focus{clip-path:none}
/* Transparent footage on theme-aware studio lighting. */
.hero .scene-wrap{translate:none;width:112%;margin-left:-6%}.hero-grid{margin-bottom:0}.scene-backdrop,.ground-line{display:none}.avatar-stage video{mask-image:none;transform:none;object-fit:contain}.avatar-stage{transform-origin:center 85%;transition:none}.scene-halo{inset:-10% -5%;opacity:.42;filter:blur(35px)}[data-theme=dark] .scene-halo{opacity:.32}.contact-shadow{left:14%;right:18%;bottom:2%;height:4%;opacity:.5}.scene-meta{background:transparent;border:0;border-top:1px solid var(--border);padding:15px 0;margin:12px 7% 0}.video-controls button{background:var(--surface);padding:7px 12px;font-size:10px}.scene-meta>.mono{font-size:8px}.studio-visual .scene-wrap{width:108%;margin-left:-4%}
.version-experience{display:grid;grid-template-columns:1fr 1.5fr;gap:6%;padding:38px;border:1px solid var(--border);border-radius:14px;background:var(--grad-section-b);margin-bottom:50px}.version-overview>.eyebrow{margin-bottom:15px}.version-range{display:flex;align-items:center;gap:20px;font-family:Space;font-size:clamp(60px,6vw,90px);letter-spacing:-.07em;line-height:1.1;color:var(--primary);margin-bottom:25px}.version-range i{font-size:40px;font-style:normal;font-weight:400;color:var(--muted)}.version-overview h3{font-size:26px;line-height:1.2;margin-bottom:15px}.version-overview>p:last-child{font-size:13px;color:var(--muted);margin:0}.version-content{display:flex;flex-direction:column;justify-content:space-between}.version-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.version-areas .mono{color:var(--primary)}.version-areas h4{font:500 18px Space;margin:12px 0 8px;letter-spacing:-.025em}.version-areas p{font-size:12px;line-height:1.6;color:var(--muted)}.version-picker{border-top:1px solid var(--border);padding-top:22px;margin-top:25px}.version-picker>.mono{color:var(--muted);margin-bottom:12px}.version-picker>div{display:flex;gap:8px;flex-wrap:wrap}.version{flex:1;max-width:65px;min-width:36px;height:44px;transition:background .2s,transform .2s}.version:hover{transform:translateY(-3px)}#version-status{min-height:3.4em;line-height:1.6;margin:16px 0 0}
.skill-section{padding:115px 6%;background:var(--grad-section-a);border-block:1px solid var(--border)}.capability-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.capability-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:35px;display:flex;flex-direction:column;position:relative;transition:box-shadow .3s,border-color .3s}.capability-card:hover{border-color:var(--primary);box-shadow:0 18px 40px var(--shadow)}.capability-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px}.capability-top .mono{color:var(--muted)}.capability-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:var(--selected);color:var(--primary);font:24px Mono}.capability-card h3{font-size:29px;line-height:1.15;max-width:350px;margin-bottom:16px}.capability-card>p{font-size:13px;color:var(--muted);max-width:440px}.tool-tags{display:flex;flex-wrap:wrap;gap:7px;list-style:none;margin:10px 0 28px;padding:0}.tool-tags li{font:10px/1.5 Mono;border:1px solid var(--border);border-radius:5px;padding:6px 9px;background:var(--bg);color:var(--text)}.capability-use{border-top:1px solid var(--border);padding-top:20px;margin-top:auto}.capability-use .mono{color:var(--primary);font-size:9px}.capability-use p{font-size:12px;color:var(--muted);margin:9px 0 20px}.capability-link{font-size:12px;font-weight:600;display:flex;justify-content:space-between;gap:20px;color:var(--primary)}.capability-link span{transition:transform .2s}.capability-link:hover span{transform:translate(3px,-3px)}
body.case-open{overflow:hidden}dialog{box-shadow:0 35px 100px var(--shadow);overscroll-behavior:contain}dialog[open]::backdrop{animation:backdrop-in .4s ease-out}dialog.closing::backdrop{animation:backdrop-out .24s ease-in forwards}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}@keyframes backdrop-out{to{opacity:0}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){z-index:1}::view-transition-old(root){z-index:0}.theme-changing body,.theme-changing section,.theme-changing button,.theme-changing article{transition:background-color .45s,color .45s,border-color .45s}#theme{transition:transform .4s}#theme[aria-busy=true]{transform:rotate(180deg)}
@media(max-width:850px){.skill-section{padding:85px 7%}.hero .scene-wrap{width:100%;margin:0}.studio-visual .scene-wrap{width:100%;margin:0}.version-experience{grid-template-columns:1fr;padding:28px;gap:30px}.version-overview{max-width:580px}.version-range{font-size:76px}.capability-card{padding:26px}.capability-card h3{font-size:25px}}
@media(max-width:600px){.skill-section{padding:65px 7%}.capability-grid{grid-template-columns:1fr;gap:16px}.capability-top{margin-bottom:22px}.capability-card h3{font-size:27px}.version-experience{padding:24px 20px}.version-range{font-size:72px}.version-areas{grid-template-columns:1fr;gap:12px}.version-areas>div{display:grid;grid-template-columns:25px 1fr;gap:3px 10px}.version-areas .mono{grid-row:1/3;padding-top:3px}.version-areas h4{margin:0}.version-areas p{margin:0;grid-column:2}.version-picker>div{gap:5px}.version{font-size:12px;min-width:29px}.scene-meta{margin-inline:0}.scene-meta>.mono{font-size:7px}.video-controls button{padding:7px 8px;font-size:9px}}
@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-new(*),::view-transition-old(*){animation:none!important}.avatar-stage{transform:none!important}.version-range span,.version-areas>div,.capability-card,.timeline article,.story-steps article{transform:none!important;opacity:1!important}}

.heading-token{display:inline-block;white-space:nowrap}
/* Expanded story and service context. */
.motion-story{padding:110px 6%;background:var(--grad-section-b);overflow:hidden}.motion-story>.eyebrow{margin-bottom:35px}.motion-line{font:500 clamp(36px,8vw,125px)/1.12 Space,sans-serif;letter-spacing:-.065em;white-space:nowrap;transform-origin:left center}.motion-line:nth-of-type(2){color:var(--primary)}.motion-story>p:last-child{color:var(--muted);font-size:14px;margin:32px 0 0;max-width:480px}.motion-char{display:inline-block;transform-origin:50% 100%}.integration-section{background:var(--grad-section-b)}.integration-network{display:grid;grid-template-columns:1fr 1.3fr;gap:7%;align-items:center}.integration-hub{border:1px solid var(--border);border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;max-width:390px;position:relative;background:var(--grad-card);box-shadow:0 25px 65px var(--shadow);text-align:center;padding:30px}.integration-hub:after{content:'';position:absolute;inset:20px;border:1px dashed var(--border);border-radius:50%;pointer-events:none}.integration-hub>.eyebrow{font-size:9px;margin-bottom:16px}.integration-hub strong{font:500 clamp(40px,5vw,76px) Space;letter-spacing:-.06em;color:var(--primary)}.integration-hub p{font:10px Mono;color:var(--muted);margin:15px 0 0}.integration-list{border-top:1px solid var(--border)}.integration-link{display:flex;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--border);position:relative;transition:padding .3s,background-color .3s}.integration-link>.mono{color:var(--primary)}.integration-link>div{flex:1}.integration-link strong{font:500 23px Space;letter-spacing:-.025em}.integration-link small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.integration-link:hover{padding-inline:16px;background:var(--selected)}.integration-link>span:last-child{font-size:22px;color:var(--primary)}.experience-focus{margin-bottom:50px;padding:30px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.experience-focus>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.experience-focus h3{font-size:22px}.experience-focus article p{font-size:12px;color:var(--muted)}.experience-focus .text-link{display:inline-block;margin-top:10px}
@media(max-width:850px){.motion-story{padding:85px 7%}.integration-network{grid-template-columns:1fr;gap:35px}.integration-hub{width:270px;justify-self:center}.experience-focus>div{grid-template-columns:1fr;gap:15px}.experience-focus h3{margin-bottom:12px}}
@media(max-width:600px){.motion-story{padding:65px 7%}.motion-line{font-size:clamp(30px,8.6vw,50px)}.motion-story>.eyebrow{font-size:8px;max-width:250px}.motion-story>p:last-child{font-size:12px}.integration-hub{width:240px}.integration-link{gap:15px}.integration-link strong{font-size:21px}.experience-focus{padding:24px}}
@media(prefers-reduced-motion:reduce){.motion-line,.motion-char,.integration-link,.integration-hub,.experience-focus article,.module-group,.module-chip{transform:none!important;opacity:1!important;filter:none!important}}

.services-section{background:linear-gradient(135deg,var(--bg),var(--surface));}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.service-card{padding:2rem;border:1px solid var(--border);border-radius:1.25rem;background:var(--surface);display:flex;flex-direction:column;transition:transform .3s,border-color .3s}
.service-card:hover{transform:translateY(-5px);border-color:var(--primary)}
.service-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;color:var(--primary)}
.service-top .eyebrow{margin:0}.service-card h3{font-size:1.45rem;line-height:1.2;margin:1.8rem 0 .8rem}.service-card p{color:var(--muted);margin:0 0 1.5rem}.service-card .text-link{margin-top:auto;align-self:flex-start}
.service-note{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid var(--border);margin-top:2rem;padding-top:2rem}.service-note p{max-width:44rem}.service-note .button{flex-shrink:0}
@media(max-width:1000px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.services-grid{grid-template-columns:1fr}.service-card{padding:1.5rem}.service-note{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.service-card{transition:none}.service-card:hover{transform:none}}

/* Connected workspace: warm ink, sage and amber within the forest palette. */
:root{--integration-bg:#102c23;--integration-panel:#193a2e;--integration-text:#f1f5eb;--integration-muted:#c1d3c6;--integration-accent:#e9bd65;--integration-line:#9ab49f;--integration-selected:#28543f;--logo-paper:#fff}
[data-theme=dark]{--integration-bg:#0c211a;--integration-panel:#17372b;--integration-selected:#28543f}
.hero-socials,.social-links{display:flex;gap:1.5rem;flex-wrap:wrap}.hero-socials{margin:1.5rem 0;color:var(--primary);font-size:.85rem}.social-links{margin-top:1rem}
.integration-editorial{background:radial-gradient(ellipse at 100% 0,var(--integration-selected),var(--integration-bg) 60%);color:var(--integration-text);position:relative;overflow:hidden}
.integration-editorial .eyebrow,.integration-editorial .section-intro{color:var(--integration-muted)}.integration-accent{color:var(--integration-accent)}
.integration-workspace{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.4fr);gap:3rem;align-items:start}
.integration-brand{display:flex;align-items:center;gap:2rem;padding:0 1rem 2rem}.integration-brand img{width:95px;height:50px;object-fit:contain}.integration-brand .mono{color:var(--integration-muted)}
.integration-sidebar [role=tablist]{display:grid;gap:.5rem}.integration-sidebar button{display:flex;gap:1rem;align-items:center;width:100%;text-align:left;padding:1rem;background:var(--transparent);color:var(--integration-text);border:1px solid var(--integration-line);border-radius:.8rem;transition:background .25s,transform .25s}.integration-sidebar button>span:last-child{margin-left:auto}.integration-sidebar button small{display:block;font-size:.72rem;color:var(--integration-muted)}.integration-sidebar button[aria-selected=true]{background:var(--integration-selected);border-color:var(--integration-accent);transform:translateX(6px)}.integration-sidebar button:focus-visible,.integration-editorial a:focus-visible{outline-color:var(--integration-accent)}
.integration-mini{display:grid;place-items:center;font:500 .8rem Mono,monospace;min-width:2.5rem;height:2.5rem;border-radius:50%;background:var(--integration-panel);color:var(--integration-accent)}
.integration-detail{position:relative;padding:2.5rem;border-radius:1.5rem;border:1px solid var(--integration-line);background:var(--integration-panel);min-height:660px}.integration-detail[hidden]{display:none}.integration-detail h3{font-size:clamp(2rem,4vw,3.5rem);margin:.5rem 0 1rem;line-height:1.15}.integration-detail h4{font-size:1.05rem;margin:2rem 0 .7rem}.integration-description{font-size:1.05rem;max-width:42rem;color:var(--integration-muted)}.integration-detail ul{padding-left:1.2rem;color:var(--integration-text)}.integration-detail li{margin:.7rem 0}.integration-monogram{position:absolute;right:1.5rem;top:1rem;opacity:.12;font:500 5rem Space,sans-serif;pointer-events:none}.integration-flow{display:flex;align-items:center;gap:.7rem;margin:2rem 0}.integration-flow span{flex:1;padding:.8rem .5rem;text-align:center;border:1px solid var(--integration-line);border-radius:.5rem;font:400 .75rem Mono,monospace}.integration-flow i{color:var(--integration-accent)}.integration-consideration{border-left:2px solid var(--integration-accent);padding-left:1rem;color:var(--integration-muted);font-size:.85rem}.integration-detail .text-link{color:var(--integration-accent);margin-top:1rem}.integration-footnote{color:var(--integration-muted);max-width:850px;margin:2rem 0 0;font-size:.78rem}
.deployment-platforms{margin-top:3rem;padding:2rem;border:1px solid var(--border);border-radius:1rem;background:var(--grad-section-b)}.deployment-platforms h3{font-size:1.8rem;margin:.5rem 0}.deployment-platforms>div>p{max-width:650px}.platform-logos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;margin:2rem 0}.platform-logo{display:flex;flex-direction:column;gap:.5rem}.platform-logo>span{background:var(--logo-paper);border-radius:.8rem;display:grid;place-items:center;height:90px;padding:1rem}.platform-logo img{width:100%;height:55px;object-fit:contain}.platform-logo small{color:var(--muted);font-size:.75rem}
.version-compare{margin:3rem 0;padding:2rem;background:var(--grad-section-b);border:1px solid var(--border);border-radius:1.5rem}.compare-heading{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.compare-heading h3{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.1;margin:.5rem 0 1.5rem}.compare-heading>p{color:var(--muted)}.compare-selectors{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.compare-selectors label{flex:1;font-size:.8rem}.compare-selectors select{display:block;width:100%;margin-top:.4rem;padding:.9rem;border:1px solid var(--ui-border);border-radius:.6rem;background:var(--surface);color:var(--text)}.comparison-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.release-card{background:var(--surface);border:1px solid var(--border);border-radius:1rem;padding:1.75rem;display:flex;flex-direction:column}.release-label{display:flex;align-items:center;justify-content:space-between;color:var(--primary)}.release-label strong{font:500 4rem/.95 Space,sans-serif}.release-card h4{font-size:1.4rem;line-height:1.2;margin:1.4rem 0}.release-card h5{font-size:.8rem;margin:1rem 0 .4rem;color:var(--primary)}.release-card ul{padding-left:1.1rem;margin:0;font-size:.9rem}.release-card li{margin:.5rem 0}.release-verdict{border-top:1px solid var(--border);margin-top:1rem}.release-verdict p{font-size:.85rem;color:var(--muted)}.release-card .text-link{margin-top:auto;padding-top:1rem;font-size:.8rem}
@media(max-width:900px){.integration-workspace{gap:1.5rem;grid-template-columns:1fr}.integration-sidebar [role=tablist]{grid-template-columns:repeat(2,minmax(0,1fr))}.integration-sidebar button[aria-selected=true]{transform:none}.integration-detail{min-height:0}.platform-logos{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.integration-detail{padding:1.4rem}.integration-brand{padding-left:0}.integration-sidebar button{padding:.7rem;gap:.5rem}.integration-sidebar button small{display:none}.integration-mini{min-width:1.8rem;height:1.8rem;font-size:.65rem}.integration-sidebar button>span:last-child{display:none}.integration-flow{gap:.4rem}.integration-flow span{font-size:.65rem;padding:.7rem .3rem}.version-compare{padding:1.1rem}.compare-heading,.comparison-cards{grid-template-columns:1fr;gap:1rem}.release-card{padding:1.2rem}.deployment-platforms{padding:1.2rem}.platform-logos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.integration-sidebar button{transition:none}}

/* Scroll-linked motion stays clipped to its own section and never traps scrolling. */
html.lenis{scroll-behavior:auto}
.scroll-letter{display:inline-block;transform-origin:50% 100%;backface-visibility:hidden}
#work,#services,#journey,.motion-story{overflow:clip}
.integration-editorial{--integration-glow:0%;background:radial-gradient(ellipse at var(--integration-glow) 10%,var(--integration-selected),var(--integration-bg) 70%)}
.platform-logos{overflow:visible}
@media(prefers-reduced-motion:reduce){.scroll-letter,.project-card,.service-card,.capability-card,.platform-logo,.integration-sidebar,.integration-panels{transform:none!important;opacity:1!important}html{scroll-behavior:auto}}
/* Pair-specific release comparison: product information only. */
.comparison-results{min-width:0}.comparison-summary{padding:2rem 0;border-top:1px solid var(--border)}.comparison-summary h4{font-size:clamp(2rem,5vw,4rem);margin:.5rem 0}.comparison-summary h4 span{color:var(--primary)}.comparison-summary>p:last-child{max-width:65ch}.comparison-endpoints{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.comparison-delta{margin-top:3rem}.comparison-delta>h4,.comparison-decision h4{font-size:clamp(1.4rem,3vw,2rem);margin:.6rem 0 1rem}.release-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}.release-step{padding:1.6rem;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.release-step.latest-selected{border:2px solid var(--primary);grid-column:1/-1;background:linear-gradient(120deg,color-mix(in srgb,var(--primary) 8%,var(--surface)),var(--surface))}.release-step-label{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:var(--primary);font-size:.72rem;letter-spacing:.08em}.release-step h5{font-size:1.3rem;margin:1rem 0}.release-step ul{padding-left:1.2rem;line-height:1.8}.release-step p{line-height:1.7}.comparison-decision,.comparison-empty{padding:2rem;margin-top:1.5rem;border-radius:20px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));border:1px solid var(--border)}.comparison-decision p{max-width:85ch;line-height:1.8}.comparison-empty h4{font-size:2rem;margin:.5rem 0}@media(max-width:650px){.comparison-endpoints,.release-steps{grid-template-columns:1fr}.release-step,.comparison-decision{padding:1.25rem}.release-step.latest-selected{grid-column:auto}}
