/* Variant theme: Spring Break 2026_02
   Scope everything under .campaign--sb02 so other pages remain unchanged. */

.campaign--sb02{
  /* Sunny / preppy palette (light base) */
  --sb-paper:#fbfffd;
  --sb-paper2:#f3fffb;
  --sb-ink:#0b1b14;
  --sb-muted:#54686c;
  --sb-line:rgba(11,27,20,.14);
  --muted:#54686c;

  --sb-sun:#ffd166;
  --sb-lemon:#ffeaa4;
  --sb-mint:#3ddc97;
  --sb-mint2:#bff7df;
  --sb-sky:#59cfff;
  --sb-navy:#103a4a;

  color:var(--sb-ink);
}

/* Background: light, airy, springy */
.campaign--sb02 body,
body.campaign--sb02{
  background:
    radial-gradient(1200px 560px at 10% -10%, rgba(255,209,102,.40), transparent 60%),
    radial-gradient(900px 520px at 92% 0%, rgba(89,207,255,.32), transparent 62%),
    radial-gradient(900px 540px at 18% 92%, rgba(61,220,151,.22), transparent 62%),
    radial-gradient(860px 520px at 80% 88%, rgba(255,234,164,.40), transparent 66%),
    linear-gradient(180deg, var(--sb-paper2), var(--sb-paper));
}

body.campaign--sb02::before{
  opacity:.10;
  background-image:
    radial-gradient(rgba(16,58,74,.20) 0.45px, transparent 0.55px),
    radial-gradient(rgba(61,220,151,.22) 0.4px, transparent 0.5px);
  background-size: 3px 3px, 7px 7px;
  background-position: 0 0, 2px 4px;
}

/* Header: brighter glass + colorful edge glow */
body.campaign--sb02 .siteHeader{
  border-bottom:1px solid rgba(11,27,20,.10);
  background: rgba(251,255,253,.72);
}
body.campaign--sb02 .siteHeader.isElevated{
  box-shadow:0 14px 40px rgba(16,58,74,.12), 0 0 90px rgba(89,207,255,.14);
}
body.campaign--sb02 .brandTag{color:rgba(11,27,20,.62)}
body.campaign--sb02 .navLink{color:rgba(11,27,20,.70)}
body.campaign--sb02 .navLink:hover{background:rgba(16,58,74,.06); color:var(--sb-ink)}

/* Buttons: more pop */
body.campaign--sb02 .button{
  border-radius:16px;
}
body.campaign--sb02 .buttonPrimary{
  background:
    linear-gradient(135deg, var(--sb-sun), var(--sb-mint));
  color: var(--sb-navy);
  border-color: rgba(255,255,255,.0);
  box-shadow: 0 18px 44px rgba(255,209,102,.22), 0 8px 28px rgba(61,220,151,.16);
}
body.campaign--sb02 .buttonPrimary:hover{
  transform: translateY(-1px);
  box-shadow: 0 22px 58px rgba(255,209,102,.24), 0 10px 32px rgba(61,220,151,.18);
}
body.campaign--sb02 .buttonGhost{
  border-color: rgba(11,27,20,.16);
  background: rgba(251,255,253,.70);
}
body.campaign--sb02 .buttonGhost:hover{
  background: rgba(16,58,74,.06);
  border-color: rgba(89,207,255,.30);
}
body.campaign--sb02 .buttonSubtle{
  border-color: transparent;
  background: rgba(16,58,74,.05);
}
body.campaign--sb02 .buttonSubtle:hover{
  background: rgba(16,58,74,.08);
}

