/* Full-site editorial layouts. Shared brand styles live in interior.css. */
/* Main sections use --section-space; introductions and link bands use compact spacing. */
.editorial-hero, .about-hero, .profile-hero, .catalog-hero { padding-block: var(--hero-space-start) var(--hero-space-end); }
.contact-page { padding-top: var(--hero-space-start); }
/* Approved business practice: coaching and training lead, with consulting secondary. */
.business-overview { --business-section-space: var(--section-space); color: var(--color-business); }
.business-overview .section-space { padding-block: var(--business-section-space); }
.business-overview .eyebrow { font-size: 11px; letter-spacing: .1em; }
.business-overview .section-title { font-weight: 500; line-height: 1.18; }
.business-overview .business-support-title { margin: 0; font-size: var(--heading-3-size); font-weight: 500; line-height: 1.25; letter-spacing: -.02em; }
.business-overview .interior-hero-grid { grid-template-columns: minmax(0, 1fr) min(40%, 450px); gap: 64px; align-items: start; }
.business-overview .interior-hero-copy { padding-top: 0; }
.business-overview .interior-title { max-width: 720px; margin-top: 20px; }
.business-overview .interior-intro { max-width: 620px; margin-top: 24px; }
.business-overview .interior-figure { width: 100%; max-width: 450px; justify-self: end; }
.business-overview .interior-photo { aspect-ratio: 4 / 5; max-height: none; }
.business-overview .interior-figure figcaption span { font-size: 12px; }
.business-hero-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 14px; margin-top: 30px; }
.business-hero-actions > a { gap: 24px; }
.business-outline-action { display: inline-flex; align-items: center; justify-content: space-between; border: 1px solid var(--color-business); padding: 17px 23px; min-height: 52px; font-weight: 500; transition: background-color 180ms ease; }
.business-outline-action:hover, .business-outline-action:focus-visible { background: var(--wash-hover); }
.business-offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(40px, 6vw, 88px); }
.business-offer { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding-top: 24px; border-top: 2px solid var(--color-business); }
.business-offer > h2 { font-weight: 500; line-height: 1.2; letter-spacing: -.025em; margin-top: 18px; }
.business-offer-intro { color: var(--color-body); font-size: 16px; line-height: 1.8; margin-top: 20px; margin-bottom: 26px; }
.business-offer > .action-secondary { margin-top: auto; padding-top: 20px; min-height: 64px; font-size: 14px; }
.business-coaching-formats { width: 100%; }
.business-coaching-formats > article { padding-block: 18px; border-top: 1px solid #C4CEC7; }
.business-coaching-formats h3, .coaching-format-grid h3 { line-height: 1.25; font-weight: 500; letter-spacing: -.02em; color: var(--color-business); margin-bottom: 10px; }
.business-coaching-formats p, .coaching-format-grid p { font-size: 15px; line-height: 1.85; color: var(--color-body); }
.business-coaching-formats p + p, .coaching-format-grid p + p { margin-top: 12px; }
.business-training-formats { margin-top: 22px; width: 100%; }
.business-training-formats > div { padding-block: 18px; border-top: 1px solid #C4CEC7; }
.business-training-formats h3 { line-height: 1.25; font-weight: 500; letter-spacing: -.02em; color: var(--color-business); }
.business-training-formats p { margin-top: 8px; font-size: 15px; line-height: 1.85; color: var(--color-body); }
.business-overview .business-experience { border-top: 1px solid #C4CEC7; display: grid; grid-template-columns: 1fr 1.1fr; gap: 18px 64px; align-items: start; }
.business-experience-eyebrow { grid-column: 1; grid-row: 1; }
.business-experience-copy { grid-column: 1; grid-row: 2; }
.business-experience .section-title { margin-top: 0; }
.business-experience-copy .body-copy { margin-top: 24px; }
.business-experience-photo { min-width: 0; grid-column: 2; grid-row: 2; }
.business-experience-photo img { display: block; width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: cover; object-position: center bottom; }
.business-experience-photo figcaption { margin-top: 14px; max-width: 580px; font-size: 12px; line-height: 1.7; color: var(--color-muted); }
.business-experience .action-secondary { margin-top: 18px; font-size: 14px; }
.business-client-proof { background: var(--surface-business-proof); padding-block: var(--business-section-space); }
.business-client-layout { display: grid; grid-template-columns: 1fr 1.1fr; gap: 18px 64px; align-items: start; }
.business-client-eyebrow { grid-column: 1; grid-row: 1; }
.business-client-quote { grid-column: 1; grid-row: 2; }
.business-client-quote, .business-client-photo { min-width: 0; }
.business-client-photo { width: 100%; max-width: 400px; justify-self: end; grid-column: 2; grid-row: 2; }
.business-client-photo-landscape { max-width: none; }
.business-client-photo img { display: block; width: 100%; height: auto; filter: url('/assets/business-client-tone.svg?v=1#match-leadership'); }
.business-client-proof blockquote { max-width: 1040px; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.4; letter-spacing: -.015em; margin-top: 0; }
.business-client-proof figcaption { display: flex; flex-direction: column; gap: 5px; margin-top: 24px; font-size: 14px; line-height: 1.6; }
.business-client-proof figcaption strong { font-weight: 600; }
.business-client-proof .action-secondary { margin-top: 14px; font-size: 14px; }
/* Contracted organization logos: original assets, optically balanced in a quiet grid. */
.business-partners { border-bottom: 1px solid var(--divider); }
.business-partners .section-title { margin: 0; }
.business-partner-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px 24px; margin: 32px 0 0; padding: 0; list-style: none; }
.business-partner-grid > li { min-width: 0; }
.business-partner-link { display: flex; align-items: center; justify-content: center; min-height: 132px; height: 100%; padding: 20px; color: var(--color-business); transition: background-color 180ms ease; }
.business-partner-link:is(:hover, :focus-visible) { background-color: var(--surface-business); }
.business-partner-link:focus-visible { outline: 2px solid var(--color-business); outline-offset: 2px; }
.business-partner-link img { display: block; width: 100%; max-width: 215px; max-height: 92px; height: auto; object-fit: contain; filter: grayscale(1); }
.business-partner-link[data-partner="nov"] img { max-width: 250px; max-height: 125px; }
.business-partner-link[data-partner="sunoco"] img { max-width: 155px; }
/* Preserve the supplied wordmark; remove its dark backdrop in the page treatment. */
.business-partner-link[data-partner="filamar"] img { max-width: 180px; height: 92px; object-fit: cover; object-position: center; filter: grayscale(1) invert(1) contrast(1.5); mix-blend-mode: multiply; }
/* Blend white canvas/edging with the page while preserving the exact logo artwork. */
.business-partner-link:is([data-partner="iace"], [data-partner="csi"]) img { mix-blend-mode: multiply; }
@media (max-width: 899px) {
  .business-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }
}
@media (max-width: 540px) {
  .business-partner-grid { gap: 8px 12px; margin-top: 24px; }
  .business-partner-link { min-height: 112px; padding: 12px; }
  .business-partner-link img { max-height: 80px; }
  .business-partner-link[data-partner="nov"] img { max-height: 100px; }
}
.business-delivery { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.business-consulting { border-top: 1px solid var(--divider); padding-block: var(--compact-section-space); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; align-items: start; }
.business-consulting .body-copy { margin-top: 0; }
.business-consulting .action-secondary { margin-top: 12px; font-size: 14px; }
.business-overview .action-primary, .business-overview .business-outline-action { font-size: 15px; line-height: 20px; min-height: 48px; padding: 13px 23px; border: 1px solid transparent; gap: 24px; }
.business-overview .business-outline-action { border-color: var(--color-business); }
.engagement-options .section-title { margin-top: 18px; }
.coaching-format-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; margin-top: 32px; }
.coaching-format-grid article { min-width: 0; padding-top: 24px; border-top: 1px solid #C4CEC7; }
.engagement-delivery { font-size: 14px; line-height: 1.8; color: var(--color-body); margin-top: 28px; max-width: 1000px; }
.engagement-options .section-intro > .engagement-delivery { margin-top: 0; }
.training-delivery { display: grid; grid-template-columns: 1fr 1.2fr; gap: 80px; border-top: 1px solid #C4CEC7; }
.training-delivery .section-title { margin-top: 18px; }
@media (max-width: 1100px) {
  .business-overview .interior-hero-grid { gap: 40px; }
  .business-overview .business-experience, .business-client-layout { column-gap: 40px; }
  .business-delivery, .training-delivery, .business-consulting { gap: 40px; }
}
@media (max-width: 899px) {
  .business-overview .interior-hero-grid, .business-offer-grid, .business-overview .business-experience, .business-delivery, .training-delivery, .coaching-format-grid, .business-client-layout, .business-consulting { grid-template-columns: minmax(0, 1fr); }
  .business-overview .interior-figure { justify-self: start; }
  .business-experience-photo { grid-column: 1; grid-row: 3; margin-top: 10px; }
  .business-client-photo { justify-self: start; grid-column: 1; grid-row: 3; margin-top: 10px; }
  .business-overview .interior-title { max-width: 680px; }
  .business-offer-grid { gap: 48px; }
  .business-delivery, .training-delivery, .business-consulting { gap: 24px; }
}
@media (max-width: 540px) {
  .business-hero-actions { flex-direction: column; }
  .business-hero-actions > a { width: 100%; padding-inline: 18px; }
  .business-client-proof blockquote { font-size: 25px; }
  .coaching-format-grid { gap: 28px; }
}
/* Center the message against the portrait, excluding its caption and the fixed eyebrow. */
@media (min-width: 900px) {
  .business-overview .interior-hero-grid { grid-template-rows: auto auto; row-gap: 17px; }
  .business-overview .interior-hero-copy { grid-row: 1; align-self: stretch; display: flex; flex-direction: column; justify-content: center; position: relative; padding-block: 38px; }
  .business-overview .interior-hero-copy > .eyebrow { position: absolute; top: 0; left: 0; }
  .business-overview .interior-title { margin-top: 0; }
  .business-overview .interior-figure { display: grid; grid-column: 2; grid-row: 1 / span 2; grid-template-rows: subgrid; align-self: stretch; }
  .business-overview .interior-photo { align-self: center; }
  .business-overview .interior-figure figcaption { margin-top: 0; }
}
[hidden] { display: none !important; }
.body-copy { font-size: 15px; line-height: 1.9; color: var(--color-body); }
.small-note { font-size: 12px; line-height: 1.8; color: var(--color-muted); }
.small-note a, .prose a { text-decoration: underline; text-underline-offset: 4px; }
.desktop-nav { gap: 24px; font-size: 12px; }
.desktop-nav .nav-link, .site-header .mobile-menu .mobile-nav-category { font-family: Inter, Arial, sans-serif; font-size: 13px; font-weight: 500; line-height: 1.6; letter-spacing: .1em; text-transform: uppercase; }
.footer-bottom { display: flex; justify-content: space-between; gap: 24px; border-top: 1px solid #1a1a1a20; margin-top: 28px; padding-top: 20px; color: var(--color-muted); font-size: 10px; line-height: 1.8; }
.footer-bottom > div { display: flex; gap: 24px; }
.footer-bottom a:hover { text-decoration: underline; text-underline-offset: 4px; }
.editorial-heading { max-width: 1000px; padding-top: 0; }
.editorial-heading h1 { letter-spacing: -.045em; line-height: 1.08; margin-top: 27px; color: var(--accent); font-weight: 400; }
.theme-business .editorial-heading h1 { font-weight: 500; }
.editorial-deck { max-width: 620px; margin-top: 32px; font-size: 17px; line-height: 1.85; color: var(--color-body); }
.catalog-intro, .about-story { display: grid; grid-template-columns: 1fr 1.1fr; gap: 96px; align-items: center; }
.wide-photo { min-width: 0; }
.wide-photo img { width: 100%; height: auto; aspect-ratio: 1.3; object-fit: cover; }
.wide-photo figcaption { font-size: 10px; color: var(--color-muted); line-height: 1.7; margin-top: 15px; }
.catalog-intro .wide-photo img { aspect-ratio: 3 / 2; object-position: 50% center; }
.course-collection { margin-top: 64px; border-top: 1px solid #1a1a1a40; }
.course { border-bottom: 1px solid #1a1a1a30; scroll-margin-top: 30px; }
.course summary { display: grid; grid-template-columns: minmax(0, 1fr) 36px; gap: 22px; align-items: center; list-style: none; padding: 32px 0; cursor: pointer; color: var(--accent); }
.course summary::-webkit-details-marker { display: none; }

.course-category { display: block; font-size: 9px; text-transform: uppercase; letter-spacing: .14em; margin-bottom: 10px; }
.course-name { display: block; font-size: clamp(27px, 3vw, 40px); line-height: 1.25; letter-spacing: -.02em; }
.course-toggle { font-size: 30px; font-weight: 400; text-align: center; transition: transform 180ms; }
.course[open] .course-toggle { transform: rotate(45deg); }
.course-content { padding: 0 58px 36px 0; max-width: 850px; }
.course-content p, .course-content li { color: var(--color-body); font-size: 14px; line-height: 1.9; }
.course-content ul { margin-block: 18px; list-style: disc; padding-left: 18px; }
.course-content li { padding-left: 6px; }
.program-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; margin-top: 64px; }
.program-grid article { border-top: 1px solid #1a1a1a30; padding-top: 28px; display: flex; flex-direction: column; align-items: start; }
.program-grid h3 { line-height: 1.15; letter-spacing: -.03em; margin-block: 26px; color: var(--accent); }
.program-grid article > p:not(.eyebrow) { max-width: 400px; font-size: 15px; line-height: 1.8; color: var(--color-body); }
.program-grid ol { padding-left: 20px; list-style: decimal; margin: 24px 0 30px; font-size: 13px; line-height: 2.1; color: var(--color-body); }
.program-grid .action-secondary { margin-top: auto; }
.about-story { grid-template-columns: 1.1fr 1fr; }
.about-story .wide-photo img { aspect-ratio: 1.15; }
.coach-pair { display: grid; grid-template-columns: 1fr 1fr; }
.coach-pair article { padding: 80px clamp(28px, 5vw, 80px); }
.coach-pair-inner { max-width: 550px; margin-inline: auto; }
.coach-pair h2 { line-height: 1.1; letter-spacing: -.04em; margin-block: 24px 36px; }
.coach-pair img { aspect-ratio: 5/4; object-fit: cover; object-position: 50% 12%; width: 100%; height: auto; }
.coach-pair p:not(.eyebrow) { font-size: 15px; line-height: 1.9; color: var(--color-body); margin-block: 28px 14px; max-width: 440px; }
.value-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 48px; margin-top: 64px; }
.value-grid article { border-top: 1px solid #1a1a1a30; padding-top: 25px; }
.value-grid article > span { color: var(--accent); font-size: 11px; }
.value-grid h3 { line-height: 1.25; margin-block: 26px 18px; }
.value-grid p { color: var(--color-body); font-size: 14px; line-height: 1.9; }
.profile-grid { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 100px; }
.profile-grid h1 { line-height: .98; font-weight: 400; letter-spacing: -.045em; }
.profile-role { font-size: 16px; line-height: 1.8; color: var(--accent); margin-block: 30px 18px; }
.profile-portrait { width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; object-position: 50% 12%; }
.profile-portrait.profile-portrait-original { aspect-ratio: auto; max-height: none; object-fit: contain; object-position: center; }
.profile-grid figcaption { font-size: 10px; color: var(--accent); margin-top: 18px; }
.prose { font-size: 15px; line-height: 1.9; color: var(--color-body); }
.prose p + p { margin-top: 24px; }
.prose h2 { color: var(--accent); line-height: 1.2; margin-bottom: 24px; }
.prose h2:not(:first-child) { margin-top: 48px; }
.profile-services { margin-top: 64px; border-top: 1px solid #1a1a1a30; }
.profile-services a { display: grid; grid-template-columns: 40px 1fr 28px; align-items: center; gap: 24px; padding-block: 32px; border-bottom: 1px solid #1a1a1a30; color: var(--accent); }
.profile-services a > span { font-size: 11px; }
.profile-services h3 { line-height: 1.25; letter-spacing: -.02em; }
.profile-services a:hover h3 { text-decoration: underline; text-underline-offset: 7px; text-decoration-thickness: 1px; }
.filter-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 24px; }
.filter-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.filter-buttons button { padding: 12px 18px; min-height: 44px; border: 1px solid #adb3ac; font-size: 11px; color: var(--color-body); }
.filter-buttons button:hover, .filter-buttons button:focus-visible { background: var(--wash-hover); }
.filter-buttons button[aria-pressed="true"] { background: var(--accent); border-color: var(--accent); color: #FDFBF7; }
.filter-buttons button[aria-pressed="true"]:hover, .filter-buttons button[aria-pressed="true"]:focus-visible { background: var(--solid-hover); }
.filter-count { color: var(--color-muted); font-size: 11px; margin-block: 24px 34px; }
.search-field { position: relative; display: flex; align-items: center; border-bottom: 1px solid #8e9b90; width: 260px; }
.search-field input { width: 100%; background: transparent; border: 0; padding: 13px 32px 13px 0; font-size: 13px; border-radius: 0; }
.search-field > span:last-child { pointer-events: none; position: absolute; right: 3px; font-size: 28px; color: var(--color-body); }
.testimonial-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.testimonial-card { background: var(--wash); padding: 46px; display: flex; flex-direction: column; min-width: 0; }
.testimonial-title { line-height: 1.3; letter-spacing: -.025em; color: var(--accent); margin-top: 24px; }
.quote-mark { font-size: 64px; line-height: 1; margin-top: 24px; height: 42px; }
.testimonial-card blockquote { color: var(--accent); font-size: clamp(18px,1.6vw,21px); line-height: 1.7; letter-spacing: -.01em; }
.testimonial-card figcaption { display: flex; flex-direction: column; gap: 7px; padding-top: 32px; margin-top: auto; font-size: 14px; }
.testimonial-card figcaption strong { font-weight: 500; }
.testimonial-card figcaption span { color: var(--color-muted); font-size: 12px; line-height: 1.6; }
.testimonial-card figcaption a { display: flex; align-items: center; gap: 15px; font-size: 11px; color: var(--accent); width: fit-content; min-height: 44px; margin-top: 8px; }
.testimonial-card figcaption a:hover { text-decoration: underline; text-underline-offset: 4px; }
.testimonials-page .testimonial-card figcaption.testimonial-attribution-with-photo { display: grid; grid-template-columns: clamp(64px, 6vw, 80px) minmax(0, 1fr); column-gap: clamp(12px, 2vw, 20px); align-items: center; }
.testimonial-portrait-frame { display: block; width: 100%; aspect-ratio: 1; overflow: hidden; border-radius: 2px; }
.testimonial-portrait { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; transform: scale(var(--portrait-zoom, 1)); transform-origin: var(--portrait-origin, 50% 20%); }
.testimonial-attribution-copy { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.review-jump-links { display: flex; flex-wrap: wrap; gap: 16px 40px; padding-block: 28px; border-bottom: 1px solid #1a1a1a20; }
.google-reviews, .testimonial-collection { scroll-margin-top: 28px; }
.google-review-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
.google-review-card { border-top: 1px solid #a4afa4; padding-top: 24px; }
.google-review-label { text-transform: uppercase; letter-spacing: .1em; color: var(--color-muted); font-size: 10px; line-height: 1.7; }
.google-review-card h3 { margin-block: 16px 12px; color: var(--color-business); line-height: 1.3; }
.google-review-summary { color: var(--color-body); font-size: 14px; line-height: 1.8; max-width: 34ch; }
.testimonial-collection { border-top: 1px solid #1a1a1a20; }
@media (max-width: 899px) { .google-review-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 540px) { .google-review-grid { grid-template-columns: 1fr; } .google-review-summary { max-width: none; } }
.draft-notice { padding: 15px 20px; border-left: 2px solid #7c927c; background: var(--surface-neutral); color: var(--color-body); font-size: 12px; line-height: 1.8; margin-bottom: 40px; }
.insight-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px 48px; }
.insight-card { min-width: 0; }
.insight-image { display: block; aspect-ratio: 1.65; overflow: hidden; position: relative; background: var(--wash); }
.insight-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 20%; transition: transform 350ms ease; }
.insight-image:hover img { transform: scale(1.025); }
.image-arrow { position: absolute; bottom: 18px; right: 18px; width: 42px; height: 42px; border-radius: 50%; background: var(--surface-paper); color: var(--accent); display: grid; place-items: center; }
.card-meta { display: flex; justify-content: space-between; gap: 16px; margin-top: 23px; color: var(--accent); font-size: 10px; }
.card-meta > span:first-child { text-transform: uppercase; letter-spacing: .11em; }
.insight-card h3 { line-height: 1.18; letter-spacing: -.025em; margin-top: 18px; color: var(--accent); }
.insight-card h3 a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
.insight-card > p { margin-top: 18px; color: var(--color-body); font-size: 14px; line-height: 1.9; max-width: 480px; }
.sample-label { display: inline-block; font-size: 10px; color: var(--color-muted); margin-top: 20px; }
.empty-state { padding-block: 64px; }
.empty-state h2 { font-size: 36px; }
.empty-state p { font-size: 14px; color: var(--color-muted); margin-block: 20px; }
.related-insights { margin-top: 56px; }
.article-meta { display: flex; flex-wrap: wrap; gap: 16px 28px; font-size: 11px; color: var(--color-muted); border-bottom: 1px solid #1a1a1a20; padding-block: 24px; }
.article-meta > a { display: flex; gap: 14px; align-items: center; margin-left: auto; color: var(--accent); }
.article-layout { display: grid; grid-template-columns: 260px minmax(0,720px); justify-content: space-between; gap: 80px; }
.article-toc ol { border-top: 1px solid #1a1a1a20; }
.article-toc li { border-bottom: 1px solid #1a1a1a20; }
.article-toc a { display: block; font-size: 12px; line-height: 1.8; padding-block: 16px; color: var(--color-body); }
.article-toc a:hover { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; }
.article-toc .small-note { margin-top: 30px; }
.article-prose > section { margin-bottom: 48px; scroll-margin-top: 40px; }
.article-prose h2 { line-height: 1.2; letter-spacing: -.025em; margin-bottom: 24px; color: var(--accent); }
.article-prose section > p { font-size: 16px; line-height: 1.95; color: var(--color-body); margin-top: 20px; }
/* Insights: compact desktop introduction and text-led article cards. */
@media (min-width: 900px) {
  .insights-page .editorial-heading, .insight-article .editorial-heading { padding-top: 0; }
  .insights-page .editorial-heading { display: grid; grid-template-columns: 1.35fr 1fr; column-gap: 56px; max-width: none; }
  .insights-page .editorial-heading > .eyebrow { grid-column: 1 / -1; }
  .insights-page .editorial-heading h1, .insight-article .editorial-heading h1 { margin-top: 16px; line-height: 1.12; }
  .insights-page .editorial-deck { align-self: end; margin: 16px 0 6px; font-size: 16px; line-height: 1.8; max-width: 450px; }
  .insight-article .editorial-deck { max-width: 760px; margin-top: 22px; font-size: 16px; }
  .insights-page .insights-collection { padding-block: var(--section-space); }
  .insights-page .draft-notice { padding: 10px 16px; margin-bottom: 22px; }
  .insights-page .filter-count { margin-block: 18px 24px; }
  .insights-page .insight-grid, .insight-article .insight-grid { gap: 48px 40px; }
  .insights-page .insight-card, .insight-article .insight-card { display: grid; grid-template-columns: minmax(0, 1fr) 128px; column-gap: 24px; align-content: start; border-top: 1px solid #adb3ac; padding-top: 24px; }
  .insights-page .insight-card > :not(.insight-image), .insight-article .insight-card > :not(.insight-image) { grid-column: 1; }
  .insights-page .insight-image, .insight-article .insight-image { grid-column: 2; grid-row: 1 / 4; aspect-ratio: 3 / 4; align-self: start; }
  .insights-page .insight-image .image-arrow, .insight-article .insight-image .image-arrow { width: 30px; height: 30px; right: 8px; bottom: 8px; }
  .insights-page .card-meta, .insight-article .card-meta { grid-row: 1; margin-top: 0; }
  .insights-page .insight-card h3, .insight-article .insight-card h3 { grid-row: 2; line-height: 1.2; margin-top: 14px; }
  .insights-page .insight-card > p, .insight-article .insight-card > p { grid-row: 3; margin-top: 16px; line-height: 1.8; }
  .insights-page .sample-label, .insight-article .sample-label { grid-row: 4; margin-top: 16px; }
  .insight-article .article-layout { padding-block: var(--section-space); }
  .insight-article .article-prose h2 { margin-bottom: 20px; }
  .insight-article .article-prose section > p { margin-top: 16px; line-height: 1.85; }
   .insight-article > .section-space.theme-wash { padding-block: var(--section-space); }
}
.reflection-prompt { padding: 36px; margin-block: 56px 30px; border-left: 2px solid var(--accent); }
.reflection-prompt > p:last-child { font-size: 27px; line-height: 1.45; margin-top: 20px; color: var(--accent); }
.share-actions { border-top: 1px solid #1a1a1a20; padding-top: 25px; margin-top: 36px; display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
.share-actions [role="status"] { color: var(--color-muted); font-size: 12px; }
.contact-layout { display: grid; grid-template-columns: .85fr 1.35fr; gap: 96px; align-items: start; }
.contact-heading { font-size: clamp(34px,3.5vw,48px); line-height: 1.15; letter-spacing: -.025em; }
.contact-person { padding-top: 28px; border-top: 1px solid #1a1a1a20; margin-top: 32px; }
.contact-person h3 { margin-top: 16px; color: var(--accent); }
.contact-person a { display: inline-block; font-size: 12px; padding-block: 12px; color: var(--color-body); overflow-wrap: anywhere; }
.contact-person a:hover, .contact-phone:hover { text-decoration: underline; text-underline-offset: 5px; }
.contact-phone { display: inline-block; margin-top: 20px; color: var(--color-business); font-size: 14px; padding-block: 12px; }
.contact-form { border: 1px solid #d9dcd3; padding: 40px; background: var(--surface-paper); }
.contact-form legend { font-size: 14px; font-weight: 500; margin-bottom: 20px; }
.contact-options { display: grid; gap: 10px; margin-bottom: 32px; }
.contact-options label { display: flex; align-items: center; gap: 12px; border: 1px solid #b8c0b7; min-height: 50px; padding: 12px 15px; cursor: pointer; background: var(--surface-paper); }
.contact-options label:has(input:checked) { border-color: var(--accent); background: var(--wash); color: var(--accent); }
.contact-options label:hover, .contact-options label:focus-within,
.contact-options label:has(input:checked):hover, .contact-options label:has(input:checked):focus-within { background: var(--wash-hover); }
.contact-options input { accent-color: var(--accent); width: 16px; height: 16px; flex: 0 0 16px; }
.contact-options span { font-size: 12px; line-height: 1.6; }
.contact-form > label, .form-row label { display: flex; flex-direction: column; gap: 10px; font-size: 12px; line-height: 1.6; margin-bottom: 26px; }
.contact-form label > span:not(.contact-options span) { display: inline; color: var(--color-muted); font-size: 10px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.contact-form input:not([type="radio"]), .contact-form textarea { width: 100%; min-width: 0; padding: 13px 12px; border: 1px solid #a9b1a6; border-radius: 0; background: var(--surface-paper); color: #1A1A1A; font-size: 15px; line-height: 1.7; }
.contact-form textarea { resize: vertical; min-height: 150px; }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: #71756d; opacity: 1; }
.contact-form .action-primary { margin-block: 24px; }
.email-review { padding: 40px; }
.email-review h2 { line-height: 1.15; margin-block: 25px; color: var(--accent); }
.email-review dl { display: grid; grid-template-columns: 60px minmax(0,1fr); gap: 12px; font-size: 12px; line-height: 1.7; padding-block: 25px; margin-block: 25px; border-block: 1px solid #1a1a1a20; }
.email-review dd { overflow-wrap: anywhere; }
.email-review dt { color: var(--color-muted); }
.email-body { font-size: 14px; line-height: 1.9; white-space: pre-wrap; overflow-wrap: anywhere; }
.review-actions { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-block: 28px 15px; }
.faq-group { display: grid; grid-template-columns: 1fr 1.7fr; gap: 80px; margin-bottom: 80px; }
.faq-group:last-child { margin-bottom: 0; }
.faq-group h2 { line-height: 1.2; color: var(--accent); }
.legal-layout { display: grid; grid-template-columns: .7fr 1.6fr; gap: 100px; }
.sitemap-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.sitemap-grid h2 { line-height: 1.2; color: var(--accent); margin-bottom: 28px; }
.sitemap-grid ul { border-top: 1px solid #1a1a1a20; }
.sitemap-grid li { border-bottom: 1px solid #1a1a1a20; }
.sitemap-grid li a { display: flex; justify-content: space-between; padding-block: 16px; font-size: 13px; line-height: 1.8; }
.home-insight-links { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-top: 56px; }
.home-insight-links > a { padding: 38px; }
.home-insight-links h3 { line-height: 1.2; margin-block: 25px 30px; letter-spacing: -.02em; }
.home-insight-links a:hover h3 { text-decoration: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; }
.not-found { min-height: 65vh; }
.not-found h1 { margin-block: 30px; }
.not-found .body-copy { max-width: 500px; }

@media (max-width: 1360px) {
  .desktop-nav { display: none; }
  .header-cta { margin-left: auto; }
  .mobile-menu { display: block; font-size: 13px; }
  .mobile-menu summary { display: flex; align-items: center; gap: 12px; cursor: pointer; list-style: none; min-height: 44px; }
  .mobile-menu summary::-webkit-details-marker { display: none; }
  .mobile-menu summary span { font-size: 22px; }
  .mobile-menu nav { position: absolute; top: 100%; left: 0; right: 0; padding: 16px 28px 28px; max-height: calc(100dvh - 110px); overflow-y: auto; background: var(--surface-paper); border-bottom: 1px solid #ccc7bf; box-shadow: 0 10px 12px #00000008; }
  .mobile-menu nav a { display: block; padding: 12px 0; }
  .mobile-menu .mobile-nav-category { color: var(--color-business); font-weight: 600; margin-top: 12px; border-top: 1px solid #1a1a1a15; padding-top: 20px; }
  .mobile-menu .mobile-nav-category:first-child { border: 0; padding-top: 0; }
  .mobile-menu .mobile-contact { display: flex; align-items: center; gap: 20px; }
}
@media (max-width: 1100px) {
  .catalog-intro, .about-story, .profile-grid, .contact-layout, .legal-layout { gap: 48px; }
  .value-grid { gap: 28px; }
  .article-layout { grid-template-columns: 200px minmax(0,1fr); gap: 48px; }
  .contact-layout { grid-template-columns: .8fr 1.3fr; }
  .contact-form, .email-review { padding: 28px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .faq-group { gap: 48px; }
  .testimonial-card { padding: 34px; }
}
@media (max-width: 899px) {
  .editorial-deck { font-size: 16px; }
  .catalog-intro, .about-story, .contact-layout, .legal-layout { grid-template-columns: 1fr; gap: 48px; }
  .catalog-intro .wide-photo img { aspect-ratio: 3 / 2; }
  .about-story .wide-photo { max-width: 650px; }
  .about-story .wide-photo img { aspect-ratio: 1.45; }
  .about-story > div { max-width: 650px; }
  .coach-pair article { padding: 64px 32px; }
  .coach-pair p:not(.eyebrow) { font-size: 14px; }
  .profile-grid { gap: 40px; grid-template-columns: 1fr 1fr; }
  .profile-role { font-size: 14px; }
  .program-grid { gap: 40px; }
  .value-grid { grid-template-columns: 1fr; gap: 32px; }
  .value-grid h3 { margin-top: 20px; }
  .article-layout { grid-template-columns: 1fr; gap: 56px; }
  .article-toc { max-width: 600px; }
  .article-toc ol { display: grid; grid-template-columns: 1fr 1fr; gap: 0 30px; }
  .article-prose { max-width: 720px; }
  .contact-layout > aside { max-width: 600px; }
  .form-row { grid-template-columns: 1fr 1fr; gap: 22px; }
  .contact-form { padding: 36px; }
  .faq-group { grid-template-columns: 1fr; gap: 30px; }
  .sitemap-grid { gap: 60px 40px; }
  .insight-grid { gap: 56px 32px; }
  .home-insight-links > a { padding: 30px; }
}
@media (max-width: 700px) {
  .coach-pair, .profile-grid, .program-grid, .testimonial-grid, .insight-grid, .sitemap-grid, .home-insight-links { grid-template-columns: 1fr; }
  .profile-grid figure { max-width: 500px; }
  .coach-pair article { padding: 80px 40px; }
  .profile-portrait { max-height: 600px; }
  .program-grid article { padding-top: 30px; }
  .program-grid { gap: 48px; }
  .testimonial-card { padding: 36px; }
  .testimonial-card blockquote { font-size: 20px; }
  .filter-toolbar { align-items: stretch; }
  .search-field { width: 100%; }
  .insight-image { aspect-ratio: 1.7; }
  .article-meta > a { margin-left: 0; }
  .contact-form { padding: 28px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .footer-bottom { flex-direction: column; gap: 15px; }
}
@media (max-width: 540px) {
  .editorial-deck { font-size: 15px; margin-top: 26px; }
  .course summary { grid-template-columns: minmax(0, 1fr) 26px; gap: 12px; padding-block: 28px; }
  .course-name { font-size: 27px; }
  .course-content { padding: 0 0 28px; }
  .coach-pair article { padding: 80px 24px; }
  .profile-services a { grid-template-columns: 20px 1fr 22px; gap: 14px; }
  .filter-buttons { gap: 8px; }
  .filter-buttons button { padding: 10px 13px; font-size: 10px; }
  .testimonial-card { padding: 28px; }
  .testimonial-card blockquote { font-size: 18px; }
  .article-toc ol { grid-template-columns: 1fr; }
  .article-prose section > p { font-size: 15px; }
  .reflection-prompt { padding: 28px; }
  .reflection-prompt > p:last-child { font-size: 25px; }
  .contact-form { padding: 24px 20px; }
  .contact-form input:not([type="radio"]), .contact-form textarea { font-size: 16px; }
  .email-review { padding: 28px 22px; }
  .home-insight-links > a { padding: 28px; }
}

/* Approved photo placements: preserve portraits and give conversations a wider frame. */
.hero-portrait .interior-figure { width: 100%; max-width: 440px; justify-self: end; }
.business-overview .hero-portrait .interior-figure { max-width: 450px; }
.hero-portrait .interior-photo { aspect-ratio: 4 / 5; max-height: none; }
.hero-portrait .interior-photo img { object-position: 50% 20%; }
.hero-landscape .interior-hero-grid { grid-template-columns: minmax(0, .95fr) minmax(0, 1.15fr); gap: 56px; }
.hero-landscape .interior-photo { aspect-ratio: 3 / 2; max-height: none; }
.hero-landscape .interior-photo img { object-position: 90% 50%; }
@media (max-width: 899px) {
  .business-overview .hero-portrait .interior-figure { justify-self: start; }
  .hero-landscape .interior-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .hero-landscape .interior-figure { width: 100%; max-width: 760px; }
}
@media (max-width: 700px) {
  .hero-portrait .interior-figure { max-width: 400px; justify-self: start; }
}

/* Training catalog: one desktop opening, visible course summaries, related programs. */
.training-catalog .section-space { padding-block: var(--section-space); }
.catalog-hero-grid { display: grid; grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr); gap: 64px; align-items: center; }
.catalog-hero-copy, .catalog-hero-photo { min-width: 0; }
.catalog-hero h1 { color: var(--accent); line-height: 1.1; letter-spacing: -.04em; font-weight: 500; margin-top: 20px; }
.catalog-hero-intro { max-width: 560px; margin-top: 24px; font-size: 17px; line-height: 1.8; color: var(--color-body); }
.catalog-hero-copy > .body-copy { margin-top: 16px; max-width: 540px; }
.catalog-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 28px; }
.catalog-hero-actions .action-secondary { font-size: 13px; }
.catalog-availability { margin-top: 22px; font-size: 12px; line-height: 1.8; color: var(--color-body); }
.catalog-availability a { text-decoration: underline; text-underline-offset: 3px; }
.catalog-hero-photo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; object-position: center; }
.catalog-hero-photo figcaption { margin-top: 14px; color: var(--color-muted); font-size: 12px; line-height: 1.7; }
.training-catalog .section-title { line-height: 1.18; font-weight: 500; }
.training-catalog .section-intro { gap: 64px; }
.catalog-section-intro > p { max-width: 520px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.catalog-section-intro .action-secondary { margin-top: 12px; font-size: 14px; }
.training-catalog .course-collection { margin-top: 40px; }
.training-catalog .course summary { grid-template-columns: minmax(0, 1fr) 32px; gap: 22px; padding-block: 26px; }
.training-catalog .course summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }

.training-catalog .course-category { font-size: 10px; }
.training-catalog .course-name { font-size: clamp(27px, 2.5vw, 36px); }
.course-description { display: block; max-width: 900px; margin-top: 9px; font-size: 16px; line-height: 1.65; color: var(--color-body); }
.training-catalog .course-content { padding: 0 54px 28px 0; max-width: none; }
.training-catalog .course-content p, .training-catalog .course-content li { font-size: 16px; line-height: 1.8; }
.training-catalog .course-content .course-focus-label { font-size: 13px; font-weight: 600; color: var(--accent); }
.training-catalog .course-content ul { margin-top: 12px; }
.course-actions { display: flex; flex-wrap: wrap; gap: 10px 32px; }
.course-actions .action-secondary { font-size: 14px; }
.training-catalog .program-grid { margin-top: 40px; }
.training-catalog .program-grid article { scroll-margin-top: 32px; }
.training-catalog .program-grid article > p:not(.eyebrow), .training-catalog .program-grid ol { font-size: 16px; line-height: 1.8; }
.training-catalog .program-grid .action-secondary { font-size: 14px; }
.training-catalog #courses, .training-catalog #programs, .training-catalog #delivery { scroll-margin-top: 32px; }
@media (max-width: 1100px) {
  .catalog-hero-grid, .training-catalog .section-intro { gap: 40px; }
}
@media (max-width: 899px) {
  .catalog-hero-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .catalog-hero-copy { max-width: 680px; }
  .catalog-hero-photo { max-width: 760px; }
  .training-catalog .section-space { padding-block: var(--section-space); }
}
@media (max-width: 700px) {
  .training-catalog .section-intro { grid-template-columns: minmax(0, 1fr); gap: 24px; }
}
@media (max-width: 540px) {
  .catalog-hero-intro { font-size: 16px; }
  .catalog-hero-actions { flex-direction: column; align-items: flex-start; }
  .training-catalog .section-space { padding-block: var(--section-space); }
  .training-catalog .course summary { grid-template-columns: minmax(0, 1fr) 26px; gap: 12px; }
  .training-catalog .course-content { padding: 0 0 26px; }
}

/* Leadership coaching: needs first, clear engagement options, relevant client evidence. */
.leadership-coaching .section-space { padding-block: var(--section-space); }
.leadership-coaching .section-title { line-height: 1.18; font-weight: 500; }
.leadership-coaching .section-intro { gap: 64px; }
.leadership-coaching .section-intro > p { max-width: 520px; font-size: 16px; line-height: 1.8; }
.coaching-needs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 64px; margin-top: 40px; }
.coaching-needs article { border-top: 1px solid #C4CEC7; padding-top: 24px; }
.coaching-needs h3 { max-width: 500px; line-height: 1.25; color: var(--accent); }
.coaching-needs p { margin-top: 14px; max-width: 520px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.leadership-coaching .coaching-format-grid { gap: 64px; }
.leadership-coaching .coaching-format-grid p { font-size: 16px; line-height: 1.8; }
.leadership-coaching .approach-steps { margin-top: 40px; }
.leadership-coaching .approach-steps p { font-size: 16px; line-height: 1.8; }
.coaching-proof { background: var(--surface-business-proof); }
.coaching-evidence { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, .75fr); gap: 80px; align-items: start; }
.coaching-evidence blockquote { margin-top: 22px; font-size: clamp(24px, 2.2vw, 30px); line-height: 1.5; letter-spacing: -.015em; color: var(--accent); }
.coaching-evidence figcaption { display: flex; flex-direction: column; gap: 5px; margin-top: 24px; font-size: 14px; line-height: 1.6; }
.coaching-evidence figcaption strong { font-weight: 600; }
.coaching-evidence .action-secondary { margin-top: 16px; font-size: 14px; }
.coaching-background h2 { line-height: 1.2; margin-top: 22px; color: var(--accent); }
.coaching-background > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; color: var(--color-body); margin-top: 20px; }
.leadership-coaching .faq-section { background: var(--surface-paper); }
.leadership-coaching #focus, .leadership-coaching #engagements { scroll-margin-top: 32px; }
#sean-mecham { scroll-margin-top: 32px; }
@media (min-width: 900px) {
  .leadership-coaching .interior-hero-grid { grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr); gap: 64px; }
  .leadership-coaching .interior-hero-copy > .eyebrow { margin-bottom: 20px; }
  .leadership-coaching .interior-title { line-height: 1.12; }
  .leadership-coaching .interior-intro { max-width: 600px; margin-top: 24px; line-height: 1.8; }
  .leadership-coaching .hero-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: 28px; }
  .leadership-coaching .interior-figure { max-width: 320px; }
  .leadership-coaching #focus { padding-top: var(--section-space); }
}
@media (max-width: 1100px) {
  .leadership-coaching .section-intro, .coaching-needs, .coaching-evidence, .leadership-coaching .coaching-format-grid { gap: 40px; }
}
@media (max-width: 899px) {
  .leadership-coaching .section-space { padding-block: var(--section-space); }
  .coaching-evidence { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .coaching-background { border-top: 1px solid #B9C6BC; padding-top: 28px; }
  .coaching-background > p:not(.eyebrow) { max-width: 640px; }
}
@media (max-width: 700px) {
  .leadership-coaching .section-intro, .coaching-needs { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 540px) {
  .leadership-coaching .section-space { padding-block: var(--section-space); }
  .coaching-needs { margin-top: 32px; }
}

/* Personal overview and service pages share the approved Business layout. */
.personal-layout { --personal-column-gap: 64px; }
.personal-layout .section-space { padding-block: var(--section-space); }
.personal-layout .eyebrow { font-size: 11px; letter-spacing: .1em; }
.personal-layout .section-title { line-height: 1.18; }
.personal-overview .section-title { font-weight: 500; }
.personal-layout :is(.section-intro, .personal-experience-grid) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px var(--personal-column-gap); align-items: start; }
.personal-layout :is(.section-intro) > div:first-child { display: contents; }
.personal-layout :is(.section-intro) > div:first-child > .eyebrow { grid-column: 1; grid-row: 1; margin: 0; }
.personal-layout :is(.section-intro) > div:first-child > h2 { grid-column: 1; grid-row: 2; margin: 0; }
.personal-layout :is(.section-intro) > :last-child { grid-column: 2; grid-row: 2; min-width: 0; }
.personal-layout .section-intro > p { max-width: 620px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.personal-layout .faq-list { grid-column: 2; grid-row: 2 / span 2; }
.personal-layout .faq-section { background: var(--surface-paper); }
.personal-layout .action-secondary { font-size: 14px; }
.personal-layout #services, .personal-layout #focus, .personal-service-grid > article, #gini-pritchett, #sabrina-b, #alaine-c { scroll-margin-top: 32px; }
.personal-layout .interior-hero-grid { grid-template-columns: minmax(0, 1fr) min(40%, 450px); gap: 17px var(--personal-column-gap); align-items: start; }
.personal-layout .interior-hero-copy { padding-top: 0; }
.personal-layout .interior-hero-copy > .eyebrow { margin: 0; }
.personal-layout .interior-title { max-width: 720px; margin-top: 20px; line-height: 1.08; }
.personal-overview .interior-title { font-weight: 500; }
.personal-layout .interior-intro { max-width: 620px; margin-top: 24px; line-height: 1.9; }
.personal-layout .interior-figure { width: 100%; max-width: 450px; justify-self: end; }
.personal-layout .interior-photo { aspect-ratio: 4 / 5; max-height: none; }
.personal-layout .hero-landscape .interior-photo { aspect-ratio: 3 / 2; }
.personal-layout .hero-landscape .interior-photo img { object-position: right center; }
.personal-layout .interior-figure figcaption span { font-size: 12px; }
.personal-hero-actions { display: flex; flex-wrap: wrap; align-items: stretch; gap: 14px; margin-top: 30px; }
.personal-hero-actions > a { gap: 24px; font-size: 15px; line-height: 20px; min-height: 48px; padding: 13px 23px; border: 1px solid transparent; }
.personal-hero-actions .personal-outline-action { display: inline-flex; align-items: center; justify-content: space-between; border-color: var(--accent); color: var(--accent); font-weight: 500; transition: background-color 180ms ease; }
.personal-outline-action:hover, .personal-outline-action:focus-visible { background: var(--wash-hover); }

.personal-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 var(--personal-column-gap); margin-top: 40px; }
.personal-service-grid > article { display: grid; grid-template-rows: auto auto 1fr auto; grid-template-rows: subgrid; grid-row: span 4; min-width: 0; border-top: 2px solid var(--accent); padding-top: 24px; }
.personal-service-grid h3 { margin-top: 0; margin-bottom: 14px; line-height: 1.22; letter-spacing: -.02em; color: var(--accent); }
.personal-service-audience { margin-bottom: 18px; color: var(--color-muted); font-size: 13px; line-height: 1.7; }
.personal-service-description { color: var(--color-body); font-size: 16px; line-height: 1.8; }
.personal-service-grid .action-secondary { justify-self: start; align-self: end; gap: 24px; margin-top: 20px; font-size: 14px; line-height: 1.6; }
.personal-focus-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px var(--personal-column-gap); margin-top: 40px; }
.personal-focus-grid article { min-width: 0; border-top: 1px solid #CDBCAF; padding-top: 24px; }
.personal-focus-grid h3 { line-height: 1.25; color: var(--accent); }
.personal-focus-grid p { margin-top: 14px; max-width: 620px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.personal-coaching-approach { border-top: 1px solid #CDBCAF; }
.personal-coaching-approach > .eyebrow { margin: 0 0 18px; }
.personal-layout .approach-steps { gap: var(--personal-column-gap); margin-top: 40px; }
.personal-layout .approach-steps > li { min-width: 0; padding-top: 24px; border-color: #CDBCAF; }
.personal-layout .approach-steps h3 { line-height: 1.25; margin: 0 0 14px; }
.personal-layout .approach-steps p { font-size: 16px; line-height: 1.8; }

.personal-coach-eyebrow { grid-column: 1; grid-row: 1; }
.personal-coach-background { min-width: 0; grid-column: 1; grid-row: 2; }
.personal-client-eyebrow { grid-column: 2; grid-row: 1; }
.personal-client-experience { min-width: 0; grid-column: 2; grid-row: 2; }
.personal-coach-background h2 { margin-top: 0; color: var(--accent); }
.personal-coach-copy { margin-top: 24px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.personal-client-experience blockquote { margin-top: 0; color: var(--accent); font-size: clamp(26px, 2.6vw, 36px); line-height: 1.4; letter-spacing: -.015em; }
.personal-client-experience figcaption { display: flex; flex-direction: column; gap: 5px; margin-top: 24px; font-size: 14px; line-height: 1.6; }
.personal-client-experience figcaption strong { font-weight: 600; }
.personal-coach-background .action-secondary { margin-top: 18px; font-size: 14px; }
.personal-client-experience .action-secondary { margin-top: 14px; font-size: 14px; }
.personal-layout .related-band { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px var(--personal-column-gap); padding-block: var(--compact-section-space); border-color: #CDBCAF; }
.personal-layout .related-band p { font-size: 15px; line-height: 1.8; }
.personal-layout .related-band a { justify-self: start; }

@media (min-width: 900px) {
  .personal-layout .interior-hero-grid { grid-template-rows: auto auto; }
  .personal-layout .interior-hero-copy { grid-row: 1; align-self: stretch; display: flex; flex-direction: column; justify-content: center; position: relative; padding-block: 38px; }
  .personal-layout .interior-hero-copy > .eyebrow { position: absolute; top: 0; left: 0; }
  .personal-layout .interior-title { margin-top: 0; }
  .personal-layout .interior-figure { display: grid; grid-column: 2; grid-row: 1 / span 2; grid-template-rows: subgrid; align-self: stretch; }
  .personal-layout .interior-photo { align-self: center; }
  .personal-layout .interior-figure figcaption { margin-top: 0; }
  .personal-layout .hero-landscape .interior-figure { display: block; grid-row: 1; align-self: center; }
  .personal-layout .hero-landscape .interior-figure figcaption { margin-top: 17px; }
}
@media (max-width: 1100px) {
  .personal-layout { --personal-column-gap: 40px; }
}
@media (max-width: 899px) {
  .personal-layout .interior-hero-grid { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
  .personal-layout .interior-figure { justify-self: start; }
  .personal-layout .interior-title { max-width: 680px; }
  .personal-layout :is(.section-intro, .related-band) { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .personal-layout :is(.section-intro) > div:first-child { display: block; }
  .personal-layout :is(.section-intro) > div:first-child > h2 { margin-top: 18px; }
  .personal-layout :is(.section-intro) > *, .personal-layout :is(.section-intro) > div:first-child > *, .personal-layout .personal-experience-grid > * { grid-column: 1; grid-row: auto; }
  .personal-layout :is(.section-intro) > :last-child { grid-column: 1; grid-row: auto; }
  .personal-layout .personal-experience-grid { grid-template-columns: minmax(0, 1fr); row-gap: 18px; }
  .personal-client-eyebrow { border-top: 1px solid #CDBCAF; padding-top: 32px; margin-top: 14px; }
  .personal-service-grid { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .personal-service-grid > article { grid-template-rows: auto; grid-row: auto; }
  .personal-service-grid h3 { max-width: 600px; }
  .personal-service-description, .personal-coach-copy { max-width: 640px; }
  .personal-layout :is(.personal-focus-grid, .approach-steps) { grid-template-columns: minmax(0, 1fr); gap: 40px; }
}
@media (max-width: 540px) {
  .personal-hero-actions { flex-direction: column; }
  .personal-hero-actions > a { width: 100%; padding-inline: 18px; }
  .personal-client-experience blockquote { font-size: 25px; }
  .personal-layout :is(.personal-service-grid, .personal-focus-grid, .approach-steps) { margin-top: 32px; }
}

/* Contact: one direct destination, with the introduction beside the message fields. */
.contact-page [hidden] { display: none !important; }
.contact-page .contact-layout { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 64px; padding-bottom: var(--section-space); }
.contact-introduction, .contact-page .contact-form-wrap { min-width: 0; }
.contact-introduction h1 { margin-top: 20px; color: var(--color-business); line-height: 1.12; letter-spacing: -.035em; }
.contact-intro-copy { margin-top: 24px; max-width: 500px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.contact-meetings { margin-top: 28px; }
.contact-meetings h2 { font-size: 16px; font-weight: 600; line-height: 1.6; }
.contact-meetings dl { display: grid; gap: 14px; margin-top: 14px; }
.contact-meetings dl > div { display: grid; grid-template-columns: 130px minmax(0, 1fr); gap: 16px; font-size: 14px; line-height: 1.7; }
.contact-meetings dt { font-weight: 600; }
.contact-meetings dd { margin: 0; color: var(--color-body); }
.contact-people { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.contact-page .contact-person { margin-top: 28px; padding-top: 24px; }
.contact-person-portrait { margin: 14px 0 0; max-width: 280px; }
.contact-person-portrait img { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; object-fit: cover; object-position: 50% 0%; }
.contact-page .contact-person h2 { margin-top: 12px; font-size: 26px; line-height: 1.2; color: var(--accent); }
.contact-page .contact-person a { font-size: 13px; line-height: 1.8; }
.contact-page .contact-phone { margin-top: 16px; }
.contact-speaking-note { margin-top: 8px; max-width: 460px; font-size: 14px; line-height: 1.8; color: var(--color-body); }
.contact-introduction > .action-secondary { margin-top: 12px; font-size: 13px; }
.contact-page .contact-form, .contact-page .email-review { padding: 32px; }
.contact-page .contact-form h2 { line-height: 1.2; color: var(--color-business); }
.contact-page #contact-method { margin-block: 16px 26px; font-size: 14px; line-height: 1.75; color: var(--color-body); }
.contact-page .contact-form legend { margin-bottom: 14px; }
.contact-page .contact-options { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 24px; }
.contact-page .contact-options label { align-items: flex-start; padding: 12px; }
.contact-page .contact-options input { margin-top: 3px; }
.contact-page .contact-options span { display: block; }
.contact-page .contact-options strong { display: block; font-size: 14px; font-weight: 600; }
.contact-page .contact-option-general { grid-column: 1 / -1; }
.contact-page .contact-form > label, .contact-page .form-row label { display: block; margin-bottom: 20px; font-size: 13px; }
.contact-page .contact-form input:not([type="radio"]), .contact-page .contact-form textarea { display: block; margin-top: 10px; }
.contact-page .contact-form input:not([type="radio"]) { padding-block: 11px; }
.contact-page .contact-form .action-primary { margin-block: 4px 20px; }
.contact-alternative, .contact-privacy { font-size: 12px; line-height: 1.8; color: var(--color-muted); }
.contact-alternative a, .contact-privacy { text-decoration: underline; text-underline-offset: 4px; }
.contact-privacy { display: inline-block; padding-block: 10px; }
@media (max-width: 1100px) {
  .contact-page .contact-layout { gap: 40px; }
  .contact-people { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .contact-page .contact-form, .contact-page .email-review { padding: 28px; }
}
@media (max-width: 899px) {
  .contact-page .contact-layout { grid-template-columns: minmax(0, 1fr); gap: 40px; padding-bottom: var(--section-space); }
  .contact-people { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 540px) {
  .contact-page .contact-layout { padding-bottom: var(--section-space); }
  .contact-meetings dl > div { grid-template-columns: minmax(0, 1fr); gap: 3px; }
  .contact-people, .contact-page .contact-options { grid-template-columns: minmax(0, 1fr); }
  .contact-people { gap: 0; }
  .contact-page .contact-form, .contact-page .email-review { padding: 24px 20px; }
}

/* About and coach profiles: experience first, with compact desktop comparisons. */
.about-overview .section-space, .coach-profile .section-space { padding-block: var(--section-space); }
.about-overview .section-title, .coach-profile .section-title { line-height: 1.18; letter-spacing: -.03em; margin-top: 18px; }
.about-hero-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); align-items: center; gap: 64px; }
.about-introduction h1 { font-weight: 400; line-height: 1.1; letter-spacing: -.04em; margin-top: 20px; }
.about-lead { font-size: 17px; line-height: 1.8; color: var(--color-body); margin-top: 26px; max-width: 600px; }
.about-introduction .body-copy { margin-top: 20px; max-width: 600px; }
.about-introduction .action-secondary { margin-top: 20px; font-size: 14px; }
.about-hero-grid .wide-photo { width: 100%; max-width: 440px; justify-self: end; }
.about-hero-grid .wide-photo img { aspect-ratio: 1.15; }
.about-coaches { scroll-margin-top: 32px; }
.about-coach-grid { align-items: stretch; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-top: 36px; }
.about-coach { padding: 28px; display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.about-coach-heading { display: grid; grid-template-columns: minmax(0, 1fr) 191.52px; gap: 24px; align-items: center; width: 100%; margin-top: 24px; }
.about-coach h3 { line-height: 1.2; letter-spacing: -.025em; }
.about-coach-heading img { width: 100%; height: auto; aspect-ratio: 5 / 4; object-fit: cover; object-position: 50% 12%; }
.about-coach .about-coach-heading img { aspect-ratio: 16 / 9; object-position: 50% 15%; }
.about-coach-audience { font-size: 14px; line-height: 1.7; color: var(--accent); margin-top: 14px; }
.about-coach-description { font-size: 15px; line-height: 1.85; color: var(--color-body); margin-top: 24px; }
 .about-coach-details { width: 100%; margin-top: 20px; border-block: 1px solid #1a1a1a25; }
.about-coach-details summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 15px; min-height: 48px; color: var(--accent); font-size: 15px; font-weight: 600; cursor: pointer; list-style: none; }
.about-coach-details summary::-webkit-details-marker { display: none; }
.about-coach-details summary:hover { text-decoration: underline; text-underline-offset: 4px; }
.about-coach-details summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.about-coach-toggle { width: 16px; height: 16px; position: relative; flex: 0 0 16px; }
.about-coach-toggle::before, .about-coach-toggle::after { content: ''; position: absolute; background: currentColor; }
.about-coach-toggle::before { top: 7px; left: 1px; width: 14px; height: 2px; }
.about-coach-toggle::after { top: 1px; left: 7px; width: 2px; height: 14px; }
.about-coach-details[open] .about-coach-toggle::after { display: none; }
.about-coach-bio { padding-bottom: 20px; color: var(--color-body); font-size: 15px; line-height: 1.85; }
.about-coach-bio p + p { margin-top: 16px; }
.about-coach .about-coach-contact { margin-top: 22px; max-width: 100%; white-space: normal; text-align: center; }
.coach-profile .profile-grid { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 64px; }
.profile-introduction { min-width: 0; }
.coach-profile .profile-grid h1 { line-height: 1.08; letter-spacing: -.04em; margin-top: 20px; }
.coach-profile .profile-role { margin-block: 20px 16px; font-size: 16px; line-height: 1.75; }
.profile-introduction > .body-copy { max-width: 630px; }
.profile-experience-summary { border-top: 1px solid #1a1a1a25; padding-top: 20px; margin-top: 22px; max-width: 630px; }
.profile-experience-summary h2 { color: var(--accent); font-size: 15px; line-height: 1.6; font-weight: 600; }
.profile-experience-summary p { color: var(--color-body); font-size: 15px; line-height: 1.85; margin-top: 8px; }
.profile-introduction > .action-primary { margin-top: 26px; }
.coach-profile .profile-grid figure { width: 100%; max-width: 360px; justify-self: end; }
.coach-profile .profile-grid figcaption { font-size: 11px; line-height: 1.7; margin-top: 14px; }
.profile-background { min-width: 0; }
.profile-client-quote { max-width: 680px; margin-top: 28px; padding-top: 24px; border-top: 1px solid #1a1a1a25; }
.profile-client-quote blockquote { color: var(--accent); font-size: clamp(21px, 1.8vw, 25px); line-height: 1.45; letter-spacing: -.015em; }
.profile-client-quote figcaption { display: flex; flex-direction: column; gap: 4px; margin-top: 16px; font-size: 12px; line-height: 1.7; color: var(--color-body); }
.profile-client-quote figcaption strong { font-weight: 600; }
.profile-client-quote .action-secondary { margin-top: 12px; font-size: 13px; }
.profile-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin-top: 36px; }
.profile-service-grid > a { display: flex; flex-direction: column; align-items: flex-start; padding-top: 24px; border-top: 1px solid #1a1a1a40; min-width: 0; color: var(--accent); }

.profile-service-grid h3 { line-height: 1.3; letter-spacing: -.02em; margin-top: 0; min-height: 2.6em; }
.profile-service-grid p { font-size: 15px; line-height: 1.85; color: var(--color-body); margin-block: 16px 20px; }
.profile-service-action { display: inline-flex; align-items: center; gap: 24px; min-height: 44px; font-size: 14px; font-weight: 500; margin-top: auto; }
.profile-service-grid > a:hover h3, .profile-service-grid > a:focus-visible h3 { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
@media (max-width: 1100px) {
  .about-hero-grid, .coach-profile .profile-grid { gap: 40px; }
  .about-coach-grid, .profile-service-grid { gap: 24px; }
  .about-coach { padding: 26px; }
  .about-coach-heading { grid-template-columns: minmax(0, 1fr) 148.96px; gap: 18px; }
}
@media (max-width: 899px) {
  .about-overview .section-space, .coach-profile .section-space { padding-block: var(--section-space); }
  .about-hero-grid, .coach-profile .profile-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .about-hero-grid .wide-photo, .coach-profile .profile-grid figure { justify-self: start; }
  .about-coach-grid, .profile-service-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .about-coach-heading { grid-template-columns: minmax(0, 1fr) 191.52px; }
  .profile-service-grid h3 { min-height: 0; }
}
@media (max-width: 540px) {
  .about-overview .section-space, .coach-profile .section-space { padding-block: var(--section-space); }
  .about-lead { font-size: 16px; }
  .about-coach { padding: 24px; }
  .about-coach-heading { grid-template-columns: minmax(0, 1fr) 117.04px; gap: 16px; }
}

/* Testimonials: compact business context, filters, then full client quotes. */
.testimonials-introduction { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 64px; align-items: end; }
.testimonials-introduction h1 { line-height: 1.1; letter-spacing: -.04em; font-weight: 400; color: var(--accent); margin-top: 20px; }
.testimonials-introduction .body-copy { max-width: 530px; font-size: 16px; line-height: 1.8; }
.testimonials-introduction .action-secondary { margin-top: 16px; font-size: 14px; }
.testimonials-controls { border-top: 1px solid #1a1a1a25; padding-top: 24px; margin-top: 32px; }
.testimonials-partners { border-top: 1px solid #1a1a1a25; margin-top: 32px; padding-top: 24px; }
.testimonials-partners h2 { margin: 0; color: var(--color-business); font-size: 24px; line-height: 1.35; font-weight: 400; }
.testimonials-partners .business-partner-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px 24px; margin-top: 16px; }
.testimonials-partners .business-partner-link { min-height: 76px; padding: 10px; }
.testimonials-partners .business-partner-link img { max-width: 150px; max-height: 56px; }
.testimonials-partners .business-partner-link[data-partner="nov"] img { max-width: 165px; max-height: 72px; }
.testimonials-partners .business-partner-link[data-partner="sunoco"] img { max-width: 105px; }
.testimonials-partners .business-partner-link[data-partner="filamar"] img { max-width: 130px; height: 66px; max-height: 66px; }
.testimonials-partners:not([hidden]) + .testimonials-controls { margin-top: 24px; }
.testimonials-page .filter-buttons { gap: 12px; }
.testimonials-page .filter-buttons button { font-size: 13px; padding: 12px 20px; }
.testimonials-page .testimonial-collection { border-top: 0; padding-block: var(--section-space); }
.testimonials-page .filter-count { font-size: 12px; margin-block: 0 22px; }
.testimonials-page .testimonial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.testimonials-page .testimonial-card { padding: 32px; scroll-margin-top: 28px; }
.testimonials-page .testimonial-title { line-height: 1.3; margin-top: 14px; }
.testimonials-page .quote-mark { font-size: 46px; height: 30px; margin-top: 16px; margin-bottom: 6px; }
.testimonials-page .testimonial-card blockquote { font-size: clamp(18px, 1.5vw, 20px); line-height: 1.65; }
.testimonials-page .testimonial-card figcaption { padding-top: 24px; gap: 5px; }
.testimonials-page .testimonial-card figcaption a { font-size: 12px; margin-top: 4px; }
.testimonials-page .section-space { padding-block: var(--section-space); }
.testimonials-page .section-title { line-height: 1.18; margin-top: 18px; }
.testimonials-page .section-intro { grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 64px; }
.google-review-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 28px; margin-top: 16px; }
.google-review-actions .action-secondary { font-size: 13px; }
.testimonials-page .google-review-grid { margin-top: 32px; gap: 28px 32px; }
.testimonials-page .google-review-card { padding-top: 18px; }
.testimonials-page .google-review-card h3 { margin-block: 12px 8px; }
.testimonials-page .google-review-summary { max-width: none; }
@media (max-width: 1100px) {
  .testimonials-introduction, .testimonials-page .section-intro { gap: 40px; }
  .testimonials-page .testimonial-card { padding: 28px; }
}
@media (max-width: 899px) {
  .testimonials-introduction, .testimonials-page .section-intro { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .testimonials-page .section-space { padding-block: var(--section-space); }
}
@media (max-width: 700px) {
  .testimonials-page .testimonial-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 540px) {
  .testimonials-partners h2 { font-size: 21px; }
  .testimonials-partners .business-partner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; }
  .testimonials-page .filter-buttons { gap: 8px; }
  .testimonials-page .filter-buttons button { padding-inline: 14px; font-size: 12px; }
  .testimonials-page .testimonial-card { padding: 24px; }
  .testimonials-page .section-space { padding-block: var(--section-space); }
}

/* Consulting: a clear organizational focus and a shorter service-page flow. */
.consulting-page .section-space { padding-block: var(--section-space); }
.consulting-page .section-title { line-height: 1.18; font-weight: 500; }
.consulting-page .interior-hero-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr); gap: 64px; }
.consulting-page .interior-title { max-width: 720px; }
.consulting-page .interior-intro { max-width: 620px; margin-top: 24px; font-size: 16px; line-height: 1.8; }
.consulting-page .hero-actions { margin-top: 28px; gap: 12px; }
.consulting-page .hero-actions > .action-secondary { font-size: 14px; }
.consulting-page .interior-figure { width: 100%; max-width: 360px; justify-self: end; }
.consulting-page .interior-photo { aspect-ratio: 4 / 5; max-height: none; }
.consulting-page .section-intro { gap: 64px; }
.consulting-page .section-intro > p { max-width: 520px; font-size: 16px; line-height: 1.8; }
.consulting-topics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px 64px; margin-top: 36px; }
.consulting-topics article { border-top: 1px solid #C4CEC7; padding-top: 24px; }
.consulting-topics h3 { line-height: 1.25; color: var(--accent); }
.consulting-topics p { max-width: 540px; margin-top: 14px; color: var(--color-body); font-size: 16px; line-height: 1.8; }
.consulting-page .approach-steps { margin-top: 36px; gap: 32px; }
.consulting-page .approach-steps h3 { line-height: 1.25; margin-block: 0 12px; }
.consulting-page .approach-steps p { font-size: 15px; line-height: 1.8; }
.consulting-background { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 64px; padding-block: 48px; align-items: start; }
.consulting-background h2 { color: var(--accent); line-height: 1.2; margin-top: 18px; }
.consulting-background > div > p:not(.eyebrow) { color: var(--color-body); font-size: 15px; line-height: 1.85; max-width: 650px; }
.consulting-background > div > p + p { margin-top: 14px; }
.consulting-background .action-secondary { margin-top: 14px; font-size: 14px; }
.consulting-page #focus { scroll-margin-top: 32px; }
@media (min-width: 900px) {
  .consulting-page .interior-hero-copy > .eyebrow { margin-bottom: 20px; }
  .consulting-page .hero-actions { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
  .consulting-page #focus { padding-top: var(--section-space); }
}
@media (max-width: 1100px) {
  .consulting-page .interior-hero-grid, .consulting-page .section-intro, .consulting-topics, .consulting-background { gap: 40px; }
}
@media (max-width: 899px) {
  .consulting-page .section-space { padding-block: var(--section-space); }
  .consulting-page .interior-hero-grid, .consulting-background { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .consulting-page .interior-figure { justify-self: start; }
  .consulting-page .section-intro { gap: 28px; }
}
@media (max-width: 700px) {
  .consulting-topics { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 540px) {
  .consulting-page .section-space { padding-block: var(--section-space); }
  .consulting-background { padding-block: 36px; }
}

/* FAQ: compact topic navigation beside questions grouped by visitor need. */
.faq-page .editorial-heading { padding-top: 0; }
.faq-page .editorial-heading h1 { line-height: 1.1; margin-top: 20px; }
.faq-page .editorial-deck { margin-top: 22px; font-size: 16px; line-height: 1.8; }
.faq-page .section-space { padding-block: var(--section-space); }
.faq-page .faq-directory { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 80px; align-items: start; }
.faq-page .faq-topics { position: sticky; top: 24px; }
.faq-page .faq-topics ul { list-style: none; padding: 0; margin-top: 20px; border-top: 1px solid #1a1a1a25; }
.faq-page .faq-topics a { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 48px; padding-block: 14px; border-bottom: 1px solid #1a1a1a25; font-size: 14px; line-height: 1.6; color: var(--accent); }
.faq-page .faq-topics a svg { width: 16px; height: 16px; flex: 0 0 auto; }
.faq-page .faq-topics a:hover { text-decoration: underline; text-underline-offset: 5px; }
.faq-page .faq-topic-group { scroll-margin-top: 32px; }
.faq-page .faq-topic-group + .faq-topic-group { margin-top: 44px; }
.faq-page .faq-topic-group h2 { line-height: 1.2; letter-spacing: -.02em; color: var(--accent); margin-bottom: 20px; }
.faq-page .faq-list summary { padding-block: 20px; font-size: 15px; line-height: 1.6; align-items: baseline; }
.faq-page .faq-plus { flex: 0 0 auto; }
.faq-page .faq-answer { max-width: 740px; padding: 0 40px 24px 0; }
.faq-page .faq-list .faq-answer p { padding: 0; margin: 0; font-size: 15px; line-height: 1.85; }
.faq-page .faq-list .faq-answer p + p { margin-top: 14px; }
.faq-page .faq-answer a { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; text-decoration-thickness: 1px; }
.faq-page .faq-answer a:hover { text-decoration-thickness: 2px; }
.faq-page .section-title { line-height: 1.18; }
@media (max-width: 1100px) {
  .faq-page .faq-directory { grid-template-columns: 220px minmax(0, 1fr); gap: 40px; }
}
@media (max-width: 899px) {
  .faq-page .section-space { padding-block: var(--section-space); }
  .faq-page .faq-directory { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .faq-page .faq-topics { position: static; }
  .faq-page .faq-topics ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
}
@media (max-width: 540px) {
  .faq-page .section-space { padding-block: var(--section-space); }
  .faq-page .faq-topics ul { grid-template-columns: minmax(0, 1fr); }
  .faq-page .faq-answer { padding-right: 12px; }
}

/* Compact information pages follow the same spacing as the service pages. */
.utility-page .editorial-heading h1 { line-height: 1.12; margin-top: 20px; }
.testimonial-coach-note { margin-top: 16px; font-size: 13px; line-height: 1.7; color: var(--accent); }

/* First-level Business pages follow the approved overview's layout and rhythm. */
.business-child { --business-section-space: var(--section-space); --business-column-gap: 64px; color: var(--color-business); }
.business-child .section-space { padding-block: var(--business-section-space); }
.business-child .eyebrow { font-size: 11px; letter-spacing: .1em; }
.business-child .section-title { font-weight: 500; line-height: 1.18; }
.business-child .action-secondary { font-size: 14px; }
.business-child .action-primary, .business-child .business-outline-action { font-size: 15px; line-height: 20px; min-height: 48px; padding: 13px 23px; gap: 24px; }
.business-child .interior-hero-grid { grid-template-columns: minmax(0, 1fr) min(40%, 450px); gap: 17px var(--business-column-gap); align-items: start; }
.business-child .interior-hero-copy { padding-top: 0; }
.business-child .interior-hero-copy > .eyebrow { margin: 0; }
.business-child .interior-title { max-width: 720px; margin-top: 20px; line-height: 1.08; }
.business-child .interior-intro { max-width: 620px; margin-top: 24px; font-size: 16px; line-height: 1.9; }
.interior-hero .single-hero-action { margin-top: 28px; }
.business-child .business-child-extra { max-width: 620px; margin-top: 16px; }
.business-child .interior-figure { width: 100%; max-width: 450px; justify-self: end; }
.business-child .interior-photo { aspect-ratio: 4 / 5; max-height: none; }
.business-child .business-child-hero-landscape .interior-photo { aspect-ratio: 3 / 2; }
.business-child .business-child-hero-landscape .interior-photo img { object-position: center; }
.business-child .interior-figure figcaption span { font-size: 12px; }
.business-child .section-intro, .business-child .consulting-background { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px var(--business-column-gap); align-items: start; }
.business-child :is(.section-intro, .consulting-background) > div:first-child { display: contents; }
.business-child :is(.section-intro, .consulting-background) > div:first-child > .eyebrow { grid-column: 1; grid-row: 1; margin: 0; }
.business-child :is(.section-intro, .consulting-background) > div:first-child > h2 { grid-column: 1; grid-row: 2; margin: 0; }
.business-child :is(.section-intro, .consulting-background) > :last-child { grid-column: 2; grid-row: 2; min-width: 0; }
.business-child .section-intro > p, .business-child .catalog-section-intro > p { max-width: 620px; font-size: 16px; line-height: 1.8; color: var(--color-body); }
.business-child .faq-list { grid-column: 2; grid-row: 2 / span 2; }
.business-child .training-delivery { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--business-column-gap); align-items: start; }
.business-child .training-delivery .section-title { margin-top: 0; }
.business-child :is(.coaching-needs, .consulting-topics, .coaching-format-grid, .program-grid) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 36px var(--business-column-gap); margin-top: 40px; }
.business-child :is(.coaching-needs, .consulting-topics, .coaching-format-grid, .program-grid) > article { border-top: 2px solid var(--accent); padding-top: 24px; min-width: 0; }
.business-child .approach-steps { gap: var(--business-column-gap); margin-top: 40px; }
.business-child .approach-steps > li { min-width: 0; padding-top: 24px; border-color: #C4CEC7; }
.business-child .approach-steps h3 { line-height: 1.25; margin: 0 0 14px; }
.business-child .approach-steps p { font-size: 16px; line-height: 1.8; }
.business-child .coaching-evidence { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 18px var(--business-column-gap); }
.business-child .coaching-client-eyebrow { grid-column: 2; grid-row: 1; }
.business-child .coaching-client-quote { grid-column: 2; grid-row: 2; min-width: 0; }
.business-child .coaching-coach-eyebrow { grid-column: 1; grid-row: 1; }
.business-child .coaching-background { grid-column: 1; grid-row: 2; min-width: 0; }
.business-child .coaching-background h2 { margin-top: 0; }
.business-child .coaching-evidence blockquote { margin-top: 0; font-size: clamp(26px, 2.6vw, 36px); line-height: 1.4; }
.business-child .coaching-evidence .action-secondary { margin-top: 14px; }
.business-child .consulting-background > div > p:not(.eyebrow) { font-size: 16px; line-height: 1.8; }
.business-child .related-band { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px var(--business-column-gap); padding-block: var(--compact-section-space); border-color: #C4CEC7; }
.business-child .related-band p { font-size: 15px; line-height: 1.8; }
.business-child .related-band a { justify-self: start; }
@media (min-width: 900px) {
  .business-child .interior-hero-grid { grid-template-rows: auto auto; }
  .business-child .interior-hero-copy { grid-row: 1; align-self: stretch; position: relative; display: flex; flex-direction: column; justify-content: center; padding-block: 38px; }
  .business-child .interior-hero-copy > .eyebrow { position: absolute; top: 0; left: 0; }
  .business-child .interior-title { margin-top: 0; }
  .business-child .interior-figure { display: grid; grid-column: 2; grid-row: 1 / span 2; grid-template-rows: subgrid; align-self: stretch; }
  .business-child .interior-photo { align-self: center; }
  .business-child .interior-figure figcaption { margin-top: 0; }
  .business-child .business-child-hero-landscape .interior-figure { display: block; grid-row: 1; align-self: center; }
  .business-child .business-child-hero-landscape .interior-figure figcaption { margin-top: 17px; }
}
@media (max-width: 1100px) {
  .business-child { --business-column-gap: 40px; }
}
@media (max-width: 899px) {
  .business-child .interior-hero-grid { grid-template-columns: minmax(0, 1fr); row-gap: 40px; }
  .business-child .interior-figure { justify-self: start; }
  .business-child .interior-title { max-width: 680px; }
  .business-child :is(.section-intro, .consulting-background, .training-delivery, .coaching-evidence, .related-band) { grid-template-columns: minmax(0, 1fr); gap: 26px; }
  .business-child :is(.section-intro, .consulting-background) > div:first-child { display: block; }
  .business-child :is(.section-intro, .consulting-background) > div:first-child > h2 { margin-top: 18px; }
  .business-child :is(.section-intro, .consulting-background) > *, .business-child :is(.section-intro, .consulting-background) > div:first-child > *, .business-child .coaching-evidence > * { grid-column: 1; grid-row: auto; }
  .business-child :is(.section-intro, .consulting-background) > :last-child { grid-column: 1; grid-row: auto; }
  .business-child :is(.coaching-needs, .consulting-topics, .coaching-format-grid, .program-grid, .approach-steps) { grid-template-columns: minmax(0, 1fr); gap: 40px; }
  .business-child .coaching-evidence { row-gap: 18px; }
  .business-child .coaching-client-eyebrow { margin-top: 14px; border-top: 1px solid #C4CEC7; padding-top: 32px; }
  .business-child .coaching-background { border-top: 0; padding-top: 0; }
}
@media (max-width: 540px) {
  .business-child .business-hero-actions > a { width: 100%; padding-inline: 18px; }
  .business-child .coaching-evidence blockquote { font-size: 25px; }
  .business-child :is(.coaching-needs, .consulting-topics, .coaching-format-grid, .program-grid, .approach-steps, .course-collection) { margin-top: 32px; }
}

/* Matching About Evolve and Training Catalog opening layouts. */
.about-overview .interior-figure, .training-catalog .interior-hero .interior-figure { max-width: 598.5px; }
@media (min-width: 900px) {
  .about-overview .interior-hero-grid, .training-catalog .interior-hero-grid { grid-template-columns: minmax(0, 1fr) min(53.2%, 598.5px); }
}

/* Opening action pairs use the larger button's dimensions, including when stacked. */
.interior-hero :is(.business-hero-actions, .personal-hero-actions, .hero-actions) {
  display: inline-grid;
  grid-template-columns: repeat(var(--hero-pair-columns, 1), minmax(0, 1fr));
  grid-auto-rows: 1fr;
  align-items: stretch;
  gap: 14px;
  width: var(--hero-pair-width, max-content);
  max-width: 100%;
}
.interior-hero :is(.business-hero-actions, .personal-hero-actions, .hero-actions) > a {
  width: 100%;
  height: 100%;
  min-width: 0;
  justify-content: space-between;
}
.interior-hero :is(.business-hero-actions, .personal-hero-actions, .hero-actions).measuring-buttons > a {
  width: max-content;
  max-width: none;
  height: auto;
}
@media (max-width: 540px) {
  .interior-hero :is(.business-hero-actions, .personal-hero-actions, .hero-actions) {
    width: 100%;
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Practice typography follows the homepage palette, including nested practice cards.
   Deliberately color-only: preserve the approved heading sizes and weights. */
#main:not(.home-main) { color: var(--color-text); }
#main:not(.home-main) :is(h1, h2, h3, .eyebrow, blockquote),
#main:not(.home-main) figure figcaption strong { color: var(--accent); }
#main:not(.home-main) :is(h1, h2, h3) :is(a, span, em, strong) { color: inherit; }
#main:not(.home-main) :is(p.text-ink\/70, p.text-ink\/75) { color: var(--color-body); }
#main:not(.home-main) :is(p.text-ink\/60, p.text-ink\/65) { color: var(--color-muted); }
.faq-topic-group .faq-list summary, .sitemap-grid a { color: var(--accent); }
.mobile-menu .mobile-nav-category[href="/personal-and-relationship/"] { color: var(--color-personal-ink); }

/* Center the introductory paragraph against its heading, with links and follow-up
   copy in subsequent rows. Stacked layouts keep their existing spacing. */
@media (min-width: 900px) {
  #main :is(.section-intro, .business-delivery, .business-consulting) {
    align-items: start;
    row-gap: 0;
  }
  #main :is(.section-intro) > div:first-child:has(> h2) { display: contents; }
  #main :is(.section-intro) > div:first-child > .eyebrow {
    grid-column: 1;
    grid-row: 1;
    margin: 0 0 18px;
  }
  #main :is(.section-intro) > div:first-child > h2 {
    grid-column: 1;
    grid-row: 2;
    margin: 0;
    line-height: 1.18;
    align-self: center;
  }
  #main :is( .business-delivery, .business-consulting) > :is(h2, h3) {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    align-self: center;
  }
  #main :is( .business-delivery, .business-consulting) > h2 { line-height: 1.18; }
  #main :is(.section-intro, .business-delivery, .business-consulting) > :last-child {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    margin-top: 0;
    align-self: center;
  }
  #main :is(.section-intro):has(> div:first-child > h2) > :last-child { grid-row-start: 2; }
  #main :is(.section-intro, .business-consulting) > div:last-child {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: subgrid;
    grid-row-end: span 2;
    row-gap: 0;
    align-self: stretch;
    align-items: start;
    justify-items: start;
  }
  #main :is(.section-intro, .business-consulting) > div:last-child > p:first-child { align-self: center; }
  #main :is(.section-intro, .business-consulting) > :last-child > p:first-child { margin-top: 0; }
}

/* Matching landscape portraits in the About coach cards. */
.about-coach .about-coach-heading { grid-template-columns: minmax(0, 1fr) 344.736px; }
@media (min-width: 900px) and (max-width: 1100px) {
  .about-coach .about-coach-heading { grid-template-columns: minmax(0, 1fr) 268.128px; }
}
@media (max-width: 540px) {
  .about-coach .about-coach-heading { grid-template-columns: minmax(0, 1fr); }
  .about-coach .about-coach-heading img { width: 210.672px; max-width: 100%; }
}

/* Center each head in a landscape portrait window without editing the source. */
.about-coach-portrait { width: 100%; aspect-ratio: 16 / 9; overflow: hidden; }
.about-coach .about-coach-heading .about-coach-portrait img { display: block; width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; object-position: 50% 0%; transform-origin: 50% 0%; transform: scale(1); }
.about-coach.theme-personal .about-coach-heading .about-coach-portrait img { transform: scale(1); }
@media (max-width: 540px) { .about-coach-portrait { width: 210.672px; max-width: 100%; } }

/* Equal-height coach cards with matching bottom actions. */
@media (min-width: 900px) {
  .about-coach .about-coach-details { margin-bottom: 22px; }
  .about-coach .about-coach-contact { margin-top: auto; }
}



/* Align the business introduction with the center of its heading. */
@media (min-width: 900px) {
  .home-business-services > .home-content-width {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 40px;
  }
  .home-business-services > .home-content-width > .eyebrow { grid-column: 1 / -1; }
  .home-business-services #services-title { grid-column: 1; grid-row: 2; margin-block: 0; }
  .home-business-services .home-section-deck { grid-column: 2; grid-row: 2; align-self: center; margin-block: 0; }
  .home-business-services .home-business-grid { grid-column: 1 / -1; }
}

/* Final acceptance refinements: two phone headings and three Insights assets only. */
@media (max-width: 540px) {
  .training-catalog #catalog-title,
  .consulting-page #focus-title { text-wrap: pretty; }
  .training-catalog #catalog-title .mobile-phrase { white-space: nowrap; }
  .training-catalog #catalog-title br,
  .consulting-page #focus-title br { display: none; }
}
@media (max-width: 899px) {
  .insight-image img[src="/assets/trey-coach.webp"] { object-position: 50% 7%; }
  .insight-image img[src="/assets/trey.webp"] { object-position: 50% 0%; }
  .insight-image img[src="/assets/amy.webp"] { object-position: 50% 0%; }
}
