/* Nuvè Brand Styles */
:root{
  --bg:#0d0c10;
  --text:#e9e9ee;
  --muted:#b9b9c2;
  --card:#15131a;
  --glass:rgba(255,255,255,0.06);
  --accent1:#8a2be2; /* purple */
  --accent2:#21d07a; /* green */
  --accent3:#d4a83a; /* gold */
  --radius:14px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Manrope,system-ui,-apple-system,Segoe UI,Roboto,Arial}
h1,h2,h3{font-family:'Playfair Display',serif;letter-spacing:.2px;margin:0 0 .4rem}
h1{font-size:clamp(2.2rem,5vw,4rem)}
h2{font-size:clamp(1.6rem,3.2vw,2.4rem)}
h3{font-size:1.2rem}
p{line-height:1.7;color:var(--muted)}
a{color:var(--text);text-decoration:none}
.small{font-size:.9rem;color:var(--muted)}

.container{width:min(1100px,90%);margin:0 auto}
.section{padding:72px 0}
.section.alt{background:#0f0e13}
.grid{display:grid;gap:28px}
.grid.two{grid-template-columns:1.2fr 1fr}
.grid.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.grid.two,.grid.three{grid-template-columns:1fr}}

/* Nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(13,12,16,.6);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.06)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand img{width:30px;height:30px;border-radius:50%}
.nav a{margin:0 8px;color:#dcdcf1}
.nav .btn.small{padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.18)}

/* Hero */
.hero{position:relative;padding:120px 0 90px;overflow:hidden;text-align:center}
.hero .orb{position:absolute;inset:-10% -10% auto -10%;height:80vmin;filter:blur(60px);pointer-events:none;
  background:radial-gradient( circle at 30% 30%, rgba(138,43,226,.4), transparent 50% ),
             radial-gradient( circle at 70% 60%, rgba(33,208,122,.35), transparent 55% ),
             radial-gradient( circle at 50% 50%, rgba(212,168,58,.25), transparent 60% );}
.hero-logo{width:min(180px,50vw);border-radius:20px;box-shadow:0 10px 40px rgba(0,0,0,.5);margin-bottom:16px}
.lead{max-width:700px;margin:10px auto 24px}

/* Cards & Buttons */
.card{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:20px}
.glass{background:var(--glass);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px)}
.btn{display:inline-block;padding:12px 20px;border-radius:12px;border:none;cursor:pointer;transition:.2s ease;background:#222;color:var(--text)}
.btn.primary{background:linear-gradient(135deg,var(--accent2),var(--accent1),var(--accent3));color:#0d0c10;font-weight:700}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.25)}
.btn:hover{transform:translateY(-1px);opacity:.95}

/* Product mocks */
.product .mock{height:140px;border-radius:12px;margin-bottom:12px;background:
  radial-gradient( circle at 30% 30%, rgba(138,43,226,.4), transparent 40% ),
  radial-gradient( circle at 70% 60%, rgba(33,208,122,.35), transparent 45% ),
  radial-gradient( circle at 50% 50%, rgba(212,168,58,.25), transparent 55% ),
  #121016; border:1px solid rgba(255,255,255,.06)}
.pill{display:inline-block;font-size:.75rem;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);margin-bottom:8px}

.ticks{list-style:none;padding:0;margin:0}
.ticks li{position:relative;padding-left:28px;margin:10px 0}
.ticks li:before{content:'✓';position:absolute;left:0;top:0;color:var(--accent2)}

.footer{padding:40px 0;border-top:1px solid rgba(255,255,255,.06);text-align:center}

/* Age Gate */
.age-gate{position:fixed;inset:0;background:rgba(0,0,0,.75);display:flex;align-items:center;justify-content:center;z-index:100;backdrop-filter:blur(4px)}
.age-card{background:#121016;border:1px solid rgba(255,255,255,.1);padding:28px;border-radius:16px;text-align:center;width:min(420px,92%)}
.age-logo{width:64px;height:64px;border-radius:12px;margin-bottom:10px}
.age-actions{display:flex;gap:12px;justify-content:center;margin-top:10px}

/* Subtle 3D title styling */
h1, .brand span{
  background:linear-gradient(135deg,var(--accent2),var(--accent1),var(--accent3));
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