/* Hero: more lively typography + glow */
body.campaign--sb02 .hero{
  padding:54px 0 34px;
}
body.campaign--sb02 .eyebrow{
  color: rgba(11,27,20,.72);
  letter-spacing:.06em;
  font-weight:850;
}
body.campaign--sb02 .heroEyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(11,27,20,.12);
  background: linear-gradient(180deg, rgba(251,255,253,.85), rgba(251,255,253,.62));
  box-shadow: 0 14px 40px rgba(16,58,74,.10);
  width:fit-content;
}
body.campaign--sb02 .heroEyebrow::before{
  content:"";
  width:10px; height:10px;
  border-radius:999px;
  background: linear-gradient(135deg, var(--sb-mint), var(--sb-sun));
  box-shadow: 0 0 0 6px rgba(61,220,151,.12);
}

body.campaign--sb02 .h1Serif{
  letter-spacing:-.01em;
  text-shadow: 0 22px 80px rgba(16,58,74,.14);
}
body.campaign--sb02 .h1Serif .whiteLine{
  color: rgba(11,27,20,.96);
}
body.campaign--sb02 .h1Serif .greenLine{
  color: transparent;
  background-image: linear-gradient(90deg, var(--sb-mint), var(--sb-sky), var(--sb-sun));
  -webkit-background-clip:text;
  background-clip:text;
}
body.campaign--sb02 .lede{
  color: var(--sb-muted);
  font-size:18px;
}

/* Hero media card: stronger depth, lighter border */
body.campaign--sb02 .heroMedia{
  border-color: rgba(11,27,20,.10);
  box-shadow:
    0 40px 90px rgba(16,58,74,.18),
    0 0 140px rgba(89,207,255,.18),
    0 0 120px rgba(255,209,102,.16);
}
body.campaign--sb02 .heroMedia::after{
  background: linear-gradient(180deg, rgba(0,0,0,.00) 36%, rgba(16,58,74,.20) 64%, rgba(16,58,74,.55) 100%);
}

/* Badge: more “pill pop” */
body.campaign--sb02 .mediaBadge{
  background: rgba(251,255,253,.74);
  border-color: rgba(11,27,20,.14);
  color: rgba(11,27,20,.88);
  box-shadow: 0 16px 44px rgba(16,58,74,.14), 0 0 0 6px rgba(255,209,102,.18);
  backdrop-filter: blur(10px);
}
body.campaign--sb02 .mediaBadge::before{
  content:"";
  display:inline-block;
  width:8px; height:8px;
  margin-right:8px;
  border-radius:999px;
  background: linear-gradient(135deg, var(--sb-mint), var(--sb-sun));
  box-shadow: 0 0 0 5px rgba(61,220,151,.14);
  vertical-align:middle;
}

/* Notice + trust: brighter chips */
body.campaign--sb02 .trustRow li{
  border-color: rgba(11,27,20,.12);
  background: linear-gradient(180deg, rgba(251,255,253,.85), rgba(251,255,253,.60));
  color: rgba(11,27,20,.84);
}
body.campaign--sb02 .noticeBar{
  border-color: rgba(11,27,20,.12);
  background:
    radial-gradient(600px 120px at 20% 0%, rgba(255,209,102,.34), transparent 65%),
    radial-gradient(480px 120px at 90% 0%, rgba(61,220,151,.22), transparent 70%),
    linear-gradient(180deg, rgba(251,255,253,.85), rgba(251,255,253,.55));
  color: var(--sb-muted);
}

/* Sections: swap bands to lighter “glass” + colored rims */
body.campaign--sb02 .sectionBandA,
body.campaign--sb02 .sectionBandB,
body.campaign--sb02 .sectionBandC{
  border-top:1px solid rgba(11,27,20,.08);
  border-bottom:1px solid rgba(11,27,20,.06);
}

