/* Service / training / location pages.
   Editorial rhythm: hairlines and generous leading instead of card grids —
   same logic as the approved mockup (cards read "corporate", which the client
   explicitly rejected in v1). */

.page-hero .hero-cta{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap}

.svc-section{padding:96px 0}
.svc-section.alt{background:var(--white)}
.svc-section h2{margin-bottom:28px}
.svc-section p{margin-bottom:20px;color:#3d2c3c;font-weight:300;font-size:17.5px}
.svc-section .narrow>p:last-child{margin-bottom:0}

ul.editorial{list-style:none;margin-top:10px}
ul.editorial li{padding:18px 0 18px 34px;border-top:1px solid var(--hair);position:relative;font-weight:300;color:#3d2c3c}
ul.editorial li:last-child{border-bottom:1px solid var(--hair)}
ul.editorial+p,.word-row+p{margin-top:26px}
ul.editorial li::before{content:"";position:absolute;left:0;top:29px;width:16px;height:1px;background:var(--gold)}

/* Training catalogue */
.program-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--hair);margin-top:56px;border:1px solid var(--hair)}
.program{background:var(--ivory);padding:44px 40px}
/* An odd card out spans the row instead of leaving an empty grey cell. */
.program-cards:not(.three)>.program:last-child:nth-child(odd){grid-column:1/-1}
.program h3{font-size:21px;margin-bottom:16px;color:var(--wine)}
.program p{font-size:16px;font-weight:300;color:#3d2c3c;margin-bottom:18px}
.program .for{font-size:12px;letter-spacing:.08em;color:var(--muted)}
.program .for span{display:block;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:6px}
.program .btn{margin-top:8px;padding:14px 26px}

/* Location strip */
.location-bar{padding:64px 0;background:var(--sand)}
.loc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
.loc-grid h3{font-size:15px;letter-spacing:.22em;text-transform:uppercase;font-family:'Inter',sans-serif;font-weight:600;color:var(--gold-dark);margin-bottom:14px}
.loc-grid p{font-weight:300;color:#3d2c3c}
.loc-grid a{color:var(--wine);text-decoration:none}

/* Clinicians */
.clinicians{background:var(--white);padding:96px 0}
.svc-section.alt+.clinicians,.proof+.clinicians{padding-top:0}
.clin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1px;background:var(--hair);border:1px solid var(--hair)}
.clin{background:var(--white);padding:40px}
.clin h3{font-size:23px;margin-bottom:6px}
.clin .role{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dark);margin-bottom:18px}
.clin p{font-weight:300;color:#3d2c3c;font-size:16px;margin-bottom:12px}
.clin .capacity{font-size:14px;color:var(--teal)}

/* FAQ */
.faq{background:var(--sand)}
.faq h2{margin-bottom:34px}
.faq details{border-top:1px solid var(--hair);padding:22px 0}
.faq details:last-of-type{border-bottom:1px solid var(--hair)}
.faq summary{cursor:pointer;font-family:'Fraunces',serif;font-size:20px;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold-dark);font-family:'Inter',sans-serif;font-size:22px;font-weight:300}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:16px;font-weight:300;color:#3d2c3c;max-width:70ch}

/* Closing CTA */
.cta-band{background:var(--grad);color:var(--ivory);text-align:center}
.cta-band h2{color:var(--ivory)}
.cta-band p{color:#e3d3dd;font-weight:300;margin:22px auto 0;max-width:60ch}
.cta-band .hero-cta{justify-content:center;margin-top:36px;display:flex;gap:14px;flex-wrap:wrap}

/* Related */
.related{padding:72px 0}
.related-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.related-list a{display:inline-block;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--wine);border:1px solid rgba(122,31,61,.3);padding:12px 20px;text-decoration:none;transition:.25s}
.related-list a:hover{background:var(--wine);color:var(--ivory);border-color:var(--wine)}
@media(max-width:620px){.related-list a{font-size:11.5px;letter-spacing:.05em;padding:11px 14px}}

