:root{
  --black:#0A0A0A;
  --charcoal:#1C1C1C;
  --graphite:#3A3A3A;
  --soft:#F5F5F2;
  --mist:#D9D9D6;
  --line:rgba(255,255,255,.16);
  --text:#F4F4F1;
  --muted:#A6A6A2;
  --display:"Sora",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --body:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--text);font-family:var(--body);font-weight:300;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit}
.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E")}
.section-pad{padding:120px clamp(24px,6vw,96px);position:relative}
.site-header{position:fixed;top:0;left:0;right:0;height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,74px);z-index:50;background:linear-gradient(to bottom,rgba(10,10,10,.92),rgba(10,10,10,.45),transparent);backdrop-filter:blur(8px)}
.brand{display:flex;align-items:center;gap:18px}
.brand-mark{width:42px;height:42px;display:block}
.brand-mark svg{width:100%;height:100%;display:block}
.brand-divider{width:1px;height:36px;background:rgba(255,255,255,.55)}
.brand-word{font-family:var(--display);font-size:19px;letter-spacing:.42em;font-weight:300;margin-right:-.42em}
.main-nav{display:flex;align-items:center;gap:34px;font-size:12px;text-transform:uppercase;letter-spacing:.18em}
.main-nav a{opacity:.72;transition:.25s ease}.main-nav a:hover{opacity:1}
.nav-cta{border:1px solid rgba(255,255,255,.35);padding:11px 18px;opacity:1!important}
.menu-toggle{display:none;background:none;border:0;color:white;width:42px;height:42px;position:relative}.menu-toggle span{position:absolute;left:8px;width:26px;height:1px;background:white}.menu-toggle span:first-child{top:16px}.menu-toggle span:last-child{top:25px}
.hero{min-height:100vh;display:grid;align-items:end;padding-top:160px;padding-bottom:66px;overflow:hidden}
.hero-grid{position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 67%,rgba(255,255,255,.03) 67% 67.08%,transparent 67.08%),linear-gradient(180deg,transparent 0 74%,rgba(255,255,255,.035) 74% 74.08%,transparent 74.08%)}
.hero:after{content:"";position:absolute;right:-8vw;bottom:8vh;width:64vw;height:42vh;background:linear-gradient(135deg,transparent 0 47%,rgba(255,255,255,.09) 47.2%,rgba(255,255,255,.015) 47.6%,rgba(20,20,20,.95) 48%);transform:skewY(-5deg);opacity:.8}
.hero-glow{position:absolute;border-radius:50%;filter:blur(120px);opacity:.11}.glow-a{width:42vw;height:42vw;background:#fff;right:-18vw;top:-18vw}.glow-b{width:28vw;height:28vw;background:#777;left:-15vw;bottom:-12vw}
.hero-content{position:relative;z-index:3;max-width:900px}
.eyebrow{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:#BDBDB7;margin:0 0 24px}
.hero h1,.services h2,.intro h2,.company h2,.contact h2{font-family:var(--display);font-weight:300;letter-spacing:-.035em;line-height:1.03;margin:0}
.hero h1{font-size:clamp(52px,8vw,112px);max-width:1100px}.hero h1 span{color:#A8A8A3}
.hero-copy{max-width:650px;font-size:clamp(17px,1.6vw,22px);color:#BEBEB8;margin:34px 0 0}
.hero-actions{display:flex;gap:14px;margin-top:42px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;text-transform:uppercase;font-size:11px;letter-spacing:.2em;transition:.25s ease}.btn-light{background:var(--soft);color:#111}.btn-light:hover{background:white;transform:translateY(-2px)}.btn-ghost{border:1px solid rgba(255,255,255,.3)}.btn-ghost:hover{border-color:white;transform:translateY(-2px)}
.hero-side{position:absolute;right:clamp(20px,4vw,68px);top:50%;z-index:2;transform:translateY(-50%)}.vertical-note{writing-mode:vertical-rl;font-size:9px;letter-spacing:.42em;color:#999}
.hero-bottom{position:relative;z-index:3;display:flex;gap:34px;font-size:9px;letter-spacing:.28em;color:#7f7f7a;margin-top:90px}
.light-section{background:var(--soft);color:#111}
.section-label{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:#666;margin-bottom:56px}.section-label.light{color:#8e8e89}
.intro-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;align-items:start}.intro h2{font-size:clamp(44px,6vw,84px)}.intro-copy{padding-top:10px}.intro-copy p{font-size:clamp(18px,1.7vw,24px);line-height:1.55;color:#333;margin:0 0 24px;max-width:720px}
.services{background:linear-gradient(180deg,#111 0%,#0A0A0A 100%)}.section-head{display:grid;grid-template-columns:1fr .65fr;gap:8vw;align-items:end}.services h2{font-size:clamp(46px,6vw,82px)}.section-head>p{color:#A6A6A1;max-width:520px;font-size:17px;margin:0 0 4px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.12);margin-top:80px;border:1px solid rgba(255,255,255,.12)}.service-card{position:relative;background:#101010;min-height:340px;padding:40px;display:flex;flex-direction:column}.card-no{font-size:10px;letter-spacing:.24em;color:#72726f}.service-card h3{font-family:var(--display);font-weight:300;font-size:32px;margin:60px 0 18px}.service-card p{color:#9C9C98;margin:0;max-width:330px}.card-line{height:1px;width:40px;background:#F1F1ED;margin-top:auto;transition:width .3s ease}.service-card:hover .card-line{width:100%}
.statement{min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:#0D0D0D;overflow:hidden}.statement:before{content:"G";position:absolute;right:2vw;top:50%;transform:translateY(-50%);font-family:var(--display);font-size:46vw;line-height:.8;color:rgba(255,255,255,.018);font-weight:300}.statement-line{width:52px;height:1px;background:#888;margin-bottom:34px}.statement blockquote{font-family:var(--display);font-size:clamp(34px,5vw,70px);font-weight:300;line-height:1.18;letter-spacing:-.03em;margin:0;max-width:1250px;position:relative}
.company-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:10vw}.company h2{font-size:clamp(48px,6vw,82px)}.company-note{color:#6b6b67;margin-top:18px}.company-data{margin:0}.company-data div{display:grid;grid-template-columns:190px 1fr;gap:30px;padding:21px 0;border-bottom:1px solid #D7D7D2}.company-data dt{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#777}.company-data dd{margin:0;font-weight:400}.company-data a{text-decoration:underline;text-underline-offset:4px}
.contact{overflow:hidden;min-height:72vh}.contact-glow{position:absolute;right:-15vw;top:10%;width:50vw;height:50vw;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 65%);filter:blur(20px)}.contact-layout{display:grid;grid-template-columns:1.15fr .65fr;gap:10vw;align-items:end}.contact h2{font-size:clamp(52px,7vw,98px)}.contact-box{border-left:1px solid rgba(255,255,255,.22);padding-left:38px;color:#D0D0CB}.contact-box p{margin:0 0 24px}.contact-muted{font-size:12px;color:#777;max-width:430px}.contact-box .btn{margin-top:12px}
.site-footer{min-height:120px;border-top:1px solid rgba(255,255,255,.12);padding:34px clamp(22px,5vw,74px);display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;font-size:9px;letter-spacing:.2em;color:#74746f;text-transform:uppercase}.footer-brand{font-family:var(--display);font-size:18px;letter-spacing:.36em;color:white}.site-footer div:last-child{text-align:right}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}
@media(max-width:900px){.site-header{height:74px}.main-nav{position:fixed;inset:74px 0 auto 0;background:#0A0A0A;border-top:1px solid rgba(255,255,255,.08);display:none;flex-direction:column;align-items:stretch;padding:26px}.main-nav.open{display:flex}.main-nav a{padding:12px 2px}.menu-toggle{display:block}.brand-divider{height:30px}.brand-mark{width:36px;height:36px}.intro-layout,.section-head,.company-layout,.contact-layout{grid-template-columns:1fr;gap:50px}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}.hero-side{display:none}.hero{min-height:94vh}.company-data div{grid-template-columns:1fr;gap:8px}.site-footer{grid-template-columns:1fr;text-align:left}.site-footer div:last-child{text-align:left}.section-pad{padding:90px 24px}.statement{min-height:62vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}
