:root{--black:#0B0B0C;--graphite:#1A1A1C;--paper:#F4F1EC;--gold:#B8892D;--sand:#D9CBB0;--mute:#8A857C;--amber:#8C6420;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:env(safe-area-inset-top,0px);scroll-behavior:smooth}
*,*::before,*::after{box-sizing:inherit;margin:0}
body{background:var(--black);color:var(--paper);font:400 17px/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:Manrope,Inter,sans-serif;letter-spacing:-.025em;line-height:1.1}
h1{font-size:clamp(2.4rem,6.5vw,4.6rem);font-weight:800}
h2{font-size:clamp(1.8rem,4vw,2.7rem);font-weight:800;max-width:20ch}
h3{font-size:1.1rem;font-weight:600;letter-spacing:-.01em}
p{max-width:60ch}
a{color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{width:min(1120px,100% - 40px);margin-inline:auto}
section{padding:clamp(64px,10vw,120px) 0}
.light{background:var(--paper);color:var(--black)}
.light .mute{color:#5d5950}
.mute{color:var(--mute)}
.btn{display:inline-block;background:var(--gold);color:var(--black);font:600 1rem Manrope,sans-serif;padding:16px 28px;text-decoration:none;border-radius:2px;transition:background .2s}
.btn:hover{background:#cc9b38}
.btn.dark{background:var(--black);color:var(--paper)}
.btn.dark:hover{background:var(--graphite)}
header{position:absolute;top:env(safe-area-inset-top,0px);left:0;right:0;z-index:2;padding:24px 0}
header .wrap{display:flex;justify-content:space-between;align-items:center}
.logo{display:flex;align-items:center;gap:12px;font:600 1.05rem Manrope,sans-serif;letter-spacing:.28em;text-decoration:none}
.logo svg{width:34px;height:34px}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:140px 0 80px}
.hero .wrap{position:relative;z-index:1}
.hero p{font-size:1.15rem;margin:28px 0 36px;color:var(--sand)}
.hero h1{max-width:14ch}
.hero-mark{position:absolute;right:-12vw;top:50%;width:min(78vw,760px);transform:translateY(-50%);opacity:.9}
.hero-mark .up{animation:rise 1.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes rise{from{transform:translate(0,0)}to{transform:translate(10px,-14px)}}
@media (prefers-reduced-motion:reduce){.hero-mark .up{animation:none}}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,96px)}
.problems{list-style:none;padding:0}
.problems li{padding:22px 0;border-top:1px solid #cfc8b9;font-weight:500}
.problems li:last-child{border-bottom:1px solid #cfc8b9}
.pillars{display:grid;gap:2px}
.pillars div{background:var(--graphite);padding:28px}
.pillars h3{color:var(--gold);margin-bottom:6px}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:56px;counter-reset:s}
.steps li{border-top:2px solid var(--gold);padding-top:20px;counter-increment:s}
.steps li::before{content:counter(s);font:800 2rem Manrope,sans-serif;color:var(--gold);display:block;margin-bottom:8px}
.steps h3{margin-bottom:6px}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#cfc8b9;border:1px solid #cfc8b9;margin-top:48px}
.services div{background:var(--paper);padding:28px}
.services h3{margin-bottom:6px}
.diff{display:grid;grid-template-columns:repeat(2,1fr);gap:40px 64px;margin-top:48px}
.diff h3{color:var(--gold);margin-bottom:6px}
.proof{border:1px dashed #4a4a4d;padding:48px;margin-top:40px;text-align:center;color:var(--mute)}
.cta{background:var(--gold);color:var(--black);text-align:center}
.cta h2{margin-inline:auto}
.cta p{margin:20px auto 32px}
.contact{text-align:center}
.contact p{margin:16px auto 32px}
footer{border-top:1px solid #2a2a2c;padding:36px 0;color:var(--mute);font-size:.9rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center}
footer a{text-decoration:none}
@media (max-width:820px){.grid2,.diff{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.services{grid-template-columns:1fr}.hero-mark{right:-30vw;opacity:.35}.proof{padding:32px 20px}}
@media (max-width:480px){.steps{grid-template-columns:1fr}}

.stage{position:absolute;right:max(2vw,calc(50% - 540px));top:50%;width:min(46vw,520px);aspect-ratio:1;transform:translateY(-50%);perspective:1200px}
.orb{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--rx,10deg)) rotateY(var(--ry,-18deg));transition:transform .15s ease-out;animation:float 7s ease-in-out infinite}
.l{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.l0{transform:translateZ(-70px) scale(1.12)}
.l1{transform:translateZ(0);filter:drop-shadow(0 30px 40px rgba(0,0,0,.6))}
.l2{transform:translateZ(110px) translate(3%,-7%);filter:drop-shadow(0 40px 40px rgba(0,0,0,.55))}
.glow{position:absolute;inset:18%;background:radial-gradient(circle,rgba(184,137,45,.22),transparent 65%);transform:translateZ(-120px) scale(1.6)}
@keyframes float{50%{translate:0 -12px}}
.btn.ghost{background:none;color:var(--paper);border:1px solid #5a5850;margin-left:12px}
.btn.ghost:hover{border-color:var(--gold);background:none}
@media (prefers-reduced-motion:reduce){.orb{animation:none;transition:none}}
@media (max-width:820px){.stage{opacity:.3;width:80vw;right:-25vw}.btn.ghost{margin:12px 0 0}}

header .wrap{gap:16px;flex-wrap:wrap}
.logo img{display:block;height:36px;width:auto}
footer .logo img{height:32px}
