/* ═══════════════════════════════════════════════════════════════════
   HB Course Pages — single stylesheet for both course templates.
   Ported from the signed-off prototype (landing-page-mockups/course-pages).
   Everything is scoped under .hb-course-page so the Elementor header/footer
   and the rest of the site are untouched. Enqueued only on the two templates
   (see inc/course-pages.php), with filemtime() cache-busting.
   NOTE: body gets overflow-x:clip (not hidden) — overflow-x:hidden creates a
   scroll container and silently disables the sticky CTA card.
   ═══════════════════════════════════════════════════════════════════ */
:root{--purple:#4D0FFF; --purple-hover:#3D0CD9; --lilac:#ECE8FF; --lilac-d:#DAD0FF;
  --yellow:#FFE341; --orange:#FFA025;
  --cyan:#1C64FF; --cyan-80:#8DF3FF; --cyan-25:#C9F8FF; --cyan-pale:#E2FBFF;
  --rose:#F0CACA;
  --ink:#000; --text:#1A1A1E; --gray-text:#666669;
  --gray-light:#DEDEDE; --gray-mid:#BABABA; --gray-pale:#F2F2F3;
  --grad:linear-gradient(120deg,#FFE341 0%,#FFC508 45%,#FFA025 100%);
  --shadow-hard:4px 4px 0 #000; --shadow-hard-sm:3px 3px 0 #000;}
.hb-course-page, .hb-course-page *{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{overflow-x:clip}
.hb-course-page{font-family:'Montserrat',sans-serif;background:#fff;color:var(--text);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}
/* line-height pinned: the templates render inside the Elementor shell, whose
   global heading styles otherwise leak a ~2x line-height into any heading we
   don't set explicitly (seen on persona + related-course card titles). */
.hb-course-page h1,.hb-course-page h2,.hb-course-page h3,.hb-course-page h4,.hb-course-page .h{font-family:'Poppins',sans-serif;color:var(--ink);line-height:1.25}
.hb-course-page img,.hb-course-page svg{max-width:100%}
.hb-course-page a{color:var(--purple)}
.hb-course-page .wrap{max-width:1180px;margin:0 auto;padding:0 32px}
.hb-course-page .btn{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);color:#fff;border:none;height:52px;padding:0 34px;font-family:'Poppins';font-size:17px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s}
.hb-course-page .btn:hover{background:var(--purple-hover)}
.hb-course-page .btn.shadow{box-shadow:var(--shadow-hard)}
.hb-course-page .btn.sm{height:42px;padding:0 24px;font-size:15px}
.hb-course-page .btn.secondary{background:#fff;color:var(--purple);border:2px solid var(--purple)}
.hb-course-page .btn.secondary:hover{background:var(--lilac)}
.hb-course-page .btn.dark{background:var(--ink);color:var(--yellow)}
.hb-course-page .btn.full{width:100%}
.hb-course-page .hero-bg{background:var(--hero-bg,var(--grad));background-size:cover;background-position:center;position:relative;overflow:hidden}
.hb-course-page .hero{position:relative;display:grid;grid-template-columns:1fr 360px;gap:64px;padding-top:52px;padding-bottom:60px;align-items:start}
.hb-course-page .crumbs{font-size:13px;color:#3A2E00;margin-bottom:18px;font-weight:500}
.hb-course-page .crumbs b{font-weight:600}
.hb-course-page .type-badge{display:inline-block;font-family:'Poppins';font-weight:700;font-size:12.5px;letter-spacing:.07em;text-transform:uppercase;padding:6px 12px;margin-bottom:16px;background:var(--purple);color:#fff}
.hb-course-page .type-badge.cohort{background:var(--ink);color:var(--orange)}
.hb-course-page .type-badge.bitesize{background:#fff;color:var(--ink);border:2px solid var(--ink);padding:4px 10px}
.hb-course-page .hero h1{font-weight:700;font-size:48px;line-height:1.08;letter-spacing:-.01em;margin-bottom:14px}
.hb-course-page .hero .sub{font-size:19px;line-height:1.5;color:#241C00;margin-bottom:22px;max-width:560px;font-weight:500}
.hb-course-page .meta-row{display:flex;flex-wrap:wrap;gap:10px 22px;margin-bottom:26px}
.hb-course-page .meta-row .m{display:inline-flex;align-items:center;gap:8px;font-family:'Poppins';font-weight:600;font-size:14.5px;color:var(--ink)}
.hb-course-page .meta-row .m svg{width:17px;height:17px;flex:none}
.hb-course-page .by-line{font-size:14px;color:#3A2E00;margin-bottom:12px;font-weight:500}
.hb-course-page .instructors{display:flex;gap:26px;flex-wrap:wrap}
.hb-course-page .instr{display:flex;align-items:center;gap:12px}
.hb-course-page .instr .avatar{width:52px;height:52px;flex:none;background:#fff;border:2px solid var(--ink);overflow:hidden}
.hb-course-page .instr .avatar svg,.hb-course-page .instr .avatar img{display:block;width:100%;height:100%}
.hb-course-page .instr .nm{font-family:'Poppins';font-weight:700;font-size:15px;line-height:1.25}
.hb-course-page .instr .nm small{display:block;font-family:'Montserrat';font-weight:500;font-size:12.5px;color:#3A2E00}
/* Trusted-by logo marquee (sales hero). The track is width:max-content, so the
   hero's first grid child needs min-width:0 or the column inflates to fit it. */
.hb-course-page .hero>div:first-child{min-width:0}
.hb-course-page .trusted{font-size:13px;color:#3A2E00;font-weight:600;margin-bottom:22px}
.hb-course-page .lg-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.hb-course-page .lg-track{display:flex;align-items:center;gap:52px;width:max-content;padding-right:52px;animation:hb-logos 40s linear infinite}
.hb-course-page .lg-marquee:hover .lg-track{animation-play-state:paused}
@keyframes hb-logos{to{transform:translateX(-50%)}}
.hb-course-page .lg{display:inline-flex;align-items:center;flex:none}
.hb-course-page .lg svg{height:100%;display:block}
.hb-course-page .lg.ink svg{filter:grayscale(1) brightness(0);opacity:.74}
.hb-course-page .lg.tonal svg{filter:grayscale(1)}
@media (prefers-reduced-motion:reduce){.hb-course-page .lg-track{animation:none}.hb-course-page .lg-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}
.hb-course-page .rail-span{position:relative}
/* Site header is an Elementor sticky section: position:fixed, z-index 16,
   53px tall (admins: Elementor offsets it below the 32px admin bar). Sticky
   chrome on this page must stay BELOW z-index 16 and stick below 53px. */
.hb-course-page .rail-abs{position:absolute;top:52px;bottom:0;right:max(32px,calc((100% - 1180px)/2 + 32px));width:360px;z-index:12}
.hb-course-page .rail-span .hero{grid-template-columns:1fr;padding-right:calc(360px + 56px)}
.hb-course-page .rail-span section.band .wrap,.hb-course-page .rail-span > .wrap{padding-right:calc(360px + 56px + 32px)}
.hb-course-page .rail-span .snav .in{padding-right:calc(360px + 56px + 32px);flex-wrap:wrap}
.hb-course-page .rail-span .snav a{padding:12px 10px;font-size:13px}
.hb-course-page .rail-span .card-grid,.hb-course-page .rail-span .personas{grid-template-columns:repeat(2,1fr)}
.hb-course-page .cta-card{position:sticky;top:66px;background:#fff;border:2px solid var(--ink);box-shadow:var(--shadow-hard);padding:26px 24px}
.hb-course-page .cta-card .t{font-family:'Poppins';font-weight:700;font-size:16.5px;line-height:1.35;margin-bottom:16px}
.hb-course-page .cta-card ul.inc{margin-bottom:18px}
.hb-course-page .cta-card ul.inc li{list-style:none;display:flex;align-items:center;gap:11px;font-size:14.5px;padding:5px 0;color:var(--text)}
.hb-course-page .cta-card ul.inc li svg{width:17px;height:17px;flex:none}
.hb-course-page .cta-card .price{font-family:'Poppins';font-weight:700;font-size:15px;margin-bottom:14px}
.hb-course-page .cta-card .price b{font-size:30px;font-weight:800}
.hb-course-page .cta-card .price small{display:block;font-family:'Montserrat';font-weight:500;font-size:12.5px;color:var(--gray-text);margin-top:2px}
.hb-course-page .cta-card .micro{text-align:center;font-size:12.5px;color:var(--gray-text);margin-top:12px}
.hb-course-page .cta-card .helper{border-top:1px solid var(--gray-light);margin-top:16px;padding-top:14px;font-size:13.5px}
.hb-course-page .cta-card .helper a{display:flex;align-items:center;gap:8px;padding:4px 0;font-weight:600;text-decoration:none}
.hb-course-page .cta-card .helper a svg{width:15px;height:15px;flex:none}
.hb-course-page .cta-card .sel-cohort{background:var(--gray-pale);padding:10px 12px;font-size:13.5px;margin-bottom:14px}
.hb-course-page .cta-card .sel-cohort b{font-family:'Poppins';display:block}
.hb-course-page .cta-card .sel-cohort .when{display:block;color:var(--gray-text);margin:2px 0 4px}
.hb-course-page .cta-card .sel-cohort a{font-weight:600}
.hb-course-page .snav{position:sticky;top:53px;z-index:10;background:#fff;border-bottom:2px solid var(--ink);overflow-x:auto}
body.admin-bar .hb-course-page .snav{top:85px}
body.admin-bar .hb-course-page .cta-card{top:98px}
/* anchor jumps must clear fixed header + stuck snav */
.hb-course-page section[id],.hb-course-page div[id]{scroll-margin-top:110px}
body.admin-bar .hb-course-page section[id],body.admin-bar .hb-course-page div[id]{scroll-margin-top:142px}
.hb-course-page .snav .in{display:flex;gap:4px}
.hb-course-page .snav a{font-family:'Poppins';font-weight:600;font-size:14px;color:var(--text);text-decoration:none;padding:14px 16px;white-space:nowrap;border-bottom:3px solid transparent}
.hb-course-page .snav a:hover{color:var(--purple)}
/* stat tiles (option B of landing-page-mockups/course-pages/mbar-options.html) */
.hb-course-page .mbar{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px;position:relative;z-index:2}
.hb-course-page .mbar .cell{background:var(--gray-pale);padding:14px 16px}
.hb-course-page .mbar .cell .k{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--gray-text);font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.hb-course-page .mbar .cell svg{width:14px;height:14px;flex:none}
.hb-course-page .mbar .cell .v{font-family:'Poppins';font-weight:600;font-size:14px;line-height:1.35}
.hb-course-page section.band{padding:64px 0}
.hb-course-page section.band.cyan{background:var(--cyan-pale)}
.hb-course-page section.band.yellow{background:var(--grad)}
.hb-course-page section.band.pale{background:var(--gray-pale)}
.hb-course-page .sec-h{margin-bottom:38px}
.hb-course-page .sec-h h2{font-weight:700;font-size:32px;line-height:1.15;padding-bottom:26px;border-bottom:6px solid var(--ink);margin-bottom:0}
.hb-course-page .sec-h .lede{margin-top:20px;color:var(--text);font-size:17px;max-width:760px}
.hb-course-page .checklist li svg,.hb-course-page .plan ul li svg{color:var(--purple)}
.hb-course-page .compare svg.ck{color:var(--purple)}
.hb-course-page .compare svg.xk{color:var(--gray-mid)}
.hb-course-page .checklist{display:grid;grid-template-columns:1fr 1fr;gap:16px 44px;max-width:1000px}
.hb-course-page .checklist li{list-style:none;display:flex;gap:14px;align-items:flex-start;font-size:16px}
.hb-course-page .checklist li svg{width:22px;height:22px;flex:none;margin-top:1px}
.hb-course-page .checklist li b{font-weight:700}
.hb-course-page .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:900px}
.hb-course-page .stat{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;padding:22px}
.hb-course-page .stat svg{width:26px;height:26px;margin-bottom:12px}
.hb-course-page .stat .n{font-family:'Poppins';font-weight:700;font-size:17px;line-height:1.3}
.hb-course-page .personas{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.hb-course-page .persona{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;padding:26px 24px}
.hb-course-page .persona .ico{width:46px;height:46px;background:var(--yellow);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.hb-course-page .persona .ico svg{width:23px;height:23px}
.hb-course-page .persona h3{font-weight:700;font-size:18px;line-height:1.25;margin-bottom:8px}
.hb-course-page .persona p{color:var(--text);font-size:14.5px;line-height:1.55}
.hb-course-page .curr-stats{font-family:'Poppins';font-weight:600;font-size:15px;margin-bottom:22px}
.hb-course-page .curr-stats span{color:var(--gray-text);font-weight:500;margin:0 8px}
.hb-course-page .curriculum{max-width:920px}
.hb-course-page .module{border:1px solid var(--gray-light);background:#fff;margin-bottom:10px}
.hb-course-page .module[open]{background:var(--lilac)}
.hb-course-page .module summary{list-style:none;cursor:pointer;padding:18px 22px}
.hb-course-page .module summary::-webkit-details-marker{display:none}
.hb-course-page .module summary .row1{display:flex;align-items:baseline;gap:10px}
.hb-course-page .module summary .wk{font-family:'Poppins';font-weight:700;font-size:16.5px;color:var(--purple);white-space:nowrap}
.hb-course-page .module summary h3{font-weight:600;font-size:16.5px;flex:1}
.hb-course-page .module summary .more{font-size:13.5px;color:var(--purple);font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:6px}
.hb-course-page .module summary .more svg{width:12px;height:12px;transition:transform .15s}
.hb-course-page .module[open] summary .more svg{transform:rotate(180deg)}
.hb-course-page .module summary .row2{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13.5px;color:var(--gray-text)}
.hb-course-page .module summary .row2 svg{width:15px;height:15px}
.hb-course-page .module .mod-body{padding:0 22px 20px}
.hb-course-page .module .mod-desc{color:var(--text);font-size:14.5px;margin-bottom:14px;max-width:720px}
.hb-course-page .topic{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--gray-light);border-bottom:none;padding:11px 16px;font-size:14.5px}
.hb-course-page .topic:last-child{border-bottom:1px solid var(--gray-light)}
.hb-course-page .topic .ty{display:flex;align-items:center;gap:8px;width:132px;flex:none;font-size:12.5px;color:var(--gray-text);font-weight:600;white-space:nowrap}
.hb-course-page .topic .ty svg{width:16px;height:16px;flex:none}
.hb-course-page .topic .ty small{display:block}
.hb-course-page .topic .tt{flex:1}
.hb-course-page .topic .free{font-family:'Poppins';font-weight:700;font-size:11px;letter-spacing:.05em;background:var(--yellow);border:1px solid var(--ink);padding:3px 8px;flex:none}
.hb-course-page .sched-wk{margin-bottom:22px}
.hb-course-page .sched-wk h3{font-weight:700;font-size:16.5px;margin-bottom:10px}
.hb-course-page .sess{display:flex;align-items:center;border:1px solid var(--gray-light);border-bottom:none;background:#fff;font-size:14.5px}
.hb-course-page .sess:last-child{border-bottom:1px solid var(--gray-light)}
.hb-course-page .sess .d{font-family:'Poppins';font-weight:700;width:104px;padding:11px 8px;flex:none;background:var(--gray-pale);text-align:center;align-self:stretch;display:flex;align-items:center;justify-content:center}
.hb-course-page .sess .dow{width:70px;padding:11px 0 11px 18px;color:var(--gray-text);flex:none;font-weight:600;font-size:12.5px}
.hb-course-page .sess .tm{width:120px;padding:11px 0;flex:none}
.hb-course-page .sess .what{padding:11px 16px;color:var(--text);font-weight:600}
.hb-course-page .cohort-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:920px}
.hb-course-page .cohort-opt{border:2px solid var(--ink);background:#fff;padding:20px;cursor:pointer;position:relative}
.hb-course-page .cohort-opt.sel{box-shadow:var(--shadow-hard);background:var(--lilac)}
.hb-course-page .cohort-opt.sel::after{content:"";position:absolute;top:14px;right:14px;width:14px;height:14px;background:var(--purple)}
.hb-course-page .cohort-opt.soldout{opacity:.45;cursor:not-allowed}
.hb-course-page .cohort-opt .dates{font-family:'Poppins';font-weight:700;font-size:16px;margin-bottom:6px}
.hb-course-page .cohort-opt .when{font-size:13.5px;color:var(--gray-text);margin-bottom:10px}
.hb-course-page .cohort-opt .avail{display:inline-block;font-family:'Poppins';font-weight:700;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;padding:4px 9px}
.hb-course-page .cohort-opt .avail.open{background:var(--cyan-pale)}
.hb-course-page .cohort-opt .avail.filling{background:var(--yellow)}
.hb-course-page .cohort-opt .avail.sold{background:var(--rose)}
.hb-course-page .instructor-sec{display:grid;grid-template-columns:170px 1fr;gap:36px;align-items:start;max-width:960px}
.hb-course-page .instructor-sec .photo{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;line-height:0}
.hb-course-page .instructor-sec .photo svg,.hb-course-page .instructor-sec .photo img{display:block;width:100%;height:auto}
.hb-course-page .instructor-sec h3{font-weight:700;font-size:26px;margin-bottom:4px}
.hb-course-page .instructor-sec .cred{font-family:'Poppins';font-weight:600;font-size:15.5px;color:var(--gray-text);margin-bottom:16px}
.hb-course-page .instructor-sec .bio{color:var(--text);font-size:16px;max-width:600px}
.hb-course-page .instructor-sec .bio p+p{margin-top:12px}
.hb-course-page .instructor-sec .li-link{display:inline-flex;align-items:center;gap:9px;margin-top:18px;font-family:'Poppins';font-weight:600;font-size:14.5px;text-decoration:none}
.hb-course-page .instructor-sec .li-link svg{width:18px;height:18px}
.hb-course-page .quotes{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 4px 16px;scrollbar-width:thin}
.hb-course-page .quote{background:#fff;border:2px solid var(--ink);box-shadow:var(--shadow-hard);padding:24px;flex:0 0 310px;scroll-snap-align:start;display:flex;flex-direction:column}
.hb-course-page .quote p{font-size:14.5px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.hb-course-page .quote.open p{-webkit-line-clamp:unset;display:block}
.hb-course-page .quote .more{align-self:flex-start;background:none;border:none;padding:6px 0 0;font-family:'Poppins';font-weight:600;font-size:13px;color:var(--purple);cursor:pointer;text-decoration:underline}
.hb-course-page .quote .who{margin-top:auto;padding-top:16px;display:flex;align-items:center;gap:12px}
.hb-course-page .quote .who .avatar{width:42px;height:42px;flex:none;background:var(--gray-pale);border:2px solid var(--ink);overflow:hidden}
.hb-course-page .quote .who .nm{font-family:'Poppins';font-weight:700;font-size:14px;line-height:1.3}
.hb-course-page .quote .who .nm small{display:block;font-family:'Montserrat';font-weight:500;color:var(--gray-text);font-size:12.5px}
.hb-course-page .quote .who .src{margin-left:auto;flex:none;display:flex;align-items:center;color:var(--gray-text)}
.hb-course-page .quote .who .src:hover{color:#0a66c2}
.hb-course-page .quote .who .src svg{width:18px;height:18px;display:block}
.hb-course-page .quote .who .src .scr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hb-course-page .compare{max-width:760px;border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;border-collapse:collapse;width:100%}
.hb-course-page .compare th,.hb-course-page .compare td{padding:13px 18px;font-size:14.5px;text-align:center;border-top:1px solid var(--gray-light)}
.hb-course-page .compare th{font-family:'Poppins';font-weight:700;font-size:15px;border-top:none}
.hb-course-page .compare th:first-child,.hb-course-page .compare td:first-child{text-align:left}
.hb-course-page .compare thead th{background:var(--ink);color:#fff}
.hb-course-page .compare thead th:nth-child(2){background:var(--purple)}
.hb-course-page .compare td svg{width:18px;height:18px;display:inline-block;vertical-align:middle}
.hb-course-page .card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.hb-course-page .card{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;padding:24px 22px}
.hb-course-page .card .ico{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.hb-course-page .card .ico svg{width:22px;height:22px;flex:none}
.hb-course-page .card .ico h3{font-weight:700;font-size:17px}
.hb-course-page .card p{color:var(--text);font-size:14px;line-height:1.55}
.hb-course-page .format-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;max-width:920px}
.hb-course-page .fmt{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;padding:22px;display:flex;gap:16px;align-items:flex-start}
.hb-course-page .fmt svg{width:24px;height:24px;flex:none;margin-top:2px}
.hb-course-page .fmt h3{font-weight:700;font-size:16.5px;margin-bottom:5px}
.hb-course-page .fmt h3 small{font-family:'Montserrat';font-weight:600;color:var(--gray-text);font-size:13px;margin-left:8px}
.hb-course-page .fmt p{font-size:14.5px;color:var(--text)}
.hb-course-page .commit{display:flex;gap:52px;align-items:flex-start;max-width:920px;flex-wrap:wrap}
.hb-course-page .commit .big{font-family:'Poppins';font-weight:700;font-size:40px;line-height:1.05;white-space:nowrap}
.hb-course-page .commit .big small{display:block;font-family:'Montserrat';font-weight:600;font-size:14px;color:var(--gray-text);margin-top:6px}
.hb-course-page .commit .note{color:var(--text);font-size:16px;max-width:520px;flex:1;min-width:280px}
.hb-course-page .prose{max-width:780px;color:var(--text);font-size:16.5px}
.hb-course-page .prose>*+*{margin-top:14px}
.hb-course-page .prose ul,.hb-course-page .prose ol{padding-left:26px}
.hb-course-page .prose ul{list-style:disc}
.hb-course-page .prose ol{list-style:decimal}
.hb-course-page .prose li{margin-top:6px}
.hb-course-page .prose>ul+p,.hb-course-page .prose>ol+p{margin-top:18px}
.hb-course-page .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding-top:18px}
.hb-course-page .plan{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;padding:26px 22px;display:flex;flex-direction:column;position:relative}
.hb-course-page .plan .flag{position:absolute;bottom:calc(100% + 2px);left:-2px;right:-2px;text-align:center;background:var(--ink);color:var(--yellow);font-family:'Poppins';font-weight:700;font-size:12px;letter-spacing:.06em;padding:8px 12px;text-transform:uppercase}
.hb-course-page .plan .btn{font-size:15px;padding:0 12px;white-space:nowrap}
.hb-course-page .plan h3{font-weight:700;font-size:17px;margin-bottom:14px}
.hb-course-page .plan .amt{font-family:'Poppins';font-weight:800;font-size:36px;line-height:1}
.hb-course-page .plan .amt sup{font-size:18px;font-weight:700;vertical-align:top}
.hb-course-page .plan .per{font-size:13px;color:var(--gray-text);margin:5px 0 18px}
.hb-course-page .plan .btn{margin-bottom:18px}
.hb-course-page .plan ul{flex:1}
.hb-course-page .plan ul li{list-style:none;display:flex;gap:10px;align-items:flex-start;font-size:13.5px;padding:4.5px 0}
.hb-course-page .plan ul li svg{width:15px;height:15px;flex:none;margin-top:2px}
.hb-course-page .plan ul li b{font-weight:700}
.hb-course-page .plan .save{margin-top:12px;font-size:13px;font-weight:700;color:var(--ink);background:var(--cyan-pale);padding:6px 10px;text-align:center}
.hb-course-page .price-helpers{display:flex;gap:30px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.hb-course-page .price-helpers a{display:inline-flex;align-items:center;gap:9px;font-family:'Poppins';font-weight:600;font-size:14.5px;color:var(--ink);text-decoration:underline}
.hb-course-page .price-helpers a svg{width:16px;height:16px}
.hb-course-page .free-note{text-align:center;margin-top:20px;font-size:14.5px}
.hb-course-page .faq-group{max-width:820px;margin-bottom:30px}
.hb-course-page .faq-group h3{font-weight:700;font-size:18px;margin-bottom:8px}
.hb-course-page .faq{border-bottom:1px solid var(--gray-light)}
.hb-course-page .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;font-family:'Poppins';font-weight:600;font-size:15.5px}
.hb-course-page .faq summary::-webkit-details-marker{display:none}
.hb-course-page .faq summary svg{width:14px;height:14px;flex:none;transition:transform .15s}
.hb-course-page .faq[open] summary svg{transform:rotate(180deg)}
.hb-course-page .faq .a{padding:0 0 16px;color:var(--text);font-size:14.5px;max-width:720px}
.hb-course-page .rel-grid{display:flex;gap:26px;overflow-x:auto;scroll-snap-type:x proximity;padding:4px 4px 16px;scrollbar-width:thin}
.hb-course-page .rel{border:2px solid var(--ink);box-shadow:var(--shadow-hard);background:#fff;flex:0 0 340px;scroll-snap-align:start}
.hb-course-page .rel .thumb{aspect-ratio:1200/628;line-height:0}
.hb-course-page .rel .thumb svg{display:block;width:100%;height:100%}
.hb-course-page .rel .body{padding:18px 20px 22px}
.hb-course-page .rel h3{font-weight:700;font-size:17.5px;margin-bottom:8px}
.hb-course-page .rel .meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--gray-text);font-weight:600;margin-bottom:10px}
.hb-course-page .rel .meta svg{width:14px;height:14px}
.hb-course-page .rel p{font-size:13.5px;color:var(--text)}
.hb-course-page .cert{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;max-width:1000px}
.hb-course-page .cert-copy p{color:var(--text);font-size:16.5px;margin-top:12px;max-width:460px}
.hb-course-page .cert-visual{border:2px solid var(--ink);box-shadow:var(--shadow-hard);line-height:0;background:#fff}
.hb-course-page .cert-visual svg{display:block;width:100%;height:auto}
.hb-course-page .mbar-cta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);border-top:2px solid var(--ink);padding:10px 16px;align-items:center;gap:14px}
.hb-course-page .mbar-cta .p{font-family:'Poppins';font-weight:700;font-size:17px;flex:1}
.hb-course-page .mbar-cta .p small{display:block;font-family:'Montserrat';font-weight:500;font-size:11.5px;color:var(--gray-text)}
.hb-course-page .mbar-cta .x{background:none;border:none;font-family:'Poppins';font-size:18px;font-weight:700;cursor:pointer;padding:6px}
@media(max-width:1040px){
.hb-course-page .hero{grid-template-columns:1fr;gap:36px}
.hb-course-page .cta-card{position:static}
.hb-course-page .rail-abs{position:static;width:auto;margin:24px 32px 0}
.hb-course-page .mbar-cta{display:flex}
.hb-course-page{padding-bottom:74px}
.hb-course-page .rail-span .hero{padding-right:0}
.hb-course-page .rail-span section.band .wrap,.hb-course-page .rail-span > .wrap{padding-right:32px}
.hb-course-page .rail-span .snav .in{padding-right:32px;flex-wrap:nowrap} /* rail is static below 1040 — stop reserving its width (made nav links stack) */
.hb-course-page .rail-span .quotes,.hb-course-page .rail-span .personas{grid-template-columns:repeat(2,1fr)}
.hb-course-page .mbar{grid-template-columns:repeat(2,1fr)}
.hb-course-page .card-grid,.hb-course-page .plans{grid-template-columns:repeat(2,1fr)}
.hb-course-page .personas,.hb-course-page .quotes,.hb-course-page .cohort-pick{grid-template-columns:repeat(2,1fr)}
/* stacked plans: clear the absolutely-positioned "Most popular" flag (~35px
   tall) so it doesn't run into the card above */
.hb-course-page .plan.hot{margin-top:36px}
}
@media(max-width:760px){
.hb-course-page .snav{display:none} /* in-page nav eats too much vertical space on phones */
.hb-course-page section.band{padding:46px 0}
.hb-course-page .hero h1{font-size:34px}
.hb-course-page .hero{padding-top:36px;padding-bottom:44px}
.hb-course-page .sec-h h2{font-size:26px;padding-bottom:18px}
.hb-course-page .checklist{grid-template-columns:1fr}
.hb-course-page .stats{grid-template-columns:1fr}
.hb-course-page .personas,.hb-course-page .quotes,.hb-course-page .cohort-pick,.hb-course-page .format-grid,.hb-course-page .plans,.hb-course-page .card-grid{grid-template-columns:1fr}
.hb-course-page .instructor-sec{grid-template-columns:1fr;gap:26px}
.hb-course-page .instructor-sec .photo{max-width:280px}
.hb-course-page .cert{grid-template-columns:1fr;gap:30px}
.hb-course-page .sess{flex-wrap:wrap}
.hb-course-page .sess .what{width:100%;padding-top:0}
}
@media(max-width:560px){
.hb-course-page .wrap{padding-left:20px;padding-right:20px}
.hb-course-page .hero h1{font-size:29px}
}

/* ─── additions from review fixes (previously inline styles) ─── */
.hb-course-page .hero.compact{padding-top:40px;padding-bottom:44px;grid-template-columns:1fr}
.hb-course-page .hero.compact .meta-row{margin-top:14px;margin-bottom:0}
.hb-course-page .hero.compact .cta-row{margin-top:18px}
.hb-course-page .gap-lg{height:38px}
.hb-course-page .enrol-band .wrap{text-align:center}
.hb-course-page .enrol-band .eb-title{font-family:'Poppins',sans-serif;font-size:34px;font-weight:700;margin-bottom:10px}
.hb-course-page .enrol-band .eb-price{font-family:'Poppins',sans-serif;font-weight:800;font-size:44px}
.hb-course-page .enrol-band .eb-cohort{margin:10px 0 26px;font-weight:500}
.hb-course-page .enrol-band .eb-btn{padding:0 60px}
.hb-course-page a.rel{display:block;text-decoration:none;color:inherit}
.hb-course-page a.topic{text-decoration:none;color:inherit}
.hb-course-page button.cohort-opt{font-family:inherit;font-size:inherit;text-align:left;display:block;width:100%}
.hb-course-page .rel-img{width:100%;height:100%;object-fit:cover}
