  /* ---------- Design Tokens (identical to homepage / about page) ---------- */


  /* ---------- Page Banner (identical to about.html) ---------- */
  .page-banner{
    position:relative;
    padding:150px 0 70px;
    background:      linear-gradient(125deg, rgba(36,31,32,.92) 35%, rgba(233,29,38,.55) 100%),
      url('/wp-content/uploads/2026/08/474776674_1235339794901290_7850853682255069242_n.jpg') center/cover no-repeat;
    background-color:var(--color-black);
    color:var(--color-white);
    text-align:center;
    overflow:hidden;
  }
    .page-banner-program{
    position:relative;
    padding:150px 0 70px;
    background:      linear-gradient(125deg, rgba(36,31,32,.92) 35%, rgba(233,29,38,.55) 100%),
      url('/wp-content/uploads/2026/08/474776674_1235339794901290_7850853682255069242_n.jpg') center/cover no-repeat;
    background-color:var(--color-black);
    color:var(--color-white);
    text-align:center;
    overflow:hidden;
  }
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__title{ font-size:3rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Programs Grid (detailed cards) ---------- */
  .programs{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--program{
    background:var(--color-white);
    border-radius:8px;
    overflow:hidden;
    height:100%;
    box-shadow:0 4px 18px rgba(0,0,0,.06);
    transition:var(--transition-base);
    border:1px solid #eee;
  }
  .card--program:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 34px rgba(0,0,0,.14);
  }
  .card--program__img-wrap{ position:relative; height:200px; overflow:hidden; }
  .card--program__img{
    width:100%; height:100%; object-fit:cover;
    transition:transform .5s ease;
  }
  .card--program:hover .card--program__img{ transform:scale(1.08); }
  .card--program__tag{
    position:absolute; top:14px; left:14px;
    background:var(--color-red);
    color:var(--color-white);
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:1px;
    padding:5px 12px;
    border-radius:20px;
  }
  .card--program__body{ padding:24px 26px 28px; }
  .card--program__icon{
    width:46px; height:46px;
    background:var(--color-bg-light);
    color:var(--color-red);
    border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    margin-bottom:14px;
    font-size:1.1rem;
  }
  .card--program__title{ font-size:1.18rem; margin-bottom:8px; }
  .card--program__text{ font-size:.9rem; color:#666; margin-bottom:18px; }
  .card--program__meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:18px;
  }
  .card--program__meta-item{
    font-size:.72rem;
    font-family:var(--font-heading);
    letter-spacing:.5px;
    text-transform:uppercase;
    color:var(--color-black);
    background:var(--color-bg-light);
    border-radius:4px;
    padding:5px 10px;
    display:inline-flex;
    align-items:center;
    gap:6px;
  }
  .card--program__meta-item i{ color:var(--color-red); }
  .card--program__features{
    list-style:none;
    padding:0;
    margin:0;
    border-top:1px solid #eee;
    padding-top:16px;
  }
  .card--program__features li{
    font-size:.86rem;
    color:#555;
    margin-bottom:8px;
    display:flex;
    align-items:flex-start;
    gap:8px;
  }
  .card--program__features li:last-child{ margin-bottom:0; }
  .card--program__features i{ color:var(--color-red); margin-top:3px; flex-shrink:0; }

  /* ---------- How It Works ---------- */
  .how-it-works__item{ text-align:center; position:relative; }
  .how-it-works__num{
    width:64px; height:64px;
    margin:0 auto 18px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-family:var(--font-heading);
    font-size:1.4rem;
    font-weight:700;
    border:3px solid var(--color-red);
  }
  .how-it-works__title{ font-size:1.02rem; margin-bottom:8px; }
  .how-it-works__text{ font-size:.88rem; color:#666; margin:0; }

 
 
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }


/************************************************************************************************/
  /* ---------- Page Banner (identical component across subpages) ---------- */

  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }

/*********************************gi bjj programs*********************/

  /* ---------- Page Banner (identical component across subpages) ---------- */
 
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }

/*********************************** mma banner ********************************/

  /* ---------- Page Banner (identical component across subpages) ---------- */
  .mma-banner{
    position:relative;
    padding:150px 0 70px;
    background:
      linear-gradient(125deg, rgba(36,31,32,.92) 35%, rgba(233,29,38,.55) 100%),
      url('') center/cover no-repeat;
    background-color:var(--color-black);
    color:var(--color-white);
    text-align:center;
    overflow:hidden;
  }
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }



