/* Third revision: preserve the established type, palette and shared navigation. */
.footer-brand { width: 315px; max-width: 100%; display: inline-flex; flex-direction: column; align-items: flex-start; }
.footer-brand .footer-role { width: 91.8%; margin-top: 5px; color: inherit; font: 400 11px/1.3 var(--sans); text-align: center; text-transform: uppercase; }
.editorial-page main .rev3-subheading { margin: 35px 0 18px; color: var(--ink); font: 400 26px/1.2 var(--serif); }
.rev3-section-lead { max-width: 780px; margin-top: 26px; color: var(--muted); }
.editorial-page main .rev3-section-lead { margin-block: 24px; }
.rev3-principle-art { display: block; width: 100%; height: 170px; margin: 0 0 26px; object-fit: contain; }
.editorial-page main img.rev3-principle-art { object-fit: contain; }
.editorial-page main .rev3-astra-logo, .rev3-astra-logo { display: block; width: 210px; height: auto; margin: 0 0 45px; }
.editorial-page main .open-chapter:has(.rev3-section-lead) .rev3-section-lead { margin-bottom: 22px; }
#emdr { scroll-margin-top: 150px; }
.rev3-formation-seated .inner-hero-media { overflow: hidden; border: 0; background: var(--rose-pale); }
.rev3-formation-seated .inner-hero-media img { width: 100%; height: 650px; object-fit: cover; object-position: center 58%; }
.rev3-process-lead { max-width: 900px; margin: 0 0 48px auto; }
#percorso .clinic-section-head { display: block; }
#percorso .clinic-section-head > .clinic-kicker { margin-top: 0; }
#percorso .rev3-process-lead { margin-inline: 0; }
.clinic-page .rev3-clinic-chapter { margin-top: 32px; padding-top: 28px; border-top: 1px solid var(--line); }
.clinic-page .rev3-clinic-chapter h3 { margin-bottom: 18px; font-size: 29px; }
.rev3-clinic-chapters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 70px; padding-bottom: 90px; }
.clinic-page .clinic-team-grid { align-items: start; }
.clinic-page .rev3-values-art { float: right; width: 120px; height: 120px; margin-left: 30px; object-fit: contain; }
.rev3-service-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 50px; margin-top: 42px; }
.rev3-service-links a { display: grid; grid-template-columns: minmax(0, 1fr) 24px; column-gap: 20px; padding-block: 30px; border-top: 1px solid var(--line); }
.rev3-service-links h3 { font-size: 30px; margin-bottom: 12px; }
.rev3-service-links p { grid-column: 1; color: var(--muted); }
.rev3-service-links a > span { grid-column: 2; grid-row: 1; justify-self: end; }
.rev3-service-links a:is(:hover, :focus-visible) h3 { color: var(--plum); }
.revision3-page main .rev3-project-hero { padding-block: 65px; background: #eee0df; }
.revision3-page main .rev3-project-grid { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 70px; align-items: center; }
.revision3-page main .rev3-project-grid h1 { font-size: 76px; line-height: 1.02; margin-bottom: 30px; }
.revision3-page main .rev3-project-grid h1 em { display: block; }
.revision3-page main .rev3-project-grid > img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
.revision3-page main .rev3-project-grid .button, .revision3-page main .rev3-project-grid .clinic-button { margin-top: 32px; }
.revision3-page main .rev3-reading { max-width: 880px; color: var(--muted); font-size: 19px; }
.revision3-page main .rev3-project-band { background: #eee0df; }
.revision3-page main .rev3-story { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 80px; align-items: start; }
.revision3-page main .rev3-story h2 { font-size: 46px; }
.revision3-page main .rev3-prose { max-width: 760px; color: var(--muted); }
.revision3-page main .rev3-event-grid { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: 80px; align-items: start; }
.revision3-page main .rev3-event-grid figure { max-width: 420px; }
.revision3-page main .rev3-event-grid figure img { width: 100%; height: auto; object-fit: contain; }
.revision3-page main .rev3-event-grid h2 { font-size: 46px; margin-bottom: 32px; }
.revision3-page main .rev3-testimonials { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px 38px; margin-top: 45px; }
.revision3-page main .rev3-testimonials blockquote { margin: 0; padding: 25px 0 0; border-top: 1px solid var(--line); color: var(--ink); font: 400 24px/1.4 var(--serif); }
.revision3-page main .rev3-project-cta { scroll-margin-top: 145px; }
.revision3-page main .rev3-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px 34px; margin-top: 34px; }
.revision3-page main .rev3-actions .text-link { margin: 0; }
.revision3-page main .rev3-method-grid { margin-top: 45px; }
.revision3-page main .rev3-training-topics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 55px; margin-top: 40px; }
.revision3-page main .rev3-training-topics article { padding-block: 30px; border-top: 1px solid var(--line); }
.revision3-page main .rev3-training-topics h3 { font-size: 30px; line-height: 1.12; margin-bottom: 18px; }
.revision3-page main .rev3-training-topics p { color: var(--muted); }
.revision3-page.clinic-page main .rev3-project-hero { background: #e1e9e3; }
.revision3-page.clinic-page main .rev3-project-band { background: #e6eee8; }
.revision3-page.clinic-page main :is(h1,h2,h3) em { color: var(--plum); }
.revision3-page.clinic-page main .rev3-project-grid > img { aspect-ratio: 4 / 3; }
@media (max-width: 1100px) {
  .footer-brand { width: 280px; }
  .revision3-page main .rev3-project-grid { gap: 40px; }
  .revision3-page main .rev3-project-grid h1 { font-size: 62px; }
  .revision3-page main .rev3-story, .revision3-page main .rev3-event-grid { gap: 45px; }
  .revision3-page main .rev3-testimonials { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .rev3-formation-seated .inner-hero-media { min-height: 0; }
  .rev3-formation-seated .inner-hero-media img { height: 520px; }
  .footer-brand { width: 300px; }
  .footer-brand .footer-role { font-size: 10px; }
  .rev3-service-links { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .rev3-clinic-chapters { grid-template-columns: minmax(0, 1fr); padding-bottom: 60px; }
  .rev3-process-lead { margin-bottom: 35px; }
  .rev3-principle-art { height: 145px; }
  .clinic-page .rev3-values-art { width: 82px; height: 82px; margin-left: 16px; }
  .revision3-page main .rev3-project-hero { padding-block: 42px; }
  .revision3-page main .rev3-project-grid, .revision3-page main .rev3-story, .revision3-page main .rev3-event-grid { grid-template-columns: minmax(0, 1fr); gap: 35px; }
  .revision3-page main .rev3-project-grid h1 { font-size: 50px; }
  .revision3-page main .rev3-project-grid > img { max-height: 340px; aspect-ratio: 4 / 3; }
  .revision3-page main .rev3-story h2, .revision3-page main .rev3-event-grid h2 { font-size: 38px; }
  .revision3-page main .rev3-event-grid figure { max-width: 340px; margin-inline: auto; }
  .revision3-page main .rev3-testimonials, .revision3-page main .rev3-training-topics { grid-template-columns: minmax(0, 1fr); }
  .revision3-page main .rev3-project-cta { scroll-margin-top: 110px; }
}
