:root{
    --bg:#030303;
    --bg2:#080604;
    --card:#100f0c;
    --card2:#18130b;
    --text:#fff8e8;
    --muted:#b9a98a;
    --gold:#d9a441;
    --gold2:#fff0a3;
    --gold3:#8a5a16;
    --red:#d71920;
    --red2:#7b0b11;
    --black:#050505;
    --line:rgba(217,164,65,.26);
    --line-strong:rgba(255,224,134,.45);
    --shadow:0 28px 90px rgba(0,0,0,.72);
    --gold-glow:0 0 28px rgba(217,164,65,.28),0 0 70px rgba(217,164,65,.12);
    --red-glow:0 0 34px rgba(215,25,32,.25);
    --radius:24px;
}

*{box-sizing:border-box}

body{
    margin:0;
    min-height:100vh;
    color:var(--text);
    font-family:Inter,Arial,Helvetica,sans-serif;
    background:
        radial-gradient(circle at 50% -10%,rgba(217,164,65,.18),transparent 34%),
        radial-gradient(circle at 80% 16%,rgba(215,25,32,.14),transparent 26%),
        linear-gradient(180deg,#090806 0%,#030303 44%,#000 100%);
}

a{color:inherit;text-decoration:none}
p{line-height:1.65}

.site-nav{
    position:sticky;
    top:0;
    z-index:50;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:18px 5vw;
    background:rgba(3,3,3,.86);
    backdrop-filter:blur(18px);
    border-bottom:1px solid var(--line);
    box-shadow:0 16px 44px rgba(0,0,0,.45);
}

.site-brand{
    display:flex;
    align-items:center;
    gap:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--gold2);
    text-shadow:0 0 18px rgba(217,164,65,.28);
}

.brand-mark{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border-radius:13px;
    background:linear-gradient(135deg,#2a1b06 0%,var(--gold) 42%,var(--gold2) 52%,#9b681c 100%);
    color:#090604;
    border:1px solid rgba(255,240,163,.65);
    box-shadow:var(--gold-glow);
}

.site-links{
    display:flex;
    align-items:center;
    gap:28px;
    color:#ead8af;
    font-weight:800;
}

.site-links a:hover{color:var(--gold2)}

.nav-pill,.btn-primary{
    background:linear-gradient(135deg,#5c070b 0%,var(--red) 40%,#ff343b 52%,var(--red2) 100%);
    color:white!important;
    border:1px solid rgba(255,118,118,.42);
    border-radius:999px;
    padding:12px 20px;
    font-weight:900;
    box-shadow:var(--red-glow);
}

.nav-toggle{
    display:none;
    background:var(--card);
    color:var(--gold2);
    border:1px solid var(--line);
    border-radius:12px;
    padding:10px 14px;
}

.hero-section{
    position:relative;
    overflow:hidden;
    min-height:760px;
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
    gap:40px;
    align-items:center;
    padding:90px 6vw 120px;
}

.hero-bg{
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg,rgba(0,0,0,.22),var(--bg)),
        url('/assets/img/hero-city.svg') center bottom/cover no-repeat;
    opacity:.82;
    z-index:-2;
}

.hero-bg:after{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 70% 38%,rgba(217,164,65,.24),transparent 32%),
        radial-gradient(circle at 88% 52%,rgba(215,25,32,.18),transparent 20%),
        linear-gradient(90deg,rgba(0,0,0,.98),rgba(0,0,0,.58),rgba(0,0,0,.92));
    z-index:-1;
}

.eyebrow,.section-kicker{
    display:inline-flex;
    color:var(--gold2);
    text-transform:uppercase;
    letter-spacing:.2em;
    font-weight:900;
    font-size:.78rem;
    margin-bottom:18px;
}

.hero-content h1{
    font-size:clamp(58px,9vw,118px);
    line-height:.88;
    margin:0 0 28px;
    text-transform:uppercase;
    letter-spacing:-.06em;
    color:var(--gold2);
    text-shadow:0 2px 0 #5e3d10,0 0 38px rgba(217,164,65,.28);
}

