/* KeepUp Academy shared shell styles (true site-wide LCP). v53.3 Bundle A. */
:root {
      --navy: #243f6b;
      --navy-dark: #172b4d;
      --blue: #2c4a7a;
      --gold: #f5b841;
      --gold-soft: #fff4d8;
      --teal: #3aa6a1;
      --cream: #f8f5ee;
      --white: #ffffff;
      --ink: #1f2937;
      --muted: #5f6b7a;
      --soft: #eef3f8;
      --border: #dbe3ec;
      --shadow: 0 18px 40px rgba(18, 38, 63, 0.12);
      --shadow-soft: 0 10px 24px rgba(18, 38, 63, 0.08);
      --radius-lg: 28px;
      --radius-md: 18px;
      --max: 1180px;
    }

    * { box-sizing: border-box; }

    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      font-family: Arial, Helvetica, sans-serif;
      color: var(--ink);
      background: var(--white);
      line-height: 1.6;
    }

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

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

    a:focus,
    button:focus {
      outline: 3px solid rgba(245, 184, 65, 0.75);
      outline-offset: 3px;
    }

    .skip-link {
      position: absolute;
      left: 16px;
      top: -50px;
      background: var(--navy-dark);
      color: white;
      padding: 10px 14px;
      border-radius: 10px;
      z-index: 9999;
    }

    .skip-link:focus { top: 16px; }

    .container {
      max-width: var(--max);
      margin: 0 auto;
      padding: 0 24px;
    }

    .section { padding: 86px 0; }
    .section-sm { padding: 56px 0; }
    .text-center { text-align: center; }
    .text-center .lead { margin-left: auto; margin-right: auto; }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--blue);
      background: var(--soft);
      border: 1px solid var(--border);
      padding: 8px 13px;
      border-radius: 999px;
      font-size: 0.92rem;
      font-weight: 700;
      margin-bottom: 18px;
    }

    h1,
    h2,
    h3,
    h4 {
      color: var(--navy-dark);
      line-height: 1.12;
      margin: 0 0 16px;
    }

    h1 {
      font-size: clamp(2.45rem, 6vw, 5.1rem);
      letter-spacing: -0.055em;
    }

    h2 {
      font-size: clamp(2rem, 4vw, 3.15rem);
      letter-spacing: -0.04em;
    }

    h3 { font-size: 1.35rem; }
    p { margin: 0 0 18px; }

    .lead {
      font-size: clamp(1.08rem, 2vw, 1.28rem);
      color: var(--muted);
      max-width: 760px;
    }

    .header {
      position: sticky;
      top: 0;
      z-index: 900;
      background: rgba(255, 255, 255, 0.96);
      backdrop-filter: blur(14px);
      border-bottom: 1px solid var(--border);
    }

    .nav {
      display: flex;
      align-items: center;
      justify-content: space-between;
      min-height: 84px;
      gap: 24px;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 12px;
      color: var(--navy-dark);
      white-space: nowrap;
    }

    .brand-logo {
      width: 178px;
      height: auto;
      display: block;
      padding: 6px 0 8px;
    }

    .brand-mark {
      width: 42px;
      height: 42px;
      border-radius: 14px;
      background: linear-gradient(135deg, var(--navy), var(--teal));
      color: white;
      display: grid;
      place-items: center;
      font-weight: 900;
      box-shadow: var(--shadow-soft);
    }

    .nav-links {
      display: flex;
      align-items: center;
      gap: 22px;
      font-size: 0.98rem;
      color: var(--muted);
      font-weight: 700;
    }

    .nav-links a:hover { color: var(--navy); }

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

    .menu-toggle {
      display: none;
      border: 1px solid var(--border);
      background: white;
      color: var(--navy-dark);
      border-radius: 12px;
      padding: 10px 12px;
      font-weight: 800;
      cursor: pointer;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 48px;
      padding: 13px 20px;
      border-radius: 999px;
      font-weight: 900;
      border: 2px solid transparent;
      cursor: pointer;
      transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
      line-height: 1.2;
    }

    .btn:hover {
      transform: translateY(-1px);
      box-shadow: var(--shadow-soft);
    }

    .btn-primary {
      background: var(--gold);
      color: #2b2100;
    }

    .btn-secondary {
      background: var(--navy);
      color: white;
    }

    .btn-outline {
      background: white;
      border-color: var(--navy);
      color: var(--navy);
    }

    .hero {
      background:
        radial-gradient(circle at 12% 12%, rgba(245, 184, 65, 0.2), transparent 28%),
        radial-gradient(circle at 88% 12%, rgba(58, 166, 161, 0.14), transparent 26%),
        linear-gradient(180deg, #f8fbfd 0%, #ffffff 100%);
      padding: 78px 0 70px;
      overflow: hidden;
    }

    .hero-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
      gap: 56px;
      align-items: center;
    }

    .hero-copy { max-width: 690px; }
    .hero .lead { margin-bottom: 28px; }

    .hero-actions {
      display: flex;
      align-items: center;
      gap: 14px;
      flex-wrap: wrap;
      margin-bottom: 26px;
    }

    .trust-list {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      max-width: 620px;
      margin: 26px 0 0;
      padding: 0;
      list-style: none;
    }

    .trust-list li,
    .callout-list li,
    .feature-list li,
    .scam-list li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-weight: 700;
    }

    .trust-list li { color: var(--muted); }

    .check {
      width: 23px;
      height: 23px;
      border-radius: 999px;
      background: var(--gold-soft);
      color: #7b5700;
      display: inline-grid;
      place-items: center;
      flex: 0 0 23px;
      font-weight: 900;
      font-size: 0.9rem;
    }

    .hero-card {
      position: relative;
      background: white;
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 22px;
      box-shadow: var(--shadow);
      overflow: hidden;
    }

    .hero-card::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(circle at 15% 10%, rgba(245, 184, 65, 0.24), transparent 26%),
        radial-gradient(circle at 90% 20%, rgba(58, 166, 161, 0.20), transparent 28%);
      pointer-events: none;
    }

    .product-mockup {
      position: relative;
      z-index: 1;
      display: grid;
      gap: 16px;
    }

    .mockup-top {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 16px;
      padding: 18px;
      border-radius: 22px;
      background: linear-gradient(135deg, var(--navy-dark), var(--blue));
      color: white;
    }

    .mockup-top h3 {
      color: white;
      margin-bottom: 4px;
    }

    .mockup-top p {
      margin: 0;
      color: rgba(255,255,255,0.78);
      font-size: 0.95rem;
    }

    .mockup-pill {
      background: rgba(255,255,255,0.14);
      border: 1px solid rgba(255,255,255,0.22);
      color: white;
      border-radius: 999px;
      padding: 8px 11px;
      font-size: 0.8rem;
      font-weight: 900;
      white-space: nowrap;
    }

    .mockup-grid {
      display: grid;
      grid-template-columns: 1.1fr 0.9fr;
      gap: 16px;
    }

    .mockup-panel {
      background: white;
      border: 1px solid var(--border);
      border-radius: 20px;
      padding: 18px;
      box-shadow: var(--shadow-soft);
    }

    .mockup-panel h4 {
      font-size: 1rem;
      margin-bottom: 8px;
    }

    .mockup-panel p {
      color: var(--muted);
      font-size: 0.94rem;
      margin-bottom: 12px;
    }

    .mockup-alert {
      border-left: 5px solid var(--gold);
    }

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

    .mockup-guide-icon {
      width: 44px;
      height: 44px;
      border-radius: 14px;
      background: var(--gold-soft);
      display: grid;
      place-items: center;
      flex: 0 0 44px;
      font-size: 1.25rem;
    }

    .mockup-progress {
      height: 12px;
      background: var(--soft);
      border-radius: 999px;
      overflow: hidden;
      margin-top: 12px;
    }

    .mockup-progress span {
      display: block;
      width: 58%;
      height: 100%;
      border-radius: 999px;
      background: var(--teal);
    }

    .mockup-footer {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 12px;
    }

    .mockup-stat {
      background: rgba(255,255,255,0.86);
      border: 1px solid var(--border);
      border-radius: 18px;
      padding: 14px;
      text-align: center;
      box-shadow: var(--shadow-soft);
    }

    .mockup-stat strong {
      display: block;
      color: var(--navy-dark);
      font-size: 1.1rem;
    }

    .mockup-stat span {
      color: var(--muted);
      font-size: 0.82rem;
      font-weight: 700;
    }

    .problem,
    .family,
    .faq { background: var(--cream); }

    .real-world {
      background: linear-gradient(180deg, #ffffff 0%, var(--soft) 100%);
    }

    .scenario-card {
      position: relative;
      overflow: hidden;
    }

    .scenario-card::after {
      content: "";
      position: absolute;
      right: -32px;
      top: -32px;
      width: 94px;
      height: 94px;
      border-radius: 999px;
      background: rgba(245, 184, 65, 0.18);
    }

    .scenario-label {
      display: inline-flex;
      align-items: center;
      background: var(--soft);
      color: var(--navy);
      border-radius: 999px;
      padding: 5px 10px;
      font-size: 0.8rem;
      font-weight: 900;
      margin-bottom: 14px;
    }

    .value-strip {
      background: var(--navy-dark);
      color: white;
      padding: 34px 0;
    }

    .value-strip h2,
    .value-strip h3 {
      color: white;
    }

    .value-strip p {
      color: rgba(255, 255, 255, 0.78);
      margin-bottom: 0;
    }

    .value-strip-grid {
      display: grid;
      grid-template-columns: 1.1fr repeat(3, 1fr);
      gap: 24px;
      align-items: center;
    }

    .value-stat {
      border-left: 1px solid rgba(255,255,255,0.16);
      padding-left: 22px;
    }

    .value-stat strong {
      display: block;
      font-size: 1.8rem;
      color: var(--gold);
      line-height: 1.1;
    }

    .outcome-list {
      display: grid;
      gap: 10px;
      padding: 0;
      margin: 18px 0 0;
      list-style: none;
    }

    .outcome-list li {
      display: flex;
      gap: 10px;
      align-items: flex-start;
      color: var(--muted);
      font-weight: 700;
    }

    .section-divider {
      border-top: 1px solid var(--border);
    }

    .course-cta-row {
      display: flex;
      justify-content: center;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 34px;
    }


    .split {
      display: grid;
      grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
      gap: 44px;
      align-items: center;
    }

    .callout-box,
    .card,
    .path-card,
    .price-card,
    .family-panel,
    .dashboard-shell,
    .dashboard-widget {
      background: white;
      border: 1px solid var(--border);
      box-shadow: var(--shadow-soft);
    }

    .callout-box {
      border-radius: var(--radius-lg);
      padding: 32px;
    }

    .callout-list,
    .feature-list,
    .scam-list {
      padding: 0;
      margin: 0;
      display: grid;
      gap: 12px;
      list-style: none;
    }

    .callout-list li { color: var(--navy-dark); }

    .grid {
      display: grid;
      gap: 24px;
    }

    .grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

    .card {
      border-radius: var(--radius-md);
      padding: 28px;
      height: 100%;
    }

    .card p:last-child,
    .path-card p:last-child,
    .price-card p:last-child { margin-bottom: 0; }

    .icon {
      width: 52px;
      height: 52px;
      border-radius: 16px;
      display: grid;
      place-items: center;
      background: var(--soft);
      color: var(--navy);
      font-size: 1.55rem;
      margin-bottom: 18px;
    }

    .lesson-card {
      overflow: hidden;
      padding: 0;
    }

    .lesson-img {
      aspect-ratio: 4 / 3;
      background: var(--soft);
      background-position: center;
      background-size: cover;
    }

    .lesson-body { padding: 24px; }

    .lesson-meta {
      display: inline-flex;
      background: var(--gold-soft);
      color: #6f4f00;
      border-radius: 999px;
      padding: 5px 10px;
      font-size: 0.82rem;
      font-weight: 900;
      margin-bottom: 12px;
    }

    .steps { counter-reset: step; }

    .step-card {
      position: relative;
      padding-left: 78px;
    }

    .step-card::before {
      counter-increment: step;
      content: counter(step);
      position: absolute;
      left: 24px;
      top: 26px;
      width: 38px;
      height: 38px;
      border-radius: 999px;
      background: var(--gold);
      color: #2b2100;
      display: grid;
      place-items: center;
      font-weight: 900;
    }

    .paths {
      background: linear-gradient(180deg, var(--soft), #ffffff);
    }

    .path-card {
      border-radius: var(--radius-lg);
      padding: 32px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 18px;
      min-height: 100%;
    }

    .tag-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin-top: 18px;
    }

    .tag {
      background: var(--soft);
      color: var(--navy);
      font-weight: 800;
      font-size: 0.83rem;
      padding: 6px 10px;
      border-radius: 999px;
    }

    .scam-section {
      background: var(--navy-dark);
      color: white;
    }

    .scam-section h2,
    .scam-section h3 { color: white; }

    .scam-section .lead,
    .scam-section p { color: rgba(255, 255, 255, 0.78); }

    .scam-section .eyebrow {
      background: rgba(255, 255, 255, 0.1);
      color: white;
      border-color: rgba(255, 255, 255, 0.2);
    }

    .scam-card {
      background: rgba(255, 255, 255, 0.08);
      border: 1px solid rgba(255, 255, 255, 0.16);
      border-radius: var(--radius-lg);
      padding: 32px;
    }

    .scam-list { margin-top: 24px; }
    .scam-list li { color: rgba(255, 255, 255, 0.9); }

    .family-panel {
      border-radius: var(--radius-lg);
      padding: 44px;
    }

    .trust-authority {
      background: white;
    }

    .trust-grid .card {
      box-shadow: none;
    }

    .pricing {
      background: linear-gradient(180deg, #ffffff, var(--soft));
    }

    .price-card {
      border-radius: var(--radius-lg);
      padding: 34px;
      position: relative;
      display: flex;
      flex-direction: column;
    }

    .price-card.featured {
      border: 3px solid var(--gold);
      transform: scale(1.02);
      padding-top: 58px;
    }

    .badge {
      position: absolute;
      left: 34px;
      top: 22px;
      background: var(--gold);
      color: #2b2100;
      border-radius: 999px;
      padding: 7px 12px;
      font-size: 0.78rem;
      font-weight: 900;
      line-height: 1;
      letter-spacing: 0.02em;
    }

    .price {
      font-size: 3rem;
      line-height: 1;
      font-weight: 900;
      color: var(--navy-dark);
      margin: 22px 0 6px;
      letter-spacing: -0.04em;
    }

    .price span {
      font-size: 1rem;
      color: var(--muted);
      font-weight: 700;
      letter-spacing: 0;
    }

    .feature-list {
      margin: 24px 0;
      flex: 1;
    }

    .feature-list li { color: var(--muted); }

    .mini-link {
      color: var(--navy);
      font-weight: 900;
      display: inline-flex;
      gap: 6px;
      align-items: center;
    }

    .dashboard-preview { background: var(--soft); }

    .dashboard-shell {
      border-radius: var(--radius-lg);
      padding: 20px;
      box-shadow: var(--shadow);
    }

    .dashboard-top {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      align-items: center;
      border-bottom: 1px solid var(--border);
      padding-bottom: 18px;
      margin-bottom: 20px;
    }

    .progress-bar {
      height: 12px;
      background: var(--soft);
      border-radius: 999px;
      overflow: hidden;
      margin: 12px 0 0;
    }

    .progress-fill {
      width: 56%;
      height: 100%;
      background: var(--teal);
      border-radius: 999px;
    }

    .dashboard-grid {
      display: grid;
      grid-template-columns: 1.2fr 0.8fr;
      gap: 20px;
    }

    .dashboard-widget {
      border-radius: 18px;
      padding: 22px;
    }

    .faq-item {
      border-bottom: 1px solid var(--border);
      padding: 22px 0;
    }

    .faq-question {
      width: 100%;
      border: 0;
      background: transparent;
      padding: 0;
      color: var(--navy-dark);
      font-size: 1.12rem;
      font-weight: 900;
      display: flex;
      justify-content: space-between;
      gap: 24px;
      text-align: left;
      cursor: pointer;
    }

    .faq-answer {
      display: none;
      color: var(--muted);
      padding-top: 14px;
      max-width: 860px;
    }

    .faq-item.open .faq-answer { display: block; }

    .cta {
      background:
        radial-gradient(circle at top right, rgba(245, 184, 65, 0.22), transparent 30%),
        linear-gradient(135deg, var(--navy-dark), var(--blue));
      color: white;
      border-radius: var(--radius-lg);
      padding: 58px;
      overflow: hidden;
    }

    .cta h2 { color: white; }
    .cta p { color: rgba(255, 255, 255, 0.78); }

    .cta-row {
      display: flex;
      justify-content: space-between;
      gap: 34px;
      align-items: center;
    }

    .footer {
      background: #101d33;
      color: rgba(255, 255, 255, 0.78);
      padding: 56px 0 28px;
    }

    .footer h3,
    .footer h4 { color: white; }

    .footer-grid {
      display: grid;
      grid-template-columns: 1.4fr repeat(3, 1fr);
      gap: 34px;
      margin-bottom: 36px;
    }

    .footer a {
      color: rgba(255, 255, 255, 0.78);
      display: block;
      margin-bottom: 9px;
    }

    .footer a:hover { color: white; }

    .footer-bottom {
      border-top: 1px solid rgba(255, 255, 255, 0.12);
      padding-top: 20px;
      font-size: 0.9rem;
      display: flex;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
    }

    @media (max-width: 980px) {
      .nav-links,
      .nav-actions { display: none; }

      .menu-toggle { display: inline-flex; }

      .nav.open { align-items: flex-start; }

      .nav.open .nav-links,
      .nav.open .nav-actions {
        display: flex;
        position: absolute;
        left: 24px;
        right: 24px;
        background: white;
        border: 1px solid var(--border);
        box-shadow: var(--shadow);
      }

      .nav.open .nav-links {
        top: 76px;
        flex-direction: column;
        align-items: flex-start;
        padding: 22px;
        border-radius: 18px 18px 0 0;
      }

      .nav.open .nav-actions {
        top: 343px;
        padding: 0 22px 22px;
        border-top: 0;
        border-radius: 0 0 18px 18px;
        justify-content: stretch;
      }

      .nav.open .nav-actions .btn { width: 100%; }

      .hero-grid,
      .split,
      .dashboard-grid,
      .mockup-grid,
      .value-strip-grid,
      .cta-row { grid-template-columns: 1fr; }

      .grid-2,
      .grid-3,
      .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

      .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

      .price-card.featured { transform: none; }
    }

    @media (max-width: 640px) {
      .container { padding: 0 18px; }
      .brand-logo { width: 148px; padding: 5px 0 7px; }
      .section { padding: 64px 0; }
      .hero { padding: 54px 0; }

      .trust-list,
      .grid-2,
      .grid-3,
      .grid-4,
      .footer-grid { grid-template-columns: 1fr; }
      .value-stat { border-left: 0; border-top: 1px solid rgba(255,255,255,0.16); padding-left: 0; padding-top: 18px; }

      .mockup-footer { grid-template-columns: 1fr; }
      .mockup-top { align-items: flex-start; flex-direction: column; }

      .hero-actions .btn,
      .cta-row .btn { width: 100%; }

      .card,
      .path-card,
      .price-card,
      .family-panel,
      .callout-box,
      .scam-card,
      .cta { padding: 24px; }

      .price-card.featured { padding-top: 58px; }

      .badge {
        left: 24px;
        top: 22px;
      }

      .step-card {
        padding-left: 24px;
        padding-top: 76px;
      }

      .step-card::before { left: 24px; }
    }
  
    /* Static package refinements */
    .footer-logo-wrap {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      background: #ffffff !important;
      border-radius: 18px !important;
      padding: 18px 22px 22px !important;
      margin-bottom: 22px !important;
      width: fit-content !important;
      min-width: 260px !important;
      min-height: 120px !important;
      box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
    }
    .footer-logo {
      width: 220px !important;
      max-width: 220px !important;
      height: auto !important;
      display: block !important;
    }
    .btn-secondary {
      background: var(--navy) !important;
      color: #ffffff !important;
      border-color: var(--navy) !important;
    }
    .btn-secondary:hover {
      color: #ffffff !important;
    }
    
  

    /* V12 course dashboard design fix */
    .course-dashboard-hero {
      padding: 96px 0 54px;
      background:
        radial-gradient(circle at 16% 22%, rgba(245,184,65,.22), transparent 34%),
        radial-gradient(circle at 86% 28%, rgba(58,183,176,.16), transparent 36%),
        linear-gradient(135deg, #ffffff 0%, #eef3f8 100%);
      border-bottom: 1px solid #dbe3ec;
    }
    .course-dashboard-hero .container {
      display: grid;
      grid-template-columns: minmax(0, 1.1fr) 360px;
      gap: 34px;
      align-items: center;
    }
    .course-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 8px 14px;
      border-radius: 999px;
      background: #ecf8f4;
      border: 1px solid #c7eee4;
      color: #115e59;
      font-weight: 900;
      font-size: .82rem;
      margin-bottom: 18px;
    }
    .course-dashboard-hero h1 {
      font-size: clamp(3rem, 6vw, 5.75rem);
      line-height: .95;
      letter-spacing: -.06em;
      color: #172b4d;
      margin: 0 0 20px;
    }
    .course-dashboard-hero .lead {
      font-size: clamp(1.05rem, 1.8vw, 1.25rem);
      line-height: 1.65;
      color: #5f6b7a;
      max-width: 760px;
      margin: 0;
    }
    .course-hero-card {
      background: #ffffff;
      border: 1px solid #dbe3ec;
      border-radius: 30px;
      padding: 28px;
      box-shadow: 0 18px 48px rgba(15, 29, 51, .13);
    }
    .course-hero-card h2 {
      margin: 0 0 12px;
      color: #172b4d;
      font-size: 1.55rem;
    }
    .course-progress-track {
      height: 14px;
      background: #e8eef6;
      border-radius: 999px;
      overflow: hidden;
      margin: 18px 0;
    }
    .course-progress-fill {
      height: 100%;
      width: 100%;
      background: linear-gradient(90deg, #3ab7b0, #f5b841);
      border-radius: 999px;
    }
    .course-stats-grid {
      display: grid !important;
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
      gap: 16px !important;
      margin: 28px 0 !important;
    }
    .course-stat-card {
      display: block !important;
      background: #ffffff !important;
      border: 1px solid #dbe3ec !important;
      border-radius: 22px !important;
      padding: 22px 18px !important;
      text-align: center !important;
      box-shadow: 0 12px 32px rgba(15, 29, 51, .08) !important;
    }
    .course-stat-card strong {
      display: block !important;
      font-size: 2.15rem !important;
      line-height: 1 !important;
      color: #172b4d !important;
      font-weight: 900 !important;
      margin-bottom: 8px !important;
    }
    .course-stat-card span {
      display: block !important;
      color: #5f6b7a !important;
      font-weight: 800 !important;
      font-size: .92rem !important;
    }
    .course-topic-map {
      display: grid !important;
      grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
      gap: 12px !important;
      margin: 28px 0 !important;
    }
    .course-topic {
      background: #ffffff !important;
      border: 1px solid #dbe3ec !important;
      border-radius: 20px !important;
      padding: 18px 12px !important;
      text-align: center !important;
      box-shadow: 0 10px 26px rgba(15, 29, 51, .07) !important;
    }
    .course-topic strong {
      display: block !important;
      color: #172b4d !important;
      font-size: 1.45rem !important;
      font-weight: 900 !important;
      margin-bottom: 8px !important;
    }
    .course-topic span {
      display: block !important;
      color: #5f6b7a !important;
      font-size: .82rem !important;
      font-weight: 900 !important;
    }
    .course-dashboard-section {
      padding: 66px 0;
    }
    .course-layout {
      display: grid;
      grid-template-columns: minmax(0, 1fr) 340px;
      gap: 30px;
      align-items: start;
    }
    .course-main-card {
      background: #ffffff;
      border: 1px solid #dbe3ec;
      border-radius: 32px;
      padding: 34px;
      box-shadow: 0 18px 48px rgba(15, 29, 51, .11);
    }
    .course-main-card h2 {
      color: #172b4d;
      font-size: clamp(2rem, 4vw, 3rem);
      margin: 0 0 14px;
      letter-spacing: -.04em;
    }
    .course-main-card p {
      color: #5f6b7a;
      line-height: 1.7;
    }
    .course-note {
      border: 1px solid #f3d58b;
      background: #fff8e6;
      color: #172b4d;
      border-radius: 22px;
      padding: 20px;
      line-height: 1.65;
      margin: 24px 0;
    }
    .lesson-card-list {
      display: grid;
      gap: 18px;
      margin-top: 26px;
    }
    .lesson-card {
      display: grid !important;
      grid-template-columns: 64px minmax(0, 1fr) auto !important;
      gap: 18px !important;
      align-items: center !important;
      padding: 22px !important;
      border: 1px solid #dbe3ec !important;
      border-radius: 24px !important;
      background: #ffffff !important;
      box-shadow: 0 12px 32px rgba(15, 29, 51, .08) !important;
      text-decoration: none !important;
      color: inherit !important;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .lesson-card:hover {
      transform: translateY(-3px);
      border-color: rgba(23,43,77,.28) !important;
      box-shadow: 0 18px 44px rgba(15, 29, 51, .14) !important;
    }
    .lesson-bubble {
      width: 54px;
      height: 54px;
      border-radius: 999px;
      display: grid;
      place-items: center;
      background: #f5b841;
      color: #2b2100;
      font-weight: 900;
      font-size: 1.15rem;
    }
    .lesson-card h3 {
      margin: 0 0 6px !important;
      color: #172b4d !important;
      font-size: 1.22rem !important;
      letter-spacing: -.02em;
    }
    .lesson-card p {
      margin: 0 !important;
      color: #5f6b7a !important;
      line-height: 1.5 !important;
    }
    .lesson-status {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      white-space: nowrap;
      border-radius: 999px;
      padding: 8px 13px;
      background: #ecf8f4;
      border: 1px solid #c7eee4;
      color: #115e59;
      font-size: .8rem;
      font-weight: 900;
    }
    .course-side-panel {
      position: sticky;
      top: 104px;
      background: #0f1d33;
      color: #ffffff;
      border-radius: 30px;
      padding: 28px;
      box-shadow: 0 18px 48px rgba(15, 29, 51, .18);
    }
    .course-side-panel h3,
    .course-side-panel p,
    .course-side-panel li {
      color: #ffffff;
    }
    .course-side-panel p,
    .course-side-panel li {
      opacity: .88;
      line-height: 1.6;
    }
    .course-side-panel ul {
      padding-left: 20px;
    }
    .course-actions {
      display: grid;
      gap: 10px;
      margin-top: 20px;
    }
    .course-outcomes-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 20px;
      margin-top: 28px;
    }
    .outcome-card {
      background: #ffffff;
      border: 1px solid #dbe3ec;
      border-radius: 24px;
      padding: 24px;
      box-shadow: 0 12px 32px rgba(15, 29, 51, .08);
    }
    .outcome-card .icon {
      width: 52px;
      height: 52px;
      border-radius: 18px;
      display: grid;
      place-items: center;
      background: #fff4d8;
      color: #7a4b00;
      font-weight: 900;
      margin-bottom: 16px;
    }
    .outcome-card h3 {
      color: #172b4d;
      margin: 0 0 8px;
    }
    .outcome-card p {
      color: #5f6b7a;
      line-height: 1.6;
      margin: 0;
    }
    @media (max-width: 1020px) {
      .course-dashboard-hero .container,
      .course-layout {
        grid-template-columns: 1fr;
      }
      .course-side-panel {
        position: static;
      }
      .course-stats-grid,
      .course-topic-map,
      .course-outcomes-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      }
    }
    @media (max-width: 680px) {
      .course-dashboard-hero {
        padding: 72px 0 42px;
      }
      .course-stats-grid,
      .course-topic-map,
      .course-outcomes-grid {
        grid-template-columns: 1fr !important;
      }
      .lesson-card {
        grid-template-columns: 54px minmax(0, 1fr) !important;
      }
      .lesson-status {
        grid-column: 1 / -1;
        justify-self: start;
      }
      .course-main-card {
        padding: 24px;
      }
    }


    /* V13 full designed course and member page fix */
    :root {
      --v13-navy:#172b4d;
      --v13-muted:#5f6b7a;
      --v13-gold:#f5b841;
      --v13-teal:#3ab7b0;
      --v13-border:#dbe3ec;
      --v13-soft:#eef3f8;
      --v13-shadow:0 18px 48px rgba(15,29,51,.12);
    }
    .v13-hero {
      padding: 92px 0 58px;
      background:
        radial-gradient(circle at 16% 22%, rgba(245,184,65,.22), transparent 34%),
        radial-gradient(circle at 86% 28%, rgba(58,183,176,.16), transparent 36%),
        linear-gradient(135deg,#ffffff 0%,#eef3f8 100%);
      border-bottom:1px solid var(--v13-border);
    }
    .v13-hero-grid {
      display:grid;
      grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);
      gap:36px;
      align-items:center;
    }
    .v13-eyebrow {
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 14px;
      border-radius:999px;
      background:#ecf8f4;
      border:1px solid #c7eee4;
      color:#115e59;
      font-weight:900;
      font-size:.84rem;
      margin-bottom:18px;
    }
    .v13-hero h1 {
      font-size:clamp(3rem,6vw,5.8rem);
      line-height:.95;
      letter-spacing:-.06em;
      color:var(--v13-navy);
      margin:0 0 20px;
    }
    .v13-lead {
      font-size:clamp(1.05rem,1.6vw,1.25rem);
      line-height:1.65;
      color:var(--v13-muted);
      max-width:760px;
      margin:0;
    }
    .v13-hero-img {
      width:100%;
      border-radius:32px;
      box-shadow:var(--v13-shadow);
      border:1px solid var(--v13-border);
      background:#fff;
      display:block;
    }
    .v13-section { padding:66px 0; }
    .v13-dashboard {
      display:grid;
      grid-template-columns:minmax(0,1fr) 340px;
      gap:30px;
      align-items:start;
    }
    .v13-card {
      background:#fff;
      border:1px solid var(--v13-border);
      border-radius:32px;
      box-shadow:var(--v13-shadow);
      padding:34px;
    }
    .v13-card h2 {
      color:var(--v13-navy);
      font-size:clamp(2rem,4vw,3rem);
      line-height:1.05;
      letter-spacing:-.04em;
      margin:0 0 16px;
    }
    .v13-card h3 { color:var(--v13-navy); margin-top:0; }
    .v13-card p, .v13-card li { color:var(--v13-muted); line-height:1.72; }
    .v13-side {
      position:sticky;
      top:104px;
      background:linear-gradient(135deg,#0f1d33,#244a82);
      color:#fff;
      border-radius:30px;
      padding:28px;
      box-shadow:0 18px 48px rgba(15,29,51,.18);
    }
    .v13-side h3, .v13-side p, .v13-side li { color:#fff; }
    .v13-side p, .v13-side li { opacity:.9; line-height:1.6; }
    .v13-side ul { padding-left:20px; }
    .v13-actions { display:grid; gap:10px; margin-top:20px; }
    .v13-stats {
      display:grid !important;
      grid-template-columns:repeat(4,minmax(0,1fr)) !important;
      gap:16px !important;
      margin:28px 0 !important;
    }
    .v13-stat {
      background:#fff !important;
      border:1px solid var(--v13-border) !important;
      border-radius:22px !important;
      padding:22px 18px !important;
      text-align:center !important;
      box-shadow:0 12px 32px rgba(15,29,51,.08) !important;
    }
    .v13-stat strong {
      display:block !important;
      font-size:2.1rem !important;
      line-height:1 !important;
      color:var(--v13-navy) !important;
      font-weight:900 !important;
      margin-bottom:8px !important;
    }
    .v13-stat span {
      display:block !important;
      color:var(--v13-muted) !important;
      font-weight:800 !important;
      font-size:.92rem !important;
    }
    .v13-topic-map {
      display:grid !important;
      grid-template-columns:repeat(6,minmax(0,1fr)) !important;
      gap:12px !important;
      margin:28px 0 !important;
    }
    .v13-topic {
      background:#fff !important;
      border:1px solid var(--v13-border) !important;
      border-radius:20px !important;
      padding:18px 12px !important;
      text-align:center !important;
      box-shadow:0 10px 26px rgba(15,29,51,.07) !important;
    }
    .v13-topic strong {
      display:block;
      color:var(--v13-navy);
      font-size:1.45rem;
      font-weight:900;
      margin-bottom:8px;
    }
    .v13-topic span {
      display:block;
      color:var(--v13-muted);
      font-size:.82rem;
      font-weight:900;
    }
    .v13-lesson-list { display:grid; gap:18px; margin-top:26px; }
    .v13-lesson-card {
      display:grid !important;
      grid-template-columns:64px minmax(0,1fr) auto !important;
      gap:18px !important;
      align-items:center !important;
      padding:22px !important;
      border:1px solid var(--v13-border) !important;
      border-radius:24px !important;
      background:#fff !important;
      box-shadow:0 12px 32px rgba(15,29,51,.08) !important;
      text-decoration:none !important;
      color:inherit !important;
      transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
    }
    .v13-lesson-card:hover {
      transform:translateY(-3px);
      border-color:rgba(23,43,77,.28) !important;
      box-shadow:0 18px 44px rgba(15,29,51,.14) !important;
    }
    .v13-bubble {
      width:54px;
      height:54px;
      border-radius:999px;
      display:grid;
      place-items:center;
      background:var(--v13-gold);
      color:#2b2100;
      font-weight:900;
      font-size:1.15rem;
    }
    .v13-lesson-card h3 { margin:0 0 6px !important; color:var(--v13-navy) !important; font-size:1.22rem !important; letter-spacing:-.02em; }
    .v13-lesson-card p { margin:0 !important; color:var(--v13-muted) !important; line-height:1.5 !important; }
    .v13-status {
      display:inline-flex;
      align-items:center;
      justify-content:center;
      white-space:nowrap;
      border-radius:999px;
      padding:8px 13px;
      background:#ecf8f4;
      border:1px solid #c7eee4;
      color:#115e59;
      font-size:.8rem;
      font-weight:900;
    }
    .v13-note {
      border:1px solid #f3d58b;
      background:#fff8e6;
      color:var(--v13-navy);
      border-radius:22px;
      padding:20px;
      line-height:1.65;
      margin:24px 0;
    }
    .v13-objectives {
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:16px;
      margin:24px 0;
    }
    .v13-objective {
      background:#fff;
      border:1px solid var(--v13-border);
      border-radius:22px;
      padding:20px;
      box-shadow:0 10px 26px rgba(15,29,51,.07);
    }
    .v13-objective strong { color:var(--v13-navy); display:block; margin-bottom:8px; }
    .v13-objective p { margin:0; color:var(--v13-muted); line-height:1.55; }
    .v13-scenario-grid {
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:18px;
      margin:26px 0;
    }
    .v13-scenario {
      background:#fff;
      border:1px solid var(--v13-border);
      border-radius:24px;
      box-shadow:0 12px 32px rgba(15,29,51,.08);
      padding:24px;
    }
    .v13-scenario h3 { color:var(--v13-navy); margin-top:0; }
    .v13-phone {
      background:#f5f7fb;
      border:1px solid var(--v13-border);
      border-radius:26px;
      padding:18px;
      margin:18px 0;
    }
    .v13-phone-top {
      display:flex;
      justify-content:space-between;
      color:#64748b;
      font-weight:800;
      font-size:.82rem;
      margin-bottom:12px;
    }
    .v13-bubble-msg {
      background:#fff;
      border:1px solid var(--v13-border);
      border-radius:18px 18px 18px 4px;
      padding:14px;
      color:var(--v13-navy);
      line-height:1.45;
      box-shadow:0 8px 20px rgba(15,29,51,.07);
    }
    .v13-email {
      border:1px solid var(--v13-border);
      border-radius:24px;
      overflow:hidden;
      background:#fff;
      margin:20px 0;
    }
    .v13-email-head {
      background:#eef3f8;
      padding:16px;
      border-bottom:1px solid var(--v13-border);
      color:var(--v13-navy);
      font-weight:800;
    }
    .v13-email-body { padding:18px; color:var(--v13-muted); line-height:1.65; }
    .v13-decision {
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:16px;
      margin:24px 0;
    }
    .v13-decision-card {
      border:1px solid var(--v13-border);
      border-radius:20px;
      padding:20px;
    }
    .v13-decision-card.risky { background:#fff5f5; border-color:#ffd4d4; }
    .v13-decision-card.safe { background:#ecf8f4; border-color:#c7eee4; }
    .v13-worksheet {
      border:2px dashed var(--v13-border);
      background:#fff;
      border-radius:22px;
      padding:22px;
      margin:24px 0;
    }
    .v13-line {
      border-bottom:1px solid var(--v13-border);
      padding:12px 0;
      color:var(--v13-muted);
      display:flex;
      gap:12px;
      align-items:flex-start;
      line-height:1.45;
    }
    .v13-check {
      width:18px;
      height:18px;
      border:2px solid var(--v13-navy);
      border-radius:5px;
      flex:0 0 auto;
      margin-top:2px;
    }
    .v13-resource-grid {
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:20px;
      margin-top:28px;
    }
    .v13-resource-card {
      background:#fff;
      border:1px solid var(--v13-border);
      border-radius:26px;
      padding:24px;
      box-shadow:0 12px 32px rgba(15,29,51,.08);
      display:flex;
      flex-direction:column;
      min-height:260px;
    }
    .v13-resource-card img {
      width:100%;
      border-radius:20px;
      border:1px solid var(--v13-border);
      margin-bottom:16px;
    }
    .v13-resource-card h3 { color:var(--v13-navy); margin:0 0 8px; }
    .v13-resource-card p { color:var(--v13-muted); line-height:1.6; }
    .v13-resource-card .btn { margin-top:auto; }
    @media (max-width:1020px) {
      .v13-hero-grid,.v13-dashboard { grid-template-columns:1fr; }
      .v13-side { position:static; }
      .v13-stats,.v13-topic-map,.v13-objectives,.v13-resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
    }
    @media (max-width:720px) {
      .v13-hero { padding:72px 0 42px; }
      .v13-stats,.v13-topic-map,.v13-objectives,.v13-resource-grid,.v13-scenario-grid,.v13-decision { grid-template-columns:1fr !important; }
      .v13-lesson-card { grid-template-columns:54px minmax(0,1fr) !important; }
      .v13-status { grid-column:1 / -1; justify-self:start; }
      .v13-card { padding:24px; }
    }


/* V14 premium member/course/resource design system */
:root{--v14-navy:#172b4d;--v14-muted:#5f6b7a;--v14-gold:#f5b841;--v14-teal:#3ab7b0;--v14-border:#dbe3ec;--v14-soft:#eef3f8;--v14-shadow:0 18px 50px rgba(15,29,51,.12);--v14-shadow-soft:0 12px 32px rgba(15,29,51,.08)}
.v14-hero{padding:96px 0 62px;background:radial-gradient(circle at 14% 22%,rgba(245,184,65,.23),transparent 34%),radial-gradient(circle at 88% 18%,rgba(58,183,176,.15),transparent 36%),linear-gradient(135deg,#fff 0%,#eef3f8 100%);border-bottom:1px solid var(--v14-border)}
.v14-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:38px;align-items:center}
.v14-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#ecf8f4;border:1px solid #c7eee4;color:#115e59;font-weight:900;font-size:.84rem;margin-bottom:18px}
.v14-hero h1{font-size:clamp(3rem,6vw,5.8rem);line-height:.95;letter-spacing:-.06em;color:var(--v14-navy);margin:0 0 20px}
.v14-lead{font-size:clamp(1.05rem,1.6vw,1.24rem);line-height:1.7;color:var(--v14-muted);margin:0;max-width:780px}
.v14-hero-art{display:block;width:100%;border-radius:32px;border:1px solid var(--v14-border);box-shadow:var(--v14-shadow);background:#fff}
.v14-section{padding:68px 0}.v14-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:32px;align-items:start}
.v14-panel{background:#fff;border:1px solid var(--v14-border);border-radius:32px;box-shadow:var(--v14-shadow);padding:34px}
.v14-panel h2{color:var(--v14-navy);font-size:clamp(2rem,4vw,3.1rem);line-height:1.05;letter-spacing:-.04em;margin:0 0 16px}
.v14-panel h3{color:var(--v14-navy);margin:28px 0 10px}.v14-panel p,.v14-panel li{color:var(--v14-muted);line-height:1.75}
.v14-sidebar{position:sticky;top:104px;background:linear-gradient(135deg,#0f1d33,#244a82);color:#fff;border-radius:32px;padding:28px;box-shadow:0 18px 50px rgba(15,29,51,.18)}
.v14-sidebar h3,.v14-sidebar p,.v14-sidebar li{color:#fff}.v14-sidebar p,.v14-sidebar li{opacity:.9;line-height:1.65}.v14-sidebar ul{padding-left:20px}
.v14-actions{display:grid;gap:10px;margin-top:20px}
.v14-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:30px 0!important}
.v14-stat{background:#fff!important;border:1px solid var(--v14-border)!important;border-radius:22px!important;padding:24px 18px!important;text-align:center!important;box-shadow:var(--v14-shadow-soft)!important}
.v14-stat strong{display:block!important;font-size:2.2rem!important;line-height:1!important;color:var(--v14-navy)!important;font-weight:900!important;margin-bottom:8px!important}
.v14-stat span{display:block!important;color:var(--v14-muted)!important;font-weight:800!important;font-size:.92rem!important}
.v14-track{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:28px 0}.v14-track-item{background:#fff;border:1px solid var(--v14-border);border-radius:20px;padding:18px 12px;text-align:center;box-shadow:0 10px 26px rgba(15,29,51,.07)}
.v14-track-item strong{display:block;color:var(--v14-navy);font-size:1.45rem;font-weight:900;margin-bottom:8px}.v14-track-item span{display:block;color:var(--v14-muted);font-size:.82rem;font-weight:900}
.v14-lesson-list{display:grid;gap:18px;margin-top:26px}.v14-lesson-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:18px;align-items:center;padding:22px;border:1px solid var(--v14-border);border-radius:24px;background:#fff;box-shadow:var(--v14-shadow-soft);text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.v14-lesson-card:hover{transform:translateY(-3px);border-color:rgba(23,43,77,.28);box-shadow:0 18px 44px rgba(15,29,51,.14)}
.v14-bubble{width:54px;height:54px;border-radius:999px;display:grid;place-items:center;background:var(--v14-gold);color:#2b2100;font-weight:900;font-size:1.15rem}
.v14-lesson-card h3{margin:0 0 6px;color:var(--v14-navy);font-size:1.22rem;letter-spacing:-.02em}.v14-lesson-card p{margin:0;color:var(--v14-muted);line-height:1.5}
.v14-tag{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:8px 13px;background:#ecf8f4;border:1px solid #c7eee4;color:#115e59;font-size:.8rem;font-weight:900}
.v14-note{border:1px solid #f3d58b;background:#fff8e6;color:var(--v14-navy);border-radius:22px;padding:20px;line-height:1.7;margin:24px 0}
.v14-source-note{border:1px solid var(--v14-border);background:#f8fafc;color:var(--v14-muted);border-radius:20px;padding:18px;line-height:1.65;margin:24px 0;font-size:.95rem}
.v14-objectives{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.v14-objective{background:#fff;border:1px solid var(--v14-border);border-radius:22px;padding:20px;box-shadow:0 10px 26px rgba(15,29,51,.07)}
.v14-objective strong{color:var(--v14-navy);display:block;margin-bottom:8px}.v14-objective p{margin:0;color:var(--v14-muted);line-height:1.55}
.v14-example-grid,.v14-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.v14-example-card,.v14-info-card{background:#fff;border:1px solid var(--v14-border);border-radius:24px;box-shadow:var(--v14-shadow-soft);padding:24px}
.v14-example-card h3,.v14-info-card h3{color:var(--v14-navy);margin-top:0}.v14-phone{background:#f5f7fb;border:1px solid var(--v14-border);border-radius:26px;padding:18px;margin:14px 0 18px}
.v14-phone-top{display:flex;justify-content:space-between;color:#64748b;font-weight:800;font-size:.82rem;margin-bottom:12px}.v14-msg{background:#fff;border:1px solid var(--v14-border);border-radius:18px 18px 18px 4px;padding:14px;color:var(--v14-navy);line-height:1.45;box-shadow:0 8px 20px rgba(15,29,51,.07)}
.v14-email{border:1px solid var(--v14-border);border-radius:24px;overflow:hidden;background:#fff;margin:14px 0 18px}.v14-email-head{background:#eef3f8;padding:16px;border-bottom:1px solid var(--v14-border);color:var(--v14-navy);font-weight:800}.v14-email-body{padding:18px;color:var(--v14-muted);line-height:1.65}
.v14-decision{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.v14-decision-card{border:1px solid var(--v14-border);border-radius:20px;padding:20px}.v14-decision-card.risky{background:#fff5f5;border-color:#ffd4d4}.v14-decision-card.safe{background:#ecf8f4;border-color:#c7eee4}
.v14-worksheet{border:2px dashed var(--v14-border);background:#fff;border-radius:22px;padding:22px;margin:24px 0}.v14-line{border-bottom:1px solid var(--v14-border);padding:12px 0;color:var(--v14-muted);display:flex;gap:12px;align-items:flex-start;line-height:1.45}.v14-check{width:18px;height:18px;border:2px solid var(--v14-navy);border-radius:5px;flex:0 0 auto;margin-top:2px}
.v14-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.v14-resource-card{background:#fff;border:1px solid var(--v14-border);border-radius:26px;padding:24px;box-shadow:var(--v14-shadow-soft);display:flex;flex-direction:column;min-height:280px}
.v14-resource-card img{width:100%;border-radius:20px;border:1px solid var(--v14-border);margin-bottom:16px;background:#fff}.v14-resource-card h3{color:var(--v14-navy);margin:0 0 8px}.v14-resource-card p{color:var(--v14-muted);line-height:1.6}.v14-resource-card .btn{margin-top:auto}
.v14-sources{border-top:1px solid var(--v14-border);margin-top:34px;padding-top:22px}.v14-sources a{color:var(--v14-navy);font-weight:800}
@media(max-width:1020px){.v14-hero-grid,.v14-grid{grid-template-columns:1fr}.v14-sidebar{position:static}.v14-stats,.v14-track,.v14-objectives,.v14-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){.v14-hero{padding:74px 0 44px}.v14-stats,.v14-track,.v14-objectives,.v14-resource-grid,.v14-example-grid,.v14-card-grid,.v14-decision{grid-template-columns:1fr!important}.v14-lesson-card{grid-template-columns:54px minmax(0,1fr)}.v14-tag{grid-column:1/-1;justify-self:start}.v14-panel{padding:24px}}


/* V16 warm older-adult audience redesign */
:root{--warm-ink:#243B5A;--warm-text:#4B5563;--warm-muted:#667085;--warm-cream:#FFF9F0;--warm-sand:#F5F0E7;--warm-card:#FFFFFF;--warm-border:#E8DDD0;--warm-gold:#EFAE3B;--warm-gold-dark:#B87512;--warm-sage:#8FB9AA;--warm-sage-soft:#E7EFEA;--warm-shadow:0 18px 48px rgba(60,47,40,.12);--warm-shadow-soft:0 10px 28px rgba(60,47,40,.08)}
body{background:var(--warm-cream)!important;color:var(--warm-text)!important}.site-header{background:rgba(255,249,240,.96)!important;border-bottom:1px solid var(--warm-border)!important;box-shadow:0 8px 24px rgba(60,47,40,.05)!important}.nav-links a{color:var(--warm-ink)!important;font-weight:800!important}.nav-links a:hover{color:var(--warm-gold-dark)!important}.btn,.button,button{border-radius:999px!important}.btn-primary,button.primary,.ml-form-embedSubmit button{background:var(--warm-gold)!important;color:#3C2F28!important;border-color:var(--warm-gold)!important;box-shadow:0 8px 20px rgba(239,174,59,.22)!important}.btn-primary:hover,button.primary:hover,.ml-form-embedSubmit button:hover{background:#E29D2F!important;border-color:#E29D2F!important}.btn-outline{border-color:var(--warm-ink)!important;color:var(--warm-ink)!important;background:#fff!important}.btn-outline:hover{background:var(--warm-sage-soft)!important}
.v14-hero,.v13-hero,.course-dashboard-hero{background:radial-gradient(circle at 14% 20%,rgba(239,174,59,.20),transparent 34%),radial-gradient(circle at 88% 18%,rgba(143,185,170,.18),transparent 36%),linear-gradient(135deg,#FFF9F0 0%,#F5F0E7 56%,#EAF4F1 100%)!important;border-bottom:1px solid var(--warm-border)!important}
.v14-hero h1,.v13-hero h1,.course-dashboard-hero h1,.hero h1,h1,h2,h3{color:var(--warm-ink)!important}.v14-lead,.v13-lead,.course-dashboard-hero .lead,.hero p,p,li{color:var(--warm-text)}.v14-kicker,.v13-eyebrow,.course-eyebrow{background:var(--warm-sage-soft)!important;border-color:#C9DDD4!important;color:#315E52!important;letter-spacing:0!important}
.v14-panel,.v13-card,.course-main-card,.card,.price-card,.resource-card,.lesson-card,.v14-example-card,.v14-info-card,.v14-resource-card,.v14-stat,.v14-track-item,.v14-objective{background:var(--warm-card)!important;border-color:var(--warm-border)!important;box-shadow:var(--warm-shadow-soft)!important}.v14-panel,.v13-card,.course-main-card{border-radius:34px!important}.v14-sidebar,.v13-side,.course-side-panel{background:linear-gradient(135deg,#243B5A,#345C78)!important;box-shadow:var(--warm-shadow)!important}.v14-sidebar h3,.v14-sidebar p,.v14-sidebar li,.v13-side h3,.v13-side p,.v13-side li{color:#fff!important}.v14-sidebar p,.v14-sidebar li{opacity:.94!important}.v14-note,.course-note{background:#FFF3D8!important;border-color:#F2D7A0!important;color:#3C2F28!important}.v14-bubble,.lesson-bubble{background:var(--warm-gold)!important;color:#3C2F28!important}.v14-tag,.lesson-status{background:var(--warm-sage-soft)!important;border-color:#C9DDD4!important;color:#315E52!important}.v14-hero-art,.v13-hero-img{border-color:var(--warm-border)!important;box-shadow:var(--warm-shadow)!important}.v14-phone{background:#F7F1EA!important;border-color:var(--warm-border)!important}.v14-msg{background:#fff!important;border-color:var(--warm-border)!important;color:var(--warm-ink)!important}.v14-email-head{background:#F5F0E7!important;border-color:var(--warm-border)!important;color:var(--warm-ink)!important}.v14-decision-card.safe{background:var(--warm-sage-soft)!important;border-color:#C9DDD4!important}.v14-decision-card.risky{background:#FFF0EC!important;border-color:#F2CEC2!important}.v14-worksheet{border-color:#D7C7B9!important;background:#FFFCF7!important}.site-footer{background:#243B5A!important}.site-footer p,.site-footer a,.site-footer span,.site-footer h4{color:#fff!important}
.home-warm-intro{padding:72px 0}.home-warm-panel{background:#fff;border:1px solid var(--warm-border);border-radius:36px;padding:38px;box-shadow:var(--warm-shadow)}.home-warm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.home-warm-card{background:#FFFCF7;border:1px solid var(--warm-border);border-radius:28px;padding:26px}.home-warm-card strong{display:block;color:var(--warm-ink);font-size:1.2rem;margin-bottom:10px}.home-warm-card p{line-height:1.65;margin:0}.warm-callout{background:#E7EFEA;border:1px solid #C9DDD4;border-radius:28px;padding:26px;margin:28px 0;color:var(--warm-ink)}.v14-section .container>.v14-stats:first-child{margin-top:0!important}.v14-grid{align-items:start!important}
@media(max-width:900px){.home-warm-grid{grid-template-columns:1fr!important}}


/* V17 human imagery integration */
.photo-hero-card{
  position:relative;
  overflow:hidden;
  border-radius:38px;
  border:1px solid var(--warm-border, #E8DDD0);
  box-shadow:var(--warm-shadow, 0 18px 48px rgba(60,47,40,.12));
  background:#fff;
}
.photo-hero-card img{
  width:100%;
  height:auto;
  display:block;
  aspect-ratio: 16 / 10;
  object-fit:cover;
}
.photo-hero-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,0) 55%, rgba(36,59,90,.24) 100%);
  pointer-events:none;
}
.photo-caption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  background:rgba(255,249,240,.92);
  border:1px solid rgba(232,221,208,.92);
  color:#243B5A;
  border-radius:22px;
  padding:14px 16px;
  font-weight:850;
  line-height:1.35;
  backdrop-filter: blur(6px);
}



/* V18 single standalone human images */
.photo-hero-card img,.single-page-photo img,.v14-resource-card img{
  width:100%;
  height:auto;
  display:block;
  object-fit:cover;
  aspect-ratio: 14 / 9;
}
.photo-hero-card,.single-page-photo{
  position:relative;
  overflow:hidden;
  border-radius:38px;
  border:1px solid var(--warm-border,#E8DDD0);
  background:#fff;
  box-shadow:var(--warm-shadow,0 18px 48px rgba(60,47,40,.12));
}
.photo-hero-card::after{display:none!important;}
.photo-caption{
  position:static!important;
  display:block;
  background:#FFF9F0!important;
  border-top:1px solid var(--warm-border,#E8DDD0)!important;
  color:#243B5A!important;
  border-radius:0!important;
  padding:15px 18px!important;
  font-weight:850!important;
}
.no-photo-card{
  background:#FFFCF7;
  border:1px solid var(--warm-border,#E8DDD0);
  border-radius:28px;
  padding:26px;
  box-shadow:var(--warm-shadow-soft,0 10px 28px rgba(60,47,40,.08));
}
.single-photo-section{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  align-items:center;
  margin-top:32px;
}
@media(max-width:900px){
  .single-photo-section{grid-template-columns:1fr;}
}


/* V19 navigation and visible image caption cleanup */
.photo-caption,
.photo-hero-card figcaption,
.v14-hero-art-caption,
.image-caption,
figure > figcaption.photo-caption {
  display: none !important;
}

.photo-hero-card {
  overflow: hidden !important;
}

.photo-hero-card img {
  border-radius: inherit !important;
}

.site-header .nav-links a[href^="#"],
.site-header .nav-links a[href="/for-families/"],
.site-header .nav-links a[href="/"] {
  cursor: pointer;
}


/* V20 public course preview fix */
.course-preview-list{
  display:grid;
  gap:18px;
  margin-top:24px;
}
.course-preview-row{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:18px;
  align-items:center;
  padding:20px;
  background:#fff;
  border:1px solid var(--warm-border, #E8DDD0);
  border-radius:28px;
  box-shadow:var(--warm-shadow-soft, 0 10px 28px rgba(60,47,40,.08));
}
.course-preview-number{
  width:48px;
  height:48px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--warm-gold, #EFAE3B);
  color:#3C2F28;
  font-weight:900;
}
.course-preview-row h3{
  margin:0 0 4px;
}
.course-preview-row p{
  margin:0;
}
.lock-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid #C9DDD4;
  background:#E7EFEA;
  color:#315E52;
  border-radius:999px;
  padding:8px 12px;
  font-weight:850;
  white-space:nowrap;
}
@media(max-width:760px){
  .course-preview-row{
    grid-template-columns:1fr;
  }
}


/* V22 design + navigation refinement
   Principles applied: clear public navigation, balanced hero hierarchy,
   relevant imagery near related copy, and mobile-visible menu behavior. */
.header{
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--border, #dbe3ec);
}
.nav{
  min-height: 94px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: clamp(16px, 2vw, 28px);
}
.brand{
  flex: 0 0 auto;
}
.brand-logo{
  width: clamp(160px, 17vw, 210px) !important;
  max-height: 74px !important;
  object-fit: contain;
}
.nav-links{
  flex: 1 1 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: clamp(14px, 2vw, 26px) !important;
  margin:0;
}
.nav-links a{
  min-height: 44px;
  display:inline-flex;
  align-items:center;
  color: var(--navy-dark, #172b4d) !important;
  font-size: .98rem;
  font-weight: 850;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
}
.nav-links a:hover{
  color: var(--gold-dark, #B87512) !important;
  border-bottom-color: var(--gold, #f5b841);
}
.nav-actions{
  flex: 0 0 auto;
  display:flex;
  align-items:center;
  gap:10px;
}
.nav-actions .btn{
  min-height:46px;
  padding: 12px 20px !important;
  white-space:nowrap;
}
.menu-toggle{
  display:none;
  min-height:44px;
  border:1px solid var(--border, #dbe3ec);
  background:#fff;
  color:var(--navy-dark, #172b4d);
  border-radius:999px;
  padding:10px 14px;
  font-weight:900;
}
.v14-hero{
  padding: clamp(64px, 6vw, 104px) 0 !important;
}
.v14-hero-grid{
  grid-template-columns: minmax(0, 1fr) minmax(410px, 0.86fr) !important;
  gap: clamp(34px, 4.6vw, 68px) !important;
  align-items:center !important;
}
.v14-hero h1{
  font-size: clamp(3.25rem, 6vw, 5.65rem) !important;
  line-height: .98 !important;
  letter-spacing: -0.058em !important;
  max-width: 780px;
}
.v14-lead{
  font-size: clamp(1.13rem, 1.35vw, 1.36rem) !important;
  line-height:1.62 !important;
  max-width: 660px;
}
.photo-hero-card{
  width: min(100%, 570px) !important;
  justify-self:end !important;
  border-radius: 34px !important;
  overflow:hidden !important;
  box-shadow: 0 22px 52px rgba(60,47,40,.15) !important;
  border:1px solid var(--warm-border, #E8DDD0) !important;
}
.photo-hero-card img,
.v14-hero-art{
  width:100% !important;
  aspect-ratio: 4 / 3 !important;
  height:auto !important;
  object-fit: cover !important;
  display:block !important;
}
.photo-caption,
.photo-hero-card figcaption,
figcaption{
  display:none !important;
}
.home-warm-panel{
  max-width: 1060px;
  margin-left:auto;
  margin-right:auto;
}
.home-warm-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:20px;
}
.no-photo-card,
.home-warm-card{
  background:#FFFCF7;
  border:1px solid var(--warm-border, #E8DDD0);
  border-radius:28px;
  padding:26px;
  box-shadow:0 10px 28px rgba(60,47,40,.06);
}
.no-photo-card strong,
.home-warm-card strong{
  display:block;
  color:var(--warm-ink, #243B5A);
  font-size:1.18rem;
  margin-bottom:10px;
}
.v14-resource-card img{
  width:100% !important;
  aspect-ratio: 4 / 3 !important;
  object-fit:cover !important;
}
.footer a{
  display:block;
  margin:10px 0;
}
.footer-logo{
  max-height:76px;
  width:auto;
}
@media(max-width: 1120px){
  .nav{
    flex-wrap:wrap;
    justify-content:center;
    padding:14px 0;
  }
  .brand{order:1; margin-right:auto;}
  .nav-actions{order:2;}
  .nav-links{order:3; width:100%; flex: 1 0 100%; gap:10px 22px !important; flex-wrap:wrap;}
  .v14-hero-grid{grid-template-columns:1fr !important;}
  .photo-hero-card{justify-self:start !important; width:min(100%, 680px) !important;}
}
@media(max-width: 760px){
  .nav{
    justify-content:space-between;
  }
  .brand-logo{width:154px !important;}
  .menu-toggle{display:inline-flex; align-items:center; justify-content:center;}
  .nav-actions{width:100%; order:4; justify-content:center;}
  .nav-actions .btn{flex:1;}
  .nav-links{
    display:none;
    order:3;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:8px !important;
    padding:12px 0 4px;
  }
  .nav-links.is-open{display:flex;}
  .nav-links a{
    justify-content:center;
    border:1px solid var(--border, #dbe3ec);
    border-radius:999px;
    background:#fff;
  }
  .v14-hero{padding:52px 0 !important;}
  .v14-hero h1{font-size:clamp(3rem, 12vw, 4.4rem) !important;}
  .home-warm-grid{grid-template-columns:1fr;}
}


/* V23 UX navigation + caption final pass */
.photo-caption,
.image-caption,
.v14-hero-art-caption,
figcaption,
.photo-hero-card figcaption,
.photo-hero-card .caption,
.photo-hero-card [class*="caption"]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.photo-hero-card{
  background:transparent!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:34px!important;
  max-width:570px!important;
}
.photo-hero-card img,
.v14-hero-art{
  display:block!important;
  width:100%!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  object-fit:cover!important;
  border-radius:34px!important;
}
.v14-hero-grid{
  grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr)!important;
  gap:clamp(44px,5vw,76px)!important;
  align-items:center!important;
}
.v14-hero h1{
  max-width:780px!important;
}
.v14-lead{
  max-width:700px!important;
}
.nav-links a{
  white-space:nowrap!important;
}
@media(max-width:1060px){
  .v14-hero-grid{grid-template-columns:1fr!important;}
  .photo-hero-card{justify-self:start!important; max-width:680px!important;}
}
@media(max-width:720px){
  .photo-hero-card{max-width:100%!important;}
}


/* V24 footer, free-guide, and navigation consistency fix */
.site-header{
  background:rgba(255,255,255,.96) !important;
  border-bottom:1px solid rgba(232,221,208,.75) !important;
}
.nav-inner{
  min-height:92px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}
.brand{
  display:flex !important;
  align-items:center !important;
  flex:0 0 auto !important;
}
.brand img{
  height:auto !important;
  max-height:72px !important;
  width:auto !important;
  max-width:220px !important;
  object-fit:contain !important;
  display:block !important;
}
.nav-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:28px !important;
  flex:1 1 auto !important;
}
.nav-links a{
  min-height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  color:#243B5A !important;
  font-weight:850 !important;
  font-size:1rem !important;
  white-space:nowrap !important;
}
.nav-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  flex:0 0 auto !important;
}
.nav-actions .btn{
  min-height:48px !important;
  padding:13px 22px !important;
  white-space:nowrap !important;
}
.v14-hero{
  padding:clamp(64px, 7vw, 108px) 0 !important;
}
.v14-hero-grid{
  grid-template-columns:minmax(0, 1fr) minmax(420px, 0.9fr) !important;
  gap:clamp(42px, 5vw, 74px) !important;
  align-items:center !important;
}
.v14-hero h1{
  font-size:clamp(3.8rem, 6.8vw, 6.2rem) !important;
  line-height:.98 !important;
  letter-spacing:-.055em !important;
}
.v14-lead{
  font-size:clamp(1.18rem, 1.4vw, 1.45rem) !important;
  line-height:1.65 !important;
  max-width:720px !important;
}
.photo-hero-card{
  width:min(100%, 590px) !important;
  justify-self:end !important;
  border-radius:34px !important;
  overflow:hidden !important;
  border:1px solid #E8DDD0 !important;
  box-shadow:0 18px 46px rgba(60,47,40,.13) !important;
  background:#fff !important;
}
.photo-hero-card img,
.v14-hero-art{
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  height:auto !important;
  object-fit:cover !important;
  display:block !important;
}
.photo-caption,
.photo-hero-card figcaption,
figcaption,
.v14-hero-art-caption,
.image-caption{
  display:none !important;
}
.free-guide-preview-card{
  background:#fff !important;
  border:1px solid #E8DDD0 !important;
  border-radius:34px !important;
  padding:20px !important;
  box-shadow:0 18px 46px rgba(60,47,40,.13) !important;
}
.free-guide-preview-card img{
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:24px !important;
}
.free-guide-preview-list{
  margin:18px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:10px !important;
}
.free-guide-preview-list li{
  display:flex !important;
  gap:10px !important;
  align-items:flex-start !important;
  color:#243B5A !important;
  font-weight:750 !important;
}
.free-guide-preview-list li::before{
  content:"✓";
  flex:0 0 auto;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  font-weight:900;
}
.site-footer{
  background:#0F1E33 !important;
  padding:64px 0 28px !important;
}
.footer-grid{
  display:grid !important;
  grid-template-columns:1.35fr .8fr .8fr .9fr !important;
  gap:52px !important;
  align-items:start !important;
}
.footer-brand{
  display:inline-flex !important;
  align-items:center !important;
  background:#fff !important;
  border-radius:22px !important;
  padding:18px 22px !important;
  margin-bottom:20px !important;
  width:auto !important;
  max-width:300px !important;
}
.footer-brand img{
  display:block !important;
  height:auto !important;
  max-height:82px !important;
  width:auto !important;
  max-width:240px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.footer-about p{
  max-width:360px !important;
  color:rgba(255,255,255,.78) !important;
  line-height:1.7 !important;
}
.site-footer h4{
  color:#fff !important;
  margin:0 0 16px !important;
  font-size:1.05rem !important;
}
.site-footer a{
  color:rgba(255,255,255,.86) !important;
  display:block !important;
  margin:12px 0 !important;
  text-decoration:none !important;
}
.site-footer a:hover{
  color:#fff !important;
  text-decoration:underline !important;
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.14) !important;
  margin-top:52px !important;
  padding-top:24px !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:24px !important;
  color:rgba(255,255,255,.78) !important;
}
@media(max-width:1100px){
  .v14-hero-grid{
    grid-template-columns:1fr !important;
  }
  .photo-hero-card{
    justify-self:start !important;
    width:min(100%, 720px) !important;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:940px){
  .nav-inner{
    flex-wrap:wrap !important;
    justify-content:center !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
  .brand{
    width:100% !important;
    justify-content:center !important;
  }
  .nav-links{
    order:2 !important;
    width:100% !important;
    flex-wrap:wrap !important;
    gap:8px 18px !important;
  }
  .nav-actions{
    order:3 !important;
  }
}
@media(max-width:640px){
  .brand img{
    max-height:58px !important;
  }
  .nav-actions{
    width:100% !important;
    justify-content:center !important;
  }
  .nav-actions .btn{
    flex:1 1 0 !important;
    justify-content:center !important;
  }
  .v14-hero h1{
    font-size:clamp(3rem, 12vw, 4.4rem) !important;
  }
  .footer-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .footer-bottom{
    flex-direction:column !important;
  }
}


/* V25 design polish: font scale, form styling, footer logo fix */
.site-header{
  background:rgba(255,255,255,.97) !important;
  border-bottom:1px solid rgba(232,221,208,.78) !important;
}
.nav-inner{
  min-height:88px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}
.brand img{
  height:auto !important;
  max-height:68px !important;
  width:auto !important;
  max-width:212px !important;
  object-fit:contain !important;
  display:block !important;
}
.nav-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:26px !important;
  flex:1 1 auto !important;
}
.nav-links a{
  min-height:44px !important;
  display:inline-flex !important;
  align-items:center !important;
  color:#243B5A !important;
  font-weight:850 !important;
  font-size:1rem !important;
  white-space:nowrap !important;
}
.nav-actions{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  flex:0 0 auto !important;
}
.nav-actions .btn{
  min-height:48px !important;
  padding:13px 22px !important;
  white-space:nowrap !important;
}
.v14-hero{
  padding:clamp(64px, 7vw, 104px) 0 !important;
}
.v14-hero-grid{
  grid-template-columns:minmax(0, 1fr) minmax(420px, .9fr) !important;
  gap:clamp(42px, 5vw, 76px) !important;
  align-items:center !important;
}
.v14-hero h1{
  font-size:clamp(3.65rem, 6.15vw, 5.9rem) !important;
  line-height:1 !important;
  letter-spacing:-.052em !important;
}
.v14-lead{
  font-size:clamp(1.16rem, 1.35vw, 1.38rem) !important;
  line-height:1.65 !important;
  max-width:720px !important;
}
.photo-hero-card,
.free-guide-preview-card{
  width:min(100%, 590px) !important;
  justify-self:end !important;
  border-radius:34px !important;
  overflow:hidden !important;
  border:1px solid #E8DDD0 !important;
  box-shadow:0 18px 46px rgba(60,47,40,.13) !important;
  background:#fff !important;
}
.photo-hero-card img,
.v14-hero-art,
.free-guide-preview-card img{
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  height:auto !important;
  object-fit:cover !important;
  display:block !important;
}
.photo-caption,
.photo-hero-card figcaption,
figcaption,
.v14-hero-art-caption,
.image-caption{
  display:none !important;
}
.free-guide-page .v14-hero h1{
  font-size:clamp(3.35rem, 5.55vw, 5.25rem) !important;
  max-width:780px !important;
}
.free-guide-page .v14-lead{
  max-width:760px !important;
}
.free-guide-page .v14-stats{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(150px, 1fr)) !important;
  gap:16px !important;
  max-width:650px !important;
}
.free-guide-page .v14-stat{
  padding:22px 20px !important;
  min-height:126px !important;
  text-align:center !important;
}
.free-guide-page .v14-stat strong{
  font-size:clamp(1.9rem, 2.7vw, 2.65rem) !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.free-guide-page .v14-stat span{
  font-size:.98rem !important;
  line-height:1.35 !important;
}
.free-guide-preview-card{
  padding:20px !important;
}
.free-guide-preview-card img{
  border-radius:24px !important;
}
.free-guide-preview-list{
  margin:20px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
  display:grid !important;
  gap:12px !important;
}
.free-guide-preview-list li{
  display:flex !important;
  gap:12px !important;
  align-items:flex-start !important;
  color:#243B5A !important;
  font-weight:850 !important;
  line-height:1.35 !important;
}
.free-guide-preview-list li::before{
  content:"✓";
  flex:0 0 auto;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  font-weight:900;
}
.free-guide-form-card{
  background:#fff !important;
  border:1px solid #E8DDD0 !important;
  border-radius:32px !important;
  padding:clamp(26px, 3vw, 42px) !important;
  box-shadow:0 18px 46px rgba(60,47,40,.10) !important;
}
.free-guide-form-card .ml-form-embedContainer,
.free-guide-form-card #mlb2-41390470,
.free-guide-form-card .ml-form-align-center,
.free-guide-form-card .ml-form-embedWrapper{
  width:100% !important;
  max-width:100% !important;
  display:block !important;
}
.free-guide-form-card .ml-form-embedWrapper{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.free-guide-form-card .ml-form-embedBody,
.free-guide-form-card .ml-form-successBody{
  padding:0 !important;
}
.free-guide-form-card .ml-form-embedContent h4,
.free-guide-form-card .ml-form-successContent h4{
  color:#243B5A !important;
  font-size:clamp(1.7rem, 2.1vw, 2.25rem) !important;
  line-height:1.1 !important;
  margin:0 0 10px !important;
  font-family:inherit !important;
}
.free-guide-form-card .ml-form-embedContent p,
.free-guide-form-card .ml-form-successContent p{
  color:#4B5563 !important;
  font-size:1.05rem !important;
  line-height:1.6 !important;
  margin:0 0 22px !important;
  font-family:inherit !important;
}
.free-guide-form-card .ml-form-formContent{
  display:grid !important;
  gap:14px !important;
  margin:0 0 18px !important;
}
.free-guide-form-card .ml-form-fieldRow{
  margin:0 !important;
}
.free-guide-form-card input[type="text"],
.free-guide-form-card input[type="email"],
.free-guide-form-card input.form-control{
  width:100% !important;
  min-height:56px !important;
  border:1px solid #D7C7B9 !important;
  border-radius:16px !important;
  background:#FFFCF7 !important;
  color:#243B5A !important;
  font-size:1.05rem !important;
  line-height:1.4 !important;
  padding:15px 16px !important;
  box-sizing:border-box !important;
  font-family:inherit !important;
}
.free-guide-form-card input:focus{
  outline:3px solid rgba(239,174,59,.30) !important;
  border-color:#EFAE3B !important;
}
.free-guide-form-card .ml-form-embedSubmit{
  margin:0 !important;
  float:none !important;
  width:100% !important;
}
.free-guide-form-card .ml-form-embedSubmit button,
.free-guide-form-card button[type="submit"]{
  width:100% !important;
  min-height:58px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#EFAE3B !important;
  color:#3C2F28 !important;
  font-size:1.05rem !important;
  font-weight:900 !important;
  cursor:pointer !important;
  font-family:inherit !important;
  padding:16px 22px !important;
}
.free-guide-form-card .ml-form-embedSubmit button:hover,
.free-guide-form-card button[type="submit"]:hover{
  background:#E29D2F !important;
}
.free-guide-form-card .ml-form-successBody{
  background:#E7EFEA !important;
  border:1px solid #C9DDD4 !important;
  border-radius:22px !important;
  padding:24px !important;
}
.site-footer{
  background:#0F1E33 !important;
  padding:64px 0 28px !important;
}
.footer-grid{
  display:grid !important;
  grid-template-columns:1.15fr .75fr .75fr .85fr !important;
  gap:58px !important;
  align-items:start !important;
}
.footer-brand{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  background:#fff !important;
  border-radius:18px !important;
  padding:15px 16px !important;
  margin-bottom:20px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:240px !important;
}
.footer-brand img{
  display:block !important;
  height:auto !important;
  max-height:64px !important;
  width:auto !important;
  max-width:205px !important;
  object-fit:contain !important;
  object-position:left center !important;
}
.footer-about p{
  max-width:340px !important;
  color:rgba(255,255,255,.78) !important;
  line-height:1.7 !important;
}
.site-footer h4{
  color:#fff !important;
  margin:0 0 16px !important;
  font-size:1.05rem !important;
}
.site-footer a{
  color:rgba(255,255,255,.86) !important;
  display:block !important;
  margin:12px 0 !important;
  text-decoration:none !important;
}
.site-footer a:hover{
  color:#fff !important;
  text-decoration:underline !important;
}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.14) !important;
  margin-top:52px !important;
  padding-top:24px !important;
  display:flex !important;
  justify-content:space-between !important;
  gap:24px !important;
  color:rgba(255,255,255,.78) !important;
}
@media(max-width:1100px){
  .v14-hero-grid{
    grid-template-columns:1fr !important;
  }
  .photo-hero-card,
  .free-guide-preview-card{
    justify-self:start !important;
    width:min(100%, 720px) !important;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr !important;
  }
}
@media(max-width:940px){
  .nav-inner{
    flex-wrap:wrap !important;
    justify-content:center !important;
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
  .brand{
    width:100% !important;
    justify-content:center !important;
  }
  .nav-links{
    order:2 !important;
    width:100% !important;
    flex-wrap:wrap !important;
    gap:8px 18px !important;
  }
  .nav-actions{
    order:3 !important;
  }
}
@media(max-width:700px){
  .free-guide-page .v14-stats{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:640px){
  .brand img{
    max-height:58px !important;
  }
  .nav-actions{
    width:100% !important;
    justify-content:center !important;
  }
  .nav-actions .btn{
    flex:1 1 0 !important;
    justify-content:center !important;
  }
  .v14-hero h1,
  .free-guide-page .v14-hero h1{
    font-size:clamp(3rem, 12vw, 4.25rem) !important;
  }
  .footer-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }
  .footer-bottom{
    flex-direction:column !important;
  }
}


/* V26 footer logo tight crop + next enhancement */
.footer-brand{
  background:#fff !important;
  border-radius:18px !important;
  padding:14px 15px !important;
  width:fit-content !important;
  max-width:none !important;
}
.footer-brand img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-height:62px !important;
  max-width:205px !important;
  object-fit:contain !important;
}
.trust-strip{
  background:#fffaf1;
  border-top:1px solid #E8DDD0;
  border-bottom:1px solid #E8DDD0;
  padding:28px 0;
}
.trust-strip-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.trust-strip-item{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:22px;
  padding:18px 20px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  box-shadow:0 8px 20px rgba(60,47,40,.06);
}
.trust-strip-icon{
  width:30px;
  height:30px;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  display:grid;
  place-items:center;
  font-weight:900;
  flex:0 0 auto;
}
.trust-strip-item strong{
  display:block;
  color:#243B5A;
  font-size:1rem;
  margin-bottom:4px;
}
.trust-strip-item span{
  display:block;
  color:#5D6878;
  font-size:.94rem;
  line-height:1.4;
}
@media(max-width:900px){
  .trust-strip-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:560px){
  .trust-strip-grid{grid-template-columns:1fr;}
}


/* V27 unique imagery + next conversion enhancements */
.photo-hero-card img,
.free-guide-preview-card img,
.v14-hero-art {
  object-position: center center !important;
}
.hero-reassurance-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.hero-reassurance-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:#fff;
  border:1px solid #E8DDD0;
  color:#243B5A;
  border-radius:999px;
  padding:9px 13px;
  font-weight:850;
  font-size:.95rem;
  box-shadow:0 8px 20px rgba(60,47,40,.06);
}
.hero-reassurance-pill::before{
  content:"✓";
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  font-weight:900;
  font-size:.8rem;
}
.pathway-section{
  padding:72px 0;
  background:#FFFCF7;
}
.pathway-panel{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:clamp(30px,4vw,52px);
  box-shadow:0 18px 46px rgba(60,47,40,.09);
}
.pathway-header{
  max-width:760px;
  margin-bottom:30px;
}
.pathway-header h2{
  margin:0 0 12px;
}
.pathway-header p{
  color:#5D6878;
  line-height:1.65;
  font-size:1.08rem;
}
.pathway-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.pathway-card{
  border:1px solid #E8DDD0;
  border-radius:26px;
  padding:24px;
  background:#FFFDF9;
}
.pathway-number{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:#E7EFEA;
  color:#315E52;
  font-weight:900;
  margin-bottom:16px;
}
.pathway-card h3{
  margin:0 0 10px;
  color:#243B5A;
}
.pathway-card p{
  margin:0 0 18px;
  color:#5D6878;
  line-height:1.6;
}
.pathway-card a{
  font-weight:900;
  color:#243B5A;
}
@media(max-width:900px){
  .pathway-grid{grid-template-columns:1fr;}
}


/* V27B unique course image correction */
.course-preview-hero-note{
  margin-top:18px;
  color:#5D6878;
  font-size:1rem;
  line-height:1.5;
}


/* V28 membership conversion bundle */
.value-section,
.family-support-section,
.pricing-compare-section,
.library-upgrade-section,
.course-preview-section,
.welcome-section{
  padding:72px 0;
}
.section-soft{
  background:#FFFCF7;
}
.section-white{
  background:#fff;
}
.section-header{
  max-width:820px;
  margin:0 0 32px;
}
.section-header.center{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.section-header h2{
  margin:0 0 14px;
  color:#243B5A;
  font-size:clamp(2.4rem,4vw,4.1rem);
  line-height:1.03;
  letter-spacing:-.045em;
}
.section-header p{
  margin:0;
  color:#5D6878;
  font-size:1.12rem;
  line-height:1.68;
}
.value-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.value-card,
.course-detail-card,
.family-card,
.library-card,
.welcome-card,
.faq-card,
.pricing-choice-card{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:28px;
  padding:26px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);
}
.value-icon,
.course-number,
.welcome-number{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  font-weight:900;
  margin-bottom:16px;
}
.value-card h3,
.course-detail-card h3,
.family-card h3,
.library-card h3,
.welcome-card h3,
.faq-card h3,
.pricing-choice-card h3{
  color:#243B5A;
  margin:0 0 10px;
  line-height:1.15;
}
.value-card p,
.course-detail-card p,
.family-card p,
.library-card p,
.welcome-card p,
.faq-card p,
.pricing-choice-card p{
  color:#5D6878;
  line-height:1.6;
  margin:0;
}
.value-card ul,
.course-detail-card ul,
.library-card ul,
.pricing-choice-card ul{
  margin:16px 0 0;
  padding-left:20px;
  color:#4B5563;
  line-height:1.7;
}
.course-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.course-detail-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
}
.course-detail-card .course-content{
  min-width:0;
}
.meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:14px 0;
}
.meta-pill{
  display:inline-flex;
  align-items:center;
  background:#E7EFEA;
  color:#315E52;
  border:1px solid #C9DDD4;
  border-radius:999px;
  padding:7px 10px;
  font-weight:850;
  font-size:.9rem;
}
.family-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.8fr);
  gap:34px;
  align-items:center;
}
.family-image-card{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:18px;
  box-shadow:0 18px 46px rgba(60,47,40,.12);
}
.family-image-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:24px;
  display:block;
}
.family-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:24px;
}
.promise-band{
  background:#0F1E33;
  color:#fff;
  padding:54px 0;
}
.promise-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:34px;
  align-items:center;
}
.promise-panel h2{
  margin:0 0 12px;
  font-size:clamp(2rem,3.5vw,3.5rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
.promise-panel p{
  margin:0;
  max-width:780px;
  color:rgba(255,255,255,.82);
  font-size:1.12rem;
  line-height:1.65;
}
.promise-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.promise-pill{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  padding:10px 13px;
  font-weight:850;
  white-space:nowrap;
}
.pricing-choice-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.pricing-choice-card.featured{
  border-color:#EFAE3B;
  box-shadow:0 18px 46px rgba(239,174,59,.20);
}
.pricing-badge{
  display:inline-flex;
  margin-bottom:12px;
  background:#FFF3D8;
  color:#8A5A05;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
}
.price-line{
  color:#243B5A;
  font-size:2.1rem;
  line-height:1;
  font-weight:900;
  margin:16px 0 8px;
}
.library-section-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.library-card img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:20px;
  margin-bottom:16px;
  display:block;
}
.library-card .time{
  display:inline-flex;
  margin-top:14px;
  color:#315E52;
  background:#E7EFEA;
  border:1px solid #C9DDD4;
  border-radius:999px;
  padding:7px 10px;
  font-weight:850;
  font-size:.9rem;
}
.welcome-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.faq-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.cta-panel{
  background:linear-gradient(135deg,#FFF3D8,#E7EFEA);
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:clamp(30px,4vw,52px);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  box-shadow:0 18px 46px rgba(60,47,40,.10);
}
.cta-panel h2{
  margin:0 0 12px;
  color:#243B5A;
  font-size:clamp(2.1rem,3.5vw,3.7rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
.cta-panel p{
  margin:0;
  color:#4B5563;
  max-width:720px;
  line-height:1.65;
  font-size:1.1rem;
}
.cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
@media(max-width:1000px){
  .value-grid,
  .pricing-choice-grid,
  .library-section-grid,
  .welcome-grid{
    grid-template-columns:1fr 1fr;
  }
  .family-split,
  .promise-panel,
  .cta-panel{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .value-grid,
  .course-detail-grid,
  .family-card-grid,
  .pricing-choice-grid,
  .library-section-grid,
  .welcome-grid,
  .faq-grid{
    grid-template-columns:1fr;
  }
  .course-detail-card{
    grid-template-columns:1fr;
  }
}


/* V29 promise strip redesign */
.promise-band{
  background:#FFFCF7 !important;
  color:#243B5A !important;
  padding:72px 0 !important;
  border-top:1px solid #E8DDD0 !important;
  border-bottom:1px solid #E8DDD0 !important;
}
.promise-panel{
  display:grid !important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr) !important;
  gap:34px !important;
  align-items:stretch !important;
  background:#fff !important;
  border:1px solid #E8DDD0 !important;
  border-radius:36px !important;
  padding:clamp(30px,4vw,52px) !important;
  box-shadow:0 18px 46px rgba(60,47,40,.10) !important;
}
.promise-panel h2{
  color:#243B5A !important;
  opacity:1 !important;
  margin:0 0 16px !important;
  font-size:clamp(2.35rem,4vw,4.1rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.045em !important;
}
.promise-panel p{
  color:#4B5563 !important;
  opacity:1 !important;
  margin:0 !important;
  max-width:760px !important;
  font-size:1.12rem !important;
  line-height:1.7 !important;
}
.promise-list{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
  align-content:center !important;
}
.promise-pill{
  display:flex !important;
  align-items:flex-start !important;
  gap:12px !important;
  white-space:normal !important;
  background:#FFF8ED !important;
  color:#243B5A !important;
  border:1px solid #E8DDD0 !important;
  border-radius:22px !important;
  padding:18px 18px !important;
  font-weight:850 !important;
  line-height:1.35 !important;
  box-shadow:0 8px 20px rgba(60,47,40,.06) !important;
}
.promise-pill::before{
  content:"✓";
  width:26px;
  height:26px;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  font-weight:900;
}
.promise-pill:nth-child(2),
.promise-pill:nth-child(4){
  background:#E7EFEA !important;
  border-color:#C9DDD4 !important;
}
@media(max-width:900px){
  .promise-panel{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:620px){
  .promise-list{
    grid-template-columns:1fr !important;
  }
}


/* V30 launch readiness bundle */
.launch-section,
.onboarding-section,
.member-dashboard-section,
.alert-template-section,
.gift-section,
.setup-section,
.seo-section{
  padding:72px 0;
}
.launch-soft{background:#FFFCF7;}
.launch-white{background:#fff;}
.launch-header{
  max-width:820px;
  margin:0 0 32px;
}
.launch-header.center{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.launch-header h2{
  color:#243B5A;
  font-size:clamp(2.35rem,4vw,4.05rem);
  line-height:1.03;
  letter-spacing:-.045em;
  margin:0 0 14px;
}
.launch-header p{
  color:#5D6878;
  line-height:1.68;
  font-size:1.12rem;
  margin:0;
}
.kua-grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.kua-grid-3{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.kua-grid-4{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.kua-card{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:28px;
  padding:26px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);
}
.kua-card.soft{
  background:#FFFDF9;
}
.kua-card.dark{
  background:#0F1E33;
  color:#fff;
  border-color:#243B5A;
}
.kua-card h3{
  margin:0 0 10px;
  color:#243B5A;
  line-height:1.15;
}
.kua-card.dark h3{color:#fff;}
.kua-card p{
  margin:0;
  color:#5D6878;
  line-height:1.62;
}
.kua-card.dark p{color:rgba(255,255,255,.82);}
.kua-card ul,
.kua-check-list{
  margin:16px 0 0;
  padding-left:20px;
  color:#4B5563;
  line-height:1.75;
}
.kua-card.dark ul{color:rgba(255,255,255,.82);}
.kua-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  font-weight:900;
  margin-bottom:16px;
}
.kua-step-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
}
.kua-step-number{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#E7EFEA;
  color:#315E52;
  font-weight:900;
}
.kua-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:14px 0;
}
.kua-pill{
  display:inline-flex;
  align-items:center;
  background:#E7EFEA;
  color:#315E52;
  border:1px solid #C9DDD4;
  border-radius:999px;
  padding:7px 10px;
  font-weight:850;
  font-size:.9rem;
}
.kua-pill.gold{
  background:#FFF3D8;
  color:#8A5A05;
  border-color:#F2D9A6;
}
.dashboard-rail{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:22px;
  align-items:start;
}
.dashboard-menu{
  position:sticky;
  top:112px;
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:28px;
  padding:20px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);
}
.dashboard-menu a{
  display:block;
  padding:12px 14px;
  border-radius:16px;
  color:#243B5A;
  font-weight:850;
  text-decoration:none;
}
.dashboard-menu a:hover{
  background:#FFF3D8;
}
.dashboard-content{
  display:grid;
  gap:22px;
}
.dashboard-row{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:30px;
  padding:28px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);
}
.resource-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:18px;
}
.resource-mini{
  background:#FFFDF9;
  border:1px solid #E8DDD0;
  border-radius:22px;
  padding:20px;
}
.resource-mini h4{
  color:#243B5A;
  margin:0 0 8px;
}
.resource-mini p{
  color:#5D6878;
  margin:0 0 14px;
  line-height:1.55;
}
.alert-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);
  gap:28px;
  align-items:start;
}
.alert-example{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:28px;
  padding:26px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);
}
.fake-message{
  background:#F7FAFC;
  border:1px solid #D8E1EA;
  border-radius:24px;
  padding:22px;
  font-size:1.08rem;
  line-height:1.55;
  color:#243B5A;
}
.dont-do{
  background:#FFF3D8;
  border:1px solid #F2D9A6;
  border-radius:24px;
  padding:22px;
}
.safer-step{
  background:#E7EFEA;
  border:1px solid #C9DDD4;
  border-radius:24px;
  padding:22px;
}
.gift-split,
.setup-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);
  gap:34px;
  align-items:center;
}
.gift-image,
.setup-image{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:18px;
  box-shadow:0 18px 46px rgba(60,47,40,.12);
}
.gift-image img,
.setup-image img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:24px;
  display:block;
}
.setup-table{
  width:100%;
  border-collapse:collapse;
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  border:1px solid #E8DDD0;
}
.setup-table th,
.setup-table td{
  padding:16px 18px;
  text-align:left;
  vertical-align:top;
  border-bottom:1px solid #E8DDD0;
}
.setup-table th{
  color:#243B5A;
  background:#FFF8ED;
}
.setup-table td{
  color:#4B5563;
  line-height:1.5;
}
.setup-table tr:last-child td{
  border-bottom:0;
}
.cta-panel-v30{
  background:linear-gradient(135deg,#FFF3D8,#E7EFEA);
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:clamp(30px,4vw,52px);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  box-shadow:0 18px 46px rgba(60,47,40,.10);
}
.cta-panel-v30 h2{
  margin:0 0 12px;
  color:#243B5A;
  font-size:clamp(2.1rem,3.5vw,3.7rem);
  line-height:1.05;
  letter-spacing:-.04em;
}
.cta-panel-v30 p{
  margin:0;
  color:#4B5563;
  max-width:720px;
  line-height:1.65;
  font-size:1.1rem;
}
.cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
@media(max-width:1000px){
  .kua-grid-3,
  .kua-grid-4,
  .resource-card-grid{
    grid-template-columns:1fr 1fr;
  }
  .dashboard-rail,
  .alert-layout,
  .gift-split,
  .setup-split,
  .cta-panel-v30{
    grid-template-columns:1fr;
  }
  .dashboard-menu{
    position:static;
  }
}
@media(max-width:720px){
  .kua-grid-2,
  .kua-grid-3,
  .kua-grid-4,
  .resource-card-grid{
    grid-template-columns:1fr;
  }
  .kua-step-card{
    grid-template-columns:1fr;
  }
}


/* V31 maximum launch enhancements */
:root{
  --kua-navy:#243B5A;
  --kua-deep:#0F1E33;
  --kua-gold:#EFAE3B;
  --kua-gold-soft:#FFF3D8;
  --kua-green-soft:#E7EFEA;
  --kua-cream:#FFFCF7;
  --kua-border:#E8DDD0;
  --kua-text:#4B5563;
}
.kua-section{padding:72px 0;}
.kua-soft{background:var(--kua-cream);}
.kua-white{background:#fff;}
.kua-header{max-width:840px;margin:0 0 32px;}
.kua-header.center{margin-left:auto;margin-right:auto;text-align:center;}
.kua-header h2{color:var(--kua-navy);font-size:clamp(2.35rem,4vw,4.05rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 14px;}
.kua-header p{color:#5D6878;line-height:1.68;font-size:1.12rem;margin:0;}
.kua-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.kua-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.kua-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.kua-card-v31{background:#fff;border:1px solid var(--kua-border);border-radius:28px;padding:26px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.kua-card-v31 h3{margin:0 0 10px;color:var(--kua-navy);line-height:1.15;}
.kua-card-v31 p{margin:0;color:#5D6878;line-height:1.62;}
.kua-card-v31 ul{margin:16px 0 0;padding-left:20px;color:var(--kua-text);line-height:1.75;}
.kua-icon-v31{width:44px;height:44px;display:grid;place-items:center;border-radius:999px;background:var(--kua-gold-soft);color:#8A5A05;font-weight:900;margin-bottom:16px;}
.kua-number-v31{width:46px;height:46px;display:grid;place-items:center;border-radius:999px;background:var(--kua-green-soft);color:#315E52;font-weight:900;}
.kua-meta-v31{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0;}
.kua-pill-v31{display:inline-flex;align-items:center;background:var(--kua-green-soft);color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:7px 10px;font-weight:850;font-size:.9rem;}
.kua-pill-v31.gold{background:var(--kua-gold-soft);color:#8A5A05;border-color:#F2D9A6;}
.kua-resource-image{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;margin-bottom:16px;display:block;}
.kua-cta-v31{background:linear-gradient(135deg,var(--kua-gold-soft),var(--kua-green-soft));border:1px solid var(--kua-border);border-radius:34px;padding:clamp(30px,4vw,52px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;box-shadow:0 18px 46px rgba(60,47,40,.10);}
.kua-cta-v31 h2{margin:0 0 12px;color:var(--kua-navy);font-size:clamp(2.1rem,3.5vw,3.7rem);line-height:1.05;letter-spacing:-.04em;}
.kua-cta-v31 p{margin:0;color:var(--kua-text);max-width:760px;line-height:1.65;font-size:1.1rem;}
.kua-actions-v31{display:flex;flex-wrap:wrap;gap:12px;}
.founder-split,.support-split,.pdf-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.75fr);gap:34px;align-items:center;}
.founder-image,.support-image,.pdf-image{background:#fff;border:1px solid var(--kua-border);border-radius:34px;padding:18px;box-shadow:0 18px 46px rgba(60,47,40,.12);}
.founder-image img,.support-image img,.pdf-image img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px;display:block;}
.pdf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.pdf-card{position:relative;overflow:hidden;}
.pdf-card::after{content:"PDF";position:absolute;top:18px;right:18px;background:var(--kua-gold-soft);color:#8A5A05;border:1px solid #F2D9A6;border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:900;}
.checklist-list{display:grid;gap:12px;margin:22px 0;}
.checkline{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;background:#fff;border:1px solid var(--kua-border);border-radius:18px;}
.checkline::before{content:"✓";width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:var(--kua-gold-soft);color:#8A5A05;font-weight:900;flex:0 0 auto;}
.analytics-table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:24px;background:#fff;border:1px solid var(--kua-border);}
.analytics-table th,.analytics-table td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--kua-border);}
.analytics-table th{color:var(--kua-navy);background:#FFF8ED;}
.analytics-table td{color:var(--kua-text);line-height:1.5;}
.analytics-table tr:last-child td{border-bottom:0;}
.support-choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.support-choice{background:#fff;border:1px solid var(--kua-border);border-radius:28px;padding:24px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.support-choice h3{color:var(--kua-navy);margin:0 0 10px;}
.support-choice p{color:#5D6878;line-height:1.6;margin:0 0 16px;}
.qa-status{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;font-weight:900;font-size:.9rem;}
.qa-pass{background:var(--kua-green-soft);color:#315E52;border:1px solid #C9DDD4;}
.qa-ready{background:var(--kua-gold-soft);color:#8A5A05;border:1px solid #F2D9A6;}
.launch-list{display:grid;gap:16px;}
.launch-item{background:#fff;border:1px solid var(--kua-border);border-radius:24px;padding:22px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:start;box-shadow:0 10px 24px rgba(60,47,40,.06);}
.launch-item h3{margin:0 0 6px;color:var(--kua-navy);}
.launch-item p{margin:0;color:#5D6878;line-height:1.55;}
.faq-accordion{display:grid;gap:14px;}
.faq-accordion details{background:#fff;border:1px solid var(--kua-border);border-radius:22px;padding:20px;box-shadow:0 10px 24px rgba(60,47,40,.05);}
.faq-accordion summary{cursor:pointer;color:var(--kua-navy);font-weight:900;font-size:1.08rem;}
.faq-accordion p{color:#5D6878;line-height:1.65;margin:14px 0 0;}
.testimonial-strip{background:#fff;border-top:1px solid var(--kua-border);border-bottom:1px solid var(--kua-border);padding:48px 0;}
.quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.quote-card{background:#FFFDF9;border:1px solid var(--kua-border);border-radius:28px;padding:26px;}
.quote-card blockquote{margin:0;color:var(--kua-navy);font-size:1.08rem;line-height:1.6;font-weight:750;}
.quote-card span{display:block;margin-top:16px;color:#5D6878;font-weight:850;}
@media(max-width:1050px){
  .kua-grid-3,.kua-grid-4,.pdf-grid,.support-choice-grid,.quote-grid{grid-template-columns:1fr 1fr;}
  .founder-split,.support-split,.pdf-split,.kua-cta-v31{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .kua-grid-2,.kua-grid-3,.kua-grid-4,.pdf-grid,.support-choice-grid,.quote-grid{grid-template-columns:1fr;}
  .launch-item{grid-template-columns:1fr;}
}


/* V32 For Families trust strip fix + max enhancements */
.family-trust-section{
  padding:72px 0;
  background:#FFFCF7;
  border-top:1px solid #E8DDD0;
  border-bottom:1px solid #E8DDD0;
}
.family-trust-panel{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:36px;
  padding:clamp(30px,4vw,54px);
  box-shadow:0 18px 46px rgba(60,47,40,.10);
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:36px;
  align-items:center;
}
.family-trust-copy h2{
  color:#243B5A;
  font-size:clamp(2.35rem,4vw,4.1rem);
  line-height:1.03;
  letter-spacing:-.045em;
  margin:0 0 14px;
}
.family-trust-copy p{
  color:#4B5563;
  font-size:1.12rem;
  line-height:1.7;
  margin:0;
}
.family-trust-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.family-trust-card{
  background:#FFF8ED;
  border:1px solid #E8DDD0;
  border-radius:24px;
  padding:20px;
}
.family-trust-card:nth-child(even){
  background:#E7EFEA;
  border-color:#C9DDD4;
}
.family-trust-card strong{
  display:flex;
  gap:10px;
  align-items:center;
  color:#243B5A;
  font-size:1.05rem;
  margin-bottom:8px;
}
.family-trust-card strong::before{
  content:"✓";
  width:26px;
  height:26px;
  border-radius:999px;
  background:#FFF3D8;
  color:#8A5A05;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  font-weight:900;
}
.family-trust-card p{
  color:#5D6878;
  line-height:1.55;
  margin:0;
}
.kua-section-v32{padding:72px 0;}
.kua-soft-v32{background:#FFFCF7;}
.kua-white-v32{background:#fff;}
.kua-header-v32{max-width:840px;margin:0 0 32px;}
.kua-header-v32.center{margin-left:auto;margin-right:auto;text-align:center;}
.kua-header-v32 h2{color:#243B5A;font-size:clamp(2.35rem,4vw,4.05rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 14px;}
.kua-header-v32 p{color:#5D6878;line-height:1.68;font-size:1.12rem;margin:0;}
.kua-grid-2-v32{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.kua-grid-3-v32{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.kua-grid-4-v32{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.kua-card-v32{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:26px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.kua-card-v32 h3{margin:0 0 10px;color:#243B5A;line-height:1.15;}
.kua-card-v32 p{margin:0;color:#5D6878;line-height:1.62;}
.kua-card-v32 ul{margin:16px 0 0;padding-left:20px;color:#4B5563;line-height:1.75;}
.kua-icon-v32{width:44px;height:44px;display:grid;place-items:center;border-radius:999px;background:#FFF3D8;color:#8A5A05;font-weight:900;margin-bottom:16px;}
.kua-cta-v32{background:linear-gradient(135deg,#FFF3D8,#E7EFEA);border:1px solid #E8DDD0;border-radius:34px;padding:clamp(30px,4vw,52px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;box-shadow:0 18px 46px rgba(60,47,40,.10);}
.kua-cta-v32 h2{margin:0 0 12px;color:#243B5A;font-size:clamp(2.1rem,3.5vw,3.7rem);line-height:1.05;letter-spacing:-.04em;}
.kua-cta-v32 p{margin:0;color:#4B5563;max-width:760px;line-height:1.65;font-size:1.1rem;}
.kua-actions-v32{display:flex;flex-wrap:wrap;gap:12px;}
.comparison-table-v32{width:100%;border-collapse:collapse;overflow:hidden;border-radius:24px;background:#fff;border:1px solid #E8DDD0;}
.comparison-table-v32 th,.comparison-table-v32 td{padding:16px 18px;text-align:left;vertical-align:top;border-bottom:1px solid #E8DDD0;}
.comparison-table-v32 th{color:#243B5A;background:#FFF8ED;}
.comparison-table-v32 td{color:#4B5563;line-height:1.5;}
.comparison-table-v32 tr:last-child td{border-bottom:0;}
.comparison-table-v32 .yes{font-weight:900;color:#315E52;}
.comparison-table-v32 .partial{font-weight:900;color:#8A5A05;}
.scenario-grid-v32{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.scenario-card-v32{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:26px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.scenario-message-v32{background:#F7FAFC;border:1px solid #D8E1EA;border-radius:20px;padding:18px;margin:16px 0;color:#243B5A;line-height:1.55;}
.email-sequence-v32{display:grid;gap:16px;}
.email-row-v32{background:#fff;border:1px solid #E8DDD0;border-radius:24px;padding:22px;display:grid;grid-template-columns:120px 1fr auto;gap:16px;align-items:start;box-shadow:0 10px 24px rgba(60,47,40,.06);}
.email-day-v32{display:inline-flex;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:8px 12px;font-weight:900;width:max-content;}
.mini-download-v32{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.mini-download-v32 a{background:#fff;border:1px solid #E8DDD0;border-radius:20px;padding:18px;text-decoration:none;color:#243B5A;font-weight:900;box-shadow:0 8px 20px rgba(60,47,40,.06);}
@media(max-width:1000px){
  .family-trust-panel,.kua-cta-v32{grid-template-columns:1fr;}
  .kua-grid-3-v32,.kua-grid-4-v32,.mini-download-v32{grid-template-columns:1fr 1fr;}
}
@media(max-width:720px){
  .family-trust-grid,.kua-grid-2-v32,.kua-grid-3-v32,.kua-grid-4-v32,.scenario-grid-v32,.mini-download-v32{grid-template-columns:1fr;}
  .email-row-v32{grid-template-columns:1fr;}
}


/* V33 member LMS, progress, course images, and PDF resource */
.nav-dashboard{display:none!important;}
body.kua-member-logged-in .nav-login{display:none!important;}
body.kua-member-logged-in .nav-dashboard{display:inline-flex!important;}
.member-status-chip{display:inline-flex;align-items:center;gap:8px;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:8px 12px;font-weight:900;font-size:.9rem;}
.lms-shell{background:#FFFCF7;padding:72px 0;}
.lms-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start;}
.lms-sidebar{position:sticky;top:112px;background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:22px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.lms-profile{display:flex;gap:12px;align-items:center;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid #E8DDD0;}
.lms-avatar{width:48px;height:48px;border-radius:999px;background:#FFF3D8;color:#8A5A05;display:grid;place-items:center;font-weight:900;}
.lms-profile strong{display:block;color:#243B5A;}.lms-profile span{display:block;color:#5D6878;font-size:.92rem;}
.lms-side-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;color:#243B5A;text-decoration:none;font-weight:850;}
.lms-side-link:hover{background:#FFF3D8;}.lms-main{display:grid;gap:24px;}
.lms-hero-panel,.lms-card,.lesson-visual-lab,.lesson-progress-panel,.course-progress-panel{background:#fff;border:1px solid #E8DDD0;border-radius:32px;padding:clamp(24px,3vw,38px);box-shadow:0 14px 32px rgba(60,47,40,.08);}
.lms-hero-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);gap:28px;align-items:center;background:linear-gradient(135deg,#fff,#FFF8ED);}
.lms-hero-panel h1,.lms-hero-panel h2{color:#243B5A;font-size:clamp(2.4rem,4vw,4.2rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 12px;}
.lms-hero-panel p{color:#5D6878;line-height:1.65;font-size:1.1rem;}.lms-hero-panel img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px;}
.progress-track{height:14px;background:#F1E7DA;border-radius:999px;overflow:hidden;border:1px solid #E8DDD0;}.progress-fill{height:100%;width:0;background:linear-gradient(90deg,#EFAE3B,#6E8F82);border-radius:999px;transition:width .3s ease;}
.progress-copy{display:flex;justify-content:space-between;gap:16px;margin:10px 0 0;color:#5D6878;font-weight:850;}
.lms-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}.lms-catalog-card{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:22px;box-shadow:0 12px 28px rgba(60,47,40,.07);display:flex;flex-direction:column;min-height:100%;}
.lms-catalog-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;margin-bottom:16px;}.lms-catalog-card h3{color:#243B5A;margin:0 0 8px;}.lms-catalog-card p{color:#5D6878;line-height:1.55;margin:0 0 16px;}.lms-catalog-card .btn{margin-top:auto;}
.lms-tag-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px;}.lms-tag{display:inline-flex;align-items:center;border-radius:999px;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;padding:6px 9px;font-size:.85rem;font-weight:900;}.lms-tag.gold{background:#FFF3D8;color:#8A5A05;border-color:#F2D9A6;}
.lesson-visual-lab{margin:40px auto;max-width:1180px;}.lesson-visual-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1fr);gap:28px;align-items:center;}.lesson-scenario-image{width:100%;border-radius:28px;border:1px solid #E8DDD0;box-shadow:0 16px 34px rgba(60,47,40,.10);}.lesson-action-list{display:grid;gap:12px;margin-top:18px;}.lesson-action{display:flex;gap:12px;align-items:flex-start;background:#FFFDF9;border:1px solid #E8DDD0;border-radius:18px;padding:14px 16px;color:#4B5563;line-height:1.55;}.lesson-action::before{content:'✓';width:26px;height:26px;border-radius:999px;background:#FFF3D8;color:#8A5A05;display:grid;place-items:center;font-weight:900;flex:0 0 auto;}
.lesson-complete-button{border:0;border-radius:999px;background:#EFAE3B;color:#3C2F28;padding:14px 22px;font-weight:900;cursor:pointer;font-size:1rem;}.lesson-complete-button.completed{background:#E7EFEA;color:#315E52;}.lesson-nav-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}.badge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}.badge-card{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:22px;padding:18px;text-align:center;}.badge-icon{width:48px;height:48px;border-radius:999px;margin:0 auto 10px;background:#F1E7DA;color:#8A5A05;display:grid;place-items:center;font-weight:900;}.badge-card.unlocked .badge-icon{background:#FFF3D8;}.badge-card strong{color:#243B5A;display:block;}.badge-card span{color:#5D6878;font-size:.9rem;}
.video-card{position:relative;}.video-thumb{position:relative;}.video-thumb::after{content:'▶';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:999px;background:rgba(36,59,90,.92);color:#fff;display:grid;place-items:center;font-size:1.4rem;box-shadow:0 10px 24px rgba(0,0,0,.18);}.kua-hidden{display:none!important;}
.login-panel{max-width:820px;margin:0 auto;background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(28px,4vw,52px);box-shadow:0 18px 46px rgba(60,47,40,.10);}.login-steps{display:grid;gap:14px;margin:24px 0;}.login-step{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:20px;padding:18px;color:#4B5563;}.login-step strong{color:#243B5A;display:block;margin-bottom:4px;}
@media(max-width:1050px){.lms-layout,.lms-hero-panel,.lesson-visual-grid{grid-template-columns:1fr;}.lms-sidebar{position:static;}.lms-catalog-grid,.badge-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:700px){.lms-catalog-grid,.badge-grid{grid-template-columns:1fr;}.progress-copy{flex-direction:column;gap:6px;}}


/* V34 adaptive member hub */
.kua-member-only{display:none !important;}
.kua-member-logged-in .kua-member-only{display:inline-flex !important;}
.kua-member-logged-in .kua-guest-only{display:none !important;}
.kua-section-34{padding:72px 0;}
.kua-soft-34{background:#FFFCF7;}
.kua-white-34{background:#fff;}
.kua-header-34{max-width:840px;margin:0 0 32px;}
.kua-header-34.center{margin-left:auto;margin-right:auto;text-align:center;}
.kua-header-34 h2{color:#243B5A;font-size:clamp(2.35rem,4vw,4.05rem);line-height:1.03;letter-spacing:-.045em;margin:0 0 14px;}
.kua-header-34 p{color:#5D6878;line-height:1.68;font-size:1.12rem;margin:0;}
.kua-grid-2-34{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.kua-grid-3-34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.kua-grid-4-34{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.kua-card-34{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:26px;box-shadow:0 14px 32px rgba(60,47,40,.08);}
.kua-card-34 h3{margin:0 0 10px;color:#243B5A;line-height:1.15;}
.kua-card-34 p{margin:0;color:#5D6878;line-height:1.62;}
.kua-card-34 ul{margin:16px 0 0;padding-left:20px;color:#4B5563;line-height:1.75;}
.kua-icon-34{width:44px;height:44px;display:grid;place-items:center;border-radius:999px;background:#FFF3D8;color:#8A5A05;font-weight:900;margin-bottom:16px;}
.kua-pill-34{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:7px 10px;font-weight:850;font-size:.9rem;}
.kua-pill-34.gold{background:#FFF3D8;color:#8A5A05;border-color:#F2D9A6;}
.kua-actions-34{display:flex;flex-wrap:wrap;gap:12px;}
.lms-layout-34{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start;}
.lms-sidebar-34{position:sticky;top:112px;background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:22px;box-shadow:0 18px 46px rgba(60,47,40,.10);}
.profile-summary-34{display:flex;gap:14px;align-items:center;padding-bottom:18px;border-bottom:1px solid #E8DDD0;margin-bottom:16px;}
.avatar-34{width:58px;height:58px;border-radius:999px;display:grid;place-items:center;background:#FFF3D8;color:#243B5A;font-weight:900;overflow:hidden;border:1px solid #E8DDD0;flex:0 0 auto;}
.avatar-34 img{width:100%;height:100%;object-fit:cover;display:block;}
.sidebar-name-34{font-weight:900;color:#243B5A;}
.sidebar-email-34{color:#5D6878;font-size:.92rem;word-break:break-word;}
.lms-menu-34 a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:16px;color:#243B5A;font-weight:850;text-decoration:none;}
.lms-menu-34 a:hover{background:#FFF3D8;}
.lms-main-34{display:grid;gap:24px;}
.lms-panel-34{background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(28px,4vw,42px);box-shadow:0 18px 46px rgba(60,47,40,.10);}
.lms-panel-34 h2{color:#243B5A;font-size:clamp(2rem,3vw,3rem);letter-spacing:-.035em;margin:0 0 12px;}
.catalog-card-34{display:flex;flex-direction:column;min-height:100%;overflow:hidden;}
.catalog-card-34 img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:22px;margin-bottom:18px;background:#FFF8ED;}
.catalog-card-34 .catalog-body{display:flex;flex-direction:column;gap:12px;flex:1;}
.catalog-card-34 .catalog-actions{margin-top:auto;padding-top:18px;display:flex;flex-wrap:wrap;gap:10px;}
.continue-card-34{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:linear-gradient(135deg,#FFF3D8,#E7EFEA);border:1px solid #E8DDD0;border-radius:30px;padding:26px;}
.continue-card-34 h3{font-size:1.6rem;margin:0 0 8px;color:#243B5A;}
.continue-button-34{white-space:normal;text-align:center;min-width:210px;border-radius:999px !important;padding:14px 20px !important;line-height:1.2 !important;display:inline-flex !important;justify-content:center;align-items:center;}
.progress-wrap-34{background:#EDF2F7;border-radius:999px;height:14px;overflow:hidden;border:1px solid #D8E1EA;margin-top:12px;}
.progress-bar-34{height:100%;width:0;background:#EFAE3B;border-radius:999px;transition:width .3s ease;}
.badge-row-34{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.badge-34{display:inline-flex;gap:8px;align-items:center;background:#FFF3D8;color:#8A5A05;border:1px solid #F2D9A6;border-radius:999px;padding:8px 11px;font-weight:900;font-size:.9rem;}
.preference-grid-34{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.preference-card-34{border:1px solid #E8DDD0;border-radius:20px;background:#FFFDF9;padding:16px;cursor:pointer;text-align:left;font-weight:850;color:#243B5A;}
.preference-card-34[aria-pressed="true"]{background:#E7EFEA;border-color:#315E52;box-shadow:0 0 0 3px rgba(49,94,82,.12);}
.feed-controls-34{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0;}
.feed-chip-34{border:1px solid #E8DDD0;background:#fff;border-radius:999px;padding:10px 13px;color:#243B5A;font-weight:850;cursor:pointer;}
.feed-chip-34.active{background:#243B5A;color:#fff;border-color:#243B5A;}
.feed-grid-34{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.feed-card-34{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:18px;box-shadow:0 14px 32px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:12px;}
.feed-card-34 img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;background:#FFF8ED;}
.feed-card-34 h3{color:#243B5A;margin:0;font-size:1.22rem;line-height:1.15;}
.feed-card-34 p{color:#5D6878;margin:0;line-height:1.55;}
.feed-card-34 .feed-actions{margin-top:auto;padding-top:10px;}
.avatar-grid-34{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.avatar-option-34{border:1px solid #E8DDD0;border-radius:24px;background:#fff;padding:14px;cursor:pointer;text-align:center;color:#243B5A;font-weight:850;}
.avatar-option-34[aria-pressed="true"]{border-color:#315E52;background:#E7EFEA;box-shadow:0 0 0 3px rgba(49,94,82,.12);}
.avatar-option-34 img{width:96px;height:96px;border-radius:999px;display:block;margin:0 auto 10px;}
.profile-form-34 label{display:block;color:#243B5A;font-weight:900;margin:18px 0 8px;}
.profile-form-34 input,.profile-form-34 select{width:100%;padding:14px 16px;border:1px solid #D8E1EA;border-radius:16px;font-size:1rem;color:#243B5A;background:#fff;}
.sync-note-34{background:#FFF8ED;border:1px solid #E8DDD0;border-radius:24px;padding:22px;color:#4B5563;line-height:1.65;}
.article-body-34{max-width:900px;margin:0 auto;}
.article-body-34 h2{color:#243B5A;font-size:clamp(2rem,3vw,3rem);line-height:1.05;letter-spacing:-.035em;margin:36px 0 12px;}
.article-body-34 p,.article-body-34 li{color:#4B5563;font-size:1.08rem;line-height:1.75;}
.article-callout-34{background:#E7EFEA;border:1px solid #C9DDD4;border-radius:24px;padding:22px;margin:26px 0;}
@media(max-width:1050px){
  .lms-layout-34{grid-template-columns:1fr;}
  .lms-sidebar-34{position:static;}
  .kua-grid-3-34,.kua-grid-4-34,.feed-grid-34,.preference-grid-34,.avatar-grid-34{grid-template-columns:1fr 1fr;}
  .continue-card-34{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .kua-grid-2-34,.kua-grid-3-34,.kua-grid-4-34,.feed-grid-34,.preference-grid-34,.avatar-grid-34{grid-template-columns:1fr;}
}


/* V37 Blog Article Library */
.blog-shell-37{background:#FFFCF7;padding:56px 0 88px}.blog-hero-37{background:#fff;border:1px solid #E8DDD0;border-radius:38px;padding:clamp(30px,5vw,60px);box-shadow:0 18px 46px rgba(60,47,40,.10);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.8fr);gap:34px;align-items:center}.blog-hero-37 h1{color:#243B5A;font-size:clamp(2.8rem,5vw,5.4rem);letter-spacing:-.055em;line-height:.98;margin:0 0 18px}.blog-hero-37 p{color:#5D6878;font-size:1.15rem;line-height:1.7;margin:0}.blog-hero-37 img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;border:1px solid #E8DDD0}.blog-kicker-37{display:inline-flex;align-items:center;background:#E7EFEA;border:1px solid #C9DDD4;color:#315E52;border-radius:999px;padding:8px 13px;font-weight:900;font-size:.9rem;margin-bottom:16px}.blog-toolbar-37{margin:30px 0 22px;display:flex;flex-wrap:wrap;gap:10px}.blog-chip-37{border:1px solid #E8DDD0;background:#fff;border-radius:999px;padding:10px 13px;color:#243B5A;font-weight:850;cursor:pointer}.blog-chip-37.active,.blog-chip-37:hover{background:#243B5A;color:#fff}.blog-grid-37{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.blog-card-37{background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:18px;box-shadow:0 14px 32px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:12px}.blog-card-37 img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:22px}.blog-card-37 h2{color:#243B5A;font-size:1.35rem;line-height:1.15;margin:0}.blog-card-37 p{color:#5D6878;line-height:1.58;margin:0}.blog-meta-37{display:flex;flex-wrap:wrap;gap:8px}.blog-pill-37{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:7px 10px;font-weight:850;font-size:.84rem}.blog-pill-37.gold{background:#FFF3D8;color:#8A5A05;border-color:#F2D9A6}.blog-card-actions-37{margin-top:auto;padding-top:12px;display:flex;gap:10px;flex-wrap:wrap}.article-shell-37{background:#FFFCF7;padding:44px 0 88px}.article-layout-37{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:32px;align-items:start}.article-main-37{background:#fff;border:1px solid #E8DDD0;border-radius:38px;box-shadow:0 18px 46px rgba(60,47,40,.10);overflow:hidden}.article-hero-img-37{width:100%;aspect-ratio:16/7;object-fit:cover}.article-content-37{padding:clamp(28px,5vw,64px)}.article-content-37 h1{color:#243B5A;font-size:clamp(2.5rem,4.8vw,5.2rem);letter-spacing:-.055em;line-height:.99;margin:0 0 16px}.article-content-37 h2{color:#243B5A;font-size:clamp(1.75rem,3vw,2.65rem);letter-spacing:-.035em;line-height:1.05;margin:38px 0 12px}.article-content-37 h3{color:#315E52;font-size:1.28rem;margin:28px 0 10px}.article-content-37 p,.article-content-37 li{color:#4B5563;font-size:1.08rem;line-height:1.78}.article-content-37 li{margin-bottom:.45rem}.article-callout,.try-today{background:#FFF3D8;border:1px solid #F2D9A6;border-left:6px solid #EFAE3B;border-radius:22px;padding:20px 22px;margin:26px 0;color:#4B5563}.article-example,.related{background:#E7EFEA;border:1px solid #C9DDD4;border-left:6px solid #315E52;border-radius:22px;padding:20px 22px;margin:26px 0;color:#4B5563}.family-note,.family-prompt{background:#F2EAFB;border:1px solid #D5C5EA;border-left:6px solid #6B4B8A;border-radius:22px;padding:20px 22px;margin:26px 0;color:#4B5563}.takeaways{background:#EAF2FA;border:1px solid #C8DDF2;border-left:6px solid #243B5A;border-radius:22px;padding:20px 22px;margin:26px 0}.cta-block{background:#243B5A;color:#fff;border-radius:28px;padding:28px;margin:34px 0}.cta-block p{color:#fff!important;margin:0!important}.cta-block a{color:#FFF3D8;font-weight:900}.article-sidebar-37{position:sticky;top:112px;display:grid;gap:16px}.sidebar-card-37{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:22px;box-shadow:0 14px 32px rgba(60,47,40,.08)}.sidebar-card-37 h3{color:#243B5A;margin:0 0 10px}.sidebar-card-37 p{color:#5D6878;line-height:1.6;margin:0}.sidebar-card-37 a{display:block;color:#243B5A;text-decoration:none;font-weight:850;margin:10px 0}.article-nav-37{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:24px}@media(max-width:1050px){.blog-hero-37,.article-layout-37{grid-template-columns:1fr}.article-sidebar-37{position:static}.blog-grid-37{grid-template-columns:1fr 1fr}}@media(max-width:720px){.blog-grid-37{grid-template-columns:1fr}.article-content-37{padding:24px}.article-hero-img-37{aspect-ratio:16/10}}


/* V38 Dashboard Style Fix */
body[data-kua-version="v38-dashboard-style-fix"] .kua-member-only{display:none !important;}
body.kua-member-logged-in[data-kua-version="v38-dashboard-style-fix"] .kua-member-only{display:inline-flex !important;}
body.kua-member-logged-in[data-kua-version="v38-dashboard-style-fix"] .kua-guest-only{display:none !important;}

.v38-shell{background:#FFFCF7;padding:48px 0 92px;}
.v38-dashboard{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start;}
.v38-sidebar{position:sticky;top:112px;background:#fff;border:1px solid #E8DDD0;border-radius:32px;padding:24px;box-shadow:0 18px 46px rgba(60,47,40,.10);}
.v38-profile-row{display:flex;gap:14px;align-items:center;padding-bottom:18px;border-bottom:1px solid #E8DDD0;margin-bottom:16px;}
.v38-avatar{width:64px;height:64px;border-radius:999px;background:#FFF3D8;border:1px solid #E8DDD0;overflow:hidden;display:grid;place-items:center;color:#243B5A;font-weight:900;flex:0 0 auto;}
.v38-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
.v38-name{font-weight:900;color:#243B5A;font-size:1.05rem;}
.v38-email{color:#5D6878;font-size:.92rem;word-break:break-word;}
.v38-menu{display:grid;gap:6px;}
.v38-menu a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;border-radius:16px;color:#243B5A;font-weight:850;text-decoration:none;}
.v38-menu a:hover{background:#FFF3D8;}
.v38-main{display:grid;gap:24px;}
.v38-panel{background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(26px,4vw,44px);box-shadow:0 18px 46px rgba(60,47,40,.10);}
.v38-kicker{display:inline-flex;align-items:center;background:#E7EFEA;border:1px solid #C9DDD4;color:#315E52;border-radius:999px;padding:8px 13px;font-weight:900;font-size:.9rem;margin-bottom:16px;}
.v38-panel h1,.v38-panel h2{color:#243B5A;letter-spacing:-.045em;line-height:1.03;margin:0 0 14px;}
.v38-panel h1{font-size:clamp(2.4rem,4.6vw,4.8rem);}
.v38-panel h2{font-size:clamp(2rem,3.4vw,3.4rem);}
.v38-panel p{color:#5D6878;line-height:1.68;font-size:1.08rem;margin:0;}
.v38-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);gap:28px;align-items:center;}
.v38-hero-card{background:linear-gradient(135deg,#FFF3D8,#E7EFEA);border:1px solid #E8DDD0;border-radius:30px;padding:26px;}
.v38-hero-card h2,.v38-hero-card h3{color:#243B5A;font-size:1.5rem;margin:0 0 8px;line-height:1.15;}
.v38-progress-track{height:16px;background:#EDF2F7;border:1px solid #D8E1EA;border-radius:999px;overflow:hidden;margin:18px 0 12px;}
.v38-progress-fill{height:100%;width:0;background:#EFAE3B;border-radius:999px;transition:width .3s ease;}
.v38-badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.v38-badge{display:inline-flex;align-items:center;background:#FFF3D8;color:#8A5A05;border:1px solid #F2D9A6;border-radius:999px;padding:8px 11px;font-weight:900;font-size:.9rem;}
.v38-continue-button{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:auto !important;min-width:220px !important;max-width:280px !important;min-height:54px !important;border-radius:999px !important;padding:14px 22px !important;font-weight:900 !important;line-height:1.15 !important;text-align:center !important;white-space:normal !important;background:#EFAE3B !important;color:#2B2100 !important;border:2px solid #EFAE3B !important;text-decoration:none !important;box-shadow:0 12px 24px rgba(239,174,59,.22) !important;}
.v38-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.v38-card{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:28px;padding:22px;box-shadow:0 12px 30px rgba(60,47,40,.06);display:flex;flex-direction:column;gap:12px;}
.v38-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;background:#FFF8ED;}
.v38-card h3{color:#243B5A;margin:0;font-size:1.32rem;line-height:1.15;}
.v38-card p{font-size:1rem;line-height:1.55;}
.v38-card-actions{margin-top:auto;padding-top:12px;display:flex;flex-wrap:wrap;gap:10px;}
.v38-pill{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:7px 10px;font-weight:850;font-size:.9rem;width:max-content;}
.v38-pill.gold{background:#FFF3D8;color:#8A5A05;border-color:#F2D9A6;}
.v38-preferences{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px;}
.v38-pref{border:1px solid #E8DDD0;border-radius:20px;background:#FFFDF9;padding:16px;cursor:pointer;text-align:left;font-weight:900;color:#243B5A;}
.v38-pref[aria-pressed="true"]{background:#E7EFEA;border-color:#315E52;box-shadow:0 0 0 3px rgba(49,94,82,.12);}
.v38-feed-controls{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0;}
.v38-chip{border:1px solid #E8DDD0;background:#fff;border-radius:999px;padding:10px 13px;color:#243B5A;font-weight:850;cursor:pointer;}
.v38-chip.active{background:#243B5A;color:#fff;border-color:#243B5A;}
.v38-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.v38-feed-card{background:#fff;border:1px solid #E8DDD0;border-radius:28px;padding:18px;box-shadow:0 14px 32px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:12px;}
.v38-feed-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;background:#FFF8ED;}
.v38-feed-card h3{color:#243B5A;margin:0;font-size:1.22rem;line-height:1.15;}
.v38-feed-card p{color:#5D6878;margin:0;line-height:1.55;}
@media(max-width:1050px){
  .v38-dashboard,.v38-hero-grid{grid-template-columns:1fr;}
  .v38-sidebar{position:static;}
  .v38-grid-3,.v38-feed,.v38-preferences{grid-template-columns:1fr 1fr;}
}
@media(max-width:720px){
  .v38-grid-3,.v38-feed,.v38-preferences{grid-template-columns:1fr;}
}

/* V39 Real Article Images + Clean Member Instructions */
.article-hero-img-37{
  width:100%;
  aspect-ratio:16/8.5 !important;
  object-fit:cover !important;
  object-position:center !important;
  background:#FFF8ED;
}
.blog-card-37 img{
  object-fit:cover !important;
  object-position:center !important;
}
.blog-hero-37 img{
  object-fit:cover !important;
  object-position:center !important;
}
.footer-grid a[href="/member-library/?v=53"],
.footer-grid a[href="/member-library/?v=53"]{
  display:none !important;
}


/* V40 Article Image + Preview Polish */
.article-main-37{
  overflow:hidden;
}
.article-hero-img-37{
  width:100% !important;
  aspect-ratio:16/9 !important;
  max-height:520px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#FFF8ED !important;
}
.article-content-37{
  padding-top:clamp(34px,5vw,64px) !important;
}
.article-content-37 h1{
  max-width:900px;
}
.article-content-37 > p:first-of-type{
  max-width:880px;
}
.blog-card-37 img,
.v38-feed-card img{
  width:100% !important;
  aspect-ratio:16/10 !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  border-radius:22px !important;
  background:#FFF8ED !important;
}
.v38-feed-card{
  min-height:100%;
}
.v38-feed-card h3{
  min-height:2.4em;
}
.v38-feed-card p{
  min-height:3.1em;
}
.v38-feed-card .v38-card-actions{
  margin-top:auto;
}
.blog-featured-strip-40{
  margin:28px 0 0;
  background:#243B5A;
  color:#fff;
  border-radius:30px;
  padding:24px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
}
.blog-featured-strip-40 h2{
  color:#fff;
  margin:0 0 8px;
  font-size:clamp(1.5rem,2.6vw,2.4rem);
  letter-spacing:-.035em;
}
.blog-featured-strip-40 p{
  color:#EEF5FF;
  margin:0;
}
.blog-search-40{
  width:min(100%,520px);
  padding:14px 16px;
  border:1px solid #D8E1EA;
  border-radius:999px;
  font:inherit;
  color:#243B5A;
  background:#fff;
}
.blog-toolbar-37{
  align-items:center;
}
.blog-empty-40{
  display:none;
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:24px;
  padding:24px;
  color:#5D6878;
}
.article-progress-note-40{
  background:#E7EFEA;
  border:1px solid #C9DDD4;
  border-left:6px solid #315E52;
  border-radius:22px;
  padding:18px 20px;
  margin:22px 0;
  color:#315E52;
}
.article-progress-note-40 strong{
  color:#243B5A;
}
.v38-saved-list-40{
  display:grid;
  gap:10px;
}
.v38-saved-list-40 a{
  display:block;
  background:#FFFDF9;
  border:1px solid #E8DDD0;
  border-radius:18px;
  padding:13px 15px;
  color:#243B5A;
  text-decoration:none;
  font-weight:850;
}
.v38-saved-empty-40{
  color:#5D6878;
}
.article-sidebar-37{
  z-index:1;
}
@media(max-width:1050px){
  .blog-featured-strip-40{grid-template-columns:1fr;}
}


/* V41 Single Scene Article Images */
.article-hero-img-37,
.blog-card-37 img,
.v38-feed-card img{
  object-fit:cover !important;
  object-position:center !important;
}
.article-hero-img-37{
  aspect-ratio:16/8.6 !important;
  max-height:540px !important;
}
.blog-card-37 img,
.v38-feed-card img{
  aspect-ratio:16/10 !important;
  background:#FFF8ED !important;
}
.v38-feed-card img{
  border:1px solid #E8DDD0;
}


/* V42 Photographic Article Image System */
.article-hero-img-37{
  width:100% !important;
  aspect-ratio:16/8.75 !important;
  max-height:560px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#FFF8ED !important;
}
.blog-card-37 img,
.v38-feed-card img{
  width:100% !important;
  aspect-ratio:16/10.5 !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  border-radius:22px !important;
  background:#FFF8ED !important;
  border:1px solid #E8DDD0 !important;
}
.blog-card-37,
.v38-feed-card{
  overflow:hidden;
}
.blog-card-37 h2,
.v38-feed-card h3{
  letter-spacing:-.02em;
}


/* V43 Member Article + Dashboard Accuracy Fix */
.v38-hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(300px,420px) !important;
  gap:clamp(24px,4vw,48px) !important;
  align-items:center !important;
}
.v38-panel#continue{
  overflow:hidden !important;
}
.v38-panel#continue h1{
  font-size:clamp(2.65rem,5.1vw,4.55rem) !important;
  line-height:.98 !important;
  max-width:680px !important;
  overflow-wrap:normal !important;
  text-wrap:balance !important;
}
.v38-panel#continue p{
  max-width:620px !important;
}
.v38-hero-card{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  max-width:420px !important;
  justify-self:end !important;
  box-sizing:border-box !important;
}
.article-hero-img-37{
  width:100% !important;
  aspect-ratio:16/8.6 !important;
  max-height:560px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#FFF8ED !important;
}
.article-inline-image-43{
  margin:30px 0 !important;
}
.article-inline-image-43 img{
  width:100% !important;
  aspect-ratio:16/8.8 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:28px !important;
  border:1px solid #E8DDD0 !important;
  box-shadow:0 16px 38px rgba(60,47,40,.10) !important;
  display:block !important;
  background:#FFF8ED !important;
}
.blog-card-37 img,
.v38-feed-card img{
  width:100% !important;
  aspect-ratio:16/10 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:22px !important;
  border:1px solid #E8DDD0 !important;
  background:#FFF8ED !important;
}
.cta-block p{
  color:#fff !important;
}
@media(max-width:1100px){
  .v38-hero-grid{
    grid-template-columns:1fr !important;
  }
  .v38-hero-card{
    justify-self:start !important;
    max-width:100% !important;
  }
  .v38-panel#continue h1{
    max-width:100% !important;
  }
}


/* V44 End-to-End QA Fix */
.kua-member-header .nav-actions .btn,
.kua-member-header .nav-links a{
  white-space:nowrap;
}
body:has(.kua-member-header) .nav-login,
body:has(.kua-member-header) .nav-join,
body:has(.kua-member-header) .kua-guest-only{
  display:none !important;
}
.v38-panel#continue{
  overflow:hidden !important;
}
.v38-hero-grid{
  display:grid !important;
  grid-template-columns:minmax(0,0.98fr) minmax(320px,390px) !important;
  gap:clamp(28px,4vw,56px) !important;
  align-items:center !important;
}
.v38-panel#continue h1{
  font-size:clamp(2.35rem,4.2vw,4rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.05em !important;
  max-width:560px !important;
  text-wrap:balance !important;
  overflow-wrap:normal !important;
}
.v38-panel#continue p{
  max-width:560px !important;
}
.v38-hero-card{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
  max-width:390px !important;
  justify-self:end !important;
  box-sizing:border-box !important;
}
.article-hero-img-37{
  width:100% !important;
  aspect-ratio:16/8.6 !important;
  max-height:560px !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
  background:#FFF8ED !important;
}
.article-inline-image-43{
  margin:32px 0 !important;
}
.article-inline-image-43 img{
  width:100% !important;
  aspect-ratio:16/8.8 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:28px !important;
  border:1px solid #E8DDD0 !important;
  box-shadow:0 16px 38px rgba(60,47,40,.10) !important;
  display:block !important;
  background:#FFF8ED !important;
}
.blog-card-37 img,
.v38-feed-card img{
  width:100% !important;
  aspect-ratio:16/10 !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:22px !important;
  border:1px solid #E8DDD0 !important;
  background:#FFF8ED !important;
}
.kua-login-card{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:clamp(28px,5vw,56px);
  box-shadow:0 18px 46px rgba(60,47,40,.10);
  max-width:780px;
  margin:0 auto;
}
.kua-login-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:24px;
}
.kua-login-note{
  margin-top:18px;
  color:#5D6878;
  line-height:1.6;
}
@media(max-width:1120px){
  .v38-hero-grid{
    grid-template-columns:1fr !important;
  }
  .v38-hero-card{
    justify-self:start !important;
    max-width:100% !important;
  }
  .v38-panel#continue h1,
  .v38-panel#continue p{
    max-width:100% !important;
  }
}


/* V45 Profile + Dashboard + Image System Fix */
.kua-member-header .nav-inner{
  display:grid !important;
  grid-template-columns:auto 1fr auto !important;
  gap:24px !important;
  align-items:center !important;
  min-height:96px !important;
}
.kua-member-header .brand img{
  width:clamp(150px,14vw,210px) !important;
  height:auto !important;
  display:block !important;
}
.kua-member-header .nav-links{
  display:flex !important;
  justify-content:center !important;
  gap:clamp(18px,2.4vw,34px) !important;
  flex-wrap:wrap !important;
}
.kua-member-header .nav-actions{
  display:flex !important;
  gap:12px !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
.kua-member-header .nav-actions .btn{
  white-space:nowrap !important;
  min-width:auto !important;
}
.v45-member-shell{
  background:#FFFCF7;
  padding:clamp(44px,6vw,84px) 0 96px;
}
.v45-profile-grid{
  display:grid;
  grid-template-columns:minmax(260px,360px) minmax(0,1fr);
  gap:32px;
  align-items:start;
}
.v45-profile-card,
.v45-profile-panel{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  box-shadow:0 18px 46px rgba(60,47,40,.10);
}
.v45-profile-card{
  padding:28px;
  position:sticky;
  top:116px;
}
.v45-profile-panel{
  padding:clamp(28px,4vw,52px);
}
.v45-profile-hero{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:22px;
  align-items:center;
  margin-bottom:24px;
}
.v45-avatar-large{
  width:132px;
  height:132px;
  border-radius:999px;
  background:#FFF3D8;
  border:6px solid #E8DDD0;
  display:grid;
  place-items:center;
  overflow:hidden;
  flex:0 0 auto;
}
.v45-avatar-large img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.v45-kicker{
  display:inline-flex;
  align-items:center;
  background:#E7EFEA;
  border:1px solid #C9DDD4;
  color:#315E52;
  border-radius:999px;
  padding:8px 13px;
  font-weight:900;
  font-size:.92rem;
  margin-bottom:16px;
}
.v45-profile-panel h1{
  color:#243B5A;
  font-size:clamp(2.45rem,5vw,4.6rem);
  line-height:1;
  letter-spacing:-.055em;
  margin:0 0 16px;
  max-width:860px;
}
.v45-profile-panel p{
  color:#5D6878;
  font-size:1.1rem;
  line-height:1.7;
  margin:0;
}
.v45-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  margin-top:28px;
}
.v45-field{
  display:grid;
  gap:8px;
}
.v45-field label{
  font-weight:900;
  color:#243B5A;
}
.v45-field input,
.v45-field select{
  border:1px solid #D8E1EA;
  border-radius:18px;
  padding:15px 16px;
  font:inherit;
  color:#243B5A;
  background:#fff;
  width:100%;
  box-sizing:border-box;
}
.v45-avatar-picker{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
.v45-avatar-choice{
  border:1px solid #E8DDD0;
  background:#FFFDF9;
  border-radius:22px;
  padding:14px;
  display:grid;
  place-items:center;
  gap:8px;
  cursor:pointer;
  color:#243B5A;
  font-weight:850;
}
.v45-avatar-choice[aria-pressed="true"]{
  border-color:#315E52;
  background:#E7EFEA;
  box-shadow:0 0 0 3px rgba(49,94,82,.12);
}
.v45-avatar-choice img{
  width:72px;
  height:72px;
  border-radius:999px;
}
.v45-profile-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
}
.v45-profile-note{
  margin-top:22px;
  padding:18px 20px;
  border-radius:22px;
  background:#FFF3D8;
  border:1px solid #F2D9A6;
  color:#5D6878;
  line-height:1.6;
}

/* Dashboard hero: remove two-column overlap risk completely */
.v38-panel#continue .v38-hero-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:26px !important;
  align-items:start !important;
}
.v38-panel#continue h1{
  font-size:clamp(2.7rem,4.8vw,4.8rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
  max-width:900px !important;
  text-wrap:balance !important;
}
.v38-panel#continue p{
  max-width:760px !important;
}
.v38-panel#continue .v38-hero-card{
  justify-self:start !important;
  max-width:720px !important;
  width:100% !important;
  box-sizing:border-box !important;
}
.article-hero-img-37,
.article-inline-image-43 img,
.blog-card-37 img,
.v38-feed-card img{
  object-fit:cover !important;
  object-position:center !important;
  background:#FFF8ED !important;
  border-color:#E8DDD0 !important;
}
.article-hero-img-37{
  width:100% !important;
  aspect-ratio:16/8.6 !important;
  max-height:560px !important;
  display:block !important;
}
.article-inline-image-43 img{
  width:100% !important;
  aspect-ratio:16/8.8 !important;
  border-radius:28px !important;
  border:1px solid #E8DDD0 !important;
  box-shadow:0 16px 38px rgba(60,47,40,.10) !important;
}
.blog-card-37 img,
.v38-feed-card img{
  width:100% !important;
  aspect-ratio:16/10 !important;
  border-radius:22px !important;
  border:1px solid #E8DDD0 !important;
}
@media(max-width:1050px){
  .kua-member-header .nav-inner{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:14px !important;
  }
  .v45-profile-grid{
    grid-template-columns:1fr;
  }
  .v45-profile-card{
    position:static;
  }
}
@media(max-width:720px){
  .v45-form-grid,
  .v45-profile-hero,
  .v45-avatar-picker{
    grid-template-columns:1fr;
  }
}


/* V


.kua-lms-shell img,
.kua-lms-panel img,
.kua-lms-course-card img,
.kua-lms-photo img,
.kua-lms-hero img,
.v38-card img,
.v38-feed-card img,
.v35-feed-card img,
.blog-card-37 img,
.lms-catalog-card img,
.video-thumb img,
.photo-hero-card img,
.kua-continue-learning img {
  height: auto;
}


/* v53.5/v53.7 layout fix:
 * Bundle A added explicit width/height HTML attributes to every <img> for
 * layout-shift prevention. The HTML height attribute becomes a CSS height
 * declaration that overrides aspect-ratio CSS in component rules. Without
 * height:auto, images render at their natural pixel height (e.g. 900px tall)
 * regardless of the responsive column width. The HTML attributes still
 * serve as an intrinsic-ratio hint to the browser before image load, so no
 * regression in layout-shift prevention. !important is used because some
 * component rules (notably the articles list-view) have higher specificity.
 *
 * v53.7: expanded whitelist after a site-wide browser survey found 14
 * additional distorted images across 7 page classes (lesson scenario
 * images on course/resource pages, hero art on glossary pages, .pdf-image
 * download landings, /about/, /gift-membership/, /memberspace-setup/,
 * and the article index hero).
 */
.kua-lms-shell img,
.kua-lms-panel img,
.kua-lms-course-card img,
.kua-lms-photo img,
.kua-lms-hero img,
.kua-lms-hero-grid img,
.v38-card img,
.v38-feed-card img,
.v35-feed-card img,
.blog-card-37 img,
.blog-hero-37 img,
.blog-grid-37 img,
.lms-catalog-card img,
.video-thumb img,
.video-card img,
.photo-hero-card img,
.kua-continue-learning img,
.article-content-37 img,
.article-main-37 img,
.article-hero-img-37,
img.article-hero-img-37,
.lesson-scenario-image,
img.lesson-scenario-image,
.lesson-visual-lab img,
.lesson-visual-grid img,
.v14-hero-art,
img.v14-hero-art,
.v14-hero-grid img,
.founder-image img,
.gift-image img,
.setup-image img,
.pdf-image img {
  height: auto !important;
}


/* ── Bundle D: site search ─────────────────────────────────────────── */
.kua-search{position:relative;width:100%;max-width:640px;margin:0 auto 12px}
.kua-search-label{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.kua-search-input{
  width:100%;
  padding:14px 18px 14px 46px;
  font-size:1.05rem;
  border:1px solid #E8DDD0;
  border-radius:999px;
  background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235D6878' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><line x1='21' y1='21' x2='16.65' y2='16.65'/></svg>") no-repeat 16px center;
  background-size:18px 18px;
  color:#243B5A;
  font-weight:600;
  box-shadow:0 6px 18px rgba(60,47,40,.05);
  outline:none;
  transition:border-color .12s, box-shadow .12s;
  -webkit-appearance:none;
  appearance:none;
}
.kua-search-input::placeholder{color:#8A9AAE;font-weight:500}
.kua-search-input:focus{border-color:#243B5A;box-shadow:0 6px 22px rgba(36,59,90,.18)}
.kua-search-results{
  position:absolute;
  z-index:50;
  top:calc(100% + 8px);
  left:0;
  right:0;
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:22px;
  box-shadow:0 22px 60px rgba(60,47,40,.18);
  overflow:hidden;
  max-height:min(70vh,560px);
  overflow-y:auto;
}
.kua-search.is-open .kua-search-input{border-bottom-left-radius:18px;border-bottom-right-radius:18px}
.kua-search-result{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:14px;
  align-items:start;
  padding:14px 18px;
  border-bottom:1px solid #F4ECE2;
  text-decoration:none;
  color:inherit;
  transition:background-color .08s;
}
.kua-search-result:last-child{border-bottom:none}
.kua-search-result.is-active,
.kua-search-result:hover,
.kua-search-result:focus{background:#FFF8ED;outline:none}
.kua-search-type{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:5px 11px;
  border-radius:999px;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  border:1px solid transparent;
  min-width:74px;
  margin-top:2px;
}
.kua-search-type-course{background:#FFF3D8;color:#8A5A05;border-color:#F2D9A6}
.kua-search-type-article{background:#E7EFEA;color:#315E52;border-color:#C9DDD4}
.kua-search-type-resource{background:#EAF2FA;color:#243B5A;border-color:#C8DDF2}
.kua-search-type-video{background:#F2EAFB;color:#6B4B8A;border-color:#D5C5EA}
.kua-search-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.kua-search-title{color:#243B5A;font-weight:850;font-size:1.02rem;line-height:1.25}
.kua-search-summary{
  color:#5D6878;
  font-size:.92rem;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.kua-search-meta{color:#8A9AAE;font-size:.78rem;font-weight:700;margin-top:2px}
.kua-search-empty{padding:18px 20px;color:#5D6878}
.kua-search-empty strong{color:#243B5A;display:block;margin-bottom:6px;font-size:1.02rem}
.kua-search-empty p{margin:0;font-size:.93rem;line-height:1.5}
.kua-search-empty a{color:#243B5A;text-decoration:underline;font-weight:850}
@media(max-width:720px){
  .kua-search-input{padding:12px 16px 12px 42px;font-size:1rem;background-position:14px center}
  .kua-search-result{padding:12px 14px;gap:10px}
  .kua-search-type{min-width:66px;font-size:.7rem;padding:4px 9px}
}


/* ════════════════════════════════════════════════════════════════════
 * Bundle G: accessibility fixes (v53.8)
 * Applied based on findings from a11y_audit.py.
 * ════════════════════════════════════════════════════════════════════
 */

/* ── 1. Color contrast ────────────────────────────────────────────── */
/* Darken the slate-grey "Today / Delivery Notice" pill text on cream
 * mockup backgrounds. Was rgb(100,116,139)=4.24:1 — now rgb(80,90,110)=4.9:1 */
.v14-phone-top,
.v13-phone-top {
  color: #50667A !important;
}

/* Darken "Trouble signing in?" divider on login pages.
 * Was rgb(154,139,124)=3.3:1 — now rgb(95,82,68)=5.4:1 */
.kua-login-divider {
  color: #5F5244 !important;
}

/* ── 2. Tap target size (footer nav links) ────────────────────────── */
/* WCAG 2.5.5 AAA recommends 44x44 px. Footer links were 26 px tall —
 * now 44 px via vertical padding while keeping the same visual rhythm. */
.site-footer a {
  padding: 11px 0 !important;
  margin: 0 !important;
  line-height: 1.45 !important;
  min-height: 44px !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* ── 3. Footer headings: shrink h2 to look like the old h4 ─────────
 * We change footer column titles from <h4> to <h2> in HTML for heading
 * hierarchy (no more h2→h4 skip), but visually they should still be
 * small. This rule keeps the original look. */
.site-footer h2 {
  color: #fff !important;
  margin: 0 0 16px !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.3 !important;
}

/* ── 5. Visible focus indicators ──────────────────────────────────── */
/* Every interactive element gets a high-contrast focus ring when reached
 * via keyboard. :focus-visible avoids showing the ring on mouse clicks. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible,
[tabindex]:focus-visible {
  outline: 3px solid #EFAE3B !important;
  outline-offset: 2px !important;
  border-radius: 4px;
}
/* Dark sections get a lighter ring for visibility */
.site-footer a:focus-visible,
.v14-sidebar a:focus-visible,
.v13-side a:focus-visible,
.cta-block a:focus-visible {
  outline-color: #FFD56B !important;
}

/* ── 4. Skip-to-main-content link ─────────────────────────────────── */
/* Injected as the first element of <body> by kua-a11y.js.
 * Invisible until focused (positioned off-screen), then slides in. */
.kua-skip-link {
  position: absolute;
  top: -100px;
  left: 12px;
  z-index: 1000;
  background: #243B5A;
  color: #fff;
  padding: 12px 18px;
  border-radius: 8px;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 6px 24px rgba(0,0,0,.3);
  transition: top .15s ease-out;
}
.kua-skip-link:focus,
.kua-skip-link:focus-visible {
  top: 12px;
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}

/* ── 6. prefers-reduced-motion ────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ════════════════════════════════════════════════════════════════════
 * End Bundle G fixes
 * ════════════════════════════════════════════════════════════════════
 */


/* Bundle G phase-2: sidebar nav link tap targets (44x44) */
.v14-sidebar a,
.v13-side a,
.kua-lms-side a,
aside nav a,
nav.kua-side a,
.kua-aside-nav a,
.v38-side a,
.kua-aside a,
.v38-rail-link,
.sidebar-card-37 a,
.article-sidebar-37 a,
.v32-side a {
  display: block !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
  line-height: 1.45 !important;
}


/* Bundle G phase-3: remaining tap targets for sources links + filter chips */
.v14-sources a,
.v14-sources li {
  display: inline-block !important;
  padding: 11px 4px !important;
  min-height: 44px !important;
  line-height: 1.45 !important;
}
.v14-sources li {
  padding: 0 !important;
  display: list-item !important;
}
.v14-sources li a {
  display: inline-block !important;
}
.blog-chip-37,
.v14-chip,
.kua-lms-chip,
.v38-filter-chip,
.kua-filter-chip {
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  box-sizing: border-box !important;
}
.lesson-complete-button,
.btn-reset-progress,
button.kua-reset,
[data-kua-reset-progress] {
  min-height: 44px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
}


/* Bundle G phase-4: final tap-target sweep — filter chips, view toggles,
 * audience selectors, secondary CTAs. */
.kua-lms-filter,
.blog-view-btn,
.v32-pill-button,
.kua-pill-button,
.kua-secondary-link {
  min-height: 44px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
}
/* Card list links on dashboard feeds */
.v38-feed-card .v38-feed-link,
.v38-card a.v38-feed-link,
.kua-lms-related a {
  display: inline-block !important;
  padding: 11px 0 !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
  line-height: 1.45 !important;
}


/* Bundle G phase-5: header nav links, in-paragraph CTAs, mini-link CTAs */
.nav-links a {
  min-height: 44px !important;
  padding: 11px 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
}
.mini-link,
a.mini-link {
  min-height: 44px !important;
  padding-top: 11px !important;
  padding-bottom: 11px !important;
  display: inline-block !important;
  box-sizing: border-box !important;
  line-height: 1.45 !important;
}


/* ════════════════════════════════════════════════════════════════════
 * Bundle G+ Mobile fixes (v53.9)
 * 
 * PLACED LAST so this block wins the cascade. Earlier rules in the file
 * use !important to set min-width grid templates that overflow mobile
 * viewports — we override them here with later-source-order !important.
 * ════════════════════════════════════════════════════════════════════
 */

/* ── Universal mobile safety: no horizontal scroll ───────────────── */
@media (max-width: 760px) {
  html, body { overflow-x: hidden; max-width: 100vw; }

  /* Force every multi-column hero/grid to a single column on mobile,
   * defeating any earlier !important rules. */
  .v14-hero-grid,
  .v38-hero-grid,
  .v32-hero-grid,
  .kua-hero-grid,
  .hero-grid,
  .hero-grid-v17,
  .hero-grid-v18,
  .v13-hero-grid,
  .v14-grid,
  .v14-decision,
  .v14-card-grid,
  .v14-example-grid,
  .v14-resource-grid,
  .v14-stats,
  .v14-track,
  .v14-objectives,
  .v38-grid-3,
  .v32-grid-3,
  .v32-grid-2,
  .kua-grid-3,
  .kua-grid-2,
  .footer-grid,
  .blog-grid-37,
  .lms-grid-3 {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Photo cards: clamp to viewport, no min-width that exceeds it */
  .photo-hero-card,
  .single-page-photo,
  .v14-hero-art,
  .kua-lms-photo,
  .v38-hero-card,
  .article-hero-img-37,
  .kua-lms-hero img,
  .blog-hero-37 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    justify-self: start !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Block-level images shouldn't exceed parent */
  img {
    max-width: 100% !important;
    height: auto !important;
  }

  /* Containers: smaller side padding, no fixed widths */
  .container,
  .v14-container,
  .v32-container,
  .kua-container {
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Sections that had wide padding tighten up */
  .v14-hero,
  .v14-panel,
  .v32-hero,
  .v32-panel,
  .v38-panel,
  section[class*="hero"],
  section[class*="-hero"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Sidebars in 2-column layouts collapse to full width on top */
  .v14-sidebar,
  .v13-side,
  .v38-side,
  .kua-lms-side {
    margin-top: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
    position: static !important;
  }

  /* Member dashboard side rail collapses cleanly */
  .v38-shell,
  .kua-lms-shell {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  /* Headlines: clamp the largest sizes so they don't push viewport */
  h1, .v14-hero h1, .kua-header h2, .kua-header-v32 h2 {
    font-size: clamp(1.8rem, 7vw, 2.6rem) !important;
    line-height: 1.1 !important;
    word-break: break-word;
  }
  h2 { font-size: clamp(1.4rem, 5.5vw, 2rem) !important; line-height: 1.2 !important; }

  /* Tables wrap in a horizontal-scroll container (see HTML fix below).
   * If the container isn't there, force the table to be at least
   * scrollable inline. */
  .table-scroll-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-left: -18px;
    margin-right: -18px;
    padding-left: 18px;
    padding-right: 18px;
  }
  .table-scroll-wrap table {
    min-width: 480px;
  }

  /* Filter chip rows: more space between adjacent tappable items */
  .kua-lms-filter-toolbar,
  .v38-filter-toolbar,
  .blog-view-toggle,
  .v14-decision,
  .audience-toolbar,
  [role="toolbar"] {
    gap: 10px !important;
    flex-wrap: wrap !important;
  }

  /* Buttons: ensure they wrap text and fit, no min-width that overflows */
  .btn, .btn-primary, .btn-secondary, .btn-outline,
  button.btn, a.btn {
    max-width: 100% !important;
    white-space: normal !important;
    word-break: break-word;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  /* Side-by-side button rows wrap when needed */
  .button-row,
  .v14-actions,
  .lesson-nav-row,
  .button-stack,
  .cta-row {
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  /* Header nav links: horizontal row, wrap to 2 rows if needed.
   * Override any rule setting flex-direction:column on mobile. */
  .nav-links {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px 12px !important;
    width: 100% !important;
    flex: 1 1 100% !important;
    order: 3 !important;
    padding: 4px 0 6px !important;
  }
  .nav-links a {
    padding: 8px 12px !important;
    min-height: 40px !important;
    font-size: 0.95rem !important;
    white-space: nowrap !important;
  }
  /* Nav bar itself: brand left, actions right, links wrap below */
  .nav {
    flex-wrap: wrap !important;
    min-height: 0 !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    gap: 8px !important;
  }
  .nav-actions {
    order: 2 !important;
  }
  .brand, .brand-logo, .brand-name {
    order: 1 !important;
  }

  /* Search box on dashboard fits the viewport */
  .kua-search {
    max-width: 100% !important;
  }

  /* Footer columns stack cleanly */
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }
  .footer-bottom {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  /* Padding on cards — less on mobile so content fits */
  .v14-panel, .v13-card, .v38-panel, .v38-card, .v32-card,
  .card, .price-card, .resource-card, .lesson-card,
  .v14-example-card, .v14-info-card, .v14-resource-card,
  .v14-worksheet, .lms-catalog-card, .blog-card-37,
  .article-content-37, .article-main-37, .sidebar-card-37,
  .kua-lms-course-card, .kua-lms-panel {
    padding: 20px !important;
  }

  /* Lesson side-by-side image+text becomes stacked */
  .lesson-visual-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
}

/* Extra-narrow phones (under 380px) — even tighter */
@media (max-width: 380px) {
  .container, .v14-container, .v32-container, .kua-container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  h1, .v14-hero h1 {
    font-size: clamp(1.7rem, 7vw, 2.3rem) !important;
  }
}
/* ════════════════════════════════════════════════════════════════════
 * End Bundle G+ Mobile fixes
 * ════════════════════════════════════════════════════════════════════
 */


/* ════════════════════════════════════════════════════════════════════
 * Bundle F: certificates (v53.10)
 * Dashboard cert grid + small print-friendly tweaks.
 * ════════════════════════════════════════════════════════════════════
 */
.kua-cert-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  margin-top: 14px;
}
.kua-cert-card {
  position: relative;
  background: linear-gradient(135deg, #FFF8ED, #FFF3D8);
  border: 1px solid #F2D9A6;
  border-radius: 22px;
  padding: 22px 22px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 200px;
  box-shadow: 0 12px 28px rgba(60,47,40,.07);
  transition: transform .12s, box-shadow .12s;
}
.kua-cert-card-earned:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 38px rgba(60,47,40,.12);
}
.kua-cert-card-locked {
  background: #F9F5EE;
  border: 1px dashed #D8C8B5;
  box-shadow: none;
  opacity: 0.88;
}
.kua-cert-card-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 11px;
  border-radius: 999px;
  background: #243B5A;
  color: #fff;
  font-weight: 900;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  align-self: flex-start;
}
.kua-cert-card-badge-locked {
  background: #5D6878;
  color: #fff;
}
.kua-cert-card-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: auto;
}
.kua-cert-card-body h3 {
  margin: 0;
  color: #243B5A;
  font-size: 1.12rem;
  line-height: 1.25;
  font-weight: 900;
}
.kua-cert-card-date {
  margin: 0;
  color: #5D6878;
  font-size: 0.92rem;
  line-height: 1.4;
}
.kua-cert-card-btn {
  align-self: flex-start;
  margin-top: 6px;
  min-height: 44px;
}
.kua-cert-card-earned::before {
  content: "★";
  position: absolute;
  top: 16px;
  right: 18px;
  color: #EFAE3B;
  font-size: 1.6rem;
  line-height: 1;
}

/* Bundle F: course-overview cert CTA */
.kua-cert-cta {
  margin-top: 14px;
}
.kua-cert-cta-btn {
  background: linear-gradient(135deg, #EFAE3B, #F5C657) !important;
  border-color: #EFAE3B !important;
  color: #2B2100 !important;
  font-weight: 900 !important;
  box-shadow: 0 12px 26px rgba(239,174,59,.22) !important;
}
.kua-cert-cta-btn:hover {
  background: linear-gradient(135deg, #E29D2F, #EFB94B) !important;
}

/* ════════════════════════════════════════════════════════════════════
 * Bundle H: Family Helper Mode + Pairing (v53.14)
 * Helper-mode indicator banner + Helper settings panel
 * ════════════════════════════════════════════════════════════════════
 */
.kua-helper-banner {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 14px 0 0;
  padding: 8px 14px;
  background: #FFF3D8;
  color: #8A5A05;
  border: 1px solid #F2D9A6;
  border-radius: 999px;
  font-weight: 900;
  font-size: 0.92rem;
  letter-spacing: 0.01em;
}
.kua-helper-banner::before {
  content: "♥";
  color: #B23A48;
  font-size: 1rem;
  line-height: 1;
}

.kua-helper-mode-toggle {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 4px 0 22px;
}
.kua-helper-mode-btn {
  background: #FFFDF9;
  border: 1px solid #E8DDD0;
  border-radius: 999px;
  padding: 11px 18px;
  color: #243B5A;
  font-weight: 850;
  cursor: pointer;
  font-size: 0.98rem;
  font-family: inherit;
}
.kua-helper-mode-btn[aria-pressed="true"] {
  background: #243B5A;
  border-color: #243B5A;
  color: #fff;
}

.kua-helper-section { margin-top: 12px; }
.kua-helper-section h3 {
  color: #243B5A;
  margin: 0 0 10px;
  font-size: 1.22rem;
  letter-spacing: -0.02em;
}

.kua-helper-claim-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: linear-gradient(135deg, #FFF8ED, #FFF3D8);
  border: 1px solid #F2D9A6;
  border-radius: 20px;
  padding: 16px 20px;
}
.kua-helper-claim-info strong {
  display: block;
  color: #243B5A;
  font-size: 1.08rem;
}
.kua-helper-claim-email {
  color: #5D6878;
  font-size: 0.9rem;
  margin-top: 2px;
}

.kua-helper-list {
  list-style: none;
  margin: 0 0 16px;
  padding: 0;
  display: grid;
  gap: 10px;
}
.kua-helper-list-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: #FFFDF9;
  border: 1px solid #E8DDD0;
  border-radius: 18px;
  padding: 14px 18px;
}
.kua-helper-list-item strong {
  color: #243B5A;
  font-size: 1.04rem;
}

.kua-helper-form {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  padding: 18px;
  background: #FFFDF9;
  border: 1px dashed #D8CBBB;
  border-radius: 20px;
}
.kua-helper-label {
  font-weight: 850;
  color: #243B5A;
  font-size: 0.92rem;
  margin-top: 6px;
}
.kua-helper-form input[type="text"],
.kua-helper-form input[type="email"] {
  border: 1px solid #E8DDD0;
  border-radius: 14px;
  padding: 11px 14px;
  font-size: 1rem;
  background: #fff;
  color: #243B5A;
  font-family: inherit;
}
.kua-helper-form input:focus {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
  border-color: #243B5A;
}
.kua-helper-form .kua-helper-action {
  margin-top: 10px;
  justify-self: start;
}

.kua-helper-explainer {
  color: #5D6878;
  line-height: 1.55;
  font-size: 0.98rem;
  margin: 0 0 14px;
}

.kua-helper-error {
  color: #B23A48;
  background: #FCEBED;
  border: 1px solid #F2C9CF;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 0.93rem;
  font-weight: 700;
  margin-top: 8px;
}

@media (max-width: 720px) {
  .kua-helper-claim-card,
  .kua-helper-list-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .kua-helper-mode-toggle { width: 100%; }
  .kua-helper-mode-btn { flex: 1 1 auto; text-align: center; }
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle I (v53.16) — Engagement: tour, practice scenarios, PWA install
   ═══════════════════════════════════════════════════════════════════ */

/* ─── First-time tour (kua-tour.js) ─────────────────────────────── */
.kua-tour-overlay {
  position: fixed;
  inset: 0;
  background: rgba(36, 59, 90, 0.55);
  z-index: 9998;
  animation: kua-tour-fade-in 200ms ease-out;
}
@keyframes kua-tour-fade-in { from { opacity: 0; } to { opacity: 1; } }

.kua-tour-highlighted {
  position: relative;
  z-index: 9999;
  box-shadow: 0 0 0 4px #EFAE3B, 0 0 0 8px rgba(239, 174, 59, 0.4),
              0 8px 32px rgba(0, 0, 0, 0.25);
  border-radius: 8px;
  background: #FFFCF7;
}

.kua-tour-popover {
  z-index: 10000;
  max-width: 360px;
  width: calc(100vw - 32px);
  background: #FFFCF7;
  border-radius: 12px;
  padding: 24px;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.25), 0 2px 8px rgba(0, 0, 0, 0.1);
  font-family: inherit;
  color: #243B5A;
  animation: kua-tour-pop-in 220ms ease-out;
}
@keyframes kua-tour-pop-in {
  from { opacity: 0; transform: translateY(8px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.kua-tour-counter {
  font-size: 0.85rem;
  color: #6b7c93;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.kua-tour-title {
  font-size: 1.35rem;
  font-weight: 700;
  margin: 0 0 12px;
  color: #243B5A;
  line-height: 1.25;
}
.kua-tour-body {
  font-size: 1.05rem;
  line-height: 1.55;
  margin: 0 0 20px;
  color: #243B5A;
}
.kua-tour-buttons {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.kua-tour-btn {
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  padding: 12px 20px;
  border-radius: 8px;
  border: 2px solid transparent;
  cursor: pointer;
  min-height: 48px;
  transition: background 150ms, border-color 150ms;
}
.kua-tour-btn:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-tour-skip {
  background: transparent;
  color: #6b7c93;
  margin-right: auto;
}
.kua-tour-skip:hover { color: #243B5A; text-decoration: underline; }
.kua-tour-back {
  background: transparent;
  color: #243B5A;
  border-color: #243B5A;
}
.kua-tour-back:hover { background: rgba(36, 59, 90, 0.08); }
.kua-tour-next {
  background: #243B5A;
  color: #FFFCF7;
  border-color: #243B5A;
}
.kua-tour-next:hover { background: #1a2c44; }

/* ─── Practice scenarios (kua-practice.js) ─────────────────────── */
.kua-practice-card {
  background: #FFFCF7;
  border: 2px solid rgba(36, 59, 90, 0.12);
  border-radius: 12px;
  padding: 24px;
  max-width: 680px;
}
.kua-practice-course-tag {
  display: inline-block;
  font-size: 0.85rem;
  font-weight: 600;
  color: #6b7c93;
  background: rgba(36, 59, 90, 0.06);
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 12px;
  letter-spacing: 0.03em;
}
.kua-practice-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #243B5A;
  margin: 0 0 12px;
  line-height: 1.3;
}
.kua-practice-prompt {
  font-size: 1.05rem;
  color: #243B5A;
  margin: 0 0 16px;
  line-height: 1.5;
}
.kua-practice-preview {
  background: #f5efe5;
  border-left: 4px solid #EFAE3B;
  padding: 16px 18px;
  margin: 16px 0;
  border-radius: 8px;
  font-size: 1rem;
  line-height: 1.55;
  color: #243B5A;
}
.kua-practice-preview-from,
.kua-practice-preview-subject {
  font-size: 0.95rem;
  color: #6b7c93;
  margin-bottom: 6px;
}
.kua-practice-preview-from strong,
.kua-practice-preview-subject strong { color: #243B5A; }
.kua-practice-preview-body {
  margin-top: 12px;
  font-family: 'Georgia', 'Times New Roman', serif;
  font-size: 1.05rem;
}
.kua-practice-preview-text-message {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.kua-practice-question {
  font-size: 1.15rem;
  font-weight: 600;
  margin: 20px 0 16px;
  color: #243B5A;
}
.kua-practice-choices {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.kua-practice-choice {
  font-family: inherit;
  font-size: 1.1rem;
  font-weight: 600;
  padding: 18px 20px;
  border-radius: 10px;
  background: #FFFCF7;
  border: 2px solid #243B5A;
  color: #243B5A;
  cursor: pointer;
  text-align: left;
  min-height: 56px;
  transition: background 150ms, transform 150ms;
}
.kua-practice-choice:hover:not(:disabled) {
  background: rgba(36, 59, 90, 0.06);
}
.kua-practice-choice:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-practice-choice:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}
.kua-practice-choice.kua-practice-correct {
  background: #2d7a4f;
  color: #FFFCF7;
  border-color: #2d7a4f;
  opacity: 1;
}
.kua-practice-choice.kua-practice-incorrect {
  background: #b85450;
  color: #FFFCF7;
  border-color: #b85450;
  opacity: 1;
}
.kua-practice-feedback {
  margin-top: 20px;
  padding: 18px 20px;
  border-radius: 10px;
  font-size: 1.05rem;
  line-height: 1.55;
}
.kua-practice-feedback:empty { display: none; }
.kua-practice-feedback-correct {
  background: rgba(45, 122, 79, 0.1);
  border-left: 4px solid #2d7a4f;
  color: #1a4a30;
}
.kua-practice-feedback-incorrect {
  background: rgba(184, 84, 80, 0.1);
  border-left: 4px solid #b85450;
  color: #6e2d2b;
}
.kua-practice-feedback-heading {
  display: block;
  font-size: 1.15rem;
  margin-bottom: 8px;
}
.kua-practice-feedback p {
  margin: 0 0 10px;
}
.kua-practice-lesson-ref {
  font-size: 0.95rem;
  font-style: italic;
  opacity: 0.85;
}
.kua-practice-actions {
  display: flex;
  gap: 10px;
  margin-top: 16px;
  flex-wrap: wrap;
}
.kua-practice-action {
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  padding: 12px 20px;
  border-radius: 8px;
  cursor: pointer;
  min-height: 48px;
  border: 2px solid transparent;
}
.kua-practice-action:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-practice-retry {
  background: #FFFCF7;
  border-color: #243B5A;
  color: #243B5A;
}
.kua-practice-retry:hover { background: rgba(36, 59, 90, 0.08); }
.kua-practice-next {
  background: #243B5A;
  color: #FFFCF7;
}
.kua-practice-next:hover { background: #1a2c44; }
.kua-practice-loading,
.kua-practice-empty,
.kua-practice-error {
  padding: 24px;
  text-align: center;
  font-size: 1.05rem;
  color: #6b7c93;
}

/* ─── PWA install button (kua-pwa.js) ───────────────────────────── */
.kua-pwa-install-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  padding: 12px 20px;
  margin-top: 16px;
  border-radius: 8px;
  background: #EFAE3B;
  color: #243B5A;
  border: 2px solid #EFAE3B;
  cursor: pointer;
  min-height: 48px;
}
.kua-pwa-install-btn:hover {
  background: #e09b1f;
  border-color: #e09b1f;
}
.kua-pwa-install-btn:focus-visible {
  outline: 3px solid #243B5A;
  outline-offset: 2px;
}

/* Mobile adjustments for tour + practice */
@media (max-width: 640px) {
  .kua-tour-popover { padding: 20px; }
  .kua-tour-title { font-size: 1.2rem; }
  .kua-tour-body { font-size: 1rem; }
  .kua-practice-card { padding: 18px; }
  .kua-practice-title { font-size: 1.2rem; }
  .kua-practice-choice { font-size: 1rem; padding: 16px; }
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle J (v53.17) — Dashboard restructure: profile menu, landing,
   helper callout
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Profile menu trigger (top-right icon) ─────────────────────── */
.kua-profile-wrap {
  position: relative;
  display: inline-block;
}
.kua-profile-trigger {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: 2px solid transparent;
  border-radius: 999px;
  padding: 4px 12px 4px 4px;
  cursor: pointer;
  min-height: 44px;
  font-family: inherit;
  color: #243B5A;
  transition: background 150ms, border-color 150ms;
}
.kua-profile-trigger:hover {
  background: rgba(36, 59, 90, 0.08);
}
.kua-profile-trigger:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-profile-trigger[aria-expanded="true"] {
  background: rgba(36, 59, 90, 0.08);
  border-color: rgba(36, 59, 90, 0.2);
}
.kua-profile-avatar,
.kua-profile-initials,
.kua-profile-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #EFAE3B;
  color: #243B5A;
  font-weight: 700;
  font-size: 0.95rem;
}
.kua-profile-avatar { background: #FFFCF7; padding: 0; overflow: hidden; }
.kua-profile-avatar img { width: 100%; height: 100%; object-fit: cover; }
.kua-profile-icon { font-size: 1.2rem; }
.kua-profile-chevron {
  font-size: 0.7rem;
  color: #6b7c93;
}

/* ─── Profile dropdown menu ─────────────────────────────────────── */
.kua-profile-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 240px;
  background: #FFFCF7;
  border: 1px solid #E8DDD0;
  border-radius: 12px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15);
  padding: 8px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.kua-profile-menu[hidden] {
  display: none;
}
.kua-profile-menu-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  color: #243B5A;
  background: transparent;
  border: 2px solid transparent;
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  min-height: 48px;
  text-align: left;
  width: 100%;
}
.kua-profile-menu-item:hover,
.kua-profile-menu-item:focus-visible {
  background: rgba(36, 59, 90, 0.08);
  outline: none;
}
.kua-profile-menu-item:focus-visible {
  border-color: #EFAE3B;
}
.kua-profile-menu-logout {
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid #E8DDD0;
  border-radius: 8px;
  color: #b85450;
}
.kua-profile-menu-badge {
  font-size: 0.75rem;
  font-weight: 700;
  background: #EFAE3B;
  color: #243B5A;
  padding: 3px 8px;
  border-radius: 999px;
  letter-spacing: 0.04em;
}

/* ─── Landing page layout ───────────────────────────────────────── */
.kua-landing {
  background: #FFFCF7;
  padding: 0 0 80px;
}
.kua-landing-cl {
  max-width: 1180px;
  margin: 32px auto 24px;
  padding: 0 24px;
}
.kua-landing-section {
  max-width: 1180px;
  margin: 48px auto 0;
  padding: 0 24px;
}
.kua-landing-section-head {
  margin-bottom: 24px;
}
.kua-landing-section-head h2 {
  color: #243B5A;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  letter-spacing: -0.03em;
  margin: 0 0 10px;
  line-height: 1.15;
}
.kua-landing-section-head p {
  color: #5D6878;
  font-size: 1.05rem;
  line-height: 1.65;
  margin: 0;
  max-width: 680px;
}
.kua-landing-browse {
  margin-top: 64px;
}
.kua-landing-browse-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(28px, 4vw, 48px);
  background: linear-gradient(135deg, #FFF8ED 0%, #FFFCF7 60%, #EAF2FA 100%);
  border: 1px solid #E8DDD0;
  border-radius: 24px;
  flex-wrap: wrap;
}
.kua-landing-browse-card h2 {
  color: #243B5A;
  margin: 0 0 8px;
  font-size: clamp(1.5rem, 3vw, 2.2rem);
}
.kua-landing-browse-card p {
  color: #5D6878;
  margin: 0;
}
.btn-large {
  font-size: 1.15rem;
  padding: 16px 28px;
  min-height: 56px;
}

/* Continue Learning card style (existing — just ensure landing context works) */
.kua-landing .kua-continue-learning {
  /* inherits from existing kua-continue-learning rules */
}

/* ─── Helper-mode callout banner ────────────────────────────────── */
.kua-helper-callout-host {
  max-width: 1180px;
  margin: 0 auto 24px;
  padding: 0 24px;
}
.kua-helper-callout {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 20px;
  padding: 20px 24px;
  background: #FFF8ED;
  border: 2px solid #F2D9A6;
  border-radius: 16px;
}
.kua-helper-callout-icon {
  font-size: 2rem;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #EFAE3B;
  border-radius: 50%;
}
.kua-helper-callout-body h3 {
  color: #243B5A;
  font-size: 1.2rem;
  margin: 0 0 6px;
  line-height: 1.25;
}
.kua-helper-callout-body p {
  color: #5D6878;
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
}
.kua-helper-callout-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 720px) {
  .kua-helper-callout {
    grid-template-columns: auto 1fr;
  }
  .kua-helper-callout-actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }
  .kua-helper-callout-actions .btn { flex: 1 1 0; }
}

/* ─── Browse sidebar menu groups ────────────────────────────────── */
.v38-menu-group {
  display: flex;
  flex-direction: column;
  margin-bottom: 16px;
}
.v38-menu-group-label {
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #6b7c93;
  padding: 8px 12px 4px;
}
.v38-menu-group a {
  color: #243B5A;
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle K (v53.17) — Scam alerts card styles
   ═══════════════════════════════════════════════════════════════════ */

.kua-alerts-widget {
  display: grid;
  gap: 16px;
}
.kua-alerts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 16px;
}
.kua-alert-card {
  display: block;
  position: relative;
  padding: 20px 24px;
  background: #FFFCF7;
  border: 1px solid #E8DDD0;
  border-radius: 14px;
  text-decoration: none;
  color: #243B5A;
  overflow: hidden;
  transition: border-color 150ms, box-shadow 150ms, transform 150ms;
}
.kua-alert-card:hover {
  border-color: #243B5A;
  box-shadow: 0 8px 24px rgba(36, 59, 90, 0.08);
  transform: translateY(-1px);
}
.kua-alert-card:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 3px;
}
.kua-alert-stripe {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background: #6b7c93;
}
.kua-alert-card-high .kua-alert-stripe { background: #b85450; }
.kua-alert-card-medium .kua-alert-stripe { background: #EFAE3B; }
.kua-alert-card-low .kua-alert-stripe { background: #2d7a4f; }

.kua-alert-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 0.85rem;
  color: #6b7c93;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.kua-alert-date {
  font-weight: 600;
}
.kua-alert-source {
  background: rgba(36, 59, 90, 0.08);
  padding: 2px 10px;
  border-radius: 999px;
  font-weight: 600;
}
.kua-alert-title {
  color: #243B5A;
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0 0 8px;
  line-height: 1.3;
}
.kua-alert-summary {
  color: #5D6878;
  font-size: 1rem;
  line-height: 1.55;
  margin: 0 0 12px;
}
.kua-alert-cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #243B5A;
  font-weight: 600;
  font-size: 0.95rem;
}

.kua-alerts-month-section {
  margin-bottom: 48px;
}
.kua-alerts-month-heading {
  color: #243B5A;
  font-size: 1.4rem;
  margin: 0 0 16px;
  padding-bottom: 8px;
  border-bottom: 2px solid #E8DDD0;
}
.kua-alerts-see-all {
  display: inline-block;
  margin-top: 8px;
  color: #243B5A;
  font-weight: 600;
  text-decoration: none;
}
.kua-alerts-see-all:hover { text-decoration: underline; }
.kua-alerts-empty {
  text-align: center;
  padding: 32px;
  color: #6b7c93;
  font-size: 1rem;
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle L (v53.18) — Changelog + a11y/mobile cleanup
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Changelog page ─────────────────────────────────────────────── */
.kua-whats-new-shell {
  max-width: 780px;
}
.kua-changelog-header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 20px;
  background: rgba(239, 174, 59, 0.12);
  border: 1px solid rgba(239, 174, 59, 0.4);
  border-radius: 12px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.kua-changelog-unread-summary {
  color: #243B5A;
  font-weight: 600;
  margin: 0;
  font-size: 1rem;
}
.kua-changelog-mark-read-btn {
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 600;
  padding: 10px 18px;
  border-radius: 8px;
  background: #243B5A;
  color: #FFFCF7;
  border: 2px solid #243B5A;
  cursor: pointer;
  min-height: 44px;
}
.kua-changelog-mark-read-btn:hover {
  background: #1a2c44;
  border-color: #1a2c44;
}
.kua-changelog-mark-read-btn:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}

.kua-changelog-entry {
  background: #FFFCF7;
  border: 1px solid #E8DDD0;
  border-radius: 16px;
  padding: 24px 28px;
  margin-bottom: 20px;
  position: relative;
}
.kua-changelog-entry-unread {
  border-color: #243B5A;
  box-shadow: 0 4px 16px rgba(36, 59, 90, 0.08);
}
.kua-changelog-entry-feature { border-left: 5px solid #2d7a4f; }
.kua-changelog-entry-improvement { border-left: 5px solid #EFAE3B; }
.kua-changelog-entry-fix { border-left: 5px solid #6b7c93; }

.kua-changelog-entry-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.kua-changelog-entry-date {
  color: #6b7c93;
  font-size: 0.9rem;
  font-weight: 600;
}
.kua-changelog-entry-category {
  background: rgba(36, 59, 90, 0.08);
  color: #243B5A;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.kua-changelog-entry-feature .kua-changelog-entry-category {
  background: rgba(45, 122, 79, 0.12); color: #1a4a30;
}
.kua-changelog-entry-improvement .kua-changelog-entry-category {
  background: rgba(239, 174, 59, 0.18); color: #8a5a05;
}
.kua-changelog-entry-new-pill {
  background: #EFAE3B;
  color: #243B5A;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.05em;
}
.kua-changelog-entry-headline {
  color: #243B5A;
  font-size: 1.4rem;
  font-weight: 700;
  margin: 0 0 10px;
  line-height: 1.25;
}
.kua-changelog-entry-summary {
  color: #5D6878;
  font-size: 1.05rem;
  line-height: 1.6;
  margin: 0 0 16px;
}
.kua-changelog-entry-highlights {
  margin: 0;
  padding-left: 22px;
  color: #243B5A;
  font-size: 1rem;
  line-height: 1.7;
}
.kua-changelog-entry-highlights li {
  margin-bottom: 6px;
}
.kua-changelog-empty {
  text-align: center;
  padding: 48px;
  color: #6b7c93;
  font-size: 1.05rem;
}

/* ─── Profile trigger unread-indicator dot ──────────────────────── */
.kua-profile-trigger[data-has-unread] {
  position: relative;
}
.kua-profile-trigger[data-has-unread]::after {
  content: "";
  position: absolute;
  top: 2px;
  right: 8px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #b85450;
  border: 2px solid #FFFCF7;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05);
  pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle L — A11y + mobile cleanup utilities
   ═══════════════════════════════════════════════════════════════════ */

/* Minimum tap target — apply via class on links and buttons that need it */
.kua-min-tap-target {
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Visually-hidden but screen-reader-readable. Use for icon-only buttons. */
.kua-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Universal focus ring — applied to elements that suppress the default
   browser focus indicator. Pairs with :focus-visible to only show on
   keyboard focus, not mouse click. */
.kua-focus-ring:focus-visible,
.btn:focus-visible,
.nav-links a:focus-visible,
.brand:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
  border-radius: 4px;
}

/* Table mobile overflow — wrap tables in <div class="kua-table-scroll">
   for horizontal scroll affordance on small screens */
.kua-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 16px 0;
  border: 1px solid #E8DDD0;
  border-radius: 8px;
}
.kua-table-scroll table {
  min-width: 100%;
  margin: 0;
  border: 0;
}
.kua-table-scroll::after {
  /* Subtle right-edge gradient hints there's more to scroll */
  content: "";
  position: sticky;
  top: 0; right: 0;
  width: 30px; height: 100%;
  background: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.05));
  pointer-events: none;
}

/* High-contrast text utility — bumps gray text to meet WCAG AA */
.kua-text-high-contrast {
  color: #243B5A !important;
}

/* Boost minimum interactive element sizes globally (mobile-friendly) */
@media (max-width: 720px) {
  .btn, button:not(.btn-link), a.btn, a.button,
  .nav-links a, .v38-menu a, .v38-menu-group a,
  .kua-profile-menu-item, .kua-alert-card,
  .kua-practice-choice, .kua-tour-btn {
    min-height: 48px;
  }
  /* Compensate for short labels in primary nav by adding padding */
  .nav-links a { padding-top: 12px; padding-bottom: 12px; }
}


/* ═══════════════════════════════════════════════════════════════════
   Bundle M (v53.19) — LMS + page-specific rules moved from inline
   <style> blocks. Migrated from per-page duplication to one shared
   stylesheet for cache efficiency. See Bundle M release notes.
   ═══════════════════════════════════════════════════════════════════ */

/* From: largest LMS rule set (was inlined on 73 pages) */

    48 LMS Course Library + Rise Course Integration */
.kua-lms-shell{background:#FFFCF7;padding:clamp(44px,6vw,90px) 0}.kua-lms-hero{background:linear-gradient(135deg,#FFF8ED 0%,#FFFCF7 52%,#EAF2FA 100%);border-bottom:1px solid #E8DDD0;padding:clamp(48px,7vw,100px) 0}.kua-lms-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:clamp(30px,5vw,70px);align-items:center}.kua-lms-kicker{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:9px 14px;font-weight:900;margin-bottom:18px}.kua-lms-hero h1,.kua-lms-panel h1{color:#243B5A;font-size:clamp(2.7rem,5.7vw,5.5rem);line-height:.98;letter-spacing:-.06em;margin:0 0 20px;max-width:900px}.kua-lms-hero p,.kua-lms-panel p{color:#5D6878;font-size:1.12rem;line-height:1.75;margin:0;max-width:760px}.kua-lms-photo{background:#fff;border:1px solid #E8DDD0;border-radius:34px;overflow:hidden;box-shadow:0 22px 58px rgba(60,47,40,.14)}.kua-lms-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block}.kua-lms-actions,.kua-lms-card-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}.kua-lms-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.kua-lms-pill{display:inline-flex;align-items:center;border:1px solid #F2D9A6;background:#FFF3D8;color:#8A5A05;border-radius:999px;padding:8px 12px;font-weight:850}.kua-lms-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:24px;align-items:stretch}.kua-lms-panel{background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(26px,4vw,52px);box-shadow:0 18px 46px rgba(60,47,40,.09)}.kua-lms-course-card{background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:18px;box-shadow:0 16px 38px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:16px}.kua-lms-course-card.featured{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:26px;align-items:center;padding:clamp(22px,3.5vw,38px)}.kua-lms-course-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;border:1px solid #E8DDD0;display:block}.kua-lms-course-card h2,.kua-lms-course-card h3{color:#243B5A;margin:0 0 10px;letter-spacing:-.035em}.kua-lms-course-card h2{font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.04}.kua-lms-course-card h3{font-size:1.55rem;line-height:1.08}.kua-lms-course-card p{color:#5D6878;line-height:1.65;margin:0}.kua-lms-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}.kua-lms-outline{display:grid;gap:16px;margin-top:26px}.kua-lms-lesson{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px;border:1px solid #E8DDD0;border-radius:24px;background:#FFFDF9}.kua-lms-number{width:42px;height:42px;border-radius:999px;background:#243B5A;color:#fff;display:grid;place-items:center;font-weight:900}.kua-lms-start-shell{background:#FFFCF7;min-height:100vh}.kua-lms-start-bar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #E8DDD0;box-shadow:0 8px 24px rgba(60,47,40,.06)}.kua-lms-start-bar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}.kua-lms-iframe-wrap{height:calc(100vh - 84px);min-height:720px}.kua-lms-iframe-wrap iframe{width:100%;height:100%;display:block;border:0;background:#fff}.kua-lms-empty-card{background:#FFFDF9;border:1px dashed #D8CBBB;border-radius:28px;padding:24px}@media(max-width:1050px){.kua-lms-hero-grid,.kua-lms-dashboard-grid,.kua-lms-course-card.featured{grid-template-columns:1fr}.kua-lms-course-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.kua-lms-course-grid{grid-template-columns:1fr}.kua-lms-start-bar .container{align-items:flex-start;flex-direction:column}}


/* V51 LMS Multi-Course Integration */
.kua-lms-shell{background:#FFFCF7;padding:clamp(44px,6vw,90px) 0;}
.kua-lms-hero{background:linear-gradient(135deg,#FFF8ED 0%,#FFFCF7 52%,#EAF2FA 100%);border-bottom:1px solid #E8DDD0;padding:clamp(48px,7vw,100px) 0;}
.kua-lms-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:clamp(30px,5vw,70px);align-items:center;}
.kua-lms-kicker{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:9px 14px;font-weight:900;margin-bottom:18px;}
.kua-lms-hero h1,.kua-lms-panel h1{color:#243B5A;font-size:clamp(2.65rem,5.7vw,5.5rem);line-height:.98;letter-spacing:-.06em;margin:0 0 20px;max-width:940px;}
.kua-lms-hero p,.kua-lms-panel p{color:#5D6878;font-size:1.12rem;line-height:1.75;margin:0;max-width:790px;}
.kua-lms-photo{background:#fff;border:1px solid #E8DDD0;border-radius:34px;overflow:hidden;box-shadow:0 22px 58px rgba(60,47,40,.14);}
.kua-lms-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.kua-lms-panel{background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(26px,4vw,52px);box-shadow:0 18px 46px rgba(60,47,40,.09);}
.kua-lms-course-card{background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:18px;box-shadow:0 16px 38px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:16px;}
.kua-lms-course-card.featured{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:26px;align-items:center;padding:clamp(22px,3.5vw,38px);}
.kua-lms-course-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;border:1px solid #E8DDD0;display:block;background:#FFF8ED;}
.kua-lms-course-card h2,.kua-lms-course-card h3{color:#243B5A;margin:0 0 10px;letter-spacing:-.035em;}
.kua-lms-course-card h2{font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.04;}
.kua-lms-course-card h3{font-size:1.55rem;line-height:1.08;}
.kua-lms-course-card p{color:#5D6878;line-height:1.65;margin:0;}
.kua-lms-meta,.kua-lms-card-actions,.kua-lms-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}
.kua-lms-pill{display:inline-flex;align-items:center;border:1px solid #F2D9A6;background:#FFF3D8;color:#8A5A05;border-radius:999px;padding:8px 12px;font-weight:850;}
.kua-lms-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px;}
.kua-lms-outline{display:grid;gap:16px;margin-top:26px;}
.kua-lms-lesson{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px;border:1px solid #E8DDD0;border-radius:24px;background:#FFFDF9;}
.kua-lms-number{width:42px;height:42px;border-radius:999px;background:#243B5A;color:#fff;display:grid;place-items:center;font-weight:900;}
.kua-lms-start-shell{background:#FFFCF7;min-height:100vh;}
.kua-lms-start-bar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #E8DDD0;box-shadow:0 8px 24px rgba(60,47,40,.06);}
.kua-lms-start-bar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px;}
.kua-lms-iframe-wrap{height:calc(100vh - 84px);min-height:720px;}
.kua-lms-iframe-wrap iframe{width:100%;height:100%;display:block;border:0;background:#fff;}
.kua-lms-path{display:grid;gap:14px;margin-top:24px;}
.kua-lms-path a{display:flex;justify-content:space-between;gap:16px;padding:16px 18px;border:1px solid #E8DDD0;border-radius:20px;background:#FFFDF9;text-decoration:none;color:#243B5A;font-weight:900;}
@media(max-width:1050px){.kua-lms-hero-grid,.kua-lms-course-card.featured{grid-template-columns:1fr}.kua-lms-course-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.kua-lms-course-grid{grid-template-columns:1fr}.kua-lms-start-bar .container{align-items:flex-start;flex-direction:column}}


/* V53 Data-Driven LMS System */
.kua-lms-shell{background:#FFFCF7;padding:clamp(44px,6vw,90px) 0;}
.kua-lms-hero{background:linear-gradient(135deg,#FFF8ED 0%,#FFFCF7 52%,#EAF2FA 100%);border-bottom:1px solid #E8DDD0;padding:clamp(48px,7vw,100px) 0;}
.kua-lms-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:clamp(30px,5vw,70px);align-items:center;}
.kua-lms-kicker{display:inline-flex;align-items:center;background:#E7EFEA;color:#315E52;border:1px solid #C9DDD4;border-radius:999px;padding:9px 14px;font-weight:900;margin-bottom:18px;}
.kua-lms-hero h1,.kua-lms-panel h1{color:#243B5A;font-size:clamp(2.65rem,5.7vw,5.5rem);line-height:.98;letter-spacing:-.06em;margin:0 0 20px;max-width:940px;}
.kua-lms-hero p,.kua-lms-panel p{color:#5D6878;font-size:1.12rem;line-height:1.75;margin:0;max-width:790px;}
.kua-lms-photo{background:#fff;border:1px solid #E8DDD0;border-radius:34px;overflow:hidden;box-shadow:0 22px 58px rgba(60,47,40,.14);}
.kua-lms-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.kua-lms-panel{background:#fff;border:1px solid #E8DDD0;border-radius:34px;padding:clamp(26px,4vw,52px);box-shadow:0 18px 46px rgba(60,47,40,.09);}
.kua-lms-toolbar{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 8px;}
.kua-lms-filter{border:1px solid #E8DDD0;background:#fff;border-radius:999px;padding:10px 14px;font-weight:900;color:#243B5A;cursor:pointer;}
.kua-lms-filter[aria-pressed="true"]{background:#243B5A;color:#fff;border-color:#243B5A;}
.kua-lms-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px;}
.kua-lms-course-card{background:#fff;border:1px solid #E8DDD0;border-radius:30px;padding:18px;box-shadow:0 16px 38px rgba(60,47,40,.08);display:flex;flex-direction:column;gap:16px;}
.kua-lms-course-card.featured{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:26px;align-items:center;padding:clamp(22px,3.5vw,38px);}
.kua-lms-course-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:24px;border:1px solid #E8DDD0;display:block;background:#FFF8ED;}
.kua-lms-course-card h2,.kua-lms-course-card h3{color:#243B5A;margin:0 0 10px;letter-spacing:-.035em;}
.kua-lms-course-card h2{font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.04;}
.kua-lms-course-card h3{font-size:1.55rem;line-height:1.08;}
.kua-lms-course-card p{color:#5D6878;line-height:1.65;margin:0;}
.kua-lms-meta,.kua-lms-card-actions,.kua-lms-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px;}
.kua-lms-pill{display:inline-flex;align-items:center;border:1px solid #F2D9A6;background:#FFF3D8;color:#8A5A05;border-radius:999px;padding:8px 12px;font-weight:850;}
.kua-lms-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:24px;}
.kua-lms-path-card{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:28px;padding:22px;}
.kua-lms-path-card h3{color:#243B5A;margin:0 0 8px;font-size:1.45rem;}
.kua-lms-path-card p{color:#5D6878;line-height:1.65;margin:0 0 14px;}
.kua-lms-path-card ol{margin:14px 0 0;padding-left:22px;color:#243B5A;line-height:1.7;}
.kua-lms-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px;}
.kua-lms-resource-card{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:24px;padding:18px;text-decoration:none;color:#243B5A;}
.kua-lms-resource-card strong{display:block;margin-bottom:6px;color:#243B5A;}
.kua-lms-save{border:1px solid #D8CBBB;background:#FFFDF9;border-radius:999px;padding:10px 13px;font-weight:900;color:#243B5A;cursor:pointer;}
.kua-lms-save[aria-pressed="true"]{background:#E7EFEA;border-color:#315E52;color:#315E52;}
.kua-lms-progress{display:grid;gap:10px;margin-top:20px;}
.kua-lms-progress-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.kua-lms-status{font-weight:900;color:#315E52;}
.kua-lms-outline{display:grid;gap:16px;margin-top:26px;}
.kua-lms-lesson{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:18px;border:1px solid #E8DDD0;border-radius:24px;background:#FFFDF9;}
.kua-lms-number{width:42px;height:42px;border-radius:999px;background:#243B5A;color:#fff;display:grid;place-items:center;font-weight:900;}
.kua-lms-start-shell{background:#FFFCF7;min-height:100vh;}
.kua-lms-start-bar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #E8DDD0;box-shadow:0 8px 24px rgba(60,47,40,.06);}
.kua-lms-start-bar .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px;}
.kua-lms-iframe-wrap{height:calc(100vh - 84px);min-height:720px;}
.kua-lms-iframe-wrap iframe{width:100%;height:100%;display:block;border:0;background:#fff;}
.kua-lms-new-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px;}
.kua-lms-new-card{background:#FFFDF9;border:1px solid #E8DDD0;border-radius:24px;padding:18px;}
.kua-lms-new-card h3{color:#243B5A;margin:0 0 8px;}
.kua-lms-new-card p{color:#5D6878;line-height:1.6;margin:0;}
.kua-lms-user-mode{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
@media(max-width:1050px){.kua-lms-hero-grid,.kua-lms-course-card.featured{grid-template-columns:1fr}.kua-lms-course-grid,.kua-lms-path-grid,.kua-lms-resource-grid,.kua-lms-new-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.kua-lms-course-grid,.kua-lms-path-grid,.kua-lms-resource-grid,.kua-lms-new-grid{grid-template-columns:1fr}.kua-lms-start-bar .container{align-items:flex-start;flex-direction:column}}



/* From: login/index.html (unique rules not in LMS set) */
46 Login page rewrite */
.kua-login-shell{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(280px,.6fr);
  gap:32px;
  align-items:start;
  max-width:1080px;
  margin:0 auto;}
.kua-login-primary{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:34px;
  padding:clamp(28px,5vw,52px);
  box-shadow:0 18px 46px rgba(60,47,40,.10);}
.kua-login-primary h1{
  color:#243B5A;
  font-size:clamp(2.4rem,5vw,4.2rem);
  letter-spacing:-.055em;
  line-height:1.02;
  margin:14px 0 16px;}
.kua-login-primary p.kua-login-lead{
  color:#5D6878;
  font-size:1.12rem;
  line-height:1.7;
  margin:0 0 26px;}
.kua-login-primary .btn-primary{
  font-size:1.18rem;
  padding:18px 28px;}
.kua-login-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:6px;}
.kua-login-divider{
  display:flex;
  align-items:center;
  gap:14px;
  margin:32px 0 22px;
  color:#9A8B7C;
  font-weight:850;
  font-size:.92rem;
  text-transform:uppercase;
  letter-spacing:.08em;}
.kua-login-divider::before,
.kua-login-divider::after{
  content:"";
  flex:1;
  height:1px;
  background:#E8DDD0;}
.kua-login-help h2{
  color:#243B5A;
  font-size:1.45rem;
  letter-spacing:-.02em;
  margin:0 0 14px;}
.kua-login-help ol{
  color:#4B5563;
  font-size:1.05rem;
  line-height:1.7;
  margin:0 0 18px 1.2em;
  padding:0;}
.kua-login-help ol li{margin-bottom:8px;}
.kua-login-help-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;}
.kua-login-sidebar{
  display:grid;
  gap:16px;
  position:sticky;
  top:112px;}
.kua-login-side-card{
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:26px;
  padding:22px;
  box-shadow:0 14px 32px rgba(60,47,40,.08);}
.kua-login-side-card h3{
  color:#243B5A;
  font-size:1.12rem;
  margin:0 0 8px;}
.kua-login-side-card p{
  color:#5D6878;
  line-height:1.6;
  margin:0 0 12px;
  font-size:.98rem;}
.kua-login-side-card a{
  color:#243B5A;
  font-weight:850;
  text-decoration:none;}
.kua-login-side-card a:hover{
  text-decoration:underline;}
.kua-login-side-callout{
  background:#E7EFEA;
  border:1px solid #C9DDD4;
  border-left:6px solid #315E52;
  border-radius:22px;
  padding:18px 20px;
  color:#243B5A;
  line-height:1.55;}
/* Member-only panel: appears only when MemberSpace says user is signed in */
.kua-already-signed-in{display:none;}
body.kua-member-logged-in .kua-already-signed-in{display:block;}
body.kua-member-logged-in .kua-not-signed-in{display:none;}
.kua-login-tag{
  display:inline-flex;
  align-items:center;
  background:#FFF3D8;
  border:1px solid #F2D9A6;
  color:#8A5A05;
  border-radius:999px;
  padding:6px 12px;
  font-weight:900;
  font-size:.84rem;
  letter-spacing:.04em;
  text-transform:uppercase;}
@media(max-width:1050px){
  .kua-login-shell{
    grid-template-columns:1fr;}
.kua-login-sidebar{
    position:static;}

/* From: certificate/index.html (unique rules not in LMS set) */
/* ── Certificate page chrome ───────────────────────────────────── */
    /* Force hidden attribute to win against class-based display */
    [hidden] { display: none !important;}
.cert-page {
      min-height: 100vh;
      background: #FFFCF7;
      padding: 40px 16px 80px;}
.cert-controls {
      max-width: 980px;
      margin: 0 auto 24px;
      padding: 20px;
      background: #fff;
      border: 1px solid #E8DDD0;
      border-radius: 22px;
      box-shadow: 0 14px 36px rgba(60,47,40,.08);}
.cert-controls h2 {
      margin: 0 0 6px;
      font-size: 1.5rem;
      color: #243B5A;}
.cert-controls p {
      margin: 0 0 16px;
      color: #5D6878;
      line-height: 1.55;}
.cert-name-form {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      align-items: flex-end;}
.cert-name-field {
      flex: 1 1 240px;
      min-width: 0;
      display: flex;
      flex-direction: column;
      gap: 6px;}
.cert-name-field label {
      font-weight: 850;
      color: #243B5A;
      font-size: 0.92rem;}
.cert-name-field input {
      padding: 12px 16px;
      font-size: 1.05rem;
      font-weight: 700;
      border: 2px solid #E8DDD0;
      border-radius: 12px;
      color: #243B5A;
      background: #fff;
      min-height: 48px;}
.cert-name-field input:focus {
      border-color: #EFAE3B;
      outline: none;
      box-shadow: 0 0 0 4px rgba(239,174,59,0.2);}
.cert-btn-row {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;}
.cert-btn-row .btn {
      min-height: 48px;}
/* ── Certificate itself ───────────────────────────────────────── */
    .cert {
      max-width: 980px;
      margin: 0 auto;
      aspect-ratio: 1.414 / 1; /* landscape A4 */
      background: linear-gradient(135deg, #FFF8ED 0%, #FFF3D8 100%);
      border: 14px solid #243B5A;
      border-radius: 4px;
      box-shadow: 0 24px 60px rgba(36,59,90,0.18);
      position: relative;
      padding: clamp(36px, 6vw, 70px);
      display: flex;
      flex-direction: column;
      box-sizing: border-box;
      overflow: hidden;}
.cert::before {
      content: "";
      position: absolute;
      inset: 12px;
      border: 1px solid #EFAE3B;
      border-radius: 2px;
      pointer-events: none;}
.cert-brand {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: clamp(18px, 4vw, 32px);}
.cert-brand img {
      width: clamp(110px, 16vw, 160px);
      height: auto;}
.cert-eyebrow {
      font-size: 0.95rem;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: #8A5A05;
      font-weight: 900;
      text-align: center;
      margin-bottom: 12px;}
.cert-title {
      text-align: center;
      font-size: clamp(2rem, 6vw, 3.4rem);
      font-weight: 900;
      color: #243B5A;
      letter-spacing: -0.02em;
      line-height: 1.05;
      margin: 0 0 clamp(18px, 4vw, 34px);
      font-family: Georgia, "Times New Roman", serif;}
.cert-presented {
      text-align: center;
      color: #5D6878;
      font-size: clamp(0.95rem, 1.5vw, 1.1rem);
      margin-bottom: 8px;}
.cert-recipient {
      text-align: center;
      font-size: clamp(2rem, 5.5vw, 3rem);
      font-weight: 900;
      color: #1B2D47;
      margin: 0 0 clamp(16px, 3vw, 28px);
      font-family: Georgia, "Times New Roman", serif;
      letter-spacing: -0.01em;
      padding-bottom: 12px;
      border-bottom: 2px solid #EFAE3B;
      display: inline-block;
      align-self: center;
      min-width: 60%;}
.cert-body {
      text-align: center;
      color: #3C2F28;
      font-size: clamp(1rem, 1.6vw, 1.18rem);
      line-height: 1.55;
      max-width: 720px;
      margin: 0 auto clamp(18px, 4vw, 30px);}
.cert-course {
      text-align: center;
      font-size: clamp(1.3rem, 3vw, 1.8rem);
      font-weight: 900;
      color: #243B5A;
      margin: 0 0 clamp(20px, 4vw, 36px);
      font-style: italic;}
.cert-footer {
      margin-top: auto;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      gap: 30px;
      font-size: clamp(0.85rem, 1.4vw, 1rem);}
.cert-sig {
      flex: 1;
      text-align: center;}
.cert-sig-line {
      height: 2px;
      background: #243B5A;
      margin-bottom: 8px;}
.cert-sig-label {
      font-weight: 850;
      color: #243B5A;
      line-height: 1.3;}
.cert-sig-sub {
      color: #5D6878;
      font-size: 0.85em;
      margin-top: 2px;}
.cert-seal {
      position: absolute;
      bottom: clamp(40px, 6vw, 70px);
      right: clamp(40px, 6vw, 70px);
      width: clamp(90px, 12vw, 130px);
      height: clamp(90px, 12vw, 130px);
      border-radius: 50%;
      background: radial-gradient(circle at 30% 30%, #F5C657 0%, #EFAE3B 50%, #C68B1E 100%);
      box-shadow: 0 6px 16px rgba(36,59,90,0.25);
      display: flex;
      align-items: center;
      justify-content: center;
      color: #2B2100;
      font-weight: 900;
      font-size: clamp(0.75rem, 1.2vw, 0.92rem);
      text-align: center;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      line-height: 1.1;
      padding: 12px;
      box-sizing: border-box;
      border: 3px solid #fff;}
.cert-seal::after {
      content: "";
      position: absolute;
      inset: 6px;
      border: 1px dashed rgba(43,33,0,0.4);
      border-radius: 50%;
      pointer-events: none;}
.cert-seal-text {
      position: relative;
      z-index: 1;}
/* ── Eligibility / error states ───────────────────────────────── */
    .cert-locked, .cert-error {
      max-width: 720px;
      margin: 40px auto;
      padding: 32px;
      background: #fff;
      border: 1px solid #E8DDD0;
      border-radius: 22px;
      text-align: center;}
.cert-locked h2, .cert-error h2 {
      color: #243B5A;
      margin: 0 0 12px;
      font-size: 1.6rem;}
.cert-locked p, .cert-error p {
      color: #5D6878;
      line-height: 1.6;
      margin: 0 0 18px;}
/* ── Print styles ─────────────────────────────────────────────── */
    @media print {
      @page {
        size: A4 landscape;
        margin: 0;}
body, html {
        background: #FFF8ED !important;
        margin: 0 !important;
        padding: 0 !important;}
.site-header,
      .site-footer,
      .cert-controls,
      .kua-skip-link,
      script,
      noscript {
        display: none !important;}
.cert-page {
        padding: 0 !important;
        background: transparent !important;
        min-height: 0 !important;}
.cert {
        max-width: 100% !important;
        width: 100% !important;
        height: 100vh !important;
        aspect-ratio: auto !important;
        margin: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        page-break-inside: avoid;}
/* ── Mobile responsiveness ────────────────────────────────────── */
    @media (max-width: 720px) {
      .cert {
        aspect-ratio: auto;
        min-height: 90vh;
        padding: 28px 20px;}
.cert-footer {
        flex-direction: column;
        gap: 18px;}
.cert-seal {
        position: static;
        margin: 12px auto 0;}
.cert-recipient {
        min-width: 80%;}

/* From: articles/index.html (unique rules not in LMS set) */
46 View Modes for articles index */
.blog-view-toggle{
  margin-left:auto;
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:#fff;
  border:1px solid #E8DDD0;
  border-radius:999px;
  padding:4px;}
.blog-view-toggle-label{
  color:#5D6878;
  font-weight:850;
  font-size:.9rem;
  padding:0 10px 0 14px;}
.blog-view-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:none;
  background:transparent;
  color:#243B5A;
  font-weight:850;
  font-size:.9rem;
  border-radius:999px;
  padding:8px 14px;
  cursor:pointer;}
.blog-view-btn:hover{
  background:#FFF3D8;}
.blog-view-btn[aria-pressed="true"]{
  background:#243B5A;
  color:#fff;}
.blog-view-btn svg{
  width:16px;
  height:16px;}
/* LIST VIEW: stacked rows, image left, body right */
.blog-grid-37[data-blog-view="list"]{
  grid-template-columns:1fr !important;
  gap:14px;}
.blog-grid-37[data-blog-view="list"] .blog-card-37{
  display:grid;
  grid-template-columns:minmax(0,260px) minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:18px;}
.blog-grid-37[data-blog-view="list"] .blog-card-37 img{
  aspect-ratio:16/10;
  margin:0;
  border-radius:18px;}
.blog-grid-37[data-blog-view="list"] .blog-card-37 h2{
  font-size:1.45rem;
  margin:6px 0 8px;}
.blog-grid-37[data-blog-view="list"] .blog-card-37 p{
  margin:0 0 10px;}
.blog-grid-37[data-blog-view="list"] .blog-card-actions-37{
  margin-top:8px;
  padding-top:0;}
/* COMPACT VIEW: dense rows, no image, just title + meta + read action */
.blog-grid-37[data-blog-view="compact"]{
  grid-template-columns:1fr !important;
  gap:6px;}
.blog-grid-37[data-blog-view="compact"] .blog-card-37{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:18px;
  padding:14px 20px;
  border-radius:18px;
  box-shadow:none;
  border:1px solid #E8DDD0;}
.blog-grid-37[data-blog-view="compact"] .blog-card-37 img{
  display:none;}
.blog-grid-37[data-blog-view="compact"] .blog-card-37 h2{
  font-size:1.18rem;
  margin:0;
  line-height:1.25;}
.blog-grid-37[data-blog-view="compact"] .blog-card-37 p{
  display:none;}
.blog-grid-37[data-blog-view="compact"] .blog-meta-37{
  margin-top:4px;
  gap:6px;}
.blog-grid-37[data-blog-view="compact"] .blog-pill-37{
  font-size:.78rem;
  padding:4px 8px;}
.blog-grid-37[data-blog-view="compact"] .blog-card-actions-37{
  margin-top:0;
  padding-top:0;}
/* Mobile: list collapses to one column with image on top */
@media(max-width:720px){
  .blog-grid-37[data-blog-view="list"] .blog-card-37{
    grid-template-columns:1fr;
    gap:14px;}
.blog-grid-37[data-blog-view="compact"] .blog-card-37{
    grid-template-columns:1fr;
    gap:8px;
    text-align:left;}
.blog-view-toggle{
    width:100%;
    justify-content:center;
    margin-left:0;
    margin-top:8px;}


/* ═══════════════════════════════════════════════════════════════════
   Bundle H.2 (v53.20) — Helper views learner (share-code system)
   ═══════════════════════════════════════════════════════════════════ */

/* ─── Share-progress page (learner side) ─────────────────────────── */
.kua-share-card {
  background: #FFFCF7;
  border: 2px solid #E8DDD0;
  border-radius: 16px;
  padding: 24px;
}
.kua-share-generate-btn {
  min-height: 56px;
  font-size: 1.1rem;
  padding: 14px 28px;
  font-weight: 700;
}
.kua-share-output {
  margin-top: 24px;
}
.kua-share-output[hidden] { display: none; }
.kua-share-code-label {
  display: block;
  color: #243B5A;
  font-weight: 600;
  margin-bottom: 8px;
}
.kua-share-code {
  width: 100%;
  font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  font-size: 0.95rem;
  padding: 14px;
  border: 2px solid #243B5A;
  border-radius: 10px;
  background: #FFFCF7;
  color: #243B5A;
  word-break: break-all;
  resize: vertical;
  min-height: 110px;
}
.kua-share-code:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-share-button-row {
  display: flex;
  gap: 12px;
  margin-top: 14px;
  flex-wrap: wrap;
}
.kua-share-button-row .btn {
  min-height: 48px;
}
.kua-share-status {
  margin-top: 12px;
  color: #2d7a4f;
  font-weight: 600;
  font-size: 0.95rem;
}

/* ─── Helper-view page (helper side) ─────────────────────────────── */
.kua-helper-import-box {
  background: #FFFCF7;
  border: 2px solid #E8DDD0;
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 32px;
}
.kua-helper-import-label {
  display: block;
  color: #243B5A;
  font-weight: 600;
  margin-bottom: 8px;
  font-size: 1.05rem;
}
.kua-helper-code-input {
  width: 100%;
  font-family: ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
  font-size: 0.95rem;
  padding: 14px;
  border: 2px solid #243B5A;
  border-radius: 10px;
  background: #FFFCF7;
  color: #243B5A;
  word-break: break-all;
  resize: vertical;
  min-height: 110px;
  margin-bottom: 14px;
}
.kua-helper-code-input:focus-visible {
  outline: 3px solid #EFAE3B;
  outline-offset: 2px;
}
.kua-helper-import-btn {
  min-height: 56px;
  font-size: 1.05rem;
  padding: 14px 28px;
  font-weight: 700;
}
.kua-helper-import-msg {
  margin-top: 14px;
  padding: 12px 16px;
  border-radius: 8px;
  font-size: 0.95rem;
  line-height: 1.5;
}
.kua-helper-import-msg:empty { display: none; }
.kua-helper-import-msg-ok {
  background: rgba(45, 122, 79, 0.1);
  border-left: 4px solid #2d7a4f;
  color: #1a4a30;
}
.kua-helper-import-msg-err {
  background: rgba(184, 84, 80, 0.1);
  border-left: 4px solid #b85450;
  color: #6e2d2b;
}

.kua-helper-imports-heading {
  color: #243B5A;
  font-size: 1.6rem;
  margin: 0 0 20px;
  letter-spacing: -0.02em;
}

.kua-helper-import-card {
  background: #FFFCF7;
  border: 1px solid #E8DDD0;
  border-radius: 16px;
  padding: 24px 28px;
  margin-bottom: 20px;
}
.kua-helper-import-head h3 {
  color: #243B5A;
  font-size: 1.4rem;
  margin: 0 0 6px;
  font-weight: 700;
}
.kua-helper-import-dates {
  color: #6b7c93;
  font-size: 0.95rem;
  margin: 0 0 18px;
}
.kua-helper-import-progress h4,
.kua-helper-import-certs h4 {
  color: #243B5A;
  font-size: 1.05rem;
  margin: 16px 0 10px;
}
.kua-helper-import-courses {
  list-style: none;
  padding: 0;
  margin: 0;
}
.kua-helper-import-course {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 10px 14px;
  padding: 10px 0;
  border-bottom: 1px solid #f1ebe0;
}
.kua-helper-import-course:last-child { border-bottom: 0; }
.kua-helper-import-course-title {
  color: #243B5A;
  font-weight: 600;
  grid-column: 1 / -1;
}
.kua-helper-import-bar {
  height: 12px;
  background: #f1ebe0;
  border-radius: 6px;
  overflow: hidden;
}
.kua-helper-import-bar-fill {
  height: 100%;
  background: #2d7a4f;
  border-radius: 6px;
  transition: width 200ms;
}
.kua-helper-import-pct {
  color: #6b7c93;
  font-size: 0.9rem;
  font-weight: 600;
  text-align: right;
  min-width: 70px;
}
.kua-helper-import-certs ul {
  margin: 0;
  padding-left: 22px;
  color: #243B5A;
  line-height: 1.7;
}
.kua-helper-import-stale-note {
  margin-top: 16px;
  padding: 12px 16px;
  background: rgba(36, 59, 90, 0.06);
  border-radius: 8px;
  color: #5D6878;
  font-size: 0.95rem;
  line-height: 1.5;
}
.kua-helper-import-remove {
  margin-top: 14px;
  font-size: 0.95rem;
  min-height: 44px;
}
.kua-helper-import-empty,
.kua-helper-import-empty-state {
  text-align: center;
  padding: 40px 24px;
  color: #6b7c93;
  font-size: 1.05rem;
  line-height: 1.6;
}

@media (max-width: 640px) {
  .kua-helper-import-card { padding: 20px; }
  .kua-share-button-row .btn { flex: 1 1 0; }
}

/* ═══════════════════════════════════════════════════════════════════
   Bundle N+ (v53.21.2) — How-to article redesign
   Fixes the doubled-number bug from v53.21 and adds proper typography
   for step-by-step articles.
   ═══════════════════════════════════════════════════════════════════ */

.kua-howto-shell {
  font-size: 1.05rem;
  line-height: 1.65;
  color: #243B5A;
}

/* Article header block */
.kua-howto-header {
  margin-bottom: 36px;
  padding-bottom: 24px;
  border-bottom: 1px solid #E8DDD0;
}
.kua-howto-back {
  display: inline-block;
  color: #6b7c93;
  text-decoration: none;
  font-weight: 600;
  margin-bottom: 16px;
  font-size: 0.95rem;
}
.kua-howto-back:hover { color: #243B5A; text-decoration: underline; }
.kua-howto-eyebrow {
  display: inline-block;
  color: #EFAE3B;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.82rem;
  margin-bottom: 10px;
}
.kua-howto-title {
  color: #243B5A;
  font-size: clamp(2rem, 4.5vw, 2.8rem);
  line-height: 1.15;
  margin: 0 0 14px;
  letter-spacing: -0.03em;
  font-weight: 800;
}
.kua-howto-intro {
  color: #5D6878;
  font-size: 1.15rem;
  line-height: 1.65;
  margin: 0;
}

/* The members-only badge in the header */
.kua-howto-members-badge {
  display: inline-block;
  background: #243B5A;
  color: #FFFCF7;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-left: 8px;
  vertical-align: middle;
}

/* Steps list — use CSS counter, remove default <ol> numbering */
.kua-howto-steps {
  list-style: none;
  counter-reset: howto-step;
  padding: 0;
  margin: 0;
}
.kua-howto-step {
  position: relative;
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 20px;
  padding: 20px 0 28px;
  border-bottom: 1px solid #f1ebe0;
  counter-increment: howto-step;
}
.kua-howto-step:last-child { border-bottom: 0; }
.kua-howto-step::before {
  content: counter(howto-step);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: #243B5A;
  color: #FFFCF7;
  font-weight: 800;
  font-size: 1.2rem;
  border-radius: 50%;
  border: 3px solid #FFFCF7;
  box-shadow: 0 0 0 2px #243B5A;
  flex-shrink: 0;
}
/* Hide the explicit step-number div if present (legacy from earlier markup) */
.kua-howto-step .kua-howto-step-number { display: none; }

.kua-howto-step-h {
  color: #243B5A;
  font-size: 1.3rem;
  font-weight: 700;
  margin: 6px 0 10px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.kua-howto-step-body p {
  color: #243B5A;
  font-size: 1.05rem;
  line-height: 1.7;
  margin: 0 0 12px;
}
.kua-howto-step-body p:last-child { margin-bottom: 0; }

/* Optional inline SVG illustration inside a step */
.kua-howto-step-figure {
  margin: 14px 0 4px;
  background: #FFFCF7;
  border: 1px solid #E8DDD0;
  border-radius: 10px;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.kua-howto-step-figure svg {
  max-width: 100%;
  height: auto;
  display: block;
}
.kua-howto-step-figure figcaption {
  color: #6b7c93;
  font-size: 0.88rem;
  font-style: italic;
  text-align: center;
  line-height: 1.5;
}

/* "Good to know" section */
.kua-howto-notes {
  margin-top: 40px;
  padding: 24px 28px;
  background: #FFF8ED;
  border: 1px solid #F2D9A6;
  border-radius: 14px;
}
.kua-howto-notes h2 {
  color: #243B5A;
  font-size: 1.3rem;
  margin: 0 0 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 10px;
}
.kua-howto-notes h2::before {
  content: "💡";
  font-size: 1.2rem;
}
.kua-howto-notes ul {
  margin: 0;
  padding-left: 22px;
  color: #243B5A;
}
.kua-howto-notes li {
  margin-bottom: 10px;
  line-height: 1.65;
  font-size: 1rem;
}
.kua-howto-notes li:last-child { margin-bottom: 0; }

/* "Related" section */
.kua-howto-related {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid #E8DDD0;
}
.kua-howto-related h2 {
  color: #243B5A;
  font-size: 1.15rem;
  font-weight: 700;
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: 0.95rem;
}
.kua-howto-related ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 8px;
}
.kua-howto-related a {
  display: inline-block;
  color: #243B5A;
  font-weight: 600;
  text-decoration: none;
  padding: 6px 0;
}
.kua-howto-related a:hover {
  text-decoration: underline;
}

/* Article footer */
.kua-howto-footer {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid #E8DDD0;
  color: #6b7c93;
  line-height: 1.6;
  font-size: 0.95rem;
}
.kua-howto-footer a {
  color: #243B5A;
  font-weight: 600;
}

/* Mobile adjustments */
@media (max-width: 720px) {
  .kua-howto-shell {
    padding: 32px 20px 60px !important;
  }
  .kua-howto-step {
    grid-template-columns: 44px 1fr;
    gap: 14px;
    padding: 16px 0 22px;
  }
  .kua-howto-step::before {
    width: 40px;
    height: 40px;
    font-size: 1.05rem;
  }
  .kua-howto-step-h {
    font-size: 1.15rem;
  }
  .kua-howto-notes {
    padding: 18px 20px;
  }
}
