:root{
  --wine:#8d101b;
  --wine-dark:#650713;
  --red:#bd1424;
  --red-bright:#db2231;
  --gold:#ffc42e;
  --gold-light:#ffe37a;
  --orange:#f27b2d;
  --navy:#292477;
  --navy-dark:#17134e;
  --cream:#fff8eb;
  --ink:#302329;
  --white:#fff;
  --radius:28px;
  --shadow:0 22px 60px rgba(76,7,18,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Montserrat",Arial,sans-serif;color:var(--ink);background:#fff;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.container{width:min(1200px,calc(100% - 40px));margin:0 auto}
.section-pad{padding:92px 0}

.topbar{position:sticky;top:0;z-index:60;background:rgba(101,7,19,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.14);box-shadow:0 10px 30px rgba(58,0,8,.18)}
.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{width:240px;height:76px;display:flex;align-items:center;background:transparent;border-radius:0;padding:0;box-shadow:none;border:0}
.brand img{width:100%;height:100%;object-fit:contain}
.nav{display:flex;gap:23px;align-items:center;font-size:.82rem;font-weight:800;color:#fff}
.nav a{position:relative;padding:12px 0}
.nav a:after{content:"";position:absolute;left:0;bottom:5px;width:0;height:3px;background:var(--gold);border-radius:2px;transition:.25s}
.nav a:hover:after{width:100%}
.menu-btn{display:none;border:0;background:var(--gold);color:var(--wine-dark);border-radius:12px;padding:10px 14px;font-size:1.25rem;cursor:pointer}
.mobile-nav{display:none;background:var(--wine-dark);color:#fff;padding:12px 20px 18px;border-top:1px solid rgba(255,255,255,.12)}
.mobile-nav.open{display:grid}
.mobile-nav a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12);font-weight:700}

.hero{background:var(--wine);overflow:hidden}
.hero picture,.hero img{width:100%}
.hero img{height:auto}

.campaign-strip{background:var(--navy-dark);color:#fff;border-top:4px solid var(--gold);border-bottom:4px solid var(--gold)}
.campaign-strip-grid{min-height:94px;display:grid;grid-template-columns:repeat(4,1fr) auto;gap:24px;align-items:center}
.campaign-fact{display:flex;flex-direction:column;gap:5px;padding:16px 0}
.campaign-fact span{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--gold)}
.campaign-fact strong{font-size:.94rem;color:#fff}
.campaign-link{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--wine-dark);font-size:.8rem;font-weight:900;padding:13px 18px;border-radius:999px;white-space:nowrap;transition:.2s}
.campaign-link:hover{transform:translateY(-2px) scale(1.02);background:#ffe25f}

.intro{position:relative;background:linear-gradient(145deg,#fff 0%,#fff4ef 55%,#fff8de 100%);overflow:hidden}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.eyebrow{margin:0 0 16px;font-size:.8rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:var(--wine)}
.eyebrow.navy{color:var(--navy)}
.eyebrow.wine{color:var(--wine)}
.eyebrow.light{color:var(--gold)}
.intro h1,.section-heading h2,.regulation h2{margin:0;font-size:clamp(2.5rem,6vw,5.5rem);line-height:.92;letter-spacing:-.05em;font-weight:900;text-transform:uppercase}
.intro h1{color:var(--wine-dark)}
.intro h1 span{color:var(--gold);text-shadow:0 5px 0 rgba(141,16,27,.15)}
.intro-copy{font-size:1.02rem;line-height:1.75}
.lead{font-size:1.34rem;line-height:1.45;margin-top:0}
.lead.small{font-size:1.12rem;max-width:430px}
.btn{display:inline-flex;align-items:center;gap:14px;padding:17px 24px;border-radius:999px;font-weight:900;margin-top:16px;transition:.2s;box-shadow:0 12px 24px rgba(0,0,0,.14)}
.btn:hover{transform:translateY(-3px) scale(1.025)}
.btn-gold{background:var(--gold);color:var(--wine-dark)}
.btn span{font-size:1.15em}
.confetti{position:absolute;width:180px;height:180px;opacity:.25;background-image:radial-gradient(circle at 20% 30%,var(--navy) 0 6px,transparent 7px),radial-gradient(circle at 70% 15%,var(--red) 0 5px,transparent 6px),radial-gradient(circle at 85% 70%,var(--gold) 0 7px,transparent 8px),radial-gradient(circle at 30% 80%,var(--orange) 0 8px,transparent 9px);transform:rotate(20deg)}
.confetti-a{top:35px;right:2%}.confetti-b{bottom:0;left:2%;transform:rotate(-25deg)}

.ticker{background:var(--wine-dark);color:var(--gold);overflow:hidden;padding:18px 0;font-weight:900;white-space:nowrap;letter-spacing:.03em;border-top:5px solid var(--navy);border-bottom:5px solid var(--navy)}
.ticker-track{display:flex;width:max-content;animation:ticker 30s linear infinite}
.ticker span{padding-right:42px}
@keyframes ticker{to{transform:translateX(-50%)}}

.how{background:#fff}
.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:46px}
.section-heading h2{font-size:clamp(2.4rem,5vw,4.7rem);color:var(--wine-dark)}
.section-heading p{margin:0;font-size:1.02rem;line-height:1.65}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.step-card{min-height:315px;border-radius:var(--radius);padding:28px;background:var(--cream);border:2px solid rgba(141,16,27,.10);position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(70,20,25,.07);transform-origin:center;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease;will-change:transform}
.step-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-44px;bottom:-44px;background:rgba(255,196,46,.62)}
.step-card.featured{background:linear-gradient(160deg,var(--gold),#ffe87f);transform:translateY(-12px);border-color:#ecad00}
.step-number{font-size:2.4rem;font-weight:900;color:var(--red);display:block;margin-bottom:48px}
.step-card h3{font-size:1.22rem;margin:0 0 12px;color:var(--navy-dark)}
.step-card p{line-height:1.6;margin:0;font-size:.9rem;position:relative;z-index:2}
.rule-note{margin-top:28px;padding:20px 24px;border-radius:18px;background:#f2f0ff;border-left:6px solid var(--navy);font-size:.9rem;line-height:1.55}

.prizes{background:radial-gradient(circle at 14% 4%,#d63a40 0,transparent 26%),linear-gradient(145deg,var(--wine),var(--wine-dark));color:#fff;position:relative;overflow:hidden}
.prizes:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-220px;background:rgba(255,196,46,.13)}
.prizes:after{content:"";position:absolute;width:390px;height:390px;border-radius:50%;left:-160px;bottom:-210px;background:rgba(41,36,119,.24)}
.light-heading h2{color:#fff}.light-heading p{color:rgba(255,255,255,.86)}
.network-prize-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:24px;align-items:stretch;position:relative;z-index:2}
.network-prize-card{border-radius:32px;padding:32px;background:#fff;color:var(--ink);box-shadow:0 26px 62px rgba(0,0,0,.25);position:relative;overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease;transform-origin:center;will-change:transform}
.network-prize-card:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;right:-80px;bottom:-110px;background:rgba(255,196,46,.18)}
.network-prize-card.vovo-card:after{background:rgba(41,36,119,.12)}
.network-logo-wrap{height:155px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:18px;position:relative;z-index:2}
.network-logo-wrap img{height:100%;width:auto;max-width:280px;object-fit:contain}
.vovo-card .network-logo-wrap img{max-width:220px}
.prize-kicker{display:inline-block;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--red);margin-bottom:10px}
.prize-number{display:block;font-size:clamp(5rem,9vw,8.2rem);line-height:.8;letter-spacing:-.07em;color:var(--wine-dark);margin:8px 0 16px}
.vovo-card .prize-number{color:var(--navy)}
.network-prize-card h3{margin:0 0 12px;font-size:1.55rem;line-height:1.05;color:var(--wine-dark)}
.vovo-card h3{color:var(--navy-dark)}
.network-prize-card p{margin:0 0 24px;line-height:1.6;color:#64575c}
.network-stats{display:flex;gap:8px;flex-wrap:wrap;position:relative;z-index:2}
.network-stats span{background:var(--cream);color:var(--wine-dark);padding:8px 11px;border-radius:999px;font-size:.72rem;font-weight:900;border:1px solid #f3dcc7}
.vovo-card .network-stats span{background:#f0efff;color:var(--navy-dark);border-color:#d9d5ff}
.prize-total-card{margin-top:24px;border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:28px 32px;background:rgba(255,255,255,.10);display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;position:relative;z-index:2}
.prize-total-card>span{font-size:.72rem;letter-spacing:.14em;font-weight:900;color:var(--gold)}
.prize-total-card strong{font-size:1.65rem;color:#fff}
.prize-total-card p{margin:0;color:rgba(255,255,255,.78);font-size:.86rem}

.draws{background:linear-gradient(145deg,#fffdf1,#ffdc55)}
.draws-heading{margin-bottom:34px}
.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.timeline-card{background:#fff;border-radius:24px;padding:24px;box-shadow:var(--shadow);border:2px solid rgba(141,16,27,.10);min-height:220px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease}
.timeline-date{font-size:2.6rem;line-height:1;font-weight:900;color:var(--wine-dark);letter-spacing:-.06em;margin-bottom:30px}
.draw-tag{display:inline-block;font-size:.69rem;font-weight:900;letter-spacing:.08em;background:var(--red);color:#fff;border-radius:999px;padding:8px 10px;margin-bottom:10px}
.timeline-card h3{font-size:1.08rem;color:var(--navy-dark);margin:0 0 7px}
.timeline-card p{font-size:.83rem;line-height:1.5;margin:0;color:#64575c}
.timeline-card.final-date{grid-column:span 3;min-height:0;display:grid;grid-template-columns:190px 1fr;align-items:center;background:var(--navy-dark);color:#fff;border-color:var(--navy-dark)}
.timeline-card.final-date .timeline-date{color:var(--gold);margin:0}
.timeline-card.final-date h3{color:#fff;font-size:1.5rem}
.timeline-card.final-date p{color:rgba(255,255,255,.82)}
.timeline-card.final-date .draw-tag{background:var(--gold);color:var(--navy-dark)}
.network-draw-note{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.network-draw-note>div{display:flex;align-items:center;gap:18px;background:rgba(255,255,255,.72);border-radius:22px;padding:18px 22px;box-shadow:0 12px 28px rgba(101,7,19,.08)}
.network-draw-note img{width:95px;height:70px;object-fit:contain;flex:0 0 auto}
.network-draw-note p{margin:0;font-size:.86rem;line-height:1.5}

.stores{background:linear-gradient(145deg,var(--navy-dark),var(--navy));color:#fff;position:relative;overflow:hidden}
.stores:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;bottom:-260px;background:rgba(255,196,46,.11)}
.stores-heading{position:relative;z-index:2}
.store-group-title{position:relative;z-index:2;margin:22px 0 18px;display:flex;align-items:center;gap:18px}
.store-group-title img{width:100px;height:86px;object-fit:contain;background:#fff;border-radius:18px;padding:8px}
.store-group-title span{display:block;color:var(--gold);font-size:.7rem;text-transform:uppercase;font-weight:900;letter-spacing:.12em;margin-bottom:4px}
.store-group-title strong{font-size:1.2rem}
.vovo-group{margin-top:42px}
.store-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative;z-index:2}
.store-grid.single-store{grid-template-columns:minmax(0,760px)}
.store-card{background:#fff;color:var(--ink);border-radius:24px;padding:25px;box-shadow:0 24px 54px rgba(0,0,0,.18);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease;min-height:190px}
.store-city{display:inline-block;background:var(--gold);color:var(--wine-dark);padding:8px 11px;border-radius:999px;font-size:.66rem;font-weight:900;letter-spacing:.07em;margin-bottom:17px}
.store-card h3{font-size:1.2rem;line-height:1.15;color:var(--navy-dark);margin:0 0 11px}
.store-card p{font-size:.84rem;line-height:1.6;color:#64575c;margin:0}
.vovo-store{border:4px solid var(--gold)}

.partners{background:#fff}
.partner-heading{align-items:center}
.partners-board{background:#fff;border-radius:32px;padding:28px;box-shadow:0 18px 55px rgba(66,30,34,.13);border:1px solid #eee;overflow:hidden}
.partners-board img{width:100%;height:auto;object-fit:contain}

.faq{background:#fff8ef}
.faq-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:start}
.faq h2{margin:0 0 22px;font-size:clamp(2.5rem,5vw,4.7rem);line-height:.92;letter-spacing:-.05em;font-weight:900;color:var(--wine-dark)}
.faq-list{display:grid;gap:12px}
.faq-list details{background:#fff;border:1px solid #f0dfd0;border-radius:18px;padding:0 20px;overflow:hidden;box-shadow:0 8px 24px rgba(70,20,25,.05)}
.faq-list summary{cursor:pointer;list-style:none;font-weight:800;color:var(--navy-dark);padding:20px 32px 20px 0;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:0;top:15px;font-size:1.5rem;color:var(--red);font-weight:900}
.faq-list details[open] summary:after{content:"–"}
.faq-list details p{margin:0;padding:0 0 20px;font-size:.9rem;line-height:1.65;color:#64575c}

.regulation{background:var(--navy-dark)}
.regulation-box{background:linear-gradient(145deg,var(--wine-dark),var(--red));color:#fff;border-radius:36px;padding:48px 54px;display:flex;align-items:center;justify-content:space-between;gap:55px;box-shadow:0 28px 60px rgba(0,0,0,.24)}
.regulation h2{font-size:clamp(2.1rem,4vw,4rem);margin-bottom:16px;color:#fff}
.regulation p{max-width:760px;margin:0;line-height:1.65;color:rgba(255,255,255,.9)}
.regulation .btn{flex:0 0 auto;margin:0}
.regulation-meta{display:flex;gap:10px 16px;flex-wrap:wrap;margin-top:22px}
.regulation-meta span{display:inline-flex;padding:9px 12px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);border-radius:12px;font-size:.76rem;line-height:1.4}

.footer{background:#0f0d36;color:#fff;padding:50px 0}
.footer-grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:70px;align-items:start}
.footer-brand img{width:270px;height:160px;object-fit:contain;background:transparent;border-radius:0;padding:0;margin-bottom:14px;border:0;box-shadow:none}
.footer h4{margin:0 0 15px;color:var(--gold)}
.footer a,.footer p{display:block;margin:0 0 9px;color:rgba(255,255,255,.80);font-size:.86rem;line-height:1.55}
.footer a:hover{color:#fff}

@media (hover:hover) and (pointer:fine){
  .step-card:hover{transform:translateY(-15px) scale(1.045);box-shadow:0 24px 46px rgba(64,20,25,.18);border-color:rgba(141,16,27,.25);z-index:5}
  .step-card.featured:hover{transform:translateY(-27px) scale(1.045)}
  .network-prize-card:hover{transform:translateY(-16px) scale(1.035);box-shadow:0 36px 76px rgba(0,0,0,.34);z-index:5}
  .timeline-card:hover{transform:translateY(-8px) scale(1.025);box-shadow:0 24px 46px rgba(65,12,20,.16);z-index:3}
  .store-card:hover{transform:translateY(-9px) scale(1.025);box-shadow:0 34px 70px rgba(0,0,0,.25)}
}

@media(max-width:1100px){
  .nav{display:none}.menu-btn{display:block}
  .campaign-strip-grid{grid-template-columns:repeat(2,1fr)}
  .campaign-link{grid-column:1/-1;justify-self:start;margin-bottom:16px}
  .intro-grid,.section-heading{grid-template-columns:1fr;gap:28px}
  .steps{grid-template-columns:1fr 1fr}.step-card.featured{transform:none}
  .network-prize-grid{grid-template-columns:1fr 1fr}
  .store-grid{grid-template-columns:1fr 1fr}
  .faq-grid{grid-template-columns:1fr;gap:34px}
  .regulation-box{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,1200px)}
  .section-pad{padding:64px 0}
  .nav-wrap{height:78px}.brand{width:190px;height:66px;border-radius:14px}
  .hero img{width:100%;height:auto}
  .campaign-strip-grid{grid-template-columns:1fr 1fr;gap:4px 18px;padding:12px 0}
  .campaign-fact{padding:7px 0}.campaign-link{grid-column:1/-1}
  .intro h1{font-size:clamp(3rem,15vw,5rem)}
  .steps{grid-template-columns:1fr}.step-card{min-height:auto}.step-number{margin-bottom:30px}
  .section-heading{margin-bottom:34px}.section-heading h2{font-size:clamp(2.5rem,12vw,4rem)}
  .network-prize-grid{grid-template-columns:1fr}.network-logo-wrap{height:135px}.network-prize-card{padding:27px}
  .prize-total-card{grid-template-columns:1fr;gap:8px}
  .timeline{grid-template-columns:1fr 1fr}.timeline-card.final-date{grid-column:span 2;grid-template-columns:1fr}.timeline-card.final-date .timeline-date{margin-bottom:20px}
  .network-draw-note{grid-template-columns:1fr}
  .store-grid{grid-template-columns:1fr}.store-grid.single-store{grid-template-columns:1fr}
  .partners-board{padding:14px;border-radius:22px}
  .regulation-box{padding:34px 26px;border-radius:28px}.regulation-meta{display:grid}
  .footer-grid{grid-template-columns:1fr;gap:28px}.footer-brand img{width:245px;height:145px}
}
@media(max-width:520px){
  .campaign-strip-grid{grid-template-columns:1fr}.campaign-link{grid-column:auto;width:max-content}
  .timeline{grid-template-columns:1fr}.timeline-card.final-date{grid-column:auto}
  .timeline-card{min-height:195px}
  .network-draw-note>div{align-items:flex-start;flex-direction:column}.network-draw-note img{width:120px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}.btn,.step-card,.network-prize-card,.timeline-card,.store-card{transition:none}}
