/* ═══════════════════════════════════════════════
   PLASTIC PEARLS — SHARED STYLES
   ═══════════════════════════════════════════════ */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#0c0e12;--surface:#13161d;
  --glass:rgba(255,255,255,.04);--glass-border:rgba(255,255,255,.07);
  --text:#e4e9f1;--muted:#7d8799;--dim:#4a5263;
  --accent:#7dd3fc;--accent2:#c084fc;--accent-glow:rgba(125,211,252,.15);
  --gold:#f0c674;--rose:#f472b6;--emerald:#34d399;
  --radius:20px;--radius-sm:12px;
  --font-display:'Playfair Display',Georgia,serif;
  --font-body:'DM Sans',system-ui,sans-serif;
}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);color:var(--text);line-height:1.6;
  background:var(--bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block;height:auto}
ul{list-style:none}
.container{max-width:1220px;margin:0 auto;padding:0 28px}

/* AMBIENT BLOBS */
body::before,body::after{
  content:'';position:fixed;border-radius:50%;pointer-events:none;z-index:0;
  filter:blur(120px);opacity:.35;
}
body::before{width:600px;height:600px;top:-15%;right:-8%;background:radial-gradient(circle,rgba(125,211,252,.25),transparent 70%)}
body::after{width:500px;height:500px;bottom:10%;left:-10%;background:radial-gradient(circle,rgba(192,132,252,.2),transparent 70%)}

/* GLASS */
.glass{
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
  border:1px solid var(--glass-border);border-radius:var(--radius);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  transition:border-color .3s,box-shadow .3s;
}
.glass:hover{border-color:rgba(125,211,252,.15);box-shadow:0 0 40px rgba(125,211,252,.06)}

/* NAV */
.nav-wrap{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .4s,backdrop-filter .4s}
.nav-wrap.scrolled{background:rgba(12,14,18,.85);backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:18px 0}
.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:1.05rem;letter-spacing:.3px}
.logo-gem{
  width:36px;height:36px;border-radius:10px;
  background:conic-gradient(from 180deg,var(--accent),var(--accent2),var(--accent));
  box-shadow:0 0 24px var(--accent-glow);
}
.nav-links{display:flex;align-items:center;gap:22px}
.nav-links a{color:var(--muted);font-weight:500;font-size:.88rem;transition:color .3s}
.nav-links a:hover,.nav-links a.active{color:var(--text)}
.nav-cta{
  padding:10px 20px;border-radius:var(--radius-sm);font-weight:700;font-size:.85rem;
  background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0b0f1a;
  box-shadow:0 6px 24px rgba(125,211,252,.25);transition:transform .2s,box-shadow .2s;
}
.nav-cta:hover{transform:translateY(-1px);box-shadow:0 8px 32px rgba(125,211,252,.35)}

/* SECTIONS */
section{padding:80px 0;position:relative;z-index:1}
.section-label{font-size:.68rem;font-weight:700;letter-spacing:.35em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}
.section-title{font-family:var(--font-display);font-size:clamp(1.7rem,3.5vw,2.6rem);font-weight:700;line-height:1.15;margin-bottom:12px}
.section-sub{color:var(--muted);max-width:600px;line-height:1.7}

/* PILLS */
.pill{display:inline-block;font-size:.68rem;padding:5px 12px;border-radius:999px;font-weight:700;letter-spacing:.3px}
.pill-gradient{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0b0f1a}
.pill-gold{background:rgba(240,198,116,.12);border:1px solid rgba(240,198,116,.25);color:var(--gold)}
.pill-rose{background:rgba(244,114,182,.1);border:1px solid rgba(244,114,182,.2);color:var(--rose)}
.pill-emerald{background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.2);color:var(--emerald)}

/* BADGES */
.badges{display:flex;gap:10px;flex-wrap:wrap}
.badge{padding:6px 14px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.4px;background:rgba(125,211,252,.08);border:1px solid rgba(125,211,252,.2);color:var(--accent)}

/* CTA BUTTON */
.cta-btn{
  display:inline-block;padding:14px 28px;border-radius:var(--radius-sm);font-weight:700;font-size:.85rem;
  background:linear-gradient(135deg,var(--accent),var(--accent2));color:#0b0f1a;
  box-shadow:0 6px 24px rgba(125,211,252,.2);transition:transform .2s;white-space:nowrap;
}
.cta-btn:hover{transform:translateY(-2px)}

/* TICKER */
.ticker{padding:20px 0;border-top:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);overflow:hidden;white-space:nowrap;position:relative;z-index:1}
.ticker-track{display:inline-flex;animation:tickerScroll 40s linear infinite}
.ticker-track span{font-family:var(--font-display);font-size:.85rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);padding:0 2rem}
.ticker-track span::after{content:'◆';margin-left:2rem;color:var(--accent);font-size:.45rem;vertical-align:middle}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* FOOTER */
footer{padding:60px 0 24px;border-top:1px solid var(--glass-border);color:var(--muted);font-size:.82rem;position:relative;z-index:1}
.foot-grid{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:28px}
.foot-brand{font-size:1.15rem;font-weight:700;color:var(--text);margin-bottom:10px;display:flex;align-items:center;gap:10px}
.foot-brand .logo-gem{width:28px;height:28px}
footer h5{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
footer li{margin-bottom:8px}
footer a:hover{color:var(--accent)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:40px;padding-top:20px;border-top:1px solid var(--glass-border);font-size:.75rem;color:var(--dim)}

/* SCROLL REVEAL */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}
.reveal.vis{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:1024px){
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .nav-links a:not(.nav-cta){display:none}
  .foot-grid{grid-template-columns:1fr}
}
