:root{
    --bg:#000;
    --panel:#0a0a0d;
    --panel2:#111116;
    --line:rgba(255,255,255,.12);
    --line-strong:rgba(255,255,255,.22);
    --text:#fff;
    --muted:#aeb3c1;
    --red:#ff1530;
    --red2:#bc0015;
    --red-soft:rgba(255,21,48,.18);
    --impact:Impact,"Arial Black","Anton","Bebas Neue","Roboto Condensed",Arial,sans-serif;
    --body:Inter,Arial,Helvetica,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:#000;
    color:var(--text);
    font-family:var(--body);
    overflow-x:hidden;
}
body:before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    z-index:-2;
    background:
        radial-gradient(circle at 8% 10%,rgba(255,21,48,.12),transparent 24%),
        radial-gradient(circle at 92% 20%,rgba(255,21,48,.12),transparent 25%),
        linear-gradient(180deg,#000 0%,#050506 45%,#000 100%);
}
a{color:#fff}

.shell{
    width:min(100%,1480px);
    margin:0 auto;
    padding:0 34px;
}

/* HEADER */
.top{
    width:100%;
    background:#000;
    border-bottom:1px solid rgba(255,255,255,.08);
    position:sticky;
    top:0;
    z-index:1000;
}
.top-inner{
    width:min(100%,1480px);
    min-height:82px;
    margin:0 auto;
    padding:12px 34px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:26px;
}
.logo{
    width:clamp(220px,19vw,330px);
    display:block;
    filter:drop-shadow(0 0 18px rgba(255,255,255,.12));
}
.nav{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.nav a{
    color:#fff;
    text-decoration:none;
    font-weight:900;
    font-size:14px;
    padding:12px 16px;
    border-radius:9px;
    border:1px solid transparent;
    transition:.18s ease;
}
.nav a:hover{
    background:rgba(255,255,255,.06);
    border-color:rgba(255,255,255,.16);
}
.nav-btn{
    border-color:rgba(255,255,255,.32)!important;
    background:rgba(15,15,20,.72)!important;
}
.nav-btn.red{
    background:linear-gradient(135deg,var(--red),var(--red2))!important;
    border-color:transparent!important;
    box-shadow:0 16px 34px rgba(255,21,48,.28);
}
.lang-switch{
    display:flex;
    align-items:center;
    gap:7px;
}
.lang-switch a{
    width:39px!important;
    height:39px!important;
    padding:0!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    background:#1b1b24!important;
    border:1px solid rgba(255,255,255,.13)!important;
    font-size:12px!important;
}
.lang-switch a.active{
    background:linear-gradient(135deg,var(--red),var(--red2))!important;
    border-color:transparent!important;
}

/* HERO */
.phase1-hero{
    position:relative;
    margin:0 calc(50% - 50vw);
    min-height:655px;
    background:
        linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.86) 28%,rgba(0,0,0,.38) 55%,rgba(0,0,0,.10) 100%),
        radial-gradient(circle at 78% 25%,rgba(255,255,255,.12),transparent 18%),
        radial-gradient(circle at 76% 56%,rgba(255,21,48,.28),transparent 34%),
        url('/assets/hero-fight-premium.jpg?v=20') center right/cover no-repeat;
    overflow:hidden;
    border-bottom:1px solid rgba(255,255,255,.10);
}
.phase1-hero:after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
        linear-gradient(0deg,rgba(0,0,0,.88),transparent 24%,transparent 78%,rgba(0,0,0,.25)),
        repeating-linear-gradient(0deg,rgba(255,255,255,.018),rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);
}
.hero-inner{
    position:relative;
    z-index:2;
    width:min(100%,1480px);
    margin:0 auto;
    padding:86px 34px 48px;
}
.eyebrow{
    color:var(--red);
    font-weight:1000;
    letter-spacing:.05em;
    font-size:16px;
    text-transform:uppercase;
}
.hero-title{
    margin:14px 0 24px;
    font-family:var(--impact);
    font-size:clamp(74px,9vw,146px);
    line-height:.78;
    letter-spacing:-.055em;
    font-style:italic;
    text-transform:uppercase;
    transform:skewX(-7deg);
    text-shadow:0 8px 0 rgba(0,0,0,.34),0 0 34px rgba(255,255,255,.07);
}
.hero-title span{display:block;color:#f4f4f4}
.hero-title strong{display:block;color:var(--red)}
.hero-sub{
    max-width:520px;
    margin:0 0 30px;
    color:#f1f2f6;
    font-size:25px;
    line-height:1.27;
}
.trust-row{
    max-width:780px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin:0 0 30px;
}
.trust-row div{
    min-height:62px;
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    column-gap:11px;
    padding:11px 12px;
    border-radius:9px;
    background:rgba(0,0,0,.55);
    border:1px solid rgba(255,255,255,.12);
    backdrop-filter:blur(10px);
}
.trust-row span{
    grid-row:1 / span 2;
    width:35px;
    height:35px;
    display:grid;
    place-items:center;
    color:var(--red);
    background:rgba(255,21,48,.13);
    border:1px solid rgba(255,21,48,.25);
    border-radius:9px;
    font-size:13px;
    font-weight:1000;
}
.trust-row strong{
    display:block;
    font-size:11px;
    text-transform:uppercase;
    line-height:1;
}
.trust-row small{
    color:#d7d9e2;
    font-size:11px;
}
.hero-actions{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
}

/* BUTTONS */
.btn,button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:47px;
    padding:0 24px;
    border-radius:8px;
    border:1px solid rgba(255,255,255,.20);
    background:rgba(17,17,23,.78);
    color:#fff;
    text-decoration:none;
    font-weight:1000;
    cursor:pointer;
    transition:.2s ease;
}
.btn:hover,button:hover{
    transform:translateY(-2px);
    border-color:rgba(255,21,48,.55);
}
.btn.red,.red{
    background:linear-gradient(135deg,var(--red),var(--red2));
    border-color:transparent;
    box-shadow:0 18px 40px rgba(255,21,48,.26);
}
.btn.dark{background:rgba(8,8,11,.78)}
.btn.big{min-height:56px;min-width:258px}
.btn.wide{width:100%}

