
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@500;600&display=swap');

:root{
 --bg:#1a050c; --bg2:#270813; --panel:#310b17; --cream:#f6eee3;
 --gold:#c9a46a; --muted:#b7a8a0; --line:rgba(246,238,227,.18);
 --ease:cubic-bezier(.16,1,.3,1); --pad:clamp(22px,4.5vw,70px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--cream);font-family:"DM Sans",Arial,sans-serif;font-size:18px;line-height:1.55;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;background:radial-gradient(circle at 50% 20%,rgba(255,190,130,.035),transparent 35%);mix-blend-mode:screen}
a{color:inherit;text-decoration:none}
.container{width:min(1450px,calc(100% - 2*var(--pad)));margin:auto}
.header{position:fixed;z-index:50;top:0;left:0;width:100%;border-bottom:1px solid rgba(246,238,227,.08);background:rgba(26,5,12,.62);backdrop-filter:blur(22px)}
.header-inner{height:78px;width:min(1450px,calc(100% - 2*var(--pad)));margin:auto;display:flex;align-items:center}
.brand{font-weight:700;letter-spacing:.2em;font-size:15px}.brand span{font-weight:400;color:#9d8987;font-size:10px;letter-spacing:.3em;margin-left:8px}
.nav{display:flex;gap:30px;margin-left:auto;margin-right:35px;font-size:13px;color:#d7cbc3}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.45s var(--ease)}.nav a:hover:after{width:100%}
.header-btn,.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(246,238,227,.45);border-radius:999px;padding:12px 19px;font-size:13px;font-weight:600;transition:transform .45s var(--ease),background .45s,color .45s,border-color .45s}
.header-btn:hover,.btn:hover{transform:translateY(-4px);background:var(--cream);color:var(--bg);border-color:var(--cream)}
.btn.gold{border-color:var(--gold);background:var(--gold);color:#1a050c}.btn.gold:hover{background:#e1bf89;border-color:#e1bf89}
.menu{display:none;margin-left:auto;border:0;background:none;color:var(--cream);font-size:23px}
.mobile-nav{display:none}

.hero{min-height:100vh;padding-top:125px;padding-bottom:55px;position:relative;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);align-items:end;gap:35px;isolation:isolate}
.hero:before{content:"";position:absolute;z-index:-2;width:70vw;height:70vw;right:-28vw;top:5vh;border:1px solid rgba(201,164,106,.14);border-radius:50%;animation:slowSpin 35s linear infinite}
.hero:after{content:"";position:absolute;z-index:-3;width:45vw;height:45vw;right:-9vw;top:27vh;border-radius:50%;background:radial-gradient(circle,rgba(202,105,127,.17),transparent 62%);filter:blur(18px);animation:breath 7s ease-in-out infinite}
@keyframes slowSpin{to{transform:rotate(360deg)}}@keyframes breath{50%{transform:scale(1.1);opacity:.65}}
.kicker{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#9e8b87;margin-bottom:24px}
.hero h1{font-size:clamp(76px,10.3vw,168px);line-height:.78;letter-spacing:-.078em;margin:0;max-width:980px}
.serif{font-family:"Playfair Display",Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.045em}
.hero-meta{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-top:48px}.hero-copy{max-width:590px;font-size:clamp(19px,1.7vw,25px);line-height:1.34;color:#c8bbb4}.actions{display:flex;gap:10px;flex-wrap:wrap}
.visual{height:540px;position:relative;overflow:hidden;background:linear-gradient(145deg,#260812,#0d0206);border:1px solid rgba(246,238,227,.11)}
.visual .glow{position:absolute;width:62%;aspect-ratio:1;border-radius:50%;left:19%;top:17%;background:radial-gradient(circle,#ffd9bd 0 4%,#ff6d8e 7%,#9a2c49 21%,rgba(83,12,30,.4) 48%,transparent 70%);filter:blur(5px);animation:float 6s ease-in-out infinite}
.visual .ring{position:absolute;border:1px solid rgba(246,238,227,.55);border-radius:50%;width:64%;aspect-ratio:1;left:18%;top:18%;animation:slowSpin 18s linear infinite}
.visual .ring.r2{width:78%;left:11%;top:11%;border-color:rgba(201,164,106,.28);animation-direction:reverse;animation-duration:27s}
.visual .ring.r3{width:42%;left:29%;top:29%;border-color:rgba(255,255,255,.24);animation-duration:12s}
.visual .n{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(180px,20vw,300px);font-weight:700;letter-spacing:-.12em;color:rgba(255,245,235,.82);text-shadow:0 0 55px rgba(255,111,145,.35);animation:nFloat 5s ease-in-out infinite}
.visual .label{position:absolute;left:20px;bottom:18px;font-size:9px;letter-spacing:.2em;color:#b7a7a0;text-transform:uppercase}.visual .index{position:absolute;right:20px;top:18px;font-size:9px;letter-spacing:.2em;color:#b7a7a0}
@keyframes float{50%{transform:translateY(-18px) scale(1.04)}}@keyframes nFloat{50%{transform:translateY(-8px) scale(1.02)}}

.ticker{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;background:#210711;white-space:nowrap}.ticker-track{display:inline-flex;gap:55px;min-width:max-content;animation:marquee 24s linear infinite;font-size:11px;text-transform:uppercase;letter-spacing:.22em;color:#d6c9c2}.ticker-track b{color:var(--gold)}@keyframes marquee{to{transform:translateX(-50%)}}

.section{padding:160px 0;position:relative}.section.alt{background:var(--panel)}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:#9f8d87}
.statement{display:grid;grid-template-columns:150px 1fr;gap:70px}.statement h2{font-size:clamp(54px,7.5vw,112px);line-height:.86;letter-spacing:-.072em;margin:0;max-width:1100px}.statement p{font-size:21px;line-height:1.45;color:#c0b2aa;max-width:650px;margin:42px 0 0}

.section-head{display:grid;grid-template-columns:1fr .7fr;align-items:end;gap:60px}.section-head h2{font-size:clamp(60px,8vw,122px);line-height:.8;letter-spacing:-.075em;margin:15px 0 0}.section-head p{font-size:20px;color:#bbaea7;max-width:560px;margin:0}
.service-list{margin-top:80px;border-top:1px solid rgba(246,238,227,.42)}.service{position:relative;display:grid;grid-template-columns:70px 1fr 1.1fr 35px;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .55s var(--ease),background .55s}.service:before{content:"";position:absolute;inset:0 -25px;background:rgba(255,255,255,.035);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease);z-index:-1}.service:hover{padding-left:25px;padding-right:25px}.service:hover:before{transform:scaleX(1)}.service-num{font-size:11px;color:#8e7b77}.service h3{font-size:clamp(24px,2.5vw,37px);letter-spacing:-.04em;margin:0}.service p{font-size:17px;color:#ad9e97;margin:0}.arrow{font-size:25px;transition:.45s var(--ease)}.service:hover .arrow{transform:translate(7px,-7px);color:var(--gold)}

.work-grid{margin-top:75px;display:grid;grid-template-columns:1.2fr .8fr;gap:18px}.case{position:relative;min-height:500px;padding:34px;border:1px solid rgba(246,238,227,.16);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;background:#260812;transition:transform .65s var(--ease),border-color .65s}.case.small{min-height:300px}.case:hover{transform:translateY(-10px);border-color:rgba(201,164,106,.5)}.case-art{position:absolute;inset:0;z-index:0;transition:transform 1s var(--ease)}.case:hover .case-art{transform:scale(1.07)}.mama{background:radial-gradient(circle at 65% 30%,#d9b17e,#7d273b 38%,#230711 80%)}.derma{background:linear-gradient(135deg,#efe4d6,#8e3d50 48%,#240711)}.caff{background:radial-gradient(circle at 35% 40%,#e3a56d,#713244 37%,#18040a 82%)}.hyp{background:linear-gradient(145deg,#7e3e4d,#2c0a15 50%,#080105)}.case-top,.case-bottom{position:relative;z-index:1}.case-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#d2c3bc}.case h3{font-size:clamp(42px,5.5vw,78px);line-height:.85;letter-spacing:-.06em;margin:0}.case p{font-size:15px;color:#d0c1ba;max-width:390px;margin:10px 0 0}

.process{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.process h2{font-size:clamp(55px,7.5vw,110px);line-height:.82;letter-spacing:-.07em;margin:15px 0}.process-intro{font-size:20px;color:#b8aaa3;max-width:540px}.steps{margin-top:60px;border-top:1px solid rgba(246,238,227,.4)}.step{display:grid;grid-template-columns:70px 1fr 1fr;gap:30px;padding:28px 0;border-bottom:1px solid var(--line)}.step b{font-size:11px;color:#927d78}.step h3{font-size:28px;letter-spacing:-.04em;margin:0}.step p{font-size:17px;color:#ad9e97;margin:0}

.dark-band{background:#090104;padding:110px 0;border-top:1px solid rgba(246,238,227,.08);border-bottom:1px solid rgba(246,238,227,.08)}.dark-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.dark-inner h2{font-size:clamp(58px,8vw,122px);line-height:.82;letter-spacing:-.075em;margin:15px 0}.dark-inner p{font-size:21px;color:#b7aaa4;max-width:540px}

.page-hero{padding:170px 0 100px}.page-hero h1{font-size:clamp(72px,10vw,150px);line-height:.8;letter-spacing:-.078em;margin:18px 0 0;max-width:1200px}.page-hero p{font-size:22px;line-height:1.4;color:#b7aaa4;max-width:680px;margin-top:40px}
.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-grid h2{font-size:clamp(52px,6.5vw,96px);line-height:.84;letter-spacing:-.07em;margin:15px 0}.contact-grid>div>p{color:#b7aaa4;font-size:19px;max-width:470px}.form{border-top:1px solid rgba(246,238,227,.45)}.field{padding:20px 0;border-bottom:1px solid var(--line)}.field label{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#9e8c86;margin-bottom:7px}.field input,.field textarea{width:100%;border:0;outline:0;background:transparent;color:var(--cream);font:inherit;font-size:19px}.field textarea{min-height:145px;resize:vertical}.form .btn{margin-top:25px}
.footer{padding:36px 0;background:#090104;border-top:1px solid rgba(246,238,227,.1)}.footer-row{display:flex;justify-content:space-between;gap:30px;align-items:end}.footer p{font-size:12px;color:#8f807b;margin:0}

.reveal{opacity:0;transform:translateY(45px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.visible{opacity:1;transform:none}
.cursor-glow{position:fixed;z-index:90;width:260px;height:260px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(201,164,106,.09),transparent 68%);transform:translate(-50%,-50%);mix-blend-mode:screen;opacity:0;transition:opacity .3s}
[data-parallax]{transition:transform .2s linear}

@media(max-width:950px){
 .nav,.header-btn{display:none}.menu{display:block}.mobile-nav{position:absolute;top:78px;left:0;width:100%;padding:25px var(--pad);background:rgba(26,5,12,.96);border-bottom:1px solid var(--line);flex-direction:column;gap:18px}.mobile-nav.open{display:flex}
 .hero{grid-template-columns:1fr;padding-top:120px}.visual{height:420px}.hero-meta{display:grid;grid-template-columns:1fr;gap:25px}
 .statement,.process,.dark-inner,.contact-grid,.section-head{grid-template-columns:1fr;gap:35px}.statement h2{max-width:900px}
 .work-grid{grid-template-columns:1fr}.case.small{min-height:380px}
 .section{padding:110px 0}
}
@media(max-width:560px){
 body{font-size:17px}.hero h1{font-size:62px}.visual{height:310px}.visual .n{font-size:190px}.hero-copy{font-size:19px}.section{padding:85px 0}.section-head h2{font-size:56px}.service{grid-template-columns:45px 1fr 25px;gap:16px}.service p{grid-column:2/4;font-size:16px}.service:hover{padding-left:15px}.step{grid-template-columns:45px 1fr;gap:18px}.step p{grid-column:2}.page-hero{padding-top:130px}.page-hero h1{font-size:62px}.page-hero p{font-size:19px}.footer-row{display:block}.footer p{margin-top:18px}
}
