/* Inherits the approved GLADIS guide type, palette and spacing. */
.procedure-guide .hair-intro { grid-template-columns: 1.25fr .8fr; }
.procedure-guide .hair-intro figure { max-width: 440px; aspect-ratio: 4 / 3; }
.seo-page .procedure-guide .hair-intro h1 { max-width: 22ch; font-size: clamp(32px, 3.7vw, 54px) !important; }
.procedure-guide :where(h1, h2, h3, dt, dd) { overflow-wrap: anywhere; hyphens: auto; }
.procedure-guide .hair-intro img { object-fit: contain; background: var(--ui-mint); }
.seo-page .procedure-guide .hair-intro .seo-hero__media,
.seo-page .procedure-guide .hair-intro img { min-height: 0 !important; height: 100% !important; }
.procedure-guide .procedure-branch { margin-bottom: 16px; font-size: 14px; color: var(--ui-green-dark); font-weight: 600; }
.procedure-guide .procedure-branch-note { max-width: 60ch; margin-top: 16px; font-size: 14px; }
.procedure-guide .procedure-amount { white-space: nowrap; }
.procedure-guide .hair-actions a.button { column-gap: 4px; flex-wrap: wrap; }
.procedure-tasks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 36px; padding: 0; margin: 0; list-style: none; }
.procedure-tasks li { padding: 16px 0; border-bottom: 1px solid var(--ui-line); color: var(--ui-forest); }
.procedure-benefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.procedure-benefits article { min-width: 0; }
.procedure-benefits article + article { border-left: 1px solid var(--ui-line); padding-left: 40px; }
.procedure-benefits p { margin-top: 14px; max-width: 65ch; }
.procedure-specialist { margin-top: 28px !important; padding-top: 20px; border-top: 1px solid var(--ui-line); }
.procedure-guide :where(.procedure-specialist, .procedure-source) a { text-decoration: underline; text-underline-offset: 4px; }
.procedure-prices { margin: 0; max-width: 980px; }
.procedure-prices > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--ui-line); }
.procedure-prices dt { font-size: 19px; line-height: 1.45; }
.procedure-prices dt span { display: block; margin-top: 6px; color: #496456; font-size: 14px; }
.procedure-prices dd { margin: 0; color: var(--ui-forest); font-size: 22px; font-weight: 500; font-variant-numeric: tabular-nums; }
.procedure-reading { max-width: 75ch; }
.procedure-reading h3 { margin-bottom: 18px; }
.procedure-reading p + p, .procedure-reading ul + p { margin-top: 18px; }
.procedure-reading li + li { margin-top: 10px; }
.procedure-detail { margin-top: 24px; border-block: 1px solid var(--ui-line); }
.procedure-detail + .procedure-detail { margin-top: -1px; }
.procedure-detail summary { cursor: pointer; padding: 20px 8px 20px 0; font-size: 20px; color: var(--ui-forest); line-height: 1.4; }
.procedure-detail > div { padding: 0 0 24px; max-width: 75ch; }
.procedure-detail p + p, .procedure-detail li + li { margin-top: 12px; }
.procedure-detail ul { padding-left: 24px; }
.procedure-source { margin-top: 24px !important; max-width: 75ch; font-size: 14px; }
.procedure-panels > div { max-width: none; }
.procedure-panel-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 24px; }
.procedure-panel-grid a { display: block; color: var(--ui-forest); }
.procedure-panel-grid img { display: block; width: 100%; height: auto; border: 1px solid var(--ui-line); }
.procedure-panel-grid span { display: block; margin-top: 12px; text-decoration: underline; text-underline-offset: 4px; }
.procedure-guide ::selection { background: #d8e6d4; color: #173f2d; }
@media (max-width: 900px) {
  .procedure-guide .hair-intro { grid-template-columns: 1fr .7fr; gap: 24px; }
}
@media (max-width: 700px) {
  .procedure-guide .hair-intro, .procedure-benefits, .procedure-tasks { grid-template-columns: 1fr; }
  .procedure-guide .hair-intro figure { max-width: 100%; }
  .seo-page .procedure-guide .hair-intro h1 { font-size: clamp(28px, 7.5vw, 38px) !important; }
  .procedure-benefits { gap: 28px; }
  .procedure-benefits article + article { border-left: 0; border-top: 1px solid var(--ui-line); padding: 24px 0 0; }
  .procedure-prices > div { grid-template-columns: 1fr; gap: 8px; padding: 18px 0; }
  .procedure-prices dt, .procedure-detail summary { font-size: 18px; }
  .procedure-panel-grid { grid-template-columns: 1fr; }
  .procedure-panel-grid img { max-height: 450px; object-fit: contain; }
}