/* SECTIONS */
.section{margin:58px 0}
.section-title{
    text-align:center;
    margin-bottom:25px;
}
.section-title span{
    color:var(--red);
    font-size:13px;
    font-weight:1000;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.section-title h2{
    margin:7px 0 0;
    font-size:clamp(36px,4vw,55px);
    line-height:.9;
    font-weight:1000;
    letter-spacing:-.04em;
    text-transform:uppercase;
}

/* EVENTS */
.event-strip{
    position:relative;
}
.premium-events{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}
.page-events{grid-template-columns:repeat(3,1fr);margin-bottom:80px}
.premium-event-card{
    overflow:hidden;
    min-height:344px;
    display:flex;
    flex-direction:column;
    color:#fff;
    text-decoration:none;
    border-radius:14px;
    border:1px solid rgba(255,255,255,.14);
    background:linear-gradient(180deg,#101014,#050506);
    transition:.24s ease;
}
.premium-event-card:hover{
    transform:translateY(-6px);
    border-color:rgba(255,21,48,.48);
    box-shadow:0 30px 80px rgba(255,21,48,.12);
}
.premium-event-img{
    height:190px;
    position:relative;
    overflow:hidden;
    background:#111;
}
.premium-event-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    filter:contrast(1.12) saturate(1.14) brightness(.84);
    transition:.35s ease;
}
.premium-event-card:hover img{transform:scale(1.06)}
.premium-event-img:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent,rgba(0,0,0,.86));
}
.live-badge,.date-badge{
    position:absolute;
    left:12px;
    top:12px;
    z-index:2;
    padding:8px 11px;
    border-radius:7px;
    font-size:11px;
    font-weight:1000;
    text-transform:uppercase;
}
.live-badge{background:var(--red);color:#fff}
.date-badge{background:rgba(255,255,255,.92);color:#09090b}
.premium-event-body{
    flex:1;
    display:flex;
    flex-direction:column;
    padding:17px 17px 16px;
}
.premium-event-body h3{
    margin:0 0 6px;
    font-family:var(--impact);
    font-style:italic;
    font-size:30px;
    line-height:.92;
    letter-spacing:-.025em;
    text-transform:uppercase;
}
.premium-event-body p{
    margin:0 0 12px;
    color:#c7cad5;
    font-size:14px;
}
.event-mini{
    display:flex;
    justify-content:space-between;
    gap:14px;
    margin-top:auto;
    color:#e6e7ed;
    font-size:13px;
}
.event-mini strong{white-space:nowrap}
.event-btn{
    margin-top:13px;
    width:100%;
    min-height:39px;
    border-radius:7px;
    background:rgba(255,255,255,.04);
}

/* ACCESS */
.access-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
}
.access-card{
    position:relative;
    overflow:hidden;
    min-height:340px;
    padding:38px;
    color:#fff;
    text-decoration:none;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.13);
    background:linear-gradient(135deg,rgba(255,21,48,.18),rgba(5,5,6,.94));
    transition:.24s ease;
}
.access-card:hover{
    transform:translateY(-5px);
    border-color:rgba(255,21,48,.48);
}
.access-card:before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
        linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.42)),
        url('/assets/hero-fight-premium.jpg?v=20') center/cover;
    opacity:.78;
}
.viewer-card:before{
    filter:grayscale(1);
}
.access-card:after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:radial-gradient(circle at 78% 50%,rgba(255,21,48,.22),transparent 35%);
}
.access-icon{
    width:68px;
    height:68px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:linear-gradient(135deg,var(--red),var(--red2));
    font-size:30px;
    margin-bottom:24px;
}
.viewer-card .access-icon{background:#292a31}
.access-card span{
    display:block;
    color:var(--red);
    font-size:13px;
    font-weight:1000;
    text-transform:uppercase;
}
.access-card h3{
    margin:10px 0 12px;
    font-size:35px;
    letter-spacing:-.045em;
}
.access-card p{
    max-width:500px;
    margin:0;
    color:#eef0f7;
    line-height:1.45;
}
.chips{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:23px 0;
}
.chips em{
    font-style:normal;
    color:#d8dbe7;
    font-size:12px;
    padding:7px 10px;
    border-radius:7px;
    background:rgba(255,255,255,.08);
}

/* TRUST STRIP */
.stats-strip{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin:42px 0 54px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:14px;
    background:linear-gradient(180deg,#0c0c10,#050506);
    overflow:hidden;
}
.stats-strip div{
    padding:24px 14px;
    text-align:center;
    border-right:1px solid rgba(255,255,255,.08);
}
.stats-strip div:last-child{border-right:0}
.stats-strip strong{
    display:block;
    color:var(--red);
    font-size:33px;
}
.stats-strip span{
    color:#c4c7d2;
    font-size:13px;
}

/* GENERIC PAGES */
.page-hero{
    margin:36px 0;
    padding:44px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.13);
    background:linear-gradient(135deg,rgba(255,21,48,.14),rgba(10,10,13,.92));
}
.page-hero h1{
    margin:8px 0 10px;
    font-size:clamp(52px,6vw,90px);
    line-height:.9;
    font-family:var(--impact);
    font-style:italic;
    letter-spacing:-.045em;
    text-transform:uppercase;
}
.page-hero p{color:#d8dbe7;font-size:20px}
.card{
    border:1px solid rgba(255,255,255,.13);
    border-radius:16px;
    background:linear-gradient(180deg,#101014,#070708);
    padding:30px;
    box-shadow:0 26px 80px rgba(0,0,0,.32);
}
.form{max-width:720px;margin:34px auto}
.form label{display:block;font-weight:900;margin:18px 0 8px}
input,textarea,select{
    width:100%;
    min-height:54px;
    border-radius:11px;
    border:1px solid rgba(255,255,255,.14);
    background:#08080b;
    color:#fff;
    padding:14px 16px;
    font:inherit;
}
.err,.msg{padding:14px 16px;border-radius:10px;margin:14px 0}
.err{background:rgba(255,21,48,.12);border:1px solid rgba(255,21,48,.35)}
.msg{background:rgba(35,197,94,.12);border:1px solid rgba(35,197,94,.35)}
.table{width:100%;border-collapse:collapse}
.table th,.table td{text-align:left;padding:14px 12px;border-bottom:1px solid rgba(255,255,255,.10)}
.layout{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;margin:34px 0 70px}
.landing{position:relative;min-height:460px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:18px;margin:28px 0;background:#08080a}
.landing img{width:100%;height:100%;min-height:460px;object-fit:cover;display:block;filter:brightness(.55) contrast(1.1) saturate(1.15)}
.landing:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.24))}
.landing-content{position:absolute;z-index:1;left:56px;bottom:48px;max-width:760px}
.landing-content h1{font-family:var(--impact);margin:16px 0 12px;font-size:clamp(52px,7vw,98px);line-height:.86;letter-spacing:-.045em;text-transform:uppercase;font-style:italic}

/* FOOTER */
.footer{
    width:100%;
    margin-top:60px;
    background:#000;
    border-top:1px solid rgba(255,255,255,.10);
    color:#c9cbd6;
}
.footer-inner{
    width:min(100%,1480px);
    margin:0 auto;
    padding:38px 34px 24px;
    display:grid;
    grid-template-columns:1.4fr repeat(4,1fr);
    gap:34px;
}
.footer-brand img{width:245px;max-width:100%;margin-bottom:14px}
.footer-brand p{margin:0;max-width:310px;line-height:1.45}
.footer-col strong{
    display:block;
    margin-bottom:12px;
    color:#fff;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.footer a{
    display:block;
    margin:8px 0;
    color:#c9cbd6;
    text-decoration:none;
    font-size:14px;
}
.footer a:hover{color:#fff}
.footer-bottom{
    grid-column:1 / -1;
    display:flex;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
    border-top:1px solid rgba(255,255,255,.08);
    padding-top:20px;
    font-size:13px;
}

/* COOKIE */
.gp-cookie-bar{position:fixed;left:18px;right:18px;bottom:18px;z-index:99999;background:#111116;border:1px solid rgba(255,255,255,.12);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.4);padding:18px}
.gp-cookie-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}
.gp-cookie-inner p{margin:6px 0 0;color:#c9cbd6;font-size:14px}
.gp-cookie-actions{display:flex;gap:12px;align-items:center}
.gp-cookie-link{color:#fff;text-decoration:none;opacity:.8}
.gp-cookie-actions button{background:#ff1530;border:0;color:#fff;padding:12px 18px;border-radius:999px;cursor:pointer;font-weight:900}

/* YOUTUBE PROTECTION */
.viewer-watermark{
    position:absolute;
    z-index:6;
    left:4%;
    top:9%;
    padding:7px 10px;
    border-radius:8px;
    background:rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.08);
    color:rgba(255,255,255,.34);
    font-size:12px;
    font-weight:800;
    pointer-events:none;
    animation:wmMove 42s linear infinite;
}
@keyframes wmMove{
    0%{left:4%;top:9%}
    25%{left:72%;top:22%}
    50%{left:48%;top:70%}
    75%{left:8%;top:52%}
    100%{left:4%;top:9%}
}

@media(max-width:1120px){
    .premium-events{grid-template-columns:repeat(2,1fr)}
    .page-events{grid-template-columns:repeat(2,1fr)}
    .trust-row{grid-template-columns:repeat(2,1fr)}
    .footer-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
    .shell{padding:0 18px}
    .top-inner{padding:14px 18px;flex-direction:column;align-items:flex-start}
    .logo{width:min(78vw,360px)}
    .nav{justify-content:flex-start}
    .nav a{padding:10px 12px}
    .hero-inner{padding:54px 18px 40px}
    .hero-title{font-size:70px}
    .hero-sub{font-size:20px}
    .trust-row,.premium-events,.page-events,.access-grid,.stats-strip,.layout{grid-template-columns:1fr}
    .stats-strip div{border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
    .footer-inner{grid-template-columns:1fr;padding:30px 18px}
}
