<?php
/**
 * Plugin Name: Coaching MVP Site Kit
 * Description: Coaching site kit with booking requests, contact forms, testimonials, pages, and starter content.
 */

if (!defined('ABSPATH')) {
    exit;
}

const COACHING_MVP_TEMPLATE_VERSION = '2.0.22';

function coaching_mvp_service_catalog() {
    return [
        'discovery-call' => [
            'label' => 'Discovery Call',
            'code' => '01',
            'summary' => 'A low-friction first step for visitors who want to explore fit, goals, and next steps before committing.',
            'bullets' => ['30 minutes', 'Ideal first conversation', 'Best for fit and direction'],
        ],
        'clarity-session' => [
            'label' => 'Clarity Session',
            'code' => '02',
            'summary' => 'A focused deep-dive session for transitions, decisions, leadership tension, and getting unstuck quickly.',
            'bullets' => ['90-minute intensive', 'Decision support', 'Action summary included'],
        ],
        'momentum-coaching' => [
            'label' => 'Momentum Coaching',
            'code' => '03',
            'summary' => 'Ongoing coaching for clients who need accountability, calm execution, and stronger follow-through over time.',
            'bullets' => ['Ongoing 1:1 rhythm', 'Reflection between sessions', 'Built for durable progress'],
        ],
        'leadership-intensive' => [
            'label' => 'Leadership Intensive',
            'code' => '04',
            'summary' => 'A premium strategy container for founders, executives, and senior leaders navigating a high-stakes season.',
            'bullets' => ['Executive-level support', 'Complex challenges welcome', 'Clear implementation path'],
        ],
    ];
}

function coaching_mvp_services() {
    $services = [];
    foreach (coaching_mvp_service_catalog() as $slug => $service) {
        $services[$slug] = $service['label'];
    }
    return $services;
}

function coaching_mvp_register_post_types() {
    register_post_type('testimonial', [
        'labels' => [
            'name' => 'Testimonials',
            'singular_name' => 'Testimonial',
            'add_new_item' => 'Add New Testimonial',
            'edit_item' => 'Edit Testimonial',
        ],
        'public' => true,
        'show_in_rest' => true,
        'menu_icon' => 'dashicons-format-quote',
        'supports' => ['title', 'editor', 'excerpt', 'page-attributes'],
        'has_archive' => false,
        'rewrite' => ['slug' => 'testimonial'],
    ]);

    register_post_type('booking_request', [
        'labels' => [
            'name' => 'Bookings',
            'singular_name' => 'Booking',
            'add_new_item' => 'Add Booking',
            'edit_item' => 'View Booking',
        ],
        'public' => false,
        'show_ui' => true,
        'show_in_rest' => false,
        'menu_icon' => 'dashicons-calendar-alt',
        'supports' => ['title'],
        'capability_type' => 'post',
        'map_meta_cap' => true,
    ]);

    register_post_type('lead_capture', [
        'labels' => [
            'name' => 'Leads',
            'singular_name' => 'Lead',
            'add_new_item' => 'Add Lead',
            'edit_item' => 'View Lead',
        ],
        'public' => false,
        'show_ui' => true,
        'show_in_rest' => false,
        'menu_icon' => 'dashicons-email-alt2',
        'supports' => ['title'],
        'capability_type' => 'post',
        'map_meta_cap' => true,
    ]);

    register_post_type('faq_item', [
        'labels' => [
            'name' => 'FAQs',
            'singular_name' => 'FAQ',
            'add_new_item' => 'Add FAQ',
            'edit_item' => 'Edit FAQ',
        ],
        'public' => false,
        'show_ui' => true,
        'show_in_rest' => true,
        'menu_icon' => 'dashicons-editor-help',
        'supports' => ['title', 'editor', 'page-attributes'],
        'capability_type' => 'post',
        'map_meta_cap' => true,
    ]);
}
add_action('init', 'coaching_mvp_register_post_types');

function coaching_mvp_body_class($classes) {
    $classes[] = 'coaching-mvp-active';
    return $classes;
}
add_filter('body_class', 'coaching_mvp_body_class');

