/* Global boutique polish and the expanded procedure-page system. */
:root {
  --ambani-plum: #4f263d;
  --ambani-plum-deep: #3d1d30;
  --ambani-ivory: #fefdfb;
  --ambani-stone: #f6f1e8;
  --ambani-brass: #b09872;
  --ambani-ink: #242127;
  --ambani-radius: 12px;
}

/* Let medically reviewed introductions determine the FAQ heading height. The
   base theme fixes this block to 6.3125rem, which makes longer approved copy
   collide with the first accordion row on desktop. */
.ambani-site--service-detail .site-service-detail-faq__head {
  height: auto;
}

/* Use the Mommy Makeover consultation-suite hero throughout procedure pricing
   sections. Keep a light, crisp wash for copy legibility without blurring the
   image. */
.ambani-site--service-detail .site-section--service-detail-financing-cost {
  background: var(--ambani-stone);
}

.ambani-site--service-detail .site-section--service-detail-financing-cost::before {
  inset: 0;
  width: 100%;
  height: 100%;
  background: url("/wp-content/themes/flynt-theme/assets/images/generated-medical-interiors/warm-body-contouring-consultation.webp") center / cover no-repeat;
  opacity: 0.72;
}

.ambani-site--service-detail .site-section--service-detail-financing-cost::after {
  background: linear-gradient(90deg, rgb(254 253 251 / 90%) 0%, rgb(254 253 251 / 72%) 56%, rgb(254 253 251 / 52%) 100%);
  mix-blend-mode: normal;
}

.ambani-site--service-detail .site-service-detail-financing-cost__exclude {
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

.ambani-site--service-detail .site-service-detail-financing-cost__exclude::before {
  background: none;
}

@media (max-width: 63.99em) {
  .ambani-site--service-detail .site-section--service-detail-financing-cost::after {
    background: rgb(254 253 251 / 78%);
  }
}

.site-header__cta,
.site-header__panel-cta {
  color: var(--ambani-ivory) !important;
  background: var(--ambani-plum) !important;
  border-color: var(--ambani-plum) !important;
  border-radius: var(--ambani-radius) !important;
}

.site-header__cta:hover,
.site-header__panel-cta:hover {
  background: var(--ambani-plum-deep) !important;
  border-color: var(--ambani-plum-deep) !important;
}

.cta,
.cta-primary,
.site-gallery-button,
.site-service-detail-travel__button,
.site-service-detail-why__button,
.site-service-detail-consultation__button,
.site-out-of-town-callout__button,
.site-header__services-cta a,
.migration-consultation-cta a,
button:not(.site-header__menu) {
  border-radius: var(--ambani-radius) !important;
}

.ambani-site--service-detail .site-hero--subpage.concierge-procedure-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background-image:
    linear-gradient(90deg, rgb(53 35 25 / 78%) 0%, rgb(68 44 29 / 68%) 44%, rgb(76 51 35 / 38%) 100%),
    var(--hero-img-svcdetail);
  background-position: center, center;
  background-size: cover, cover;
  background-repeat: no-repeat;
}

/* Remove the inherited pale wash so the warm dark overlay above remains the
   only treatment behind procedure-page copy. */
