:root{
  --black:#0d0d0d;
  --black-2:#151515;
  --graphite:#202020;
  --gold:#c79a49;
  --gold-2:#e0b665;
  --cream:#f5f1e8;
  --off:#fbfaf7;
  --text:#1b1b1b;
  --muted:#77736b;
  --line:rgba(199,154,73,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,system-ui,sans-serif;
  background:var(--off);
  color:var(--text);
  overflow-x:hidden;
}
body::selection{background:var(--gold);color:#111}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(250,248,243,.86);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(0,0,0,.06);
  transition:.35s ease;
}
.site-header.scrolled{box-shadow:0 10px 30px rgba(0,0,0,.08)}
.nav-wrap{height:86px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center}
.brand img{width:210px;max-height:68px;object-fit:contain;object-position:left center}
.main-nav{display:flex;gap:28px;margin-left:auto}
.main-nav a,.footer a{color:#222;text-decoration:none;font-size:14px}
.main-nav a{position:relative}
.main-nav a::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:1px;background:var(--gold);transition:.25s}
.main-nav a:hover::after{width:100%}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 22px;border-radius:2px;
  text-decoration:none;border:1px solid transparent;
  font-weight:600;font-size:14px;cursor:pointer;transition:.3s;
}
.btn-gold{
  color:#15110a;
  background:linear-gradient(135deg,#e6bf72,#b77d24);
  box-shadow:0 10px 30px rgba(199,154,73,.24);
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(199,154,73,.34)}
.btn-outline{border-color:rgba(224,182,101,.55);color:#f7f2e9;background:rgba(255,255,255,.02)}
.btn-outline:hover{background:rgba(224,182,101,.08)}
.nav-cta{white-space:nowrap}
.nav-toggle{display:none;background:none;border:0;width:42px;height:42px}
.nav-toggle span{display:block;width:22px;height:1px;background:#111;margin:6px auto}

.section-dark{background:
 radial-gradient(circle at 75% 20%,rgba(199,154,73,.11),transparent 28%),
 linear-gradient(135deg,#0c0c0c,#171717 55%,#0e0e0e);color:white}
.section-light{background:var(--off)}
.section-pad{padding:110px 0}
.hero{min-height:820px;padding-top:86px;position:relative;overflow:hidden}
.hero::before{
 content:"";position:absolute;inset:0;
 background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
 background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent);
}
.hero-grid{min-height:720px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px;position:relative;z-index:2}
.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--gold-2);font-weight:600;margin:0 0 24px}
.eyebrow.dark{color:#9b6e2e}
h1,h2,h3{font-family:"Cormorant Garamond",serif;margin-top:0}
h1{font-size:clamp(56px,6.2vw,88px);line-height:.92;letter-spacing:-.035em;margin-bottom:26px;font-weight:600}
h1 span,h2 span{color:var(--gold-2)}
.lead{font-size:18px;line-height:1.75;color:#d5d0c8;max-width:650px}
.hero-actions{display:flex;gap:14px;margin-top:34px}
.hero-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:54px}
.hero-metrics div{padding-top:18px;border-top:1px solid var(--line)}
.hero-metrics strong{display:block;color:var(--gold-2);font-family:"Cormorant Garamond";font-size:28px}
.hero-metrics span{font-size:12px;color:#c8c3ba;line-height:1.4}
.hero-visual{position:relative;height:560px;display:flex;align-items:center;justify-content:center;perspective:1100px}
.hero-panel{
 width:min(470px,92%);aspect-ratio:.9;
 border:1px solid rgba(224,182,101,.32);
 background:linear-gradient(145deg,#252525,#0e0e0e);
 box-shadow:0 40px 100px rgba(0,0,0,.46),inset 0 0 50px rgba(255,255,255,.02);
 display:flex;align-items:center;justify-content:center;
 transform:rotateY(-8deg) rotateX(2deg);
 position:relative;overflow:hidden;
}
.hero-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(224,182,101,.08),transparent 60%);transform:translateX(-120%);animation:shine 6s infinite}
.hero-panel img{width:82%;filter:drop-shadow(0 25px 30px rgba(0,0,0,.4))}
.hero-orbit{position:absolute;width:420px;height:420px;border:1px solid rgba(199,154,73,.12);border-radius:50%;animation:spin 20s linear infinite}
.hero-orbit::before,.hero-orbit::after{content:"";position:absolute;border-radius:50%;background:var(--gold)}
.hero-orbit::before{width:8px;height:8px;top:28px;left:75px}
.hero-orbit::after{width:5px;height:5px;right:20px;bottom:95px}
.gold-line{position:absolute;background:linear-gradient(90deg,transparent,var(--gold),transparent);height:1px;width:180px;opacity:.7}
.l1{top:90px;right:-30px}.l2{bottom:85px;left:-45px}
.scroll-indicator{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.18em;color:#b9b2a7}
.scroll-indicator span{color:var(--gold);font-size:18px;display:inline-block;margin-left:8px;animation:bob 1.5s infinite}

.pillars{padding:0 0 30px}
.cards-three{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;transform:translateY(-28px);position:relative;z-index:5}
.glass-card{
 background:rgba(255,255,255,.94);padding:34px;border:1px solid rgba(0,0,0,.05);
 box-shadow:0 14px 38px rgba(0,0,0,.06);transition:.35s
}
.glass-card:hover{transform:translateY(-8px);box-shadow:0 22px 50px rgba(0,0,0,.1);border-color:rgba(199,154,73,.35)}
.icon{font-size:28px;color:#aa7628;margin-bottom:18px}
.glass-card h3,.area-card h3,.article-card h3{font-size:27px;margin-bottom:10px}
.glass-card p,.area-card p,.article-card p,.intro p,.about-copy p,.contact p{color:#6f6a62;line-height:1.7}

.split-heading{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:end;margin-bottom:56px}
h2{font-size:clamp(44px,5vw,70px);line-height:.98;letter-spacing:-.025em;margin-bottom:18px}
.intro{padding-bottom:6px}
.demo-tag{display:inline-block;margin-top:8px;padding:7px 10px;border:1px solid rgba(155,110,46,.25);font-size:11px;color:#8d6a35;background:#fffaf0}
.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.area-card{background:#fff;padding:34px;min-height:250px;border:1px solid rgba(0,0,0,.055);position:relative;overflow:hidden;transition:.35s}
.area-card::before{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:.35s}
.area-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px rgba(0,0,0,.07)}
.area-card:hover::before{transform:scaleX(1)}
.area-card>span{color:var(--gold);font-size:12px;letter-spacing:.12em}
.area-card a,.article-card a{color:#8f6225;text-decoration:none;font-weight:600;font-size:13px}

.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}
.portrait-placeholder{
 min-height:540px;border:1px solid rgba(224,182,101,.3);
 background:
 linear-gradient(145deg,rgba(224,182,101,.09),transparent 40%),
 repeating-linear-gradient(135deg,#1f1f1f 0,#1f1f1f 12px,#191919 12px,#191919 24px);
 display:flex;align-items:center;justify-content:center;flex-direction:column;color:#d8bd8b;text-align:center;position:relative;
}
.portrait-placeholder::after{content:"LM";position:absolute;font-family:"Cormorant Garamond";font-size:190px;color:rgba(255,255,255,.025)}
.portrait-placeholder span{letter-spacing:.18em;font-size:12px}
.portrait-placeholder small{margin-top:10px;color:#837d73}
.about-copy p{color:#cfc9bf}
.about-list{margin-top:34px}
.about-list div{display:grid;grid-template-columns:56px 1fr;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.1)}
.about-list b{color:var(--gold)}
.about-list span{color:#eee8de}

.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.article-card{background:#fff;border:1px solid rgba(0,0,0,.05);padding-bottom:28px;transition:.35s}
.article-card:hover{transform:translateY(-7px);box-shadow:0 18px 42px rgba(0,0,0,.07)}
.article-cover{height:230px;margin-bottom:24px}
.article-card small,.article-card h3,.article-card a{margin-left:26px;margin-right:26px}
.article-card small{color:#9b6e2e;letter-spacing:.12em}
.gold-noise{background:
 radial-gradient(circle at 70% 30%,rgba(255,220,145,.55),transparent 22%),
 linear-gradient(135deg,#171717 10%,#9a6724 50%,#1a1a1a 100%)}
.lines{background:repeating-linear-gradient(110deg,#1b1b1b 0,#1b1b1b 18px,#c79a49 18px,#c79a49 20px,#222 20px,#222 42px)}
.blocks{background:linear-gradient(135deg,#d9c49d 0 35%,#262626 35% 58%,#ad7b33 58% 74%,#171717 74%)}

.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}
.muted{color:#a8a197;line-height:1.7}
.accordion{border-top:1px solid rgba(255,255,255,.12)}
.faq-item{width:100%;background:none;border:0;border-bottom:1px solid rgba(255,255,255,.12);color:#fff;text-align:left;padding:24px 4px;display:flex;justify-content:space-between;font-size:16px;cursor:pointer}
.faq-item b{color:var(--gold);font-size:24px;transition:.25s}
.faq-item.active b{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-answer p{color:#bdb6aa;line-height:1.7;padding:0 4px 22px;margin:0}

.contact{padding:100px 0}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{font-size:12px;color:#6e665b;letter-spacing:.04em}
.contact-form input,.contact-form textarea{
 width:100%;margin-top:8px;border:1px solid #ddd5c6;background:white;padding:15px;font:inherit;outline:none;
}
.contact-form textarea{resize:vertical}
.contact-form label:nth-child(4){grid-column:1/-1}
.contact-form button{justify-self:start}

.footer{padding:40px 0}
.footer-grid{display:grid;grid-template-columns:260px 1fr auto;align-items:center;gap:40px}
.footer img{width:220px;filter:brightness(.95)}
.footer p{margin:5px 0;color:#9e978e;font-size:12px}
.footer-dev{font-size:12px;color:#aaa}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.reveal.visible{opacity:1;transform:none}
.cursor-glow{
 position:fixed;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:-1;
 background:radial-gradient(circle,rgba(199,154,73,.07),transparent 65%);
 transform:translate(-50%,-50%);left:50%;top:50%
}

@keyframes shine{0%,60%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes bob{50%{transform:translateY(5px)}}

@media (max-width:980px){
 .main-nav,.nav-cta{display:none}
 .nav-toggle{display:block;margin-left:auto}
 .main-nav.open{
   display:flex;position:absolute;top:86px;left:20px;right:20px;background:#fbfaf7;
   flex-direction:column;padding:24px;gap:20px;box-shadow:0 20px 50px rgba(0,0,0,.12)
 }
 .hero-grid,.about-grid,.faq-grid,.contact-grid,.split-heading{grid-template-columns:1fr}
 .hero{min-height:auto}
 .hero-grid{padding:90px 0 120px}
 .hero-visual{height:430px}
 .cards-three,.area-grid,.article-grid{grid-template-columns:1fr 1fr}
 .footer-grid{grid-template-columns:1fr}
 .contact-form{grid-template-columns:1fr}
 .contact-form label:nth-child(4){grid-column:auto}
}
@media (max-width:640px){
 .container{width:min(100% - 28px,1180px)}
 .nav-wrap{height:74px}
 .brand img{width:165px}
 .hero{padding-top:74px}
 h1{font-size:52px}
 h2{font-size:44px}
 .hero-grid{gap:28px;padding-top:70px}
 .hero-actions{flex-direction:column;align-items:stretch}
 .hero-metrics{grid-template-columns:1fr}
 .hero-visual{height:360px}
 .hero-panel{width:90%}
 .cards-three,.area-grid,.article-grid{grid-template-columns:1fr}
 .cards-three{transform:translateY(-16px)}
 .section-pad{padding:78px 0}
 .split-heading{gap:24px}
 .about-grid{gap:38px}
 .portrait-placeholder{min-height:360px}
 .faq-grid,.contact-grid{gap:38px}
 .contact{padding:78px 0}
 .footer img{width:190px}
}
