@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital@1&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--gold:#e8c84a;--gold-dim:#b8960a;--gold-glow:#e8c84a26;--dark:#0a0a0c;--dark-2:#111116;--dark-3:#1a1a22;--dark-4:#222230;--text:#f0ede4;--text-muted:#8a8799;--white:#fff}html{scroll-behavior:smooth}body{background:var(--dark);color:var(--text);font-family:DM Sans,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-header{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(#0a0a0cf5,#0a0a0c00);justify-content:space-between;align-items:center;padding:1.25rem 3rem;display:flex;position:fixed;top:0;left:0;right:0}.site-header .brand{align-items:center;gap:.6rem;text-decoration:none;display:flex}.site-header .brand img{width:auto;height:36px}.site-header .brand span{letter-spacing:.1em;color:var(--gold);font-family:Bebas Neue,sans-serif;font-size:1.35rem}.site-header nav{gap:2rem;display:flex}.site-header nav a{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .2s}.site-header nav a:hover{color:var(--gold)}.site-footer{color:var(--text-muted);opacity:.55;text-align:center;letter-spacing:.03em;border-top:1px solid #ffffff0f;padding:2.25rem 3rem;font-size:.78rem}.home-hero{background-position:50%;background-repeat:no-repeat;background-size:cover;align-items:center;min-height:100vh;display:flex;position:relative}.home-hero-overlay{background:linear-gradient(90deg,#0a0a0cd9 0%,#0a0a0c80 60%,#0a0a0c33 100%);align-items:center;padding:0 4rem;display:flex;position:absolute;inset:0}.hero-content{max-width:640px;padding-top:5rem}.eyebrow{letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:1.25rem;font-size:.75rem;font-weight:600}.hero-content h1{letter-spacing:.02em;color:var(--white);margin-bottom:1.5rem;font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,6vw,5.5rem);line-height:.95}.lead{color:var(--text-muted);max-width:46ch;margin-bottom:2.25rem;font-size:1.05rem;line-height:1.75}.button-row{flex-wrap:wrap;gap:1rem;display:flex}.button.primary{background:var(--gold);color:#0a0a0c;letter-spacing:.08em;text-transform:uppercase;border-radius:4px;padding:.9rem 2rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.button.primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px #e8c84a4d}.button.secondary{color:var(--text);letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #f0ede44d;border-radius:4px;padding:.9rem 2rem;font-size:.82rem;font-weight:600;text-decoration:none;transition:border-color .2s,color .2s;display:inline-block}.button.secondary:hover{border-color:var(--gold);color:var(--gold)}.gold-divider{background:linear-gradient(90deg,#0000,#e8c84a59,#0000);height:1px;margin:0 3rem}.section-label{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.75rem;font-size:.72rem;font-weight:600}.section-h2{letter-spacing:.03em;color:var(--white);margin-bottom:1.1rem;font-family:Bebas Neue,sans-serif;font-size:clamp(2.4rem,5vw,3.8rem);line-height:1}.section-body{color:var(--text-muted);max-width:52ch;font-size:1rem;line-height:1.75}.pill{letter-spacing:.1em;text-transform:uppercase;border-radius:100px;padding:.32rem .85rem;font-size:.7rem;font-weight:600;display:inline-block}.pill-gold{background:var(--gold-glow);border:1px solid var(--gold-dim);color:var(--gold)}.pill-outline{color:var(--text-muted);background:0 0;border:1px solid #f0ede433}.btn-primary{background:var(--gold);color:#0a0a0c;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;border-radius:4px;padding:.85rem 1.9rem;font-size:.82rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-block}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px #e8c84a4d}.btn-primary.btn-large{margin-bottom:1.25rem;padding:1.1rem 3rem;font-size:.9rem;display:inline-block}.btn-ghost{color:var(--text);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #f0ede440;border-radius:4px;padding:.85rem 1.9rem;font-size:.82rem;font-weight:600;text-decoration:none;transition:border-color .2s,color .2s;display:inline-block}.btn-ghost:hover{border-color:var(--gold);color:var(--gold)}.abba-page{min-height:100vh}.abba-hero{background-position:top;background-repeat:no-repeat;background-size:cover;align-items:center;min-height:100vh;display:flex;position:relative}.abba-hero-overlay{pointer-events:none;background:linear-gradient(90deg,#0a0a0ceb 0%,#0a0a0c99 55%,#0a0a0c4d 100%),linear-gradient(#0a0a0c4d 0%,#0000 30%,#0a0a0c66 100%);position:absolute;inset:0}.abba-hero-left{z-index:2;flex-direction:column;justify-content:center;max-width:680px;padding:8rem 4rem 6rem;display:flex;position:relative}.event-meta{flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1.75rem;display:flex}.hero-eyebrow{color:var(--gold);opacity:.85;margin-bottom:.65rem;font-family:Playfair Display,serif;font-size:1.05rem;font-style:italic}.abba-h1{letter-spacing:.02em;color:var(--white);margin-bottom:1.4rem;font-family:Bebas Neue,sans-serif;font-size:clamp(3.5rem,7.5vw,6.5rem);line-height:.93}.abba-h1-gold{color:var(--gold);display:block}.hero-desc{color:var(--text-muted);max-width:38ch;margin-bottom:2.25rem;font-size:1rem;line-height:1.75}.cta-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.1rem;display:flex}.price-note{color:var(--text-muted);opacity:.7;font-size:.82rem}.abba-hero-right{z-index:2;justify-content:center;align-items:center;padding:6rem 3rem 6rem 1rem;display:flex;position:relative}.poster-frame{filter:drop-shadow(0 40px 60px #000000b3);width:100%;max-width:380px;position:relative}.poster-img{border-radius:10px;width:100%;height:auto;display:block}.schedule-section{background:var(--dark-2);border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;padding:5rem 3rem}.schedule-grid{background:#ffffff0f;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:3rem;display:grid;overflow:hidden}.sched-item{background:var(--dark-2);padding:2rem 1.75rem}.sched-time{color:var(--gold);margin-bottom:.25rem;font-family:Bebas Neue,sans-serif;font-size:2.4rem;line-height:1}.sched-name{color:var(--text);margin-bottom:.35rem;font-size:.92rem;font-weight:600}.sched-desc{color:var(--text-muted);font-size:.78rem;line-height:1.55}.show-section{padding:5rem 3rem}.split-section{grid-template-columns:1fr 1fr;align-items:center;gap:5rem;display:grid}.show-italic{color:var(--gold);margin-top:1.25rem;font-family:Playfair Display,serif;font-size:.92rem;font-style:italic}.video-wrap{background:var(--dark-3);border:1px solid #ffffff14;border-radius:12px;padding-top:56.25%;position:relative;overflow:hidden}.video-wrap iframe{border:none;width:100%;height:100%;position:absolute;top:0;left:0}.expect-section{padding:5rem 3rem}.expect-grid{grid-template-columns:repeat(2,1fr);gap:1.4rem;margin-top:3rem;display:grid}.expect-card{background:var(--dark-3);border:1px solid #ffffff12;border-radius:10px;padding:1.65rem;transition:border-color .2s}.expect-card:hover{border-color:#e8c84a40}.expect-number{color:#e8c84a2e;margin-bottom:.4rem;font-family:Bebas Neue,sans-serif;font-size:2.4rem;line-height:1}.expect-title{color:var(--text);margin-bottom:.35rem;font-size:.95rem;font-weight:600}.expect-desc{color:var(--text-muted);font-size:.82rem;line-height:1.6}.venue-section{background:var(--dark-2);padding:5rem 3rem}.venue-card{background:var(--dark-3);border:1px solid #e8c84a24;border-radius:12px;grid-template-columns:1fr auto;align-items:start;gap:3rem;margin-top:2rem;padding:2.5rem;display:grid}.venue-name{letter-spacing:.04em;color:var(--white);margin-bottom:.75rem;font-family:Bebas Neue,sans-serif;font-size:3rem;line-height:1}.venue-desc{color:var(--text-muted);max-width:50ch;margin-bottom:1.1rem;font-size:.95rem;line-height:1.7}.venue-address{color:var(--text-muted);opacity:.55;letter-spacing:.04em;font-size:.78rem}.map-placeholder{background:var(--dark-4);border:1px solid #ffffff12;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:.5rem;width:190px;height:145px;text-decoration:none;transition:border-color .2s;display:flex}.map-placeholder:hover{border-color:#e8c84a4d}.map-placeholder span{color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.68rem}.ticket-section{text-align:center;background:linear-gradient(135deg,#0f0828 0%,#0a0a0c 50%,#1a0e00 100%);padding:6rem 3rem;position:relative;overflow:hidden}.ticket-glow{pointer-events:none;background:radial-gradient(#e8c84a0e,#0000 70%);width:600px;height:600px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ticket-content{z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.ticket-price-display{letter-spacing:.02em;color:var(--gold);margin:1.4rem 0 .4rem;font-family:Bebas Neue,sans-serif;font-size:7rem;line-height:1}.ticket-price-display sup{vertical-align:top;margin-top:1.2rem;font-size:3rem;display:inline-block}.ticket-caption{color:var(--text-muted);letter-spacing:.04em;margin-bottom:2.25rem;font-size:.88rem}.urgency-bar{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;background:#e8c84a12;border:1px solid #e8c84a33;border-radius:100px;align-items:center;gap:.5rem;margin-bottom:2.25rem;padding:.45rem 1.2rem;font-size:.75rem;display:inline-flex}.urgency-dot{background:var(--gold);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.6s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.ticket-fine{color:var(--text-muted);opacity:.6;font-size:.78rem}@media (width<=900px){.site-header{padding:1rem 1.5rem}.home-hero-overlay{padding:0 1.5rem}.abba-hero{grid-template-columns:1fr;min-height:auto}.abba-hero-left{padding:7rem 1.5rem 3rem}.abba-hero-right{justify-content:flex-start;padding:2rem 1.5rem 4rem}.poster-frame{max-width:300px}.schedule-grid{grid-template-columns:1fr}.split-section{grid-template-columns:1fr;gap:2.5rem}.expect-grid,.venue-card{grid-template-columns:1fr}.map-placeholder{width:100%}.gold-divider{margin:0 1.5rem}.show-section,.expect-section,.schedule-section,.venue-section{padding:4rem 1.5rem}.ticket-section{padding:5rem 1.5rem}.ticket-price-display{font-size:5rem}.site-footer{padding:2rem 1.5rem}}
