/*
Theme Name: DJ AJ Complete Elementor Theme
Author: ChatGPT
Version: 1.0
Description: Elementor-ready custom theme.
*/

:root {
  --gold: #D4AF37;
  --gold-light: #FFD700;
  --gold-dark: #B8960C;
  --gold-pale: #F5E6A3;
  --neon-pink: #ff0080;
  --neon-blue: #00d4ff;
  --neon-purple: #8b00ff;
  --black: #060608;
  --black2: #0e0e10;
  --black3: #1a1a1e;
  --black4: #222226;
  --white: #F5F0E8;
  --white-dim: rgba(245,240,232,0.65);
  --green: #25D366;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--black);color:var(--white);font-family:'Barlow Condensed',sans-serif;overflow-x:hidden;cursor:none}

/* ── CUSTOM CURSOR ── */
.cursor{position:fixed;width:12px;height:12px;border-radius:50%;background:var(--gold);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:transform 0.1s,background 0.2s;mix-blend-mode:difference}
.cursor-ring{position:fixed;width:40px;height:40px;border-radius:50%;border:1px solid rgba(212,175,55,0.5);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:all 0.15s ease;mix-blend-mode:difference}

/* ── SCROLLBAR ── */
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--black2)}
::-webkit-scrollbar-thumb{background:var(--gold-dark);border-radius:2px}

/* ── PARTICLES ── */
#particles{position:fixed;inset:0;pointer-events:none;z-index:0}

/* ── NAVBAR ── */
nav{position:fixed;top:0;left:0;right:0;z-index:500;padding:24px 60px;display:flex;align-items:center;justify-content:space-between;transition:all 0.5s ease}
nav.scrolled{background:rgba(6,6,8,0.95);backdrop-filter:blur(20px);padding:14px 60px;border-bottom:1px solid rgba(212,175,55,0.1)}
.nav-logo{font-family:'Cinzel',serif;font-size:28px;font-weight:900;background:linear-gradient(135deg,var(--gold-dark),var(--gold-light),var(--gold-dark));background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite;text-decoration:none;letter-spacing:4px}
.nav-links{display:flex;gap:40px;list-style:none}
.nav-links a{color:rgba(245,240,232,0.7);text-decoration:none;font-size:13px;letter-spacing:4px;text-transform:uppercase;font-weight:500;position:relative;transition:color 0.3s}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:right;transition:transform 0.4s ease}
.nav-links a:hover{color:var(--gold)}
.nav-links a:hover::after{transform:scaleX(1);transform-origin:left}
.nav-book-btn{font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:700;color:var(--black);background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));padding:12px 28px;text-decoration:none;transition:all 0.3s;font-family:'Barlow Condensed',sans-serif}
.nav-book-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(212,175,55,0.4)}
@media(max-width:900px){nav{padding:18px 24px}.nav-links{display:none}}

/* ── HERO ── */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hero-img-layer{position:absolute;inset:0;z-index:1}
.hero-img-layer img{width:100%;height:100%;object-fit:cover;opacity:0.35;filter:saturate(0.6)}
.hero-gradient{position:absolute;inset:0;z-index:2;background:radial-gradient(ellipse 90% 70% at 50% 50%,rgba(6,6,8,0.3) 0%,rgba(6,6,8,0.85) 70%,var(--black) 100%)}
.hero-noise{position:absolute;inset:0;z-index:3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");opacity:0.4}
.hero-grid{position:absolute;inset:0;z-index:4;background-image:linear-gradient(rgba(212,175,55,0.04) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,55,0.04) 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 0%,transparent 100%)}
.hero-scanlines{position:absolute;inset:0;z-index:5;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.03) 2px,rgba(0,0,0,0.03) 4px);pointer-events:none}

/* Laser beams on hero */
.laser-beam{position:absolute;top:0;width:2px;height:100%;z-index:6;pointer-events:none;opacity:0.15}
.laser-beam:nth-child(1){left:20%;background:linear-gradient(180deg,transparent,var(--neon-pink),transparent);animation:laser-sweep 8s ease-in-out infinite;transform-origin:top center}
.laser-beam:nth-child(2){left:50%;background:linear-gradient(180deg,transparent,var(--neon-blue),transparent);animation:laser-sweep 10s ease-in-out infinite 2s;transform-origin:top center}
.laser-beam:nth-child(3){left:80%;background:linear-gradient(180deg,transparent,var(--gold-light),transparent);animation:laser-sweep 7s ease-in-out infinite 4s;transform-origin:top center}
@keyframes laser-sweep{0%,100%{transform:rotate(-15deg);opacity:0.1}50%{transform:rotate(15deg);opacity:0.3}}