.ambani-site--service-detail .site-hero--subpage.concierge-procedure-hero::before,
.ambani-site--service-detail .site-hero--subpage.concierge-procedure-hero::after,
.ambani-site--service-detail .concierge-procedure-hero .site-hero__content::before {
  content: none !important;
  background: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.concierge-procedure-hero .site-hero__content {
  max-width: none;
}

.concierge-procedure-hero .site-kicker,
.concierge-procedure-page .site-kicker {
  color: var(--ambani-brass);
  letter-spacing: 0.18em;
}

.concierge-procedure-hero h1 {
  max-width: 80rem;
  color: var(--ambani-ivory) !important;
  font-size: var(--type-display);
  line-height: 1.1;
  letter-spacing: 0;
  text-wrap: balance;
}

.concierge-procedure-hero .site-hero__desc {
  max-width: 51.375rem;
  color: var(--ambani-ivory);
  text-shadow: 0 1px 18px rgb(30 18 12 / 35%);
}

.concierge-procedure-hero .site-hero__desc p,
.concierge-procedure-hero .site-link-cta {
  color: var(--ambani-ivory) !important;
}

.concierge-procedure-hero h1 {
  text-shadow: 0 1px 18px rgb(30 18 12 / 35%);
}

.concierge-procedure-hero .cta,
.concierge-procedure-consultation .cta {
  color: var(--ambani-ivory);
  background: var(--ambani-plum);
  border-color: var(--ambani-plum);
}

.concierge-procedure-hero .cta:hover,
.concierge-procedure-consultation .cta:hover {
  background: var(--ambani-plum-deep);
  border-color: var(--ambani-plum-deep);
}

.concierge-procedure-overview {
  background: var(--ambani-ivory);
}

.concierge-procedure-overview .site-service-detail-what-is__inner,
.concierge-procedure-candidacy .site-service-detail-candidacy__inner,
.concierge-detail-story__inner {
  width: min(100% - 2.5rem, 77rem);
  margin-inline: auto;
}

.concierge-procedure-overview .site-service-detail-what-is__content,
.concierge-procedure-candidacy .site-service-detail-candidacy__content {
  max-width: none;
}

.concierge-procedure-overview h2,
.concierge-procedure-candidacy h2,
.concierge-detail-story h2 {
  color: var(--ambani-ink);
  font-size: clamp(2.8rem, 4.8vw, 5rem);
  line-height: 1;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

.concierge-procedure-overview .site-service-detail-what-is__copy {
  columns: 2;
  column-gap: clamp(3rem, 7vw, 7rem);
}

.concierge-procedure-overview .site-service-detail-what-is__copy p {
  break-inside: avoid;
}

.concierge-procedure-overview .site-service-detail-what-is__facts {
  margin-top: clamp(3rem, 6vw, 5rem);
}

.concierge-procedure-candidacy {
  background: var(--ambani-stone);
}

.concierge-procedure-candidacy__prose p {
  color: #5f5853;
  line-height: 1.72;
}

.ambani-site--service-detail .site-service-detail-candidacy__note {
  font-family: var(--font-sans-system-full);
  font-size: 1.125rem;
  line-height: 1.5556;
}

.concierge-detail-story {
  padding: clamp(5rem, 9vw, 8rem) 0;
  background: var(--ambani-ivory);
}

.concierge-detail-story--1 {
  background: #f7f3ed;
}

.concierge-detail-story__inner {
  display: grid;
  grid-template-columns: minmax(5rem, 0.28fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: start;
}

.concierge-detail-story__number {
  color: rgba(79, 38, 61, 0.24);
  font-family: "IBM Plex Mono", monospace;
  font-size: 0.82rem;
  letter-spacing: 0.18em;
  border-top: 1px solid rgba(79, 38, 61, 0.18);
  padding-top: 1.2rem;
}

.concierge-detail-story__content {
  max-width: 51rem;
}

.concierge-detail-story__content p {
  color: #625b55;
  font-size: 1.04rem;
  line-height: 1.76;
}

.concierge-related-intro {
  max-width: 46rem;
  margin-bottom: 2.5rem;
  color: #625b55;
  line-height: 1.7;
}

.concierge-procedure-recovery__risk {
  max-width: 58rem;
  margin: clamp(2rem, 4vw, 3.5rem) auto 0;
  padding: 1.4rem 1.5rem;
  border-left: 3px solid var(--ambani-plum);
  background: rgba(79, 38, 61, 0.055);
  color: #5f5853;
  line-height: 1.7;
}

.concierge-procedure-recovery__risk strong {
  color: var(--ambani-plum);
}

.concierge-overview-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr));
}

.concierge-overview-grid .site-service-detail-related-card {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.concierge-procedure-consultation .site-service-detail-consultation__content {
  max-width: 58rem;
}

.concierge-procedure-consultation .site-hero__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem;
  margin-top: 2.25rem;
}

@media (min-width: 64em) {
  .ambani-site--service-detail .site-hero--subpage,
  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    height: 30rem;
    min-height: 30rem;
    box-sizing: border-box;
  }

  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    padding-block: 4.5rem;
  }
}

@media (min-width: 48em) and (max-width: 63.99em) {
  .ambani-site--service-detail .site-hero--subpage,
  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    height: 31.3125rem;
    min-height: 31.3125rem;
    box-sizing: border-box;
  }

  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    padding-block: 3rem;
  }
}