.hero-content h1 span{
    color:var(--red);
    text-shadow:0 0 40px rgba(215,25,32,.42);
}

.hero-content p{font-size:1.22rem;max-width:690px;color:#e3d4b3}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}

.btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:999px;
    padding:15px 24px;
    font-weight:900;
    cursor:pointer;
}

.btn-glass,.btn-light{
    background:rgba(217,164,65,.09);
    border:1px solid var(--line-strong);
    color:var(--gold2);
    box-shadow:0 12px 35px rgba(0,0,0,.35);
}

.btn-light{background:linear-gradient(135deg,var(--gold),var(--gold2),var(--gold3));color:#120b03}

.hero-card-stack{position:relative;min-height:520px}
.floating-card,.phone-card{position:absolute;border:1px solid var(--line-strong);box-shadow:var(--shadow)}

.city-card{
    top:40px;
    right:20px;
    width:280px;
    border-radius:24px;
    padding:24px;
    background:rgba(9,7,4,.78);
    backdrop-filter:blur(16px);
}

.city-card span,.coin-card span{display:block;color:var(--gold2);font-size:.75rem;font-weight:900;letter-spacing:.15em}
.city-card strong{display:block;font-size:1.8rem;margin-top:8px;color:var(--gold2)}

.phone-card{
    left:20px;
    bottom:10px;
    width:310px;
    min-height:430px;
    border-radius:38px;
    padding:30px;
    background:linear-gradient(180deg,#1a1308,#070707 58%,#130305);
}

.phone-top{width:92px;height:8px;border-radius:99px;background:#000;margin:0 auto 90px;border:1px solid rgba(217,164,65,.28)}
.phone-card h3{font-size:2.1rem;margin:0;color:var(--gold2)}
.phone-card a{display:inline-flex;margin-top:24px;color:var(--red);font-weight:900}

.split-section,.feature-band,.section-dark,.store-strip,.cta-final,.footer,.page-shell{padding-left:6vw;padding-right:6vw}

.split-section{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:48px;
    padding-top:90px;
    padding-bottom:80px;
    background:#050505;
}

.split-section h2,.store-strip h2,.cta-final h2{font-size:clamp(34px,5vw,62px);line-height:1;margin:0;color:var(--gold2)}
.lead{font-size:1.08rem;color:var(--muted)}

.feature-band{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    padding-top:34px;
    padding-bottom:100px;
    background:#050505;
}

.feature-band article,.empty-card,.card,.store-card,.admin-card{
    background:linear-gradient(180deg,rgba(24,19,11,.98),rgba(6,6,6,.94));
    border:1px solid var(--line);
    border-radius:var(--radius);
    padding:28px;
    box-shadow:0 18px 55px rgba(0,0,0,.45);
}

.feature-band span{color:var(--red);font-weight:900}
.feature-band h3{font-size:1.5rem;margin:18px 0 8px;color:var(--gold2)}
.feature-band p,.news-tile p,.muted{color:var(--muted)}

.section-dark{
    padding-top:90px;
    padding-bottom:90px;
    background:linear-gradient(180deg,#050505,#100b05 55%,#030303);
}

.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px;gap:20px}
.section-title span{color:var(--red);text-transform:uppercase;letter-spacing:.16em;font-weight:900}
.section-title h2{font-size:clamp(36px,5vw,70px);margin:8px 0 0;color:var(--gold2)}
.section-title a{color:var(--gold2);font-weight:900}

.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}

.news-tile{
    overflow:hidden;
    border-radius:28px;
    background:var(--card);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
    transition:transform .2s,border-color .2s;
}

.news-tile:hover{transform:translateY(-6px);border-color:var(--line-strong)}

.tile-image{
    height:210px;
    display:grid;
    place-items:end start;
    padding:22px;
    background:linear-gradient(135deg,#090909 0%,#1b1306 42%,var(--gold) 70%,var(--red) 100%);
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:#fff7db;
}

.tile-body{padding:24px}
.tile-body small{color:var(--gold2);font-weight:900}

.store-strip{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:30px;
    align-items:center;
    padding-top:100px;
    padding-bottom:100px;
    background:radial-gradient(circle at right,rgba(215,25,32,.2),transparent 34%),radial-gradient(circle at 70% 20%,rgba(217,164,65,.18),transparent 28%),#050505;
}

.coin-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

.coin-card{
    min-height:220px;
    border-radius:28px;
    padding:26px;
    background:linear-gradient(180deg,#1c1408,#070707 72%,#190305);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
}

.coin-card h3{font-size:2rem;margin:26px 0 8px;color:var(--gold2)}
.coin-card strong{color:var(--red);font-size:1.25rem}

.cta-final{
    text-align:center;
    padding-top:110px;
    padding-bottom:110px;
    background:linear-gradient(135deg,#120b03 0%,var(--gold3) 18%,var(--gold) 48%,var(--gold2) 58%,var(--red) 100%);
    color:#0a0703;
}

.cta-final h2{color:#090604;text-shadow:0 1px 0 rgba(255,255,255,.3)}
.cta-final p{color:#1b1005}

.footer{
    display:flex;
    justify-content:space-between;
    gap:30px;
    padding-top:36px;
    padding-bottom:36px;
    background:#000;
    color:#cdbb91;
    border-top:1px solid var(--line);
}
.footer nav{display:flex;gap:20px;flex-wrap:wrap}

.page-shell{padding-top:44px;padding-bottom:80px}
.top-grid,.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

.panel,.auth-card,form.card{
    background:linear-gradient(180deg,#171107,#070707);
    border:1px solid var(--line);
    border-radius:24px;
    padding:26px;
    box-shadow:var(--shadow);
}

input,textarea,select{
    width:100%;
    background:#050505;
    border:1px solid rgba(217,164,65,.32);
    border-radius:14px;
    color:var(--text);
    padding:13px 14px;
    margin:8px 0 14px;
}

input:focus,textarea:focus,select:focus{outline:none;border-color:var(--gold2);box-shadow:0 0 0 3px rgba(217,164,65,.14)}
label{font-weight:800;color:#ead8af}

.auth-wrap{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:40px 6vw}
.auth-card{width:min(480px,100%)}
.auth-card h1,.page-title{font-size:clamp(34px,5vw,56px);line-height:1;margin-top:0;color:var(--gold2)}

.legal{max-width:980px;margin:0 auto;padding:70px 6vw}
.legal article{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:38px}

.cookie-banner{
    position:fixed;
    left:24px;
    right:24px;
    bottom:24px;
    z-index:80;
    display:none;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    background:rgba(7,7,7,.96);
    border:1px solid var(--line-strong);
    border-radius:22px;
    padding:18px 20px;
    box-shadow:var(--shadow);
}
.cookie-banner.show{display:flex}
.cookie-banner p{margin:4px 0 0;color:var(--muted)}
.cookie-actions{display:flex;align-items:center;gap:14px}
.cookie-actions button{border:0;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#111;padding:12px 18px;font-weight:900}

.table-wrap{overflow:auto}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left}
.pill{display:inline-flex;border-radius:999px;padding:7px 11px;background:rgba(215,25,32,.15);color:var(--gold2);font-weight:900;border:1px solid rgba(217,164,65,.22)}

@media(max-width:900px){
    .site-links{display:none;position:absolute;left:20px;right:20px;top:76px;flex-direction:column;align-items:stretch;background:#080604;border:1px solid var(--line);border-radius:20px;padding:18px}
    .site-links.open{display:flex}
    .nav-toggle{display:block}
    .hero-section,.split-section,.store-strip{grid-template-columns:1fr}
    .hero-section{min-height:auto;padding-top:70px}
    .hero-card-stack{min-height:430px}
    .feature-band,.news-grid,.coin-cards,.top-grid,.grid{grid-template-columns:1fr}
    .section-title,.footer,.cookie-banner{flex-direction:column;align-items:flex-start}
    .hero-content h1{font-size:58px}
    .phone-card{position:relative;left:auto;bottom:auto;margin-top:20px}
    .city-card{position:relative;right:auto;top:auto;margin-left:auto}
}