/* Strobe ring on hero */
.hero-strobe{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(ellipse 60% 60% at 50% 30%,rgba(212,175,55,0.03),transparent);animation:strobe-pulse 4s ease-in-out infinite}
@keyframes strobe-pulse{0%,100%{opacity:0}25%{opacity:1}50%{opacity:0.3}75%{opacity:0.8}}

.hero-content{position:relative;z-index:10;text-align:center;padding:0 40px;max-width:1100px}
.hero-eyebrow{font-size:11px;letter-spacing:12px;color:var(--gold);text-transform:uppercase;margin-bottom:24px;opacity:0;animation:fadeUp 1s ease 0.3s forwards}
.hero-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(212,175,55,0.3);padding:8px 20px;margin-bottom:40px;background:rgba(212,175,55,0.05);opacity:0;animation:fadeUp 1s ease 0.5s forwards}
.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:pulse-dot 2s ease infinite}
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.7)}}
.hero-title{font-family:'Cinzel',serif;font-size:clamp(80px,16vw,200px);font-weight:900;line-height:0.85;background:linear-gradient(180deg,#fff 0%,var(--gold-light) 40%,var(--gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 60px rgba(212,175,55,0.6)) drop-shadow(0 0 100px rgba(212,175,55,0.2));opacity:0;animation:titleReveal 1.2s cubic-bezier(0.16,1,0.3,1) 0s forwards}
@keyframes titleReveal{from{opacity:0;transform:translateY(60px) scaleY(0.8)}to{opacity:1;transform:translateY(0) scaleY(1)}}
.hero-sub{font-family:'Cinzel',serif;font-size:clamp(20px,4vw,48px);letter-spacing:12px;color:var(--gold);font-weight:400;margin-top:8px;opacity:0;animation:fadeUp 1s ease 0.4s forwards}
.hero-divider{display:flex;align-items:center;gap:20px;margin:40px auto;width:fit-content;opacity:0;animation:fadeUp 1s ease 0.8s forwards}
.hero-divider-line{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.hero-divider-line.r{background:linear-gradient(270deg,transparent,var(--gold))}
.hero-divider-icon{color:var(--gold);font-size:18px;animation:spin-slow 8s linear infinite}
@keyframes spin-slow{to{transform:rotate(360deg)}}
.hero-tagline{font-size:clamp(16px,2.5vw,22px);letter-spacing:4px;color:var(--white-dim);font-weight:300;margin-bottom:16px;opacity:0;animation:fadeUp 1s ease 0.9s forwards}
.hero-genres{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:32px 0;opacity:0;animation:fadeUp 1s ease 1s forwards}
.genre-pill{font-size:10px;letter-spacing:3px;color:var(--gold);border:1px solid rgba(212,175,55,0.25);padding:6px 16px;text-transform:uppercase;font-weight:500;background:rgba(212,175,55,0.04);transition:all 0.3s;cursor:default}
.genre-pill:hover{background:rgba(212,175,55,0.12);border-color:var(--gold);transform:translateY(-2px)}
.hero-ctas{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:20px;opacity:0;animation:fadeUp 1s ease 1.1s forwards}
.btn{display:inline-flex;align-items:center;gap:10px;padding:16px 36px;font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:4px;text-transform:uppercase;text-decoration:none;cursor:none;transition:all 0.4s cubic-bezier(0.25,0.46,0.45,0.94);position:relative;overflow:hidden}
.btn-gold{background:linear-gradient(135deg,var(--gold-dark),var(--gold-light),var(--gold-dark));background-size:200%;color:var(--black);animation:shimmer 4s linear infinite;box-shadow:0 8px 30px rgba(212,175,55,0.3)}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 16px 50px rgba(212,175,55,0.55)}
.btn-wa{background:var(--green);color:#fff;box-shadow:0 8px 30px rgba(37,211,102,0.25)}
.btn-wa:hover{background:#1da851;transform:translateY(-3px);box-shadow:0 16px 40px rgba(37,211,102,0.4)}
.btn-outline{background:transparent;color:var(--gold);border:1px solid rgba(212,175,55,0.5)}
.btn-outline:hover{background:rgba(212,175,55,0.08);transform:translateY(-3px);box-shadow:0 0 30px rgba(212,175,55,0.2)}
.hero-scroll{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);text-align:center;z-index:10;opacity:0;animation:fadeUp 1s ease 1.4s forwards}
.scroll-txt{font-size:10px;letter-spacing:5px;color:rgba(212,175,55,0.4);text-transform:uppercase;margin-bottom:10px}
.scroll-line{width:1px;height:50px;background:linear-gradient(180deg,var(--gold),transparent);margin:0 auto;animation:scroll-grow 2s ease-in-out infinite}
@keyframes scroll-grow{0%,100%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}
@keyframes shimmer{to{background-position:200% center}}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

/* ── MARQUEE TICKER ── */
.ticker{background:var(--gold);padding:14px 0;overflow:hidden;position:relative;z-index:10}
.ticker-track{display:flex;gap:0;white-space:nowrap;animation:ticker 30s linear infinite}
.ticker-item{display:inline-flex;align-items:center;gap:20px;padding:0 40px;font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--black)}
.ticker-sep{color:rgba(0,0,0,0.3)}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── SECTIONS ── */
.section{padding:140px 0;position:relative;overflow:hidden}
.container{max-width:1200px;margin:0 auto;padding:0 60px}
.container-wide{max-width:1440px;margin:0 auto;padding:0 60px}
.sec-eyebrow{font-size:11px;letter-spacing:10px;color:var(--gold);text-transform:uppercase;display:block;margin-bottom:16px}
.sec-title{font-family:'Cinzel',serif;font-size:clamp(36px,5vw,72px);font-weight:900;line-height:0.95;margin-bottom:24px}
.gold-grad{background:linear-gradient(180deg,#fff 0%,var(--gold-light) 60%,var(--gold-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px rgba(212,175,55,0.4))}
.gold-divider{width:60px;height:2px;background:var(--gold);margin:0 auto 16px}

/* ── STATS ── */
.stats-band{background:linear-gradient(135deg,rgba(212,175,55,0.07),rgba(0,0,0,0.5));border-top:1px solid rgba(212,175,55,0.12);border-bottom:1px solid rgba(212,175,55,0.12);padding:60px 0}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{text-align:center;padding:30px;border-right:1px solid rgba(212,175,55,0.1);position:relative}
.stat:last-child{border-right:none}
.stat-num{font-family:'Cinzel',serif;font-size:64px;font-weight:900;line-height:1;background:linear-gradient(135deg,var(--gold-dark),var(--gold-light),var(--gold-dark));background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite}
.stat-label{font-size:11px;letter-spacing:5px;color:var(--gold);text-transform:uppercase;margin-top:8px;font-weight:500}
@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:none}}

/* ── SERVICES ── */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}
.svc-card{position:relative;overflow:hidden;aspect-ratio:4/5;cursor:none}
.svc-card img{width:100%;height:100%;object-fit:cover;transition:transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94),filter 0.5s;filter:saturate(0.5) brightness(0.5)}
.svc-card:hover img{transform:scale(1.08);filter:saturate(0.8) brightness(0.4)}
.svc-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(6,6,8,0.97) 100%);z-index:2}
.svc-content{position:absolute;bottom:0;left:0;right:0;padding:40px;z-index:3;transform:translateY(20px);transition:transform 0.5s ease}
.svc-card:hover .svc-content{transform:translateY(0)}
.svc-icon{font-size:40px;margin-bottom:16px;display:block;filter:drop-shadow(0 0 10px rgba(212,175,55,0.5));transition:transform 0.4s}
.svc-card:hover .svc-icon{transform:scale(1.2) translateY(-4px)}
.svc-name{font-family:'Cinzel',serif;font-size:22px;color:#fff;margin-bottom:8px;letter-spacing:2px}
.svc-desc{font-size:14px;color:var(--white-dim);line-height:1.7;letter-spacing:0.5px;font-weight:300;opacity:0;transform:translateY(10px);transition:all 0.4s ease 0.1s}
.svc-card:hover .svc-desc{opacity:1;transform:translateY(0)}
.svc-price-tag{display:inline-block;font-size:11px;letter-spacing:2px;color:var(--black);background:var(--gold);padding:4px 12px;margin-top:10px;font-weight:700;opacity:0;transform:translateY(10px);transition:all 0.4s ease 0.15s}
.svc-card:hover .svc-price-tag{opacity:1;transform:translateY(0)}
.svc-line{width:0;height:2px;background:var(--gold);margin-top:16px;transition:width 0.5s ease 0.1s}
.svc-card:hover .svc-line{width:60px}
@media(max-width:900px){.services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.services-grid{grid-template-columns:1fr}}

/* ── PACKAGES SECTION ── */
.packages-section{padding:140px 0;background:var(--black2);position:relative;overflow:hidden}
.packages-section::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.packages-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}

