/* =========================================================
   Bet Your Bud — Page-specific tweaks (Royal Badge)
   File: /assets/css/pages.css
   Purpose: Minor overrides and compositions for specific
            sections/pages without polluting components/layout.
   Notes:
   - Kept lightweight; mostly composition + prestige accents.
   ========================================================= */

/* ---------- Hero specific ---------- */
.hero{
  padding-top: clamp(var(--sp-56), 10vw, var(--sp-80));
  padding-bottom: clamp(var(--sp-64), 12vw, var(--sp-80));
}

.hero__visual{ position: relative; }

.hero__micro{
  display: grid;
  gap: var(--sp-16);
  margin-top: var(--sp-20);
}

/* ---------- Trust KPIs in hero ---------- */
.trust{
  display: flex;
  gap: var(--sp-24);
  margin-top: var(--sp-16);
}

.trust__item{
  display: grid;
  gap: 2px;
  padding: var(--sp-10) var(--sp-12);
  border-radius: var(--r-16);
  background: rgba(255,255,255,0.05);
  border: var(--bw-1) solid rgba(245,200,76,0.16);
}

.trust__kpi{
  font-size: var(--fs-24);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-tight);
}

.trust__label{
  font-size: var(--fs-12);
  color: var(--c-text-3);
}

/* ---------- Strip ---------- */
.strip__label{
  font-size: var(--fs-12);
  color: var(--c-text-3);
  margin-right: var(--sp-6);
}

.strip__items{
  font-weight: var(--fw-medium);
}

/* ---------- Showcase ---------- */
.showcase__copy .lead{
  margin-bottom: var(--sp-24);
}

.kpis{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--sp-16);
  margin-bottom: var(--sp-24);
}

.kpi{
  text-align: center;
  padding: var(--sp-14) var(--sp-12);
  border-radius: var(--r-16);
  background: rgba(255,255,255,0.04);
  border: var(--bw-1) solid rgba(255,255,255,0.10);
}

.kpi__value{
  font-size: var(--fs-24);
  font-weight: var(--fw-bold);
}

.kpi__note{
  font-size: var(--fs-12);
  color: var(--c-text-3);
}

/* ---------- Media stack ---------- */
.mediaStack{
  position: relative;
  display: grid;
  gap: var(--sp-16);
}

.media--float{
  position: absolute;
  right: -12%;
  bottom: -12%;
  width: 70%;
  filter: drop-shadow(0 18px 46px rgba(0,0,0,0.45));
  transform: rotate(-1.5deg);
}

/* ---------- Waitlist (page block) ---------- */
.waitlist{
  background:
    radial-gradient(900px 420px at 20% 0%, rgba(77,163,255,0.10), rgba(77,163,255,0) 60%),
    radial-gradient(740px 380px at 80% 25%, rgba(245,200,76,0.10), rgba(245,200,76,0) 62%),
    linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.0));
  padding: clamp(var(--sp-24), 4vw, var(--sp-32));
  border-radius: var(--r-28);
  border: var(--bw-1) solid rgba(245,200,76,0.14);
  box-shadow: var(--sh-md);
}

.waitlist__copy .lead{
  margin-bottom: var(--sp-16);
}

/* ---------- Download section ---------- */
.download{
  background:
    radial-gradient(closest-side, rgba(245,200,76,0.10), rgba(245,200,76,0.0) 70%);
}

.storeRow{
  display: flex;
  gap: var(--sp-16);
  margin: var(--sp-16) 0;
}

/* ---------- Badge wall ---------- */
.badgeWall{
  display: grid;
  gap: var(--sp-12);
}

.badgeWall__title{
  font-size: var(--fs-13);
  font-weight: var(--fw-semibold);
  color: var(--c-text-2);
}

.badgeWall__grid{
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-8);
}

/* ---------- Pricing page composition ---------- */
.pricingPage .pricing{
  align-items: stretch;
}

.pricingPage .price{
  min-height: 100%;
}

/* ---------- FAQ page composition ---------- */
.faqPage .faq{
  display: grid;
  gap: var(--sp-12);
}

.faqPage .faq__item{
  background: rgba(255,255,255,0.04);
  border: var(--bw-1) solid rgba(255,255,255,0.10);
  border-radius: var(--r-20);
  padding: var(--sp-16);
}

.faqPage .faq__q{
  font-weight: var(--fw-semibold);
}

.faqPage .faq__a{
  margin-top: var(--sp-8);
  color: var(--c-text-2);
  line-height: var(--lh-relaxed);
}

/* ---------- Contact page composition ---------- */
.contactPage .contactCards{
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: var(--sp-24);
  align-items: start;
}

/* ---------- Legal pages composition ---------- */
.legalPage .legal{
  display: grid;
  gap: var(--sp-16);
}

.legalPage .legal h2{
  margin-top: var(--sp-16);
}

.legalPage .legal p{
  color: var(--c-text-2);
  line-height: var(--lh-relaxed);
}

/* ---------- Footer tweaks ---------- */
.footer__text{
  margin-top: var(--sp-12);
  max-width: 320px;
}

/* ---------- Responsive page tweaks ---------- */
@media (max-width: 1024px){
  .media--float{
    position: static;
    width: 100%;
    transform: none;
  }

  .kpis{ grid-template-columns: 1fr; }

  .trust{
    flex-direction: column;
    gap: var(--sp-12);
  }

  .contactPage .contactCards{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px){
  .storeRow{ flex-direction: column; }
}
