:root{
    --bg:#050505;
    --panel:#101010;
    --panel2:#16120b;
    --gold:#d4af37;
    --gold2:#ffd86b;
    --red:#b80000;
    --red2:#ff3131;
    --text:#ffffff;
    --muted:#b8b8b8;
    --border:rgba(212,175,55,.25);
    --shadow:0 30px 90px rgba(0,0,0,.55);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    font-family:Arial,Helvetica,sans-serif;
    background:var(--bg);
    color:var(--text);
    overflow-x:hidden;
}
a{color:inherit}
.site-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(circle at top,#341010 0,#050505 45%,#000 100%)}
.site-bg span{position:absolute;width:360px;height:360px;border-radius:50%;filter:blur(65px);opacity:.18}
.site-bg span:nth-child(1){background:var(--red);top:8%;left:4%}
.site-bg span:nth-child(2){background:var(--gold);right:5%;top:22%}
.site-bg span:nth-child(3){background:var(--red2);bottom:3%;left:35%}
.topbar{
    position:sticky;top:0;z-index:99;
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 5%;
    background:rgba(5,5,5,.78);
    backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(255,255,255,.08);
}
.topbar.scrolled{box-shadow:0 20px 60px rgba(0,0,0,.55)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{
    width:48px;height:48px;border-radius:16px;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold),#7b5500);
    color:#050505;font-weight:900;letter-spacing:-1px;
    box-shadow:0 0 28px rgba(212,175,55,.35);
}
.brand strong{display:block;font-size:20px}
.brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.main-nav{display:flex;align-items:center;gap:22px}
.main-nav a{text-decoration:none;color:#eee;font-weight:700;font-size:14px}
.main-nav a:hover{color:var(--gold2)}
.nav-login{opacity:.85}
.nav-cta{
    padding:12px 18px;border-radius:999px;
    background:linear-gradient(135deg,var(--gold),var(--gold2));
    color:#050505!important;
}
.menu-toggle{display:none;background:none;border:0;width:42px}
.menu-toggle span{display:block;height:3px;background:#fff;margin:7px 0;border-radius:3px}
.section{padding:90px 5%}
.hero{
    min-height:780px;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;
    padding-top:95px;
}
.eyebrow{
    display:inline-flex;color:var(--gold2);letter-spacing:2px;text-transform:uppercase;
    font-size:12px;font-weight:900;margin-bottom:16px;
}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(46px,7vw,96px);line-height:.95;margin-bottom:24px;letter-spacing:-4px}
h2{font-size:clamp(32px,4.6vw,64px);line-height:1;margin-bottom:18px;letter-spacing:-2px}
h3{font-size:24px;margin-bottom:12px}
p{color:var(--muted);line-height:1.7;font-size:17px}
.hero-subtitle{font-size:21px;max-width:720px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin:34px 0}
.btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:15px 24px;border-radius:999px;text-decoration:none;
    border:1px solid transparent;font-weight:900;cursor:pointer;
    transition:.25s transform,.25s box-shadow,.25s border;
}
.btn:hover{transform:translateY(-3px)}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#050505;box-shadow:0 18px 40px rgba(212,175,55,.22)}
.btn-outline{border-color:var(--border);color:#fff;background:rgba(255,255,255,.04)}
.btn-outline:hover{border-color:var(--gold)}
.trust-strip{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.trust-strip span{
    border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);
    padding:12px 16px;border-radius:16px;color:var(--muted)
}
.trust-strip strong{color:#fff}
.hero-visual{min-height:500px;position:relative;display:grid;place-items:center}
.vinyl{
    width:min(430px,78vw);height:min(430px,78vw);border-radius:50%;
    background:repeating-radial-gradient(circle,#090909 0,#090909 10px,#161616 11px,#161616 14px);
    border:2px solid rgba(212,175,55,.35);
    box-shadow:var(--shadow),0 0 80px rgba(184,0,0,.25);
    animation:spin 16s linear infinite;
    position:relative;
}
.vinyl:before{content:"";position:absolute;inset:72px;border-radius:50%;border:1px solid rgba(255,255,255,.08)}
.vinyl-center{
    position:absolute;inset:38%;border-radius:50%;display:grid;place-items:center;
    background:linear-gradient(135deg,var(--gold),#6e4700);color:#000;font-weight:900;font-size:34px;
}
.wave-bars{position:absolute;bottom:30px;display:flex;gap:9px;align-items:end}
.wave-bars i{width:12px;height:70px;border-radius:99px;background:linear-gradient(var(--gold2),var(--red));animation:wave 1.1s infinite ease-in-out}
.wave-bars i:nth-child(2){animation-delay:.1s}.wave-bars i:nth-child(3){animation-delay:.2s}.wave-bars i:nth-child(4){animation-delay:.3s}.wave-bars i:nth-child(5){animation-delay:.4s}.wave-bars i:nth-child(6){animation-delay:.5s}.wave-bars i:nth-child(7){animation-delay:.6s}.wave-bars i:nth-child(8){animation-delay:.7s}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding-top:20px}
.stat-card,.feature-card,.price-card,.step,.glass-panel,.auth-card,.form-card{
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.03));
    border:1px solid rgba(255,255,255,.1);
    border-radius:28px;padding:28px;box-shadow:var(--shadow);
}
.stat-card strong{display:block;font-size:42px;color:var(--gold2)}
.stat-card span{color:var(--muted);font-weight:700}
.section-head{max-width:850px;margin-bottom:36px}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.feature-card{transition:.25s transform,.25s border}
.feature-card:hover{transform:translateY(-8px);border-color:var(--border)}
.icon{font-size:38px;margin-bottom:18px}
.store-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
}
.store-grid span{
    padding:22px;border-radius:20px;border:1px solid rgba(255,255,255,.1);
    background:rgba(255,255,255,.05);text-align:center;font-weight:900;
}
.steps,.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.step b{color:var(--gold2);font-size:34px}
.pricing-grid{grid-template-columns:repeat(3,1fr)}
.price-card{position:relative}
.price-card.featured{border-color:var(--gold);transform:scale(1.03)}
.badge{position:absolute;top:18px;right:18px;background:var(--red);padding:8px 12px;border-radius:999px;font-weight:900;font-size:12px}
.price{font-size:52px;font-weight:900;margin:18px 0;color:#fff}
.price span{font-size:15px;color:var(--muted)}
.price-card ul{list-style:none;padding:0;margin:24px 0}
.price-card li{padding:10px 0;color:#ddd;border-bottom:1px solid rgba(255,255,255,.08)}
.price-card li:before{content:"✓";color:var(--gold2);font-weight:900;margin-right:8px}
.cta{text-align:center;margin:40px 5%;border-radius:36px;background:linear-gradient(135deg,rgba(184,0,0,.35),rgba(212,175,55,.18));border:1px solid var(--border)}
.page-hero{padding:120px 5% 60px;text-align:center}
.page-hero p{max-width:780px;margin:auto}
.compare table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.04);border-radius:22px;overflow:hidden}
.compare th,.compare td{padding:18px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
.compare th{color:var(--gold2)}
.faq-list{max-width:900px;margin:auto}
.faq-item{border:1px solid rgba(255,255,255,.1);border-radius:22px;margin-bottom:14px;overflow:hidden;background:rgba(255,255,255,.05)}
.faq-item button{width:100%;padding:22px;background:none;border:0;color:#fff;font-weight:900;font-size:18px;text-align:left;cursor:pointer}
.faq-item div{display:none;padding:0 22px 22px}
.faq-item.active div{display:block}
.split,.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.form-card label,.auth-card label{display:block;color:#fff;font-weight:800;margin-bottom:16px}
input,textarea,select{
    display:block;width:100%;margin-top:8px;border-radius:16px;border:1px solid rgba(255,255,255,.13);
    background:#080808;color:#fff;padding:15px;font-size:16px;outline:none;
}
input:focus,textarea:focus,select:focus{border-color:var(--gold)}
.auth-page{min-height:720px;display:grid;place-items:center;padding:80px 5%}
.auth-card{width:min(520px,100%)}
.auth-card h1{font-size:38px;letter-spacing:-1px}
.auth-card a{color:var(--gold2)}
.password-meter{height:8px;background:#222;border-radius:99px;overflow:hidden;margin:-6px 0 18px}
.password-meter span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--red),var(--gold));transition:.25s}
.legal{max-width:900px;margin:auto}
.footer{padding:60px 5% 25px;background:#030303;border-top:1px solid rgba(255,255,255,.08)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}
.footer-brand{font-size:26px;font-weight:900;color:var(--gold2);margin-bottom:12px}
.footer a{display:block;text-decoration:none;color:var(--muted);margin:10px 0}
.footer a:hover{color:var(--gold2)}
.domain{color:var(--gold2);font-weight:900}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;color:#777;font-size:14px}


/* Phase 3B merged auth messages */
.notice{
    background:rgba(25,211,122,.12);
    border:1px solid rgba(25,211,122,.45);
    color:#d9ffe9;
    padding:12px 14px;
    border-radius:14px;
    margin:14px 0;
    font-weight:700;
}
.error{
    background:rgba(216,59,75,.14);
    border:1px solid rgba(216,59,75,.55);
    color:#ffd8dc;
    padding:12px 14px;
    border-radius:14px;
    margin:14px 0;
    font-weight:700;
}