/* Animated BG scan lines */
.pkg-bg-scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(212,175,55,0.015) 60px,rgba(212,175,55,0.015) 61px);pointer-events:none;z-index:0}

/* DJ Equalizer BG */
.eq-bg{position:absolute;bottom:0;left:0;right:0;height:200px;display:flex;align-items:flex-end;justify-content:center;gap:4px;opacity:0.04;pointer-events:none;z-index:0;overflow:hidden}
.eq-bar-bg{width:8px;border-radius:4px 4px 0 0;background:var(--gold);animation:eq-dance 1.5s ease-in-out infinite}
@keyframes eq-dance{0%,100%{height:20px}50%{height:100px}}

.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative;z-index:2}
.pkg-card{position:relative;background:linear-gradient(160deg,rgba(212,175,55,0.04),rgba(0,0,0,0.6));border:1px solid rgba(212,175,55,0.15);padding:50px 40px;overflow:hidden;transition:all 0.5s cubic-bezier(0.25,0.46,0.45,0.94)}
.pkg-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light),var(--gold-dark));transform:scaleX(0);transform-origin:left;transition:transform 0.5s ease}
.pkg-card:hover{transform:translateY(-10px);border-color:rgba(212,175,55,0.4);box-shadow:0 40px 80px rgba(0,0,0,0.5),0 0 60px rgba(212,175,55,0.08)}
.pkg-card:hover::before{transform:scaleX(1)}
.pkg-card.featured{border-color:rgba(212,175,55,0.5);background:linear-gradient(160deg,rgba(212,175,55,0.08),rgba(0,0,0,0.4));transform:translateY(-8px)}
.pkg-card.featured::before{transform:scaleX(1)}
.pkg-featured-badge{position:absolute;top:20px;right:20px;font-size:9px;letter-spacing:3px;color:var(--black);background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));padding:6px 14px;font-weight:900;text-transform:uppercase}
.pkg-icon{font-size:48px;margin-bottom:20px;display:block;filter:drop-shadow(0 0 15px rgba(212,175,55,0.4))}
.pkg-name{font-family:'Cinzel',serif;font-size:26px;font-weight:900;color:#fff;letter-spacing:3px;margin-bottom:8px}
.pkg-tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--white-dim);margin-bottom:30px;line-height:1.5}
.pkg-price{font-family:'Cinzel',serif;font-size:54px;font-weight:900;line-height:1;background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:6px}
.pkg-price-note{font-size:11px;letter-spacing:3px;color:rgba(212,175,55,0.5);text-transform:uppercase;margin-bottom:32px}
.pkg-divider{width:40px;height:1px;background:rgba(212,175,55,0.3);margin-bottom:28px}
.pkg-features{list-style:none;margin-bottom:36px}
.pkg-features li{display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--white-dim);letter-spacing:0.5px;font-weight:300;margin-bottom:14px;line-height:1.5}
.pkg-feat-check{color:var(--gold);font-size:12px;flex-shrink:0;margin-top:2px}
.pkg-cta{display:block;text-align:center;padding:16px;background:transparent;border:1px solid rgba(212,175,55,0.4);color:var(--gold);font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:4px;text-transform:uppercase;text-decoration:none;transition:all 0.3s;cursor:none}
.pkg-cta:hover{background:var(--gold);color:var(--black)}
.pkg-card.featured .pkg-cta{background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));color:var(--black);border-color:transparent}
.pkg-card.featured .pkg-cta:hover{box-shadow:0 10px 30px rgba(212,175,55,0.4);transform:translateY(-2px)}
@media(max-width:900px){.packages-grid{grid-template-columns:1fr;max-width:480px;margin:0 auto}}
.pkg-glow{position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,0.06),transparent);top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;transition:all 0.5s}
.pkg-card:hover .pkg-glow{background:radial-gradient(circle,rgba(212,175,55,0.12),transparent)}

