/* ─────────────────────────────────────────────────────────
   SitarBug — Shared Stylesheet
   Light theme: default (:root)  |  Dark theme: .theme-dark
   ───────────────────────────────────────────────────────── */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ─── SHARED (gold / status) ─── */
:root{
  --gold:#D4AF37;
  --gold2:#B8860B;
  --gold3:#C19A6B;
  --amber:#8B4513;
  --border:rgba(212,175,55,0.25);
  --border2:rgba(212,175,55,0.5);
  --green:#4CAF50;
  --green-bg:rgba(76,175,80,0.08);
  --green-border:rgba(76,175,80,0.3);

  /* ── LIGHT THEME defaults ── */
  --bg:#F5F0E6;
  --bg2:#FFFFFF;
  --bg3:#FFFFFF;
  --bg4:#F5F0E6;
  --cream:#000000;
  --cream2:#2C2C2C;
  --cream3:#8B4513;
  --white:#FFFFFF;
  --btn-ol-color:#2C2C2C;
  --btn-ol-border:rgba(0,0,0,0.22);
  --card-shadow:0 2px 10px rgba(0,0,0,0.07);
  --img-fade:linear-gradient(to right,rgba(255,255,255,0),rgba(255,255,255,0.15));
}

/* ── DARK THEME overrides ── */
.theme-dark{
  --bg:#080604;
  --bg2:#110D09;
  --bg3:#1C1510;
  --bg4:#261A10;
  --cream:#F5F0E6;
  --cream2:#D0BFA0;
  --cream3:#9A8060;
  --btn-ol-color:rgba(245,240,230,0.78);
  --btn-ol-border:rgba(245,240,230,0.25);
  --card-shadow:0 2px 12px rgba(0,0,0,0.32);
  --img-fade:linear-gradient(to right,rgba(8,6,4,0),rgba(8,6,4,0.44));
}

html{scroll-behavior:smooth}
body{font-family:'Raleway',sans-serif;background-color:var(--bg);color:var(--cream);overflow-x:hidden;line-height:1.6}
img{display:block;max-width:100%}

/* ─── UTILITIES ─── */
.max{max-width:1180px;margin:0 auto;padding:0 28px}
.tag{font-size:16px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2);font-weight:600;font-family:'Raleway',sans-serif}
.theme-dark .tag{color:var(--gold)}
h2.sh,h1.sh{font-family:'Playfair Display',serif;font-size:clamp(28px,3.5vw,46px);font-weight:700;color:var(--cream);line-height:1.15}
.rule{width:44px;height:2px;background:var(--gold);margin:16px 0 24px}
.rule.center{margin:16px auto 24px}
p.lead{font-size:15px;color:var(--cream2);line-height:1.8;max-width:600px}
strong{color:var(--cream);font-weight:600}

