/* Alterra VR Birthday — Design Block 03 V1
   Scope: formats/prices section only. Blocks 01-02 are frozen. */
.bp-formats{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    linear-gradient(90deg,
      rgba(2,11,19,.995) 0%,
      rgba(2,11,19,.99) 28%,
      rgba(2,11,19,.94) 43%,
      rgba(2,11,19,.69) 60%,
      rgba(2,11,19,.26) 100%),
    linear-gradient(180deg,
      rgba(2,11,19,.08) 0%,
      rgba(2,11,19,.04) 42%,
      rgba(2,11,19,.30) 72%,
      rgba(2,11,19,.72) 100%),
    url("assets/birthday-illustrations/block03-formats-full-bg-v2.webp"),
    linear-gradient(180deg,#03111d 0%,#041521 52%,#03111d 100%);
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
  background-size:cover,cover,min(1500px,100vw) auto,cover;
  background-position:center,center,right -60px top 0,center;
}
.bp-formats::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(rgba(92,233,250,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(92,233,250,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(2,11,19,.04) 0%,rgba(2,11,19,.16) 58%,rgba(2,11,19,.44) 100%);
  background-size:72px 72px,72px 72px,cover;
  mask-image:linear-gradient(180deg,transparent 0%,#000 9%,#000 90%,transparent 100%);
  opacity:.88;
}
.bp-formats .bp-section-head{max-width:720px;position:relative}
.bp-formats .bp-section-head>p:last-child{max-width:620px}

.bp-formats-top{
  display:block;
  margin-bottom:54px;
}
.bp-formats-stage{
  position:relative;
  min-height:410px;
  border-radius:30px 30px 0 30px;
  overflow:hidden;
  border:1px solid rgba(81,234,255,.22);
  background:
    linear-gradient(90deg,rgba(2,13,23,.96) 0%,rgba(2,13,23,.76) 24%,rgba(2,13,23,.20) 58%,rgba(2,13,23,.06) 100%),
    linear-gradient(180deg,rgba(3,17,29,.06),rgba(3,17,29,.38)),
    url("assets/birthday-illustrations/block03-formats-stage-v1.webp");
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-size:cover,cover,cover;
  background-position:center,center,center;
  box-shadow:0 28px 78px rgba(0,0,0,.26),0 0 52px rgba(71,224,247,.08),inset 0 1px 0 rgba(255,255,255,.04);
}
.bp-formats-stage::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 82% 24%,rgba(61,234,252,.26),transparent 16%),
    radial-gradient(circle at 88% 72%,rgba(255,141,83,.18),transparent 16%),
    linear-gradient(180deg,transparent 0%,rgba(2,13,23,.08) 54%,rgba(2,13,23,.42) 100%);
  pointer-events:none;
}
.bp-formats-stage::after{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:20px 20px 0 20px;
  border:1px solid rgba(81,234,255,.10);
  pointer-events:none;
  opacity:.55;
}
.bp-formats-stage-badge{
  position:absolute;
  left:24px;top:24px;
  z-index:2;
  padding:10px 14px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  color:#def9ff;
  background:rgba(4,24,38,.58);
  border:1px solid rgba(81,234,255,.24);
  backdrop-filter:blur(8px);
}
.bp-formats-stage-caption{
  position:absolute;
  right:26px;bottom:24px;
  z-index:2;
  max-width:280px;
  text-align:right;
  font-size:14px;
  line-height:1.45;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#dff8ff;
  text-shadow:0 8px 22px rgba(0,0,0,.42);
}
.bp-format-grid{gap:20px;margin-top:0;align-items:stretch}
.bp-format-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-color:rgba(81,234,255,.26);
  background:linear-gradient(180deg,rgba(7,29,45,.98),rgba(3,15,25,.99));
  box-shadow:0 24px 72px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.bp-format-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:2px;
  z-index:4;
  background:linear-gradient(90deg,transparent,rgba(88,236,250,.72),transparent);
  opacity:.35;
}
.bp-format-card-featured{
  transform:translateY(-8px);
  border-color:rgba(99,241,255,.78);
  box-shadow:0 0 40px rgba(44,220,239,.10),0 30px 80px rgba(0,0,0,.32);
}
.bp-format-media{position:relative;height:270px}
.bp-format-media::after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(2,10,18,.02) 35%,rgba(3,15,25,.82) 100%);
  pointer-events:none;
}
.bp-format-media img{
  object-position:center 46%;
  filter:saturate(1.05) contrast(1.03) brightness(.95);
  transform:scale(1.015);
  transition:transform .45s ease,filter .35s ease;
}
.bp-format-card:nth-child(2) .bp-format-media img{object-position:center 46%}
.bp-format-card:nth-child(3) .bp-format-media img{object-position:center 43%}
.bp-format-body{flex:1;min-height:430px;padding:24px 26px 28px}
.bp-format-label{color:#8da9b8}
.bp-price{font-size:clamp(42px,3.2vw,54px);margin-top:14px}
.bp-capacity{margin-top:9px;color:#f2f7fa}
.bp-format-card ul{margin:28px 0 30px;gap:14px}
.bp-format-card li{padding-left:24px;color:#bdd0dc}
.bp-format-card li::before{width:9px;height:9px;background:rgba(75,231,250,.06)}
.bp-format-action{min-height:56px;border-radius:14px;background:rgba(5,29,44,.58)}
.bp-format-action:hover{background:rgba(22,103,121,.22)}
.bp-format-card-featured .bp-format-action-primary{background:linear-gradient(180deg,#7af5ff,#35d8e8);box-shadow:0 10px 32px rgba(52,221,236,.18)}
.bp-popular{top:18px;right:18px;padding:10px 13px;box-shadow:0 8px 28px rgba(0,0,0,.18)}
.bp-budget-note{
  margin-top:22px;
  padding:26px 28px;
  border-color:rgba(81,234,255,.24);
  background:
    radial-gradient(circle at 4% 50%,rgba(59,227,246,.08),transparent 20%),
    rgba(6,29,45,.60);
}
.bp-picker{
  margin-top:18px;
  border-color:rgba(81,234,255,.28);
  background:
    radial-gradient(circle at 88% 16%,rgba(59,227,246,.13),transparent 24%),
    radial-gradient(circle at 72% 88%,rgba(255,128,77,.055),transparent 22%),
    rgba(4,22,35,.84);
}
@media(hover:hover){
  .bp-format-card:hover{transform:translateY(-5px);border-color:rgba(83,235,252,.52);box-shadow:0 30px 78px rgba(0,0,0,.34)}
  .bp-format-card-featured:hover{transform:translateY(-11px)}
  .bp-format-card:hover .bp-format-media img{transform:scale(1.04);filter:saturate(1.1) contrast(1.04) brightness(1)}
}
@media(max-width:1100px){
  .bp-formats-top{grid-template-columns:1fr;gap:22px;margin-bottom:36px}
  .bp-formats-stage{min-height:320px;background-size:cover,cover,420px auto,cover;background-position:center,center,85% 2%,center right}
  .bp-format-card-featured{transform:none}
  .bp-format-media{min-height:320px;height:auto}
  .bp-format-body{min-height:340px}
  .bp-format-card:nth-child(3) .bp-format-media img{object-position:center 38%}
}
@media(max-width:700px){
  .bp-formats-top{gap:18px;margin-bottom:28px}
  .bp-formats-stage{min-height:250px;border-radius:24px 24px 0 24px;background-size:cover,cover,320px auto,cover;background-position:center,center,88% 4%,74% center}
  .bp-formats-stage-badge{left:16px;top:16px;font-size:10px;padding:8px 12px;letter-spacing:.14em}
  .bp-formats-stage-caption{right:16px;bottom:16px;max-width:190px;font-size:11px;line-height:1.4}

    .bp-format-grid{margin-top:34px;gap:16px}
  .bp-format-media{height:auto;min-height:0;aspect-ratio:1.5/1}
  .bp-format-body{min-height:390px;padding:20px}
  .bp-format-card-featured{transform:none}
  .bp-budget-note{padding:20px}
}
@media(prefers-reduced-motion:reduce){.bp-format-card,.bp-format-media img{transition:none!important}}


/* Block 03 background integration v1 */
@media(max-width:1100px){
  .bp-formats{
    background-size:cover,auto,auto,1050px auto,cover;
    background-position:center,82% 10%,72% 27%,right -260px top 60px,center;
  }
}
@media(max-width:700px){
  .bp-formats{
    background:
      linear-gradient(180deg,rgba(2,11,19,.97) 0%,rgba(2,11,19,.90) 36%,rgba(2,11,19,.80) 62%,rgba(2,11,19,.92) 100%),
      url("assets/birthday-illustrations/block03-formats-bg-v1.webp"),
      linear-gradient(180deg,#03111d,#03111d);
    background-repeat:no-repeat,no-repeat,no-repeat;
    background-size:cover,920px auto,cover;
    background-position:center,right -390px top 70px,center;
  }
}

/* Block 03 V2 — approved full background, framed art removed */
.bp-formats-stage,
.bp-formats-stage-badge,
.bp-formats-stage-caption{
  display:none!important;
}
.bp-formats .bp-section-head{
  max-width:760px;
}
.bp-formats .bp-section-head>p:last-child{
  max-width:650px;
}
@media(max-width:1100px){
  .bp-formats{
    background-size:cover,cover,1220px auto,cover;
    background-position:center,center,right -240px top 20px,center;
  }
}
@media(max-width:700px){
  .bp-formats{
    background:
      linear-gradient(180deg,
        rgba(2,11,19,.98) 0%,
        rgba(2,11,19,.92) 30%,
        rgba(2,11,19,.80) 56%,
        rgba(2,11,19,.94) 100%),
      url("assets/birthday-illustrations/block03-formats-full-bg-v2.webp"),
      linear-gradient(180deg,#03111d,#03111d);
    background-repeat:no-repeat,no-repeat,no-repeat;
    background-size:cover,980px auto,cover;
    background-position:center,right -380px top 80px,center;
  }
  .bp-formats-top{margin-bottom:32px}
}