/* Guest note tag */
.pkg-guest-note{font-size:11px;letter-spacing:2px;color:rgba(212,175,55,0.6);text-transform:uppercase;font-weight:600;border:1px solid rgba(212,175,55,0.2);background:rgba(212,175,55,0.04);padding:7px 14px;margin-bottom:28px;display:inline-block}

/* ── ADD-ONS GRID ── */
.addons-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1100px;margin:0 auto}
@media(max-width:1100px){.addons-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.addons-grid{grid-template-columns:1fr}}
.addon-card{background:linear-gradient(160deg,rgba(212,175,55,0.04),rgba(0,0,0,0.5));border:1px solid rgba(212,175,55,0.12);padding:32px 24px;text-align:left;position:relative;overflow:hidden;transition:all 0.4s cubic-bezier(0.25,0.46,0.45,0.94);cursor:default}
.addon-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light),var(--gold-dark));transform:scaleX(0);transform-origin:left;transition:transform 0.4s ease}
.addon-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,0.35);box-shadow:0 24px 60px rgba(0,0,0,0.45),0 0 40px rgba(212,175,55,0.06)}
.addon-card:hover::before{transform:scaleX(1)}
.addon-icon{font-size:36px;margin-bottom:14px;display:block;filter:drop-shadow(0 0 10px rgba(212,175,55,0.3));transition:transform 0.3s}
.addon-card:hover .addon-icon{transform:scale(1.15) translateY(-3px)}
.addon-name{font-family:'Cinzel',serif;font-size:14px;font-weight:700;color:#fff;letter-spacing:2px;margin-bottom:10px;line-height:1.3}
.addon-desc{font-size:13px;color:var(--white-dim);line-height:1.65;font-weight:300;letter-spacing:0.3px}

/* ── CONSULTATION BANNER ── */
.consult-banner{border:1px solid rgba(212,175,55,0.25);background:linear-gradient(160deg,rgba(212,175,55,0.05),rgba(0,0,0,0.6));padding:52px 40px;max-width:750px;margin:0 auto;position:relative;overflow:hidden}
.consult-banner::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.consult-banner::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,0.3),transparent)}
.consult-pulse{position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,55,0.06),transparent);animation:pulse-slow 4s ease-in-out infinite}
@keyframes pulse-slow{0%,100%{transform:scale(1);opacity:0.5}50%{transform:scale(1.3);opacity:1}}

