:root{--paper: #141416;--paper-dim: #1B1B1D;--ink: #F2F1EC;--ink-soft: rgba(242,241,236,.72);--ink-faint: rgba(242,241,236,.48);--ink-wash: rgba(242,241,236,.05);--ink-wash-strong: rgba(242,241,236,.08);--gold: #B8862E;--gold-text: #E0AE57;--gold-soft: rgba(184,134,46,.18);--gold-wash: rgba(184,134,46,.1);--on-gold: #16161A;--blue: #CFE0F2;--blue-deep: #6FA0C4;--line: #3E3B36;--line-strong: rgba(242,241,236,.22);--ok: #6FAE78;--err: #D9695A;--f-display: "Unbounded", system-ui, sans-serif;--f-mono: "Martian Mono", ui-monospace, monospace;--f-body: "Hanken Grotesk", system-ui, sans-serif;--depth: 1;--cut-lg: 20px;--cut-md: 14px;--cut-sm: 8px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:96px;scrollbar-color:var(--line) var(--paper)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}html,body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}body{cursor:none}@media (max-width: 768px){body{cursor:auto}}::selection{background:var(--gold);color:var(--on-gold)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:var(--line);border-radius:0;border:2px solid var(--paper)}::-webkit-scrollbar-thumb:hover{background:var(--gold)}a{color:inherit;text-decoration:none}button{background:none;border:none;color:inherit;font:inherit;cursor:none}@media (max-width: 768px){button{cursor:pointer}}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.bg-canvas{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:var(--paper)}.bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:calc(.5 * var(--depth));background-image:repeating-linear-gradient(135deg,var(--line) 0,var(--line) 1px,transparent 1px,transparent 72px),repeating-linear-gradient(45deg,var(--line) 0,var(--line) 1px,transparent 1px,transparent 72px);-webkit-mask-image:radial-gradient(ellipse 100% 80% at 50% 20%,#000 25%,transparent 80%);mask-image:radial-gradient(ellipse 100% 80% at 50% 20%,#000 25%,transparent 80%)}.bg-noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}.cursor-dot,.cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);will-change:transform}.cursor-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);transition:width .2s,height .2s,background .2s}.cursor-ring{width:36px;height:36px;border-radius:50%;border:1px solid var(--line-strong);transition:width .25s cubic-bezier(.2,.8,.2,1),height .25s cubic-bezier(.2,.8,.2,1),border-color .2s,background .2s}.cursor-ring.hover{width:64px;height:64px;border-color:var(--gold);background:var(--gold-wash)}.cursor-ring.click{width:24px;height:24px}.cursor-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);white-space:nowrap;opacity:0;transition:opacity .2s}.cursor-ring.hover .cursor-label{opacity:1}@media (max-width: 768px){.cursor-dot,.cursor-ring{display:none}}.scroll-progress{position:fixed;top:0;left:0;width:100%;height:2px;background:var(--gold);transform-origin:left;transform:scaleX(0);z-index:10000;pointer-events:none}.toast-stack{position:fixed;bottom:32px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:10001;pointer-events:none}.toast{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);background:var(--paper);border:1px solid var(--ink);padding:10px 20px;clip-path:polygon(8px 0,100% 0,100% 100%,0 100%,0 8px);animation:toast-in .25s cubic-bezier(.2,.8,.2,1) forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.channel--copy{background:none;border:none;text-align:left;cursor:none;width:100%;padding:0;font-family:inherit}.channel--copy:hover .v{color:var(--gold-text)}main{position:relative;z-index:2}.shell{width:100%;max-width:1240px;margin:0 auto;padding:0 48px}@media (max-width: 768px){.shell{padding:0 20px}}.section{position:relative;padding:140px 0;border-top:1px solid var(--line)}.section:first-of-type{border-top:none}.section-eyebrow{display:flex;align-items:center;gap:16px;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:48px}.section-eyebrow .num{color:var(--gold-text)}.section-eyebrow .line{flex:1;height:1px;background:var(--line)}.section-eyebrow .dot{width:6px;height:6px;background:var(--gold)}.section-title{font-family:var(--f-display);font-weight:600;font-size:clamp(40px,6vw,80px);line-height:1.02;letter-spacing:-.01em;margin-bottom:24px;text-wrap:balance}.section-title em{font-style:normal;color:var(--gold)}.section-lede{font-size:20px;color:var(--ink-soft);max-width:620px;line-height:1.5;text-wrap:pretty}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 48px;display:flex;justify-content:space-between;align-items:center;background:var(--paper)}@media (max-width: 768px){.nav{padding:16px 20px}}.brand{display:flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:13px;letter-spacing:.05em}.brand-mark{width:32px;height:32px;background:var(--paper);border:1px solid var(--ink);clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px);display:grid;place-items:center}.brand-name b{font-weight:600}.brand-status{display:inline-flex;align-items:center;gap:6px;color:var(--ink-soft);font-size:11px;padding-left:12px;margin-left:6px;border-left:1px solid var(--line-strong)}.brand-status:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok)}@media (max-width: 1024px){.brand-status{display:none}}.nav-links{display:flex;gap:28px;align-items:center;font-family:var(--f-mono);font-size:12px;letter-spacing:.05em}.nav-links a{position:relative;color:var(--ink-soft);transition:color .2s}.nav-links a:hover{color:var(--ink)}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:var(--gold);transition:right .3s cubic-bezier(.2,.8,.2,1)}.nav-links a:hover:after{right:0}.nav-links a .num{color:var(--gold-text);margin-right:6px}@media (max-width: 1100px){.nav-links{display:none}}.nav-right{display:flex;align-items:center;gap:16px}.lang-toggle{display:flex;font-family:var(--f-mono);font-size:11px;border:1px solid var(--line-strong);padding:3px}.lang-toggle button{padding:4px 10px;color:var(--ink-soft);transition:all .2s}.lang-toggle button.active{background:var(--ink);color:var(--paper)}.cta-nav{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:12px;padding:10px 18px;background:var(--gold);color:var(--on-gold);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:transform .2s}.cta-nav:hover{transform:translateY(-2px)}.cta-nav .arrow{display:inline-block;font-size:12px}.nav-toggle{display:none;width:40px;height:40px;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line-strong);background:var(--paper);transition:border-color .2s}.nav-toggle:hover{border-color:var(--gold)}.nav-toggle span{display:block;width:16px;height:1.5px;background:var(--ink);transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .2s}.nav-toggle.open span:first-child{transform:translateY(3.25px) rotate(45deg)}.nav-toggle.open span:last-child{transform:translateY(-3.25px) rotate(-45deg)}@media (max-width: 1100px){.nav-toggle{display:flex}}@media (max-width: 600px){.cta-nav{display:none}}.mobile-menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;height:100dvh;overflow-y:auto;background:var(--paper);border-bottom:1px solid var(--line-strong);transform:translateY(-100%);visibility:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),visibility 0s linear .45s}.mobile-menu.open{transform:translateY(0);visibility:visible;transition:transform .45s cubic-bezier(.2,.8,.2,1),visibility 0s linear 0s}@media (min-width: 1101px){.mobile-menu{display:none}}.mobile-menu-inner{padding:96px 20px 36px;display:flex;flex-direction:column}.mobile-menu-link{display:flex;align-items:baseline;gap:14px;font-family:var(--f-display);font-weight:600;font-size:clamp(26px,8vw,36px);letter-spacing:-.01em;color:var(--ink-soft);padding:16px 0;border-bottom:1px solid var(--line);transition:color .2s,padding-left .25s cubic-bezier(.2,.8,.2,1)}.mobile-menu-link:hover,.mobile-menu-link:focus-visible{color:var(--ink);padding-left:10px}.mobile-menu-link .num{font-family:var(--f-mono);font-size:13px;color:var(--gold-text)}.mobile-menu-cta{margin-top:28px;display:flex;align-items:center;justify-content:space-between;background:var(--gold);color:var(--on-gold);font-family:var(--f-mono);font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:18px 24px;clip-path:polygon(14px 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%,0 14px)}.mobile-menu-cta .arrow{font-size:14px}.hero{min-height:100vh;min-height:100dvh;position:relative;padding:140px 0 80px;display:flex;flex-direction:column;justify-content:center;border-top:none}.hero>.shell{position:relative;z-index:1}.hero>.scroll-hint{z-index:1}.fold-lines{position:fixed;top:0;left:-192px;width:calc(100% + 384px);height:100%;pointer-events:none;z-index:1;opacity:0;animation:foldLinesFadeIn 1.4s ease-out .4s forwards,foldLinesDrift 22s linear infinite;mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 12%,black 88%,transparent 100%)}@keyframes foldLinesFadeIn{to{opacity:1}}@keyframes foldLinesDrift{0%{transform:translate(0)}to{transform:translate(-192px)}}@media (prefers-reduced-motion: reduce){.fold-lines{display:none}}.hero-meta{display:flex;justify-content:space-between;align-items:flex-end;font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-size:11px;letter-spacing:.1em;color:var(--ink-soft);text-transform:uppercase;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--line)}.hero-meta>div{display:flex;flex-direction:column;gap:4px}.hero-meta .meta-right{text-align:right}.hero-meta .label{color:var(--ink-faint);font-size:10px}.hero-meta .value{color:var(--ink);font-size:12px}.hero-headline{font-family:var(--f-display);font-weight:600;font-size:clamp(44px,9vw,108px);line-height:1.03;letter-spacing:-.02em;margin:20px 0 40px;overflow-wrap:break-word}.hero-line{display:block;position:relative}.hero-line .word-3d{display:inline-block;position:relative;max-width:100%;overflow-wrap:break-word}.hero-line .word-3d:after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;background:var(--gold);transition:right .35s cubic-bezier(.2,.8,.2,1)}.hero-line .word-3d:hover:after{right:0}.hero-line em{font-style:normal;color:var(--gold);letter-spacing:-.01em}.word-3d .layer{display:inline-block}.hero-extrude{color:var(--ink)}.hero-cta-row{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:40px;border-top:1px solid var(--line);flex-wrap:wrap}.hero-desc{font-size:18px;color:var(--ink-soft);max-width:500px;line-height:1.5;text-wrap:pretty}.hero-desc b{color:var(--ink);font-weight:600}.hero-actions{display:flex;gap:12px}.btn-primary,.btn-ghost{display:inline-flex;align-items:center;gap:12px;padding:16px 24px;font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;transition:transform .25s cubic-bezier(.2,.8,.2,1);position:relative;clip-path:polygon(var(--cut-md) 0,100% 0,100% calc(100% - var(--cut-md)),calc(100% - var(--cut-md)) 100%,0 100%,0 var(--cut-md))}.btn-primary{background:var(--gold);color:var(--on-gold)}.btn-primary:hover{transform:translateY(-2px)}.btn-primary .dot{width:8px;height:8px;border-radius:50%;background:var(--on-gold)}.btn-ghost{background:var(--ink-wash);color:var(--ink);border:1px solid var(--ink)}.btn-ghost:hover{border-color:var(--blue-deep);color:var(--blue-deep);transform:translateY(-2px)}.btn-primary:active,.btn-ghost:active,.cta-nav:active,.contact-form-submit:active:not(:disabled){transform:translateY(0) scale(.97)}.scroll-hint{position:absolute;bottom:24px;left:50%;transform:translate(-50%);font-family:var(--f-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);display:flex;flex-direction:column;align-items:center;gap:10px}.scroll-hint .rail{width:1px;height:48px;background:var(--line);position:relative;overflow:hidden}.scroll-hint .rail:after{content:"";position:absolute;top:0;left:0;right:0;height:12px;background:var(--ink-faint);animation:scrollDown 2s infinite}@keyframes scrollDown{0%{transform:translateY(-100%);opacity:0}40%{opacity:1}to{transform:translateY(400%);opacity:0}}.services-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:80px}@media (max-width: 860px){.services-head{grid-template-columns:1fr;gap:32px}}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}@media (max-width: 860px){.services-grid{grid-template-columns:1fr}}.service-card{position:relative;background:var(--paper);padding:48px 40px;min-height:440px;min-width:0;display:flex;flex-direction:column;transition:background .3s}.service-card:hover{background:var(--ink-wash)}.service-num{font-family:var(--f-mono);font-size:11px;letter-spacing:.15em;color:var(--gold-text);margin-bottom:32px}.service-title{font-family:var(--f-display);font-weight:600;font-size:36px;line-height:1.1;letter-spacing:-.01em;margin-bottom:20px;position:relative}.service-desc{color:var(--ink-soft);font-size:15px;line-height:1.55;max-width:420px;margin-bottom:32px}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.service-tag{padding:6px 12px;border:1px solid var(--line-strong);background:var(--ink-wash);clip-path:polygon(var(--cut-sm) 0,100% 0,100% 100%,0 100%,0 var(--cut-sm));font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;color:var(--ink-soft);text-transform:uppercase;transition:all .2s}.service-card:hover .service-tag{border-color:var(--gold);color:var(--ink)}.service-visual{position:absolute;top:40px;right:40px;width:56px;height:56px;display:grid;place-items:center;font-family:var(--f-mono);font-size:10px;color:var(--ink-faint);transition:transform .3s cubic-bezier(.2,.8,.2,1)}.service-card:hover .service-visual{transform:scale(1.06)}.service-visual svg{width:100%;height:100%;overflow:visible}.projects-list{border-top:1px solid var(--line-strong)}.project-row{display:grid;grid-template-columns:60px 1fr auto auto;gap:40px;align-items:center;padding:32px 0;border-bottom:1px solid var(--line);position:relative;transition:padding .4s cubic-bezier(.2,.8,.2,1),background .3s}.project-row:hover{padding-left:24px;padding-right:24px;background:var(--ink-wash)}.project-row--more{cursor:default}.project-row--more:hover{padding-left:0;padding-right:0;background:transparent}.project-num{font-family:var(--f-mono);font-size:12px;color:var(--ink-faint);transition:color .3s}.project-row:hover .project-num{color:var(--gold-text)}.project-title-block{display:flex;flex-direction:column;gap:6px;position:relative;z-index:1}.project-title{font-family:var(--f-display);font-weight:600;font-size:clamp(26px,3.6vw,40px);line-height:1.1;letter-spacing:-.01em;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.project-row:hover .project-title{transform:translate(8px)}.project-row:hover .project-title em,.project-row:hover .project-title .hoverable{color:var(--gold)}.project-meta{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--ink-faint);text-transform:uppercase}.project-tags{display:flex;gap:6px;z-index:1}.project-tags span{font-family:var(--f-mono);font-size:10px;letter-spacing:.08em;color:var(--ink-soft);padding:4px 10px;border:1px solid var(--line-strong);clip-path:polygon(6px 0,100% 0,100% 100%,0 100%,0 6px);text-transform:uppercase}@media (max-width: 768px){.project-tags{display:none}}.project-arrow{width:44px;height:44px;border:1px solid var(--line-strong);clip-path:polygon(8px 0,100% 0,100% 100%,0 100%,0 8px);display:grid;place-items:center;font-family:var(--f-mono);font-size:14px;transition:all .3s cubic-bezier(.2,.8,.2,1);z-index:1}.project-row:hover .project-arrow{background:var(--gold);color:var(--on-gold);border-color:var(--gold);transform:rotate(-45deg)}.project-preview{position:fixed;width:360px;height:240px;pointer-events:none;overflow:hidden;opacity:0;transform:scale(.94) translate(-50%,-50%);transition:opacity .3s,transform .3s cubic-bezier(.2,.8,.2,1);z-index:50;border:1px solid var(--ink);background:var(--paper);clip-path:polygon(var(--cut-lg) 0,100% 0,100% 100%,0 100%,0 var(--cut-lg))}.project-preview.visible{opacity:1;transform:scale(1) translate(-50%,-50%)}@media (hover: none){.project-preview{display:none}}.stack-wrap{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}@media (max-width: 860px){.stack-wrap{grid-template-columns:1fr}}.stack-items{display:flex;flex-wrap:wrap;gap:6px}.stack-chip{font-family:var(--f-mono);font-size:12px;letter-spacing:.04em;padding:10px 16px;border:1px solid var(--line-strong);background:var(--paper);clip-path:polygon(var(--cut-sm) 0,100% 0,100% 100%,0 100%,0 var(--cut-sm));color:var(--ink-soft);transition:all .25s;position:relative}.stack-chip:hover{color:var(--ink);border-color:var(--gold);transform:translateY(-2px)}.stack-chip.primary{color:var(--ink);border-color:var(--gold);background:var(--gold-wash)}.stack-cat{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;color:var(--ink-faint);text-transform:uppercase;padding:16px 0 12px;width:100%;border-bottom:1px dashed var(--line);margin-bottom:12px}.stack-cat:first-child{padding-top:0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}@media (max-width: 860px){.process-grid{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.process-grid{grid-template-columns:1fr}}.process-step{background:var(--paper);padding:40px 32px;min-height:280px;display:flex;flex-direction:column;position:relative;transition:background .3s;overflow:hidden}.process-step:hover{background:var(--ink-wash)}.process-step:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}.process-step:hover:after{transform:scaleX(1)}.process-step-num{font-family:var(--f-display);font-weight:600;font-size:48px;line-height:1;letter-spacing:-.01em;color:var(--gold);margin-bottom:24px}.process-step-title{font-family:var(--f-display);font-weight:600;font-size:21px;letter-spacing:-.005em;margin-bottom:12px}.process-step-desc{font-size:14px;color:var(--ink-soft);line-height:1.5;margin-bottom:auto}.process-step-tag{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;color:var(--ink-faint);text-transform:uppercase;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.contact{padding:160px 0 100px;position:relative;border-top:1px solid var(--line)}.contact-headline{font-family:var(--f-display);font-weight:600;font-size:clamp(40px,7vw,88px);line-height:1.03;letter-spacing:-.01em;margin-bottom:60px;text-wrap:balance}.contact-headline em{font-style:normal;color:var(--gold)}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding-top:48px;border-top:1px solid var(--line)}@media (max-width: 860px){.contact-grid{grid-template-columns:1fr;gap:40px}}.contact-info-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase;margin-bottom:8px}.contact-email{display:inline-flex;align-items:center;gap:16px;font-family:var(--f-display);font-weight:600;font-size:clamp(20px,3vw,34px);letter-spacing:-.01em;line-height:1.15;transition:color .3s;margin-bottom:40px;max-width:100%;overflow-wrap:anywhere;flex-wrap:wrap}@media (max-width: 600px){.contact-email{font-size:clamp(20px,5.5vw,28px)}.contact-email .arrow{display:none}}.contact-email:hover{color:var(--gold-text)}.contact-email .arrow{width:44px;height:44px;background:var(--ink);color:var(--paper);clip-path:polygon(8px 0,100% 0,100% 100%,0 100%,0 8px);display:grid;place-items:center;font-size:16px;transition:transform .3s,background .3s;flex-shrink:0}.contact-email:hover .arrow{transform:rotate(-45deg);background:var(--gold)}.contact-channels{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.channel{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;transition:padding .3s;min-width:0}.channel:hover{padding-left:16px;padding-right:16px;color:var(--gold-text)}.channel--static:hover{padding-left:0;padding-right:0;color:inherit}.channel .k{color:var(--ink-faint);text-transform:uppercase;flex-shrink:0}.channel .v{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.contact-form{margin-top:64px;padding-top:48px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:24px}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 600px){.contact-form-row{grid-template-columns:1fr}}.contact-form-field{display:flex;flex-direction:column;gap:8px}.contact-form-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}.contact-form-input{background:var(--paper);border:1px solid var(--line-strong);clip-path:polygon(var(--cut-sm) 0,100% 0,100% 100%,0 100%,0 var(--cut-sm));color:var(--ink);font-family:var(--f-body);font-size:15px;padding:14px 16px;outline:none;transition:border-color .2s;width:100%}.contact-form-input:hover:not(:focus){border-color:var(--ink-soft)}.contact-form-input:focus{border-color:var(--blue-deep)}.contact-form-textarea{resize:vertical;min-height:140px;line-height:1.6}.contact-form-submit{display:inline-flex;align-items:center;gap:12px;align-self:flex-start;padding:16px 28px;background:var(--gold);color:var(--on-gold);clip-path:polygon(var(--cut-md) 0,100% 0,100% calc(100% - var(--cut-md)),calc(100% - var(--cut-md)) 100%,0 100%,0 var(--cut-md));font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:none;transition:transform .25s cubic-bezier(.2,.8,.2,1)}.contact-form-submit:hover:not(:disabled){transform:translateY(-2px)}.contact-form-submit:disabled{opacity:.5;cursor:not-allowed}.contact-form-submit .dot{width:8px;height:8px;border-radius:50%;background:var(--on-gold)}@media (max-width: 768px){.contact-form-submit{cursor:pointer}}.contact-form-error{font-family:var(--f-mono);font-size:12px;color:var(--err);letter-spacing:.04em}.contact-form-success{margin-top:64px;padding-top:48px;border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:flex-start;gap:16px}.contact-form-success-icon{width:48px;height:48px;clip-path:polygon(var(--cut-sm) 0,100% 0,100% 100%,0 100%,0 var(--cut-sm));border:1px solid var(--ok);display:grid;place-items:center;font-size:20px;color:var(--ok)}.contact-form-success p{font-size:18px;color:var(--ink-soft);max-width:480px;line-height:1.5}.footer{padding:40px 0;border-top:1px solid var(--line);font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--ink-faint);display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;margin-top:40px}@media (max-width: 860px){.about-grid{grid-template-columns:1fr;gap:48px}}.about-col-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.18em;color:var(--ink-faint);text-transform:uppercase;padding-bottom:14px;margin-bottom:24px;border-bottom:1px solid var(--line)}.exp-item{padding:24px 0;border-bottom:1px solid var(--line)}.exp-item:last-child{border-bottom:none}.exp-head{display:flex;justify-content:space-between;margin-bottom:8px}.exp-period{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--gold-text);text-transform:uppercase}.exp-role{font-family:var(--f-display);font-weight:600;font-size:22px;letter-spacing:-.005em;line-height:1.15}.exp-org{font-family:var(--f-mono);font-size:12px;color:var(--ink-soft);margin-bottom:14px}.exp-bullets{list-style:none;padding:0;font-size:14px;color:var(--ink-soft);line-height:1.6}.exp-bullets li{padding-left:20px;position:relative;margin-bottom:6px}.exp-bullets li:before{content:"—";position:absolute;left:0;color:var(--gold)}.edu-item{padding:16px 0;border-bottom:1px solid var(--line)}.edu-item:last-child{border-bottom:none}.edu-year{font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;color:var(--ink-faint);text-transform:uppercase;margin-bottom:6px}.edu-name{font-family:var(--f-display);font-weight:600;font-size:17px;letter-spacing:-.005em;margin-bottom:4px}.edu-place{font-size:13px;color:var(--ink-soft)}.skills-cloud{display:flex;flex-wrap:wrap;gap:6px}.skill-chip{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;padding:8px 14px;border:1px solid var(--line-strong);background:var(--paper);clip-path:polygon(var(--cut-sm) 0,100% 0,100% 100%,0 100%,0 var(--cut-sm));color:var(--ink-soft);transition:all .25s}.skill-chip:hover{color:var(--ink);border-color:var(--gold);transform:translateY(-2px)}.tweaks-panel{position:fixed;right:20px;bottom:20px;width:300px;background:var(--paper);border:1px solid var(--ink);clip-path:polygon(var(--cut-lg) 0,100% 0,100% 100%,0 100%,0 var(--cut-lg));padding:20px;z-index:200;font-family:var(--f-mono);font-size:12px}.tweaks-header{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);padding-bottom:12px;border-bottom:1px solid var(--line);margin-bottom:16px}.tweaks-header .dot{width:6px;height:6px;background:var(--gold);margin-right:6px;display:inline-block}.tweak-row{margin-bottom:18px}.tweak-row:last-child{margin-bottom:0}.tweak-label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}.tweak-label .val{color:var(--gold-text)}.tweak-slider{width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:2px;background:var(--line-strong);outline:none}.tweak-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:12px;height:12px;background:var(--gold);cursor:none}.tweak-select{width:100%;background:var(--paper);color:var(--ink);border:1px solid var(--line-strong);padding:8px 10px;font-family:var(--f-mono);font-size:11px}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.js .reveal{opacity:0}.js .reveal.is-visible{animation:fadeUp .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--reveal-i, 0) * 70ms)}@media (prefers-reduced-motion: reduce){.js .reveal{opacity:1}.js .reveal.is-visible{animation:none}}@media (max-width: 768px){.section{padding:88px 0}.section-eyebrow{margin-bottom:32px}.hero{padding:116px 0 64px}.contact{padding:96px 0 72px}.services-head{margin-bottom:48px}.section-lede{font-size:17px}.hero-desc{font-size:16px}.service-card{padding:36px 24px;min-height:0}.process-step{padding:32px 24px;min-height:0}.project-row{gap:20px;grid-template-columns:40px 1fr auto}.project-row:hover{padding-left:0;padding-right:0}.hero-actions{width:100%}.hero-actions .btn-primary,.hero-actions .btn-ghost{flex:1;justify-content:center}.hero-meta{flex-wrap:wrap;row-gap:16px;column-gap:24px}.hero-meta>div{flex:1 1 40%}.hero-meta .meta-right{text-align:left}.scroll-hint,.tweaks-panel{display:none}}@media (max-width: 420px){.shell{padding:0 16px}.contact-headline{font-size:11vw}}.wa-fab{position:fixed;left:24px;bottom:24px;z-index:90;width:58px;height:58px;display:grid;place-items:center;background:var(--ink);border:1px solid var(--gold);clip-path:polygon(12px 0,100% 0,100% 100%,0 100%,0 12px);animation:wa-enter .5s cubic-bezier(.2,.8,.2,1) .7s both;transition:transform .25s cubic-bezier(.2,.8,.2,1)}@media (max-width: 768px){.wa-fab{left:auto;right:20px;bottom:20px}}.wa-fab:hover{transform:translateY(-3px)}.wa-fab:active{transform:translateY(0) scale(.96)}.wa-fab-inner{width:100%;height:100%;display:grid;place-items:center}.wa-fab-icon{width:26px;height:26px;color:var(--paper);transition:transform .3s cubic-bezier(.2,.8,.2,1)}.wa-fab:hover .wa-fab-icon{transform:scale(1.1)}@keyframes wa-enter{0%{opacity:0}to{opacity:1}}.site-wrapper{opacity:1}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--paper);display:flex;align-items:center;justify-content:center;transition:opacity .6s ease}.splash--hide{opacity:0;pointer-events:none}.splash-inner{display:flex;flex-direction:column;align-items:center;gap:20px}.splash-logo{opacity:0;animation:splash-fade-up .7s cubic-bezier(.2,.8,.2,1) .2s forwards}.splash-name{font-family:var(--f-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);opacity:0;animation:splash-fade-up .6s cubic-bezier(.2,.8,.2,1) .45s forwards}.splash-bar-track{width:100px;height:1px;background:var(--line);position:relative;overflow:hidden;opacity:0;animation:splash-fade-up .4s ease .65s forwards}.splash-bar-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gold);transform:scaleX(0);transform-origin:left;animation:splash-bar 1.2s cubic-bezier(.4,0,.2,1) .75s forwards}@keyframes splash-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes splash-bar{to{transform:scaleX(1)}}.edu-cert-btn{margin-top:12px;display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--line-strong);color:var(--ink-soft);font-family:var(--f-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;padding:8px 14px;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.edu-cert-btn:hover{color:var(--ink);border-color:var(--gold);background:var(--gold-wash)}.edu-cert-btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.cert-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#111111d9;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;animation:certFadeIn .2s ease-out}@keyframes certFadeIn{0%{opacity:0}to{opacity:1}}.cert-modal-content{position:relative;max-width:min(1100px,95vw);max-height:90vh;display:flex;flex-direction:column;gap:16px}.cert-modal-image{display:block;width:100%;height:auto;max-height:calc(90vh - 80px);object-fit:contain;border:1px solid var(--line-strong);background:var(--paper)}.cert-modal-close{position:absolute;top:-44px;right:0;width:36px;height:36px;background:var(--paper);border:1px solid var(--paper);color:var(--ink);font-size:20px;line-height:1;cursor:pointer;transition:border-color .2s ease,color .2s ease}.cert-modal-close:hover{border-color:var(--gold);color:var(--gold)}.cert-modal-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (max-width: 600px){.cert-modal-overlay{padding:16px}.cert-modal-close{top:-40px}.cert-modal-content{max-height:95vh}}@media (prefers-reduced-motion: reduce){.cert-modal-overlay{animation:none}}
