.quote-section--editorial { padding-block: var(--section-space); }
.quote-section__inner { display: grid; grid-template-columns: minmax(0,558fr) minmax(0,474fr); gap: var(--space-15); align-items: stretch; }
.quote-section__context { display: flex; flex-direction: column; gap: var(--space-10); }
.quote-section__context h2 { margin: 0; font-size: var(--text-h4); line-height: var(--leading-h4); font-weight: var(--font-weight-medium); }
.quote-section__clinic { margin: 0; margin-top: auto; aspect-ratio: 558/380; border-radius: var(--radius-card); overflow: hidden; }
.quote-section__clinic-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.quote-section__copy--portrait { position: relative; isolation: isolate; height: 540px; align-self: center; border-radius: var(--radius-card); overflow: hidden; display: flex; align-items: flex-end; padding: 36px; color: var(--color-white); }
.quote-section__copy--portrait::after { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent 35%,rgb(0 0 0 / 90%)); z-index: -1; }
.quote-section__portrait { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; }
.quote-section__portrait-picture { position: absolute; inset: 0; z-index: -2; }
.quote-section__portrait-picture .quote-section__portrait { z-index: auto; }
.quote-section--editorial blockquote { margin: 0; font-size: var(--text-section-body); line-height: var(--leading-body); }
.quote-section--editorial blockquote p { margin: 0; }
.quote-section__author { display: grid; gap: var(--space-2); margin: var(--space-8) 0 0; font-size: var(--text-base); }
.quote-section__author a { text-decoration: none; font-weight: var(--font-weight-bold); }
.quote-section__author span { font-size: var(--text-small); }
.quote-section--inline { padding-block: var(--space-8); }
.quote-section--inline .quote-section__copy { padding: var(--space-8); border-left: 4px solid var(--color-pink); border-radius: 0 var(--radius-input) var(--radius-input) 0; background: var(--color-pink-soft); }
.quote-section--inline blockquote { margin: 0; font-size: var(--text-base); line-height: var(--leading-body); }
.quote-section--inline blockquote p { margin: 0; }
@media(max-width:767px) { .quote-section__inner { grid-template-columns: 1fr; gap: var(--space-8); } .quote-section__copy--portrait { padding: var(--space-8); min-height: 540px; } .quote-section__context h2 { font-size: var(--text-h5); line-height: var(--leading-h5); } }

.quote-section--editorial .quote-section__author { font-size: var(--text-section-body); line-height: var(--leading-body); }

.quote-section__context h2 { font-weight: var(--font-weight-regular); }
.quote-section--editorial blockquote { font-size: var(--text-small); }
.quote-section--editorial .quote-section__author { font-size: var(--text-small); gap: 0; text-align: center; margin-top: var(--space-8); }
.quote-section--editorial .quote-section__author a { font-weight: var(--font-weight-regular); }
.quote-section--editorial .quote-section__author span { font-size: var(--text-micro); line-height: var(--leading-micro); }
.quote-section--editorial .quote-section__author span { color: var(--color-pink); }
.quote-section--editorial .quote-section__words { text-align: center; width: 100%; }
@media(min-width:768px) { .quote-section__context h2 { text-align: center; } }
@media(max-width:767px) { .quote-section__portrait { object-position: right center; } }
.quote-section__copy--portrait { padding: var(--space-13); }
@media(max-width:767px) {
  .quote-section__inner { gap: var(--space-8); }
  .quote-section__context { gap: var(--space-8); }
  .quote-section__context h2 { font-size: var(--text-h4); line-height: var(--leading-h4); font-weight: var(--font-weight-medium); }
  .quote-section__clinic { aspect-ratio: 350/280; }
  .quote-section__copy--portrait { height: 526px; min-height: 526px; padding: var(--space-8); }
}

.quote-section--inline { padding-block: var(--space-7); }
.quote-section--inline .quote-section__copy { padding-left: var(--space-9); border-left: 0; border-radius: 0 var(--space-6) var(--space-6) 0; background: var(--color-pink-faint); box-shadow: inset 4px 0 var(--color-pink); }
.quote-section--inline blockquote { font-weight: var(--font-weight-medium); }
@media(max-width:767px) { .quote-section--inline { padding-block: var(--space-5); } .quote-section--inline .quote-section__copy { padding-left: var(--space-8); } }
@media(max-width:767px) { .quote-section--editorial .quote-section__author { margin-top: var(--space-6); gap: var(--space-6); } }