/* ── LED DANCE FLOOR SECTION ── */
.led-section{padding:140px 0;background:var(--black);position:relative;overflow:hidden}
.led-bg-anim{position:absolute;inset:0;z-index:0;overflow:hidden}
.led-grid-tile{position:absolute;border-radius:4px;animation:led-flicker 2s ease-in-out infinite}
@keyframes led-flicker{0%,100%{opacity:0.02}50%{opacity:0.08}}

.led-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:2}
@media(max-width:900px){.led-content-grid{grid-template-columns:1fr;gap:50px}}

.led-img-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:280px 200px;gap:6px}
.led-img-wrap{position:relative;overflow:hidden}
.led-img-wrap:first-child{grid-column:span 2}
.led-img-wrap img{width:100%;height:100%;object-fit:cover;filter:saturate(1.2) brightness(0.7);transition:all 0.6s ease}
.led-img-wrap:hover img{filter:saturate(1.5) brightness(0.9);transform:scale(1.04)}
.led-tile-glow{position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,0,128,0.1),rgba(0,212,255,0.1));mix-blend-mode:screen;opacity:0;transition:opacity 0.4s}
.led-img-wrap:hover .led-tile-glow{opacity:1}
.led-img-label{position:absolute;bottom:14px;left:14px;font-size:10px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;background:rgba(6,6,8,0.8);padding:5px 12px;border:1px solid rgba(212,175,55,0.3)}