function coaching_mvp_styles() {
    if (is_admin()) {
        return;
    }

    wp_register_style('coaching-mvp-inline', false, [], null);
    wp_enqueue_style('coaching-mvp-inline');

    $css = <<<'CSS'
:root {
  --coach-primary: #5f2dff;
  --coach-secondary: #00b8a9;
  --coach-accent: #ff9f1c;
  --coach-background: #f3f0ff;
  --coach-surface: #ffffff;
  --coach-surface-soft: rgba(255,255,255,.84);
  --coach-text: #111b33;
  --coach-muted: #566377;
  --coach-deep: #0b1530;
  --coach-deeper: #060d1f;
  --coach-border: rgba(17,27,51,.11);
  --coach-shadow: 0 24px 64px rgba(9,18,40,.10);
  --coach-shadow-lg: 0 40px 100px rgba(6,13,31,.22);
  --coach-shadow-card: 0 18px 40px rgba(9,18,40,.09);
  --coach-shadow-hover: 0 28px 60px rgba(9,18,40,.14);
  --coach-radius: 28px;
  --coach-radius-sm: 18px;
  --coach-spacing: 1.5rem;
}
body.coaching-mvp-active {
  background:
    radial-gradient(circle at 10% 8%, rgba(95,45,255,.14), transparent 26%),
    radial-gradient(circle at 90% 10%, rgba(255,159,28,.12), transparent 22%),
    radial-gradient(circle at 58% 36%, rgba(0,184,169,.08), transparent 28%),
    linear-gradient(180deg, #eef2ff 0%, #f7f2ff 26%, #fdf6ec 56%, #ffffff 100%);
  color: var(--coach-text);
}
body.coaching-mvp-active .wp-site-blocks,
body.coaching-mvp-active .site,
body.coaching-mvp-active main {
  color: var(--coach-text);
}
body.coaching-mvp-active {
  --coach-page-gutter: 20px;
  --coach-content-max: 1280px;
  --coach-wide-max: 1320px;
  --wp--style--global--content-size: min(var(--coach-content-max), calc(100% - (var(--coach-page-gutter) * 2)));
  --wp--style--global--wide-size: min(var(--coach-wide-max), calc(100% - (var(--coach-page-gutter) * 2)));
}
body.coaching-mvp-active .wp-block-post-content,
body.coaching-mvp-active .wp-block-query,
body.coaching-mvp-active .wp-block-group {
  width: 100%;
}
body.coaching-mvp-active main.wp-block-group.has-global-padding,
body.coaching-mvp-active .entry-content.wp-block-post-content.has-global-padding,
body.coaching-mvp-active .coach-home-page,
body.coaching-mvp-active .coach-shell,
body.coaching-mvp-active .coach-shell > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-section > .wp-block-group__inner-container {
  box-sizing: border-box;
}
body.coaching-mvp-active main.wp-block-group.has-global-padding,
body.coaching-mvp-active .entry-content.wp-block-post-content.has-global-padding {
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
}
body.coaching-mvp-active main > .wp-block-group.alignfull.has-global-padding {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.coaching-mvp-active .entry-content.wp-block-post-content.has-global-padding {
  max-width: none !important;
}
body.coaching-mvp-active .entry-content.alignfull.wp-block-post-content.has-global-padding {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.coaching-mvp-active .coach-home-page,
body.coaching-mvp-active .coach-shell,
body.coaching-mvp-active .coach-shell > .wp-block-group__inner-container {
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
}
body.coaching-mvp-active .coach-home-page > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-shell > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-section > .wp-block-group__inner-container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.coaching-mvp-active .coach-home-page > .wp-block-group__inner-container > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.coaching-mvp-active .coach-shell > .wp-block-group__inner-container > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.coaching-mvp-active .coach-section > .wp-block-group__inner-container > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
body.coaching-mvp-active .coach-home-page > .wp-block-group__inner-container > .alignwide,
body.coaching-mvp-active .coach-shell > .wp-block-group__inner-container > .alignwide,
body.coaching-mvp-active .coach-section > .wp-block-group__inner-container > .alignwide,
body.coaching-mvp-active .coach-hero,
body.coaching-mvp-active .coach-section,
body.coaching-mvp-active .coach-stats-grid {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
}
body.coaching-mvp-active .wp-site-blocks {
  overflow-x: clip;
}
body.coaching-mvp-active header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 30;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  background: linear-gradient(180deg, rgba(255,255,255,.86), rgba(248,250,255,.78));
  border-bottom: 1px solid rgba(91,79,247,.10);
  box-shadow: 0 10px 28px rgba(31,41,55,.08);
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-group.has-global-padding.is-layout-constrained {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-group.alignwide {
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
}
body.coaching-mvp-active .wp-block-site-title a,
body.coaching-mvp-active .wp-block-navigation a,
body.coaching-mvp-active .wp-block-navigation-item__content {
  color: rgba(17,24,39,.84);
  text-decoration: none;
}
body.coaching-mvp-active .wp-block-site-title a {
  color: #111827;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content {
  font-weight: 600;
  transition: color .22s ease, opacity .22s ease;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:hover,
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:focus {
  color: var(--coach-color-primary);
}
body.coaching-mvp-active .wp-block-navigation .current-menu-item > a,
body.coaching-mvp-active .wp-block-navigation .current_page_item > a {
  color: #24135f;
}
body.coaching-mvp-active .wp-block-button__link {
  border-radius: 999px;
  padding: .98rem 1.48rem;
  font-weight: 800;
  letter-spacing: -.01em;
  text-decoration: none;
  border: 1px solid rgba(95,45,255,.16);
  box-shadow: 0 14px 30px rgba(95,45,255,.16);
  transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, border-color .22s ease, color .22s ease, filter .22s ease;
}
body.coaching-mvp-active .wp-block-button__link:hover,
body.coaching-mvp-active .wp-block-button__link:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 20px 40px rgba(95,45,255,.20);
  filter: saturate(1.03);
}
body.coaching-mvp-active .wp-block-button:not(.is-style-outline) > .wp-block-button__link {
  background: linear-gradient(135deg, #5f2dff 0%, #7b4dff 52%, #00b8a9 100%);
  color: #fff;
}
body.coaching-mvp-active .wp-block-button.is-style-outline > .wp-block-button__link {
  background: rgba(255,255,255,.94);
  border-color: rgba(95,45,255,.16);
  color: var(--coach-deep);
}
body.coaching-mvp-active .wp-block-button.is-style-outline > .wp-block-button__link {
  border-radius: 999px;
}
body.coaching-mvp-active .wp-block-post-title,
body.coaching-mvp-active h1,
body.coaching-mvp-active h2,
body.coaching-mvp-active h3,
body.coaching-mvp-active h4 {
  letter-spacing: -.03em;
}
body.coaching-mvp-active.page .wp-block-post-title {
  display: none;
}
body.coaching-mvp-active.page main.wp-block-group.has-global-padding {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body.coaching-mvp-active.page main > .wp-block-group.alignfull.has-global-padding {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.coaching-mvp-active.blog main.wp-block-group.has-global-padding,
body.coaching-mvp-active.archive main.wp-block-group.has-global-padding {
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
}
body.coaching-mvp-active.blog main > .wp-block-query.alignfull,
body.coaching-mvp-active.blog .wp-block-query .wp-block-post-template.alignfull,
body.coaching-mvp-active.blog .wp-block-query .wp-block-post > .wp-block-group.alignfull,
body.coaching-mvp-active.blog .wp-block-query .entry-content.alignfull.wp-block-post-content,
body.coaching-mvp-active.archive main > .wp-block-query.alignfull,
body.coaching-mvp-active.archive .wp-block-query .wp-block-post-template.alignfull,
body.coaching-mvp-active.archive .wp-block-query .wp-block-post > .wp-block-group.alignfull,
body.coaching-mvp-active.archive .wp-block-query .entry-content.alignfull.wp-block-post-content {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.coach-shell,
.coach-hero,
.coach-section,
.coach-panel,
.coach-form-wrap,
.coach-service-card,
.coach-testimonial-card,
.coach-stat,
.coach-process-card,
.coach-mini-card,
.coach-faq-card,
.coach-story-card,
.coach-system-card,
.coach-blog-card,
.coach-quote-card,
.coach-visual-card {
  border-radius: var(--coach-radius);
}
.coach-shell > * + * {
  margin-top: clamp(1.5rem, 3vw, 2.5rem);
}
.coach-section {
  position: relative;
  margin-top: clamp(1.7rem, 4vw, 3rem);
  padding: clamp(1.35rem, 3vw, 2rem);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(249,250,255,.88));
  border: 1px solid rgba(255,255,255,.74);
  box-shadow: 0 20px 52px rgba(9,18,40,.07);
  backdrop-filter: blur(8px);
}
.coach-section::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(95,45,255,.05), rgba(255,159,28,.03) 55%, rgba(0,184,169,.04));
  pointer-events: none;
}
.coach-section > * {
  position: relative;
  z-index: 1;
}
.coach-hero {
  position: relative;
  overflow: hidden;
  padding: clamp(2.2rem, 5vw, 4.35rem);
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.12), transparent 14%),
    radial-gradient(circle at 88% 16%, rgba(255,159,28,.22), transparent 22%),
    radial-gradient(circle at 20% 64%, rgba(0,184,169,.18), transparent 26%),
    radial-gradient(circle at 82% 78%, rgba(95,45,255,.22), transparent 28%),
    linear-gradient(135deg, #081126 0%, #132a5f 40%, #24196b 72%, #5f2dff 100%);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 26px 60px rgba(6,13,31,.20);
}
.coach-hero::before {
  content: "";
  position: absolute;
  inset: auto -6% -20% 52%;
  height: 320px;
  background: radial-gradient(circle, rgba(255,255,255,.12), transparent 62%);
  pointer-events: none;
}
.coach-hero::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  border: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(135deg, rgba(255,255,255,.03), rgba(255,255,255,0));
  pointer-events: none;
}
.coach-hero h1,
.coach-hero h2,
.coach-hero p,
.coach-hero li,
.coach-hero strong,
.coach-hero .coach-quote-card {
  color: #fff;
}
.coach-hero .wp-block-buttons .wp-block-button__link,
.coach-cta-row .wp-block-button__link,
.coach-form-wrap button,
.coach-inline-link {
  border-radius: 999px;
  padding: .95rem 1.4rem;
  font-size: .92rem !important;
  font-weight: 700;
  text-decoration: none;
}
.coach-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .52rem .98rem;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  border: 1px solid rgba(255,255,255,.22);
  box-shadow: none;
  font-size: .8rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.coach-badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .46rem .88rem;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(95,45,255,.12), rgba(0,184,169,.08));
  border: 1px solid rgba(95,45,255,.12);
  color: var(--coach-deep);
  font-size: .84rem;
  font-weight: 800;
  box-shadow: 0 8px 18px rgba(95,45,255,.08);
}
.coach-badge.dark {
  background: rgba(255,255,255,.12);
  color: #fff;
}
.coach-grid-2,
.coach-grid-3,
.coach-grid-4,
.coach-card-grid,
.coach-testimonial-grid,
.coach-process-grid,
.coach-story-grid,
.coach-faq-grid,
.coach-stats-grid,
.coach-mini-grid,
.coach-system-grid,
.coach-blog-grid,
.coach-visual-grid,
.coach-booking-layout {
  display: grid;
  gap: 1.2rem;
}
.coach-grid-2,
.coach-booking-layout { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.coach-ssa-card {
  padding: 0;
  overflow: hidden;
}
.coach-ssa-card iframe.ssa_booking_iframe {
  width: 100%;
  min-height: 760px;
  border: 0;
  display: block;
}
.coach-ssa-fallback {
  padding: 1.35rem;
}
.coach-grid-3,
.coach-card-grid,
.coach-testimonial-grid,
.coach-process-grid,
.coach-story-grid,
.coach-faq-grid,
.coach-mini-grid,
.coach-system-grid,
.coach-blog-grid,
.coach-visual-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.coach-grid-4,
.coach-stats-grid { grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); }
.coach-panel,
.coach-service-card,
.coach-testimonial-card,
.coach-stat,
.coach-process-card,
.coach-mini-card,
.coach-faq-card,
.coach-story-card,
.coach-form-wrap,
.coach-system-card,
.coach-blog-card,
.coach-quote-card,
.coach-visual-card {
  background: linear-gradient(180deg, rgba(255,255,255,.985), rgba(246,248,255,.95));
  border: 1px solid rgba(95,45,255,.08);
  box-shadow: var(--coach-shadow-card);
  padding: 1.35rem;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.coach-panel:hover,
.coach-service-card:hover,
.coach-testimonial-card:hover,
.coach-stat:hover,
.coach-process-card:hover,
.coach-mini-card:hover,
.coach-faq-card:hover,
.coach-story-card:hover,
.coach-form-wrap:hover,
.coach-system-card:hover,
.coach-blog-card:hover,
.coach-visual-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--coach-shadow-hover);
  border-color: rgba(95,45,255,.14);
}
.coach-panel.soft,
.coach-quote-card,
.coach-visual-card.dark {
  background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.06));
  border-color: rgba(255,255,255,.14);
  box-shadow: none;
}
.coach-quote-card {
  color: #fff;
}
.coach-visual-card {
  min-height: 140px;
}
.coach-visual-card h3,
.coach-visual-card p {
  color: #fff;
}
.coach-hero-shell {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 35rem;
  margin-left: auto;
}
.coach-hero .wp-block-columns {
  gap: clamp(1.4rem, 3.2vw, 3rem);
}
.coach-hero .wp-block-column {
  min-width: 0;
}
.coach-photo-stack {
  display: grid;
  gap: .8rem;
}
.coach-photo-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.coach-photo-card {
  margin: 0;
  overflow: hidden;
  padding: 0;
  background: #dfe6f2;
  border: 1px solid var(--coach-border);
  box-shadow: var(--coach-shadow-lg);
}
.coach-photo-card img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.coach-photo-card-large img {
  aspect-ratio: 16 / 11;
}
.coach-photo-card-medium img {
  aspect-ratio: 1 / 1;
}
.coach-photo-card-tall img {
  aspect-ratio: 4 / 5;
}
.coach-photo-feature {
  align-items: center;
  grid-template-columns: minmax(240px, .88fr) minmax(320px, 1.12fr);
}
.coach-photo-feature .coach-photo-card {
  width: 100%;
  max-width: 26rem;
  justify-self: start;
  align-self: center;
}
.coach-photo-feature .coach-photo-card img {
  aspect-ratio: 6 / 5;
  width: 100%;
  height: auto;
  max-height: 420px;
}
.coach-photo-copy {
  align-self: center;
}
.coach-hero-media .coach-quote-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 0;
}
.coach-hero .coach-photo-card {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.14);
}
.coach-hero-simple {
  align-items: center;
}
.coach-hero-simple .wp-block-column:first-child > *:last-child {
  margin-bottom: 0;
}
.coach-hero-simple .wp-block-column:last-child {
  position: relative;
}
.coach-hero-image-wrap {
  position: relative;
  max-width: 34rem;
  margin-left: auto;
}
.coach-hero-image-wrap .coach-photo-card {
  border-radius: 20px;
  overflow: hidden;
}
.coach-hero-image-wrap .coach-photo-card img {
  aspect-ratio: 4 / 5;
  min-height: 100%;
}
.coach-hero-note {
  position: absolute;
  left: -1.2rem;
  bottom: 1.2rem;
  max-width: 17rem;
  padding: 1rem 1.05rem;
  border-radius: 22px;
  background: rgba(12, 21, 48, 0.84);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 16px 38px rgba(7, 12, 28, .20);
  backdrop-filter: blur(8px);
}
.coach-hero-note strong,
.coach-hero-note p {
  color: #fff;
}
.coach-hero-note strong {
  display: block;
  font-size: 1rem;
  margin-bottom: .35rem;
}
.coach-hero-note p {
  margin: 0;
  font-size: .94rem;
  line-height: 1.5;
  color: rgba(255,255,255,.82);
}
@media (max-width: 900px) {
  .coach-hero-image-wrap {
    max-width: none;
    margin-left: 0;
  }
  .coach-hero-note {
    position: static;
    margin-top: 1rem;
    max-width: none;
  }
  .coach-photo-feature {
    grid-template-columns: 1fr;
  }
  .coach-photo-feature .coach-photo-card {
    max-width: none;
  }
  .coach-photo-feature .coach-photo-card img {
    max-height: none;
    aspect-ratio: 4 / 3;
  }
}
@media (max-width: 781px) {
  .coach-photo-row {
    grid-template-columns: 1fr;
  }
  .coach-audience-grid {
    grid-template-columns: 1fr;
  }
  .coach-audience-card {
    padding: 1rem .95rem .95rem;
  }
  .coach-audience-head {
    margin-bottom: .75rem;
  }
  .coach-audience-icon {
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 14px;
  }
}
.coach-system-card h3,
.coach-service-card h3,
.coach-process-card h3,
.coach-faq-card h3,
.coach-story-card h3,
.coach-testimonial-card h3,
.coach-mini-card h3,
.coach-blog-card h3 {
  margin-top: .35rem;
  margin-bottom: .6rem;
}
.coach-stat strong {
  display: block;
  font-size: clamp(1.4rem, 3vw, 2.15rem);
  color: var(--coach-text);
}
.coach-stat span,
.coach-muted,
.coach-service-card p,
.coach-process-card p,
.coach-faq-card p,
.coach-story-card p,
.coach-system-card p,
.coach-blog-card p,
.coach-testimonial-meta,
.coach-form-wrap p,
.coach-section p,
.coach-quote-card p,
.coach-mini-card p {
  color: var(--coach-muted);
}
.coach-hero .coach-panel p,
.coach-hero .coach-quote-card p,
.coach-hero .coach-visual-card p,
.coach-hero .coach-badge.dark + h3 + p {
  color: rgba(255,255,255,.82);
}
.coach-service-card ul,
.coach-process-card ul,
.coach-story-card ul,
.coach-system-card ul {
  margin: .8rem 0 0 1rem;
}
.coach-proof-stack {
  display: grid;
  gap: .95rem;
}
.coach-proof-list,
.coach-audience-card ul {
  margin: .2rem 0 0 1rem;
}
.coach-faq-stack {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
.coach-logo-grid {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
}
.coach-logo-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .62rem .9rem;
  border-radius: 999px;
  border: 1px solid rgba(95,45,255,.12);
  background: rgba(95,45,255,.05);
  color: var(--coach-deep);
  font-size: .86rem;
  font-weight: 700;
}
.coach-proof-band {
  position: relative;
  isolation: isolate;
  margin-top: clamp(2rem, 4vw, 3.4rem);
  padding: clamp(2.6rem, 5vw, 4rem) 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.coach-proof-band::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    radial-gradient(circle at top left, rgba(90, 126, 255, .20), transparent 32%),
    radial-gradient(circle at 85% 18%, rgba(0, 184, 169, .14), transparent 24%),
    linear-gradient(135deg, #08172f 0%, #0d2347 48%, #132f63 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 26px 70px rgba(4, 12, 28, .26);
  z-index: -2;
}
.coach-proof-band::after {
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  border-radius: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.06), rgba(123,77,255,.08) 52%, rgba(0,184,169,.08));
  z-index: -1;
}
body.coaching-mvp-active .coach-proof-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
}
.coach-proof-band h2,
.coach-proof-band h3,
.coach-proof-band strong,
.coach-proof-band li,
.coach-proof-band .coach-icon-dot {
  color: #f7fbff;
}
.coach-proof-band > .wp-block-group__inner-container > p,
.coach-proof-band .coach-proof-stack p,
.coach-proof-band .coach-proof-list,
.coach-proof-band .coach-proof-list li {
  color: rgba(232, 239, 250, .82);
}
.coach-proof-band > .wp-block-group__inner-container > .coach-badge,
.coach-proof-band .coach-proof-stack .coach-badge {
  background: rgba(255,255,255,.10);
  color: #f5f8ff;
  border-color: rgba(255,255,255,.14);
}
.coach-proof-band .coach-panel {
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 44px rgba(3, 10, 25, .18);
  backdrop-filter: blur(10px);
}
.coach-proof-band .coach-logo-chip {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.08);
  color: #eef4ff;
}
.coach-proof-grid {
  align-items: stretch;
  gap: clamp(1rem, 2.4vw, 1.35rem);
}
.coach-proof-stack {
  gap: 1.1rem;
  min-height: 100%;
}
.coach-proof-stack-secondary {
  justify-content: space-between;
}
.coach-proof-points,
.coach-proof-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
}
.coach-proof-point,
.coach-proof-metric {
  padding: 1rem;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
}
.coach-proof-point strong,
.coach-proof-metric strong {
  display: block;
  margin-bottom: .28rem;
  color: #fff;
}
.coach-proof-point p,
.coach-proof-metric span {
  margin: 0;
  color: rgba(232, 239, 250, .78);
}
.coach-proof-metric strong {
  font-size: clamp(1.2rem, 2.4vw, 1.45rem);
}
@media (max-width: 900px) {
  .coach-proof-points,
  .coach-proof-metrics {
    grid-template-columns: 1fr;
  }
}
.coach-audience-grid {
  margin-top: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  gap: 1rem;
}
.coach-audience-card {
  --audience-accent: #5f2dff;
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 1.1rem 1.05rem 1rem;
  border-radius: 22px;
  overflow: hidden;
  isolation: isolate;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(246,248,255,.96));
  border: 1px solid rgba(95,45,255,.10);
  box-shadow: 0 14px 30px rgba(9,18,40,.07);
}
.coach-audience-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--audience-accent), color-mix(in srgb, var(--audience-accent) 18%, transparent));
  opacity: .96;
}
.coach-audience-card::after {
  content: "";
  position: absolute;
  right: -2.2rem;
  top: -2.4rem;
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 999px;
  background: radial-gradient(circle, color-mix(in srgb, var(--audience-accent) 18%, white 82%), transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.coach-audience-card > * {
  position: relative;
  z-index: 1;
}
.coach-audience-card:nth-child(1) { --audience-accent: #5f2dff; }
.coach-audience-card:nth-child(2) { --audience-accent: #0e9f95; }
.coach-audience-card:nth-child(3) { --audience-accent: #ff9f1c; }
.coach-audience-card:nth-child(4) { --audience-accent: #d25488; }
.coach-audience-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .85rem;
  margin-bottom: .85rem;
}
.coach-audience-icon {
  width: 2.65rem;
  height: 2.65rem;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, color-mix(in srgb, var(--audience-accent) 88%, white 12%), rgba(255,255,255,.98));
  color: #fff;
  font-size: 1.1rem;
  line-height: 1;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.34), 0 10px 20px rgba(9,18,40,.08);
}
.coach-audience-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.2rem;
  padding: .38rem .62rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--audience-accent) 10%, white 90%);
  color: color-mix(in srgb, var(--audience-accent) 82%, #1f2d44 18%);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
}
.coach-audience-card h3 {
  margin: 0 0 .48rem;
  font-size: 1.05rem;
  line-height: 1.25;
  color: #15113d;
}
.coach-audience-card p {
  margin: 0 0 .78rem;
  font-size: .93rem;
  line-height: 1.55;
  color: rgba(32,45,68,.82);
}
.coach-audience-card ul {
  list-style: none;
  margin: .1rem 0 0;
  padding: 0;
  display: grid;
  gap: .52rem;
}
.coach-audience-card li {
  position: relative;
  padding-left: .95rem;
  font-size: .88rem;
  line-height: 1.45;
  color: rgba(32,45,68,.82);
}
.coach-audience-card li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .48rem;
  width: .42rem;
  height: .42rem;
  border-radius: 999px;
  background: var(--audience-accent);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--audience-accent) 14%, white 86%);
}
.coach-audience-card p:last-child,
.coach-audience-card ul:last-child {
  margin-bottom: 0;
}
.coach-faq-stack {
  width: 100%;
  max-width: 100%;
  gap: .9rem;
}
.coach-faq-item {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 24px;
  padding: 1.15rem 1.2rem;
}
.coach-faq-stack .coach-faq-card,
.coach-faq-stack .coach-faq-card:hover {
  transform: none;
}
.coach-faq-stack .coach-faq-card:hover {
  box-shadow: var(--coach-shadow-card);
  border-color: rgba(95,45,255,.12);
}
.coach-faq-item summary {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  cursor: pointer;
  list-style: none;
  font-weight: 700;
  color: var(--coach-deep);
}
.coach-faq-question {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.coach-faq-item summary::-webkit-details-marker {
  display: none;
}
.coach-faq-item summary::after {
  content: '+';
  flex: 0 0 auto;
  width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(95,45,255,.08);
  color: var(--coach-primary);
  font-size: 1.15rem;
  line-height: 1;
}
.coach-faq-item[open] summary::after {
  content: '–';
}
.coach-faq-answer {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin-top: .95rem;
  padding-top: .95rem;
  border-top: 1px solid rgba(95,45,255,.08);
  overflow-wrap: anywhere;
}
.coach-faq-answer > *:last-child {
  margin-bottom: 0;
}
.coach-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  margin-top: 1.1rem;
}
.coach-final-cta {
  background: linear-gradient(135deg, rgba(8,17,38,.96), rgba(36,25,107,.92));
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 26px 60px rgba(6,13,31,.18);
}
.coach-final-cta h2,
.coach-final-cta h3,
.coach-final-cta p,
.coach-final-cta li,
.coach-final-cta .coach-badge {
  color: #fff;
}
.coach-final-cta .coach-badge {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.12);
}
.coach-final-cta .coach-mini-card {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}
.coach-final-cta .coach-mini-card p {
  color: rgba(255,255,255,.78);
}
.coach-final-cta .coach-inline-link {
  color: #fff;
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.18);
  box-shadow: none;
}
.coach-final-cta .coach-inline-link:hover,
.coach-final-cta .coach-inline-link:focus-visible {
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.26);
  box-shadow: 0 14px 28px rgba(6,13,31,.18);
  filter: none;
}
.coach-final-cta .coach-inline-link.is-primary {
  color: var(--coach-deep);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(241,245,255,.95));
  border-color: rgba(255,255,255,.72);
  box-shadow: 0 16px 34px rgba(6,13,31,.18);
}
.coach-final-cta .coach-inline-link.is-primary:hover,
.coach-final-cta .coach-inline-link.is-primary:focus-visible {
  background: linear-gradient(180deg, #ffffff, rgba(248,250,255,.98));
  border-color: rgba(255,255,255,.85);
  box-shadow: 0 20px 38px rgba(6,13,31,.22);
}
.coach-final-cta .coach-inline-link.is-secondary {
  color: #fff;
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.22);
}
@media (max-width: 781px) {
  .coach-final-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .coach-final-actions .coach-inline-link {
    justify-content: center;
    text-align: center;
  }
}
.coach-icon-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(95,45,255,.20), rgba(255,159,28,.18) 55%, rgba(0,184,169,.16));
  color: var(--coach-deep);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 8px 18px rgba(95,45,255,.08);
  font-weight: 800;
}
.coach-work-together-section {
  position: relative;
  overflow: hidden;
  padding: clamp(1.45rem, 2.8vw, 2.15rem);
  background:
    radial-gradient(circle at 8% 14%, rgba(95,45,255,.10), transparent 24%),
    radial-gradient(circle at 90% 12%, rgba(0,184,169,.09), transparent 23%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,247,255,.98));
  border: 1px solid rgba(95,45,255,.08);
  box-shadow: 0 24px 56px rgba(9,18,40,.07);
}
.coach-work-together-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.16), transparent 34%, rgba(95,45,255,.04));
  pointer-events: none;
}
.coach-work-together-section > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
}
.coach-work-together-section .wp-block-heading,
.coach-work-together-section > .wp-block-group__inner-container > p:not(.coach-badge) {
  max-width: 39rem;
}
.coach-work-grid {
  gap: 1rem;
  margin-top: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
  align-items: stretch;
}
.coach-work-grid .coach-system-card {
  --work-accent: rgba(95,45,255,.20);
  --work-accent-strong: #5f2dff;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 182px;
  padding: 1.15rem 1.05rem 1.05rem;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.985), rgba(245,248,255,.98));
  border: 1px solid rgba(95,45,255,.10);
  box-shadow: 0 14px 28px rgba(9,18,40,.07);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.coach-work-grid .coach-system-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--work-accent-strong), color-mix(in srgb, var(--work-accent-strong) 20%, transparent));
  opacity: .92;
}
.coach-work-grid .coach-system-card::after {
  content: attr(data-icon);
  position: absolute;
  right: .65rem;
  top: .35rem;
  font-size: 4.8rem;
  line-height: 1;
  font-weight: 700;
  color: color-mix(in srgb, var(--work-accent-strong) 17%, white 83%);
  opacity: .75;
  transform: rotate(-8deg);
  pointer-events: none;
  z-index: 0;
}
.coach-work-grid .coach-system-card > * {
  position: relative;
  z-index: 1;
}
.coach-work-grid .coach-system-card:nth-child(1) {
  --work-accent: rgba(95,45,255,.20);
  --work-accent-strong: #5f2dff;
}
.coach-work-grid .coach-system-card:nth-child(2) {
  --work-accent: rgba(0,184,169,.20);
  --work-accent-strong: #0e9f95;
}
.coach-work-grid .coach-system-card:nth-child(3) {
  --work-accent: rgba(255,159,28,.22);
  --work-accent-strong: #ff9f1c;
}
.coach-work-grid .coach-system-card:nth-child(4) {
  --work-accent: rgba(222,87,137,.20);
  --work-accent-strong: #d25488;
}
.coach-work-grid .coach-system-card:nth-child(5) {
  --work-accent: rgba(56,120,255,.19);
  --work-accent-strong: #2f6df6;
}
.coach-work-grid .coach-system-card:nth-child(6) {
  --work-accent: rgba(19,140,114,.20);
  --work-accent-strong: #138c72;
}
.coach-work-grid .coach-system-card:nth-child(7) {
  --work-accent: rgba(125,93,255,.20);
  --work-accent-strong: #7d5dff;
}
.coach-work-grid .coach-system-card:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--work-accent-strong) 28%, white 72%);
  box-shadow: 0 18px 36px rgba(9,18,40,.10);
}
.coach-work-grid .coach-icon-dot {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 14px;
  margin-bottom: .82rem;
  background: linear-gradient(135deg, color-mix(in srgb, var(--work-accent-strong) 90%, white 10%), rgba(255,255,255,.96));
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 10px 18px rgba(9,18,40,.07);
  font-size: .81rem;
  letter-spacing: .06em;
}
.coach-work-grid .coach-system-card h3 {
  max-width: 15ch;
  margin-top: 0;
  margin-bottom: .48rem;
  font-size: 1.06rem;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: #15113d;
}
.coach-work-grid .coach-system-card p {
  max-width: 30ch;
  margin-bottom: 0;
  font-size: .92rem;
  line-height: 1.5;
  color: rgba(32,45,68,.82);
}
@media (max-width: 781px) {
  .coach-work-together-section {
    padding: 1.2rem;
  }
  .coach-work-grid {
    grid-template-columns: 1fr;
  }
  .coach-work-grid .coach-system-card {
    min-height: 0;
    padding: 1.05rem 1rem 1rem;
  }
  .coach-work-grid .coach-system-card::after {
    font-size: 4.1rem;
    right: .5rem;
  }
}
.coach-ways-section {
  position: relative;
  overflow: hidden;
  padding: clamp(1.55rem, 3.3vw, 2.35rem);
  background:
    radial-gradient(circle at 10% 14%, rgba(255,255,255,.08), transparent 16%),
    radial-gradient(circle at 88% 18%, rgba(255,159,28,.26), transparent 20%),
    radial-gradient(circle at 18% 84%, rgba(0,184,169,.20), transparent 22%),
    radial-gradient(circle at 82% 76%, rgba(120,92,255,.24), transparent 26%),
    linear-gradient(135deg, #081126 0%, #141f4c 34%, #251a6f 68%, #5f2dff 100%);
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: 0 32px 72px rgba(6,13,31,.24);
}
.coach-ways-section::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background:
    linear-gradient(120deg, rgba(255,255,255,.07), transparent 30%, transparent 70%, rgba(255,255,255,.04)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 92px),
    repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 92px);
  opacity: .42;
  pointer-events: none;
}
.coach-ways-section > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
}
.coach-ways-section .coach-badge,
.coach-ways-section .coach-eyebrow {
  background: rgba(255,255,255,.12);
  color: #fff;
  border-color: rgba(255,255,255,.16);
  box-shadow: 0 12px 24px rgba(6,13,31,.16);
}
.coach-ways-section .wp-block-heading {
  max-width: 12ch;
  color: #fff;
}
.coach-ways-stage {
  position: relative;
  overflow: hidden;
  margin-top: 1.35rem;
  padding: clamp(1.15rem, 2.2vw, 1.55rem);
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.05));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 26px 56px rgba(4,10,26,.24);
  backdrop-filter: blur(18px);
  isolation: isolate;
}
.coach-ways-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,.08), transparent 26%, rgba(255,159,28,.08) 62%, rgba(0,184,169,.09));
  pointer-events: none;
}
.coach-ways-stage .coach-ways-ambient[data-depth] {
  will-change: transform;
  transform: translate3d(0, 0, 0);
}
.coach-ways-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(240px, .82fr) minmax(0, 1.45fr);
  gap: 1.1rem;
  align-items: start;
}
.coach-ways-copy {
  position: relative;
  align-self: start;
  padding: 1.2rem 1.15rem;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(9,16,38,.42), rgba(9,16,38,.20));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.coach-ways-kicker {
  display: inline-block;
  margin-bottom: .82rem;
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.coach-ways-copy p {
  margin: 0 0 1rem;
  max-width: 31ch;
  color: rgba(255,255,255,.86);
}
.coach-ways-signal-bar {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.coach-ways-signal-bar span {
  display: inline-flex;
  align-items: center;
  padding: .44rem .7rem;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.90);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .02em;
}
.coach-ways-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
  margin-top: .95rem;
}
.coach-ways-highlight {
  padding: .95rem;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(8,15,35,.18), rgba(255,255,255,.05));
}
.coach-ways-highlight strong {
  display: block;
  margin-bottom: .25rem;
  color: #fff;
}
.coach-ways-highlight span {
  color: rgba(255,255,255,.76);
  font-size: .92rem;
  line-height: 1.5;
}
.coach-ways-cards {
  position: relative;
  z-index: 1;
  min-width: 0;
  align-self: start;
}
.coach-ways-cards .coach-card-grid {
  margin: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
  grid-auto-rows: 1fr;
}
.coach-ways-section .coach-service-card {
  --ways-accent: var(--color-brand-secondary);
  position: relative;
  display: flex;
  flex-direction: column;
  align-self: start;
  overflow: hidden;
  padding: 1.1rem 1.05rem 1rem;
  min-height: 0;
  height: 100%;
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 18px 38px rgba(4,10,26,.22);
  backdrop-filter: blur(16px);
}
.coach-ways-section .coach-service-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, var(--ways-accent), color-mix(in srgb, var(--ways-accent) 18%, transparent));
}
.coach-ways-section .coach-service-card::after {
  content: "◌";
  position: absolute;
  right: .82rem;
  top: .42rem;
  font-size: 4rem;
  line-height: 1;
  font-weight: 700;
  color: color-mix(in srgb, var(--ways-accent) 42%, white 58%);
  opacity: .24;
  transform: rotate(-10deg);
  pointer-events: none;
}
.coach-ways-section .coach-service-card:nth-child(1) {
  --ways-accent: var(--color-brand-secondary);
}
.coach-ways-section .coach-service-card:nth-child(1)::after {
  content: "◌";
}
.coach-ways-section .coach-service-card:nth-child(2) {
  --ways-accent: var(--color-brand-tertiary);
}
.coach-ways-section .coach-service-card:nth-child(2)::after {
  content: "✦";
}
.coach-ways-section .coach-service-card:nth-child(3) {
  --ways-accent: var(--color-brand-primary);
}
.coach-ways-section .coach-service-card:nth-child(3)::after {
  content: "∞";
}
.coach-ways-section .coach-service-card:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--ways-accent) 44%, white 56%);
  box-shadow: 0 26px 50px rgba(4,10,26,.26);
}
.coach-ways-section .coach-service-card > *,
.coach-ways-section .coach-mini-card > *,
.coach-ways-copy > * {
  position: relative;
  z-index: 1;
}
.coach-ways-section .coach-service-card h3,
.coach-ways-section .coach-service-card p,
.coach-ways-section .coach-service-card li,
.coach-ways-section .coach-mini-card h3,
.coach-ways-section .coach-mini-card p {
  color: #fff;
}
.coach-ways-section .coach-service-card h3 {
  margin-bottom: .5rem;
  max-width: 10ch;
  font-size: 1.08rem;
}
.coach-ways-section .coach-service-card p {
  color: rgba(255,255,255,.84);
}
.coach-ways-section .coach-service-card .coach-icon-dot {
  width: 2.6rem;
  height: 2.6rem;
  margin-bottom: .85rem;
  border-radius: 14px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--ways-accent) 82%, white 18%), rgba(255,255,255,.96));
  color: #101634;
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 12px 22px rgba(4,10,26,.16);
}
.coach-ways-section .coach-service-card ul {
  list-style: none;
  margin: auto 0 0;
  padding: .95rem 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: .48rem;
}
.coach-ways-section .coach-service-card li {
  margin: 0;
  padding: .42rem .66rem;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
  font-size: .77rem;
  line-height: 1.25;
}
.coach-ways-mini-grid {
  position: relative;
  z-index: 1;
  margin-top: clamp(1.95rem, 3.4vw, 2.45rem);
  padding: clamp(1.18rem, 2.2vw, 1.45rem);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
  border-top: 1px solid rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(8,15,35,.16), rgba(255,255,255,.04));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.coach-ways-mini-grid .coach-mini-card {
  position: relative;
  overflow: hidden;
  padding: 1.02rem 1rem 1rem;
  background: linear-gradient(180deg, rgba(9,16,38,.34), rgba(255,255,255,.07));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 16px 34px rgba(4,10,26,.18);
}
.coach-ways-mini-grid .coach-mini-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.06), transparent 55%);
  pointer-events: none;
}
.coach-ways-mini-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.2rem;
  height: 2.2rem;
  margin-bottom: .76rem;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,255,255,.26), rgba(255,255,255,.10));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 10px 22px rgba(4,10,26,.14);
  color: #fff;
  font-size: 1rem;
}
.coach-ways-mini-grid .coach-mini-card p {
  color: rgba(255,255,255,.80);
}
.coach-ways-footnote {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.1rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.12);
}
.coach-ways-footnote p {
  margin: 0;
  color: rgba(255,255,255,.82);
}
.coach-ways-footnote .coach-inline-link {
  color: #fff;
}
.coach-ways-ambient {
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}
.coach-ways-ambient-a {
  top: -60px;
  right: -58px;
  width: 260px;
  height: 260px;
  background: radial-gradient(circle, rgba(255,159,28,.40), transparent 66%);
  filter: blur(8px);
}
.coach-ways-ambient-b {
  left: -72px;
  bottom: -40px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, rgba(0,184,169,.30), transparent 68%);
  filter: blur(10px);
}
.coach-ways-ambient-c {
  left: 34%;
  top: 28%;
  width: 420px;
  height: 420px;
  background: radial-gradient(circle, rgba(255,255,255,.12), transparent 60%);
  mix-blend-mode: screen;
  opacity: .72;
}
@media (max-width: 960px) {
  .coach-ways-grid {
    grid-template-columns: 1fr;
  }
  .coach-ways-cards .coach-card-grid,
  .coach-ways-mini-grid,
  .coach-ways-highlights {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  }
  .coach-ways-copy p {
    max-width: 44ch;
  }
}
@media (max-width: 781px) {
  .coach-ways-section {
    padding: 1.25rem;
  }
  .coach-ways-section .wp-block-heading {
    max-width: 11ch;
  }
  .coach-ways-stage {
    padding: 1rem;
    border-radius: 24px;
  }
  .coach-ways-cards .coach-card-grid,
  .coach-ways-mini-grid {
    grid-template-columns: 1fr;
  }
  .coach-ways-section .coach-service-card,
  .coach-ways-mini-grid .coach-mini-card,
  .coach-ways-copy {
    padding: 1rem;
  }
  .coach-ways-section .coach-service-card::after {
    font-size: 3.3rem;
    right: .7rem;
  }
}
.coach-video-section .wp-block-heading {
  max-width: 16ch;
}
.coach-video-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .9fr);
  gap: clamp(1.2rem, 2.8vw, 2rem);
  align-items: start;
}
.coach-video-stage {
  display: grid;
  gap: .9rem;
}
.coach-video-frame {
  overflow: hidden;
  padding: clamp(.7rem, 1.4vw, .9rem);
  border-radius: 30px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,245,228,.96));
  border: 1px solid rgba(17,24,39,.08);
  box-shadow: 0 18px 40px rgba(12,18,34,.08);
}
.coach-video-frame iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  min-height: 360px;
  border: 0;
  border-radius: 22px;
}
.coach-video-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .8rem;
}
.coach-video-chip {
  display: flex;
  flex-direction: column;
  gap: .28rem;
  padding: .95rem 1rem;
  border-radius: 20px;
  border: 1px solid rgba(17,24,39,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,247,237,.94));
}
.coach-video-chip strong {
  color: var(--coach-text);
  font-size: .96rem;
}
.coach-video-chip span {
  color: var(--coach-muted);
  font-size: .92rem;
  line-height: 1.5;
}
.coach-video-aside {
  display: grid;
  gap: .9rem;
}
.coach-video-note {
  padding: 1.2rem;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,249,240,.96));
  border: 1px solid rgba(17,24,39,.08);
  box-shadow: 0 14px 32px rgba(12,18,34,.06);
}
.coach-video-note-soft {
  background: linear-gradient(180deg, rgba(251,247,222,.98), rgba(255,255,255,.96));
}
.coach-video-note p:last-child {
  margin-bottom: 0;
}
.coach-video-checklist {
  list-style: none;
  margin: .85rem 0 0;
  padding: 0;
  display: grid;
  gap: .5rem;
}
.coach-video-checklist li {
  position: relative;
  margin: 0;
  padding-left: 1.05rem;
}
.coach-video-checklist li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: #b54a22;
  font-weight: 800;
}
@media (max-width: 900px) {
  .coach-video-layout {
    grid-template-columns: 1fr;
  }
  .coach-video-meta {
    grid-template-columns: 1fr;
  }
}

