@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/dm-sans-400.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/dm-sans-600.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/manrope-500.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/manrope-800.ttf) format('truetype');
}
:root{--ink:#090a09;--panel:#10110f;--gold:#efc749;--gold-light:#f5da7a;--white:#f3f2eb;--muted:#85877f;--line:rgba(244,240,216,.15);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--white);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}::selection{background:var(--gold);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',sans-serif}em{font-style:normal;color:var(--gold)}.container{width:calc(100% - 128px);max-width:1600px;margin:auto}.section-pad{padding:132px 0}.section-label,.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.16em;line-height:1.5}.section-label{color:var(--gold)}.section-number{margin-right:24px}.skip-link{position:fixed;left:20px;top:-100px;background:var(--gold);color:#090a09;z-index:200;padding:12px 20px}.skip-link:focus{top:20px}.page-progress{position:fixed;z-index:120;top:0;left:0;height:2px;width:100%;background:var(--gold);transform:scaleX(0);transform-origin:left}.header{height:104px;padding:0 64px;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:100;transition:background .4s,height .4s,border-color .4s;border-bottom:1px solid transparent}.header.scrolled{position:fixed;height:80px;background:rgba(9,10,9,.92);backdrop-filter:blur(18px);border-color:var(--line)}.brand{display:inline-flex;align-items:center;font-family:'Manrope',sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.065em;line-height:1}.brand-mark{font-size:1.65rem;width:32px;height:33px;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#0a0a09;font-weight:800;letter-spacing:-.1em;margin-right:13px}.brand-mark span{width:5px;height:5px;background:#090a09;margin:0 0 12px 1px}.brand-dot{color:var(--gold)}.desktop-nav{display:flex;gap:43px;align-items:center;font-size:.875rem}.desktop-nav>a:not(.nav-contact){position:relative;color:#c5c6bd}.desktop-nav>a:not(.nav-contact):after{position:absolute;content:'';left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:right .3s}.desktop-nav>a:hover:after{right:0}.nav-contact{border:1px solid #626151;border-radius:40px;padding:12px 22px}.nav-contact span{margin-left:28px;color:var(--gold);font-size:1.2rem}.nav-contact:hover{background:var(--gold);border-color:var(--gold);color:#090a09}.nav-contact:hover span{color:#090a09}.menu-button,.mobile-nav{display:none}.hero{position:relative;min-height:780px;height:100svh;max-height:1200px;isolation:isolate;overflow:hidden;background:#070807;display:flex;align-items:center}.hero-art{position:absolute;inset:0;z-index:-4;background-position:center;background-size:cover;opacity:.92;transform:scale(1.02);will-change:transform}.hero.has-art .hero-art{background-image:url('assets/hero-gold.webp')}.hero-vignette{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,8,7,.92),rgba(7,8,7,.6) 28%,transparent 70%),linear-gradient(0deg,#090a09 0%,transparent 19%,transparent 85%,rgba(7,8,7,.4))}#particles{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.hero-content{padding-top:50px}.eyebrow{display:flex;align-items:center;gap:14px;font-size:.75rem;letter-spacing:.14em;color:#d4d2c4;margin-bottom:31px}.tiny-cross{color:var(--gold);font-size:1.5rem;font-weight:400;line-height:1}.hero h1{font-size:clamp(3.65rem,7.3vw,8rem);font-weight:500;line-height:1.075;letter-spacing:-.065em;position:relative;max-width:1100px}.hero h1 em{background:linear-gradient(100deg,#f5dd91 0%,#efc749 65%,#be861b);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-copy{margin-top:35px}.hero-copy p{color:#b5b5aa;font-size:1rem;line-height:1.8;margin-bottom:30px}.button{min-height:58px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:15px 23px;font-size:.875rem;font-weight:600;border-radius:3px;transition:background .25s,transform .3s,box-shadow .3s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 32px #e6bd3718}.button span{font-size:1.4rem;line-height:1}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:var(--gold-light)}.hero-foot{position:absolute;bottom:33px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding-top:21px;border-top:1px solid var(--line);color:#a2a499;font-size:.75rem}.scroll-link{display:flex;align-items:center;gap:12px;font-size:.75rem}.scroll-icon{font-size:1.25rem;color:var(--gold);animation:scroll-hint 3s ease-in-out infinite}.hero-disciplines{font-size:.65rem;letter-spacing:.12em}.hero-disciplines i{font-style:normal;color:var(--gold);margin:0 18px}.motion-toggle{border:0;background:transparent;display:flex;gap:8px;align-items:center;font-size:.75rem;padding:7px 0 7px 10px;color:#b5b6ab}.pause-icon{font-size:1rem;color:var(--gold)}.hero-enter{animation:hero-in 1.3s var(--ease) both}.hero h1.hero-enter{animation-delay:.12s}.hero-copy.hero-enter{animation-delay:.24s}.intro{border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:1fr 3fr;gap:30px}.intro-grid>.section-label{padding-top:13px}.intro h2{font-size:clamp(2.5rem,4.5vw,5rem);font-weight:500;letter-spacing:-.045em;line-height:1.2}.muted{color:#777a72}.intro-bottom{margin-top:42px;display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:end}.intro-bottom p{color:#a8aaa0;font-size:1rem;max-width:530px}.text-link{font-size:.875rem;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:0 0 13px;border-bottom:1px solid #737360}.text-link span{color:var(--gold);font-size:1.3rem;transition:transform .3s}.text-link:hover span{transform:translate(3px,-3px)}.services h2,.contact h2{font-size:clamp(3rem,5.8vw,6.5rem);font-weight:500;letter-spacing:-.055em;line-height:1.1;margin-top:32px}.contact{border-top:1px solid var(--line);background:radial-gradient(ellipse at 90% 40%,#29220d 0%,transparent 58%)}.contact>.container>.button{margin-top:36px}.contact-grid{margin-top:90px;padding-top:40px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:40px}.contact-label{font-size:.75rem;letter-spacing:.15em;color:#86897e;display:block;margin-bottom:20px}.contact-grid h3{font-family:'DM Sans',sans-serif;font-size:1rem;font-weight:400;margin-bottom:7px}.contact-grid p,.contact-grid a{font-size:1rem;color:#dbddd2}.contact-grid a{display:inline-block}.contact-grid a:hover{color:var(--gold)}.email{overflow-wrap:anywhere}.footer{background:#070807}.footer-top{display:flex;justify-content:space-between;align-items:center;padding:50px 0;border-bottom:1px solid var(--line)}.footer-top .brand{font-size:2.5rem}.footer-top p{font-size:.875rem;color:#8e9185}.back-top{width:46px;height:46px;border:1px solid #3e4035;border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:1.4rem;transition:background .3s}.back-top:hover{background:#272718}.footer-bottom{display:flex;justify-content:space-between;padding:24px 0 30px;font-size:.75rem;color:#828678}.reveal{opacity:0;transform:translateY(38px);transition:opacity .9s var(--ease),transform 1.1s var(--ease)}.reveal.visible{opacity:1;transform:none}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}.paused{scroll-behavior:auto}.paused .reveal{opacity:1;transform:none;transition:none}@keyframes hero-in{from{opacity:0;transform:translateY(28px);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes scroll-hint{0%,100%{transform:translateY(-3px)}50%{transform:translateY(3px)}}
@media(min-width:1700px){.container{width:calc(100% - 180px)}.header{padding:0 90px}.hero-content{padding-top:0}}
@media(max-width:1100px){.container{width:calc(100% - 80px)}.header{padding:0 40px}.hero{min-height:760px}.hero h1{font-size:7.7vw}.intro-grid{grid-template-columns:1fr 3.5fr}.intro-bottom{gap:35px}.hero-disciplines{display:none}.contact-grid{grid-template-columns:1fr 1.2fr}.contact-grid>div:last-child{grid-column:1/-1}.section-pad{padding:100px 0}}
@media(max-width:700px){html{scroll-padding-top:80px}.container{width:calc(100% - 44px)}.header{height:84px;padding:0 22px}.header.scrolled{height:72px}.brand{font-size:1.7rem}.brand-mark{width:26px;height:28px;font-size:1.4rem;margin-right:10px}.desktop-nav{display:none}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;border:1px solid #595943;background:transparent;border-radius:50%;padding:11px}.menu-button span{height:1px;background:var(--white);width:100%;transition:transform .3s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-nav{position:fixed;inset:0;background:#11120f;z-index:99;display:flex;flex-direction:column;justify-content:center;padding:100px 28px;visibility:hidden;opacity:0;transform:translateY(-15px);transition:.3s}.mobile-nav.open{visibility:visible;opacity:1;transform:none}.mobile-nav a{font-size:2rem;padding:20px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;letter-spacing:-.04em}.mobile-nav a span{font-size:.75rem;color:var(--gold);letter-spacing:0}.mobile-nav p{font-size:.875rem;color:#909482;margin-top:35px}.hero{height:100svh;min-height:730px;max-height:1000px;align-items:center}.hero-content{padding-top:22px}.hero h1{font-size:clamp(2.65rem,9.35vw,4.35rem);letter-spacing:-.06em;line-height:1.17}.hero .eyebrow{font-size:.625rem;letter-spacing:.09em;gap:8px;margin-bottom:25px}.hero-vignette{background:linear-gradient(0deg,#090a09 0%,rgba(7,8,7,.8) 24%,rgba(7,8,7,.18) 90%),linear-gradient(90deg,rgba(7,8,7,.35),transparent)}.hero-art{background-position:65% 45%;opacity:.65}.hero-copy{margin-top:27px}.hero-copy p{font-size:.9375rem;margin-bottom:27px}.hero-foot{bottom:22px;padding-top:14px}.motion-label{display:none}.motion-toggle{width:44px;height:44px;justify-content:center}.section-pad{padding:78px 0}.intro-grid{grid-template-columns:1fr;gap:28px}.intro h2{font-size:clamp(2rem,7.5vw,3rem)}.intro-grid>.section-label{padding:0}.intro-bottom{grid-template-columns:1fr;gap:30px;margin-top:28px}.intro-bottom .text-link{justify-self:start;font-size:.8125rem}.services h2,.contact h2{font-size:clamp(2.5rem,9.5vw,4rem);margin-top:27px}.contact-grid{grid-template-columns:1fr;gap:33px;margin-top:65px;padding-top:32px}.contact-grid>div:last-child{grid-column:auto}.contact-label{margin-bottom:12px}.footer-top{padding:32px 0;gap:20px}.footer-top p{display:none}.footer-bottom{flex-direction:column;gap:9px;font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.services{padding-bottom:66px}.services-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:60px;margin-bottom:65px}.services-heading>p{font-size:.9375rem;color:#a6a99d;max-width:330px;padding-bottom:7px}.service-stack{position:relative;padding-bottom:65px}.service-panel{position:sticky;top:105px;min-height:460px;padding:31px 44px 42px;border-radius:8px;margin-bottom:28px;overflow:hidden;box-shadow:0 -24px 45px rgba(0,0,0,.22);border:1px solid #454737}.service-panel-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;border-bottom:1px solid rgba(14,16,9,.25);font-size:.75rem;letter-spacing:.13em;font-weight:600}.panel-cross{font-size:1.75rem;line-height:1;font-weight:400}.service-panel-body{display:grid;grid-template-columns:1.25fr 1fr;gap:70px;padding-top:36px}.service-name h3{font-size:clamp(2.5rem,5vw,5.6rem);font-weight:500;line-height:1.08;letter-spacing:-.055em}.service-name>p{font-size:.9375rem;margin-top:28px}.service-description{padding-top:8px}.service-description h4{font-weight:600;font-size:1.125rem;letter-spacing:-.02em;line-height:1.5;margin:0 0 15px;max-width:380px}.service-description>p{font-size:1rem;line-height:1.7}.service-gold{background:linear-gradient(120deg,#f0cf65,#eac044);color:#17180f;border-color:#f0cf65}.service-gold .service-name h3 span{color:#8c6d12}.service-gold .service-name>p{color:#5b4d23}.service-gold .service-description>p{color:#443d25}.service-tags{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:24px 0 32px}.service-tags li{border:1px solid rgba(14,16,9,.3);border-radius:40px;font-size:.75rem;padding:5px 12px;line-height:1.5}.service-link{font-size:.875rem;border-bottom:1px solid rgba(14,16,9,.45);display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;gap:20px}.service-link span{font-size:1.4rem;transition:transform .25s}.service-link:hover span{transform:translate(3px,-3px)}.service-dark{top:126px;background:linear-gradient(120deg,#1e211b,#151812);color:#f0f1e9}.service-dark .service-panel-top,.service-code .service-panel-top{color:#cdcebe;border-color:#454839}.service-dark .service-name>p,.service-code .service-name>p{color:#9c9f8d}.service-dark .service-description>p,.service-code .service-description>p{color:#b7baa9}.service-dark .service-tags li,.service-code .service-tags li{border-color:#535741;color:#d7dac9}.service-dark .service-link,.service-code .service-link{border-color:#535741}.service-dark .service-link span,.service-code .service-link span{color:var(--gold)}.service-code{top:147px;background:linear-gradient(120deg,#2b2b1d,#191b13);color:#f0f1e9}.code-mark{font-size:1.5rem;color:var(--gold);font-family:monospace;font-weight:400;line-height:1}.vision-strip{overflow:hidden;border-top:1px solid var(--line);padding:34px 0 42px;color:#9b9e89}.vision-track{display:flex;width:max-content;animation:marquee 35s linear infinite}.vision-track>span{display:block;font-family:'Manrope',sans-serif;font-size:clamp(2.5rem,6vw,7rem);letter-spacing:-.045em;font-weight:500;white-space:nowrap;line-height:1.2}.vision-track b{font-weight:400;color:var(--gold);margin:0 38px}.contact h2 em{display:inline-block;position:relative}.contact h2 em:after{content:'';position:absolute;bottom:-8px;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(.98);transform-origin:left}.hero-disciplines{font-size:.75rem}.hero-disciplines i{margin:0 12px}.paused .service-panel{position:relative;top:0}.hero-foot .scroll-link,.motion-toggle{font-size:.75rem}.service-panel:focus-within{z-index:10}
@keyframes marquee{to{transform:translateX(-50%)}}
@media(max-width:1100px){.service-panel{padding:27px 30px 34px;min-height:470px}.service-panel-body{gap:36px;grid-template-columns:1fr 1fr}.services-heading{gap:35px}.services-heading>p{max-width:275px;font-size:.875rem}.service-description>p{font-size:.9375rem}.hero h1{font-size:7.7vw}}
@media(max-width:700px){.services{padding-bottom:40px}.services-heading{display:block;margin-bottom:35px}.services-heading>p{margin-top:24px;max-width:320px}.service-stack{padding-bottom:0}.service-panel{position:relative;top:0;padding:23px 23px 28px;margin-bottom:20px;border-radius:6px;min-height:0;box-shadow:none}.service-panel-top{padding-bottom:19px;font-size:.75rem;letter-spacing:.05em}.service-panel-body{grid-template-columns:1fr;gap:29px;padding-top:26px}.service-name h3{font-size:2.8rem}.service-name>p{margin-top:17px;font-size:.875rem}.service-description{padding-top:0}.service-description h4{font-size:1.0625rem}.service-description>p{font-size:.9375rem}.service-tags{gap:7px;margin:20px 0 24px}.service-tags li{font-size:.75rem;padding:4px 10px}.service-link{font-size:.8125rem}.vision-strip{padding:24px 0 28px}.vision-track b{margin:0 20px}.hero .eyebrow{font-size:.75rem;letter-spacing:.03em;max-width:290px;line-height:1.6}.hero .tiny-cross{flex-shrink:0}.footer-bottom{font-size:.75rem}}
@media(max-height:760px) and (min-width:701px){.service-panel{position:relative;top:0}.hero{min-height:740px}}
@media(prefers-reduced-motion:reduce){.service-panel{position:relative;top:0}}
@media print{.header,.hero-foot,#particles,.hero-art,.hero-vignette,.vision-strip,.back-top,.page-progress{display:none!important}body{background:#fff;color:#111}.container{width:100%}.hero{height:auto;min-height:0;padding:30px 0}.hero-content{padding:0}.hero h1,.hero h1 em{color:#111;background:none;font-size:48px}.hero-copy p{color:#444}.section-pad{padding:30px 0}.intro h2,.services h2,.contact h2{font-size:32px}.intro-grid,.intro-bottom,.contact-grid{display:block}.service-panel{position:static;break-inside:avoid;background:#fff;color:#111;box-shadow:none;margin-top:20px;border:1px solid #ddd}.service-panel p,.service-panel em,.service-panel h4,.service-panel span,.service-panel li{color:#222!important}.reveal{opacity:1;transform:none}.contact,.footer{background:#fff}.footer-top{padding:20px 0}}
.brand{background:var(--gold);padding:7px 9px;border-radius:2px}.original-logo{display:block;width:170px;height:auto;object-fit:contain}.contact-grid{grid-template-columns:1fr 1.4fr}.contact-grid>div:last-child{grid-column:auto}.footer-top .original-logo{width:190px}@media(max-width:700px){.brand{padding:6px 7px}.original-logo{width:140px}.footer-top .original-logo{width:160px}.contact-grid{grid-template-columns:1fr}}
/* One real-time 3D scene follows the complete page. */
body{isolation:isolate}.ambient-scene{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:#090a09}.scene-fallback{position:absolute;inset:0;background:url('assets/hero-gold.webp') 65% center/cover no-repeat;opacity:.8;transition:opacity .8s}.scene-ready .scene-fallback{opacity:0}#gold-scene{display:block;width:100%;height:100%;opacity:0}.ambient-scene[data-mode=fallback] #gold-scene{visibility:hidden}main,.footer{position:relative;z-index:1}.hero{background:transparent}.hero-vignette{background:linear-gradient(90deg,rgba(7,8,7,.90),rgba(7,8,7,.59) 29%,rgba(7,8,7,.04) 66%),linear-gradient(0deg,rgba(9,10,9,.62),transparent 25%,transparent 82%,rgba(7,8,7,.14))}.intro{background:linear-gradient(90deg,rgba(9,10,9,.12),rgba(9,10,9,.84) 28%,rgba(9,10,9,.94) 68%)}.services{background:linear-gradient(90deg,rgba(9,10,9,.32),rgba(9,10,9,.12))}.service-gold{background:linear-gradient(120deg,rgba(240,207,101,.97),rgba(234,192,68,.94))}.service-dark{background:linear-gradient(120deg,rgba(30,33,27,.94),rgba(21,24,18,.92))}.service-code{background:linear-gradient(120deg,rgba(43,43,29,.94),rgba(25,27,19,.92))}.vision-strip{position:relative;z-index:1;background:rgba(9,10,9,.7)}.contact{background:linear-gradient(90deg,rgba(9,10,9,.94),rgba(9,10,9,.81) 37%,rgba(9,10,9,.20) 80%)}.footer{background:rgba(7,8,7,.9)}.motion-toggle{position:fixed;right:26px;bottom:22px;z-index:90;background:rgba(17,19,14,.85);backdrop-filter:blur(12px);border:1px solid #66634c;border-radius:32px;padding:10px 15px;box-shadow:0 3px 20px #0004;font-size:.75rem;min-height:44px}.hero-foot{padding-right:180px}.footer-bottom{padding-bottom:84px}.paused .scene-fallback{transition:none}
@media(max-width:1100px){.hero-foot{padding-right:175px}}
@media(max-width:700px){.hero-vignette{background:linear-gradient(90deg,rgba(7,8,7,.78),rgba(7,8,7,.28)),linear-gradient(0deg,rgba(9,10,9,.86),transparent 80%)}.intro{background:rgba(9,10,9,.79)}.contact{background:rgba(9,10,9,.64)}.hero-foot{padding-right:58px}.motion-toggle{right:16px;bottom:16px;padding:10px;width:44px;min-width:44px;height:44px}.scene-fallback{background-position:67% center}.service-gold{background:rgba(239,199,73,.97)}.service-dark{background:rgba(24,28,20,.96)}.service-code{background:rgba(33,35,23,.96)}}
@media print{.ambient-scene,.motion-toggle{display:none!important}}
