/**
 * CUTIS Theme — Service "Types of Hair Loss" section
 * Classes kept identical to _design-reference/style.css (container-cutis,
 * eyebrow, section-head, row/g-4/col-sm-6/col-lg-4, condition-card, icon-tile)
 * since none of them collide with anything in header.css/layout.css.
 *
 * The reference's Bootstrap grid (row/col-sm-6/col-lg-4/g-4) isn't loaded on
 * this site, so the handful of rules this section actually uses are
 * reimplemented here rather than pulling in all of Bootstrap.
 *
 * Colors/fonts/spacing are pulled from the CSS custom properties defined in
 * assets/css/header.css :root and from the Theme Settings design tokens
 * (inc/theme-settings.php -> cutis_output_theme_css_vars()). Values with no
 * matching token (card radius/shadow) are hardcoded, same as
 * single-service-introduction.css.
 */

/* ------------------------------------------------------------------ */
/* Section shell — grey wash is specific to this section (not a site-wide
   utility in layout.css), so it's scoped to .service-types rather than
   reusing the reference's global .section-bg-grey class. Vertical spacing
   comes from the .section-padding utility (assets/css/layout.css) applied
   in the markup. */
/* ------------------------------------------------------------------ */
.service-types {
  background: color-mix(in srgb, var(--cutis-color-border) 30%, white);
}

.container-cutis {
  width: 100%;
  max-width: var(--cutis-container-max);
  margin-inline: auto;
  padding-inline: var(--cutis-space-md);
}

/* ------------------------------------------------------------------ */
/* Eyebrow / section head — shared shape for any future section that needs
   a centered intro (title + description) above a grid or list. */
/* ------------------------------------------------------------------ */
.eyebrow {
  font-size: 12.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--cutis-color-primary);
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.eyebrow::before {
  content: "";
  width: 26px;
  height: 1.5px;
  background: var(--cutis-color-primary);
  display: inline-block;
}

.section-head {
  max-width: 770px;
  margin-bottom: 56px;
}
.section-head.center {
  margin-inline: auto;
  text-align: center;
}
.section-head h2 {
  font-size: clamp(30px, 3.4vw, 44px);
  line-height: 1.15;
  color: var(--cutis-color-heading);
  margin-top: 12px;
}
.section-head p {
  margin-top: 18px;
  font-size: 17px;
  color: var(--cutis-color-text);
}

/* ------------------------------------------------------------------ */
/* Minimal grid — only the pieces this section's markup uses:
   <div class="row g-4"><div class="col-sm-6 col-lg-4">...</div></div> */
/* ------------------------------------------------------------------ */
.row {
  display: flex;
  flex-wrap: wrap;
}
.row > * {
  width: 100%;
}
.g-4 {
  margin-top: -24px;
  margin-left: -12px;
  margin-right: -12px;
}
.g-4 > * {
  padding-left: 12px;
  padding-right: 12px;
  margin-top: 24px;
}
@media (min-width: 576px) {
  .col-sm-6 {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .col-lg-4 {
    width: 33.3333%;
  }
}

/* ------------------------------------------------------------------ */
/* Condition card */
/* ------------------------------------------------------------------ */
.condition-card {
  background: var(--cutis-color-surface);
  border: 1px solid var(--cutis-color-border);
  border-radius: 20px;
  padding: 30px 24px;
  height: 100%;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}
.condition-card:hover {
  transform: translateY(-6px);
  box-shadow:
    0 20px 44px rgba(15, 43, 61, 0.14),
    0 4px 10px rgba(15, 43, 61, 0.08);
  border-color: transparent;
}
.condition-card .icon-tile {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: var(--cutis-color-cream);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.condition-card .icon-tile img {
  max-width: 42px;
  max-height: 42px;
  object-fit: contain;
  display: block;
}
.condition-card h3 {
  font-size: 18px;
  margin-bottom: 8px;
}
.condition-card p {
  font-size: 14.5px;
  color: var(--cutis-color-text);
  margin: 0;
}