/* ─── BUTTONS ─── */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Raleway',sans-serif;font-size:13px;font-weight:600;letter-spacing:.08em;text-decoration:none;border-radius:2px;padding:13px 26px;transition:all .2s;cursor:pointer;border:none}
.btn-primary{background:var(--gold);color:#000}
.btn-primary:hover{background:var(--gold2);color:#fff;transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--btn-ol-color);border:1px solid var(--btn-ol-border)}
.btn-outline:hover{border-color:var(--gold);color:var(--gold2)}
.btn-sm{padding:9px 18px;font-size:12px}

/* ─── NAV (always dark) ─── */
nav{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(0,0,0,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,175,55,0.18);transition:background .3s}
.nav-wrap{max-width:1180px;margin:0 auto;padding:0 28px;height:66px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none}
.logo-img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1.5px solid var(--gold3)}
.logo-name{font-family:'Playfair Display',serif;font-size:20px;color:var(--gold);letter-spacing:.06em}
.logo-sub{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,240,230,0.45);margin-top:1px}
.nav-links{display:flex;gap:2px;list-style:none}
.nav-links a{color:rgba(245,240,230,0.72);text-decoration:none;font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:2px;transition:color .2s}
.nav-links a:hover,.nav-links a.active{color:var(--gold)}
.nav-cta{background:var(--gold);color:#000;font-size:12px;font-weight:600;padding:8px 20px;border-radius:2px;text-decoration:none;letter-spacing:.06em;transition:background .2s,color .2s;flex-shrink:0}
.nav-cta:hover{background:var(--gold2);color:#fff}
.nav-right{display:flex;align-items:center;gap:14px;flex-shrink:0}
.nav-socials{display:flex;align-items:center}
.nav-social{color:rgba(245,240,230,0.32);font-size:14px;text-decoration:none;padding:5px 7px;transition:color .2s;line-height:1}
.nav-social:hover{color:var(--gold)}
.ham{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px;background:none;border:none}
.ham span{display:block;width:22px;height:1.5px;background:#fff;transition:all .3s}
.mob-menu{display:none;position:fixed;top:66px;left:0;right:0;background:rgba(0,0,0,.98);border-bottom:1px solid rgba(212,175,55,0.15);z-index:899;padding:20px 28px}
.mob-menu.open{display:block}
.mob-menu a{display:block;color:rgba(245,240,230,0.72);text-decoration:none;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:14px;font-weight:400;letter-spacing:.06em}
.mob-menu a.mob-active,.mob-menu a:hover{color:var(--gold)}

/* ─── STATS BAR (always charcoal) ─── */
.stats{background:#2C2C2C;border-top:1px solid rgba(212,175,55,0.15);border-bottom:1px solid rgba(212,175,55,0.15);padding:20px 28px}
.stats-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-around;flex-wrap:wrap;gap:16px}
.stat{text-align:center;padding:4px 20px;border-right:1px solid rgba(212,175,55,0.18)}
.stat:last-child{border-right:none}
.stat-n{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:var(--gold);line-height:1}
.stat-l{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,240,230,0.5);margin-top:4px}

/* ─── PAGE HEADER (inner pages) ─── */
.page-header{padding:72px 28px 12px;position:relative;overflow:hidden;border-bottom:1px solid var(--border)}
.page-header-bg{position:absolute;inset:0;background:var(--bg2);z-index:0}
.theme-dark .page-header-bg{background:var(--bg2)}
.page-header-overlay{position:absolute;inset:0;background:url('../images/music-bg.jpg') center/cover no-repeat;opacity:.04;z-index:1}
.page-header-content{position:relative;z-index:2;max-width:1180px;margin:0 auto}
/* For light pages, let bg show through without overlay */
.theme-light .page-header{background:var(--bg2)}
.theme-light .page-header-overlay{opacity:.03}

/* ─── DARK ACCENT BOXES (always dark, cross-theme) ─── */
.dark-box{background:#4A2C0B;border:1px solid rgba(212,175,55,0.38);padding:28px;margin-bottom:20px}
.dark-box .box-eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-bottom:12px}
.dark-box .box-title{font-family:'Playfair Display',serif;font-size:clamp(20px,2.8vw,28px);color:#F5F0E6;margin-bottom:10px}
.dark-box .box-sub{font-size:14px;color:rgba(245,240,230,0.75);line-height:1.75;margin-bottom:32px;max-width:680px}
.dark-box .btn-outline{color:#F5F0E6;border:1px solid rgba(245,240,230,0.3)}
.dark-box .btn-outline:hover{border-color:var(--gold);color:var(--gold)}

.charcoal-box{background:#2C2C2C;border:1px solid rgba(212,175,55,0.32);padding:28px 32px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px}
.charcoal-box .cb-head{font-family:'Playfair Display',serif;font-size:20px;color:#F5F0E6;margin-bottom:6px}
.charcoal-box .cb-sub{font-size:13px;color:rgba(245,240,230,0.58);line-height:1.5}

/* ─── FOOTER (always dark) ─── */
footer{background:#000;padding:52px 0 24px;border-top:1px solid rgba(212,175,55,0.18)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;margin-bottom:28px}
.f-logo{font-family:'Playfair Display',serif;font-size:22px;color:var(--gold);margin-bottom:4px}
.f-logo-img{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.f-logo-img img{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid rgba(212,175,55,0.42)}
.f-tag{font-size:12px;color:rgba(245,240,230,0.45);line-height:1.65;margin-bottom:20px}
.f-socials{display:flex;gap:9px}
.f-social{width:34px;height:34px;border:1px solid rgba(212,175,55,0.18);display:flex;align-items:center;justify-content:center;color:rgba(245,240,230,0.42);font-size:13px;text-decoration:none;transition:border-color .2s,color .2s}
.f-social:hover{border-color:var(--gold);color:var(--gold)}
.f-col h4{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-weight:500}
.f-col a{display:block;font-size:13px;color:rgba(245,240,230,0.42);text-decoration:none;margin-bottom:9px;transition:color .2s}
.f-col a:hover{color:#F5F0E6}
.f-bottom{border-top:1px solid rgba(255,255,255,.05);padding-top:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}
.f-copy{font-size:11px;color:rgba(245,240,230,0.2)}
.f-copy a{color:rgba(212,175,55,0.35);text-decoration:none}

/* ─── SEASONAL THEMES ─── */

/* Fall — rich autumn: burnt orange, amber, deep brown */
body.theme-fall{
  --bg:#080503;--bg2:#130905;--bg3:#1F1008;--bg4:#2B1608;
  --gold:#C87820;--gold2:#D4893A;--gold3:#A86018;--amber:#8B3A10;
  --border:rgba(200,120,32,.22);--border2:rgba(200,120,32,.45);
  --cream:#F5E8CC;--cream2:#C8A070;--cream3:#8A6035;
  --btn-ol-color:rgba(245,232,204,.78);--btn-ol-border:rgba(245,232,204,.25);
  --card-shadow:0 2px 12px rgba(0,0,0,.36);
  --img-fade:linear-gradient(to right,rgba(8,5,3,0),rgba(8,5,3,.44));
  --green:#4CAF50;--green-bg:rgba(76,175,80,.08);--green-border:rgba(76,175,80,.3);
}
body.theme-fall::before,
body.theme-fall::after{
  content:'';
  position:fixed;
  width:min(480px,44vw);
  height:min(480px,44vw);
  pointer-events:none;
  z-index:2;
}
body.theme-fall::before{
  top:0;left:0;
  background:url('../images/fall-tl.svg') no-repeat left top/contain;
}
body.theme-fall::after{
  bottom:0;right:0;
  background:url('../images/fall-br.svg') no-repeat right bottom/contain;
}
body.theme-fall .tag{color:var(--gold)}

/* Winter — deep navy, ice blue, frozen snow */
body.theme-winter{
  --bg:#05080F;--bg2:#0A1020;--bg3:#101828;--bg4:#182030;
  --gold:#8BBDD8;--gold2:#A8CDE0;--gold3:#6E9CB8;--amber:#3A6080;
  --border:rgba(139,189,216,.2);--border2:rgba(139,189,216,.42);
  --cream:#E8F2F8;--cream2:#A8C8D8;--cream3:#6090A8;
  --btn-ol-color:rgba(232,242,248,.78);--btn-ol-border:rgba(232,242,248,.25);
  --card-shadow:0 2px 12px rgba(0,0,0,.42);
  --img-fade:linear-gradient(to right,rgba(5,8,15,0),rgba(5,8,15,.44));
  --green:#4CAF50;--green-bg:rgba(76,175,80,.08);--green-border:rgba(76,175,80,.3);
}
body.theme-winter::before,
body.theme-winter::after{
  content:'';
  position:fixed;
  width:min(480px,44vw);
  height:min(480px,44vw);
  pointer-events:none;
  z-index:2;
}
body.theme-winter::before{
  top:0;left:0;
  background:url('../images/winter-tl.svg') no-repeat left top/contain;
}
body.theme-winter::after{
  bottom:0;right:0;
  background:url('../images/winter-br.svg') no-repeat right bottom/contain;
}
body.theme-winter .tag{color:var(--gold)}

/* Spring — light, floral: blush & peony on cream white */
body.theme-spring{
  --bg:#FFF8E7;--bg2:#FFFFFF;--bg3:#FFF0F5;--bg4:#F7C6C7;
  --gold:#fa567c;--gold2:#FFD93D;--gold3:#CDB4DB;--amber:#B39DDB;
  --border:rgba(255,111,145,.2);--border2:rgba(255,111,145,.42);
  --cream:#2D1020;--cream2:#5A3045;--cream3:#8A5870;
  --white:#FFFFFF;
  --btn-ol-color:#2D1020;--btn-ol-border:rgba(0,0,0,.18);
  --card-shadow:0 4px 20px rgba(255,111,145,.16);
  --img-fade:linear-gradient(to right,rgba(255,248,231,0),rgba(255,248,231,.15));
  --green:#7ED957;--green-bg:rgba(126,217,87,.1);--green-border:rgba(126,217,87,.35);
}
body.theme-spring::before,
body.theme-spring::after{
  content:'';
  position:fixed;
  width:min(480px,44vw);
  height:min(480px,44vw);
  pointer-events:none;
  z-index:2;
}
body.theme-spring::before{
  top:0;left:0;
  background:url('../images/spring-tl.svg') no-repeat left top/contain;
}
body.theme-spring::after{
  bottom:0;right:0;
  background:url('../images/spring-br.svg') no-repeat right bottom/contain;
}
body.theme-spring .tag{color:var(--gold)}
body.theme-spring .rule{background:linear-gradient(90deg,#FF6F91,#CDB4DB,#FFD93D)}
body.theme-spring h1.sh,body.theme-spring h2.sh{text-shadow:0 2px 28px rgba(255,111,145,.18)}
body.theme-spring .btn-primary{color:#fff;box-shadow:0 4px 18px rgba(255,111,145,.3)}
body.theme-spring .btn-primary:hover{box-shadow:0 6px 24px rgba(255,111,145,.42)}
body.theme-spring .nav-cta{color:#fff}

/* Summer — desert sand dunes, bright sunshine */
body.theme-summer{
  --bg:#FDF8F0;--bg2:#FFFFFF;--bg3:#FFF3E0;--bg4:#F4E1C1;
  --gold:#FFC857;--gold2:#FFB347;--gold3:#FF9F1C;--amber:#D96C06;
  --border:rgba(255,200,87,.28);--border2:rgba(255,179,71,.5);
  --cream:#2C1810;--cream2:#6B3E20;--cream3:#A06840;
  --white:#FFFFFF;
  --btn-ol-color:#2C1810;--btn-ol-border:rgba(0,0,0,.18);
  --card-shadow:0 2px 12px rgba(255,159,28,.14);
  --img-fade:linear-gradient(to right,rgba(253,248,240,0),rgba(253,248,240,.15));
  --green:#588157;--green-bg:rgba(88,129,87,.1);--green-border:rgba(88,129,87,.35);
}
body.theme-summer::before,
body.theme-summer::after{
  content:'';
  position:fixed;
  width:min(480px,44vw);
  height:min(480px,44vw);
  pointer-events:none;
  z-index:2;
}
body.theme-summer::before{
  top:0;left:0;
  background:url('../images/summer-tl.svg') no-repeat left top/contain;
}
body.theme-summer::after{
  bottom:0;right:0;
  background:url('../images/summer-br.svg') no-repeat right bottom/contain;
}
body.theme-summer .tag{color:#D96C06}
body.theme-summer .btn-primary:hover{color:#fff}

/* ─── THEME SWITCHER (footer, always dark) ─── */
.theme-switcher{display:flex;align-items:center;gap:16px;padding:18px 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:24px;flex-wrap:wrap}
.ts-label{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:rgba(238, 165, 19, 0.3);font-family:'Raleway',sans-serif;flex-shrink:0}
.ts-btns{display:flex;gap:8px;flex-wrap:wrap}
.ts-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1px solid rgba(245,240,230,.12);color:rgba(245,240,230,.38);font-family:'Raleway',sans-serif;font-size:11px;font-weight:500;letter-spacing:.06em;padding:6px 14px;border-radius:2px;cursor:pointer;transition:all .2s}
.ts-btn:hover{border-color:rgba(245,240,230,.28);color:rgba(245,240,230,.65)}
.ts-btn i{font-size:10px}
.ts-btn[data-theme="spring"].ts-active{border-color:rgba(255,111,145,.65);color:#FF6F91;background:rgba(255,111,145,.08)}
.ts-btn[data-theme="summer"].ts-active{border-color:rgba(255,200,87,.65);color:#FFC857;background:rgba(255,200,87,.08)}
.ts-btn[data-theme="fall"].ts-active{border-color:rgba(200,120,32,.65);color:#D4893A;background:rgba(200,120,32,.08)}
.ts-btn[data-theme="winter"].ts-active{border-color:rgba(139,189,216,.65);color:#A8CDE0;background:rgba(139,189,216,.08)}

/* ─── SCROLL TO TOP ─── */
.stop{position:fixed;bottom:24px;right:24px;width:40px;height:40px;background:var(--gold);color:#000;display:flex;align-items:center;justify-content:center;font-size:14px;text-decoration:none;opacity:0;transition:opacity .3s,transform .2s,background .2s;z-index:400;border-radius:2px}
.stop.show{opacity:1}
.stop:hover{transform:translateY(-2px);background:var(--gold2)}

/* ─── RESPONSIVE ─── */
@media(max-width:1020px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){
  .nav-links,.nav-right{display:none}
  .ham{display:flex}
  .footer-grid{grid-template-columns:1fr}
  .stats-inner{gap:24px}
  .stat{border-right:none}
  .page-header{padding:80px 28px 28px}
  .dark-box{padding:28px 20px}
}

