:root{
    --cream:#F3EDE1;
    --ink:#0B0B0C;
    --ink-soft:#3A3733;
    --ink-muted:#7A736B;
    --blue:#2264EB;
    --blue-press:#1A4FC4;
    --blue-bg:rgba(34,100,235,.08);
    --white:#ffffff;
    --border:#D5CFC4;
  }

  *{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--cream);
    color:var(--ink);
    font-family:"Manrope",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    -webkit-font-smoothing:antialiased;
  }

  /* ── NAV ── */
  nav{
    position:sticky;top:0;z-index:50;
    background:rgba(243,237,225,.94);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);
    padding:0 40px;
    height:60px;
    display:flex;align-items:center;justify-content:space-between;
    gap:24px;
  }
  .nav-brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
  .nav-logo{width:34px;height:34px;border-radius:50%;object-fit:cover;flex-shrink:0;}
  .nav-wordmark{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;font-size:16px;letter-spacing:-.3px;
    color:var(--ink);
  }
  .nav-links{display:flex;align-items:center;gap:28px;}
  .nav-links a{
    font-size:14px;font-weight:500;color:var(--ink-soft);
    text-decoration:none;transition:color .13s;
  }
  .nav-links a:hover{color:var(--ink);}
  .nav-cta{
    font-family:"Space Grotesk",sans-serif;
    font-size:13px;font-weight:600;
    color:var(--white);background:var(--ink);
    padding:9px 20px;border-radius:24px;
    text-decoration:none;
    transition:background .13s;
    white-space:nowrap;
  }
  .nav-cta:hover{background:#1a1a1b;}

  /* ── HERO ── */
  .hero{
    max-width:1120px;margin:0 auto;
    padding:80px 40px 72px;
  }
  .hero-eyebrow{
    display:inline-block;
    font-size:11px;font-weight:700;letter-spacing:1.3px;
    text-transform:uppercase;color:var(--blue);
    margin-bottom:28px;
  }
  .hero h1{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;
    font-size:clamp(44px,6.5vw,82px);
    letter-spacing:-2.5px;
    line-height:1.0;
    color:var(--ink);
    max-width:740px;
    margin-bottom:28px;
  }
  .hero p{
    font-size:18px;line-height:1.72;
    color:var(--ink-soft);
    max-width:480px;
    margin-bottom:40px;
  }
  .hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
  .btn-primary{
    font-family:"Space Grotesk",sans-serif;
    font-weight:600;font-size:15px;
    color:var(--white);background:var(--blue);
    padding:15px 30px;border-radius:34px;
    text-decoration:none;
    box-shadow:0 4px 18px rgba(34,100,235,.28);
    transition:transform .14s,box-shadow .14s,background .14s;
    white-space:nowrap;
  }
  .btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(34,100,235,.34);}
  .btn-primary:active{background:var(--blue-press);transform:translateY(1px);}
  .btn-text{
    font-size:14px;font-weight:600;color:var(--ink-soft);
    text-decoration:none;
    border-bottom:1.5px solid var(--border);
    padding-bottom:2px;
    transition:color .13s,border-color .13s;
    white-space:nowrap;
  }
  .btn-text:hover{color:var(--ink);border-color:var(--ink-soft);}

  /* ── TRUST BAR ── */
  .trust{
    border-top:1px solid var(--border);
    border-bottom:1px solid var(--border);
    padding:18px 40px;
    display:flex;align-items:center;gap:28px;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
  .trust-label{
    font-size:11px;font-weight:700;letter-spacing:1.1px;
    text-transform:uppercase;color:var(--ink-muted);
    white-space:nowrap;flex-shrink:0;
  }
  .trust-divider{width:1px;height:22px;background:var(--border);flex-shrink:0;}
  .trust-partner{
    display:flex;align-items:center;gap:9px;
    flex-shrink:0;
    text-decoration:none;
    transition:opacity .13s;
  }
  .trust-partner:hover{opacity:.7;}
  .trust-logo-wrap{
    width:28px;height:28px;
    border-radius:6px;
    background:var(--ink);
    display:grid;place-items:center;
    flex-shrink:0;
    overflow:hidden;
  }
  .trust-logo-wrap img{
    width:72%;height:72%;
    object-fit:contain;
    filter:invert(1);
  }
  .trust-partner-name{
    font-family:"Space Grotesk",sans-serif;
    font-weight:600;font-size:15px;color:var(--ink);
    white-space:nowrap;
  }
  /* GGB — swap with <img> once you have their logo */
  .trust-ggb{
    display:flex;align-items:center;gap:9px;flex-shrink:0;
    text-decoration:none;
    transition:opacity .13s;
  }
  .trust-ggb:hover{opacity:.7;}
  /* PASTE GGB LOGO HERE: replace the .trust-ggb-badge div with the logo wrap + img */
  .trust-ggb-badge{
    width:28px;height:28px;
    background:var(--ink);border-radius:6px;
    display:grid;place-items:center;
  }
  .trust-ggb-badge span{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;font-size:9px;
    color:var(--white);letter-spacing:.5px;
  }
  .trust-ggb-name{
    font-family:"Space Grotesk",sans-serif;
    font-weight:600;font-size:15px;color:var(--ink);
    white-space:nowrap;
  }

  /* ── COURSES ── */
  .courses-section{
    max-width:1120px;margin:0 auto;
    padding:68px 40px 88px;
  }
  .courses-header{
    display:flex;align-items:baseline;justify-content:space-between;
    margin-bottom:36px;
  }
  .courses-header h2{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;font-size:28px;
    letter-spacing:-.5px;color:var(--ink);
  }
  .courses-header a{
    font-size:13px;font-weight:600;color:var(--blue);
    text-decoration:none;
  }
  .courses-header a:hover{text-decoration:underline;}

  .course-row{
    display:flex;align-items:center;gap:24px;
    padding:20px 0;
    border-bottom:1px solid var(--border);
    text-decoration:none;
    color:inherit;
    transition:padding-left .14s;
  }
  .course-row:hover{padding-left:6px;}
  .course-row:first-of-type{border-top:1px solid var(--border);}

  .course-num{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;font-size:14px;
    color:var(--border);min-width:28px;
    flex-shrink:0;
  }
  .course-klass{
    font-size:11px;font-weight:700;letter-spacing:.7px;
    text-transform:uppercase;color:var(--blue);
    min-width:120px;flex-shrink:0;
  }
  .course-title{
    font-family:"Space Grotesk",sans-serif;
    font-weight:600;font-size:16.5px;
    color:var(--ink);flex:1;
    line-height:1.25;
  }
  .course-badge{
    font-size:11px;font-weight:700;letter-spacing:.3px;
    text-transform:uppercase;
    background:var(--blue-bg);color:var(--blue);
    padding:4px 11px;border-radius:20px;
    flex-shrink:0;
  }
  .course-arrow{
    color:var(--border);flex-shrink:0;
    transition:color .13s,transform .13s;
  }
  .course-row:hover .course-arrow{color:var(--blue);transform:translateX(3px);}

  /* ── FOOTER ── */
  footer{
    border-top:1px solid var(--border);
    padding:28px 40px;
    display:flex;align-items:center;justify-content:space-between;
    flex-wrap:wrap;gap:14px;
  }
  .footer-brand{display:flex;align-items:center;gap:8px;}
  .footer-logo{width:24px;height:24px;border-radius:50%;object-fit:cover;}
  .footer-wordmark{
    font-family:"Space Grotesk",sans-serif;
    font-weight:700;font-size:14px;
    letter-spacing:-.2px;color:var(--ink-soft);
  }
  .footer-note{
    font-size:12px;color:var(--ink-muted);
    line-height:1.5;text-align:right;
  }

  /* ── RESPONSIVE ── */
  @media (max-width:760px){
    nav{padding:0 20px;}
    .nav-links{display:none;}
    .hero{padding:56px 20px 52px;}
    .hero h1{letter-spacing:-1.5px;}
    .trust{padding:16px 20px;gap:20px;}
    .courses-section{padding:52px 20px 72px;}
    .course-klass{display:none;}
    .course-num{display:none;}
    footer{padding:24px 20px;flex-direction:column;align-items:flex-start;}
    .footer-note{text-align:left;}
  }
  @media (max-width:480px){
    .hero h1{font-size:38px;}
    .btn-primary{padding:14px 24px;font-size:14px;}
  }
  @media (prefers-reduced-motion:reduce){
    *{transition:none!important;}
    .btn-primary:hover,.course-row:hover{transform:none;}
  }