.led-info h3{font-family:'Cinzel',serif;font-size:clamp(28px,4vw,52px);font-weight:900;line-height:0.95;margin-bottom:20px}
.led-highlight{background:linear-gradient(135deg,var(--neon-pink),var(--neon-blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.led-desc{font-family:'Cormorant Garamond',serif;font-size:19px;color:var(--white-dim);line-height:1.7;margin-bottom:36px}

.led-specs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}
.led-spec{background:rgba(212,175,55,0.04);border:1px solid rgba(212,175,55,0.12);padding:20px;transition:all 0.3s}
.led-spec:hover{border-color:rgba(212,175,55,0.3);background:rgba(212,175,55,0.07)}
.led-spec-val{font-family:'Cinzel',serif;font-size:28px;color:var(--gold);font-weight:900;margin-bottom:4px}
.led-spec-label{font-size:11px;letter-spacing:3px;color:var(--white-dim);text-transform:uppercase}

.led-price-box{background:linear-gradient(135deg,rgba(255,0,128,0.06),rgba(0,212,255,0.06));border:1px solid rgba(212,175,55,0.2);padding:28px;margin-bottom:24px;position:relative;overflow:hidden}
.led-price-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--neon-pink),var(--neon-blue))}
.led-price-label{font-size:11px;letter-spacing:5px;color:var(--gold);text-transform:uppercase;margin-bottom:10px;font-weight:700}
.led-price-amount{font-family:'Cinzel',serif;font-size:48px;font-weight:900;background:linear-gradient(135deg,var(--gold-dark),var(--gold-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}
.led-price-sub{font-size:13px;color:var(--white-dim);margin-top:6px;letter-spacing:1px}

/* Animated dance floor tiles at bottom of section */
.dance-floor-preview{width:100%;height:80px;display:grid;grid-template-columns:repeat(16,1fr);gap:3px;margin-top:60px;position:relative;z-index:2}
.df-tile{border-radius:3px;background:rgba(212,175,55,0.05);border:1px solid rgba(212,175,55,0.08);animation:df-pulse 3s ease-in-out infinite}
@keyframes df-pulse{0%,100%{background:rgba(212,175,55,0.04)}50%{background:rgba(212,175,55,0.15)}}

/* ── EVENTS MOSAIC ── */
.events-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,280px);gap:3px}
.ev-tile{position:relative;overflow:hidden;cursor:none}
.ev-tile.large{grid-column:span 2;grid-row:span 2}
.ev-tile img{width:100%;height:100%;object-fit:cover;transition:transform 0.8s ease,filter 0.5s;filter:saturate(0.5) brightness(0.55)}
.ev-tile:hover img{transform:scale(1.06);filter:saturate(0.9) brightness(0.4)}
.ev-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,6,8,0.92) 100%)}
.ev-content{position:absolute;bottom:0;left:0;right:0;padding:30px;z-index:2}
.ev-tag{font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:8px;display:block}
.ev-name{font-family:'Cinzel',serif;font-size:clamp(18px,2.5vw,26px);color:#fff;letter-spacing:2px}
.ev-tile::after{content:'';position:absolute;inset:0;border:1px solid transparent;transition:border-color 0.4s;z-index:3}
.ev-tile:hover::after{border-color:rgba(212,175,55,0.4)}
@media(max-width:900px){.events-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ev-tile.large{grid-column:span 2;min-height:280px}.ev-tile{min-height:200px}}

/* ── PARALLAX QUOTE ── */
.quote-section{position:relative;overflow:hidden;padding:160px 0;text-align:center}
.quote-bg{position:absolute;inset:-50px;z-index:0}
.quote-bg img{width:100%;height:calc(100% + 100px);object-fit:cover;filter:brightness(0.2) saturate(0.4)}
.quote-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(6,6,8,0.8),rgba(6,6,8,0.6))}
.quote-content{position:relative;z-index:2;max-width:900px;margin:0 auto;padding:0 60px}
.quote-mark{font-family:'Cormorant Garamond',serif;font-size:160px;line-height:0.5;color:rgba(212,175,55,0.15);display:block;margin-bottom:20px}
.quote-text{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,4vw,52px);font-style:italic;color:#fff;line-height:1.3;margin-bottom:32px}
.quote-author{font-size:12px;letter-spacing:8px;color:var(--gold);text-transform:uppercase}

/* ── GALLERY STRIP ── */
.gallery-strip{display:flex;gap:3px;overflow:hidden;height:380px}
.gallery-strip-item{flex:1;position:relative;overflow:hidden;min-width:200px;transition:flex 0.5s cubic-bezier(0.25,0.46,0.45,0.94);cursor:none}
.gallery-strip-item:hover{flex:2.5}
.gallery-strip-item img{width:100%;height:100%;object-fit:cover;filter:saturate(0.5) brightness(0.6);transition:filter 0.5s}
.gallery-strip-item:hover img{filter:saturate(1) brightness(0.8)}
.gallery-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(6,6,8,0.7))}
.gallery-label{position:absolute;bottom:20px;left:20px;font-size:12px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;opacity:0;transition:opacity 0.3s}
.gallery-strip-item:hover .gallery-label{opacity:1}