/************************************88 fintess program ********************/

  /* ---------- Page Banner (identical component across subpages) ---------- */
  .fitness-banner{
    position:relative;
    padding:150px 0 70px;
    background:      linear-gradient(125deg, rgba(36,31,32,.92) 35%, rgba(233,29,38,.55) 100%),
      url('') center/cover no-repeat;
    background-color:var(--color-black);
    color:var(--color-white);
    text-align:center;
    overflow:hidden;
  }
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }
  

  /************************************ kids programs ***************** /
    /* ---------- Page Banner (identical component across subpages) ---------- */
  .kids-banner{
    position:relative;
    padding:150px 0 70px;
    background:
      linear-gradient(125deg, rgba(36,31,32,.92) 35%, rgba(233,29,38,.55) 100%),
      url('') center/cover no-repeat;
    background-color:var(--color-black);
    color:var(--color-white);
    text-align:center;
    overflow:hidden;
  }
  .page-banner::before{
    content:"";
    position:absolute; inset:0;
    background:repeating-linear-gradient(135deg, rgba(255,255,255,.05) 0 2px, transparent 2px 40px);
    pointer-events:none;
  }
  .page-banner__inner{ position:relative; }
  .page-banner__crumb{
    font-family:var(--font-heading);
    font-size:.85rem;
    letter-spacing:1px;
    text-transform:uppercase;
    color:#dcdcdc;
    margin-bottom:14px;
  }
  .page-banner__crumb a{ color:var(--color-white); }
  .page-banner__crumb a:hover{ color:var(--color-red); }
  .page-banner__crumb .sep{ margin:0 8px; color:#777; }
  .page-banner__tag{
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.3);
    padding:6px 16px;
    border-radius:30px;
    font-family:var(--font-heading);
    font-size:.78rem;
    letter-spacing:1.5px;
    text-transform:uppercase;
    margin-bottom:18px;
  }
  .page-banner__title{ font-size:2.8rem; margin-bottom:14px; }
  .page-banner__text{ color:#dcdcdc; max-width:600px; margin:0 auto 28px; font-size:1.02rem; }

  /* ---------- Overview (2-col image + text) ---------- */
  .overview__img-wrap{ position:relative; }
  .overview__img{
    width:100%;
    border-radius:8px;
    object-fit:cover;
    height:420px;
  }
  .overview__badge{
    position:absolute;
    bottom:-22px; right:-22px;
    background:var(--color-red);
    color:var(--color-white);
    padding:18px 22px;
    border-radius:8px;
    text-align:center;
    box-shadow:0 15px 30px rgba(233,29,38,.35);
  }
  .overview__badge-icon{ font-size:1.4rem; margin-bottom:4px; }
  .overview__badge-label{ font-size:.72rem; text-transform:uppercase; letter-spacing:1px; }
  @media (max-width:991px){ .overview__badge{ right:12px; bottom:-16px; } }
  .overview__text p{ color:#555; margin-bottom:16px; }
  .overview__text p:last-child{ margin-bottom:0; }

  .overview__facts{
    margin-top:26px;
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap:14px;
  }
  .overview__fact{
    background:var(--color-bg-light);
    border-radius:8px;
    padding:14px 16px;
    display:flex;
    align-items:center;
    gap:12px;
  }
  .overview__fact-icon{
    width:38px; height:38px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:.95rem;
  }
  .overview__fact-label{ font-size:.7rem; text-transform:uppercase; letter-spacing:.5px; color:#888; display:block; }
  .overview__fact-value{ font-family:var(--font-heading); font-size:.92rem; color:var(--color-black); }

  /* ---------- What You'll Learn ---------- */
  .learn{ background:var(--gradient-wash), var(--color-bg-light); }
  .card--learn{
    background:var(--color-white);
    border:1px solid #eee;
    border-radius:8px;
    padding:28px 24px;
    height:100%;
    text-align:center;
    box-shadow:0 4px 18px rgba(0,0,0,.05);
    transition:var(--transition-base);
  }
  .card--learn:hover{ transform:translateY(-6px); box-shadow:0 16px 28px rgba(0,0,0,.1); }
  .card--learn__icon{
    width:54px; height:54px;
    margin:0 auto 16px;
    border-radius:50%;
    background:var(--color-black);
    color:var(--color-white);
    display:flex; align-items:center; justify-content:center;
    font-size:1.25rem;
  }
  .card--learn__title{ font-size:1rem; margin-bottom:8px; }
  .card--learn__text{ font-size:.86rem; color:#666; margin:0; }

  /* ---------- Why This Program (benefits checklist) ---------- */
  .benefits__list{ list-style:none; padding:0; margin:0; }
  .benefits__list li{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:14px 0;
    border-bottom:1px solid #eee;
    font-size:.95rem;
    color:#444;
  }
  .benefits__list li:last-child{ border-bottom:none; }
  .benefits__list i{
    width:28px; height:28px;
    flex-shrink:0;
    border-radius:50%;
    background:rgba(233,29,38,.1);
    color:var(--color-red);
    display:flex; align-items:center; justify-content:center;
    font-size:.8rem;
    margin-top:2px;
  }