.coach-form-wrap {
  padding: 1.55rem;
  background: linear-gradient(180deg, rgba(255,255,255,.99), rgba(241,245,255,.96));
}
.coach-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  align-items: start;
}
.coach-form-grid > div {
  min-width: 0;
}
.coach-form-grid .full {
  grid-column: 1 / -1;
}
@media (max-width: 720px) {
  .coach-form-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .coach-form-grid .full {
    grid-column: auto;
  }
}
.coach-form-wrap label {
  display: block;
  font-weight: 700;
  margin-bottom: .4rem;
  color: var(--coach-text);
}
.coach-form-wrap input,
.coach-form-wrap textarea,
.coach-form-wrap select {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid rgba(20,32,51,.12);
  border-radius: 16px;
  padding: .9rem 1rem;
  font-size: 1rem;
  background: #fff;
  color: var(--coach-text);
  box-shadow: inset 0 1px 2px rgba(13,21,48,.03);
  transition: border-color .18s ease, box-shadow .18s ease;
}
.coach-form-wrap input:focus,
.coach-form-wrap textarea:focus,
.coach-form-wrap select:focus {
  outline: none;
  border-color: rgba(95,45,255,.42);
  box-shadow: 0 0 0 3px rgba(95,45,255,.10), 0 8px 18px rgba(95,45,255,.06);
}
.coach-form-wrap textarea {
  min-height: 140px;
}
.coach-form-wrap button {
  border: 0;
  background: linear-gradient(135deg, var(--coach-primary), #7b4dff 56%, var(--coach-secondary));
  color: #fff;
  cursor: pointer;
  box-shadow: 0 16px 30px rgba(95,45,255,.20);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.coach-form-wrap button:hover,
.coach-form-wrap button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 22px 38px rgba(95,45,255,.22);
  filter: saturate(1.03);
}
.coach-alert {
  border-radius: 16px;
  padding: .95rem 1rem;
  margin-bottom: 1rem;
  font-weight: 600;
}
.coach-alert.success {
  background: rgba(19,199,184,.12);
  color: #0e7067;
  border: 1px solid rgba(19,199,184,.2);
}
.coach-alert.error {
  background: rgba(255,107,129,.10);
  color: #8d2d3b;
  border: 1px solid rgba(255,107,129,.18);
}
.coach-testimonial-grid blockquote {
  margin: 0;
}
.coach-testimonial-card .coach-rating {
  color: #f5a524;
  letter-spacing: .18em;
  font-size: .95rem;
  margin-bottom: .7rem;
}
.coach-social-proof-section {
  position: relative;
  overflow: hidden;
  margin: 0 calc(50% - 50vw) !important;
  width: 100vw;
  max-width: 100vw !important;
  padding: clamp(3.6rem, 6vw, 5.2rem) 0;
  background: #ffffff;
  border-top: 1px solid rgba(17,27,51,.05);
  border-bottom: 1px solid rgba(17,27,51,.05);
  box-sizing: border-box;
}
.coach-social-proof-section,
.coach-social-proof-section > .wp-block-group__inner-container,
.coach-social-proof-section .coach-social-proof-inner {
  background: #ffffff;
}
.coach-social-proof-section > .wp-block-group__inner-container {
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
  box-sizing: border-box;
}
.coach-social-proof-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: none;
  pointer-events: none;
}
.coach-social-proof-inner {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin: 0 auto;
  box-sizing: border-box;
}
.coach-social-proof-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.2rem;
  align-items: end;
  margin-bottom: clamp(1.4rem, 3vw, 2rem);
}
.coach-social-proof-copy {
  max-width: 42rem;
}
.coach-social-proof-copy .coach-eyebrow {
  background: rgba(17,27,51,.04);
  border-color: rgba(17,27,51,.08);
  color: rgba(17,27,51,.76);
}
.coach-social-proof-copy h2 {
  margin: .75rem 0 .7rem;
  font-size: clamp(2.15rem, 4vw, 3.75rem);
  line-height: .98;
  letter-spacing: -.04em;
  color: #14142b;
}
.coach-social-proof-copy p {
  margin: 0;
  max-width: 35rem;
  font-size: 1rem;
  line-height: 1.7;
  color: rgba(32,45,68,.78);
}
.coach-social-proof-pill {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  gap: .8rem;
  padding: .9rem 1.05rem;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(17,27,51,.08);
  box-shadow: 0 14px 28px rgba(9,18,40,.06);
  color: #171d31;
  white-space: nowrap;
}
.coach-social-proof-pill strong {
  font-size: 1rem;
  line-height: 1;
}
.coach-social-proof-pill span {
  font-size: .84rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(23,29,49,.62);
}
.coach-social-proof-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1.22fr .78fr;
  grid-template-areas:
    "primary secondary"
    "tertiary quaternary";
  align-items: stretch;
}
.coach-social-proof-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 100%;
  padding: clamp(1.2rem, 2.2vw, 1.65rem);
  border-radius: 30px;
  background: #ffffff;
  border: 1px solid rgba(17,27,51,.08);
  box-shadow: none;
  overflow: hidden;
}
.coach-social-proof-card::before {
  content: "“";
  position: absolute;
  right: 1rem;
  top: .45rem;
  font-size: clamp(4rem, 8vw, 6rem);
  line-height: 1;
  color: rgba(17,27,51,.07);
  font-family: Georgia, serif;
}
.coach-social-proof-card:nth-child(1) { grid-area: primary; min-height: 340px; }
.coach-social-proof-card:nth-child(2) { grid-area: secondary; min-height: 250px; }
.coach-social-proof-card:nth-child(3) { grid-area: tertiary; min-height: 220px; }
.coach-social-proof-card:nth-child(4) { grid-area: quaternary; min-height: 220px; }
.coach-social-proof-card .coach-rating {
  margin-bottom: .95rem;
  letter-spacing: .22em;
}
.coach-social-proof-quote {
  margin: 0 0 1.3rem;
  max-width: 42ch;
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  line-height: 1.7;
  color: rgba(17,27,51,.88);
}
.coach-social-proof-card:nth-child(1) .coach-social-proof-quote {
  font-size: clamp(1.1rem, 1.5vw, 1.32rem);
  line-height: 1.72;
}
.coach-social-proof-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .7rem 1rem;
  margin-top: auto;
}
.coach-social-proof-person strong {
  display: block;
  font-size: 1rem;
  color: #171d31;
}
.coach-social-proof-person span {
  display: block;
  margin-top: .2rem;
  font-size: .88rem;
  line-height: 1.45;
  color: rgba(32,45,68,.68);
}
.coach-social-proof-tag {
  display: inline-flex;
  align-items: center;
  padding: .42rem .72rem;
  border-radius: 999px;
  background: #ffffff;
  border: 1px solid rgba(17,27,51,.08);
  color: rgba(17,27,51,.66);
  font-size: .77rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
@media (max-width: 900px) {
  .coach-social-proof-header {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .coach-social-proof-pill {
    justify-self: start;
  }
  .coach-social-proof-grid {
    grid-template-columns: 1fr;
    grid-template-areas: "primary" "secondary" "tertiary" "quaternary";
  }
  .coach-social-proof-card:nth-child(1),
  .coach-social-proof-card:nth-child(2),
  .coach-social-proof-card:nth-child(3),
  .coach-social-proof-card:nth-child(4) {
    min-height: 0;
  }
}
@media (max-width: 600px) {
  .coach-social-proof-section {
    padding: 2.5rem 0;
  }
  .coach-social-proof-card {
    border-radius: 24px;
  }
  .coach-social-proof-pill {
    white-space: normal;
  }
}
.coach-cta-band {
  padding: 1.85rem;
  background:
    radial-gradient(circle at 86% 18%, rgba(255,159,28,.16), transparent 22%),
    radial-gradient(circle at 14% 78%, rgba(0,184,169,.12), transparent 24%),
    linear-gradient(135deg, rgba(95,45,255,.10), rgba(0,184,169,.07)),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(249,250,255,.96));
  border: 1px solid rgba(95,45,255,.14);
  border-radius: var(--coach-radius);
  box-shadow: 0 22px 54px rgba(9,18,40,.08);
}
.coach-stack > * + * {
  margin-top: 1rem;
}
.coach-inline-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--coach-deep);
  background: linear-gradient(135deg, rgba(95,45,255,.10), rgba(0,184,169,.08));
  border: 1px solid rgba(95,45,255,.12);
  box-shadow: 0 10px 22px rgba(95,45,255,.08);
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, filter .2s ease;
}
.coach-inline-link:hover,
.coach-inline-link:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(95,45,255,.10);
  filter: saturate(1.03);
}
.coach-admin-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  margin-top: .5rem;
  color: var(--coach-primary);
  text-decoration: none;
  font-weight: 700;
}
.coach-footer-note {
  text-align: center;
  color: color-mix(in srgb, var(--coach-muted) 84%, white 16%);
  font-size: .95rem;
  margin: 2rem auto 0;
  max-width: 760px;
}
body.coaching-mvp-active footer.wp-block-template-part {
  margin-top: clamp(3.5rem, 7vw, 6rem);
  position: relative;
  color: rgba(255,255,255,.92);
}
body.coaching-mvp-active .coach-site-footer-shell {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,159,28,.18), transparent 28%),
    radial-gradient(circle at 88% 14%, rgba(0,184,169,.16), transparent 26%),
    linear-gradient(180deg, #11192f 0%, #0c1427 100%);
  border-radius: 0;
  box-shadow: 0 -22px 70px rgba(6,13,31,.22);
}
body.coaching-mvp-active .coach-site-footer-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.08), transparent 24%, transparent 76%, rgba(255,255,255,.05));
  pointer-events: none;
}
body.coaching-mvp-active .coach-site-footer-inner {
  width: min(100%, var(--coach-content-max));
  margin: 0 auto;
  padding: clamp(2.75rem, 5vw, 4.25rem) 0 clamp(1.4rem, 3vw, 2rem);
}
body.coaching-mvp-active .coach-site-footer-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .95fr);
  gap: clamp(2rem, 4vw, 4rem);
  align-items: start;
}
body.coaching-mvp-active .coach-site-footer-copy h2 {
  margin: .2rem 0 1rem;
  color: #fff6ef;
  font-size: clamp(2rem, 3.8vw, 3.35rem);
  line-height: .98;
  letter-spacing: -.04em;
  max-width: 10ch;
}
body.coaching-mvp-active .coach-site-footer-copy > p {
  max-width: 58ch;
  color: rgba(244,239,255,.78);
  margin-bottom: 0;
}
body.coaching-mvp-active .coach-site-footer-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem;
  margin-top: 1.4rem;
}
body.coaching-mvp-active .coach-site-footer .coach-inline-link,
body.coaching-mvp-active .coach-site-footer .coach-inline-link.is-primary,
body.coaching-mvp-active .coach-site-footer .coach-inline-link.is-secondary {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.14);
  color: #fff6ef;
  box-shadow: none;
}
body.coaching-mvp-active .coach-site-footer .coach-inline-link:hover,
body.coaching-mvp-active .coach-site-footer .coach-inline-link:focus-visible {
  background: rgba(255,255,255,.14);
  border-color: rgba(255,255,255,.22);
  color: #ffffff;
}
body.coaching-mvp-active .coach-site-footer-links {
  display: grid;
  gap: .4rem;
}
body.coaching-mvp-active .coach-site-footer-link {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: .9rem;
  align-items: baseline;
  padding: .95rem 0;
  border-bottom: 1px solid rgba(255,255,255,.12);
  text-decoration: none;
  color: inherit;
}
body.coaching-mvp-active .coach-site-footer-link:first-child {
  border-top: 1px solid rgba(255,255,255,.12);
}
body.coaching-mvp-active .coach-site-footer-link span:first-child {
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(255,255,255,.42);
}
body.coaching-mvp-active .coach-site-footer-link strong {
  color: #fff6ef;
  font-size: 1.02rem;
  font-weight: 600;
}
body.coaching-mvp-active .coach-site-footer-link em {
  font-style: normal;
  color: rgba(244,239,255,.58);
  font-size: .88rem;
}
body.coaching-mvp-active .coach-site-footer-link i {
  font-style: normal;
  color: rgba(255,255,255,.36);
  transition: transform .2s ease, color .2s ease;
}
body.coaching-mvp-active .coach-site-footer-link:hover strong,
body.coaching-mvp-active .coach-site-footer-link:focus-visible strong {
  color: #ffffff;
}
body.coaching-mvp-active .coach-site-footer-link:hover i,
body.coaching-mvp-active .coach-site-footer-link:focus-visible i {
  transform: translateX(4px);
  color: rgba(255,255,255,.78);
}
body.coaching-mvp-active .coach-site-footer-meta {
  margin-top: clamp(2rem, 4vw, 3rem);
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.10);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .8rem 1rem;
  color: rgba(244,239,255,.58);
  font-size: .86rem;
}
body.coaching-mvp-active .coach-site-footer-meta a {
  color: #fff6ef;
  text-decoration: none;
}
body.coaching-mvp-active .coach-site-footer-meta a:hover,
body.coaching-mvp-active .coach-site-footer-meta a:focus-visible {
  color: #ffffff;
}
.coach-blog-card a,
.coach-blog-card .wp-block-post-excerpt__more-link,
.wp-block-post-excerpt__more-link,
.wp-block-read-more {
  color: var(--coach-primary);
  font-weight: 700;
  text-decoration: none;
}
body.coaching-mvp-active .wp-block-post-template {
  gap: 1.2rem;
}
body.coaching-mvp-active .wp-block-post-template > li,
body.coaching-mvp-active .wp-block-post {
  border-radius: var(--coach-radius);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.92));
  border: 1px solid var(--coach-border);
  box-shadow: var(--coach-shadow-card);
  padding: 1.25rem;
}
body.coaching-mvp-active .wp-block-post-featured-image img {
  border-radius: 18px;
}
body.coaching-mvp-active .wp-block-query-title,
body.coaching-mvp-active .wp-block-post-title a {
  color: var(--coach-text);
  text-decoration: none;
}
body.coaching-mvp-active .wp-block-query-pagination {
  margin-top: 1.2rem;
}
body.coaching-mvp-active .wp-block-query-pagination a {
  color: var(--coach-primary);
  text-decoration: none;
}
@media (max-width: 781px) {
  .coach-hero { padding: 1.5rem; }
  body.coaching-mvp-active header.wp-block-template-part { position: static; }
}

