/* =====================================================================
   CYBERX v71 — promotion page layout
===================================================================== */

.promotions-page{
  min-height:100vh;
  padding:clamp(112px, 11vw, 152px) 0 clamp(72px, 8vw, 112px);
  background:
    radial-gradient(560px 300px at 84% 8%, rgba(255,0,51,.12), transparent 70%),
    radial-gradient(480px 260px at 10% 50%, rgba(255,255,255,.025), transparent 72%);
}

.promotions-page .section-head{
  max-width:760px;
  margin-bottom:clamp(30px, 4vw, 48px);
}

.promotions-page .section-head h1{
  margin:8px 0 14px;
  color:#fff;
  font-family:var(--font-display,"Unbounded",sans-serif);
  font-size:clamp(2.4rem, 5.5vw, 5.1rem);
  line-height:.94;
  letter-spacing:-.08em;
}

.promotions-page .section-head p{
  max-width:650px;
  color:rgba(255,255,255,.62);
}

.promotions-page .promo-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  align-items:stretch;
  gap:18px !important;
}

.promotions-page .promo-card--page{
  min-height:254px !important;
  display:flex !important;
  flex-direction:column;
  align-items:flex-start;
  padding:24px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:25px !important;
  background:
    radial-gradient(290px 170px at 100% 0, rgba(255,0,51,.18), transparent 72%),
    linear-gradient(180deg, rgba(29,19,25,.98), rgba(20,21,28,.98)) !important;
  box-shadow:0 20px 60px rgba(0,0,0,.30) !important;
}

.promotions-page .promo-card--page:hover{
  transform:translateY(-3px);
  border-color:rgba(255,0,51,.34) !important;
  box-shadow:0 26px 70px rgba(0,0,0,.38), 0 0 34px rgba(255,0,51,.10) !important;
}

.promotions-page .promo-card__top{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:22px;
}

.promotions-page .promo-card__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,0,51,.28);
  border-radius:14px;
  color:#ff0033;
  background:rgba(255,0,51,.10);
}

.promotions-page .promo-card__badge{
  min-height:30px;
  display:inline-flex;
  align-items:center;
  padding:0 11px;
  border:1px solid rgba(255,0,51,.30);
  border-radius:999px;
  color:#fff;
  background:#ff0033;
  font-family:var(--font-display,"Unbounded",sans-serif);
  font-size:.70rem;
  font-weight:800;
  line-height:1;
  letter-spacing:-.03em;
}

.promotions-page .promo-card--page h3{
  margin:0 0 10px;
  color:#fff;
  font-family:var(--font-display,"Unbounded",sans-serif);
  font-size:clamp(1.15rem, 1.75vw, 1.52rem);
  line-height:1.08;
  letter-spacing:-.055em;
}

.promotions-page .promo-card--page p{
  margin:0;
  color:rgba(255,255,255,.65);
  font-size:.88rem;
  line-height:1.58;
}

.promotions-page .promo-card--page small{
  display:flex;
  align-items:center;
  gap:7px;
  margin-top:auto;
  padding-top:18px;
  color:rgba(255,255,255,.62);
  font-size:.76rem;
  font-weight:700;
}

.promotions-page .promo-card--page small i{
  color:#ff0033;
}

@media (max-width:980px){
  .promotions-page .promo-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width:620px){
  .promotions-page{
    padding-top:96px;
  }
  .promotions-page .promo-grid{
    grid-template-columns:1fr !important;
  }
  .promotions-page .promo-card--page{
    min-height:224px !important;
  }
}
