/* All about expansion */
.exp-button { display: inline-block; min-height: 50px; padding: 14px 26px; border-radius: 10px; background: #ee2d2d; color: #fff; font: 700 17px/17px Roboto, sans-serif; }

.exp-hero { position: relative; isolation: isolate; overflow: hidden; padding: 64px 24px; background: url(../../img/decor/teal-doctor-bg.png) center / cover no-repeat; color: #fff; }
.exp-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #000; opacity: .41; }
.exp-hero__inner { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 32px; max-width: 1280px; margin-inline: auto; }
.exp-hero__copy { padding: 10px; }
.exp-hero__eyebrow, .exp-hero__gst { font: 600 40px/46.67px Roboto, sans-serif; letter-spacing: -2px; }
.exp-hero h1 { margin: 19px 0 20px; color: #ffee13; font: 600 68px/76.5px "Poetsen One", sans-serif; letter-spacing: -3.4px; }
.exp-hero__offer { display: block; width: 435px; border-radius: 18px; }
.exp-hero__gst { margin: 50px 0; }

.exp-blob { position: relative; margin: 10px; background: url(../../img/decor/blob-orange.png) center / contain no-repeat; text-align: center; }
.exp-blob > img:first-child {
  display: block;
  width: 100%;
  border-radius: 18px;
  object-fit: cover;
  -webkit-mask: url(../../img/decor/blob-mask.png) center / contain no-repeat;
  mask: url(../../img/decor/blob-mask.png) center / contain no-repeat;
}
.exp-hero .exp-blob > img:first-child { aspect-ratio: 604 / 475; }
.exp-blob__circle { position: absolute; top: 310px; left: -100px; }

.exp-key { position: relative; padding: 36px 24px 46px; background: url(../../img/decor/orange-waves-bg.jpg) center / cover; color: #767b92; }
.exp-key__wave { position: absolute; top: -1px; left: 0; width: 100%; height: 144px; fill: #fff4e9; }
.exp-key__inner { position: relative; max-width: 1280px; margin-inline: auto; padding: 10px; }
.exp-key h2 { max-width: 1230px; margin: 0 0 34px; color: #111; font: 400 40px/46.67px "Abril Fatface", sans-serif; letter-spacing: -2px; text-align: center; }
.exp-key__grid { display: grid; grid-template-columns: 687fr 519fr; align-items: center; gap: 24px; max-width: 1230px; }
.exp-topics { margin: 0 10px; padding-bottom: 18px; border-bottom: 1px solid #e5e8eb; font: 400 18px/27px Roboto, sans-serif; }
.exp-topics h3 { margin: 0 0 10px; color: #767b92; font-size: 21px; line-height: 29.4px; letter-spacing: .2px; }
.exp-topics ul + h3 { margin-top: 28px; }
.exp-topics ul { margin-bottom: 18px; }
.exp-topics li { position: relative; padding: 7px 0 7px 27px; border-bottom: 1px solid rgba(137, 155, 165, .25); line-height: 1.6; }
.exp-topics li::before { content: "✓"; position: absolute; top: 15px; left: 0; font: 700 14px/1 Arial, sans-serif; }
.exp-blob--photo { margin: 0 10px; }
.exp-blob--photo > img:first-child { width: 489px; margin-inline: auto; aspect-ratio: 489 / 391; }

.exp-rates h2 { padding: 91px 24px 26px; color: #fff3f3; font-size: 40px; line-height: 46.67px; letter-spacing: -2px; text-align: center; }
.exp-rates__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; max-width: 1328px; margin: 0; padding: 20px 24px 48px; background: #202020; }
.exp-rates__grid { padding-inline: max(24px, (100% - 1280px) / 2); max-width: none; }
.rate-card { display: flex; flex-direction: column; min-width: 0; padding: 28px; border: 1px solid #d4bbef; border-radius: 18px; background: #ae8cdb; transition: transform .25s, box-shadow .25s, border-color .25s; }
.rate-card:hover { transform: translateY(-4px); border-color: #f0dcff; box-shadow: 0 16px 30px rgba(0, 0, 0, .2); }
.rate-card__label { align-self: flex-start; margin-bottom: 22px; padding: 7px 12px; border-radius: 30px; background: rgba(255, 255, 255, .19); color: #2d2044; font-size: 12px; font-weight: 700; letter-spacing: 1px; }
.rate-card h3 { min-height: 96px; margin-bottom: 22px; color: #251936; font-size: 22px; line-height: 1.45; letter-spacing: -.4px; }
.rate-card__bottom { margin-top: auto; padding-top: 20px; border-top: 1px solid rgba(56, 36, 82, .19); }
.rate-card__bottom p { display: flex; align-items: baseline; gap: 4px; margin-bottom: 22px; color: #251936; font-size: 18px; }
.rate-card__bottom strong { font-size: 40px; font-weight: 600; line-height: 48px; letter-spacing: -1px; }
.rate-card__bottom a { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 14px 18px; border-radius: 10px; background: #2a2138; color: #fff; font-weight: 600; transition: background-color .2s; }
.rate-card__bottom a:hover { background: #443055; }

.exp-offer { padding: 115px 24px 74px; background-image: url(../../img/expansion/offer-bg.webp); }
.exp-offer::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #ff5151; mix-blend-mode: multiply; }
.exp-offer p { margin: 21px 0 29px; font-size: 16px; line-height: 18.67px; letter-spacing: -.8px; }

.expansion .speaker__heading { font-size: 40px; line-height: 46.67px; letter-spacing: -2px; }
.expansion .speaker__grid { margin-top: 97px; }
.expansion .speaker--team .speaker__card { max-width: 407px; }
.expansion .speaker--team .speaker__card img { width: calc(100% - 43px); }
.expansion .speaker--team .speaker__card + .speaker__card img { width: calc(100% - 34px); }

@media (max-width: 1000px) { .exp-rates__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  .exp-hero { padding: 42px 20px; }
  .exp-hero__inner { grid-template-columns: 1fr; gap: 0; }
  .exp-hero__eyebrow, .exp-hero__gst { font-size: 28px; line-height: 35px; letter-spacing: -1.4px; }
  .exp-hero h1 { font-size: 40px; line-height: 48px; letter-spacing: -2px; }
  .exp-hero__offer { width: 320px; }
  .exp-hero__gst { margin: 50px 0; }
  .exp-blob__circle { display: none; }
  .exp-hero .exp-blob { margin: 26px 0 10px; }
  .exp-hero .exp-blob > img:first-child { aspect-ratio: 330 / 280; }
  .exp-key { padding: 36px 20px 116px; }
  .exp-key h2 { font-size: 28px; line-height: 35px; letter-spacing: -1.4px; }
  .exp-key__grid { grid-template-columns: 1fr; gap: 44px; }
  .exp-topics { font-size: 17px; }
  .exp-blob--photo > img:first-child { width: 304px; aspect-ratio: 304 / 280; }
  .exp-rates h2 { padding: 91px 24px 26px; font-size: 28px; line-height: 35px; letter-spacing: -1.4px; }
  .exp-rates__grid { grid-template-columns: 1fr; gap: 18px; padding: 16px 20px 36px; }
  .rate-card { padding: 24px; }
  .rate-card h3 { min-height: 0; }
  .exp-offer { padding: 93px 20px 42px; }
  .exp-offer img { width: 281px; }
  .exp-offer p { margin: 20px 0 30px; line-height: 20px; }
  .expansion .speaker--team { padding-block: 42px; }
  .expansion .speaker__heading { font-size: 28px; line-height: 35px; letter-spacing: -1.4px; }
  .expansion .speaker--team .speaker__card { max-width: 340px; }
  .expansion .speaker--team .speaker__card img { width: 255px; }
  .expansion .speaker--team .speaker__card + .speaker__card img { width: 264px; }
}