@media (max-width: 47.99em) {
  .ambani-site--service-detail .site-hero--subpage,
  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    height: 40.625rem;
    min-height: 40.625rem;
    box-sizing: border-box;
  }

  .ambani-site--service-detail .site-hero--subpage .site-hero__content {
    padding-block: 3.25rem;
  }

  .ambani-site--service-detail .site-hero--subpage.concierge-procedure-hero {
    background-image:
      linear-gradient(180deg, rgb(53 35 25 / 76%) 0%, rgb(68 44 29 / 66%) 60%, rgb(76 51 35 / 48%) 100%),
      var(--hero-img-svcdetail);
    background-position: center, 61% center;
  }

  .concierge-procedure-hero h1 {
    max-width: 20rem;
    font-size: 3.25rem;
    line-height: 1;
  }

  .ambani-site--service-detail .site-service-detail-candidacy__note {
    font-size: 1rem;
    line-height: 1.75;
  }

  .site-service-detail-related__inner > h2 {
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  .concierge-procedure-overview .site-service-detail-what-is__copy {
    columns: 1;
  }

  .concierge-detail-story__inner {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .concierge-detail-story__number {
    width: 3rem;
  }

  .concierge-procedure-consultation .site-hero__actions {
    display: grid;
  }

  .concierge-procedure-consultation .site-hero__actions > * {
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
  }
}

/* Procedure-specific planning technology */
.site-procedure-technology {
  padding: clamp(4.25rem, 7vw, 7rem) max(1.5rem, calc((100vw - 82rem) / 2));
  color: #302831;
  background: #eee7dc;
}

.site-procedure-technology__inner {
  display: grid;
  gap: clamp(2rem, 4vw, 3.5rem);
  width: min(100%, 82rem);
  margin: 0 auto;
}

.site-procedure-technology__head {
  display: grid;
  grid-template-columns: minmax(18rem, 0.9fr) minmax(22rem, 1.1fr);
  gap: 1rem 4rem;
  align-items: end;
}

.site-procedure-technology__head .site-kicker,
.site-procedure-technology__head h2 {
  grid-column: 1;
  margin: 0;
}

.site-procedure-technology__head h2 {
  max-width: 11ch;
  color: inherit;
  font-family: "Newsreader", Georgia, serif;
  font-size: clamp(2.5rem, 4.8vw, 5rem);
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.site-procedure-technology__head > p:last-child {
  grid-column: 2;
  grid-row: 1 / span 2;
  max-width: 32rem;
  margin: 0 0 0.35rem;
  font-size: clamp(1rem, 1.3vw, 1.2rem);
  line-height: 1.65;
}

.site-procedure-technology__grid {
  --technology-columns: 1;
  display: grid;
  grid-template-columns: repeat(var(--technology-columns), minmax(0, 1fr));
  gap: 1px;
  overflow: hidden;
  background: rgba(48, 40, 49, 0.2);
  border: 1px solid rgba(48, 40, 49, 0.2);
}

.site-procedure-technology__grid--2 {
  --technology-columns: 2;
}

.site-procedure-technology__grid--3 {
  --technology-columns: 3;
}

.site-technology-card {
  display: flex;
  min-height: 19rem;
  padding: clamp(1.5rem, 2.7vw, 2.4rem);
  flex-direction: column;
  background: #f9f6f0;
}

.site-technology-card__label {
  margin: 0;
  color: #7c5a42;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.site-technology-card__brand-row {
  display: flex;
  min-height: 3.25rem;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.35rem;
}

.site-technology-card__logo {
  display: block;
  width: auto;
  height: auto;
  flex: 0 1 auto;
  object-fit: contain;
  object-position: right center;
}

.site-technology-card__logo--crisalix {
  width: min(43%, 9rem);
  max-height: 2.85rem;
}

.site-technology-card__logo--preserve {
  width: min(50%, 10rem);
  max-height: 2.65rem;
  mix-blend-mode: multiply;
}

.site-technology-card h3 {
  margin: 0;
  color: inherit;
  font-family: "Newsreader", Georgia, serif;
  font-size: clamp(1.75rem, 2.5vw, 2.7rem);
  font-weight: 400;
  line-height: 1.08;
}

.site-technology-card > p:not(.site-technology-card__label) {
  margin: 1rem 0 0;
  color: rgba(48, 40, 49, 0.76);
  line-height: 1.62;
}

.site-technology-card a {
  display: inline-flex;
  gap: 0.45rem;
  align-items: center;
  width: fit-content;
  margin-top: auto;
  padding-top: 2rem;
  color: #5b2346;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}

@media (max-width: 63.99em) {
  .site-procedure-technology__head,
  .site-procedure-technology__grid {
    grid-template-columns: 1fr;
  }

  .site-procedure-technology__head .site-kicker,
  .site-procedure-technology__head h2,
  .site-procedure-technology__head > p:last-child {
    grid-column: 1;
    grid-row: auto;
  }

  .site-procedure-technology__head > p:last-child {
    margin-top: 1rem;
  }

  .site-technology-card {
    min-height: 0;
  }

  .site-technology-card__brand-row {
    min-height: 3rem;
  }
}