/* ── TESTIMONIALS ── */
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.testi-card{background:linear-gradient(135deg,rgba(212,175,55,0.05),rgba(0,0,0,0.4));border:1px solid rgba(212,175,55,0.15);padding:44px 36px;position:relative;overflow:hidden;transition:all 0.4s}
.testi-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);transform:scaleX(0);transition:transform 0.5s;transform-origin:left}
.testi-card:hover{transform:translateY(-6px);border-color:rgba(212,175,55,0.35);box-shadow:0 30px 60px rgba(0,0,0,0.4),0 0 40px rgba(212,175,55,0.08)}
.testi-card:hover::before{transform:scaleX(1)}
.testi-stars{color:var(--gold);font-size:16px;letter-spacing:4px;margin-bottom:20px}
.testi-text{font-family:'Cormorant Garamond',serif;font-size:19px;font-style:italic;color:var(--white-dim);line-height:1.7;margin-bottom:28px}
.testi-author{font-size:12px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;font-weight:700}
.testi-event{font-size:12px;color:rgba(245,240,232,0.3);margin-top:4px;letter-spacing:1px}
@media(max-width:900px){.testimonials{grid-template-columns:1fr}}

/* ── CONTACT SECTION ── */
.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;align-items:start}
.contact-info-card{background:linear-gradient(135deg,rgba(212,175,55,0.06),rgba(0,0,0,0.4));border:1px solid rgba(212,175,55,0.15);padding:50px 40px;margin-bottom:24px;transition:all 0.4s}
.contact-info-card:hover{border-color:rgba(212,175,55,0.3)}
.ci-item{display:flex;align-items:flex-start;gap:20px;margin-bottom:28px}
.ci-item:last-child{margin-bottom:0}
.ci-icon{width:44px;height:44px;border:1px solid rgba(212,175,55,0.3);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.ci-label{font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:6px;font-weight:700}
.ci-value{font-size:16px;color:var(--white);font-weight:500;letter-spacing:1px}
.ci-value a{color:inherit;text-decoration:none;transition:color 0.3s}
.ci-value a:hover{color:var(--gold)}
.form-card{background:linear-gradient(135deg,rgba(212,175,55,0.05),rgba(0,0,0,0.4));border:1px solid rgba(212,175,55,0.15);padding:50px}
.form-title{font-family:'Cinzel',serif;font-size:28px;color:var(--gold);margin-bottom:6px;letter-spacing:2px}
.form-sub{font-size:14px;color:var(--white-dim);margin-bottom:36px;line-height:1.7;letter-spacing:0.5px;font-weight:300}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-group{margin-bottom:20px}
.form-label{display:block;font-size:10px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:10px;font-weight:700}
.form-input,.form-select,.form-textarea{width:100%;background:rgba(212,175,55,0.04);border:1px solid rgba(212,175,55,0.2);color:var(--white);padding:16px 20px;font-family:'Barlow Condensed',sans-serif;font-size:15px;letter-spacing:1px;outline:none;transition:all 0.3s;-webkit-appearance:none}
.form-input::placeholder,.form-textarea::placeholder{color:rgba(255,255,255,0.2)}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--gold);background:rgba(212,175,55,0.07);box-shadow:0 0 0 2px rgba(212,175,55,0.1)}
.form-select option{background:var(--black2);color:var(--white)}
.form-textarea{resize:vertical;min-height:130px;line-height:1.6}
.submit-btn{width:100%;padding:20px;background:var(--green);color:#fff;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:5px;text-transform:uppercase;border:none;cursor:none;transition:all 0.4s;margin-top:10px;display:flex;align-items:center;justify-content:center;gap:12px}
.submit-btn:hover{background:#1da851;transform:translateY(-3px);box-shadow:0 16px 50px rgba(37,211,102,0.4)}
.form-note{font-size:11px;color:rgba(255,255,255,0.25);text-align:center;margin-top:16px;line-height:1.8;letter-spacing:1px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.form-card{padding:36px 28px}}

/* ── CTA BAND ── */
.cta-band{position:relative;overflow:hidden;padding:140px 0;text-align:center}
.cta-band-bg{position:absolute;inset:0}
.cta-band-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(0.15) saturate(0.4)}
.cta-band-overlay{position:absolute;inset:0;background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(212,175,55,0.07),rgba(6,6,8,0.9))}
.cta-content{position:relative;z-index:2}
.cta-title{font-family:'Cinzel',serif;font-size:clamp(36px,6vw,80px);font-weight:900;margin-bottom:20px}
.cta-sub{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,2.5vw,26px);color:var(--white-dim);margin-bottom:50px;font-style:italic}
.cta-btns{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}
.cta-band::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.cta-band::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}

