
:root{--bg:#090909;--panel:#121212;--text:#ffffff;--muted:rgba(255,255,255,0.72);--line:rgba(255,255,255,0.10);--gold:#d4a017;--gold-strong:#f0c43c}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;position:relative;isolation:isolate}
body::before{content:"";position:fixed;inset:0;background-image:url("assets/flag-watermark.svg");background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.07;pointer-events:none;z-index:-1}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.container{width:min(1180px, calc(100% - 2rem));margin:0 auto}
.site-header{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);background:rgba(0,0,0,0.85);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1rem 0}
.brand{display:flex;align-items:center;gap:1rem}.brand-logo{width:64px;height:64px;object-fit:contain;border-radius:14px;background:#fff;padding:.25rem}
.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.28em;color:var(--gold-strong);font-weight:700}.brand-title{font-weight:800;font-size:1.15rem}
.menu{display:flex;flex-wrap:wrap;gap:1rem;font-size:.95rem;color:var(--muted)}.menu a:hover{color:var(--gold-strong)}
.hero{padding:5rem 0 4rem;background:radial-gradient(circle at 100% 0%, rgba(187,30,16,.18), transparent 32%),radial-gradient(circle at 0% 100%, rgba(18,107,42,.18), transparent 32%)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
.hero h1{margin:.75rem 0 1rem;font-size:clamp(2.6rem,7vw,5.2rem);line-height:1.02;font-weight:900}
.lead{max-width:50rem;color:var(--muted);font-size:1.08rem}
.pill{display:inline-block;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(212,160,23,.30);background:rgba(212,160,23,.10);color:#f7d777;font-size:.95rem;font-weight:600}
.actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:1rem;padding:.95rem 1.25rem;cursor:pointer;font-weight:800}
.btn-block{width:100%}.btn-primary{background:var(--gold-strong);color:#000}.btn-secondary{background:rgba(255,255,255,.05);color:#fff;border:1px solid var(--line)}.btn-outline{background:rgba(212,160,23,.10);color:#f7d777;border:1px solid rgba(212,160,23,.30)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.75rem}
.stat{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:1.25rem;padding:1rem}.stat strong{display:block;font-size:1.65rem;color:var(--gold-strong)}.stat span{font-size:.92rem;color:var(--muted)}
.hero-card{background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:2rem;padding:1rem;box-shadow:0 20px 50px rgba(0,0,0,.3)}.card-inner{background:#111;border-radius:1.5rem;padding:1.25rem}
.section-tag{font-size:.78rem;text-transform:uppercase;letter-spacing:.25em;color:var(--gold-strong);font-weight:800}
.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin:1rem 0 1.25rem}.countdown div{text-align:center;padding:1rem .5rem;border-radius:1.15rem;background:rgba(255,255,255,.04);border:1px solid var(--line)}.countdown strong{display:block;font-size:1.7rem;color:var(--gold-strong)}.countdown span{font-size:.75rem;text-transform:uppercase;color:var(--muted);letter-spacing:.18em}
.feature{border-radius:1rem;padding:1rem;font-weight:800;margin-top:.8rem}.feature.red{background:linear-gradient(90deg,#8d1b14,#d03428)}.feature.green{background:linear-gradient(90deg,#0d5a23,#1d9a45)}.feature.gold{background:linear-gradient(90deg,#a67b12,#f0c43c);color:#000}
.section{padding:5rem 0}.section-alt{background:rgba(255,255,255,.03)}.section-shop{background:linear-gradient(180deg, rgba(212,160,23,.06), transparent)}
.section-head{display:flex;gap:1rem;align-items:end;justify-content:space-between;margin-bottom:2rem}.section h2{margin:.5rem 0 0;font-size:clamp(2rem,4vw,3rem);line-height:1.08}.section-copy{max-width:46rem;color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.panel{border:1px solid var(--line);border-radius:2rem;padding:2rem;background:rgba(255,255,255,.05)}.panel p{color:var(--muted)}.panel-soft{background:linear-gradient(145deg, rgba(255,255,255,.10), rgba(255,255,255,.04))}.panel-dark{background:rgba(0,0,0,.35)}
.country-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1.2rem}.country-grid span{display:block;padding:.9rem 1rem;border-radius:1rem;background:rgba(0,0,0,.30);border:1px solid var(--line);font-size:.95rem}
.card-grid{display:grid;gap:1.2rem}.card-grid.three{grid-template-columns:repeat(3,1fr)}.card-grid.four{grid-template-columns:repeat(4,1fr)}.card-grid.five{grid-template-columns:repeat(5,1fr)}
.ticket-card,.product-card,.artist-card,.sponsor-card,.mini-card{border:1px solid var(--line);border-radius:2rem;padding:1.5rem;background:#111}.ticket-card h3,.product-card h3,.artist-card h3,.sponsor-card h3,.mini-card h3{margin:.15rem 0 .5rem}
.price{font-size:2.3rem;font-weight:900;color:var(--gold-strong);margin:.7rem 0}.thumb,.product-thumb{height:13rem;border-radius:1.35rem;background:linear-gradient(145deg,#222,#090909)}
.artist-card p,.artist-card small,.ticket-card p,.product-card p,.sponsor-card p,.mini-card p{color:var(--muted)}.artist-card small{display:block;margin-top:.75rem}.mini-card span{display:block;color:var(--gold-strong);font-weight:800;margin-bottom:.5rem}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.gallery-grid figure{margin:0;overflow:hidden;border-radius:2rem;border:1px solid var(--line);background:rgba(255,255,255,.05)}.gallery-thumb{height:15rem}.gallery-thumb.red{background:linear-gradient(145deg, rgba(187,30,16,.75), #090909)}.gallery-thumb.green{background:linear-gradient(145deg, rgba(18,107,42,.75), #090909)}.gallery-thumb.gold{background:linear-gradient(145deg, rgba(212,160,23,.75), #090909)}.gallery-grid figcaption{padding:1rem;color:var(--muted)}
.filter-row{display:flex;gap:.6rem;flex-wrap:wrap}.filter-row span,.filter-row a{border:1px solid var(--line);padding:.6rem .95rem;border-radius:999px;background:rgba(255,255,255,.05);font-size:.92rem}.filter-row a{color:inherit;text-decoration:none;transition:background .2s ease,border-color .2s ease}.filter-row a:hover,.filter-row a:focus{background:rgba(255,255,255,.12);border-color:var(--gold-strong, #d4a017)}
.product-meta{display:flex;justify-content:space-between;gap:1rem;align-items:start;margin-top:1rem}.product-meta strong{color:var(--gold-strong)}
.donation-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.2rem 0}.form-grid{display:grid;gap:1rem}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border-radius:1rem;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;padding:1rem;font:inherit}.form-grid textarea{min-height:7.5rem;resize:vertical}
.site-footer{border-top:1px solid var(--line);background:#000;padding:2rem 0}.footer-wrap{display:flex;gap:1rem;justify-content:space-between;align-items:center}.footer-title{font-size:1.1rem;font-weight:800}.footer-sub,.footer-contact{color:var(--muted)}.footer-contact a{color:var(--gold-strong)}
.footer-legal{display:flex;gap:1rem;justify-content:space-between;align-items:center;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--line);color:var(--muted);font-size:.88rem}
.sponsor-ticker{position:relative;display:flex;align-items:center;gap:1rem;background:linear-gradient(90deg,#0b0b0b,#151515 50%,#0b0b0b);border-bottom:1px solid var(--line);padding:.65rem 0;overflow:hidden}
.sponsor-ticker-label{flex-shrink:0;padding-left:1rem;color:var(--gold-strong);font-weight:800;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase}
.sponsor-ticker-viewport{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.sponsor-ticker-track{display:flex;align-items:center;width:max-content;animation:sponsor-scroll 32s linear infinite}
.sponsor-ticker:hover .sponsor-ticker-track{animation-play-state:paused}
.sponsor-logo{flex-shrink:0;display:flex;align-items:center;justify-content:center;height:52px;margin-right:3.5rem;padding:.4rem .9rem;background:#fff;border-radius:.75rem;box-shadow:0 4px 14px rgba(0,0,0,.25);transition:transform .2s ease,box-shadow .2s ease}
.sponsor-logo img{height:100%;width:auto;max-width:180px;object-fit:contain;display:block}
.sponsor-logo:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(212,160,23,.25)}
@keyframes sponsor-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.sponsor-ticker-track{animation:none}}
.sponsor-logo-featured{background:linear-gradient(135deg,#fff,#fff8e1);outline:1px solid rgba(212,160,23,.45);height:56px;margin-right:3.5rem}
.sponsor-logo-featured img{max-width:220px}
.kf-tag{display:inline-block;font-size:.5em;font-weight:800;letter-spacing:.08em;color:var(--gold-strong);vertical-align:middle;margin-left:.35em;padding:.35rem .7rem;border-radius:999px;border:1px solid rgba(212,160,23,.35);background:rgba(212,160,23,.12)}
.sponsor-board{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:1.1rem;margin-bottom:2rem}
.sponsor-board-card{margin:0;background:#fff;border:1px solid var(--line);border-radius:1.25rem;padding:1.1rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;box-shadow:0 14px 32px rgba(0,0,0,.18)}
.sponsor-board-card img{max-height:88px;width:auto;max-width:100%;object-fit:contain}
.sponsor-board-card figcaption{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#222;font-weight:800}
.sponsor-board-featured{background:linear-gradient(135deg,#fff,#fff6d6);border-color:rgba(212,160,23,.55);box-shadow:0 16px 36px rgba(212,160,23,.22)}
.sponsor-board-featured img{max-height:120px}
.sponsor-board-featured figcaption{color:#7a5600}
@media (max-width:1080px){.sponsor-board{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.sponsor-board{grid-template-columns:1fr}.kf-tag{font-size:.55em;display:block;margin:.6rem 0 0}}
@media (max-width:1080px){.hero-grid,.two-col,.card-grid.four,.card-grid.five,.gallery-grid,.card-grid.three{grid-template-columns:1fr 1fr}.stats{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.nav,.section-head,.footer-wrap,.footer-legal{flex-direction:column;align-items:flex-start}.menu{display:none}.hero-grid,.two-col,.card-grid.four,.card-grid.five,.gallery-grid,.card-grid.three,.country-grid,.countdown{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.brand-logo{width:54px;height:54px}.section{padding:4rem 0}.sponsor-ticker{padding:.5rem 0;gap:.6rem}.sponsor-ticker-label{padding-left:.75rem;font-size:.66rem;letter-spacing:.18em}.sponsor-logo{height:36px;margin-right:2.25rem}.sponsor-logo img{max-width:140px}.sponsor-ticker-track{animation-duration:26s}}
