:root {
  --ink:#090b0f; --ink-soft:#101319; --panel:#151920; --line:rgba(255,255,255,.12);
  --line-strong:rgba(255,255,255,.22); --paper:#f4f1e9; --muted:#a8adb6;
  --accent:#ff7849; --cyan:#78d3cb; --shell:min(1180px,calc(100% - 48px));
  --ease:cubic-bezier(.2,.75,.25,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:var(--ink);color:var(--paper);font-family:Inter,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body.nav-open{overflow:hidden} a{color:inherit;text-decoration:none} button,a{-webkit-tap-highlight-color:transparent}
.shell{width:var(--shell);margin:0 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;z-index:1000;left:16px;top:16px;transform:translateY(-160%);padding:10px 16px;background:var(--paper);color:var(--ink);transition:transform 180ms ease}.skip-link:focus{transform:translateY(0)}
.site-header{position:fixed;z-index:100;inset:0 0 auto;border-bottom:1px solid transparent;transition:background 220ms ease,border-color 220ms ease}.site-header.is-scrolled{background:rgba(9,11,15,.88);border-color:var(--line);backdrop-filter:blur(14px)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:13px}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--accent);font-weight:800;font-size:14px;transform:rotate(45deg)}.brand-mark i{font-style:normal;transform:rotate(-45deg)}
.brand-name{font-size:12px;letter-spacing:.18em;font-weight:700}.brand-name b{color:var(--muted);font-weight:500}.site-nav{display:flex;align-items:center;gap:34px}.site-nav a{color:#c8cbd0;font-size:13px;letter-spacing:.04em;transition:color 160ms ease}.site-nav a:hover,.site-nav a:focus-visible{color:var(--paper)}.site-nav .nav-contact{border:1px solid var(--line-strong);padding:9px 16px}
.nav-toggle{display:none;width:44px;height:44px;background:transparent;border:1px solid var(--line)}.nav-toggle span:not(.sr-only){display:block;width:18px;height:1px;margin:5px auto;background:var(--paper);transition:transform 180ms ease}
.hero{min-height:800px;height:min(940px,100svh);position:relative;overflow:hidden;display:flex;align-items:center;padding-top:74px;background:radial-gradient(circle at 72% 46%,#191a22 0,var(--ink) 48%)}
.hero-grid{position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,black 12%,transparent 92%)}
.hero-glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:.13}.hero-glow-one{width:430px;height:430px;right:5%;top:12%;background:var(--accent)}.hero-glow-two{width:300px;height:300px;right:30%;bottom:5%;background:var(--cyan)}
.hero-layout{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:64px;position:relative;z-index:2}.eyebrow{margin:0 0 24px;color:var(--muted);text-transform:uppercase;font-size:11px;letter-spacing:.19em;font-weight:700}.eyebrow span{display:inline-block;width:28px;height:1px;margin:0 10px 3px 0;background:var(--accent)}
h1,h2,h3,p{margin-top:0}h1{margin-bottom:28px;max-width:760px;font-size:clamp(50px,6.2vw,88px);line-height:.98;letter-spacing:-.055em;font-weight:650}h1 em{color:var(--accent);font-style:normal;font-weight:400}.hero-summary{max-width:560px;color:#b6bac1;font-size:clamp(17px,1.5vw,21px);line-height:1.55}.hero-actions{display:flex;gap:12px;margin-top:38px}
.button{min-height:50px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:24px;border:1px solid var(--line-strong);font-size:13px;font-weight:700;letter-spacing:.03em;transition:transform 180ms var(--ease),background 180ms ease,border-color 180ms ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);border-color:var(--accent);color:#16100d}.button-primary:hover{background:#ff8b64;border-color:#ff8b64}.button-ghost:hover{border-color:var(--paper)}
.hero-art{height:min(58vw,580px);max-height:580px;min-height:420px;position:relative;isolation:isolate}.hero-art:before{content:"";position:absolute;width:58%;height:72%;top:14%;left:22%;border:1px solid var(--line);transform:skew(-8deg);background:linear-gradient(145deg,rgba(255,255,255,.035),transparent)}
.orbit{position:absolute;border:1px solid var(--line-strong);border-radius:50%}.orbit-outer{width:410px;height:410px;top:15%;left:10%;border-style:dashed;animation:rotate 34s linear infinite}.orbit-inner{width:240px;height:240px;top:29%;left:25%;border-color:rgba(120,211,203,.35);animation:rotate-reverse 20s linear infinite}
.slash{position:absolute;z-index:2;height:12px;background:var(--accent);transform-origin:left center;box-shadow:0 0 50px rgba(255,120,73,.25)}.slash-one{width:76%;left:6%;top:55%;transform:rotate(-28deg) skewX(-35deg)}.slash-two{width:48%;left:34%;top:44%;height:3px;background:var(--cyan);transform:rotate(35deg)}
.core-mark{position:absolute;z-index:3;width:110px;height:110px;left:39%;top:39%;display:grid;place-items:center;background:var(--paper);color:var(--ink);transform:rotate(45deg);box-shadow:0 0 0 14px rgba(244,241,233,.05),0 20px 60px rgba(0,0,0,.45)}.core-mark span{font-size:38px;font-weight:900;transform:rotate(-45deg)}.art-label{position:absolute;color:#737983;font-size:10px;letter-spacing:.18em;writing-mode:vertical-rl}.art-label-one{right:5%;top:15%}.art-label-two{left:2%;bottom:5%}
.hero-footer{position:absolute;z-index:2;left:50%;bottom:28px;transform:translateX(-50%);display:flex;align-items:center;gap:17px;color:#6e737b;font-size:9px;letter-spacing:.22em}.hero-footer i{width:3px;height:3px;border-radius:50%;background:var(--accent)}
.section{padding:132px 0}.section-heading,.work-heading{display:grid;grid-template-columns:1fr .72fr;align-items:end;gap:80px;margin-bottom:62px}.section-heading h2,.work-heading h2,.about h2,.contact h2{margin-bottom:0;font-size:clamp(38px,4.5vw,62px);line-height:1.04;letter-spacing:-.045em;font-weight:600}.section-heading>p,.work-heading>p{margin-bottom:4px;color:var(--muted);max-width:470px}
.capabilities{background:var(--paper);color:#13161a}.capabilities .eyebrow{color:#696d73}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(9,11,15,.18);border-left:1px solid rgba(9,11,15,.18)}.capability-card{min-height:310px;position:relative;padding:34px;border-right:1px solid rgba(9,11,15,.18);border-bottom:1px solid rgba(9,11,15,.18);overflow:hidden;transition:background 220ms ease,color 220ms ease}.capability-card:hover{background:#171a1f;color:var(--paper)}.card-index{font-size:10px;letter-spacing:.16em;color:#777b82}.capability-card h3{margin:72px 0 16px;font-size:24px;letter-spacing:-.025em}.capability-card p{max-width:300px;margin-bottom:0;color:#6c7076;font-size:14px;line-height:1.7}.capability-card:hover p{color:#aeb2b9}.card-mark{position:absolute;right:28px;top:24px;color:var(--accent);font-size:24px}
.selected-work{background:#0d1015}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.work-card-featured{grid-column:1/-1}.placeholder-visual{min-height:390px;position:relative;overflow:hidden;border:1px solid var(--line);background:#141821}.work-card-featured .placeholder-visual{min-height:560px}.placeholder-visual:before,.placeholder-visual:after{content:"";position:absolute;inset:0}.placeholder-visual:before{opacity:.35;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px}.placeholder-visual:after{background:radial-gradient(circle at 50% 50%,rgba(255,120,73,.18),transparent 44%)}.placeholder-two:after{background:radial-gradient(circle at 36% 48%,rgba(120,211,203,.17),transparent 42%)}.placeholder-three:after{background:radial-gradient(circle at 68% 38%,rgba(244,241,233,.12),transparent 38%)}
.placeholder-ring{position:absolute;z-index:2;width:220px;height:220px;border:1px solid rgba(255,255,255,.26);border-radius:50%;left:calc(50% - 110px);top:calc(50% - 110px)}.work-card-featured .placeholder-ring{width:320px;height:320px;left:calc(50% - 160px);top:calc(50% - 160px)}.placeholder-ring:before,.placeholder-ring:after{content:"";position:absolute;inset:22%;border:1px dashed rgba(255,255,255,.18);border-radius:inherit}.placeholder-ring:after{inset:42%;background:var(--accent);border:0;box-shadow:0 0 48px rgba(255,120,73,.35)}.placeholder-two .placeholder-ring:after{background:var(--cyan);box-shadow:0 0 48px rgba(120,211,203,.3)}.placeholder-stroke{position:absolute;z-index:3;width:54%;height:4px;left:23%;top:50%;background:var(--accent);transform:rotate(-24deg) skewX(-30deg)}.placeholder-two .placeholder-stroke{transform:rotate(32deg);background:var(--cyan)}.placeholder-three .placeholder-stroke{height:42%;width:42%;left:29%;top:29%;background:transparent;border:1px solid rgba(244,241,233,.55);transform:rotate(45deg)}
.work-meta{display:flex;justify-content:space-between;gap:24px;padding-top:22px}.work-meta span{display:block;margin-bottom:5px;color:#777c85;text-transform:uppercase;font-size:9px;letter-spacing:.18em}.work-meta h3{margin:0;font-size:21px;font-weight:550}.work-meta p{margin:0;color:var(--muted);font-size:12px}.work-note{margin:56px 0 0;padding-top:20px;border-top:1px solid var(--line);color:#727780;font-size:12px}
.about{border-top:1px solid var(--line);background:var(--ink)}.about-layout{display:grid;grid-template-columns:1fr .9fr;gap:120px}.about-copy{padding-top:48px}.about-copy>p{color:#b5bac1;font-size:18px;line-height:1.75}.about-copy>p:first-child{color:var(--paper);font-size:24px;line-height:1.55}.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:38px}.about-tags span{padding:8px 12px;border:1px solid var(--line);color:#989da6;font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.contact{position:relative;overflow:hidden;padding:150px 0 110px;background:var(--accent);color:#19110e}.contact-aura{position:absolute;width:800px;height:800px;right:-160px;top:-330px;border:1px solid rgba(25,17,14,.16);border-radius:50%;box-shadow:0 0 0 120px rgba(25,17,14,.035),0 0 0 240px rgba(25,17,14,.025)}.contact-inner{position:relative;z-index:2}.contact .eyebrow{color:rgba(25,17,14,.66)}.contact .eyebrow span{background:#19110e}.contact h2{max-width:880px;font-size:clamp(46px,6vw,80px)}.contact-intro{margin:28px 0 52px;color:rgba(25,17,14,.72);font-size:18px}.contact-link{display:grid;grid-template-columns:.7fr 1.4fr auto;align-items:center;gap:30px;padding:26px 0;border-top:1px solid rgba(25,17,14,.38);border-bottom:1px solid rgba(25,17,14,.38)}.contact-link span{font-size:12px;text-transform:uppercase;letter-spacing:.14em}.contact-link strong{font-size:clamp(20px,3vw,34px);font-weight:500}.contact-link i{font-size:28px;font-style:normal;transition:transform 180ms var(--ease)}.contact-link:hover i{transform:translate(5px,-5px)}.contact-person{display:flex;gap:28px;margin-top:28px;font-size:12px}.contact-person span:last-child{color:rgba(25,17,14,.62)}
.site-footer{padding:34px 0;background:#06070a;border-top:1px solid var(--line)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-footer p,.footer-inner>a:last-child{margin:0;color:#777b83;font-size:11px}.reveal{opacity:0;transform:translateY(20px);transition:opacity 700ms var(--ease),transform 700ms var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes rotate{to{transform:rotate(360deg)}}@keyframes rotate-reverse{to{transform:rotate(-360deg)}}
@media(max-width:920px){:root{--shell:min(100% - 36px,720px)}.nav-toggle{display:block;position:relative;z-index:102}.site-nav{position:fixed;inset:0;display:flex;flex-direction:column;justify-content:center;gap:28px;background:#090b0f;opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity 200ms ease,transform 200ms ease}.site-nav.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.site-nav a{font-size:26px}.site-nav .nav-contact{border:0;padding:0;color:var(--accent)}.nav-toggle[aria-expanded=true] span:not(.sr-only):nth-child(2){transform:translateY(3px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:not(.sr-only):nth-child(3){transform:translateY(-3px) rotate(-45deg)}.hero{height:auto;min-height:920px;padding:150px 0 96px}.hero-layout{grid-template-columns:1fr;gap:28px}.hero-art{max-width:620px;width:100%;height:500px;margin:0 auto}.hero-footer{display:none}.section{padding:96px 0}.section-heading,.work-heading,.about-layout{grid-template-columns:1fr;gap:34px}.capability-grid{grid-template-columns:repeat(2,1fr)}.about-copy{padding-top:0}.work-card-featured .placeholder-visual{min-height:440px}}
@media(max-width:620px){:root{--shell:calc(100% - 28px)}.header-inner{min-height:68px}.brand-name{font-size:10px}h1{font-size:clamp(45px,13vw,66px)}.hero{min-height:auto;padding-top:124px}.hero-actions{flex-direction:column;align-items:stretch}.hero-art{min-height:350px;height:86vw}.orbit-outer{width:300px;height:300px;left:calc(50% - 150px)}.orbit-inner{width:180px;height:180px;left:calc(50% - 90px);top:27%}.core-mark{width:82px;height:82px;left:calc(50% - 41px)}.section{padding:78px 0}.section-heading,.work-heading{margin-bottom:42px}.capability-grid,.work-grid{grid-template-columns:1fr}.capability-card{min-height:260px}.capability-card h3{margin-top:50px}.work-card-featured{grid-column:auto}.placeholder-visual,.work-card-featured .placeholder-visual{min-height:330px}.work-card-featured .placeholder-ring{width:220px;height:220px;left:calc(50% - 110px);top:calc(50% - 110px)}.work-meta{flex-direction:column;gap:8px}.about-copy>p:first-child{font-size:21px}.contact{padding:96px 0 72px}.contact-link{grid-template-columns:1fr auto}.contact-link span{grid-column:1/-1}.contact-link strong{overflow-wrap:anywhere}.contact-person,.footer-inner{flex-direction:column;align-items:flex-start;gap:8px}.site-footer .brand{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