body.campaign--sb02 .sectionBandA{
  background:
    radial-gradient(1200px 420px at 10% 10%, rgba(61,220,151,.18), transparent 62%),
    radial-gradient(900px 360px at 96% 18%, rgba(255,209,102,.24), transparent 70%),
    linear-gradient(180deg, rgba(251,255,253,.78), rgba(243,255,251,.72));
}
body.campaign--sb02 .sectionBandB{
  background:
    radial-gradient(1100px 420px at 85% 10%, rgba(89,207,255,.18), transparent 64%),
    radial-gradient(900px 380px at 12% 88%, rgba(255,234,164,.32), transparent 68%),
    linear-gradient(180deg, rgba(251,255,253,.74), rgba(243,255,251,.70));
}
body.campaign--sb02 .sectionBandC{
  background:
    radial-gradient(960px 420px at 55% 0%, rgba(255,209,102,.24), transparent 66%),
    radial-gradient(1000px 420px at 16% 92%, rgba(61,220,151,.16), transparent 72%),
    linear-gradient(180deg, rgba(251,255,253,.72), rgba(243,255,251,.68));
}

/* Cards: punchier hover, lighter surfaces */
body.campaign--sb02 .infoCard,
body.campaign--sb02 .heroCard,
body.campaign--sb02 .packageCard{
  border-color: rgba(11,27,20,.10);
  background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.70));
}
body.campaign--sb02 .infoCard:hover{
  transform: translateY(-3px);
  border-color: rgba(61,220,151,.24);
  box-shadow: 0 22px 60px rgba(16,58,74,.14), 0 0 0 6px rgba(61,220,151,.10);
}
body.campaign--sb02 .mediaCard img,
body.campaign--sb02 .packageCard img{
  filter: saturate(1.08) contrast(1.02);
}

body.campaign--sb02 .packagePopular{
  border-color: rgba(255,209,102,.50);
  box-shadow: 0 24px 64px rgba(16,58,74,.14), 0 0 0 6px rgba(255,209,102,.18);
}
body.campaign--sb02 .packageTag{
  border-color: rgba(11,27,20,.12);
  background: rgba(243,255,251,.78);
  color: rgba(11,27,20,.86);
}

/* Ensure “Most Popular…” and other tags stay readable on light surfaces */
body.campaign--sb02 .packagePopular .packageTag{
  border-color: rgba(11,27,20,.14);
  background: linear-gradient(135deg, rgba(255,209,102,.40), rgba(61,220,151,.24));
  color: rgba(11,27,20,.92);
}

/* Lists and small caps labels were tuned for dark theme in site.css */
body.campaign--sb02 .list{
  color: var(--sb-muted);
}
body.campaign--sb02 .testimonialRole{
  color: var(--sb-muted);
}

/* Stats: gradient cards */
body.campaign--sb02 .statCard{
  background: linear-gradient(145deg, rgba(255,209,102,.28), rgba(61,220,151,.18));
  border-color: rgba(11,27,20,.10);
}
body.campaign--sb02 .statValue{color: rgba(11,27,20,.96)}
body.campaign--sb02 .statLabel{color: rgba(11,27,20,.68)}

/* Body copy color for the sb02 page */
body.campaign--sb02{
  color: var(--sb-muted);
}

/* Keep headings / key UI text dark for readability */
body.campaign--sb02 .h2,
body.campaign--sb02 .infoCardTitle,
body.campaign--sb02 .brandName{
  color: rgba(11,27,20,.96);
}

/* Footer */
body.campaign--sb02 .siteFooter{
  border-top:1px solid rgba(11,27,20,.10);
  background: linear-gradient(180deg, rgba(251,255,253,.78), rgba(243,255,251,.86));
}
body.campaign--sb02 .footerLinks{color: rgba(11,27,20,.62)}
body.campaign--sb02 .footerLinks a{color: rgba(11,27,20,.62)}
body.campaign--sb02 .footerLinks a:hover{color: rgba(11,27,20,.92)}

/* Mobile tuning: keep it bold but not overwhelming */
@media (max-width: 920px){
  body.campaign--sb02 .hero{
    padding:44px 0 28px;
  }
  body.campaign--sb02 .heroEyebrow{
    padding:9px 11px;
  }
  body.campaign--sb02 .lede{
    font-size:17px;
  }
}

