    /* ============================================================
       DESIGN TOKENS — Bridge The Conflict Brand
       ============================================================ */
    :root {
      --btc-black:      #0D0D0D;
      --btc-white:      #FFFFFF;
      --btc-orange:     #E85D04;
      --btc-orange-lt:  #FF7B2E;
      --btc-gray-100:   #F5F5F5;
      --btc-gray-200:   #E8E8E8;
      --btc-gray-400:   #9E9E9E;
      --btc-gray-700:   #3D3D3D;
      --btc-overlay:    rgba(13,13,13,0.88);

      --ff-display: 'Playfair Display', Georgia, serif;
      --ff-body:    'DM Sans', system-ui, sans-serif;

      --transition: 0.25s cubic-bezier(0.4,0,0.2,1);
      --radius-sm: 4px;
      --radius-md: 8px;
      --radius-lg: 16px;
    }

    /* ============================================================
       RESET & BASE
       ============================================================ */
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    html { scroll-behavior: smooth; }

    body {
      font-family: var(--ff-body);
      background: var(--btc-white);
      color: var(--btc-black);
      line-height: 1.6;
      overflow-x: hidden;
    }

    img { display: block; max-width: 100%; }

    a { color: inherit; text-decoration: none; }

    ::selection {
      background: var(--btc-orange);
      color: var(--btc-white);
    }

    /* ============================================================
       UTILITY
       ============================================================ */
    .container {
      width: 90%;
      max-width: 1200px;
      margin-inline: auto;
    }

    .sr-only {
      position: absolute;
      width: 1px; height: 1px;
      padding: 0; margin: -1px;
      overflow: hidden;
      clip: rect(0,0,0,0);
      border: 0;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 14px 32px;
      border: none;
      border-radius: var(--radius-sm);
      font-family: var(--ff-body);
      font-size: 0.95rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      text-transform: uppercase;
      cursor: pointer;
      transition: all var(--transition);
    }

    .btn-primary {
      background: var(--btc-orange);
      color: var(--btc-white);
    }
    .btn-primary:hover {
      background: var(--btc-orange-lt);
      transform: translateY(-1px);
      box-shadow: 0 6px 24px rgba(232,93,4,0.35);
    }

    .btn-outline {
      background: transparent;
      color: var(--btc-white);
      border: 2px solid var(--btc-white);
    }
    .btn-outline:hover {
      background: var(--btc-white);
      color: var(--btc-black);
    }

    .btn-dark {
      background: var(--btc-black);
      color: var(--btc-white);
    }
    .btn-dark:hover {
      background: var(--btc-gray-700);
      transform: translateY(-1px);
    }

    .section-label {
      display: inline-block;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--btc-orange);
      margin-bottom: 12px;
    }

    .section-title {
      font-family: var(--ff-display);
      font-size: clamp(2rem, 4vw, 3.25rem);
      font-weight: 700;
      line-height: 1.15;
      color: var(--btc-black);
    }

    .section-title--white { color: var(--btc-white); }

    .section-subtitle {
      font-size: 1.1rem;
      color: var(--btc-gray-700);
      max-width: 620px;
      margin-top: 16px;
      line-height: 1.7;
    }

    .section-subtitle--white { color: rgba(255,255,255,0.78); }

    /* Fade-in animation */
    .fade-in {
      opacity: 0;
      transform: translateY(24px);
      transition: opacity 0.6s ease, transform 0.6s ease;
    }
    .fade-in.visible {
      opacity: 1;
      transform: translateY(0);
    }

    /* ============================================================
       NAVIGATION
       ============================================================ */
    .nav {
      position: fixed;
      top: 0; left: 0; right: 0;
      z-index: 900;
      background: transparent;
      transition: background var(--transition), box-shadow var(--transition);
    }

    .nav.scrolled {
      background: var(--btc-black);
      box-shadow: 0 2px 20px rgba(0,0,0,0.3);
    }

    .nav__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 20px 0;
      transition: padding var(--transition);
    }

    .nav.scrolled .nav__inner { padding: 14px 0; }

    .nav__logo {
      font-family: var(--ff-display);
      font-size: 1.35rem;
      font-weight: 700;
      color: var(--btc-white);
      letter-spacing: -0.01em;
    }

    .nav__logo span {
      color: var(--btc-orange);
    }

    .nav__logo--img {
      display: flex;
      align-items: center;
      background: var(--btc-white);
      padding: 6px 12px;
      border-radius: var(--radius-sm);
    }

    .nav__logo-img {
      height: 32px;
      width: auto;
      display: block;
    }

    .nav__links {
      display: flex;
      align-items: center;
      gap: 32px;
      list-style: none;
    }

    .nav__links a {
      font-size: 0.875rem;
      font-weight: 500;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: rgba(255,255,255,0.8);
      transition: color var(--transition);
    }

    .nav__links a:hover { color: var(--btc-orange); }

    .nav__cta {
      padding: 10px 24px;
      font-size: 0.8rem;
    }

    .nav__ctas {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    @media (max-width: 1080px) {
      .nav__ctas .btn-outline.nav__cta { display: none; }
    }

    .nav__hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 4px;
    }

    .nav__hamburger span {
      display: block;
      width: 24px;
      height: 2px;
      background: var(--btc-white);
      transition: all var(--transition);
    }

    .nav__mobile {
      display: none;
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: var(--btc-black);
      z-index: 890;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 40px;
    }

    .nav__mobile.open { display: flex; }

    .nav__mobile a {
      font-family: var(--ff-display);
      font-size: 2rem;
      color: var(--btc-white);
      transition: color var(--transition);
    }

    .nav__mobile a:hover { color: var(--btc-orange); }

    .nav__mobile-close {
      position: absolute;
      top: 24px; right: 5%;
      background: none;
      border: none;
      color: var(--btc-white);
      font-size: 2rem;
      cursor: pointer;
    }

    /* ============================================================
       HERO
       ============================================================ */
    .hero {
      position: relative;
      min-height: 100vh;
      display: flex;
      align-items: center;
      background: var(--btc-black);
      overflow: hidden;
    }

    .hero__bg {
      position: absolute;
      inset: 0;
      background: 
        radial-gradient(ellipse 60% 60% at 80% 50%, rgba(232,93,4,0.12) 0%, transparent 70%),
        radial-gradient(ellipse 40% 40% at 20% 80%, rgba(255,123,46,0.08) 0%, transparent 60%);
    }

    .hero__grid-lines {
      position: absolute;
      inset: 0;
      background-image: 
        linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
      background-size: 60px 60px;
    }

    .hero__content {
      position: relative;
      z-index: 2;
      padding: 120px 0 80px;
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
      gap: 28px 48px;
      align-items: start;
    }

    .hero__text {
      display: grid;
      gap: 28px;
      min-width: 0;
    }

    .hero__text .hero__title,
    .hero__text .hero__subtitle { margin-bottom: 0; }

    .hero__logo-col {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      z-index: 2;
    }

    .hero__logo-card {
      background: var(--btc-white);
      border-radius: var(--radius-lg);
      padding: 40px 44px;
      box-shadow: 0 30px 80px rgba(0,0,0,0.45);
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .hero__logo-img {
      width: 100%;
      max-width: 340px;
      height: auto;
      display: block;
    }

    .hero__eyebrow {
      grid-column: 1 / -1;
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 0;
    }

    .hero__eyebrow-line {
      width: 48px;
      height: 2px;
      background: var(--btc-orange);
    }

    .hero__eyebrow-text {
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--btc-orange);
    }

    .hero__title {
      font-family: var(--ff-display);
      font-size: clamp(2.8rem, 6vw, 5.5rem);
      font-weight: 700;
      line-height: 1.05;
      color: var(--btc-white);
      max-width: 780px;
      margin-bottom: 28px;
    }

    .hero__title em {
      font-style: italic;
      color: var(--btc-orange);
    }

    .hero__subtitle {
      font-size: 1.2rem;
      color: rgba(255,255,255,0.7);
      max-width: 560px;
      line-height: 1.7;
      margin-bottom: 48px;
    }

    .hero__actions {
      display: flex;
      flex-wrap: wrap;
      gap: 16px;
      align-items: center;
    }

    .hero__social-proof {
      display: flex;
      align-items: center;
      gap: 16px;
      margin-top: 0;
      padding-top: 24px;
      border-top: 1px solid rgba(255,255,255,0.1);
    }

    .hero__stats {
      display: flex;
      width: 100%;
      gap: 24px;
      flex-wrap: wrap;
    }

    .hero__stats > div {
      flex: 1 1 120px;
      min-width: 0;
    }

    .hero__stat-value {
      font-family: var(--ff-display);
      font-size: 2rem;
      font-weight: 700;
      color: var(--btc-white);
      line-height: 1;
    }

    .hero__stat-label {
      font-size: 0.78rem;
      color: rgba(255,255,255,0.5);
      text-transform: uppercase;
      letter-spacing: 0;
      margin-top: 4px;
    }

    /* ============================================================
       ABOUT / CREDIBILITY STRIP
       ============================================================ */
    .strip {
      background: var(--btc-orange);
      padding: 20px 0;
      overflow: hidden;
    }

    .strip__inner {
      display: flex;
      align-items: center;
      gap: 60px;
      animation: marquee 20s linear infinite;
      white-space: nowrap;
    }

    .strip__item {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 0.85rem;
      font-weight: 600;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--btc-white);
      flex-shrink: 0;
    }

    .strip__dot {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: rgba(255,255,255,0.6);
      flex-shrink: 0;
    }

    @keyframes marquee {
      0%   { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

    /* ============================================================
       ABOUT
       ============================================================ */
    .about {
      padding: 100px 0;
      background: var(--btc-white);
    }

    .about__grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
    }

    .about__visual {
      position: relative;
    }

    .about__card {
      background: var(--btc-black);
      color: var(--btc-white);
      padding: 48px;
      border-radius: var(--radius-md);
      position: relative;
      overflow: hidden;
    }

    .about__card::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 4px;
      background: linear-gradient(90deg, var(--btc-orange), var(--btc-orange-lt));
    }

    .about__card-quote {
      font-family: var(--ff-display);
      font-size: 1.5rem;
      font-style: italic;
      line-height: 1.4;
      margin-bottom: 24px;
    }

    .about__card-author {
      font-size: 0.875rem;
      font-weight: 500;
      color: var(--btc-orange);
      letter-spacing: 0.05em;
    }

    .about__badge {
      position: absolute;
      bottom: -20px;
      right: 40px;
      background: var(--btc-orange);
      color: var(--btc-white);
      padding: 16px 24px;
      border-radius: var(--radius-md);
      font-size: 0.8rem;
      font-weight: 600;
      text-align: center;
      box-shadow: 0 8px 24px rgba(232,93,4,0.4);
    }

    .about__badge-num {
      font-family: var(--ff-display);
      font-size: 1.75rem;
      font-weight: 700;
      display: block;
      line-height: 1;
      margin-bottom: 4px;
    }

    .about__content .section-subtitle {
      max-width: 100%;
    }

    .about__list {
      list-style: none;
      margin-top: 32px;
      display: flex;
      flex-direction: column;
      gap: 16px;
    }

    .about__list li {
      display: flex;
      align-items: flex-start;
      gap: 14px;
      font-size: 0.975rem;
      color: var(--btc-gray-700);
      line-height: 1.5;
    }

    .about__check {
      width: 22px;
      height: 22px;
      background: var(--btc-orange);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      margin-top: 1px;
    }

    .about__check svg {
      width: 12px;
      height: 12px;
      stroke: white;
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    /* ============================================================
       WHO IT'S FOR
       ============================================================ */
    .audience {
      padding: 100px 0;
      background: var(--btc-gray-100);
    }

    .audience__header {
      text-align: center;
      max-width: 680px;
      margin: 0 auto 64px;
    }

    .audience__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }

    .audience__card {
      background: var(--btc-white);
      border-radius: var(--radius-md);
      padding: 40px 32px;
      border: 1px solid var(--btc-gray-200);
      transition: transform var(--transition), box-shadow var(--transition);
    }

    .audience__card:hover {
      transform: translateY(-6px);
      box-shadow: 0 16px 48px rgba(0,0,0,0.1);
    }

    .audience__icon {
      width: 52px;
      height: 52px;
      background: var(--btc-black);
      border-radius: var(--radius-sm);
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 24px;
    }

    .audience__icon svg {
      width: 26px;
      height: 26px;
      stroke: var(--btc-orange);
      fill: none;
      stroke-width: 1.5;
    }

    .audience__title {
      font-family: var(--ff-display);
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 12px;
    }

    .audience__desc {
      font-size: 0.925rem;
      color: var(--btc-gray-700);
      line-height: 1.6;
    }

    /* ============================================================
       COURSES / PRICING
       ============================================================ */
    .courses {
      padding: 100px 0;
      background: var(--btc-black);
    }

    .courses__header {
      text-align: center;
      max-width: 680px;
      margin: 0 auto 64px;
    }

    .courses__grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 24px;
    }

    /* ---- Course Card ---- */
    .course-card {
      background: var(--btc-gray-700);
      border-radius: var(--radius-md);
      padding: 40px;
      border: 1px solid rgba(255,255,255,0.08);
      display: flex;
      flex-direction: column;
      gap: 20px;
      position: relative;
      overflow: hidden;
      transition: transform var(--transition), border-color var(--transition);
    }

    .course-card:hover {
      transform: translateY(-4px);
      border-color: rgba(232,93,4,0.4);
    }

    .course-card--featured {
      background: var(--btc-white);
      border: 2px solid var(--btc-orange);
    }

    .course-card--featured .course-card__label,
    .course-card--featured .course-card__price,
    .course-card--featured .course-card__title,
    .course-card--featured .course-card__desc {
      color: var(--btc-black);
    }

    .course-card--featured .course-card__features li {
      color: var(--btc-gray-700);
    }

    .course-card--featured .course-card__feature-icon {
      background: var(--btc-orange);
    }

    .course-card__badge {
      position: absolute;
      top: 0; right: 0;
      background: var(--btc-orange);
      color: white;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      padding: 6px 16px;
      border-bottom-left-radius: var(--radius-sm);
    }

    .course-card__label {
      font-size: 0.72rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--btc-orange);
    }

    .course-card__title {
      font-family: var(--ff-display);
      font-size: 1.4rem;
      font-weight: 700;
      color: var(--btc-white);
      line-height: 1.2;
    }

    .course-card__desc {
      font-size: 0.9rem;
      color: rgba(255,255,255,0.65);
      line-height: 1.6;
    }

    .course-card__price {
      display: flex;
      align-items: baseline;
      gap: 4px;
      color: var(--btc-white);
    }

    .course-card__price-amount {
      font-family: var(--ff-display);
      font-size: 2.5rem;
      font-weight: 700;
    }

    .course-card__price-period {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.5);
    }

    .course-card--featured .course-card__price-period { color: var(--btc-gray-400); }

    .course-card__divider {
      height: 1px;
      background: rgba(255,255,255,0.1);
    }

    .course-card--featured .course-card__divider { background: var(--btc-gray-200); }

    .course-card__features {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 12px;
      flex: 1;
    }

    .course-card__features li {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 0.875rem;
      color: rgba(255,255,255,0.75);
    }

    .course-card__feature-icon {
      width: 18px;
      height: 18px;
      background: rgba(232,93,4,0.2);
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .course-card__feature-icon svg {
      width: 10px;
      height: 10px;
      stroke: var(--btc-orange);
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .course-card .btn {
      width: 100%;
      margin-top: auto;
    }

    /* ============================================================
       FRAMEWORK TEASER
       ============================================================ */
    .framework {
      padding: 100px 0;
      background: var(--btc-white);
    }

    .framework__inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 80px;
      align-items: center;
    }

    .framework__acronym {
      display: flex;
      flex-direction: column;
      gap: 0;
    }

    .framework__letter-row {
      display: flex;
      align-items: center;
      gap: 20px;
      padding: 16px 0;
      border-bottom: 1px solid var(--btc-gray-200);
    }

    .framework__letter-row:first-child { border-top: 1px solid var(--btc-gray-200); }

    .framework__letter {
      font-family: var(--ff-display);
      font-size: 2rem;
      font-weight: 700;
      color: var(--btc-orange);
      width: 36px;
      flex-shrink: 0;
    }

    .framework__word {
      font-weight: 600;
      font-size: 1rem;
      color: var(--btc-black);
    }

    .framework__word-sub {
      font-size: 0.825rem;
      color: var(--btc-gray-400);
      margin-left: 6px;
      font-style: italic;
    }

    .framework__lock {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-top: 24px;
      font-size: 0.8rem;
      color: var(--btc-gray-400);
      font-style: italic;
    }

    .framework__lock svg {
      width: 14px;
      height: 14px;
      stroke: var(--btc-gray-400);
      fill: none;
      stroke-width: 2;
    }

    /* ============================================================
       TESTIMONIALS
       ============================================================ */
    .testimonials {
      padding: 100px 0;
      background: var(--btc-gray-100);
    }

    .testimonials__header {
      text-align: center;
      max-width: 620px;
      margin: 0 auto 64px;
    }

    .testimonials__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }

    .testimonial {
      background: var(--btc-white);
      border-radius: var(--radius-md);
      padding: 36px 32px;
      border: 1px solid var(--btc-gray-200);
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    .testimonial__stars {
      display: flex;
      gap: 4px;
    }

    .testimonial__stars svg {
      width: 16px;
      height: 16px;
      fill: var(--btc-orange);
    }

    .testimonial__text {
      font-family: var(--ff-display);
      font-style: italic;
      font-size: 1.05rem;
      line-height: 1.6;
      color: var(--btc-black);
      flex: 1;
    }

    .testimonial__author {
      display: flex;
      flex-direction: column;
    }

    .testimonial__name {
      font-weight: 600;
      font-size: 0.9rem;
    }

    .testimonial__role {
      font-size: 0.8rem;
      color: var(--btc-gray-400);
    }

    /* ============================================================
       CTA BANNER
       ============================================================ */
    .cta-banner {
      padding: 100px 0;
      background: var(--btc-orange);
      text-align: center;
    }

    .cta-banner__title {
      font-family: var(--ff-display);
      font-size: clamp(2rem, 4vw, 3.5rem);
      font-weight: 700;
      color: var(--btc-white);
      max-width: 700px;
      margin: 0 auto 24px;
      line-height: 1.15;
    }

    .cta-banner__sub {
      font-size: 1.1rem;
      color: rgba(255,255,255,0.85);
      max-width: 480px;
      margin: 0 auto 40px;
    }

    .cta-banner .btn-outline {
      border-color: rgba(255,255,255,0.6);
    }

    /* ============================================================
       FOOTER
       ============================================================ */
    .footer {
      background: var(--btc-black);
      color: rgba(255,255,255,0.6);
      padding: 60px 0 32px;
    }

    .footer__grid {
      display: grid;
      grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
      gap: 40px;
      padding-bottom: 48px;
      border-bottom: 1px solid rgba(255,255,255,0.08);
      margin-bottom: 32px;
    }

    .footer__brand-name {
      font-family: var(--ff-display);
      font-size: 1.25rem;
      font-weight: 700;
      color: var(--btc-white);
      margin-bottom: 12px;
    }

    .footer__brand-name span { color: var(--btc-orange); }

    .footer__logo-img {
      height: 44px;
      width: auto;
      background: var(--btc-white);
      padding: 8px 14px;
      border-radius: var(--radius-sm);
      margin-bottom: 16px;
    }

    .footer__brand-desc {
      font-size: 0.875rem;
      line-height: 1.7;
      max-width: 280px;
    }

    .footer__col-title {
      font-size: 0.78rem;
      font-weight: 600;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--btc-white);
      margin-bottom: 16px;
    }

    .footer__col-links {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }

    .footer__col-links a {
      font-size: 0.875rem;
      color: rgba(255,255,255,0.55);
      transition: color var(--transition);
    }

    .footer__col-links a:hover { color: var(--btc-orange); }

    .footer__bottom {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: 0.8rem;
      flex-wrap: wrap;
      gap: 12px;
    }

    .footer__bottom a { color: rgba(255,255,255,0.4); }
    .footer__bottom a:hover { color: var(--btc-orange); }

    /* ============================================================
       ENROLLMENT MODAL
       ============================================================ */
    .modal-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,0.85);
      z-index: 1000;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 24px;
      opacity: 0;
      visibility: hidden;
      transition: opacity 0.3s ease, visibility 0.3s ease;
      backdrop-filter: blur(4px);
    }

    .modal-overlay.open {
      opacity: 1;
      visibility: visible;
    }

    .modal {
      background: var(--btc-white);
      border-radius: var(--radius-lg);
      width: 100%;
      max-width: 680px;
      max-height: 92vh;
      overflow-y: auto;
      position: relative;
      transform: scale(0.95) translateY(16px);
      transition: transform 0.3s ease;
    }

    .modal-overlay.open .modal {
      transform: scale(1) translateY(0);
    }

    /* Scrollbar in modal */
    .modal::-webkit-scrollbar { width: 6px; }
    .modal::-webkit-scrollbar-track { background: var(--btc-gray-100); }
    .modal::-webkit-scrollbar-thumb { background: var(--btc-gray-200); border-radius: 3px; }

    .modal__header {
      background: var(--btc-black);
      padding: 32px 40px;
      border-radius: var(--radius-lg) var(--radius-lg) 0 0;
      position: relative;
    }

    .modal__header::after {
      content: '';
      display: block;
      height: 3px;
      background: linear-gradient(90deg, var(--btc-orange), var(--btc-orange-lt));
      position: absolute;
      bottom: 0; left: 0; right: 0;
    }

    .modal__close {
      position: absolute;
      top: 20px; right: 20px;
      background: rgba(255,255,255,0.1);
      border: none;
      color: var(--btc-white);
      width: 36px;
      height: 36px;
      border-radius: 50%;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.2rem;
      transition: background var(--transition);
      line-height: 1;
    }

    .modal__close:hover { background: rgba(255,255,255,0.2); }

    .modal__course-tag {
      font-size: 0.7rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--btc-orange);
      margin-bottom: 8px;
    }

    .modal__course-name {
      font-family: var(--ff-display);
      font-size: 1.5rem;
      font-weight: 700;
      color: var(--btc-white);
      margin-bottom: 8px;
    }

    .modal__course-price {
      font-size: 2rem;
      font-weight: 700;
      color: var(--btc-white);
      font-family: var(--ff-display);
    }

    .modal__course-price small {
      font-size: 0.9rem;
      font-weight: 400;
      color: rgba(255,255,255,0.55);
      font-family: var(--ff-body);
    }

    .modal__body {
      padding: 36px 40px;
    }

    .modal__step {
      display: none;
    }

    .modal__step.active {
      display: block;
    }

    .modal__step-title {
      font-family: var(--ff-display);
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 24px;
      color: var(--btc-black);
    }

    /* Form */
    .form-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
    }

    .form-grid--full { grid-template-columns: 1fr; }

    .form-group {
      display: flex;
      flex-direction: column;
      gap: 6px;
    }

    .form-group--full { grid-column: 1 / -1; }

    .form-label {
      font-size: 0.8rem;
      font-weight: 600;
      letter-spacing: 0.04em;
      color: var(--btc-black);
      text-transform: uppercase;
    }

    .form-label .required {
      color: var(--btc-orange);
      margin-left: 2px;
    }

    .form-input,
    .form-select {
      width: 100%;
      padding: 12px 16px;
      border: 1.5px solid var(--btc-gray-200);
      border-radius: var(--radius-sm);
      font-family: var(--ff-body);
      font-size: 0.95rem;
      color: var(--btc-black);
      background: var(--btc-white);
      transition: border-color var(--transition), box-shadow var(--transition);
      outline: none;
    }

    .form-input:focus,
    .form-select:focus {
      border-color: var(--btc-orange);
      box-shadow: 0 0 0 3px rgba(232,93,4,0.12);
    }

    .form-input.error,
    .form-select.error {
      border-color: #d32f2f;
    }

    .form-error {
      font-size: 0.78rem;
      color: #d32f2f;
      display: none;
    }

    .form-error.show { display: block; }

    /* Checkboxes */
    .form-checkbox-group {
      display: flex;
      flex-direction: column;
      gap: 14px;
      margin-top: 8px;
    }

    .form-checkbox {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      cursor: pointer;
    }

    .form-checkbox input[type="checkbox"] {
      width: 18px;
      height: 18px;
      accent-color: var(--btc-orange);
      flex-shrink: 0;
      margin-top: 2px;
      cursor: pointer;
    }

    .form-checkbox-label {
      font-size: 0.875rem;
      color: var(--btc-gray-700);
      line-height: 1.5;
    }

    .form-checkbox-label a {
      color: var(--btc-orange);
      text-decoration: underline;
    }

    /* Enrollment Summary */
    .enrollment-summary {
      background: var(--btc-gray-100);
      border-radius: var(--radius-md);
      padding: 24px;
      margin-bottom: 24px;
    }

    .enrollment-summary__title {
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--btc-gray-400);
      margin-bottom: 16px;
    }

    .enrollment-summary__row {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 8px 0;
      border-bottom: 1px solid var(--btc-gray-200);
      font-size: 0.9rem;
    }

    .enrollment-summary__row:last-child {
      border-bottom: none;
      padding-top: 16px;
      font-weight: 700;
      font-size: 1rem;
    }

    .enrollment-summary__label { color: var(--btc-gray-700); }
    .enrollment-summary__value { color: var(--btc-black); font-weight: 500; }
    .enrollment-summary__total-price { color: var(--btc-orange); font-size: 1.15rem; font-weight: 700; }

    .modal__actions {
      display: flex;
      gap: 12px;
      margin-top: 24px;
    }

    .modal__actions .btn { flex: 1; }

    .modal__back-btn {
      background: var(--btc-gray-100);
      color: var(--btc-black);
    }

    .modal__back-btn:hover { background: var(--btc-gray-200); }

    .modal__progress {
      display: flex;
      gap: 6px;
      margin-bottom: 24px;
    }

    .modal__progress-dot {
      width: 8px; height: 8px;
      border-radius: 50%;
      background: var(--btc-gray-200);
      transition: background var(--transition);
    }

    .modal__progress-dot.active { background: var(--btc-orange); }
    .modal__progress-dot.done { background: var(--btc-orange); opacity: 0.4; }

    /* Stripe redirect notice */
    .stripe-notice {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      background: #f0faf4;
      border: 1px solid #b7e4c7;
      border-radius: var(--radius-sm);
      padding: 14px 16px;
      margin-bottom: 20px;
      font-size: 0.85rem;
      color: #1a6b3c;
    }

    .stripe-notice svg {
      width: 18px;
      height: 18px;
      stroke: #1a6b3c;
      fill: none;
      stroke-width: 2;
      flex-shrink: 0;
      margin-top: 1px;
    }

    /* ============================================================
       CONFIRMATION VIEW
       ============================================================ */
    .confirmation-overlay {
      position: fixed;
      inset: 0;
      background: var(--btc-white);
      z-index: 1100;
      display: none;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      padding: 40px;
      text-align: center;
    }

    .confirmation-overlay.open {
      display: flex;
    }

    .confirmation__icon {
      width: 80px; height: 80px;
      background: linear-gradient(135deg, var(--btc-orange), var(--btc-orange-lt));
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 32px;
      animation: pop 0.4s ease;
    }

    .confirmation__icon svg {
      width: 40px;
      height: 40px;
      stroke: white;
      fill: none;
      stroke-width: 2.5;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    @keyframes pop {
      0%   { transform: scale(0); }
      70%  { transform: scale(1.15); }
      100% { transform: scale(1); }
    }

    .confirmation__title {
      font-family: var(--ff-display);
      font-size: clamp(1.8rem, 4vw, 2.8rem);
      font-weight: 700;
      margin-bottom: 12px;
    }

    .confirmation__course {
      font-size: 1.1rem;
      color: var(--btc-orange);
      font-weight: 600;
      margin-bottom: 32px;
    }

    .confirmation__steps {
      display: flex;
      gap: 24px;
      justify-content: center;
      flex-wrap: wrap;
      max-width: 700px;
      margin: 0 auto 40px;
    }

    .confirmation__step {
      background: var(--btc-gray-100);
      border-radius: var(--radius-md);
      padding: 24px 20px;
      flex: 1;
      min-width: 180px;
      text-align: left;
    }

    .confirmation__step-num {
      font-family: var(--ff-display);
      font-size: 1.75rem;
      font-weight: 700;
      color: var(--btc-orange);
      line-height: 1;
      margin-bottom: 8px;
    }

    .confirmation__step-title {
      font-weight: 600;
      font-size: 0.9rem;
      margin-bottom: 4px;
    }

    .confirmation__step-desc {
      font-size: 0.8rem;
      color: var(--btc-gray-400);
      line-height: 1.5;
    }

    .confirmation__support {
      font-size: 0.875rem;
      color: var(--btc-gray-400);
      margin-bottom: 32px;
    }

    .confirmation__support a {
      color: var(--btc-orange);
      text-decoration: underline;
    }

    /* ============================================================
       ADMIN SECTION (hidden — access via URL hash #admin)
       ============================================================ */
    .admin-section {
      display: none;
      padding: 80px 0;
      background: var(--btc-gray-100);
      border-top: 4px solid var(--btc-orange);
    }

    .admin-section.visible { display: block; }

    .admin__header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 40px;
    }

    .admin__badge {
      background: var(--btc-orange);
      color: white;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      padding: 4px 12px;
      border-radius: 20px;
    }

    .admin__stats-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
      margin-bottom: 40px;
    }

    .admin__stat-card {
      background: var(--btc-white);
      border-radius: var(--radius-md);
      padding: 24px;
      border: 1px solid var(--btc-gray-200);
    }

    .admin__stat-label {
      font-size: 0.75rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--btc-gray-400);
      margin-bottom: 8px;
    }

    .admin__stat-value {
      font-family: var(--ff-display);
      font-size: 2rem;
      font-weight: 700;
      color: var(--btc-black);
    }

    .admin__stat-delta {
      font-size: 0.8rem;
      color: #1a6b3c;
      margin-top: 4px;
    }

    .admin__table-wrap {
      background: var(--btc-white);
      border-radius: var(--radius-md);
      border: 1px solid var(--btc-gray-200);
      overflow: hidden;
    }

    .admin__table-title {
      padding: 20px 24px;
      border-bottom: 1px solid var(--btc-gray-200);
      font-weight: 600;
      font-size: 0.9rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .admin__table {
      width: 100%;
      border-collapse: collapse;
      font-size: 0.875rem;
    }

    .admin__table th {
      text-align: left;
      padding: 12px 24px;
      background: var(--btc-gray-100);
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      color: var(--btc-gray-400);
      font-weight: 600;
    }

    .admin__table td {
      padding: 14px 24px;
      border-bottom: 1px solid var(--btc-gray-100);
      color: var(--btc-gray-700);
    }

    .admin__table tr:last-child td { border-bottom: none; }

    .admin__status-badge {
      display: inline-block;
      padding: 3px 10px;
      border-radius: 20px;
      font-size: 0.75rem;
      font-weight: 600;
    }

    .admin__status-badge--pending { background: #fff3e0; color: #e65100; }
    .admin__status-badge--complete { background: #e8f5e9; color: #2e7d32; }
    .admin__status-badge--lead { background: #e3f2fd; color: #1565c0; }

    .admin__notice {
      margin-top: 20px;
      padding: 16px 20px;
      background: #fff8e1;
      border: 1px solid #ffe082;
      border-radius: var(--radius-sm);
      font-size: 0.85rem;
      color: #7c5b00;
    }


    /* ============================================================
       INSTRUCTOR / ABOUT SECTION
       ============================================================ */
    .instructor {
      padding: 100px 0;
      background: var(--btc-white);
    }
    .instructor__grid {
      display: grid;
      grid-template-columns: 420px 1fr;
      gap: 80px;
      align-items: center;
    }
    .instructor__photo-wrap {
      position: relative;
      display: flex;
      justify-content: center;
    }
    .instructor__photo {
      width: 100%;
      max-width: 380px;
      height: auto;
      border-radius: 50%;
      display: block;
      box-shadow: 0 20px 60px rgba(0,0,0,0.15);
    }
    .instructor__photo-ring {
      position: absolute;
      inset: -12px;
      border-radius: 50%;
      border: 3px solid var(--btc-orange);
      opacity: 0.3;
      pointer-events: none;
    }
    .instructor__photo-badge {
      position: absolute;
      bottom: 16px;
      right: 0;
      background: var(--btc-orange);
      color: var(--btc-white);
      padding: 10px 18px;
      border-radius: var(--radius-md);
      font-size: 0.75rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      box-shadow: 0 6px 20px rgba(232,93,4,0.4);
      white-space: nowrap;
    }
    .instructor__eyebrow {
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--btc-orange);
      display: block;
      margin-bottom: 10px;
    }
    .instructor__headline {
      font-family: var(--ff-display);
      font-size: clamp(1.6rem, 3vw, 2.5rem);
      font-weight: 700;
      line-height: 1.15;
      color: var(--btc-black);
      margin-bottom: 8px;
    }
    .instructor__name {
      font-family: var(--ff-display);
      font-size: 1.35rem;
      font-weight: 700;
      color: var(--btc-black);
      margin-bottom: 24px;
    }
    .instructor__name span { color: var(--btc-orange); }
    .instructor__tags {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-bottom: 28px;
    }
    .instructor__tag {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      padding: 6px 14px;
      background: var(--btc-black);
      color: var(--btc-white);
      border-radius: 100px;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.06em;
      text-transform: uppercase;
    }
    .instructor__tag-dot {
      width: 6px;
      height: 6px;
      background: var(--btc-orange);
      border-radius: 50%;
      flex-shrink: 0;
    }
    .instructor__bio {
      font-size: 1rem;
      color: var(--btc-gray-700);
      line-height: 1.75;
      margin-bottom: 20px;
      max-width: 580px;
    }
    .instructor__pull {
      border-left: 4px solid var(--btc-orange);
      padding-left: 20px;
      margin-top: 24px;
    }
    .instructor__pull-text {
      font-family: var(--ff-display);
      font-style: italic;
      font-size: 1.1rem;
      color: var(--btc-black);
      line-height: 1.6;
    }
    @media (max-width: 1024px) {
      .instructor__grid { grid-template-columns: 320px 1fr; gap: 52px; }
    }
    @media (max-width: 768px) {
      .instructor__grid { grid-template-columns: 1fr; gap: 40px; }
      .instructor__photo-wrap { max-width: 280px; margin: 0 auto; }
      .instructor__photo-badge { right: -8px; bottom: 8px; }
    }


    /* ============================================================
       CURRICULUM CATALOG OVERLAY PANEL
       Full-screen slide-in panel housing the catalog in an iframe.
       ============================================================ */
    .catalog-overlay {
      position: fixed;
      inset: 0;
      z-index: 1050;
      display: flex;
      flex-direction: column;
      background: #fff;
      transform: translateX(100%);
      transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
      will-change: transform;
    }
    .catalog-overlay.open {
      transform: translateX(0);
    }
    .catalog-overlay__bar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 14px 28px;
      background: var(--btc-black);
      border-bottom: 3px solid var(--btc-orange);
      flex-shrink: 0;
      gap: 16px;
    }
    .catalog-overlay__title {
      font-family: var(--ff-display);
      font-size: 1rem;
      font-weight: 700;
      color: var(--btc-white);
      letter-spacing: -0.01em;
    }
    .catalog-overlay__title span { color: var(--btc-orange); }
    .catalog-overlay__actions {
      display: flex;
      align-items: center;
      gap: 12px;
    }
    .catalog-overlay__enroll {
      padding: 8px 20px;
      font-size: 0.78rem;
    }
    .catalog-overlay__close {
      background: rgba(255,255,255,0.1);
      border: none;
      color: var(--btc-white);
      width: 36px;
      height: 36px;
      border-radius: 50%;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.3rem;
      line-height: 1;
      transition: background var(--transition);
      flex-shrink: 0;
    }
    .catalog-overlay__close:hover { background: rgba(255,255,255,0.2); }
    .catalog-overlay__frame {
      flex: 1;
      border: none;
      width: 100%;
      display: block;
    }
    @media (max-width: 480px) {
      .catalog-overlay__bar { padding: 12px 16px; }
      .catalog-overlay__enroll { display: none; }
    }

    /* ============================================================
       LEAD CAPTURE (hidden Netlify form)
       ============================================================ */
    /* This form is hidden — submitted via JS fetch for partial leads */
    .netlify-lead-form { display: none; }

    /* ============================================================
       NEW SECTION STYLES
       ============================================================ */

    /* ── Catalog link (on course cards) ── */
    .catalog-link {
      display: inline-block;
      font-size: 0.8rem;
      font-weight: 600;
      color: var(--btc-orange);
      text-decoration: none;
      letter-spacing: 0.02em;
      margin-bottom: 4px;
      transition: color var(--transition);
    }
    .catalog-link:hover { color: var(--btc-orange-lt); text-decoration: underline; }
    .course-card--featured .catalog-link { color: var(--btc-orange); }
    .course-card--featured .catalog-link:hover { color: var(--btc-orange-lt); }

    /* ── Course card prerequisite notice ── */
    .course-card__prereq {
      display: flex;
      align-items: flex-start;
      gap: 8px;
      background: rgba(232,93,4,0.12);
      border: 1px solid rgba(232,93,4,0.3);
      border-radius: var(--radius-sm);
      padding: 10px 12px;
      font-size: 0.78rem;
      color: var(--btc-orange-lt);
      line-height: 1.5;
    }
    .course-card__prereq svg {
      width: 14px;
      height: 14px;
      flex-shrink: 0;
      margin-top: 1px;
    }

    /* ── Why Mediation section ── */
    .why-mediation {
      padding: 100px 0;
      background: var(--btc-black);
    }
    .why-mediation__header {
      text-align: center;
      max-width: 720px;
      margin: 0 auto 64px;
    }
    .why-mediation__grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 24px;
    }
    .why-card {
      background: var(--btc-gray-700);
      border-radius: var(--radius-md);
      padding: 40px 36px;
      border: 1px solid rgba(255,255,255,0.08);
      transition: transform var(--transition), border-color var(--transition);
    }
    .why-card:hover {
      transform: translateY(-4px);
      border-color: rgba(232,93,4,0.35);
    }
    .why-card__stat {
      font-family: var(--ff-display);
      font-size: 2.5rem;
      font-weight: 700;
      color: var(--btc-orange);
      line-height: 1;
      margin-bottom: 16px;
    }
    .why-card__text {
      font-size: 0.95rem;
      color: rgba(255,255,255,0.72);
      line-height: 1.7;
    }

    /* ── Outcomes section ── */
    .outcomes {
      padding: 100px 0;
      background: var(--btc-black);
    }
    .outcomes__header {
      text-align: center;
      max-width: 720px;
      margin: 0 auto 64px;
    }
    .outcomes__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
    }
    .outcome-card {
      background: var(--btc-gray-700);
      border-radius: var(--radius-md);
      padding: 36px 32px;
      border: 1px solid rgba(255,255,255,0.08);
      position: relative;
      transition: transform var(--transition), border-color var(--transition);
    }
    .outcome-card:hover {
      transform: translateY(-4px);
      border-color: rgba(232,93,4,0.35);
    }
    .outcome-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 3px;
      background: linear-gradient(90deg, var(--btc-orange), var(--btc-orange-lt));
      border-radius: var(--radius-md) var(--radius-md) 0 0;
    }
    .outcome-card__num {
      font-family: var(--ff-display);
      font-size: 0.75rem;
      font-weight: 700;
      color: var(--btc-orange);
      letter-spacing: 0.1em;
      margin-bottom: 14px;
    }
    .outcome-card__title {
      font-family: var(--ff-display);
      font-size: 1.25rem;
      font-weight: 700;
      color: var(--btc-white);
      margin-bottom: 12px;
      line-height: 1.2;
    }
    .outcome-card__desc {
      font-size: 0.9rem;
      color: rgba(255,255,255,0.65);
      line-height: 1.65;
    }

    /* ── Guarantee section ── */
    .guarantee {
      padding: 80px 0;
      background: var(--btc-gray-100);
    }
    .guarantee__card {
      display: flex;
      align-items: stretch;
      background: var(--btc-black);
      border-radius: var(--radius-md);
      overflow: hidden;
      box-shadow: 0 8px 40px rgba(0,0,0,0.18);
    }
    .guarantee__accent {
      width: 6px;
      background: linear-gradient(180deg, var(--btc-orange), var(--btc-orange-lt));
      flex-shrink: 0;
    }
    .guarantee__content {
      padding: 48px 52px;
      flex: 1;
    }
    .guarantee__title {
      font-family: var(--ff-display);
      font-size: clamp(1.5rem, 3vw, 2.25rem);
      font-weight: 700;
      color: var(--btc-white);
      margin-bottom: 20px;
      line-height: 1.15;
    }
    .guarantee__text {
      font-size: 1.1rem;
      color: rgba(255,255,255,0.78);
      line-height: 1.7;
      max-width: 680px;
      margin-bottom: 12px;
    }
    .guarantee__tagline {
      font-family: var(--ff-display);
      font-style: italic;
      font-size: 1.15rem;
      color: var(--btc-orange);
    }

    /* ── FAQ section ── */
    .faq {
      padding: 100px 0;
      background: var(--btc-white);
    }
    .faq__header {
      max-width: 680px;
      margin: 0 auto 48px;
      text-align: center;
    }
    .faq__list {
      max-width: 800px;
      margin: 0 auto;
    }
    .faq__item {
      border-bottom: 1px solid var(--btc-gray-200);
    }
    .faq__item:first-child { border-top: 1px solid var(--btc-gray-200); }
    .faq__question {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 22px 0;
      background: none;
      border: none;
      cursor: pointer;
      font-family: var(--ff-body);
      font-size: 1rem;
      font-weight: 600;
      color: var(--btc-black);
      text-align: left;
      transition: color var(--transition);
    }
    .faq__question:hover { color: var(--btc-orange); }
    .faq__question[aria-expanded="true"] { color: var(--btc-orange); }
    .faq__chevron {
      width: 20px;
      height: 20px;
      stroke: currentColor;
      fill: none;
      stroke-width: 2;
      stroke-linecap: round;
      stroke-linejoin: round;
      flex-shrink: 0;
      transition: transform var(--transition);
    }
    .faq__question[aria-expanded="true"] .faq__chevron {
      transform: rotate(180deg);
    }
    .faq__answer {
      padding: 0 0 22px;
    }
    .faq__answer p {
      font-size: 0.95rem;
      color: var(--btc-gray-700);
      line-height: 1.75;
    }
    .faq__catalog-link {
      color: var(--btc-orange);
      font-weight: 600;
      text-decoration: underline;
      font-size: 0.9rem;
    }
    .faq__catalog-link:hover { color: var(--btc-orange-lt); }

    /* ============================================================
       RESPONSIVE
       ============================================================ */
    @media (max-width: 1024px) {
      .courses__grid { grid-template-columns: 1fr; }
      .footer__grid { grid-template-columns: 1fr 1fr; }
      .admin__stats-grid { grid-template-columns: repeat(2, 1fr); }
      .why-mediation__grid { grid-template-columns: 1fr 1fr; }
      .outcomes__grid { grid-template-columns: repeat(2, 1fr); }
    }

    @media (max-width: 768px) {
      .nav__links, .nav__cta { display: none; }
      .nav__hamburger { display: flex; }

      .about__grid { grid-template-columns: 1fr; }
      .audience__grid { grid-template-columns: 1fr; }
      .testimonials__grid { grid-template-columns: 1fr; }
      .framework__inner { grid-template-columns: 1fr; }
      .footer__grid { grid-template-columns: 1fr; }
      .admin__stats-grid { grid-template-columns: 1fr 1fr; }
      .why-mediation__grid { grid-template-columns: 1fr; }
      .outcomes__grid { grid-template-columns: 1fr; }
      .guarantee__content { padding: 36px 28px; }

      /* Hero: stack logo above text on mobile */
      .hero__content {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto;
        padding: 100px 0 60px;
        gap: 32px;
      }
      .hero__logo-col { order: -1; }
      .hero__logo-card { padding: 24px 28px; }
      .hero__logo-img { max-width: 220px; }

      .modal { max-height: 100vh; border-radius: var(--radius-md) var(--radius-md) 0 0; align-self: flex-end; }
      .modal-overlay { align-items: flex-end; padding: 0; }
      .modal__header { padding: 24px; }
      .modal__body { padding: 24px; }
      .form-grid { grid-template-columns: 1fr; }
      .modal__actions { flex-direction: column-reverse; }

      .hero__stats { gap: 20px; }
      .confirmation__steps { flex-direction: column; align-items: center; }
      .confirmation__step { min-width: 240px; }
    }

    @media (max-width: 480px) {
      .hero__social-proof { flex-direction: column; align-items: flex-start; }
      .admin__stats-grid { grid-template-columns: 1fr; }
      .admin__table-wrap { overflow-x: auto; }
      .guarantee__card { flex-direction: column; }
      .guarantee__accent { width: 100%; height: 5px; }
    }

    /* ============================================================
       PATH SPLIT — Hire vs. Learn
       ============================================================ */
    .paths { padding: 100px 0; background: var(--btc-black); }

    .paths__header { text-align: center; max-width: 680px; margin: 0 auto 56px; }

    .paths__grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 28px;
    }

    .paths__grid--three { grid-template-columns: repeat(3, 1fr); }
    @media (max-width: 1000px) { .paths__grid--three { grid-template-columns: 1fr; } }

    .path-card {
      background: var(--btc-gray-700);
      border-radius: var(--radius-md);
      padding: 48px;
      border: 1px solid rgba(255,255,255,0.08);
      display: flex;
      flex-direction: column;
      gap: 18px;
      position: relative;
      overflow: hidden;
    }

    .path-card::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 4px;
      background: linear-gradient(90deg, var(--btc-orange), var(--btc-orange-lt));
    }

    .path-card--accent { border: 2px solid var(--btc-orange); background: var(--btc-black); }

    .path-card__eyebrow {
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      color: var(--btc-orange-lt);
    }

    .path-card__title {
      font-family: var(--ff-display);
      font-size: 1.8rem;
      font-weight: 700;
      color: var(--btc-white);
      line-height: 1.2;
    }

    .path-card__desc {
      color: rgba(255,255,255,0.72);
      font-size: 0.98rem;
      line-height: 1.7;
    }

    .path-card__list { list-style: none; display: flex; flex-direction: column; gap: 10px; margin: 4px 0 8px; }

    .path-card__list li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: 0.9rem;
      color: rgba(255,255,255,0.78);
    }

    .path-card__dot {
      width: 6px; height: 6px; border-radius: 50%;
      background: var(--btc-orange);
      flex-shrink: 0;
      margin-top: 7px;
    }

    .path-card .btn { align-self: flex-start; margin-top: auto; }

    @media (max-width: 768px) {
      .paths__grid { grid-template-columns: 1fr; }
    }

    /* ============================================================
       HIRE — services note row
       ============================================================ */
    .hire-note {
      margin-top: 40px;
      text-align: center;
      font-size: 0.95rem;
      color: var(--btc-gray-700);
    }
    .hire-note a { color: var(--btc-orange); font-weight: 600; text-decoration: underline; }

    /* ============================================================
       HIRE — process steps
       ============================================================ */
    .process { padding: 100px 0; background: var(--btc-white); }

    .process__header { max-width: 680px; margin-bottom: 56px; }

    .process__list { display: flex; flex-direction: column; }

    .process-step {
      display: grid;
      grid-template-columns: 90px 1fr;
      gap: 28px;
      padding: 32px 0;
      border-top: 1px solid var(--btc-gray-200);
    }

    .process-step:last-child { border-bottom: 1px solid var(--btc-gray-200); }

    .process-step__num {
      font-family: var(--ff-display);
      font-style: italic;
      font-size: 2rem;
      color: var(--btc-orange);
    }

    .process-step__title {
      font-family: var(--ff-display);
      font-size: 1.25rem;
      font-weight: 700;
      margin-bottom: 8px;
      color: var(--btc-black);
    }

    .process-step__desc { color: var(--btc-gray-700); font-size: 0.98rem; max-width: 56ch; line-height: 1.7; }

    @media (max-width: 600px) {
      .process-step { grid-template-columns: 1fr; gap: 8px; }
    }

    /* ============================================================
       HIRE — case inquiry form
       ============================================================ */
    .hire-form { padding: 100px 0; background: var(--btc-black); }

    .hire-form__grid {
      display: grid;
      grid-template-columns: 0.85fr 1.15fr;
      gap: 56px;
      align-items: start;
    }

    .hire-form__copy .section-subtitle { max-width: 100%; }

    .hire-form__trust {
      margin-top: 40px;
      padding-top: 28px;
      border-top: 1px solid rgba(255,255,255,0.12);
      display: flex;
      flex-direction: column;
      gap: 16px;
    }

    .hire-form__trust-item b {
      display: block;
      color: var(--btc-white);
      font-size: 0.9rem;
      margin-bottom: 2px;
    }
    .hire-form__trust-item span { color: rgba(255,255,255,0.55); font-size: 0.85rem; }

    .hire-form__card {
      background: var(--btc-white);
      border-radius: var(--radius-md);
      padding: 40px;
    }

    .hire-form__row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
      margin-bottom: 18px;
    }

    .form-textarea {
      width: 100%;
      padding: 12px 16px;
      border: 1.5px solid var(--btc-gray-200);
      border-radius: var(--radius-sm);
      font-family: var(--ff-body);
      font-size: 0.95rem;
      color: var(--btc-black);
      background: var(--btc-white);
      resize: vertical;
      min-height: 120px;
      outline: none;
      transition: border-color var(--transition), box-shadow var(--transition);
    }
    .form-textarea:focus { border-color: var(--btc-orange); box-shadow: 0 0 0 3px rgba(232,93,4,0.12); }

    .hire-form__note { font-size: 0.8rem; color: var(--btc-gray-400); margin-top: 14px; }

    .hire-form__success {
      display: none;
      text-align: center;
      padding: 24px 0;
    }
    .hire-form__success.show { display: block; }
    .hire-form__success h3 { font-family: var(--ff-display); font-size: 1.4rem; margin-bottom: 10px; }
    .hire-form__success p { color: var(--btc-gray-700); }

    @media (max-width: 850px) {
      .hire-form__grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 560px) {
      .hire-form__row { grid-template-columns: 1fr; }
      .hire-form__card { padding: 28px 22px; }
    }

    /* ============================================================
       MEDIATION SERVICE CARDS — price line + CTA
       ============================================================ */
    .audience__card--service { display: flex; flex-direction: column; height: 100%; }
    .audience__price {
      margin: 14px 0 20px;
      font-weight: 600;
      font-size: 0.95rem;
      color: var(--btc-black);
      padding-top: 14px;
      border-top: 1px solid var(--btc-gray-200);
    }
    .audience__price span { display: block; font-weight: 400; font-size: 0.82rem; color: var(--btc-gray-400); margin-top: 2px; }
    .audience__card--service .btn { margin-top: auto; align-self: flex-start; }

    /* ============================================================
       RELATIONSHIP & FAMILY — messaging callout
       ============================================================ */
    .rel-callout {
      background: var(--btc-black);
      border-radius: var(--radius-md);
      padding: 56px;
      margin-top: 48px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 48px;
      align-items: center;
    }
    .rel-callout__lines { display: flex; flex-direction: column; gap: 6px; }
    .rel-callout__lines strong {
      font-family: var(--ff-display);
      font-size: clamp(1.3rem, 2.4vw, 1.7rem);
      color: var(--btc-white);
      font-weight: 700;
      line-height: 1.3;
    }
    .rel-callout__body p { color: rgba(255,255,255,0.75); font-size: 0.98rem; line-height: 1.7; margin-bottom: 14px; }
    .rel-callout__body p:last-child { margin-bottom: 0; }
    .rel-callout__body strong { color: var(--btc-white); }
    @media (max-width: 850px) { .rel-callout { grid-template-columns: 1fr; padding: 36px 28px; } }

    /* ============================================================
       CONFLICT HAPPENS EVERYWHERE — scenario grid
       ============================================================ */
    .scenario-section { padding: 100px 0; background: var(--btc-gray-100); }
    .scenario-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
    .scenario-card {
      background: var(--btc-white);
      border: 1px solid var(--btc-gray-200);
      border-radius: var(--radius-sm);
      padding: 26px 24px;
      font-size: 0.95rem;
      color: var(--btc-black);
      line-height: 1.55;
      transition: transform var(--transition), box-shadow var(--transition);
    }
    .scenario-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,0.08); }
    .scenario-section__close {
      text-align: center;
      max-width: 620px;
      margin: 48px auto 0;
      font-family: var(--ff-display);
      font-size: 1.3rem;
      color: var(--btc-black);
      font-weight: 600;
      line-height: 1.4;
    }
    .scenario-section__cta { text-align: center; margin-top: 28px; }
    @media (max-width: 900px) { .scenario-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 560px) { .scenario-grid { grid-template-columns: 1fr; } }

    /* ============================================================
       WHAT CAN BE MEDIATED — tag grid
       ============================================================ */
    .tag-grid { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; max-width: 920px; margin: 0 auto; }
    .tag-pill {
      background: var(--btc-white);
      border: 1px solid var(--btc-gray-200);
      border-radius: 999px;
      padding: 12px 22px;
      font-size: 0.92rem;
      font-weight: 600;
      color: var(--btc-black);
    }
    .mediated-disclaimer {
      max-width: 680px;
      margin: 40px auto 0;
      text-align: center;
      font-size: 0.85rem;
      color: var(--btc-gray-400);
      line-height: 1.7;
    }

    /* ============================================================
       IS MEDIATION RIGHT FOR ME — quiz
       ============================================================ */
    .quiz-section { padding: 100px 0; background: var(--btc-white); }
    /* Tighten only the two adjacent home-page section transitions. */
    #mediated { padding-bottom: 40px; }
    #mediated + .quiz-section { padding-top: 40px; padding-bottom: 40px; }
    #quiz + .framework { padding-top: 40px; }
    @media (max-width: 600px) {
      #mediated { padding-bottom: 32px; }
      #mediated + .quiz-section { padding-top: 32px; padding-bottom: 32px; }
      #quiz + .framework { padding-top: 32px; }
    }
    .quiz-card {
      max-width: 640px;
      margin: 0 auto;
      background: var(--btc-gray-100);
      border-radius: var(--radius-md);
      padding: 48px;
      border: 1px solid var(--btc-gray-200);
    }
    .quiz-progress { display: flex; gap: 6px; margin-bottom: 32px; }
    .quiz-progress__seg { height: 4px; flex: 1; background: var(--btc-gray-200); border-radius: 2px; overflow: hidden; }
    .quiz-progress__seg.done { background: var(--btc-orange); }
    .quiz-step { display: none; }
    .quiz-step.active { display: block; }
    .quiz-step__q { font-family: var(--ff-display); font-size: 1.3rem; font-weight: 700; color: var(--btc-black); margin-bottom: 24px; }
    .quiz-options { display: flex; flex-direction: column; gap: 10px; }
    .quiz-option {
      width: 100%;
      text-align: left;
      background: var(--btc-white);
      border: 1.5px solid var(--btc-gray-200);
      border-radius: var(--radius-sm);
      padding: 16px 20px;
      font-family: var(--ff-body);
      font-size: 0.95rem;
      color: var(--btc-black);
      cursor: pointer;
      transition: border-color var(--transition), background var(--transition);
    }
    .quiz-option:hover { border-color: var(--btc-orange); }
    .quiz-option.selected { border-color: var(--btc-orange); background: rgba(232,93,4,0.06); }
    .quiz-back { margin-top: 20px; background: none; border: none; color: var(--btc-gray-400); font-size: 0.85rem; cursor: pointer; text-decoration: underline; }
    .quiz-result__badge { font-size: 0.78rem; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: var(--btc-orange); margin-bottom: 10px; }
    .quiz-result__title { font-family: var(--ff-display); font-size: 1.5rem; font-weight: 700; color: var(--btc-black); margin-bottom: 14px; }
    .quiz-result__desc { color: var(--btc-gray-700); font-size: 0.97rem; line-height: 1.7; margin-bottom: 24px; }
    .quiz-note { font-size: 0.78rem; color: var(--btc-gray-400); margin-top: 24px; line-height: 1.6; }
    @media (max-width: 600px) { .quiz-card { padding: 32px 24px; } }

    /* ============================================================
       PRICE CARDS — Conflict Advisory & Organizational Training
       ============================================================ */
    .price-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
    .price-card {
      background: var(--btc-white);
      border: 1px solid var(--btc-gray-200);
      border-radius: var(--radius-md);
      padding: 36px 32px;
      display: flex;
      flex-direction: column;
    }
    .price-card--dark { background: var(--btc-gray-700); border-color: rgba(255,255,255,0.1); }
    .price-card--dark .price-card__title,
    .price-card--dark .price-card__amount { color: var(--btc-white); }
    .price-card--dark .price-card__desc,
    .price-card--dark .price-card__list li { color: rgba(255,255,255,0.7); }
    .price-card__title { font-family: var(--ff-display); font-size: 1.2rem; font-weight: 700; color: var(--btc-black); margin-bottom: 6px; }
    .price-card__amount { font-family: var(--ff-display); font-size: 2.1rem; font-weight: 700; color: var(--btc-black); margin-bottom: 14px; }
    .price-card__amount span { font-size: 0.95rem; font-weight: 400; color: var(--btc-gray-400); }
    .price-card__desc { font-size: 0.92rem; color: var(--btc-gray-700); line-height: 1.6; margin-bottom: 18px; }
    .price-card__list { list-style: none; display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px; flex-grow: 1; }
    .price-card__list li { font-size: 0.88rem; color: var(--btc-gray-700); padding-left: 18px; position: relative; }
    .price-card__list li::before { content: '—'; position: absolute; left: 0; color: var(--btc-orange); }
    .price-card .btn { align-self: flex-start; }
    @media (max-width: 760px) { .price-grid { grid-template-columns: 1fr; } }

    /* ============================================================
       FOR ORGANIZATIONS — services + audiences
       ============================================================ */
    .org-services { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px 40px; margin: 40px 0 48px; }
    .org-services li { font-size: 0.95rem; color: rgba(255,255,255,0.8); padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,0.1); list-style: none; }
    @media (max-width: 700px) { .org-services { grid-template-columns: 1fr; } }

    /* ============================================================
       RESOURCES — thought leadership teaser
       ============================================================ */
    .resources-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .resource-card {
      background: var(--btc-gray-100);
      border-radius: var(--radius-sm);
      padding: 28px 26px;
      font-family: var(--ff-display);
      font-size: 1.05rem;
      font-weight: 600;
      color: var(--btc-black);
      line-height: 1.4;
    }
    @media (max-width: 700px) { .resources-grid { grid-template-columns: 1fr; } }

    /* ============================================================
       REDUCED MOTION
       ============================================================ */
    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
    }