/* Supervision uses the same hierarchy and visual language as the module pages. */
.public-training-v2 .public-supervision-hero { grid-template-columns: minmax(0,1fr); padding: clamp(26px,4vw,48px); }
.public-training-v2 .public-supervision-hero .public-training-detail-hero-copy {
    grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
    grid-template-areas: "intro portrait" "facts facts";
    gap: 30px 42px;
    padding-right: 0;
}
.public-supervision-hero .public-training-detail-hero-intro { grid-area: intro; align-self: center; }
.public-supervision-hero .public-supervision-portrait { grid-area: portrait; align-self: center; }
.public-training-v2 .public-supervision-hero .public-training-detail-conference img { aspect-ratio: 1.45; object-fit: cover; }
.public-training-v2 .public-supervision-hero .public-training-detail-hero-stat-grid { grid-area: facts; grid-template-columns: repeat(4,minmax(0,1fr)); width: 100%; margin: 0; }
.public-training-v2 .public-supervision-hero .public-training-detail-stat { min-width: 0; min-height: 0; padding: 15px; }
.public-training-v2 .public-supervision-hero .public-training-detail-stat strong { font-size: .88rem; line-height: 1.5; }
.public-supervision-sections { display: grid; gap: 26px; }
.public-supervision-topics { margin-top: 26px; }
.public-supervision-formats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.public-supervision-format { display: flex; flex-direction: column; min-width: 0; padding: clamp(22px,3vw,32px); border: 1px solid var(--training-line); border-top: 3px solid #c4a16a; border-radius: 20px; background: linear-gradient(145deg,#fff,#faf7f0); }
.public-supervision-format > .eyebrow { margin: 0 0 10px; }
.public-training-v2 .public-supervision-format h3 { margin: 0; color: var(--training-ink); font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.45rem,2.4vw,1.9rem); line-height: 1.25; }
.public-supervision-format > p { color: var(--training-ink-soft); line-height: 1.7; }
.public-training-v2 .public-supervision-price { margin: 24px 0 5px; color: var(--training-ink); font-size: 2.4rem; font-weight: 750; letter-spacing: -.04em; line-height: 1.2; }
.public-supervision-price span { font-size: .88rem; font-weight: 600; letter-spacing: 0; }
.public-supervision-format-detail { margin: 0; font-size: .86rem; font-weight: 700; }
.public-supervision-format .public-training-detail-hero-actions { margin-top: auto; padding-top: 16px; }
.public-training-v2 .public-supervision-format .submit-button { width: 100%; min-width: 0; font-size: .88rem; }
.public-supervision-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; margin: 0; padding: 0; list-style: none; }
.public-supervision-steps li { min-width: 0; }
.public-supervision-steps li > span { display: grid; width: 34px; height: 34px; margin-bottom: 16px; place-items: center; border: 1px solid rgba(137,91,28,.2); border-radius: 50%; background: #f1e7d5; color: #895b1c; font-size: .75rem; font-weight: 800; }
.public-supervision-steps strong { display: block; color: var(--training-ink); font-size: 1rem; }
.public-supervision-steps p { margin: 10px 0 0; color: var(--training-ink-soft); font-size: .9rem; line-height: 1.7; }
.public-supervision-format-fields { min-width: 0; margin: 0; padding: 0; border: 0; }
.public-supervision-format-fields legend { margin-bottom: 12px; padding: 0; color: #17304f; font-size: .9rem; font-weight: 800; }
.public-supervision-contact-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.public-training-v2 .public-supervision-request-note { margin: 0; color: var(--training-ink-soft); font-size: .82rem; line-height: 1.6; }
@media (max-width: 860px) {
    .public-training-v2 .public-supervision-hero .public-training-detail-hero-copy { grid-template-columns: minmax(0,1fr); grid-template-areas: "intro" "portrait" "facts"; gap: 26px; }
    .public-training-v2 .public-supervision-hero .public-training-detail-hero-stat-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .public-supervision-portrait { width: 100%; max-width: 620px; justify-self: center; }
    .public-supervision-formats, .public-supervision-steps { grid-template-columns: minmax(0,1fr); }
    .public-supervision-steps { gap: 24px; }
}
@media (max-width: 540px) {
    .public-training-v2 .public-supervision-hero { padding: 26px 18px; }
    .public-training-v2 .public-supervision-hero .public-training-detail-stat { padding: 12px; }
    .public-supervision-contact-row { grid-template-columns: minmax(0,1fr); }
    .public-supervision-price span { display: block; margin-top: 6px; }
}
