.hero-image {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain;
}

/* Final high-specificity glass treatment for the reference date capsule. */
.date-card.date-card--hero { background:transparent; border-color:rgba(255,255,255,.48); backdrop-filter:none; -webkit-backdrop-filter:none; }
.date-card.date-card--hero::before { background:transparent; }
.date-card.date-card--hero time { display:flex; align-items:center; justify-content:center; }

.invitation-copy { top: 24.5%; }
.birthday-name {
  margin: 0;
  color: #eadcf4;
  font-family: 'Bodoni MT', Didot, 'Times New Roman', serif;
  font-size: clamp(2.15rem, 7.45vw, 7.2rem);
  font-weight: 400;
  line-height: .88;
  letter-spacing: .035em;
  text-transform: uppercase;
  -webkit-text-stroke: .45px rgba(255, 255, 255, .95);
  background: none;
  -webkit-text-fill-color: #fffaff;
  text-shadow: 0 0 1px #fff, 0 0 4px #fff, 0 0 9px #edceff, 0 0 18px #d58aff, 0 0 34px #a936ff, 0 0 58px rgba(111, 18, 232, .92), 0 0 88px rgba(86, 8, 190, .58);
  filter: drop-shadow(0 4px 7px rgba(8, 0, 38, .82));
}

.date-card--hero { position:absolute; z-index:3; left:50%; bottom:2.5%; width:min(44%,39rem); min-width:20rem; margin:0; padding:clamp(.42rem,.8vw,.72rem) clamp(.9rem,2vw,1.8rem); transform:translateX(-50%); border:1px solid rgba(255,255,255,.48); border-radius:999px; background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(12,3,34,.2)); box-shadow:inset 0 1px 0 rgba(255,255,255,.48),inset 0 -1px 0 rgba(255,255,255,.12),0 0 0 3px rgba(15,3,44,.22),0 0 0 4px rgba(255,255,255,.14),0 4px 16px rgba(4,0,26,.48); backdrop-filter:blur(7px) saturate(115%); -webkit-backdrop-filter:blur(7px) saturate(115%); }
.date-card--hero::before { background:linear-gradient(180deg,rgba(255,255,255,.1),transparent 48%); }
.date-card--hero::after { inset:2px 8% auto; opacity:.5; }
.date-card--hero time { display:flex; align-items:center; justify-content:center; gap:clamp(.55rem,1.5vw,1.25rem); color:#f3eaf8; font-family:'Bodoni MT',Didot,'Times New Roman',serif; font-size:clamp(.78rem,1.6vw,1.45rem); line-height:1; letter-spacing:.12em; text-transform:uppercase; text-shadow:0 1px 2px #100020,0 0 8px rgba(220,177,255,.38); }
.date-card--hero i { color:#fff; font-size:.55em; font-style:normal; text-shadow:0 0 7px #d28cff; }

.date-card {
  border-color: rgba(255, 255, 255, .38);
  background: linear-gradient(145deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .008) 48%, rgba(156, 85, 242, .015));
  box-shadow: inset 0 1.5px 1px rgba(255, 255, 255, .58), inset 0 -1px 1px rgba(255, 255, 255, .08), 0 18px 50px rgba(0, 0, 30, .38), 0 0 0 1px rgba(255, 255, 255, .06), 0 0 34px rgba(176, 99, 255, .15);
  backdrop-filter: blur(48px) saturate(190%) brightness(1.06);
  -webkit-backdrop-filter: blur(48px) saturate(190%) brightness(1.06);
}

.date-card::before {
  background: radial-gradient(ellipse at 18% 0, rgba(255, 255, 255, .09), transparent 38%), linear-gradient(115deg, rgba(255, 255, 255, .025), transparent 34%, transparent 70%, rgba(217, 175, 255, .015));
}

@media (max-width: 760px) {
  html, body { width:100%; max-width:100%; overflow-x:hidden; overscroll-behavior-x:none; }
  body { position:relative; }
  .invitation-page, .invitation-hero { width:100%; max-width:100%; overflow-x:clip; }
  .hero-image { width:100% !important; max-width:100% !important; }
  .invitation-copy { top: 24.5%; }
  .date-card--hero { bottom:2.8%; width:44%; min-width:0; padding:.2rem .35rem; }
  .date-card--hero::after { inset:2px 20% auto; }
  .date-card--hero time { gap:.3rem; font-size:clamp(.5rem,2.25vw,.68rem); letter-spacing:.055em; }
}