/* ── FOOTER ── */
footer{background:var(--black2);border-top:1px solid rgba(212,175,55,0.1);padding:80px 0 40px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:60px;margin-bottom:60px}
.footer-logo{font-family:'Cinzel',serif;font-size:36px;font-weight:900;background:linear-gradient(135deg,var(--gold-dark),var(--gold-light),var(--gold-dark));background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s linear infinite;letter-spacing:6px}
.footer-sub{font-family:'Cinzel',serif;font-size:12px;letter-spacing:8px;color:var(--gold);margin-bottom:16px}
.footer-tagline{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:17px;color:var(--white-dim);line-height:1.8;margin-bottom:30px}
.social-row{display:flex;gap:12px}
.social-btn{width:40px;height:40px;border:1px solid rgba(212,175,55,0.2);display:flex;align-items:center;justify-content:center;font-size:18px;transition:all 0.3s;text-decoration:none;color:var(--white-dim)}
.social-btn svg{width:18px;height:18px;fill:currentColor;display:block;transition:fill 0.3s}
.social-btn:hover{color:var(--gold)}
.social-btn:hover{border-color:var(--gold);background:rgba(212,175,55,0.08);transform:translateY(-2px)}
.footer-col-title{font-family:'Cinzel',serif;font-size:14px;letter-spacing:4px;color:var(--gold);margin-bottom:24px;text-transform:uppercase}
.footer-links{list-style:none}
.footer-links li{margin-bottom:12px}
.footer-links a{color:var(--white-dim);text-decoration:none;font-size:14px;letter-spacing:2px;transition:color 0.3s;font-weight:300}
.footer-links a:hover{color:var(--gold)}
.footer-contact-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;font-size:14px;color:var(--white-dim);letter-spacing:0.5px}
.footer-bottom{border-top:1px solid rgba(212,175,55,0.08);padding-top:30px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:rgba(245,240,232,0.25);letter-spacing:2px}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-bottom{flex-direction:column;gap:12px;text-align:center}}
@media(max-width:600px){.footer-grid{grid-template-columns:1fr}}

/* ── WA FLOAT ── */
.wa-float{position:fixed;bottom:36px;right:36px;z-index:400;width:60px;height:60px;background:var(--green);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;text-decoration:none;box-shadow:0 8px 30px rgba(37,211,102,0.4);animation:float-bounce 3s ease-in-out infinite;transition:all 0.3s}
.wa-float:hover{transform:scale(1.1);box-shadow:0 12px 40px rgba(37,211,102,0.6)}
@keyframes float-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.wa-tip{position:absolute;right:70px;top:50%;transform:translateY(-50%);background:var(--black2);color:var(--white);font-size:11px;letter-spacing:2px;padding:8px 16px;white-space:nowrap;border:1px solid rgba(212,175,55,0.2);opacity:0;pointer-events:none;transition:opacity 0.3s}
.wa-float:hover .wa-tip{opacity:1}

/* ── SCROLL ANIMATIONS ── */
.reveal{opacity:0;transform:translateY(40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1)}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1)}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(40px);transition:opacity 0.8s cubic-bezier(0.16,1,0.3,1),transform 0.8s cubic-bezier(0.16,1,0.3,1)}
.reveal-right.visible{opacity:1;transform:translateX(0)}
.delay-1{transition-delay:0.1s}.delay-2{transition-delay:0.2s}.delay-3{transition-delay:0.3s}.delay-4{transition-delay:0.4s}.delay-5{transition-delay:0.5s}

/* ── AUDIO VIZ DECORATIVE ── */
.audio-viz{display:flex;align-items:flex-end;gap:3px;height:40px}
.bar{width:3px;border-radius:2px;background:var(--gold);animation:audio-bar 1.2s ease-in-out infinite alternate}
@keyframes audio-bar{0%{height:4px;opacity:0.4}100%{height:100%;opacity:1}}

/* ── SECTION BG PATTERNS ── */
.bg-dark2{background:var(--black2)}
.bg-dark3{background:var(--black3)}

/* ── DJ BOOTH ANIMATED DIVIDER ── */
.dj-divider{position:relative;height:100px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--black)}
.dj-equalizer{display:flex;align-items:flex-end;gap:4px;height:60px}
.dj-eq-bar{width:6px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--gold-light),var(--gold-dark));animation:dj-eq 0.8s ease-in-out infinite alternate}
@keyframes dj-eq{0%{height:8px;opacity:0.4}100%{height:60px;opacity:1}}

/* ── SPOTLIGHT EFFECT ── */
.spotlight-overlay{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse 50% 50% at var(--mx,50%) var(--my,50%),rgba(212,175,55,0.04) 0%,transparent 70%)}

