/* EBD Dental v1.6: editorial patient stories section (ed-stories). */
:root {
	--ed-navy: #172735;
	--ed-ink: #0e1a24;
	--ed-teal: #3f8ea7;
	--ed-teal-soft: #9cc8d6;
	--ed-silver: #b7c1c8;
	--ed-grey: #eef1f3;
	--ed-paper: #f7f5f1;
	--ed-text: #1f2b35;
	--ed-mute: #5f6b74;
	--ed-line: rgba(23, 39, 53, .14);
	--ed-line-light: rgba(255, 255, 255, .16);
	--ed-gutter: clamp(1.25rem, 5vw, 5.5rem);
	--ed-max: 1680px;
	--ed-col-gap: clamp(1rem, 2.2vw, 2.5rem);
	--ed-pad: clamp(88px, 11vw, 176px);
	--ed-serif: "Marcellus", "Times New Roman", serif;
	--ed-sans: "Inter Tight", system-ui, -apple-system, "Segoe UI", sans-serif;
	--ed-ease: cubic-bezier(.2, .7, .1, 1);
	--ed-d1: clamp(3.1rem, 8.2vw, 9.25rem);   /* hero */
	--ed-d2: clamp(2.5rem, 5.6vw, 6.25rem);   /* statements */
	--ed-h2: clamp(2.15rem, 4vw, 4.25rem);
	--ed-h3: clamp(1.75rem, 3vw, 3.25rem);
	--ed-lead: clamp(1.2rem, 1.6vw, 1.5rem);
}

/* ---------- Section frame ---------- */
.ed-sec { position: relative; padding: var(--ed-pad) var(--ed-gutter) !important; font-family: var(--ed-sans); font-size: 1.1875rem; line-height: 1.65; color: var(--ed-text); box-sizing: border-box; }
.ed-sec > * { max-width: var(--ed-max); margin-left: auto !important; margin-right: auto !important; }
.ed-sec p { margin: 0; }
.ed-sec :is(h2, h3) { font-family: var(--ed-serif); font-weight: 400; letter-spacing: -.005em; color: inherit; margin: 0; text-wrap: balance; }
.ed-sec h2 { font-size: var(--ed-h2); line-height: 1.04; }
.ed-sec h2 em, .ed-hero__title em { font-style: normal; color: var(--ed-teal); }
.ed-lead { font-size: var(--ed-lead); line-height: 1.45; color: var(--ed-text); }

/* Editorial index: "01 Our philosophy" on a hairline. */
p.ed-index { display: flex; align-items: center; gap: 14px; font-family: var(--ed-sans); font-size: .75rem; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: var(--ed-mute); margin: 0 0 clamp(28px, 4vw, 56px) !important; }
p.ed-index span { font-variant-numeric: tabular-nums; color: var(--ed-teal); letter-spacing: .08em; }
p.ed-index::after { content: ""; flex: 1; height: 1px; background: var(--ed-line); }
p.ed-index--light { color: rgba(255, 255, 255, .62); }
p.ed-index--light span { color: var(--ed-teal-soft); }
p.ed-index--light::after { background: var(--ed-line-light); }
.ed-note { font-size: .8125rem; color: var(--ed-mute); margin-top: 14px !important; }
/* =========================================================================
   08 Patient stories
   ========================================================================= */
.ed-stories { background: var(--ed-navy); color: #fff; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--ed-col-gap); align-items: center; }
.ed-stories > * { max-width: none; margin: 0 !important; }
@media (min-width: 1680px) { .ed-stories { padding-left: calc((100% - var(--ed-max)) / 2) !important; padding-right: calc((100% - var(--ed-max)) / 2) !important; } }
.ed-stories__media { grid-column: 1 / span 5; }
.ed-stories__compare { aspect-ratio: 4 / 5 !important; border-radius: 0 !important; box-shadow: none !important; }
.ed-stories .ed-note { color: rgba(255, 255, 255, .55); }
.ed-stories__body { grid-column: 7 / -1; }
.ed-quotes .ebd-carousel__track > *, .ed-quotes .ebd-slide { background: none !important; padding: 0 !important; box-shadow: none !important; border: 0 !important; }
figure.ed-quote { margin: 0; }
p.ed-quote__text { font-family: var(--ed-serif); font-size: clamp(1.7rem, 2.9vw, 3rem); line-height: 1.18; color: #fff; text-wrap: pretty; }
p.ed-quote__who { margin-top: 32px !important; display: flex; gap: 14px; align-items: baseline; font-size: 1.0625rem; color: rgba(255, 255, 255, .62); }
p.ed-quote__who strong { color: #fff; font-weight: 600; }
p.ed-quote__who::before { content: ""; width: 40px; height: 1px; background: var(--ed-teal-soft); align-self: center; }
.ed-quotes .ebd-carousel__nav { margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--ed-line-light); }
.ed-quotes .ebd-carousel__btn { color: #fff; border-color: var(--ed-line-light); background: transparent; border-radius: 2px; }
.ed-quotes .ebd-carousel__btn:hover { background: rgba(255, 255, 255, .1); }
.ed-quotes .ebd-carousel__dots button { background: rgba(255, 255, 255, .3); border-radius: 0; width: 24px; height: 2px; }
.ed-quotes .ebd-carousel__dots button[aria-current="true"], .ed-quotes .ebd-carousel__dots button.is-active { background: #fff; }

@media (max-width: 781px) {
	:root { --ed-pad: 84px; }
	.ed-stories__media, .ed-stories__body { grid-column: 1 / -1; }
	.ed-stories__body { margin-top: 56px !important; grid-row: 1; }
	.ed-stories__media { grid-row: 2; margin-top: 56px !important; }
	.ed-stories__compare { aspect-ratio: 1 / 1 !important; }
}