/* Clean / flat redesign pass */
:root {
  --color-brand-primary: #ffd700;
  --color-brand-secondary: #ada402;
  --color-brand-tertiary: #788d04;

  --color-neutral-0: #ffffff;
  --color-neutral-50: #f5f5f5;
  --color-neutral-75: #fbfbfa;
  --color-neutral-100: #fafaf9;
  --color-neutral-200: #f3f4f6;

  --color-ink-900: #111827;
  --color-ink-700: #424b57;
  --color-ink-600: #5f6773;
  --color-ink-400: #9ca3af;

  --color-bg: var(--color-neutral-50);
  --color-surface: var(--color-neutral-0);
  --color-surface-soft: var(--color-neutral-75);
  --color-surface-subtle: var(--color-neutral-100);
  --color-surface-muted: var(--color-neutral-200);

  --color-text: var(--color-ink-900);
  --color-text-muted: var(--color-ink-700);
  --color-text-subtle: var(--color-ink-600);
  --color-border: rgba(17,24,39,.10);
  --color-border-contrast: rgba(255,255,255,.32);

  --color-accent: var(--color-brand-primary);
  --color-accent-alt: var(--color-brand-secondary);
  --color-accent-strong: var(--color-brand-tertiary);

  --color-button-primary-bg: var(--color-brand-secondary);
  --color-button-primary-text: var(--color-neutral-0);
  --color-button-secondary-bg: var(--color-neutral-0);
  --color-button-secondary-hover-bg: var(--color-neutral-200);
  --color-button-secondary-text: var(--color-text);

  --color-badge-bg: var(--color-neutral-50);
  --color-badge-text: var(--color-text);
  --color-chip-bg: var(--color-neutral-200);
  --color-chip-text: var(--color-text);
  --color-icon-bg: var(--color-neutral-200);
  --color-bullet: var(--color-ink-400);

  --coach-primary: var(--color-text);
  --coach-secondary: var(--color-text);
  --coach-accent: var(--color-accent);
  --coach-background: var(--color-bg);
  --coach-surface: var(--color-surface);
  --coach-surface-soft: var(--color-surface-soft);
  --coach-text: var(--color-text);
  --coach-muted: var(--color-text-muted);
  --coach-deep: var(--color-text);
  --coach-deeper: var(--color-text);
  --coach-border: var(--color-border);
  --coach-shadow: none;
  --coach-shadow-lg: none;
  --coach-shadow-card: none;
  --coach-shadow-hover: none;
  --coach-radius: 8px;
  --coach-radius-sm: 6px;
  --coach-spacing: 1.25rem;
}
body.coaching-mvp-active {
  background: var(--coach-background) !important;
  color: var(--coach-text);
}
body.coaching-mvp-active .wp-site-blocks {
  overflow-x: clip;
}
body.coaching-mvp-active header.wp-block-template-part {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  background: rgba(255,255,255,.94) !important;
  border-bottom: 1px solid var(--coach-border);
  box-shadow: none;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content,
body.coaching-mvp-active .wp-block-site-title a,
body.coaching-mvp-active .wp-block-navigation a {
  color: var(--coach-text);
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:hover,
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:focus {
  color: var(--coach-text);
  opacity: .7;
}

.coach-hero,
.coach-section,
.coach-panel,
.coach-service-card,
.coach-testimonial-card,
.coach-stat,
.coach-process-card,
.coach-mini-card,
.coach-faq-card,
.coach-story-card,
.coach-form-wrap,
.coach-system-card,
.coach-blog-card,
.coach-visual-card,
.coach-work-together-section,
.coach-ways-section,
.coach-ways-stage,
.coach-ways-copy,
.coach-ways-mini-grid,
.coach-video-frame,
.coach-cta-band,
.coach-proof-band,
.coach-audience-card,
body.coaching-mvp-active .wp-block-post-template > li,
body.coaching-mvp-active .wp-block-post {
  background: var(--coach-surface) !important;
  border: 1px solid var(--coach-border) !important;
  border-radius: var(--coach-radius) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
.coach-hero::before,
.coach-hero::after,
.coach-section::after,
.coach-proof-band::before,
.coach-audience-card::before,
.coach-audience-card::after,
.coach-work-together-section::before,
.coach-work-grid .coach-system-card::after,
.coach-ways-section::after,
.coach-ways-stage::before,
.coach-ways-section .coach-service-card::after,
.coach-ways-mini-grid .coach-mini-card::before,
.coach-ways-ambient {
  display: none !important;
  content: none !important;
}
.coach-panel:hover,
.coach-service-card:hover,
.coach-testimonial-card:hover,
.coach-stat:hover,
.coach-process-card:hover,
.coach-mini-card:hover,
.coach-faq-card:hover,
.coach-story-card:hover,
.coach-form-wrap:hover,
.coach-system-card:hover,
.coach-blog-card:hover,
.coach-visual-card:hover,
.coach-work-grid .coach-system-card:hover,
.coach-ways-section .coach-service-card:hover,
body.coaching-mvp-active .wp-block-button__link:hover,
body.coaching-mvp-active .wp-block-button__link:focus-visible,
.coach-inline-link:hover,
.coach-inline-link:focus-visible,
.coach-final-cta .coach-inline-link:hover,
.coach-final-cta .coach-inline-link:focus-visible,
.coach-final-cta .coach-inline-link.is-primary:hover,
.coach-final-cta .coach-inline-link.is-primary:focus-visible {
  transform: none !important;
  box-shadow: none !important;
  filter: none !important;
}
.coach-panel,
.coach-service-card,
.coach-testimonial-card,
.coach-stat,
.coach-process-card,
.coach-mini-card,
.coach-faq-card,
.coach-story-card,
.coach-form-wrap,
.coach-system-card,
.coach-blog-card,
.coach-visual-card,
body.coaching-mvp-active .wp-block-button__link,
.coach-inline-link,
.coach-final-cta .coach-inline-link,
.coach-final-cta .coach-inline-link.is-primary {
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, opacity .16s ease !important;
}
.coach-hero,
.coach-final-cta,
.coach-ways-section,
.coach-ways-stage,
.coach-proof-band,
.coach-video-frame {
  color: var(--coach-text) !important;
}
.coach-hero h1,
.coach-hero h2,
.coach-hero h3,
.coach-hero p,
.coach-hero li,
.coach-hero strong,
.coach-hero .coach-quote-card,
.coach-final-cta h2,
.coach-final-cta h3,
.coach-final-cta p,
.coach-final-cta li,
.coach-final-cta .coach-badge,
.coach-ways-section .wp-block-heading,
.coach-ways-section .coach-service-card h3,
.coach-ways-section .coach-service-card p,
.coach-ways-section .coach-service-card li,
.coach-ways-section .coach-mini-card h3,
.coach-ways-section .coach-mini-card p,
.coach-ways-copy p,
.coach-ways-kicker,
.coach-ways-signal-bar span {
  color: var(--coach-text) !important;
}
.coach-section,
.coach-hero,
.coach-work-together-section,
.coach-ways-section,
.coach-final-cta,
.coach-cta-band {
  padding: clamp(1.2rem, 2vw, 1.8rem) !important;
}
.coach-hero {
  background: transparent !important;
  border: 1px solid var(--coach-border) !important;
}
.coach-badge,
.coach-audience-index,
.coach-ways-signal-bar span,
.coach-ways-section .coach-service-card li,
.coach-final-cta .coach-badge,
.coach-proof-list li,
.coach-inline-link,
body.coaching-mvp-active .wp-block-button__link {
  border-radius: 6px !important;
}
body.coaching-mvp-active .wp-block-button__link,
.coach-inline-link,
.coach-final-cta .coach-inline-link,
.coach-final-cta .coach-inline-link.is-primary,
.coach-final-cta .coach-inline-link.is-secondary {
  padding: .78rem 1rem !important;
  background: var(--color-button-secondary-bg) !important;
  color: var(--color-button-secondary-text) !important;
  border: 1px solid var(--coach-border) !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .wp-block-button__link.is-style-outline,
.coach-final-cta .coach-inline-link.is-secondary {
  background: transparent !important;
}
body.coaching-mvp-active .wp-block-button__link:hover,
body.coaching-mvp-active .wp-block-button__link:focus-visible,
.coach-inline-link:hover,
.coach-inline-link:focus-visible,
.coach-final-cta .coach-inline-link:hover,
.coach-final-cta .coach-inline-link:focus-visible {
  background: var(--color-button-secondary-hover-bg) !important;
  border-color: rgba(120,141,4,.2) !important;
  color: var(--color-button-secondary-text) !important;
}
.coach-badge,
.coach-audience-index,
.coach-ways-signal-bar span,
.coach-ways-section .coach-service-card li,
.coach-final-cta .coach-badge {
  background: var(--color-badge-bg) !important;
  border: 1px solid var(--coach-border) !important;
  box-shadow: none !important;
}
.coach-icon-dot,
.coach-audience-icon,
.coach-work-grid .coach-icon-dot,
.coach-ways-section .coach-service-card .coach-icon-dot,
.coach-ways-mini-icon {
  width: 2.25rem !important;
  height: 2.25rem !important;
  border-radius: 6px !important;
  background: var(--color-icon-bg) !important;
  border: 1px solid var(--coach-border) !important;
  box-shadow: none !important;
  color: var(--coach-text) !important;
}
.coach-proof-band {
  position: relative;
  overflow: clip;
  background: var(--color-surface-muted) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
}
.coach-proof-band > * {
  position: relative;
  z-index: 1;
}
.coach-proof-list,
.coach-audience-card ul,
.coach-ways-section .coach-service-card ul {
  gap: .45rem;
}
.coach-audience-card,
.coach-work-grid .coach-system-card,
.coach-ways-section .coach-service-card,
.coach-ways-mini-grid .coach-mini-card,
.coach-faq-item,
.coach-video-note,
.coach-form-wrap,
.coach-cta-band {
  padding: 1rem !important;
}
.coach-audience-card {
  min-height: 0;
}
.coach-audience-head {
  gap: .75rem;
  align-items: center;
}
.coach-audience-card h3,
.coach-work-grid .coach-system-card h3,
.coach-ways-section .coach-service-card h3,
.coach-faq-card h3 {
  letter-spacing: -.01em;
}
.coach-audience-card p,
.coach-audience-card li,
.coach-work-grid .coach-system-card p,
.coach-ways-section .coach-service-card p,
.coach-ways-section .coach-service-card li,
.coach-faq-card p,
.coach-faq-answer,
.coach-section p {
  color: var(--coach-muted) !important;
}
.coach-audience-card li::before {
  width: .34rem;
  height: .34rem;
  top: .5rem;
  border-radius: 999px;
  background: var(--color-bullet) !important;
  box-shadow: none !important;
}
.coach-work-together-section,
.coach-ways-section,
.coach-final-cta,
.coach-video-frame,
.coach-form-wrap,
.coach-cta-band {
  background: var(--coach-surface) !important;
}
.coach-work-grid .coach-system-card::before,
.coach-ways-section .coach-service-card::before {
  height: 1px !important;
  background: rgba(17,24,39,.10) !important;
}
.coach-ways-copy,
.coach-ways-mini-grid .coach-mini-card,
.coach-final-cta .coach-mini-card {
  background: var(--color-surface-subtle) !important;
  border: 1px solid var(--coach-border) !important;
}
.coach-ways-section .coach-service-card ul {
  padding-top: .75rem;
}
.coach-faq-stack,
.coach-faq-card,
.coach-faq-item,
.coach-faq-item summary,
.coach-faq-answer,
.coach-faq-question {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.coach-faq-item,
.coach-faq-card {
  overflow: clip !important;
  border-radius: 8px !important;
}
.coach-faq-item summary {
  gap: .8rem;
  align-items: flex-start;
  overflow-wrap: anywhere;
}
.coach-faq-question,
.coach-faq-answer,
.coach-faq-answer * {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.coach-faq-item summary::after {
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 4px;
  background: var(--color-chip-bg) !important;
  border: 1px solid var(--coach-border);
  color: var(--coach-text) !important;
  font-size: 1rem;
}
.coach-faq-answer {
  margin-top: .8rem;
  padding-top: .8rem;
  border-top: 1px solid var(--coach-border) !important;
}
.coach-video-frame iframe {
  min-height: 0;
}

/* Contrast recovery pass */
:root {
  --coach-muted: var(--color-text-muted);
}
body.coaching-mvp-active .coach-section p,
body.coaching-mvp-active .coach-section li,
.coach-panel p,
.coach-panel li,
.coach-service-card p,
.coach-service-card li,
.coach-testimonial-meta,
.coach-cta-band p,
.coach-audience-card p,
.coach-audience-card li,
.coach-work-grid .coach-system-card p,
.coach-work-grid .coach-system-card li,
.coach-ways-copy p,
.coach-ways-section .coach-service-card p,
.coach-ways-section .coach-service-card li,
.coach-ways-mini-grid .coach-mini-card p,
.coach-faq-card p,
.coach-faq-answer,
.coach-faq-answer p,
.coach-faq-answer li,
.coach-final-cta .coach-mini-card p {
  color: var(--coach-muted) !important;
}
.coach-proof-band,
.coach-proof-band h2,
.coach-proof-band h3,
.coach-proof-band strong,
.coach-proof-band p,
.coach-proof-band li,
.coach-proof-band .coach-badge,
.coach-proof-band .coach-logo-chip,
.coach-proof-band .coach-proof-stack p,
.coach-proof-band > .wp-block-group__inner-container > p,
.coach-proof-band .coach-proof-list,
.coach-proof-band .coach-proof-list li {
  color: var(--coach-text) !important;
}
.coach-proof-band .coach-badge,
.coach-proof-band .coach-logo-chip {
  border-color: var(--coach-border) !important;
}
.coach-faq-question,
.coach-audience-card h3,
.coach-work-grid .coach-system-card h3,
.coach-ways-section .coach-service-card h3,
.coach-ways-mini-grid .coach-mini-card h3,
.coach-final-cta h2,
.coach-final-cta h3,
.coach-cta-band h2,
.coach-cta-band h3 {
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .wp-block-post-featured-image img,
.coach-hero-image-wrap .coach-photo-card,
.coach-hero-image-wrap .coach-photo-card img,
.coach-hero-note {
  border-radius: 8px !important;
  box-shadow: none !important;
}
.coach-hero-note .coach-badge.dark {
  background: var(--color-surface) !important;
  color: var(--coach-text) !important;
  border: 1px solid var(--color-border) !important;
  box-shadow: none !important;
}

/* Typography token layer */
:root {
  --font-family-display: inherit;
  --font-family-body: inherit;

  --font-size-hero: clamp(2.85rem, 6vw, 4.4rem);
  --font-size-section-title: clamp(1.9rem, 3.5vw, 2.35rem);
  --font-size-card-title: 1.12rem;
  --font-size-body: 1rem;
  --font-size-label: .82rem;

  --line-height-hero: 1.04;
  --line-height-section-title: 1.12;
  --line-height-card-title: 1.32;
  --line-height-body: 1.6;
  --line-height-label: 1.25;

  --letter-spacing-display: -.04em;
  --letter-spacing-heading: -.03em;
  --letter-spacing-card-title: -.02em;
  --letter-spacing-label: .01em;
}

/* Typography normalization pass */
body.coaching-mvp-active .coach-hero h1 {
  font-family: var(--font-family-display) !important;
  font-size: var(--font-size-hero) !important;
  line-height: var(--line-height-hero) !important;
  letter-spacing: var(--letter-spacing-display) !important;
}
body.coaching-mvp-active .coach-section > .wp-block-heading,
body.coaching-mvp-active .coach-proof-band h2,
body.coaching-mvp-active .coach-video-section .wp-block-heading,
body.coaching-mvp-active .coach-work-together-section > .wp-block-heading,
body.coaching-mvp-active .coach-final-cta h2,
body.coaching-mvp-active .coach-cta-band h2 {
  font-family: var(--font-family-display) !important;
  font-size: var(--font-size-section-title) !important;
  line-height: var(--line-height-section-title) !important;
  letter-spacing: var(--letter-spacing-heading) !important;
}
body.coaching-mvp-active .coach-audience-card h3,
body.coaching-mvp-active .coach-service-card h3,
body.coaching-mvp-active .coach-work-grid .coach-system-card h3,
body.coaching-mvp-active .coach-ways-section .coach-service-card h3,
body.coaching-mvp-active .coach-ways-mini-grid .coach-mini-card h3,
body.coaching-mvp-active .coach-process-card h3,
body.coaching-mvp-active .coach-faq-card h3,
body.coaching-mvp-active .coach-faq-question,
body.coaching-mvp-active .coach-story-card h3,
body.coaching-mvp-active .coach-testimonial-card h3,
body.coaching-mvp-active .coach-mini-card h3,
body.coaching-mvp-active .coach-blog-card h3,
body.coaching-mvp-active .coach-video-note h3,
body.coaching-mvp-active .coach-form-wrap h3 {
  font-family: var(--font-family-display) !important;
  font-size: var(--font-size-card-title) !important;
  line-height: var(--line-height-card-title) !important;
  letter-spacing: var(--letter-spacing-card-title) !important;
}
body.coaching-mvp-active .coach-section p,
body.coaching-mvp-active .coach-section li,
body.coaching-mvp-active .coach-audience-card p,
body.coaching-mvp-active .coach-audience-card li,
body.coaching-mvp-active .coach-service-card p,
body.coaching-mvp-active .coach-service-card li,
body.coaching-mvp-active .coach-work-grid .coach-system-card p,
body.coaching-mvp-active .coach-work-grid .coach-system-card li,
body.coaching-mvp-active .coach-ways-section .coach-service-card p,
body.coaching-mvp-active .coach-ways-section .coach-service-card li,
body.coaching-mvp-active .coach-ways-mini-grid .coach-mini-card p,
body.coaching-mvp-active .coach-process-card p,
body.coaching-mvp-active .coach-process-card li,
body.coaching-mvp-active .coach-faq-card p,
body.coaching-mvp-active .coach-faq-answer,
body.coaching-mvp-active .coach-faq-answer p,
body.coaching-mvp-active .coach-faq-answer li,
body.coaching-mvp-active .coach-story-card p,
body.coaching-mvp-active .coach-story-card li,
body.coaching-mvp-active .coach-testimonial-card p,
body.coaching-mvp-active .coach-testimonial-meta,
body.coaching-mvp-active .coach-mini-card p,
body.coaching-mvp-active .coach-blog-card p,
body.coaching-mvp-active .coach-video-note p,
body.coaching-mvp-active .coach-form-wrap p {
  font-family: var(--font-family-body) !important;
  font-size: var(--font-size-body) !important;
  line-height: var(--line-height-body) !important;
}
body.coaching-mvp-active .coach-badge,
body.coaching-mvp-active .coach-eyebrow,
body.coaching-mvp-active .coach-audience-index,
body.coaching-mvp-active .coach-logo-chip,
body.coaching-mvp-active .coach-ways-section .coach-service-card li {
  font-family: var(--font-family-body) !important;
  font-size: var(--font-size-label) !important;
  line-height: var(--line-height-label) !important;
  letter-spacing: var(--letter-spacing-label) !important;
}
body.coaching-mvp-active .coach-eyebrow {
  border: 1px solid var(--color-border-contrast) !important;
  box-shadow: none !important;
}
@media (max-width: 960px) {
  .coach-ways-grid,
  .coach-video-layout,
  .coach-form-grid {
    grid-template-columns: 1fr;
  }
}

/* Navbar + hero reference pass */
body.coaching-mvp-active header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(255,255,255,.96) !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
body.coaching-mvp-active header.wp-block-template-part::before,
body.coaching-mvp-active header.wp-block-template-part::after {
  content: none !important;
  display: none !important;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-group.alignwide {
  width: min(100%, var(--coach-content-max)) !important;
  max-width: var(--coach-content-max) !important;
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(1rem, 2vw, 2rem);
  box-sizing: border-box;
  padding: 1rem var(--coach-page-gutter) !important;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-site-title {
  margin: 0;
}
body.coaching-mvp-active .wp-block-site-title a {
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -.03em;
  color: var(--color-text) !important;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-navigation {
  min-width: 0;
  width: 100%;
  justify-content: center !important;
}
body.coaching-mvp-active .wp-block-navigation__container {
  width: 100%;
  gap: clamp(1rem, 1.8vw, 1.7rem) !important;
  align-items: center !important;
  justify-content: center !important;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content {
  position: relative;
  padding: .35rem 0 !important;
  font-size: .96rem;
  font-weight: 600;
  letter-spacing: -.01em;
  color: rgba(17,24,39,.76) !important;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -.8rem;
  height: 2px;
  background: var(--color-brand-primary);
  border-radius: 999px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .18s ease;
}
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:hover,
body.coaching-mvp-active .wp-block-navigation .wp-block-navigation-item__content:focus {
  color: var(--color-text) !important;
  opacity: 1 !important;
}
body.coaching-mvp-active .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,
body.coaching-mvp-active .wp-block-navigation .current_page_item > .wp-block-navigation-item__content,
body.coaching-mvp-active .wp-block-navigation .current-menu-item > a,
body.coaching-mvp-active .wp-block-navigation .current_page_item > a {
  color: var(--color-text) !important;
}
body.coaching-mvp-active .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content::after,
body.coaching-mvp-active .wp-block-navigation .current_page_item > .wp-block-navigation-item__content::after,
body.coaching-mvp-active .wp-block-navigation .current-menu-item > a::after,
body.coaching-mvp-active .wp-block-navigation .current_page_item > a::after {
  transform: scaleX(1);
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons {
  margin: 0 !important;
  justify-self: end;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons .wp-block-button {
  margin: 0;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons .wp-block-button__link {
  padding: .82rem 1.1rem !important;
  border-radius: 999px !important;
  border: 1px solid rgba(17,24,39,.08) !important;
  background: var(--color-brand-primary) !important;
  color: #1d1d1b !important;
  font-weight: 700 !important;
  box-shadow: none !important;
  white-space: nowrap;
}
body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons .wp-block-button__link:hover,
body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons .wp-block-button__link:focus {
  background: var(--color-brand-secondary) !important;
  color: #111 !important;
}

body.coaching-mvp-active .coach-hero {
  position: relative;
  overflow: visible;
  background: linear-gradient(180deg, #fffdf4 0%, #ffffff 72%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 calc(50% - 50vw) !important;
  width: 100vw;
  max-width: 100vw !important;
  padding: clamp(2.35rem, 4.6vw, 4.75rem) 0 !important;
}
body.coaching-mvp-active .coach-hero .wp-block-columns {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  align-items: center !important;
  gap: clamp(1.5rem, 4vw, 4rem) !important;
  box-sizing: border-box;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin: 0 auto !important;
  padding: 0 var(--coach-page-gutter) !important;
}
body.coaching-mvp-active .coach-hero .wp-block-column:first-child {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.coaching-mvp-active .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .95rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-hero h1 {
  max-width: 11ch;
  margin: .9rem 0 0 !important;
  color: var(--color-text) !important;
  font-size: clamp(3.1rem, 6.1vw, 5.35rem) !important;
  line-height: .96 !important;
  letter-spacing: -.055em !important;
}
body.coaching-mvp-active .coach-accent-script {
  color: var(--color-brand-secondary);
  font-style: italic;
}
body.coaching-mvp-active .coach-hero p.has-large-font-size {
  max-width: 35rem;
  margin-top: 1.15rem !important;
  color: var(--color-text-muted) !important;
  font-size: 1.08rem !important;
  line-height: 1.7 !important;
}
body.coaching-mvp-active .coach-hero-actions {
  gap: .85rem !important;
  margin-top: 1.7rem !important;
}
body.coaching-mvp-active .coach-hero .wp-block-button:not(.is-style-outline) > .wp-block-button__link {
  background: var(--color-brand-primary) !important;
  color: #1d1d1b !important;
  border-color: rgba(17,24,39,.08) !important;
}
body.coaching-mvp-active .coach-hero .wp-block-button.is-style-outline > .wp-block-button__link {
  background: #fff !important;
  color: var(--color-text) !important;
  border-color: rgba(17,24,39,.10) !important;
}
body.coaching-mvp-active .coach-hero .wp-block-button__link:hover,
body.coaching-mvp-active .coach-hero .wp-block-button__link:focus-visible {
  background: #faf7df !important;
  border-color: rgba(17,24,39,.16) !important;
  color: var(--color-text) !important;
}
body.coaching-mvp-active .coach-hero .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover,
body.coaching-mvp-active .coach-hero .wp-block-button:not(.is-style-outline) > .wp-block-button__link:focus-visible {
  background: var(--color-brand-secondary) !important;
  color: #111 !important;
}
body.coaching-mvp-active .coach-hero-support {
  max-width: 34rem;
  margin-top: .8rem !important;
  color: var(--color-text-muted) !important;
}
body.coaching-mvp-active .coach-hero-image-wrap {
  position: relative;
  max-width: 33rem;
  margin-left: auto;
  padding: clamp(.8rem, 1.7vw, 1rem);
  background: linear-gradient(180deg, #fbf7de 0%, #f6f0bf 100%);
  border: 1px solid rgba(173,164,2,.18);
  border-radius: 20px;
}
body.coaching-mvp-active .coach-hero-image-wrap .coach-photo-card,
body.coaching-mvp-active .coach-hero-image-wrap .coach-photo-card img {
  border-radius: 14px !important;
}
body.coaching-mvp-active .coach-hero-image-wrap .coach-photo-card {
  border: none !important;
  background: transparent !important;
}
body.coaching-mvp-active .coach-hero-image-wrap .coach-photo-card img {
  display: block;
  width: 100%;
  aspect-ratio: 5 / 6;
  object-fit: cover;
}
body.coaching-mvp-active .coach-hero-note {
  position: absolute;
  left: clamp(.75rem, 1.8vw, 1rem);
  bottom: 1.35rem;
  width: min(20rem, calc(100% - 2rem));
  padding: 1rem 1rem 1.05rem !important;
  border: 1px solid rgba(17,24,39,.08) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.96) !important;
}
body.coaching-mvp-active .coach-hero-note strong {
  display: block;
  margin: .75rem 0 .35rem;
  font-size: 1.02rem;
  line-height: 1.3;
  color: var(--color-text) !important;
}
body.coaching-mvp-active .coach-hero-note p {
  color: var(--color-text-muted) !important;
}
body.coaching-mvp-active .coach-hero-note .coach-badge.dark {
  background: #fff8cd !important;
  border: 1px solid rgba(173,164,2,.24) !important;
  color: #6b6200 !important;
}


body.coaching-mvp-active .coach-experience-band {
  position: relative;
  overflow: hidden;
  margin: 0 calc(50% - 50vw) !important;
  width: 100vw;
  max-width: 100vw !important;
  padding: clamp(1.9rem, 3.6vw, 3.25rem) 0 !important;
  background: linear-gradient(180deg, #f7efd9 0%, #fbf7ed 48%, #ffffff 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-social-proof-section {
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}
body.coaching-mvp-active .coach-social-proof-card {
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-experience-band::after {
  display: none !important;
}
body.coaching-mvp-active .coach-experience-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 14% 18%, rgba(181,74,34,.08), transparent 20%), radial-gradient(circle at 82% 22%, rgba(218,182,85,.18), transparent 22%), radial-gradient(circle at 78% 78%, rgba(64,117,103,.10), transparent 26%);
  pointer-events: none;
}
body.coaching-mvp-active .coach-experience-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  box-sizing: border-box;
  margin: 0 auto !important;
  padding: 0 var(--coach-page-gutter) !important;
}
body.coaching-mvp-active .coach-experience-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(290px, .78fr);
  gap: clamp(1.1rem, 2.6vw, 2.5rem);
  align-items: start;
}
body.coaching-mvp-active .coach-experience-copy {
  max-width: 39rem;
}
body.coaching-mvp-active .coach-experience-band .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-experience-band h2 {
  margin: 0 !important;
  max-width: 12ch;
  color: var(--color-text) !important;
  font-size: clamp(1.8rem, 3.2vw, 3.05rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
}
body.coaching-mvp-active .coach-experience-intro {
  max-width: 32rem;
  margin: .8rem 0 0 !important;
  color: var(--color-text-muted) !important;
  font-size: .95rem !important;
  line-height: 1.55 !important;
}
body.coaching-mvp-active .coach-experience-list {
  display: grid;
  gap: 0;
  margin-top: 1.15rem;
}
body.coaching-mvp-active .coach-experience-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .8rem;
  align-items: start;
  padding: .85rem 0;
  border-top: 1px solid rgba(17,24,39,.09);
}
body.coaching-mvp-active .coach-experience-item:last-child {
  border-bottom: 1px solid rgba(17,24,39,.09);
}
body.coaching-mvp-active .coach-experience-num {
  min-width: 3.4rem;
  color: rgba(181,74,34,.18);
  font-size: clamp(2rem, 3.5vw, 3rem);
  line-height: .9;
  font-weight: 600;
  letter-spacing: -.05em;
}
body.coaching-mvp-active .coach-experience-item h3 {
  margin: .08rem 0 .2rem !important;
  color: var(--color-text) !important;
  font-size: clamp(1rem, 1.5vw, 1.15rem) !important;
  line-height: 1.24 !important;
}
body.coaching-mvp-active .coach-experience-item p {
  margin: 0 !important;
  color: var(--color-text-muted) !important;
  font-size: .95rem !important;
  line-height: 1.52 !important;
}
body.coaching-mvp-active .coach-experience-quote {
  position: relative;
  overflow: hidden;
  align-self: start;
  max-width: 25rem;
  justify-self: end;
  padding: clamp(1rem, 2.2vw, 1.35rem) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, #ffffff 0%, #fff6e6 100%) !important;
  border: 1px solid rgba(181,74,34,.12) !important;
  box-shadow: 0 18px 36px rgba(17,24,39,.07) !important;
  color: var(--color-text) !important;
}
body.coaching-mvp-active .coach-experience-quote::before {
  content: "“";
  position: absolute;
  top: .3rem;
  right: .75rem;
  color: rgba(181,74,34,.10);
  font-size: 4rem;
  line-height: 1;
  font-family: Georgia, serif;
}
body.coaching-mvp-active .coach-experience-quote .coach-badge {
  background: #fff1d2 !important;
  border-color: rgba(181,74,34,.12) !important;
  color: #8d3f1c !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-experience-quote p {
  position: relative;
  z-index: 1;
  margin: .75rem 0 0 !important;
  color: var(--color-text) !important;
  font-size: 1rem !important;
  line-height: 1.58 !important;
}
body.coaching-mvp-active .coach-experience-quote .coach-testimonial-meta {
  margin-top: .8rem !important;
  color: var(--color-text-muted) !important;
  font-size: .92rem !important;
  font-weight: 700;
}
body.coaching-mvp-active .coach-experience-quote .coach-quote-role {
  display: block;
  margin-top: .18rem;
  font-weight: 500;
}

@media (max-width: 960px) {
  body.coaching-mvp-active .coach-experience-layout {
    grid-template-columns: 1fr;
  }
  body.coaching-mvp-active .coach-experience-band h2 {
    max-width: none;
  }
  body.coaching-mvp-active .coach-experience-quote {
    max-width: none;
    justify-self: stretch;
  }
}

@media (max-width: 781px) {
  body.coaching-mvp-active .coach-experience-band {
    padding: 1.6rem 0 !important;
  }
  body.coaching-mvp-active .coach-experience-item {
    grid-template-columns: 1fr;
    gap: .25rem;
  }
  body.coaching-mvp-active .coach-experience-num {
    min-width: 0;
    font-size: 2.25rem;
  }
}

@media (max-width: 960px) {
  body.coaching-mvp-active header.wp-block-template-part .wp-block-group.alignwide {
    grid-template-columns: 1fr !important;
  }
  body.coaching-mvp-active .coach-hero .wp-block-columns {
    grid-template-columns: 1fr !important;
  }
  body.coaching-mvp-active .coach-hero h1 {
    max-width: none;
  }
  body.coaching-mvp-active .coach-hero-image-wrap {
    margin-left: 0;
    max-width: none;
  }
  body.coaching-mvp-active .coach-hero-note {
    position: static;
    width: auto;
    margin-top: 1rem;
  }
}

@media (max-width: 781px) {
  body.coaching-mvp-active .wp-block-navigation__container {
    gap: .85rem !important;
  }
  body.coaching-mvp-active header.wp-block-template-part .wp-block-buttons {
    justify-self: stretch;
  }
  body.coaching-mvp-active .coach-hero {
    border-radius: 0 !important;
    margin: 0 calc(50% - 50vw) !important;
    width: 100vw;
    max-width: 100vw !important;
    padding: 1.5rem 0 1.75rem !important;
  }
  body.coaching-mvp-active .coach-hero-image-wrap {
    border-radius: 16px;
    padding: .7rem;
  }
}


/* Header / hero seam hard-fix */
body.coaching-mvp-active header.wp-block-template-part,
body.coaching-mvp-active header.wp-block-template-part > .wp-block-group,
body.coaching-mvp-active header.wp-block-template-part > .wp-block-group > .wp-block-group,
body.coaching-mvp-active header.wp-block-template-part > .wp-block-group > .wp-block-group > .wp-block-group {
  background: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}
body.coaching-mvp-active header.wp-block-template-part {
  margin-bottom: -6px !important;
}
body.coaching-mvp-active header.wp-block-template-part > .wp-block-group.alignfull,
body.coaching-mvp-active header.wp-block-template-part .wp-block-group.has-global-padding.is-layout-constrained,
body.coaching-mvp-active header.wp-block-template-part .wp-block-group.alignwide,
body.coaching-mvp-active .wp-site-blocks {
  background: #ffffff !important;
}
body.coaching-mvp-active.page main,
body.coaching-mvp-active.page main > .wp-block-group.alignfull.has-global-padding,
body.coaching-mvp-active.page .entry-content.alignfull.wp-block-post-content.has-global-padding {
  background: #fffdf4 !important;
}
body.coaching-mvp-active .coach-hero {
  position: relative;
  z-index: 1;
  margin-top: -6px !important;
  padding-top: calc(clamp(2.35rem, 4.6vw, 4.75rem) + 6px) !important;
}
@media (max-width: 781px) {
  body.coaching-mvp-active .coach-hero {
    margin-top: -6px !important;
    padding-top: calc(1.5rem + 6px) !important;
  }
}


/* Editorial refresh for mid-page sections: remove card/grid feel */
body.coaching-mvp-active .coach-video-band,
body.coaching-mvp-active .coach-proof-band,
body.coaching-mvp-active .coach-ways-band {
  position: relative;
  overflow: hidden;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: clamp(2.2rem, 4.6vw, 4rem) 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
body.coaching-mvp-active .coach-video-band {
  background: linear-gradient(180deg, #fffdf4 0%, #f7efe6 100%) !important;
}
body.coaching-mvp-active .coach-proof-band {
  background: linear-gradient(180deg, #211813 0%, #2b201a 100%) !important;
}
body.coaching-mvp-active .coach-ways-band {
  background: #ffffff !important;
  border-top: 1px solid rgba(17,27,51,.05) !important;
  border-bottom: 1px solid rgba(17,27,51,.05) !important;
}
body.coaching-mvp-active .coach-video-band::after,
body.coaching-mvp-active .coach-ways-band::after,
body.coaching-mvp-active .coach-proof-band::after,
body.coaching-mvp-active .coach-proof-band::before {
  display: none !important;
}
body.coaching-mvp-active .coach-video-band > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-proof-band > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-ways-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin: 0 auto !important;
  padding: 0 var(--coach-page-gutter) !important;
  box-sizing: border-box;
}
body.coaching-mvp-active .coach-faq-band,
body.coaching-mvp-active .coach-insights-band {
  position: relative;
  overflow: hidden;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: clamp(2.2rem, 4.6vw, 4rem) 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-top: 1px solid rgba(17,27,51,.05) !important;
  border-bottom: 1px solid rgba(17,27,51,.05) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
body.coaching-mvp-active .coach-faq-band::after,
body.coaching-mvp-active .coach-insights-band::after {
  display: none !important;
  content: none !important;
}
body.coaching-mvp-active .coach-faq-band > .wp-block-group__inner-container,
body.coaching-mvp-active .coach-insights-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin: 0 auto !important;
  padding: 0 var(--coach-page-gutter) !important;
  box-sizing: border-box;
}
body.coaching-mvp-active .coach-faq-band > .wp-block-group__inner-container > .wp-block-heading,
body.coaching-mvp-active .coach-insights-band > .wp-block-group__inner-container > .wp-block-heading {
  width: min(100%, 34rem);
  max-width: 34rem;
  margin: 0 0 .85rem !important;
  text-align: left !important;
}
body.coaching-mvp-active .coach-faq-band > .wp-block-group__inner-container > .coach-eyebrow,
body.coaching-mvp-active .coach-insights-band > .wp-block-group__inner-container > .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-stack {
  gap: 0 !important;
  margin-top: clamp(1.35rem, 2.6vw, 1.8rem);
}
body.coaching-mvp-active .coach-faq-band .coach-faq-item {
  padding: 1.2rem 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--coach-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-item:last-child {
  border-bottom: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-item summary {
  align-items: center;
  gap: 1rem;
  padding: 0;
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-question {
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-item summary::after {
  width: 1.85rem;
  height: 1.85rem;
  border-radius: 6px;
  background: color-mix(in srgb, var(--color-brand-primary) 22%, #ffffff 78%) !important;
  border: 1px solid color-mix(in srgb, var(--color-brand-tertiary) 22%, #ffffff 78%) !important;
  color: color-mix(in srgb, var(--color-brand-tertiary) 78%, #211813 22%) !important;
  font-size: 1.05rem;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-answer {
  margin-top: .9rem;
  padding: .9rem 0 0;
  border-top: 1px solid rgba(17,24,39,.08) !important;
  color: var(--color-text-muted) !important;
}
body.coaching-mvp-active .coach-faq-band .coach-faq-answer p,
body.coaching-mvp-active .coach-faq-band .coach-faq-answer li {
  color: var(--color-text-muted) !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insights-list {
  display: grid;
  gap: 0 !important;
  margin-top: clamp(1.35rem, 2.6vw, 1.8rem);
}
body.coaching-mvp-active .coach-insights-band .coach-insight-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1.4rem;
  padding: 1.25rem 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--coach-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-item:last-child {
  border-bottom: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-content {
  max-width: 44rem;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-meta {
  margin: 0 0 .45rem !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-content h3 {
  margin: 0 !important;
  font-size: clamp(1.18rem, 2vw, 1.55rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-content h3 a {
  color: var(--coach-text) !important;
  text-decoration: none !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-content h3 a:hover,
body.coaching-mvp-active .coach-insights-band .coach-insight-content h3 a:focus-visible {
  color: var(--color-brand-tertiary) !important;
}
body.coaching-mvp-active .coach-insights-band .coach-insight-content p {
  margin: .7rem 0 0 !important;
  max-width: 38rem;
  color: var(--color-text-muted) !important;
}
body.coaching-mvp-active .coach-insights-band .coach-inline-link,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-primary,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-secondary {
  align-self: center;
  justify-self: end;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-insights-band .coach-inline-link::after,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-primary::after,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-secondary::after {
  content: '→';
  margin-left: .45rem;
}
body.coaching-mvp-active .coach-insights-band .coach-inline-link:hover,
body.coaching-mvp-active .coach-insights-band .coach-inline-link:focus-visible,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-primary:hover,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-primary:focus-visible,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-secondary:hover,
body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-secondary:focus-visible {
  transform: none !important;
  filter: none !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--color-brand-tertiary) !important;
}
@media (max-width: 720px) {
  body.coaching-mvp-active .coach-insights-band .coach-insight-item {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: .85rem;
  }
  body.coaching-mvp-active .coach-insights-band .coach-inline-link,
  body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-primary,
  body.coaching-mvp-active .coach-insights-band .coach-inline-link.is-secondary {
    justify-self: start;
  }
}
body.coaching-mvp-active .coach-book-band {
  position: relative;
  overflow: hidden;
  width: 100vw !important;
  min-width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: clamp(2.2rem, 4.6vw, 4rem) 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-top: 1px solid rgba(17,27,51,.05) !important;
  border-bottom: 1px solid rgba(17,27,51,.05) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-book-band::after {
  content: none !important;
}
body.coaching-mvp-active .coach-book-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin: 0 auto !important;
  padding: 0 var(--coach-page-gutter) !important;
  box-sizing: border-box;
}
body.coaching-mvp-active .coach-book-band > .wp-block-group__inner-container > .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-book-band > .wp-block-group__inner-container > .wp-block-heading {
  width: min(100%, 34rem);
  max-width: 34rem;
  margin: 0 0 .85rem !important;
  text-align: left !important;
}
body.coaching-mvp-active .coach-book-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(320px, .96fr);
  gap: clamp(1.35rem, 2.8vw, 2.5rem);
  align-items: start;
  margin-top: clamp(1.35rem, 2.6vw, 1.8rem);
}
body.coaching-mvp-active .coach-book-copy {
  display: grid;
  gap: 1rem;
  max-width: 42rem;
}
body.coaching-mvp-active .coach-book-lead {
  margin: 0 !important;
  font-size: clamp(1.04rem, 1.5vw, 1.18rem) !important;
  line-height: 1.72 !important;
  color: rgba(33,24,19,.82) !important;
}
body.coaching-mvp-active .coach-book-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
body.coaching-mvp-active .coach-book-band .coach-inline-link,
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-primary,
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .78rem 1rem;
  border-radius: 6px;
  border: 1px solid rgba(17,24,39,.10);
  text-decoration: none;
  box-shadow: none;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, opacity .16s ease;
}
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-primary {
  background: var(--color-brand-primary) !important;
  border-color: rgba(17,24,39,.08) !important;
  color: #1d1d1b !important;
}
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-secondary {
  background: #fff !important;
  border-color: rgba(17,24,39,.10) !important;
  color: var(--color-text) !important;
}
body.coaching-mvp-active .coach-book-band .coach-inline-link:hover,
body.coaching-mvp-active .coach-book-band .coach-inline-link:focus-visible {
  background: #faf7df !important;
  border-color: rgba(17,24,39,.16) !important;
  color: var(--color-text) !important;
  transform: none !important;
  box-shadow: none !important;
  filter: none !important;
}
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-primary:hover,
body.coaching-mvp-active .coach-book-band .coach-inline-link.is-primary:focus-visible {
  background: var(--color-brand-secondary) !important;
  border-color: var(--color-brand-secondary) !important;
  color: #111 !important;
}
body.coaching-mvp-active .coach-book-steps {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-book-step {
  display: grid;
  grid-template-columns: minmax(54px, 72px) minmax(0, 1fr);
  gap: .95rem 1.1rem;
  align-items: start;
  padding: 1rem 0;
  border-bottom: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-book-step-num {
  color: #b54a22 !important;
  font-size: 1.45rem;
  line-height: 1;
  letter-spacing: -.03em;
}
body.coaching-mvp-active .coach-book-step strong {
  display: block;
  margin-bottom: .35rem;
  color: #211813 !important;
}
body.coaching-mvp-active .coach-book-step p {
  margin: 0 !important;
  color: rgba(33,24,19,.74) !important;
}
@media (max-width: 960px) {
  body.coaching-mvp-active .coach-book-editorial {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 781px) {
  body.coaching-mvp-active .coach-book-actions {
    flex-direction: column;
    align-items: stretch;
  }
  body.coaching-mvp-active .coach-book-actions .coach-inline-link,
  body.coaching-mvp-active .coach-book-actions .coach-inline-link.is-primary,
  body.coaching-mvp-active .coach-book-actions .coach-inline-link.is-secondary {
    justify-content: center;
    text-align: center;
  }
}
body.coaching-mvp-active .coach-ways-band > .wp-block-group__inner-container > .wp-block-heading {
  max-width: 24ch;
  margin: 0 0 .85rem !important;
  text-align: left !important;
}
body.coaching-mvp-active .coach-ways-band > .wp-block-group__inner-container > .coach-eyebrow {
  margin-bottom: .75rem !important;
}
body.coaching-mvp-active .coach-video-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(320px, .96fr);
  gap: clamp(1.6rem, 3vw, 3.1rem);
  align-items: start;
}
body.coaching-mvp-active .coach-video-band > .wp-block-group__inner-container > .wp-block-heading {
  width: min(100%, 38rem);
  max-width: 38rem;
  margin: 0 0 .8rem !important;
  text-align: left !important;
  margin-right: auto !important;
}
body.coaching-mvp-active .coach-video-band > .wp-block-group__inner-container > p:not(.coach-eyebrow) {
  width: min(100%, 46rem);
  max-width: 46rem;
  margin: 0 0 clamp(1.45rem, 3vw, 2.2rem) !important;
  text-align: left !important;
  color: rgba(33,24,19,.78);
}
body.coaching-mvp-active .coach-video-main,
body.coaching-mvp-active .coach-video-copy,
body.coaching-mvp-active .coach-ways-editorial,
body.coaching-mvp-active .coach-ways-intro,
body.coaching-mvp-active .coach-proof-editorial {
  display: grid;
  gap: 1rem;
}
body.coaching-mvp-active .coach-video-frame-clean {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.coaching-mvp-active .coach-video-inline-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem 1rem;
}
body.coaching-mvp-active .coach-video-inline-meta span,
body.coaching-mvp-active .coach-service-flow-meta span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
}
body.coaching-mvp-active .coach-video-inline-meta span {
  color: rgba(33,24,19,.74);
}
body.coaching-mvp-active .coach-video-kicker,
body.coaching-mvp-active .coach-proof-num,
body.coaching-mvp-active .coach-service-flow-num {
  font-size: .8rem;
  letter-spacing: .16em;
  text-transform: uppercase;
}
body.coaching-mvp-active .coach-video-copy h3,
body.coaching-mvp-active .coach-proof-column h3,
body.coaching-mvp-active .coach-service-flow-main h3 {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing: -.02em;
}
body.coaching-mvp-active .coach-video-copy {
  gap: .85rem;
}
body.coaching-mvp-active .coach-video-copy h3 {
  font-size: clamp(1.45rem, 2.5vw, 1.9rem);
  line-height: 1.18;
  max-width: 18ch;
}
body.coaching-mvp-active .coach-editorial-list {
  counter-reset: coach-editorial;
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: .95rem;
}
body.coaching-mvp-active .coach-editorial-list li {
  counter-increment: coach-editorial;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 1rem;
  row-gap: .2rem;
  padding-top: .95rem;
  border-top: 1px solid rgba(33,24,19,.10);
}
body.coaching-mvp-active .coach-editorial-list li::before {
  content: counter(coach-editorial, decimal-leading-zero);
  grid-row: 1 / span 2;
  color: var(--coach-primary);
  font-size: .82rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  padding-top: .15rem;
}
body.coaching-mvp-active .coach-editorial-list li strong,
body.coaching-mvp-active .coach-editorial-list li span {
  grid-column: 2;
}
body.coaching-mvp-active .coach-editorial-list li span,
body.coaching-mvp-active .coach-video-note-inline,
body.coaching-mvp-active .coach-proof-intro p,
body.coaching-mvp-active .coach-proof-fit,
body.coaching-mvp-active .coach-service-flow-main p,
body.coaching-mvp-active .coach-ways-intro p,
body.coaching-mvp-active .coach-ways-footer-clean p {
  color: rgba(33,24,19,.76);
}
body.coaching-mvp-active .coach-proof-editorial {
  gap: 1.35rem;
}
body.coaching-mvp-active .coach-proof-lead {
  max-width: 52rem;
  font-size: clamp(1.05rem, 1.9vw, 1.25rem);
  line-height: 1.7;
  color: rgba(255,255,255,.90) !important;
}
body.coaching-mvp-active .coach-proof-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(255,255,255,.16);
}
body.coaching-mvp-active .coach-proof-column {
  display: grid;
  gap: .6rem;
}
body.coaching-mvp-active .coach-proof-column p,
body.coaching-mvp-active .coach-proof-fit {
  color: rgba(255,255,255,.78) !important;
}
body.coaching-mvp-active .coach-proof-num {
  color: rgba(255,255,255,.56);
}
body.coaching-mvp-active .coach-proof-inline-row {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
  gap: 1rem 1.5rem;
  align-items: center;
  padding-top: 1rem;
  border-top: 1px solid rgba(255,255,255,.16);
}
body.coaching-mvp-active .coach-proof-stats {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  justify-content: flex-start;
}
body.coaching-mvp-active .coach-proof-stats span {
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  padding: .55rem .8rem;
  color: #fff;
}
body.coaching-mvp-active .coach-proof-band h2,
body.coaching-mvp-active .coach-proof-band h3,
body.coaching-mvp-active .coach-proof-band strong {
  color: #f7f2ee !important;
}
body.coaching-mvp-active .coach-proof-band p,
body.coaching-mvp-active .coach-proof-band li {
  color: rgba(247, 242, 238, .82) !important;
}
body.coaching-mvp-active .coach-proof-band .coach-eyebrow {
  color: #d58b67 !important;
}
body.coaching-mvp-active .coach-proof-band .coach-proof-lead {
  color: rgba(255,255,255,.92) !important;
}
body.coaching-mvp-active .coach-proof-band .coach-proof-num {
  color: rgba(255,255,255,.58) !important;
}
body.coaching-mvp-active .coach-proof-band .coach-proof-fit strong,
body.coaching-mvp-active .coach-proof-band .coach-proof-column h3,
body.coaching-mvp-active .coach-proof-band .coach-proof-stats span {
  color: #fff !important;
}
body.coaching-mvp-active .coach-ways-editorial {
  gap: 1.35rem;
}
body.coaching-mvp-active .coach-ways-intro {
  max-width: 44rem;
  margin: 0;
}
body.coaching-mvp-active .coach-ways-kicker {
  display: block;
  max-width: 40rem;
}
body.coaching-mvp-active .coach-services-flow {
  display: grid;
  gap: 0;
}
body.coaching-mvp-active .coach-service-flow-item {
  display: grid;
  grid-template-columns: minmax(60px, 88px) minmax(0, 1fr) minmax(180px, 220px);
  gap: 1rem 1.35rem;
  align-items: start;
  padding: 1.35rem 0;
  border-top: 1px solid rgba(33,24,19,.10);
}
body.coaching-mvp-active .coach-service-flow-item:last-child {
  border-bottom: 1px solid rgba(33,24,19,.10);
}
body.coaching-mvp-active .coach-service-flow-num {
  color: color-mix(in srgb, var(--color-brand-secondary) 72%, #211813 28%);
  font-size: 1.65rem;
  letter-spacing: -.03em;
}
body.coaching-mvp-active .coach-service-flow-main {
  display: grid;
  gap: .55rem;
}
body.coaching-mvp-active .coach-service-flow-main h3 {
  font-size: clamp(1.35rem, 2vw, 1.7rem);
  color: #211813;
}
body.coaching-mvp-active .coach-service-flow-main p {
  margin: 0;
}
body.coaching-mvp-active .coach-service-flow-meta {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .85rem;
  margin-top: .2rem;
}
body.coaching-mvp-active .coach-service-flow-meta span {
  color: color-mix(in srgb, var(--color-brand-tertiary) 78%, #211813 22%);
}
body.coaching-mvp-active .coach-service-flow-side {
  display: flex;
  justify-content: flex-end;
  padding-top: .2rem;
}
body.coaching-mvp-active .coach-service-flow-side span {
  color: rgba(33,24,19,.58);
  font-size: .82rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-align: right;
}
body.coaching-mvp-active .coach-ways-footer-clean {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .75rem 1rem;
  padding-top: .35rem;
}
body.coaching-mvp-active .coach-ways-footer-clean p {
  margin: 0;
}
body.coaching-mvp-active .coach-ready-band {
  position: relative;
  isolation: isolate;
  margin-top: clamp(2rem, 4vw, 3.4rem);
  padding: clamp(2.8rem, 5vw, 4.2rem) 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.coaching-mvp-active .coach-ready-band::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 215, 0, .18), transparent 28%),
    radial-gradient(circle at 84% 20%, rgba(173, 164, 2, .16), transparent 24%),
    linear-gradient(180deg, #fffdf6 0%, #f6f0da 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), inset 0 -1px 0 rgba(120,141,4,.16);
  z-index: -2;
}
body.coaching-mvp-active .coach-ready-band::after {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: linear-gradient(135deg, rgba(255,215,0,.06), rgba(120,141,4,.08));
  z-index: -1;
}
body.coaching-mvp-active .coach-ready-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
}
body.coaching-mvp-active .coach-ready-band .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-ready-band > .wp-block-group__inner-container > .wp-block-heading {
  width: min(100%, 24ch);
  max-width: 24ch;
  margin: 0 0 .85rem !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
  color: #211813 !important;
}
body.coaching-mvp-active .coach-ready-editorial {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, .98fr);
  gap: clamp(1.35rem, 2.8vw, 2.5rem);
  align-items: start;
}
body.coaching-mvp-active .coach-ready-copy {
  display: grid;
  gap: 1rem;
  max-width: 44rem;
}
body.coaching-mvp-active .coach-ready-lead {
  margin: 0;
  font-size: clamp(1.04rem, 1.5vw, 1.18rem);
  line-height: 1.72;
  color: rgba(33,24,19,.82) !important;
}
body.coaching-mvp-active .coach-ready-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
}
body.coaching-mvp-active .coach-ready-band .coach-inline-link,
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-primary,
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .78rem 1rem;
  border-radius: 6px;
  border: 1px solid rgba(17,24,39,.10);
  text-decoration: none;
  box-shadow: none;
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, opacity .16s ease;
}
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-primary {
  background: var(--color-brand-primary) !important;
  border-color: rgba(17,24,39,.08) !important;
  color: #1d1d1b !important;
}
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-secondary {
  background: #fff !important;
  border-color: rgba(17,24,39,.10) !important;
  color: var(--color-text) !important;
}
body.coaching-mvp-active .coach-ready-band .coach-inline-link:hover,
body.coaching-mvp-active .coach-ready-band .coach-inline-link:focus-visible {
  background: #faf7df !important;
  border-color: rgba(17,24,39,.16) !important;
  color: var(--color-text) !important;
  transform: none;
  box-shadow: none;
  filter: none;
}
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-primary:hover,
body.coaching-mvp-active .coach-ready-band .coach-inline-link.is-primary:focus-visible {
  background: var(--color-brand-secondary) !important;
  border-color: var(--color-brand-secondary) !important;
  color: #111 !important;
}
body.coaching-mvp-active .coach-ready-steps {
  display: grid;
  gap: 0;
  border-top: 1px solid rgba(120,141,4,.18);
}
body.coaching-mvp-active .coach-ready-step {
  display: grid;
  grid-template-columns: minmax(54px, 72px) minmax(0, 1fr);
  gap: .95rem 1.1rem;
  align-items: start;
  padding: 1rem 0;
  border-bottom: 1px solid rgba(120,141,4,.18);
}
body.coaching-mvp-active .coach-ready-step-num {
  color: color-mix(in srgb, var(--color-brand-tertiary) 78%, #211813 22%);
  font-size: 1.45rem;
  line-height: 1;
  letter-spacing: -.03em;
}
body.coaching-mvp-active .coach-ready-step strong {
  display: block;
  margin-bottom: .35rem;
  color: #211813 !important;
}
body.coaching-mvp-active .coach-ready-step p {
  margin: 0;
  color: rgba(33,24,19,.74) !important;
}
@media (max-width: 960px) {
  body.coaching-mvp-active .coach-ready-editorial {
    grid-template-columns: 1fr;
  }
}
body.coaching-mvp-active .coach-services-page > .wp-block-group__inner-container {
  padding-top: clamp(2rem, 4.5vw, 3.6rem) !important;
  padding-bottom: clamp(1.5rem, 3vw, 2.4rem) !important;
}
body.coaching-mvp-active .coach-services-page {
  position: relative;
}
body.coaching-mvp-active .coach-services-page .coach-badge:first-child {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin: 0 0 1rem !important;
  padding: .48rem .78rem !important;
  background: var(--color-badge-bg) !important;
  border: 1px solid var(--coach-border) !important;
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-services-page h1.wp-block-heading {
  margin: 0 !important;
  max-width: 11ch;
  color: var(--coach-text) !important;
  font-size: clamp(3.1rem, 7vw, 5.1rem) !important;
  line-height: .96 !important;
  letter-spacing: -.05em !important;
}
body.coaching-mvp-active .coach-services-page > .wp-block-group__inner-container > p.has-large-font-size {
  max-width: 42rem;
  margin: 1rem 0 0 !important;
  font-size: clamp(1.08rem, 1.9vw, 1.24rem) !important;
  line-height: 1.72 !important;
  color: var(--coach-muted) !important;
}
body.coaching-mvp-active .coach-services-page .coach-card-grid {
  margin-top: clamp(1.7rem, 3.5vw, 2.6rem) !important;
  gap: 1rem !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card {
  display: grid;
  grid-template-rows: auto auto auto 1fr;
  align-content: start;
  gap: .95rem;
  min-height: 100%;
  padding: clamp(1.2rem, 2.4vw, 1.6rem) !important;
  border-radius: 8px !important;
  background: var(--coach-surface) !important;
  border: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card .coach-icon-dot {
  width: 2.4rem !important;
  height: 2.4rem !important;
  border-radius: 6px !important;
  background: var(--color-icon-bg) !important;
  border: 1px solid var(--coach-border) !important;
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card h3 {
  margin: 0 !important;
  font-size: clamp(1.14rem, 1.8vw, 1.34rem) !important;
  line-height: 1.18 !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card p {
  margin: 0 !important;
  color: var(--coach-muted) !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card ul {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin: .1rem 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card li {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: .45rem .72rem !important;
  border: 1px solid var(--coach-border) !important;
  border-radius: 6px !important;
  background: var(--color-badge-bg) !important;
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-services-page .coach-service-card li::before {
  display: none !important;
}
body.coaching-mvp-active .coach-services-page .coach-section {
  margin-top: clamp(1.8rem, 3.8vw, 3rem) !important;
  padding: clamp(1.45rem, 3.2vw, 2.15rem) !important;
  border-radius: 8px !important;
  background: var(--coach-surface) !important;
  border: 1px solid var(--coach-border) !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  position: relative;
  overflow: hidden;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(247,244,235,.82), rgba(255,255,255,.96));
  pointer-events: none;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section > * {
  position: relative;
  z-index: 1;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel {
  min-height: 100%;
  padding: clamp(1.15rem, 2.4vw, 1.45rem) !important;
  border-radius: 8px !important;
  background: rgba(255,255,255,.9) !important;
  border: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel h3,
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel p {
  margin: 0 !important;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel h3 {
  margin-top: .8rem !important;
  font-size: clamp(1.24rem, 2vw, 1.5rem) !important;
  line-height: 1.16 !important;
  color: var(--coach-text) !important;
}
body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel p {
  margin-top: .72rem !important;
  color: var(--coach-muted) !important;
}
body.coaching-mvp-active .coach-services-page .coach-process-grid.coach-section {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
body.coaching-mvp-active .coach-services-page .coach-process-card {
  min-height: 100%;
  padding: clamp(1.15rem, 2.3vw, 1.45rem) !important;
  border-radius: 8px !important;
  background: var(--coach-surface) !important;
  border: 1px solid var(--coach-border) !important;
}
body.coaching-mvp-active .coach-services-page .coach-process-card .coach-icon-dot {
  width: 2.5rem !important;
  height: 2.5rem !important;
  margin-bottom: 1rem;
  border-radius: 6px !important;
}
body.coaching-mvp-active .coach-services-page .coach-process-card h3,
body.coaching-mvp-active .coach-services-page .coach-process-card p {
  margin: 0 !important;
}
body.coaching-mvp-active .coach-services-page .coach-process-card p {
  margin-top: .72rem !important;
  color: var(--coach-muted) !important;
}
body.coaching-mvp-active .coach-services-page .coach-cta-band.coach-section {
  position: relative;
  overflow: hidden;
  padding: clamp(1.5rem, 3vw, 2.2rem) !important;
  background: linear-gradient(180deg, rgba(247,244,235,.92), rgba(255,255,255,.98)) !important;
}
body.coaching-mvp-active .coach-services-page .coach-cta-band.coach-section h3,
body.coaching-mvp-active .coach-services-page .coach-cta-band.coach-section p {
  margin: 0 !important;
}
body.coaching-mvp-active .coach-services-page .coach-cta-band.coach-section p + p {
  margin-top: .85rem !important;
}
body.coaching-mvp-active .coach-services-page .coach-cta-band .coach-inline-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
}
@media (max-width: 960px) {
  body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section,
  body.coaching-mvp-active .coach-services-page .coach-process-grid.coach-section {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 781px) {
  body.coaching-mvp-active .coach-services-page > .wp-block-group__inner-container {
    padding-top: clamp(1.5rem, 5vw, 2.2rem) !important;
  }
  body.coaching-mvp-active .coach-services-page h1.wp-block-heading {
    max-width: 12ch;
    font-size: clamp(2.45rem, 11vw, 3.35rem) !important;
  }
  body.coaching-mvp-active .coach-services-page .coach-service-card,
  body.coaching-mvp-active .coach-services-page .coach-grid-2.coach-section .coach-panel,
  body.coaching-mvp-active .coach-services-page .coach-process-card,
  body.coaching-mvp-active .coach-services-page .coach-cta-band.coach-section {
    padding: 1.05rem !important;
  }
}
body.coaching-mvp-active .coach-about-band {
  position: relative;
  isolation: isolate;
  margin-top: clamp(2rem, 4vw, 3.4rem);
  padding: clamp(2.7rem, 5vw, 4rem) 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.coaching-mvp-active .coach-about-band::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background: #ffffff;
  box-shadow: none;
  z-index: -2;
}
body.coaching-mvp-active .coach-about-band::after {
  content: none;
}
body.coaching-mvp-active .coach-about-band > .wp-block-group__inner-container {
  position: relative;
  z-index: 1;
  width: min(100%, var(--coach-content-max));
  max-width: var(--coach-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--coach-page-gutter) !important;
  padding-right: var(--coach-page-gutter) !important;
}
body.coaching-mvp-active .coach-about-band .coach-eyebrow {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 0 .75rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #b54a22 !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
}
body.coaching-mvp-active .coach-about-band > .wp-block-group__inner-container > .wp-block-heading {
  width: min(100%, 42rem);
  max-width: 42rem;
  margin: 0 0 1rem !important;
  text-align: left !important;
  margin-right: auto !important;
  color: #211813 !important;
}
body.coaching-mvp-active .coach-about-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  gap: clamp(1.5rem, 3vw, 2.7rem);
  align-items: start;
  margin-top: .45rem;
}
body.coaching-mvp-active .coach-about-panel {
  display: grid;
  gap: .95rem;
  align-content: start;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
body.coaching-mvp-active .coach-about-panel:hover {
  transform: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-about-panel h3 {
  margin: 0;
}
body.coaching-mvp-active .coach-about-panel p {
  max-width: 40rem;
  margin: 0;
}
body.coaching-mvp-active .coach-about-story-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem;
}
body.coaching-mvp-active .coach-about-story-grid .coach-story-card {
  min-height: 100%;
  padding: 1rem 1rem 1.05rem;
  border: 1px solid rgba(120,141,4,.14) !important;
  background: rgba(255,255,255,.7) !important;
  box-shadow: none !important;
}
body.coaching-mvp-active .coach-about-story-grid .coach-story-card:hover {
  transform: none !important;
  border-color: rgba(120,141,4,.2) !important;
  box-shadow: none !important;
}
@media (max-width: 960px) {
  body.coaching-mvp-active .coach-about-grid {
    grid-template-columns: 1fr;
  }
  body.coaching-mvp-active .coach-about-story-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  }
}
@media (max-width: 781px) {
  body.coaching-mvp-active .coach-ready-band > .wp-block-group__inner-container > .wp-block-heading {
    max-width: none;
  }
  body.coaching-mvp-active .coach-ready-step {
    grid-template-columns: 1fr;
    gap: .55rem;
  }
  body.coaching-mvp-active .coach-ready-step-num {
    font-size: 1.2rem;
  }
}
@media (max-width: 960px) {
  body.coaching-mvp-active .coach-video-editorial,
  body.coaching-mvp-active .coach-proof-inline-row,
  body.coaching-mvp-active .coach-service-flow-item {
    grid-template-columns: 1fr;
  }
  body.coaching-mvp-active .coach-proof-columns {
    grid-template-columns: 1fr;
  }
  body.coaching-mvp-active .coach-service-flow-side {
    justify-content: flex-start;
    padding-top: 0;
  }
  body.coaching-mvp-active .coach-service-flow-side span {
    text-align: left;
  }
}
@media (max-width: 781px) {
  body.coaching-mvp-active .coach-video-frame-clean {
    border-radius: 20px;
    padding: .6rem;
  }
  body.coaching-mvp-active .coach-service-flow-item {
    padding: 1.1rem 0;
  }
  body.coaching-mvp-active .coach-ways-footer-clean {
    flex-direction: column;
    align-items: flex-start;
  }
  body.coaching-mvp-active .coach-site-footer-shell {
    border-radius: 0;
  }
  body.coaching-mvp-active .coach-site-footer-grid {
    grid-template-columns: 1fr;
  }
  body.coaching-mvp-active .coach-site-footer-copy h2 {
    max-width: none;
  }
  body.coaching-mvp-active .coach-site-footer-link {
    grid-template-columns: 1fr auto;
  }
  body.coaching-mvp-active .coach-site-footer-link span:first-child {
    display: none;
  }
  body.coaching-mvp-active .coach-site-footer-meta {
    flex-direction: column;
    align-items: flex-start;
  }
}

CSS;

    wp_add_inline_style('coaching-mvp-inline', $css);
}
add_action('wp_enqueue_scripts', 'coaching_mvp_styles');

function coaching_mvp_scripts() {
    if (is_admin()) {
        return;
    }

    $js = <<<'JS'
(function () {
  if (window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
    return;
  }

  const roots = document.querySelectorAll('[data-parallax-root]');
  if (!roots.length) {
    return;
  }

  const clamp = (value, min, max) => Math.max(min, Math.min(max, value));

  roots.forEach((root) => {
    const layers = Array.from(root.querySelectorAll('.coach-ways-ambient[data-depth]'));
    if (!layers.length) {
      return;
    }

    const state = { mx: 0, my: 0, ticking: false };

    const render = () => {
      state.ticking = false;
      const rect = root.getBoundingClientRect();
      const vh = window.innerHeight || 1;
      const progress = clamp((vh * 0.58 - (rect.top + rect.height * 0.5)) / vh, -1.2, 1.2);

      layers.forEach((layer) => {
        const depth = parseFloat(layer.getAttribute('data-depth') || '0');
        const moveX = state.mx * depth * 28;
        const moveY = progress * depth * -88 + state.my * depth * 18;
        layer.style.transform = `translate3d(${moveX.toFixed(2)}px, ${moveY.toFixed(2)}px, 0)`;
      });
    };

    const queue = () => {
      if (state.ticking) {
        return;
      }
      state.ticking = true;
      window.requestAnimationFrame(render);
    };

    root.addEventListener('pointermove', (event) => {
      const rect = root.getBoundingClientRect();
      state.mx = clamp((event.clientX - rect.left) / rect.width - 0.5, -0.5, 0.5);
      state.my = clamp((event.clientY - rect.top) / rect.height - 0.5, -0.5, 0.5);
      queue();
    });

    root.addEventListener('pointerleave', () => {
      state.mx = 0;
      state.my = 0;
      queue();
    });

    window.addEventListener('scroll', queue, { passive: true });
    window.addEventListener('resize', queue);
    queue();
  });
})();
JS;

    wp_register_script('coaching-mvp-effects', false, [], null, true);
    wp_enqueue_script('coaching-mvp-effects');
    wp_add_inline_script('coaching-mvp-effects', $js);
}
add_action('wp_enqueue_scripts', 'coaching_mvp_scripts');

function coaching_mvp_home_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-home-page coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-home-page coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:group {"align":"full","className":"coach-hero"} -->
<div class="wp-block-group alignfull coach-hero"><div class="wp-block-columns are-vertically-aligned-center coach-hero-simple"><!-- wp:column {"verticalAlignment":"center","width":"52%"} -->
<div class="wp-block-column is-vertically-aligned-center" style="flex-basis:52%"><!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">01 / Private executive coaching</p>
<!-- /wp:paragraph -->

<!-- wp:heading {"level":1,"fontSize":"xx-large"} -->
<h1 class="wp-block-heading has-xx-large-font-size">Lead with more <span class="coach-accent-script">clarity</span>, confidence, and calm.</h1>
<!-- /wp:heading -->

<!-- wp:paragraph {"fontSize":"large"} -->
<p class="has-large-font-size">A premium coaching space for founders, executives, and senior professionals navigating pressure, visibility, and high-stakes conversations.</p>
<!-- /wp:paragraph -->

<!-- wp:buttons {"className":"coach-hero-actions"} -->
<div class="wp-block-buttons coach-hero-actions"><!-- wp:button {"backgroundColor":"contrast-3","textColor":"base"} -->
<div class="wp-block-button"><a class="wp-block-button__link has-base-color has-contrast-3-background-color has-text-color has-background wp-element-button" href="/book-session/">Book a Discovery Call</a></div>
<!-- /wp:button -->

<!-- wp:button {"className":"is-style-outline"} -->
<div class="wp-block-button is-style-outline"><a class="wp-block-button__link wp-element-button" href="/services/">Explore Services</a></div>
<!-- /wp:button --></div>
<!-- /wp:buttons -->

<!-- wp:paragraph {"className":"coach-hero-support"} -->
<p class="coach-hero-support">Support for leadership transitions, executive presence, decision pressure, and communication that carries real weight.</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column -->

<!-- wp:column {"verticalAlignment":"center","width":"48%"} -->
<div class="wp-block-column is-vertically-aligned-center" style="flex-basis:48%"><!-- wp:html -->
<div class="coach-hero-image-wrap">
  <figure class="coach-photo-card coach-photo-card-tall">
    <img src="/wp-content/uploads/2026/03/corporate-executive-woman.jpg" alt="Executive standing in a bright modern office" loading="eager" />
  </figure>
  <div class="coach-hero-note" style="background:#ffffff !important;color:#111827 !important;border:1px solid rgba(17,24,39,.10) !important;box-shadow:none !important;backdrop-filter:none !important;">
    <span class="coach-badge dark" style="background:#f3f4f6 !important;color:#111827 !important;border:1px solid rgba(17,24,39,.10) !important;box-shadow:none !important;">Confidential 1:1</span>
    <strong style="color:#111827 !important;">Strategic space for clear decisions.</strong>
    <p style="color:#424b57 !important;">Focused support for leaders navigating growth, visibility, and high-impact conversations.</p>
  </div>
</div>
<!-- /wp:html --></div>
<!-- /wp:column --></div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-experience-band"} -->
<div class="wp-block-group alignfull coach-experience-band"><div class="wp-block-group__inner-container">
<!-- wp:html -->
<div class="coach-experience-layout">
  <div class="coach-experience-copy">
    <p class="coach-eyebrow coach-experience-eyebrow">02 / Experience</p>
    <h2>Clear support for pressure, transitions, and visible leadership moments.</h2>
    <p class="coach-experience-intro">A calmer space for leaders who need clearer thinking, steadier communication, and confident next steps.</p>
    <div class="coach-experience-list">
      <article class="coach-experience-item">
        <span class="coach-experience-num">01</span>
        <div>
          <h3>Founders needing cleaner signal</h3>
          <p>When pace is high and everything feels equally urgent, the work helps narrow what matters next.</p>
        </div>
      </article>
      <article class="coach-experience-item">
        <span class="coach-experience-num">02</span>
        <div>
          <h3>Executives carrying more than the role shows</h3>
          <p>Support for visibility, harder conversations, and the weight that often sits underneath senior responsibility.</p>
        </div>
      </article>
      <article class="coach-experience-item">
        <span class="coach-experience-num">03</span>
        <div>
          <h3>Professionals in a high-stakes transition</h3>
          <p>Useful for promotions, pivots, and identity shifts that need confidence, clarity, and real momentum.</p>
        </div>
      </article>
    </div>
  </div>
  <aside class="coach-quote-card coach-experience-quote">
    <span class="coach-badge">Client reflection</span>
    <p>"I came in overwhelmed. This helped me narrow the signal, make cleaner decisions, and move with conviction."</p>
    <div class="coach-testimonial-meta">Jordan Ellis <span class="coach-quote-role">Founder, advisory studio</span></div>
  </aside>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-social-proof-section"} -->
<div class="wp-block-group alignfull coach-social-proof-section"><div class="wp-block-group__inner-container">
<!-- wp:html -->
<div class="coach-social-proof-inner">
  <div class="coach-social-proof-header">
    <div class="coach-social-proof-copy">
      <p class="coach-eyebrow">03 / Social proof</p>
      <h2>Voices of Impact.</h2>
      <p>Real client reflections, arranged as a stronger design-led proof section instead of a simple list — keeping the homepage feeling premium and calm.</p>
    </div>
    <div class="coach-social-proof-pill"><strong>5.0 ★★★★★</strong><span>Trusted client feedback</span></div>
  </div>
</div>
<!-- /wp:html -->
<!-- wp:shortcode -->
[coaching_featured_testimonials limit="4"]
<!-- /wp:shortcode -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"className":"coach-home-page coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-home-page coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:group {"align":"full","className":"coach-video-band coach-video-section","layout":{"type":"constrained"} } -->
<div class="wp-block-group alignfull coach-video-band coach-video-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">04 / Watch before you book</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">A short talk to help you sense the tone before you book</h2>
<!-- /wp:heading -->
<!-- wp:paragraph -->
<p>Start here if you want a calm feel for the pace, clarity, and style of conversation before you book a call.</p>
<!-- /wp:paragraph -->
<!-- wp:html -->
<div class="coach-video-editorial">
  <div class="coach-video-main">
    <div class="coach-video-frame coach-video-frame-clean">
      [coaching_watch_video]
    </div>
    <div class="coach-video-inline-meta">
      <span>Low-pressure preview</span>
      <span>Leadership language</span>
      <span>Clear next step</span>
    </div>
  </div>
  <div class="coach-video-copy">
    <p class="coach-video-kicker">A calm first impression</p>
    <h3>A simple way to decide whether the fit feels right</h3>
    <p>This is here to give a real sense of tone: thoughtful, direct, and practical without the hard sell.</p>
    <ol class="coach-editorial-list coach-video-list">
      <li><strong>Listen for the tone.</strong><span>Clear, grounded, and human.</span></li>
      <li><strong>Notice the pace.</strong><span>Reflective enough for clarity, structured enough to move.</span></li>
      <li><strong>Trust your reaction.</strong><span>If this style resonates, the conversation probably will too.</span></li>
    </ol>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-proof-band","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-proof-band"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">05 / Trust &amp; credibility</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Built around the signals serious coaching clients actually look for: trust, fit, and real depth</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-proof-editorial">
  <div class="coach-proof-intro">
    <p class="coach-proof-lead">Serious coaching clients usually look for the same few signals before they reach out: privacy, depth, and practical forward movement.</p>
    <p>This section now reads as a quieter trust statement instead of two boxed cards, so it feels more premium and less like a feature grid.</p>
  </div>
  <div class="coach-proof-columns">
    <article class="coach-proof-column"><span class="coach-proof-num">01</span><h3>Confidential</h3><p>Built for honest conversations where nuance matters and pressure is real.</p></article>
    <article class="coach-proof-column"><span class="coach-proof-num">02</span><h3>Practical</h3><p>Reflection turns into next steps, decisions, and clearer movement.</p></article>
    <article class="coach-proof-column"><span class="coach-proof-num">03</span><h3>Personal</h3><p>One-to-one support that adapts to season, pace, and context.</p></article>
  </div>
  <div class="coach-proof-inline-row">
    <p class="coach-proof-fit"><strong>Best fit:</strong> Founders, executives, consulting leaders, product teams, creative operators, and professionals in transition.</p>
    <div class="coach-proof-stats">
      <span>1:1 support</span>
      <span>Virtual</span>
      <span>Calm process</span>
    </div>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->


<!-- wp:group {"align":"full","className":"coach-ways-band coach-ways-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-ways-band coach-ways-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">06 / Ways to work together</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Choose the level of support that fits this season</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-ways-editorial">
  <div class="coach-ways-intro">
    <span class="coach-ways-kicker">Choose light entry, focused depth, or steady ongoing support</span>
    <p>Instead of presenting three equal cards, this section now reads like a clearer progression: first conversation, focused work, then longer-term rhythm.</p>
  </div>
<!-- /wp:html -->
<!-- wp:shortcode -->
[coaching_services_flow limit="3"]
<!-- /wp:shortcode -->
<!-- wp:html -->
  <div class="coach-ways-footer-clean">
    <p>Not sure where to start? Begin with the discovery call and refine the right level of support from there.</p>
    <p><a class="coach-inline-link" href="/services/">Compare services</a> <a class="coach-inline-link" href="/book-session/" style="margin-left:.5rem">Book a call</a></p>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-ready-band coach-ready-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-ready-band coach-ready-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">07 / Ready to begin</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Take the next step in a way that feels clear and manageable</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-ready-editorial">
  <div class="coach-ready-copy">
    <p class="coach-ready-lead">If you already know you want support, book the call. If you want a little context first, compare the services and choose the most useful starting point.</p>
    <div class="coach-ready-actions">
      <a class="coach-inline-link is-primary" href="/book-session/">Book a call</a>
      <a class="coach-inline-link is-secondary" href="/services/">View services</a>
    </div>
  </div>
  <div class="coach-ready-steps" aria-label="What happens next">
    <div class="coach-ready-step">
      <span class="coach-ready-step-num">01</span>
      <div>
        <strong>Choose a starting point</strong>
        <p>Start with the call if you are ready, or review the services page first if you want to compare the options.</p>
      </div>
    </div>
    <div class="coach-ready-step">
      <span class="coach-ready-step-num">02</span>
      <div>
        <strong>Share your context</strong>
        <p>Use the booking flow to outline what is happening, what feels stuck, and what kind of support would help most right now.</p>
      </div>
    </div>
    <div class="coach-ready-step">
      <span class="coach-ready-step-num">03</span>
      <div>
        <strong>Leave with stronger next steps</strong>
        <p>The first conversation is designed to create clarity, traction, and a grounded sense of what comes next.</p>
      </div>
    </div>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-about-band coach-about-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-about-band coach-about-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">08 / About the work</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Grounded, strategic coaching for people carrying real responsibility</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-grid-2 coach-about-grid">
  <div class="coach-about-panel">
    <h3>A calm space for honest thinking</h3>
    <p>This work is designed for moments when the pressure is high, the stakes are real, and quick answers are not enough. Coaching creates room to sort signal from noise, make stronger decisions, and move forward in a way that feels aligned.</p>
    <p><a class="coach-inline-link" href="/about/">Learn more about the approach</a></p>
  </div>
  <div class="coach-story-grid coach-about-story-grid">
    <article class="coach-story-card"><h3>Clarity</h3><p>Make sense of competing priorities, difficult choices, and the patterns that keep pulling attention in too many directions.</p></article>
    <article class="coach-story-card"><h3>Presence</h3><p>Strengthen communication, steadiness, and self-trust so you can lead with more intention under pressure.</p></article>
    <article class="coach-story-card"><h3>Momentum</h3><p>Turn reflection into practical next steps that feel realistic, thoughtful, and sustainable over time.</p></article>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-section coach-faq-band","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-section coach-faq-band"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">09 / FAQ</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Questions people usually ask before they book a call</h2>
<!-- /wp:heading -->
<!-- wp:shortcode -->
[coaching_faq limit="6"]
<!-- /wp:shortcode -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-section coach-insights-band","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-section coach-insights-band"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">10 / Insights &amp; articles</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Short reflections on clarity, leadership, and sustainable momentum</h2>
<!-- /wp:heading -->
<!-- wp:shortcode -->
[coaching_recent_posts limit="3"]
<!-- /wp:shortcode -->
</div></div>
<!-- /wp:group -->

<!-- wp:group {"align":"full","className":"coach-book-band coach-book-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group alignfull coach-book-band coach-book-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-eyebrow"} -->
<p class="coach-eyebrow">11 / Book a call</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Ready to work through the next decision with real support?</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-book-editorial">
  <div class="coach-book-copy">
    <p class="coach-book-lead">If the fit feels right, choose a time, share a little context, and start with a focused coaching conversation that creates clarity and a practical next step.</p>
    <div class="coach-book-actions">
      <a class="coach-inline-link is-primary" href="/book-session/">Book a call</a>
      <a class="coach-inline-link is-secondary" href="/services/">View services</a>
    </div>
  </div>
  <div class="coach-book-steps" aria-label="What happens when you book a call">
    <div class="coach-book-step">
      <span class="coach-book-step-num">01</span>
      <div>
        <strong>Choose a time that works</strong>
        <p>Go straight to the booking flow and pick a slot without needing another decision page first.</p>
      </div>
    </div>
    <div class="coach-book-step">
      <span class="coach-book-step-num">02</span>
      <div>
        <strong>Share the context briefly</strong>
        <p>Use a few lines to name what is happening, what feels stuck, and what kind of support would be most useful.</p>
      </div>
    </div>
    <div class="coach-book-step">
      <span class="coach-book-step-num">03</span>
      <div>
        <strong>Start with a focused conversation</strong>
        <p>The first call is designed to create clarity, fit, and a grounded next step without pressure.</p>
      </div>
    </div>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->

<!-- wp:paragraph {"className":"coach-footer-note"} -->
<p class="coach-footer-note">The aim is simple: create a calm, credible place where the right clients can quickly understand the work and take a confident next step.</p>
<!-- /wp:paragraph -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_services_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-services-page coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-services-page coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} --><p class="coach-badge">Coaching services</p><!-- /wp:paragraph -->
<!-- wp:heading {"level":1} --><h1 class="wp-block-heading">Support designed for clarity, change, and steady momentum</h1><!-- /wp:heading -->
<!-- wp:paragraph {"fontSize":"large"} --><p class="has-large-font-size">Whether you need one focused conversation or a longer coaching partnership, each offer is designed to create calm, honest progress.</p><!-- /wp:paragraph -->
<!-- wp:shortcode -->
[coaching_services limit="4"]
<!-- /wp:shortcode -->
<!-- wp:html -->
<div class="coach-grid-2 coach-section">
  <div class="coach-panel">
    <span class="coach-badge">Who this is for</span>
    <h3>For leaders, founders, professionals, and people in transition</h3>
    <p>These offers work well for moments that call for clearer thinking, stronger decision-making, more grounded leadership, or a steadier way of moving through change.</p>
  </div>
  <div class="coach-panel">
    <span class="coach-badge">What to expect</span>
    <h3>Choose the level of support that matches the moment</h3>
    <p>Some people need a single strategic conversation. Others want structured support over time. Each option is meant to make the next step feel simple and clear.</p>
  </div>
</div>
<div class="coach-process-grid coach-section">
  <article class="coach-process-card"><span class="coach-icon-dot">01</span><h3>Name what matters</h3><p>Start with the decision, transition, pressure point, or pattern that most needs attention.</p></article>
  <article class="coach-process-card"><span class="coach-icon-dot">02</span><h3>Make the work practical</h3><p>Turn reflection into something useful: a clearer choice, a stronger plan, or a better rhythm for action.</p></article>
  <article class="coach-process-card"><span class="coach-icon-dot">03</span><h3>Move with consistency</h3><p>The aim is not more pressure. It is sustainable momentum that fits real life and real responsibility.</p></article>
</div>
<div class="coach-cta-band coach-section">
  <h3>Not sure which option fits best?</h3>
  <p>You can book directly if you already know what you need, or start with a message if you want to talk it through first.</p>
  <p><a class="coach-inline-link" href="/book-session/">Book a session</a> <a class="coach-inline-link" href="/contact/" style="margin-left:.5rem;">Ask a question</a></p>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_testimonials_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} --><p class="coach-badge">Client reflections</p><!-- /wp:paragraph -->
<!-- wp:heading {"level":1} --><h1 class="wp-block-heading">What clients often take away from this work</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>These reflections offer a sense of how the coaching feels in practice: grounded, direct, thoughtful, and genuinely useful when the stakes are real.</p><!-- /wp:paragraph -->
<!-- wp:shortcode -->
[coaching_testimonials limit="6"]
<!-- /wp:shortcode -->
<!-- wp:html -->
<div class="coach-mini-grid coach-section">
  <div class="coach-mini-card"><h3>Clearer perspective</h3><p>Clients often leave with less mental noise and a better sense of what matters most.</p></div>
  <div class="coach-mini-card"><h3>Calm accountability</h3><p>The work creates structure and movement without adding unnecessary pressure.</p></div>
  <div class="coach-mini-card"><h3>Practical change</h3><p>Insight is important, but it becomes most valuable when it leads to steadier decisions and follow-through.</p></div>
</div>
<div class="coach-cta-band coach-section"><h3>Want to talk before you decide?</h3><p>If you are curious about fit, pace, or the right starting point, the contact page is a good first step.</p><p><a class="coach-inline-link" href="/contact/">Start the conversation</a></p></div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_about_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} --><p class="coach-badge">About the coach</p><!-- /wp:paragraph -->
<!-- wp:heading {"level":1} --><h1 class="wp-block-heading">Grounded coaching for people carrying meaningful responsibility</h1><!-- /wp:heading -->
<!-- wp:paragraph {"fontSize":"large"} --><p class="has-large-font-size">This work is for people who need a clear, thoughtful space to think well, decide honestly, and move forward with more steadiness.</p><!-- /wp:paragraph -->
<!-- wp:html -->
<div class="coach-grid-2 coach-section">
  <div class="coach-panel">
    <span class="coach-badge">Approach</span>
    <h3>A calm space for honest thinking</h3>
    <p>Coaching here is practical, reflective, and direct. The goal is not to overwhelm you with frameworks, but to help you see clearly, work through what matters, and take the next step with conviction.</p>
    <p><a class="coach-inline-link" href="/services/">Explore services</a></p>
  </div>
  <div class="coach-story-grid">
    <article class="coach-story-card"><h3>Philosophy</h3><p>Clarity before noise. Direction before urgency. Action that feels sustainable, not performative.</p></article>
    <article class="coach-story-card"><h3>Experience</h3><p>This space can hold strategic questions, leadership pressure, identity shifts, and the quieter challenges that often sit underneath visible success.</p></article>
    <article class="coach-story-card"><h3>Client experience</h3><p>Sessions are designed to feel steady, perceptive, and useful — a place for honest reflection that leads somewhere real.</p></article>
  </div>
</div>
<div class="coach-process-grid coach-section">
  <article class="coach-process-card"><span class="coach-icon-dot">01</span><h3>Listen deeply</h3><p>Start by understanding the real pressure, not just the polished version of the problem.</p></article>
  <article class="coach-process-card"><span class="coach-icon-dot">02</span><h3>Create direction</h3><p>Bring structure to complexity so the next move becomes clearer and more trustworthy.</p></article>
  <article class="coach-process-card"><span class="coach-icon-dot">03</span><h3>Support action</h3><p>Translate insight into decisions, behavior, rhythm, and follow-through that can actually hold.</p></article>
</div>
<div class="coach-cta-band coach-section"><h3>If the approach resonates, there is a clear next step</h3><p>You can explore the services, read client reflections, or reach out with a question before booking.</p><p><a class="coach-inline-link" href="/testimonials/">Read testimonials</a></p></div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_booking_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} --><p class="coach-badge">Book a session</p><!-- /wp:paragraph -->
<!-- wp:heading {"level":1} --><h1 class="wp-block-heading">Book a 30-minute meeting</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>Choose a time directly in the scheduler below. Once confirmed, you will receive a booking confirmation by email.</p><!-- /wp:paragraph -->
<!-- wp:paragraph {"className":"coach-muted"} --><p class="coach-muted" style="font-size:.92rem;margin-top:-.35rem;">Booking is now handled directly on this WordPress site through Simply Schedule Appointments.</p><!-- /wp:paragraph -->
<!-- wp:shortcode -->
[coaching_ssa_booking]
<!-- /wp:shortcode -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_contact_content() {
    return <<<'HTML'
<!-- wp:group {"className":"coach-shell","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-shell"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} --><p class="coach-badge">Get in touch</p><!-- /wp:paragraph -->
<!-- wp:heading {"level":1} --><h1 class="wp-block-heading">Start the conversation in a lower-pressure way</h1><!-- /wp:heading -->
<!-- wp:paragraph --><p>If you are not ready to book yet, you can start here. Questions, uncertainty, and a bit of context are all welcome.</p><!-- /wp:paragraph -->
<!-- wp:html -->
<div class="coach-booking-layout coach-section">
  <div>[coaching_lead_form]</div>
  <div class="coach-stack">
    <div class="coach-mini-card"><h3>Good reasons to reach out</h3><p>You may want help choosing a service, checking fit, or naming what kind of support would be most useful right now.</p></div>
    <div class="coach-mini-card"><h3>What to include</h3><p>A few lines about the challenge, transition, or decision you are carrying is enough to start.</p></div>
    <div class="coach-mini-card"><h3>What happens next</h3><p>You will receive a thoughtful reply with the clearest next step, whether that is a booking, a recommendation, or a simple answer.</p></div>
    <div class="coach-mini-card"><h3>Ready to book instead?</h3><p>If you already know you want a session, you can go straight to the booking page.</p><p><a class="coach-inline-link" href="/book-session/">Book a session</a></p></div>
  </div>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
HTML;
}

function coaching_mvp_template_pages() {
    return [
        'home' => [
            'title' => 'Home',
            'content' => coaching_mvp_home_content(),
        ],
        'services' => [
            'title' => 'Services',
            'content' => coaching_mvp_services_content(),
        ],
        'testimonials' => [
            'title' => 'Testimonials',
            'content' => coaching_mvp_testimonials_content(),
        ],
        'about' => [
            'title' => 'About',
            'content' => coaching_mvp_about_content(),
        ],
        'book-session' => [
            'title' => 'Book Session',
            'content' => coaching_mvp_booking_content(),
        ],
        'contact' => [
            'title' => 'Contact',
            'content' => coaching_mvp_contact_content(),
        ],
        'blog' => [
            'title' => 'Blog',
            'content' => '',
        ],
    ];
}

function coaching_mvp_upsert_page($slug, $definition, $overwrite_existing = false) {
    $page = get_page_by_path($slug, OBJECT, 'page');
    $postarr = [
        'post_title' => $definition['title'],
        'post_name' => $slug,
        'post_type' => 'page',
        'post_status' => 'publish',
        'post_content' => $definition['content'],
    ];

    if ($page) {
        if ($overwrite_existing) {
            $postarr['ID'] = $page->ID;
            wp_update_post($postarr);
        }
        return (int) $page->ID;
    }

    return (int) wp_insert_post($postarr);
}

function coaching_mvp_seed_navigation($page_ids) {
    $nav = get_page_by_title('Primary Navigation', OBJECT, 'wp_navigation');
    $nav_content = sprintf(
        "<!-- wp:navigation-link {\"label\":\"Home\",\"type\":\"page\",\"id\":%d,\"url\":\"/\",\"kind\":\"post-type\"} /-->\n" .
        "<!-- wp:navigation-link {\"label\":\"Services\",\"type\":\"page\",\"id\":%d,\"url\":\"/services/\",\"kind\":\"post-type\"} /-->\n" .
        "<!-- wp:navigation-link {\"label\":\"Testimonials\",\"type\":\"page\",\"id\":%d,\"url\":\"/testimonials/\",\"kind\":\"post-type\"} /-->\n" .
        "<!-- wp:navigation-link {\"label\":\"About\",\"type\":\"page\",\"id\":%d,\"url\":\"/about/\",\"kind\":\"post-type\"} /-->\n" .
        "<!-- wp:navigation-link {\"label\":\"Blog\",\"type\":\"page\",\"id\":%d,\"url\":\"/blog/\",\"kind\":\"post-type\"} /-->\n" .
        "<!-- wp:navigation-link {\"label\":\"Contact\",\"type\":\"page\",\"id\":%d,\"url\":\"/contact/\",\"kind\":\"post-type\"} /-->",
        $page_ids['home'],
        $page_ids['services'],
        $page_ids['testimonials'],
        $page_ids['about'],
        $page_ids['blog'],
        $page_ids['contact']
    );

    $postarr = [
        'post_title' => 'Primary Navigation',
        'post_status' => 'publish',
        'post_type' => 'wp_navigation',
        'post_content' => $nav_content,
    ];

    if ($nav) {
        $postarr['ID'] = $nav->ID;
        wp_update_post($postarr);
        return;
    }

    wp_insert_post($postarr);
}

function coaching_mvp_seed_testimonials() {
    $items = [
        [
            'title' => 'Jordan Ellis — Sample',
            'role' => 'Founder, advisory studio',
            'content' => 'I came in overwhelmed and spread thin. The coaching process helped me narrow the signal, make cleaner decisions, and finally move with conviction instead of noise.',
            'menu_order' => 1,
        ],
        [
            'title' => 'Maya Chen — Sample',
            'role' => 'Senior leader, technology team',
            'content' => 'What felt different was the balance of calm and challenge. I left each session with clearer priorities, stronger boundaries, and next steps I could actually execute.',
            'menu_order' => 2,
        ],
        [
            'title' => 'Daniel Ross — Sample',
            'role' => 'Executive coaching client',
            'content' => 'This gave me the structure I was missing. Instead of collecting more insight, I built momentum and followed through on decisions I had delayed for months.',
            'menu_order' => 3,
        ],
        [
            'title' => 'Alina Patel — Sample',
            'role' => 'Creative founder, growth stage brand',
            'content' => 'The sessions felt premium, focused, and deeply useful. I had space to think, but also enough accountability to convert clarity into action.',
            'menu_order' => 4,
        ],
    ];

    foreach ($items as $item) {
        $existing = get_page_by_title($item['title'], OBJECT, 'testimonial');
        $postarr = [
            'post_type' => 'testimonial',
            'post_status' => 'publish',
            'post_title' => $item['title'],
            'post_content' => $item['content'],
            'menu_order' => $item['menu_order'],
        ];

        if ($existing) {
            $postarr['ID'] = $existing->ID;
            $post_id = wp_update_post($postarr);
        } else {
            $post_id = wp_insert_post($postarr);
        }

        if ($post_id && !is_wp_error($post_id)) {
            update_post_meta($post_id, '_testimonial_role', $item['role']);
        }
    }
}

function coaching_mvp_seed_faq_items() {
    $items = [
        [
            'title' => 'What happens on the first call?',
            'content' => 'The first call is a focused conversation about what is happening now, what feels stuck, and what kind of support would be most useful. The goal is clarity, fit, and a practical next step — not pressure.',
            'menu_order' => 1,
        ],
        [
            'title' => 'Who is this coaching best for?',
            'content' => 'This template is positioned for founders, executives, professionals in transition, and high-performing clients who want a calmer, clearer way to move through decisions and pressure.',
            'menu_order' => 2,
        ],
        [
            'title' => 'Is this therapy, consulting, or coaching?',
            'content' => 'The positioning here is for coaching. That means creating a structured space for reflection, decisions, accountability, and forward movement. It is not presented as therapy, and it is not done-for-you consulting.',
            'menu_order' => 3,
        ],
        [
            'title' => 'Can I book a single session first?',
            'content' => 'Yes. The services structure already supports a lower-friction first step for people who want to explore fit or work through one immediate challenge before committing to a longer container.',
            'menu_order' => 4,
        ],
        [
            'title' => 'What kinds of topics can we work on?',
            'content' => 'Typical themes include decision-making, leadership pressure, role transitions, communication, confidence, momentum, and creating a more sustainable way of working.',
            'menu_order' => 5,
        ],
        [
            'title' => 'How do I know which offer fits best?',
            'content' => 'If you already know what you need, go straight to the booking page. If you are unsure, use the services page to compare options and choose the support level that best fits the moment.',
            'menu_order' => 6,
        ],
    ];

    foreach ($items as $item) {
        $existing = get_page_by_title($item['title'], OBJECT, 'faq_item');
        $postarr = [
            'post_type' => 'faq_item',
            'post_status' => 'publish',
            'post_title' => $item['title'],
            'post_content' => $item['content'],
            'menu_order' => $item['menu_order'],
        ];

        if ($existing) {
            $postarr['ID'] = $existing->ID;
            wp_update_post($postarr);
        } else {
            wp_insert_post($postarr);
        }
    }
}

function coaching_mvp_ensure_faq_items() {
    if (get_option('coaching_mvp_faq_seeded_version') === COACHING_MVP_TEMPLATE_VERSION) {
        return;
    }

    coaching_mvp_seed_faq_items();
    update_option('coaching_mvp_faq_seeded_version', COACHING_MVP_TEMPLATE_VERSION, false);
}
add_action('init', 'coaching_mvp_ensure_faq_items', 35);

function coaching_mvp_seed_blog_posts() {
    $posts = [
        [
            'title' => 'How Clarity Creates Better Decisions',
            'slug' => 'how-clarity-creates-better-decisions',
            'content' => "Decision fatigue usually does not come from too few options. It comes from too many open loops. A good coaching conversation reduces noise, clarifies what matters now, and turns vague pressure into an honest next move.\n\nThoughtful content like this helps visitors feel the pace and tone of the work before they ever book. A simple blog can quietly build trust, authority, and familiarity without pulling attention away from the next step.",
        ],
        [
            'title' => 'When High Performers Need Structure, Not More Pressure',
            'slug' => 'when-high-performers-need-structure-not-more-pressure',
            'content' => "Many coaching clients do not need more motivation. They need better structure, cleaner priorities, and an environment that supports follow-through.\n\nWriting like this can support clients between sessions and help new visitors understand the kind of coaching relationship they are stepping into.",
        ],
        [
            'title' => 'A Better Rhythm for Coaching Between Insight and Action',
            'slug' => 'a-better-rhythm-for-coaching-between-insight-and-action',
            'content' => "Great coaching is not just about reflection. It is also about timing, pacing, and what happens after the session ends.\n\nArticles like this can hold practical reflection, grounded encouragement, and the kind of calm guidance clients can expect in the work itself.",
        ],
    ];

    foreach ($posts as $item) {
        $existing = get_page_by_path($item['slug'], OBJECT, 'post');
        $postarr = [
            'post_type' => 'post',
            'post_status' => 'publish',
            'post_title' => $item['title'],
            'post_name' => $item['slug'],
            'post_content' => $item['content'],
        ];

        if ($existing) {
            $postarr['ID'] = $existing->ID;
            wp_update_post($postarr);
        } else {
            wp_insert_post($postarr);
        }
    }
}

function coaching_mvp_seed_template_content() {
    if (get_option('coaching_mvp_template_version') === COACHING_MVP_TEMPLATE_VERSION) {
        return;
    }

    $page_ids = [];
    foreach (coaching_mvp_template_pages() as $slug => $definition) {
        $page_ids[$slug] = coaching_mvp_upsert_page($slug, $definition, $slug === 'home');
    }

    if (!empty($page_ids['home'])) {
        update_option('show_on_front', 'page');
        update_option('page_on_front', $page_ids['home']);
    }
    if (!empty($page_ids['blog'])) {
        update_option('page_for_posts', $page_ids['blog']);
    }

    coaching_mvp_seed_navigation($page_ids);
    coaching_mvp_seed_testimonials();
    coaching_mvp_seed_blog_posts();

    update_option('coaching_mvp_template_version', COACHING_MVP_TEMPLATE_VERSION, false);
    flush_rewrite_rules(false);
}
add_action('init', 'coaching_mvp_seed_template_content', 30);

function coaching_mvp_sanitize_textarea($value) {
    return trim(wp_strip_all_tags((string) $value));
}

function coaching_mvp_handle_forms() {
    if ($_SERVER['REQUEST_METHOD'] !== 'POST' || empty($_POST['coaching_form_action'])) {
        return;
    }

    $action = sanitize_key(wp_unslash($_POST['coaching_form_action']));
    $redirect = !empty($_POST['_wp_http_referer']) ? wp_unslash($_POST['_wp_http_referer']) : home_url('/');
    $redirect = remove_query_arg(['booking_status', 'lead_status'], $redirect);

    if (!isset($_POST['coaching_form_nonce']) || !wp_verify_nonce(wp_unslash($_POST['coaching_form_nonce']), 'coaching_form_submit')) {
        wp_safe_redirect(add_query_arg($action === 'booking' ? 'booking_status' : 'lead_status', 'error', $redirect));
        exit;
    }

    $name = sanitize_text_field(wp_unslash($_POST['name'] ?? ''));
    $email = sanitize_email(wp_unslash($_POST['email'] ?? ''));
    $phone = sanitize_text_field(wp_unslash($_POST['phone'] ?? ''));
    $message = coaching_mvp_sanitize_textarea(wp_unslash($_POST['message'] ?? ''));

    if (!$name || !$email) {
        wp_safe_redirect(add_query_arg($action === 'booking' ? 'booking_status' : 'lead_status', 'error', $redirect));
        exit;
    }

    if ($action === 'booking') {
        $service = sanitize_text_field(wp_unslash($_POST['service'] ?? 'Discovery Call'));
        $preferred_date = sanitize_text_field(wp_unslash($_POST['preferred_date'] ?? ''));
        $preferred_time = sanitize_text_field(wp_unslash($_POST['preferred_time'] ?? ''));
        $format = sanitize_text_field(wp_unslash($_POST['session_format'] ?? 'Zoom'));
        $goal = coaching_mvp_sanitize_textarea(wp_unslash($_POST['goal'] ?? ''));
        $post_id = wp_insert_post([
            'post_type' => 'booking_request',
            'post_status' => 'private',
            'post_title' => sprintf('%s — %s', $name, $preferred_date ?: current_time('Y-m-d')),
        ], true);
        if (is_wp_error($post_id)) {
            wp_safe_redirect(add_query_arg('booking_status', 'error', $redirect));
            exit;
        }
        update_post_meta($post_id, '_booking_name', $name);
        update_post_meta($post_id, '_booking_email', $email);
        update_post_meta($post_id, '_booking_phone', $phone);
        update_post_meta($post_id, '_booking_service', $service);
        update_post_meta($post_id, '_booking_date', $preferred_date);
        update_post_meta($post_id, '_booking_time', $preferred_time);
        update_post_meta($post_id, '_booking_format', $format);
        update_post_meta($post_id, '_booking_goal', $goal);
        update_post_meta($post_id, '_booking_message', $message);
        wp_safe_redirect(add_query_arg('booking_status', 'success', $redirect));
        exit;
    }

    if ($action === 'lead') {
        $focus = sanitize_text_field(wp_unslash($_POST['focus'] ?? ''));
        $company = sanitize_text_field(wp_unslash($_POST['company'] ?? ''));
        $post_id = wp_insert_post([
            'post_type' => 'lead_capture',
            'post_status' => 'private',
            'post_title' => sprintf('%s — %s', $name, current_time('Y-m-d H:i')),
        ], true);
        if (is_wp_error($post_id)) {
            wp_safe_redirect(add_query_arg('lead_status', 'error', $redirect));
            exit;
        }
        update_post_meta($post_id, '_lead_name', $name);
        update_post_meta($post_id, '_lead_email', $email);
        update_post_meta($post_id, '_lead_phone', $phone);
        update_post_meta($post_id, '_lead_company', $company);
        update_post_meta($post_id, '_lead_focus', $focus);
        update_post_meta($post_id, '_lead_message', $message);
        wp_safe_redirect(add_query_arg('lead_status', 'success', $redirect));
        exit;
    }
}
add_action('template_redirect', 'coaching_mvp_handle_forms', 1);

function coaching_mvp_ssa_default_appointment_type_slug() {
    return '30-minute-meeting';
}

function coaching_mvp_ssa_default_customer_information_fields() {
    return [
        [
            'field' => 'Name',
            'display' => true,
            'required' => true,
            'type' => 'single-text',
            'icon' => 'face',
            'values' => '',
        ],
        [
            'field' => 'Email',
            'display' => true,
            'required' => true,
            'type' => 'single-text',
            'icon' => 'email',
            'values' => '',
        ],
    ];
}

function coaching_mvp_ssa_default_appointment_type_data() {
    $customer_information_fields = coaching_mvp_ssa_default_customer_information_fields();

    return [
        'author_id' => 1,
        'title' => '30-Minute Meeting',
        'slug' => coaching_mvp_ssa_default_appointment_type_slug(),
        'description' => 'A focused 30-minute coaching conversation.',
        'instructions' => '',
        'label' => 'light-green',
        'label_id' => 1,
        'capacity_type' => 'individual',
        'capacity' => 1,
        'buffer_before' => 0,
        'duration' => 30,
        'buffer_after' => 0,
        'min_booking_notice' => 0,
        'max_booking_notice' => 0,
        'availability_type' => 'available_blocks',
        'availability' => [
            'Monday' => [['time_start' => '09:00:00', 'time_end' => '17:00:00']],
            'Tuesday' => [['time_start' => '09:00:00', 'time_end' => '17:00:00']],
            'Wednesday' => [['time_start' => '09:00:00', 'time_end' => '17:00:00']],
            'Thursday' => [['time_start' => '09:00:00', 'time_end' => '17:00:00']],
            'Friday' => [['time_start' => '09:00:00', 'time_end' => '17:00:00']],
            'Saturday' => [],
            'Sunday' => [],
        ],
        'availability_increment' => 30,
        'timezone_style' => 'localized',
        'booking_layout' => 'week',
        'customer_information' => $customer_information_fields,
        'custom_customer_information' => $customer_information_fields,
        'notifications' => [
            'fields' => [
                ['field' => 'admin', 'send' => true],
                ['field' => 'customer', 'send' => true],
            ],
            'notifications_opt_in' => [
                'enabled' => false,
                'label' => 'Receive notifications',
                'description' => 'Check this box to receive appointment notifications.',
            ],
        ],
        'status' => 'publish',
        'display_order' => 1,
    ];
}

function coaching_mvp_get_ssa_appointment_type_by_slug($slug) {
    if (!function_exists('ssa') || !isset(ssa()->appointment_type_model)) {
        return [];
    }

    $appointment_types = ssa()->appointment_type_model->query([
        'number' => -1,
        'status' => 'publish',
    ]);

    foreach ($appointment_types as $appointment_type) {
        if (($appointment_type['slug'] ?? '') === $slug) {
            return $appointment_type;
        }
    }

    return [];
}

function coaching_mvp_ensure_ssa_booking_setup() {
    if (!function_exists('ssa') || !isset(ssa()->appointment_type_model)) {
        return;
    }

    $slug = coaching_mvp_ssa_default_appointment_type_slug();
    $appointment_type = coaching_mvp_get_ssa_appointment_type_by_slug($slug);
    $default_data = coaching_mvp_ssa_default_appointment_type_data();

    if (empty($appointment_type)) {
        ssa()->appointment_type_model->insert($default_data);
        return;
    }

    $existing_customer_information = $appointment_type['customer_information'] ?? [];
    $existing_custom_customer_information = $appointment_type['custom_customer_information'] ?? [];

    if (!empty($existing_customer_information) && !empty($existing_custom_customer_information)) {
        return;
    }

    ssa()->appointment_type_model->update((int) $appointment_type['id'], [
        'customer_information' => $default_data['customer_information'],
        'custom_customer_information' => $default_data['custom_customer_information'],
    ]);
}
add_action('init', 'coaching_mvp_ensure_ssa_booking_setup', 45);

function coaching_mvp_ssa_booking_shortcode() {
    $slug = coaching_mvp_ssa_default_appointment_type_slug();
    $appointment_type = coaching_mvp_get_ssa_appointment_type_by_slug($slug);

    ob_start();
    ?>
    <div class="coach-booking-layout coach-section">
        <div class="coach-mini-card coach-ssa-card">
            <?php
            if (function_exists('ssa') && !empty($appointment_type)) {
                echo do_shortcode('[ssa_booking type="' . esc_attr($slug) . '"]');
            } else {
                echo '<div class="coach-ssa-fallback"><h3>Booking will be available here shortly.</h3><p>Please use the contact page if you need help before the scheduler is configured.</p><p><a class="coach-inline-link" href="/contact/">Go to contact</a></p></div>';
            }
            ?>
        </div>
        <div class="coach-stack">
            <div class="coach-mini-card"><h3>What happens next</h3><p>After you choose a slot, the site will confirm the booking and send the details by email.</p></div>
            <div class="coach-mini-card"><h3>Meeting format</h3><p>This page now uses a native WordPress booking flow powered by Simply Schedule Appointments.</p></div>
            <div class="coach-mini-card"><h3>Need something else?</h3><p>If you want to ask a question before booking, you can still use the contact page.</p><p><a class="coach-inline-link" href="/contact/">Go to contact</a></p></div>
        </div>
    </div>
    <?php
    return ob_get_clean();
}
add_shortcode('coaching_ssa_booking', 'coaching_mvp_ssa_booking_shortcode');

function coaching_mvp_ssa_public_rest_permission($request) {
    if (current_user_can('ssa_manage_site_settings')) {
        return true;
    }

    if (!class_exists('TD_API_Model')) {
        return false;
    }

    $headers = $request->get_headers();

    if (!empty($headers['x_wp_nonce'][0]) && wp_verify_nonce($headers['x_wp_nonce'][0], 'wp_rest')) {
        return true;
    }

    if (!empty($headers['x_public_nonce'][0]) && TD_API_Model::verify_nonce($headers['x_public_nonce'][0], 'wp_rest')) {
        return true;
    }

    return false;
}

function coaching_mvp_patch_ssa_public_booking_permissions($endpoints) {
    if (empty($endpoints['/ssa/v1/appointments'])) {
        return $endpoints;
    }

    foreach ($endpoints['/ssa/v1/appointments'] as $index => $handler) {
        $methods = $handler['methods'] ?? [];

        if ($methods === WP_REST_Server::CREATABLE || (is_array($methods) && in_array('POST', $methods, true))) {
            $endpoints['/ssa/v1/appointments'][$index]['permission_callback'] = 'coaching_mvp_ssa_public_rest_permission';
        }
    }

    return $endpoints;
}
add_filter('rest_endpoints', 'coaching_mvp_patch_ssa_public_booking_permissions', 20);

function coaching_mvp_booking_form_shortcode() {
    $status = isset($_GET['booking_status']) ? sanitize_key(wp_unslash($_GET['booking_status'])) : '';
    ob_start();
    ?>
    <div class="coach-form-wrap" id="book-form">
        <?php if ($status === 'success') : ?>
            <div class="coach-alert success">Thanks — your request was received. You will hear back soon to confirm fit, timing, and details.</div>
        <?php elseif ($status === 'error') : ?>
            <div class="coach-alert error">Please complete the required fields and try again.</div>
        <?php endif; ?>
        <div class="coach-stack">
            <div>
                <span class="coach-badge">Book a session</span>
                <h3>Request your coaching session</h3>
                <p>Choose the service, preferred date, and format. This request creates a simple starting point for a personal follow-up.</p>
            </div>
            <form method="post" class="coach-stack">
                <?php wp_nonce_field('coaching_form_submit', 'coaching_form_nonce'); ?>
                <input type="hidden" name="coaching_form_action" value="booking" />
                <div class="coach-form-grid">
                    <div>
                        <label for="coach-book-name">Full name</label>
                        <input id="coach-book-name" type="text" name="name" required />
                    </div>
                    <div>
                        <label for="coach-book-email">Email</label>
                        <input id="coach-book-email" type="email" name="email" required />
                    </div>
                    <div>
                        <label for="coach-book-phone">Phone</label>
                        <input id="coach-book-phone" type="text" name="phone" />
                    </div>
                    <div>
                        <label for="coach-book-service">Service</label>
                        <select id="coach-book-service" name="service">
                            <?php foreach (coaching_mvp_services() as $value => $label) : ?>
                                <option value="<?php echo esc_attr($label); ?>"><?php echo esc_html($label); ?></option>
                            <?php endforeach; ?>
                        </select>
                    </div>
                    <div>
                        <label for="coach-book-date">Preferred date</label>
                        <input id="coach-book-date" type="date" name="preferred_date" required />
                    </div>
                    <div>
                        <label for="coach-book-time">Preferred time</label>
                        <input id="coach-book-time" type="time" name="preferred_time" required />
                    </div>
                    <div>
                        <label for="coach-book-format">Session format</label>
                        <select id="coach-book-format" name="session_format">
                            <option value="Zoom">Zoom</option>
                            <option value="Phone">Phone</option>
                            <option value="In Person">In Person</option>
                        </select>
                    </div>
                    <div class="full">
                        <label for="coach-book-goal">What would you like help with?</label>
                        <textarea id="coach-book-goal" name="goal" placeholder="Share the challenge, decision, transition, or result you want support with."></textarea>
                    </div>
                    <div class="full">
                        <label for="coach-book-message">Anything else?</label>
                        <textarea id="coach-book-message" name="message" placeholder="Include context, timing constraints, or preferred cadence."></textarea>
                    </div>
                </div>
                <div>
                    <button type="submit">Request Session</button>
                </div>
            </form>
        </div>
    </div>
    <?php
    return ob_get_clean();
}
add_shortcode('coaching_booking_form', 'coaching_mvp_booking_form_shortcode');

function coaching_mvp_lead_form_shortcode() {
    $status = isset($_GET['lead_status']) ? sanitize_key(wp_unslash($_GET['lead_status'])) : '';
    ob_start();
    ?>
    <div class="coach-form-wrap" id="lead-form">
        <?php if ($status === 'success') : ?>
            <div class="coach-alert success">Thanks — your message was received. You will get a thoughtful reply soon.</div>
        <?php elseif ($status === 'error') : ?>
            <div class="coach-alert error">Please add your name and email so we can respond properly.</div>
        <?php endif; ?>
        <div class="coach-stack">
            <div>
                <span class="coach-badge">Get in touch</span>
                <h3>Start with a note</h3>
                <p>Share a little context and you can receive a thoughtful reply about the best next step.</p>
            </div>
            <form method="post" class="coach-stack">
                <?php wp_nonce_field('coaching_form_submit', 'coaching_form_nonce'); ?>
                <input type="hidden" name="coaching_form_action" value="lead" />
                <div class="coach-form-grid">
                    <div>
                        <label for="coach-lead-name">Full name</label>
                        <input id="coach-lead-name" type="text" name="name" required />
                    </div>
                    <div>
                        <label for="coach-lead-email">Email</label>
                        <input id="coach-lead-email" type="email" name="email" required />
                    </div>
                    <div>
                        <label for="coach-lead-phone">Phone</label>
                        <input id="coach-lead-phone" type="text" name="phone" />
                    </div>
                    <div>
                        <label for="coach-lead-company">Company / role</label>
                        <input id="coach-lead-company" type="text" name="company" />
                    </div>
                    <div class="full">
                        <label for="coach-lead-focus">What are you working toward?</label>
                        <input id="coach-lead-focus" type="text" name="focus" placeholder="Examples: leadership transition, consistency, executive presence, burnout recovery" />
                    </div>
                    <div class="full">
                        <label for="coach-lead-message">Message</label>
                        <textarea id="coach-lead-message" name="message" placeholder="Share what support would feel most valuable right now."></textarea>
                    </div>
                </div>
                <div>
                    <button type="submit">Send Inquiry</button>
                </div>
            </form>
        </div>
    </div>
    <?php
    return ob_get_clean();
}
add_shortcode('coaching_lead_form', 'coaching_mvp_lead_form_shortcode');

function coaching_mvp_watch_video_shortcode() {
    return '<iframe src="https://www.youtube-nocookie.com/embed/qp0HIF3SfI4?rel=0" title="How Great Leaders Inspire Action | Simon Sinek | TED" loading="lazy" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>' ;
}
add_shortcode('coaching_watch_video', 'coaching_mvp_watch_video_shortcode');

function coaching_mvp_services_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 4], $atts, 'coaching_services');
    $limit = max(1, (int) $atts['limit']);
    $catalog = array_slice(coaching_mvp_service_catalog(), 0, $limit, true);

    ob_start();
    echo '<div class="coach-card-grid">';
    foreach ($catalog as $service) {
        echo '<article class="coach-service-card">';
        echo '<span class="coach-icon-dot">' . esc_html($service['code']) . '</span>';
        echo '<h3>' . esc_html($service['label']) . '</h3>';
        echo '<p>' . esc_html($service['summary']) . '</p>';
        echo '<ul>';
        foreach ($service['bullets'] as $bullet) {
            echo '<li>' . esc_html($bullet) . '</li>';
        }
        echo '</ul>';
        echo '</article>';
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_services', 'coaching_mvp_services_shortcode');


function coaching_mvp_services_flow_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 3], $atts, 'coaching_services_flow');
    $limit = max(1, (int) $atts['limit']);
    $catalog = array_slice(coaching_mvp_service_catalog(), 0, $limit, true);

    $service_notes = [
        'discovery-call' => 'Best place to start',
        'clarity-session' => 'For a focused challenge',
        'momentum-coaching' => 'For ongoing rhythm',
        'leadership-intensive' => 'For a high-stakes season',
    ];

    ob_start();
    echo '<div class="coach-services-flow">';
    $index = 1;
    foreach ($catalog as $slug => $service) {
        echo '<article class="coach-service-flow-item">';
        echo '<div class="coach-service-flow-num">' . esc_html(str_pad((string) $index, 2, '0', STR_PAD_LEFT)) . '</div>';
        echo '<div class="coach-service-flow-main">';
        echo '<h3>' . esc_html($service['label']) . '</h3>';
        echo '<p>' . esc_html($service['summary']) . '</p>';
        echo '<div class="coach-service-flow-meta">';
        foreach ($service['bullets'] as $bullet) {
            echo '<span>' . esc_html($bullet) . '</span>';
        }
        echo '</div>';
        echo '</div>';
        echo '<div class="coach-service-flow-side"><span>' . esc_html($service_notes[$slug] ?? 'Explore this format') . '</span></div>';
        echo '</article>';
        $index++;
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_services_flow', 'coaching_mvp_services_flow_shortcode');

function coaching_mvp_public_testimonial_name($title) {
    return trim((string) preg_replace('/\s+—\s+Sample$/u', '', (string) $title));
}

function coaching_mvp_testimonials_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 6], $atts, 'coaching_testimonials');
    $items = get_posts([
        'post_type' => 'testimonial',
        'post_status' => 'publish',
        'numberposts' => (int) $atts['limit'],
        'orderby' => 'menu_order date',
        'order' => 'ASC',
    ]);
    if (!$items) {
        return '<p>No testimonials yet.</p>';
    }
    ob_start();
    echo '<div class="coach-testimonial-grid">';
    foreach ($items as $item) {
        $role = get_post_meta($item->ID, '_testimonial_role', true);
        echo '<article class="coach-testimonial-card">';
        echo '<div class="coach-rating">★★★★★</div>';
        echo '<blockquote><p>' . esc_html(wp_strip_all_tags($item->post_content)) . '</p></blockquote>';
        echo '<h3>' . esc_html(coaching_mvp_public_testimonial_name(get_the_title($item))) . '</h3>';
        if ($role) {
            echo '<div class="coach-testimonial-meta">' . esc_html($role) . '</div>';
        }
        echo '</article>';
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_testimonials', 'coaching_mvp_testimonials_shortcode');

function coaching_mvp_featured_testimonials_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 4], $atts, 'coaching_featured_testimonials');
    $items = get_posts([
        'post_type' => 'testimonial',
        'post_status' => 'publish',
        'numberposts' => (int) $atts['limit'],
        'orderby' => 'menu_order date',
        'order' => 'ASC',
    ]);
    if (!$items) {
        return '<p>No testimonials yet.</p>';
    }

    ob_start();
    echo '<div class="coach-social-proof-grid">';
    foreach ($items as $item) {
        $role = trim((string) get_post_meta($item->ID, '_testimonial_role', true));
        $name = coaching_mvp_public_testimonial_name(get_the_title($item));
        $tag = '';
        if ($role !== '') {
            $parts = array_filter(array_map('trim', explode(',', $role)));
            if ($parts) {
                $tag = strtoupper($parts[0]);
            }
        }

        echo '<article class="coach-social-proof-card">';
        echo '<div>';
        echo '<div class="coach-rating">★★★★★</div>';
        echo '<p class="coach-social-proof-quote">“' . esc_html(wp_strip_all_tags($item->post_content)) . '”</p>';
        echo '</div>';
        echo '<div class="coach-social-proof-footer">';
        echo '<div class="coach-social-proof-person"><strong>' . esc_html($name) . '</strong>';
        if ($role !== '') {
            echo '<span>' . esc_html($role) . '</span>';
        }
        echo '</div>';
        if ($tag !== '') {
            echo '<span class="coach-social-proof-tag">' . esc_html($tag) . '</span>';
        }
        echo '</div>';
        echo '</article>';
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_featured_testimonials', 'coaching_mvp_featured_testimonials_shortcode');

function coaching_mvp_faq_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 6], $atts, 'coaching_faq');
    $items = get_posts([
        'post_type' => 'faq_item',
        'post_status' => 'publish',
        'numberposts' => (int) $atts['limit'],
        'orderby' => 'menu_order date',
        'order' => 'ASC',
    ]);

    if (!$items) {
        return '<p>No FAQs yet.</p>';
    }

    ob_start();
    echo '<div class="coach-faq-stack">';
    foreach ($items as $item) {
        echo '<details class="coach-faq-item">';
        echo '<summary><span class="coach-faq-question">' . esc_html(get_the_title($item)) . '</span></summary>';
        echo '<div class="coach-faq-answer">' . wp_kses_post(wpautop($item->post_content)) . '</div>';
        echo '</details>';
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_faq', 'coaching_mvp_faq_shortcode');

function coaching_mvp_recent_posts_shortcode($atts = []) {
    $atts = shortcode_atts(['limit' => 3], $atts, 'coaching_recent_posts');
    $items = get_posts([
        'post_type' => 'post',
        'post_status' => 'publish',
        'numberposts' => (int) $atts['limit'],
        'orderby' => 'date',
        'order' => 'DESC',
    ]);

    if (!$items) {
        return '<p>No blog posts yet.</p>';
    }

    ob_start();
    echo '<div class="coach-insights-list">';
    foreach ($items as $item) {
        echo '<article class="coach-insight-item">';
        echo '<div class="coach-insight-content">';
        echo '<p class="coach-insight-meta">' . esc_html(get_the_date('F j, Y', $item)) . '</p>';
        echo '<h3><a href="' . esc_url(get_permalink($item)) . '">' . esc_html(get_the_title($item)) . '</a></h3>';
        echo '<p>' . esc_html(wp_trim_words(wp_strip_all_tags($item->post_content), 26)) . '</p>';
        echo '</div>';
        echo '<a class="coach-inline-link is-primary" href="' . esc_url(get_permalink($item)) . '">Read article</a>';
        echo '</article>';
    }
    echo '</div>';
    return ob_get_clean();
}
add_shortcode('coaching_recent_posts', 'coaching_mvp_recent_posts_shortcode');

function coaching_mvp_admin_columns($columns, $post_type) {
    if ($post_type === 'booking_request') {
        return [
            'cb' => $columns['cb'],
            'title' => 'Booking',
            'service' => 'Service',
            'date' => 'Date',
            'contact' => 'Contact',
            'format' => 'Format',
        ];
    }
    if ($post_type === 'lead_capture') {
        return [
            'cb' => $columns['cb'],
            'title' => 'Lead',
            'focus' => 'Focus',
            'contact' => 'Contact',
            'date' => 'Received',
        ];
    }
    if ($post_type === 'testimonial') {
        $columns['role'] = 'Role';
        return $columns;
    }
    return $columns;
}
add_filter('manage_booking_request_posts_columns', fn($columns) => coaching_mvp_admin_columns($columns, 'booking_request'));
add_filter('manage_lead_capture_posts_columns', fn($columns) => coaching_mvp_admin_columns($columns, 'lead_capture'));
add_filter('manage_testimonial_posts_columns', fn($columns) => coaching_mvp_admin_columns($columns, 'testimonial'));

function coaching_mvp_render_admin_column($column, $post_id) {
    switch ($column) {
        case 'service':
            echo esc_html((string) get_post_meta($post_id, '_booking_service', true));
            break;
        case 'date':
            if (get_post_type($post_id) === 'booking_request') {
                $date = get_post_meta($post_id, '_booking_date', true);
                $time = get_post_meta($post_id, '_booking_time', true);
                echo esc_html(trim($date . ' ' . $time));
            } else {
                echo esc_html(get_the_date('Y-m-d H:i', $post_id));
            }
            break;
        case 'contact':
            $email_key = get_post_type($post_id) === 'booking_request' ? '_booking_email' : '_lead_email';
            $phone_key = get_post_type($post_id) === 'booking_request' ? '_booking_phone' : '_lead_phone';
            echo esc_html((string) get_post_meta($post_id, $email_key, true));
            $phone = get_post_meta($post_id, $phone_key, true);
            if ($phone) {
                echo '<br>' . esc_html((string) $phone);
            }
            break;
        case 'format':
            echo esc_html((string) get_post_meta($post_id, '_booking_format', true));
            break;
        case 'focus':
            echo esc_html((string) get_post_meta($post_id, '_lead_focus', true));
            break;
        case 'role':
            echo esc_html((string) get_post_meta($post_id, '_testimonial_role', true));
            break;
    }
}
add_action('manage_booking_request_posts_custom_column', 'coaching_mvp_render_admin_column', 10, 2);
add_action('manage_lead_capture_posts_custom_column', 'coaching_mvp_render_admin_column', 10, 2);
add_action('manage_testimonial_posts_custom_column', 'coaching_mvp_render_admin_column', 10, 2);

function coaching_mvp_details_meta_box() {
    foreach (['booking_request', 'lead_capture'] as $post_type) {
        add_meta_box('coaching-mvp-details', 'Submission Details', 'coaching_mvp_details_meta_box_html', $post_type, 'normal', 'high');
    }
    add_meta_box('coaching-mvp-testimonial-role', 'Testimonial Details', 'coaching_mvp_testimonial_meta_box_html', 'testimonial', 'side');
}
add_action('add_meta_boxes', 'coaching_mvp_details_meta_box');

function coaching_mvp_details_meta_box_html($post) {
    if ($post->post_type === 'booking_request') {
        $fields = [
            'Name' => get_post_meta($post->ID, '_booking_name', true),
            'Email' => get_post_meta($post->ID, '_booking_email', true),
            'Phone' => get_post_meta($post->ID, '_booking_phone', true),
            'Service' => get_post_meta($post->ID, '_booking_service', true),
            'Preferred date' => get_post_meta($post->ID, '_booking_date', true),
            'Preferred time' => get_post_meta($post->ID, '_booking_time', true),
            'Format' => get_post_meta($post->ID, '_booking_format', true),
            'Goal' => get_post_meta($post->ID, '_booking_goal', true),
            'Extra notes' => get_post_meta($post->ID, '_booking_message', true),
        ];
    } else {
        $fields = [
            'Name' => get_post_meta($post->ID, '_lead_name', true),
            'Email' => get_post_meta($post->ID, '_lead_email', true),
            'Phone' => get_post_meta($post->ID, '_lead_phone', true),
            'Company / role' => get_post_meta($post->ID, '_lead_company', true),
            'Focus area' => get_post_meta($post->ID, '_lead_focus', true),
            'Message' => get_post_meta($post->ID, '_lead_message', true),
        ];
    }
    echo '<div class="coaching-admin-meta">';
    foreach ($fields as $label => $value) {
        echo '<p><strong>' . esc_html($label) . ':</strong><br>' . nl2br(esc_html((string) $value)) . '</p>';
    }
    echo '</div>';
}

function coaching_mvp_testimonial_meta_box_html($post) {
    wp_nonce_field('coaching_testimonial_meta', 'coaching_testimonial_meta_nonce');
    $role = get_post_meta($post->ID, '_testimonial_role', true);
    echo '<p><label for="coaching-testimonial-role"><strong>Role / context</strong></label></p>';
    echo '<input type="text" id="coaching-testimonial-role" name="coaching_testimonial_role" value="' . esc_attr((string) $role) . '" style="width:100%;" />';
    echo '<p class="description">Example: Founder, Sample Client</p>';
}

function coaching_mvp_save_testimonial_meta($post_id) {
    if (!isset($_POST['coaching_testimonial_meta_nonce']) || !wp_verify_nonce(wp_unslash($_POST['coaching_testimonial_meta_nonce']), 'coaching_testimonial_meta')) {
        return;
    }
    if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
        return;
    }
    if (isset($_POST['coaching_testimonial_role'])) {
        update_post_meta($post_id, '_testimonial_role', sanitize_text_field(wp_unslash($_POST['coaching_testimonial_role'])));
    }
}
add_action('save_post_testimonial', 'coaching_mvp_save_testimonial_meta');

function coaching_mvp_current_request_origin() {
    if (defined('WP_CLI') && WP_CLI) {
        return null;
    }

    $host = '';
    if (!empty($_SERVER['HTTP_X_FORWARDED_HOST'])) {
        $parts = explode(',', (string) $_SERVER['HTTP_X_FORWARDED_HOST']);
        $host = trim(end($parts));
    } elseif (!empty($_SERVER['HTTP_HOST'])) {
        $host = trim((string) $_SERVER['HTTP_HOST']);
    }

    if ($host === '' || preg_match('/[^a-z0-9\-\.:\[\]]/i', $host)) {
        return null;
    }

    $scheme = 'http';
    if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO'])) {
        $parts = explode(',', (string) $_SERVER['HTTP_X_FORWARDED_PROTO']);
        $candidate = strtolower(trim(end($parts)));
        if (in_array($candidate, ['http', 'https'], true)) {
            $scheme = $candidate;
        }
    } elseif (!empty($_SERVER['REQUEST_SCHEME']) && in_array($_SERVER['REQUEST_SCHEME'], ['http', 'https'], true)) {
        $scheme = $_SERVER['REQUEST_SCHEME'];
    } elseif (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off') {
        $scheme = 'https';
    }

    return $scheme . '://' . $host;
}

function coaching_mvp_should_replace_local_host($url) {
    $host = wp_parse_url($url, PHP_URL_HOST);
    return in_array($host, ['localhost', '127.0.0.1', '::1'], true);
}

function coaching_mvp_replace_local_origin($url) {
    $origin = coaching_mvp_current_request_origin();
    if (!$origin || !coaching_mvp_should_replace_local_host($url)) {
        return $url;
    }

    $path = (string) wp_parse_url($url, PHP_URL_PATH);
    $query = wp_parse_url($url, PHP_URL_QUERY);
    $fragment = wp_parse_url($url, PHP_URL_FRAGMENT);

    $rebuilt = rtrim($origin, '/') . $path;
    if ($query) {
        $rebuilt .= '?' . $query;
    }
    if ($fragment) {
        $rebuilt .= '#' . $fragment;
    }

    return $rebuilt;
}

function coaching_mvp_filter_option_home($value) {
    return coaching_mvp_replace_local_origin((string) $value);
}
add_filter('option_home', 'coaching_mvp_filter_option_home');
add_filter('option_siteurl', 'coaching_mvp_filter_option_home');

function coaching_mvp_filter_generated_url($url) {
    return coaching_mvp_replace_local_origin((string) $url);
}
add_filter('home_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('site_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('content_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('plugins_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('includes_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('rest_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('network_home_url', 'coaching_mvp_filter_generated_url', 10, 1);
add_filter('network_site_url', 'coaching_mvp_filter_generated_url', 10, 1);

function coaching_mvp_replace_local_origin_in_html($html) {
    $origin = coaching_mvp_current_request_origin();
    if (!$origin || !is_string($html) || $html === '') {
        return $html;
    }

    return str_replace(
        ['http://localhost', 'https://localhost', 'http://127.0.0.1', 'https://127.0.0.1'],
        $origin,
        $html
    );
}

function coaching_mvp_filter_rendered_block_html($block_content) {
    if (is_admin()) {
        return $block_content;
    }

    return coaching_mvp_replace_local_origin_in_html($block_content);
}
add_filter('render_block', 'coaching_mvp_filter_rendered_block_html', 10, 1);