/* Outstanding-information chip (staging only) */
.tbd{display:inline-block;background:#fff3cd;border:1px dashed #c1934f;color:#6b4e12;font-size:12.5px;letter-spacing:.04em;padding:7px 13px;border-radius:2px;font-family:'Inter',sans-serif}

@media(max-width:900px){
  .program-cards{grid-template-columns:1fr}
  .loc-grid{grid-template-columns:1fr;gap:28px}
  .svc-section{padding:64px 0}
}

/* Optional photograph band under the hero (client-supplied imagery). */
.page-photo{margin:0;padding:0 clamp(18px,5vw,64px)}
.page-photo img,.page-photo video{display:block;width:100%;max-width:1180px;margin:-42px auto 0;height:auto;object-fit:cover;aspect-ratio:16/9}
@media (max-width:760px){.page-photo img,.page-photo video{margin-top:-18px}}

/* Social proof — the practice's own quotes and participant rating. */
.proof{background:var(--white);border-top:1px solid var(--hair)}
.proof .wrap{display:grid;grid-template-columns:minmax(200px,1fr) 2fr;gap:clamp(32px,6vw,90px);align-items:start}
.proof-stat strong{display:block;font-family:'Fraunces',serif;font-size:clamp(52px,7vw,84px);font-weight:340;line-height:1;color:var(--wine)}
.proof-stat span{display:block;margin-top:14px;font-size:14px;color:var(--muted);max-width:220px}
.proof-quotes figure{margin:0 0 34px;border-left:1px solid var(--gold);padding-left:28px}
.proof-quotes blockquote{margin:0;font-family:'Fraunces',serif;font-style:italic;font-size:clamp(18px,2vw,21px);line-height:1.55;color:var(--ink)}
.proof-quotes figcaption{margin-top:12px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-dark)}
@media (max-width:820px){.proof .wrap{grid-template-columns:1fr}}

/* Breadcrumbs — the section structure, made visible. */
.crumbs{font-size:12px;letter-spacing:.04em;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--wine)}
.crumbs .sep{margin:0 8px;opacity:.5}
.crumbs [aria-current="page"]{color:var(--ink)}

/* Kids & Parents blocks — Dana's feedback, 2026-09-08 -------------------- */
/* Recognition tiles: the "this sounds like my child" list, deliberately  */
/* quiet and buttonless so it reads as recognition rather than as a menu. */
.tiles{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:48px}
.tiles li{background:var(--white);padding:30px 28px;font-weight:300;font-size:16px;color:#3d2c3c;line-height:1.5}
@media(max-width:1000px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tiles{grid-template-columns:1fr}}

/* Outcome words: Strong. Joyful. Connected. Confident. Capable. */
.word-row{display:flex;flex-wrap:wrap;gap:10px 34px;margin:34px 0 30px}
.word-row span{font-family:'Fraunces',serif;font-size:clamp(26px,3.4vw,44px);line-height:1.1;color:var(--wine)}
.word-row span:nth-child(even){color:var(--gold-dark)}

/* Understand -> Practice -> Get Brave */
.steps{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair);margin:40px 0 8px}
.steps li{background:var(--white);padding:36px 32px;counter-increment:step}
.steps li::before{content:counter(step);display:block;font-family:'Fraunces',serif;font-size:34px;color:var(--gold);line-height:1;margin-bottom:14px}
.steps h3{font-size:19px;color:var(--wine);margin-bottom:12px}
.steps p{font-size:16px;font-weight:300;color:#3d2c3c;margin:0}
@media(max-width:820px){.steps{grid-template-columns:1fr}}

/* Secondary call to action inside a section. */
.inline-cta{margin-top:52px;border-top:1px solid var(--hair);padding-top:44px}
.inline-cta h3{font-size:clamp(22px,2.4vw,30px);color:var(--wine);margin-bottom:14px}
.inline-cta p{font-weight:300;color:#3d2c3c;margin-bottom:26px;max-width:60ch}

/* Dana's closing philosophy, ahead of the final CTA band. */
.closing-quote{background:var(--sand);padding:88px 0}
.closing-quote figure{margin:0;text-align:center}
.closing-quote blockquote{margin:0 auto;max-width:34ch;font-family:'Fraunces',serif;font-style:italic;font-size:clamp(22px,2.8vw,34px);line-height:1.4;color:var(--ink)}
.closing-quote figcaption{margin-top:22px;font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-dark)}

/* Three pathways sit in one row rather than leaving a hole in a 2-up grid. */
.program-cards.three{grid-template-columns:repeat(3,1fr)}
.program-cards.three .program{padding:38px 32px}
@media(max-width:960px){.program-cards.three{grid-template-columns:1fr}}

/* A page with a quote but no statistic gives the quote the full measure. */
.proof.quotes-only .wrap{grid-template-columns:1fr}
.proof.quotes-only .proof-quotes blockquote{max-width:56ch}
.clin .certs{font-size:13px;letter-spacing:.04em;color:var(--wine);font-weight:500;margin-top:-6px}
.section-link{margin-top:36px;text-align:center}
@media(max-width:480px){.section-link .btn{letter-spacing:.08em;padding:17px 14px}}
