/* Highkey Academy — design tokens (redesign 1.22.0: logo colours Oxford Blue #002147 + green #0FA541, Fira Sans family).
   Buttons are white on the deeper green #0C8133 (5.0:1); the logo green is kept for accents. */
:root{
  --hk-night:#002147; --hk-night-2:#00152E; --hk-line-dark:#12386B; --hk-ghost:#23497A;
  --hk-navy:#002147; --hk-navy-dark:#00152E; --hk-go:#0C8133; --hk-go-dark:#0A6B2A; --hk-check:#0FA541; --hk-green:#0FA541; --hk-go-text:#0A7F31;
  --hk-red:#E5483F; --hk-promo:#B4231B; --hk-promo-bg:#FDECEC; --hk-ink:#0B1526; --hk-ink-2:#2A3A52; --hk-muted:#4A5B73; --hk-muted-2:#5A6A82;
  --hk-bg:#F4F6F9; --hk-card:#FFFFFF; --hk-border:#E3E8EF; --hk-rule:#D3DAE5; --hk-field:#C6D0DE; --hk-tint:#E8EDF4; --hk-lilac:#C6D2E2; --hk-lilac-2:#DCE4EF; --hk-lilac-3:#B8C6DA; --hk-on3:#8FA3BF;
  --hk-font:'Fira Sans','Helvetica Neue',Arial,sans-serif;
  --hk-display:'Fira Sans Extra Condensed','Arial Narrow',sans-serif;
  --hk-stencil:'Fira Sans Extra Condensed','Arial Narrow',sans-serif;
  --hk-mono:'Fira Code',ui-monospace,Menlo,Consolas,monospace;
  --hk-cond:'Barlow Semi Condensed','Arial Narrow',sans-serif;
  --hk-pad:clamp(16px,4.4vw,64px);
}
body.hk-academy{font-family:var(--hk-font);background:var(--hk-bg);color:var(--hk-ink)}
body.hk-academy h1,body.hk-academy h2,body.hk-academy h3,body.hk-academy h4{font-family:var(--hk-font);color:inherit}
body.hk-academy a{color:var(--hk-navy)}
body.hk-academy a:hover{color:var(--hk-navy-dark)}

.hk-wrap{max-width:1312px;margin:0 auto;padding-inline:var(--hk-pad);box-sizing:border-box}
.hk-mono{font-family:var(--hk-mono)}

/* Header */
.hk-header{position:relative;background:var(--hk-night);border-bottom:1px solid var(--hk-line-dark);color:#fff;font-family:var(--hk-font)}
.hk-header *{box-sizing:border-box}
.hk-header-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.hk-brand{display:flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none!important;flex:0 0 auto}
.hk-logo-img{height:30px;width:auto;display:block}
.hk-brand-tag{font-family:var(--hk-display);font-weight:700;font-size:22px;line-height:1;color:var(--hk-lilac-3);border-left:1px solid var(--hk-ghost);padding-left:12px}
.hk-nav{display:flex;align-items:center;gap:28px}
.hk-nav a,.hk-navl{color:var(--hk-lilac-2)!important;text-decoration:none!important;font-weight:600}
.hk-nav a:hover,.hk-navl:hover{color:#fff!important;text-decoration:underline!important;text-underline-offset:5px}
.hk-right{display:flex;align-items:center;gap:14px}
.hk-login{color:#fff!important;font-weight:700}
.hk-menu{display:none;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--hk-ghost);border-radius:3px;background:transparent;cursor:pointer;padding:0}
.hk-menu:hover{background:var(--hk-line-dark)}
.hk-mnav{position:absolute;left:0;right:0;top:100%;z-index:1000;background:var(--hk-night);border-bottom:1px solid var(--hk-line-dark);box-shadow:0 18px 30px -18px rgba(0,0,0,.6)}
.hk-mnav[hidden]{display:none}
.hk-mnav-in{display:flex;flex-direction:column;padding-block:8px 20px}
.hk-mnav a{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--hk-line-dark);color:var(--hk-lilac-2)!important;font-weight:600;font-size:17px;text-decoration:none!important}
.hk-mnav a:hover{color:#fff!important}
.hk-mnav-cta{display:flex;flex-wrap:wrap;gap:12px;padding-top:16px}
.hk-mnav .hk-mnav-cta a{border:0}
.hk-mnav .hk-mnav-cta .hk-b{min-height:48px;font-size:16px}

/* Language switch (square, as in the redesign) */
.hk-lang{display:inline-flex;border:1px solid var(--hk-ghost);border-radius:3px;overflow:hidden}
.hk-lang-opt{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:36px;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--hk-lilac-2)!important;text-decoration:none!important}
.hk-lang-opt:hover{background:var(--hk-line-dark)}
.hk-lang-opt.is-on{background:#fff;color:var(--hk-night)!important}

/* Buttons */
.hk-b{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;border-radius:3px;font-family:var(--hk-font);font-weight:700;line-height:1.2;white-space:nowrap;text-decoration:none!important;border:0;cursor:pointer}
.hk-b-go{background:var(--hk-go);color:#fff!important;font-weight:800}
.hk-b-go:hover{background:var(--hk-go-dark)}
.hk-b-out{border:1.5px solid var(--hk-go);color:var(--hk-go-dark)!important;font-size:15px;padding:0 14px}
.hk-b-out:hover{background:#E3F5E9}
.hk-b-white{background:#fff;color:var(--hk-navy)!important}
.hk-b-white:hover{background:var(--hk-lilac-2)}
.hk-b-lg{min-height:52px;padding:0 22px}
.hk-b:focus-visible,.hk-lang-opt:focus-visible,.hk-menu:focus-visible,.hk-nav a:focus-visible,.hk a:focus-visible,.hk-footer a:focus-visible{outline:3px solid var(--hk-check);outline-offset:3px}
/* Older button names, still used by Tutor screens and older pages */
.hk-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;text-decoration:none!important;border-radius:3px;padding:12px 20px;line-height:1.2;border:1px solid transparent}
.hk-btn-go{background:var(--hk-go);color:#fff!important}
.hk-btn-go:hover{background:var(--hk-go-dark)}
.hk-btn-ghost{border-color:var(--hk-ghost);color:#fff!important;font-weight:600}
.hk-btn-white{background:#fff;color:var(--hk-navy)!important}
.hk-btn-sm{padding:10px 16px;font-size:15px}
.hk-btn-lg{padding:16px 26px;font-size:17px}

/* Home layout */
.hk{font-family:var(--hk-font);color:var(--hk-ink);line-height:1.55;font-size:16px;background:var(--hk-bg)}
.hk *{box-sizing:border-box}
.hk h1,.hk h2,.hk h3,.hk p,.hk figure,.hk ul,.hk ol,.hk dl,.hk dd{margin:0}
body.hk-front .site-content>.ast-container,body.hk-front #primary,body.hk-front .entry-content{max-width:none!important;width:100%!important;padding:0!important;margin:0!important}
body.hk-front .entry-header,body.hk-front .ast-archive-description{display:none}
body.hk-front article.page{padding:0!important;margin:0!important;background:transparent!important}
body.hk-front .site-content{padding:0!important}
.hk-home{width:100%}
.hk-h2{font-family:var(--hk-display)!important;font-weight:800;font-size:clamp(40px,4.6vw,64px);line-height:.95;color:var(--hk-navy)!important;max-width:10em;text-wrap:balance}
.hk-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 64px}
.hk-head p{max-width:26em;font-size:17px;color:var(--hk-ink-2)}
.hk-sec{padding:88px 0}
.hk-sec-in{display:flex;flex-direction:column;gap:36px}

/* Hero: live weld scan (same screen, plate and physics as the HK-UT 6 simulator) */
.hk-hero{background:var(--hk-night);color:#fff;padding:48px 0 56px}
.hk-hero-in{display:flex;flex-direction:column;gap:24px}
.hs-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,580px);gap:56px;align-items:center}
.hs-copy{display:flex;flex-direction:column;gap:22px;min-width:0}
.hk .hs-h1{font-family:var(--hk-display)!important;font-weight:800;font-size:clamp(46px,6vw,96px);line-height:.92;letter-spacing:-.005em;color:#fff!important;text-wrap:balance}
.hs-lead{font-size:clamp(17px,1.45vw,20px);line-height:1.5;max-width:34em;color:var(--hk-lilac);text-wrap:pretty}
.hs-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.hs-ctas .hk-b{font-size:18px;padding:0 24px}
.hs-link{color:var(--hk-lilac-2)!important;font-weight:700;font-size:17px;text-decoration:underline!important;text-underline-offset:5px;text-decoration-thickness:1px}
.hs-link:hover{color:#fff!important}
.hs-trust{font-size:14.5px;color:var(--hk-lilac-3)}
.hs-panel{background:#172025;border:1px solid #2b3a42;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:12px;min-width:0;color:#e4eef0}
.hs-inst{box-shadow:0 24px 48px -28px rgba(0,0,0,.8)}
.hs-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 16px}
.hs-cap{font:700 14px var(--hk-cond);letter-spacing:.12em;text-transform:uppercase;color:#8ea2aa}
.hs-model{font:600 12px var(--hk-mono);letter-spacing:.08em;color:#f0a53a}
.hs-probe{font:500 13px var(--hk-mono);color:#e4eef0}
.hs-bezel{background:#0a0f10;border:1px solid #000;border-radius:10px;padding:8px;box-shadow:inset 0 0 0 2px #232f35}
.hs-screen{background:#03110b;border-radius:6px;overflow:hidden}
.hs-ro{display:grid;grid-template-columns:minmax(0,1.25fr) repeat(5,minmax(0,1fr));gap:6px;background:#071c13;border-bottom:1px solid #185040;padding:8px}
.hs-ro>div{border:1px solid #185040;padding:4px 7px;min-width:0}
.hs-ro>div.hs-ro-db{border:0;padding:2px 4px}
.hs-v{font:600 19px var(--hk-mono);color:#e9fff0;line-height:1.32;white-space:nowrap}
.hs-ro-db .hs-v{font-size:24px}
.hs-l{display:flex;justify-content:space-between;gap:4px;font:600 11px var(--hk-mono);color:#4f9a75;white-space:nowrap}
.hs-svg{display:block;width:100%;height:auto}
.hs-foot{display:flex;flex-wrap:wrap;gap:2px 8px;padding:0 10px 8px;font:500 12px var(--hk-mono);color:#4f9a75}
.hs-foot span:last-child{margin-left:auto}
.hs-gain{display:flex;flex-wrap:wrap;gap:8px 10px;align-items:center;background:#1e2a30;border:1px solid #2b3a42;border-radius:10px;padding:8px 10px}
.hs-gain .hs-cap{font-size:12px}
.hs-gv{font:600 22px var(--hk-mono);min-width:7.5ch}
.hs-btns{display:flex;gap:8px;margin-left:auto}
.hs-btn{font:700 13px var(--hk-cond);letter-spacing:.1em;background:#26343b;color:#e4eef0;border:1px solid #3a4b54;border-bottom-width:3px;border-radius:8px;padding:6px 10px;min-width:44px;min-height:36px;cursor:pointer;line-height:1}
.hs-btn:hover{background:#2e3e46}
.hs-btn:active{transform:translateY(1px);border-bottom-width:2px}
.hs-btn:focus-visible,.hs-range:focus-visible,.hs-plate:focus-visible{outline:2px solid #f0a53a;outline-offset:2px}
.hs-plate{display:block;width:100%;height:auto;background:#0b1013;border-radius:8px;touch-action:none;cursor:ew-resize;user-select:none;-webkit-user-select:none}
.hs-plate:focus:not(:focus-visible){outline:none}
.hs-under{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px}
.hs-meta{display:flex;flex-wrap:wrap;gap:4px 14px;font:500 12.5px var(--hk-mono);color:#8ea2aa;min-width:0}
.hs-meta b{color:#e4eef0;font-weight:600}
.hs-slide{flex:1 1 300px;max-width:520px;background:#1e2a30;border:1px solid #2b3a42;border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:2px;min-width:0}
.hs-slide label{display:flex;justify-content:space-between;gap:8px;font:600 12px var(--hk-cond);letter-spacing:.1em;text-transform:uppercase;color:#8ea2aa;margin:0}
.hs-slide label span+span{font:600 13px var(--hk-mono);letter-spacing:0;text-transform:none;color:#e4eef0}
.hs-range{width:100%;margin:2px 0;accent-color:#f0a53a;height:28px;background:transparent}
.hs-status{display:flex;flex-direction:column;gap:6px;max-width:62em}
.hs-st{font-size:17px;font-weight:700;color:#fff;min-height:26px}
.hs-note{font-size:14px;color:var(--hk-lilac-3)}
.hs-svg text,.hs-plate text{font-family:var(--hk-mono)}

/* Courses: a register, one row per method, each with the indication you learn to see */
.hk-courses{padding:88px 0 72px;border-top:1px solid var(--hk-rule)}
.reg{border-top:2px solid var(--hk-navy)}
.reg-head,.reg-row{display:grid;grid-template-columns:76px minmax(0,260px) minmax(0,1fr) minmax(0,220px) minmax(0,240px);grid-template-areas:"code spec name list price";gap:16px 32px;align-items:start}
.reg-head{padding:12px 0;border-bottom:1px solid var(--hk-rule);font-size:13.5px;font-weight:700;color:var(--hk-muted)}
.reg-row{padding:28px 0;border-bottom:1px solid var(--hk-rule)}
.reg-code{grid-area:code}.reg-spec{grid-area:spec}.reg-name{grid-area:name}.reg-list{grid-area:list}.reg-price{grid-area:price}
.reg-codeword{font-family:var(--hk-stencil);font-weight:900;font-size:60px;line-height:.85;color:var(--hk-navy);white-space:nowrap}
.reg-row:hover .reg-codeword{color:var(--hk-go-text)}
.reg-row .reg-spec{display:flex;flex-direction:column;gap:6px}
.reg-spec svg{display:block;width:100%;height:auto;border:1px solid var(--hk-rule)}
.reg-code a.reg-codeword{display:inline-block;text-decoration:none!important;color:var(--hk-navy)!important}
.reg-row:hover .reg-code a.reg-codeword{color:var(--hk-go-text)!important}
.reg-pic{display:block;cursor:pointer;text-decoration:none!important}
.reg-pic svg{transition:border-color .15s,box-shadow .15s}
.reg-pic:hover svg{border-color:var(--hk-navy);box-shadow:0 2px 0 var(--hk-navy)}
.reg-row:has(.reg-pic:hover,.reg-codeword:hover) .reg-name h3 a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
.reg-spec figcaption,.hk-figcap{font-size:13.5px;font-style:italic;color:var(--hk-muted)}
.reg-name{display:flex;flex-direction:column;gap:6px}
.hk .reg-name h3{font-family:var(--hk-display)!important;font-weight:700;font-size:30px;line-height:1;color:var(--hk-navy)!important}
.reg-name h3 a{color:inherit!important;text-decoration:none!important}
.reg-name h3 a:hover{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
.reg-alt{font-size:14px;color:var(--hk-muted)}
.reg-name p{margin-top:4px;max-width:30em}
.reg-row .reg-list{padding:0!important;list-style:none!important;font-size:15px}
.reg-list li{padding:6px 0;border-bottom:1px solid var(--hk-border);margin:0}
.reg-list li:first-child{padding-top:0}
.reg-list li:last-child{padding-bottom:0;border-bottom:0}
.reg-row .reg-price{display:flex;flex-direction:column;gap:4px;align-items:flex-start}
.reg-amt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.reg-amt b{font-family:var(--hk-display);font-weight:800;font-size:30px;line-height:1;color:var(--hk-ink)}
.reg-amt s{font-size:15px;color:var(--hk-muted)}
.reg-promo{display:inline-block;padding:3px 9px;border-radius:3px;background:var(--hk-promo-bg);color:var(--hk-promo);font-size:12.5px;font-weight:700;line-height:1.4;text-wrap:balance}
.reg-soon{font-size:12.5px;color:var(--hk-muted)}
.reg-price .hk-b{margin-top:8px}
.reg-price .hk-b-out,.reg-price .reg-cart{min-width:222px}
.reg-price .reg-cart{margin-top:2px;font-size:15px;padding:0 14px}
.reg-owned{font-size:14px;font-weight:700;color:var(--hk-go-dark)}

/* How it works: photo log + online/offline steps */
.hk-how{background:#fff;border-block:1px solid var(--hk-rule)}
.hk-how .hk-sec-in{gap:40px}
.hk-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:28px 20px}
.hk-photo{display:flex;flex-direction:column;gap:10px}
.hk-photo-frame{aspect-ratio:4/3;overflow:hidden;border:1px solid var(--hk-rule);background:#1A1F26}
.hk-photo-frame img{width:100%!important;height:100%!important;object-fit:cover;object-position:50% 0;display:block;max-width:none}
.hk-photo figcaption{font-size:14.5px;color:var(--hk-ink-2)}
.hk-photo figcaption b{color:var(--hk-navy)}
.how-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);border:2px solid var(--hk-navy)}
.how-on{padding:28px clamp(18px,2.4vw,32px);display:flex;flex-direction:column;gap:20px}
.how-lab{font-weight:700;font-size:15px;color:var(--hk-muted)}
.how-steps{padding:0!important;list-style:none!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(190px,100%),1fr));gap:24px 28px}
.how-steps li{display:flex;flex-direction:column;gap:6px;margin:0}
.how-n{font-family:var(--hk-display);font-weight:800;font-size:44px;line-height:1;color:var(--hk-go-text)}
.how-steps b{font-size:18px;color:var(--hk-navy)}
.how-steps span:last-child{color:var(--hk-ink-2)}
.how-off{background:var(--hk-navy);color:var(--hk-lilac-2);padding:28px clamp(18px,2.4vw,32px);display:flex;flex-direction:column;gap:10px}
.how-off .how-lab{color:var(--hk-lilac-3)}
.how-off .how-n{color:var(--hk-check)}
.how-off b{font-size:18px;color:#fff}
.how-off a{margin-top:6px;color:#fff!important;font-weight:700;text-underline-offset:4px}
.how-off a:hover{color:var(--hk-lilac-2)!important}
.how-note{margin-top:6px;font-size:14px;color:var(--hk-lilac-3)}

/* Mentor: a record, with a stamp */
.mentor{display:grid;grid-template-columns:240px minmax(0,1fr) 150px;gap:40px;align-items:start}
.mentor-photo{width:100%;height:auto;display:block;border:1px solid var(--hk-rule);background:#fff;padding:6px;box-sizing:border-box}
.mentor-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.mentor-copy>p{font-size:18px;max-width:34em}
.mdl{border-top:2px solid var(--hk-navy);display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr)}
.mdl dt{padding:11px 16px 11px 0;border-bottom:1px solid var(--hk-rule);font-size:14px;color:var(--hk-muted);font-weight:400}
.mdl dd{padding:10px 0;border-bottom:1px solid var(--hk-rule);margin:0}
.mdl dd.mdl-name{font-weight:700;color:var(--hk-navy)}
.mdl dd.mdl-num{font-variant-numeric:tabular-nums}
.mentor-stamp{transform:rotate(-9deg);margin-top:40px}

/* Help box */
.hk-cta-sec{padding:0 0 88px}
.cta-box{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px;background:var(--hk-navy);color:#fff;border-radius:4px;padding:36px clamp(18px,3vw,44px)}
.cta-copy{display:flex;flex-direction:column;gap:8px;max-width:36em}
.hk .cta-copy h2{font-family:var(--hk-display)!important;font-weight:800;font-size:clamp(34px,3.4vw,46px);line-height:1;color:#fff!important}
.cta-copy p{font-size:17px;color:var(--hk-lilac-3)}
.cta-btns{display:flex;flex-wrap:wrap;gap:12px}

/* Footer */
.hk-footer{background:var(--hk-night);color:var(--hk-lilac-3);font-size:15px;font-family:var(--hk-font);line-height:1.55}
.hk-footer *{box-sizing:border-box}
.hk-footer-in{padding-block:56px 28px;display:flex;flex-direction:column;gap:40px}
.foot{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:32px 48px}
.foot-col{display:flex;flex-direction:column;gap:8px}
.foot-brand{gap:12px;max-width:30em}
.foot-brand img{height:30px;width:auto;align-self:flex-start}
.foot-col b{color:#fff}
.hk-footer a{color:#fff!important}
.hk-footer a:hover{color:var(--hk-lilac-2)!important}
.foot-line{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 32px;padding-top:20px;border-top:1px solid var(--hk-line-dark);font-size:14px}
.foot-line div{display:flex;flex-wrap:wrap;gap:24px}
/* 1.23.3: keep the last footer row clear of the back-to-top and cart buttons (they reach 70px from the right edge) */
@media (max-width:1460px){.foot-line{padding-right:calc(80px - var(--hk-pad))}}

/* Lesson player inside Tutor */
.hk-player{border:1px solid var(--hk-border);border-radius:4px;overflow:hidden;background:#fff;margin-bottom:20px}

/* Tutor LMS touches */
body.hk-academy .tutor-btn-primary{background:var(--hk-go);border-color:var(--hk-go);color:#fff}
body.hk-academy .tutor-btn-primary:hover,body.hk-academy .tutor-btn-primary:focus{background:var(--hk-go-dark);border-color:var(--hk-go-dark);color:#fff}
body.hk-academy .tutor-course-details-title,body.hk-academy .tutor-dashboard-title{font-family:var(--hk-display);font-weight:800;letter-spacing:0;line-height:.95}
body.hk-academy .tutor-card,body.hk-academy .tutor-course-card{border-color:var(--hk-border)}

@media (max-width:1180px){.hs-top{grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:40px}}
@media (max-width:1100px){
  .reg-head{display:none}
  .reg-row{grid-template-columns:64px minmax(0,1fr);grid-template-areas:"code name" "spec spec" "list list" "price price"}
  .reg-spec{max-width:460px}
  .reg-codeword{font-size:52px}
  .how-split{grid-template-columns:minmax(0,1fr)}
  .mentor{grid-template-columns:200px minmax(0,1fr)}
  .mentor-stamp{display:none}
  .foot{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:980px){.hs-top{grid-template-columns:minmax(0,1fr);gap:32px}}
@media (max-width:900px){
  .hk-nav{display:none}
  .hk-menu{display:inline-flex}
}
@media (min-width:901px){.hk-mnav{display:none!important}}
@media (max-width:640px){
  .reg-row .reg-list{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px}
  .reg-list li,.reg-list li:first-child,.reg-list li:last-child{padding:6px 0;border-bottom:1px solid var(--hk-border)}
  .reg-row .reg-price{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:16px}
  .mdl{grid-template-columns:minmax(0,1fr)}
  .mdl dt{border-bottom:0;padding-bottom:0}
  .mentor{grid-template-columns:minmax(0,1fr)}
  .mentor-photo{max-width:220px}
  .foot{grid-template-columns:minmax(0,1fr)}
  .hk-hide-sm{display:none!important}
}
@media (max-width:560px){.hs-ro{grid-template-columns:repeat(3,minmax(0,1fr))}.hs-v,.hs-ro-db .hs-v{font-size:16px}}
@media (max-width:400px){
  .hk-brand-tag{font-size:19px;padding-left:9px}
  .hk-right{gap:8px}
}
@media (prefers-reduced-motion:reduce){.hs-btn:active{transform:none}}
/* The theme restyles range inputs; the hero slider keeps the instrument's own look. */
.hk input.hs-range{-webkit-appearance:auto;appearance:auto;width:100%;height:28px;padding:0;margin:2px 0;background:transparent!important;accent-color:#f0a53a;transition:none;box-shadow:none}
.hk-mnav .hk-mnav-cta .hk-b-go{color:#fff!important}
.hk-mnav .hk-mnav-cta .hk-b-white{color:var(--hk-navy)!important}
.hk-menu[aria-expanded="true"]{background:var(--hk-line-dark)}
/* The theme's back-to-top button, in the site colours */
body.hk-academy #ast-scroll-top{background-color:var(--hk-navy);color:#fff;border-radius:3px}
body.hk-academy #ast-scroll-top:hover{background-color:var(--hk-go)}
/* Floating cart (1.23.2): stacked on the back-to-top button, or in its corner while that is hidden */
.hk-cartfab{position:fixed;right:22px;bottom:24px;z-index:99;transition:bottom .2s ease;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--hk-go);color:#fff!important;border-radius:3px;box-shadow:0 6px 18px rgba(0,21,46,.28);text-decoration:none!important}
.hk-cartfab[hidden]{display:none}
.hk-cartfab.hk-up{bottom:72px}
.hk-cartfab.hk-up2{bottom:128px}
.hk-cartfab:hover{background:var(--hk-go-dark)}
.hk-cartfab:focus-visible{outline:3px solid var(--hk-navy);outline-offset:2px}
.hk-cartfab-n{position:absolute;top:-8px;right:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#D92D20;color:#fff;border:2px solid #fff;font:800 12px/18px var(--hk-font);text-align:center;box-sizing:border-box}
.hk-cartfab.hk-pop{animation:hkPop .35s ease-out}
@keyframes hkPop{0%{transform:scale(.85)}60%{transform:scale(1.08)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.hk-cartfab{transition:none}.hk-cartfab.hk-pop{animation:none}}

/* Course page (Tutor's single course), redesign 1.21.0 */
.hk-ctop{flex:0 0 100%;width:100%;box-sizing:border-box;padding-top:28px;font-family:var(--hk-font)}
.hk-ctop-in{display:flex;flex-direction:column;gap:22px}
body.single-courses .tutor-wrap.ast-article-single{padding-left:0!important;padding-right:0!important}
body.single-courses .tutor-toggle-more-collapsed:before{background:linear-gradient(rgba(244,246,249,0) 1.31%,rgba(244,246,249,.72) 15.41%,#F4F6F9 100%)}
body.single-courses .site-content>.ast-container{flex-wrap:wrap}
.hk-crumb{display:flex;flex-wrap:wrap;gap:8px;font-size:14.5px;color:var(--hk-muted)}
.hk-crumb a{color:var(--hk-navy)!important;text-decoration:underline;text-underline-offset:3px}
.hk-ctop-row{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}
.hk-ctop-code{font-family:var(--hk-stencil);font-weight:900;font-size:clamp(88px,10vw,132px);line-height:.9;color:var(--hk-navy)}
.hk-ctop-meta{display:flex;flex-direction:column;gap:4px;min-width:0;padding-bottom:2px;font-size:15px;color:var(--hk-muted)}
.hk-ctop-lvl{font-weight:700;color:var(--hk-go-dark)}
body.single-courses{background:var(--hk-bg)}
body.single-courses .site-content,body.single-courses #primary,body.single-courses .ast-article-single{background:transparent!important}
body.single-courses .tutor-course-details-page{padding-top:16px}
body.single-courses .tutor-course-details-header{margin-bottom:32px!important}
body.hk-academy.single-courses .tutor-course-details-title{font-family:var(--hk-display)!important;font-weight:800!important;font-size:clamp(44px,5.4vw,76px)!important;line-height:.95!important;color:var(--hk-navy)!important;text-wrap:balance;margin-top:4px!important}
body.single-courses .tutor-course-details-actions .tutor-btn-ghost{color:var(--hk-navy)}
body.single-courses .tutor-course-thumbnail img{border:1px solid var(--hk-rule);border-radius:0}
body.single-courses .tutor-course-details-content h2,body.single-courses .tutor-course-content-title,body.single-courses .tutor-course-details-tab h2.tutor-fs-5,body.single-courses .tutor-course-details-tab h3.tutor-fs-5{font-family:var(--hk-display)!important;font-weight:800!important;font-size:clamp(34px,3.6vw,48px)!important;line-height:1!important;color:var(--hk-navy)!important;letter-spacing:0}
body.single-courses .tutor-course-details-content .tutor-fs-6{font-size:17px;color:var(--hk-ink)}
body.single-courses .tutor-btn-show-more{color:var(--hk-navy)}
/* Contents: square rows under a navy rule, as in the redesign */
body.single-courses .tutor-accordion-item{border:1px solid var(--hk-rule);border-top:2px solid var(--hk-navy);border-radius:0;background:#fff}
body.single-courses .tutor-accordion-item+.tutor-accordion-item{margin-top:16px}
body.single-courses .tutor-accordion-item-header{border-radius:0!important;background:#fff;color:var(--hk-navy);font-family:var(--hk-display);font-weight:700;font-size:26px;line-height:1.1;padding:14px 44px 14px 18px}
body.single-courses .tutor-accordion-item-header.is-active{background:#fff;border-bottom:1px solid var(--hk-rule)}
body.single-courses .tutor-accordion-item-header .tooltip-txt{font-family:var(--hk-font)}
body.single-courses .tutor-course-content-list-item{border-bottom:1px solid var(--hk-border)}
body.single-courses .tutor-course-content-list-item:last-child{border-bottom:0}
body.single-courses .tutor-course-content-list-item-title,body.single-courses .tutor-course-content-list-item-title a{font-size:15.5px;font-weight:600;color:var(--hk-ink)!important}
body.single-courses .tutor-course-content-list-item-title a:hover{color:var(--hk-navy)!important;text-decoration:underline}
body.hk-academy .hka-free{border-radius:3px;background:var(--hk-go);color:#fff}
/* Buy box: white, navy frame, big price */
body.single-courses .tutor-sidebar-card{border:2px solid var(--hk-navy)!important;border-radius:0!important;background:#fff;box-shadow:none}
body.single-courses .tutor-sidebar-card .tutor-card-footer{border-top:1px solid var(--hk-rule)}
body.single-courses .tutor-course-sidebar-card-pricing .tutor-fs-4{font-family:var(--hk-display);font-weight:800!important;font-size:48px!important;line-height:.9;color:var(--hk-ink)!important}
body.single-courses .tutor-course-sidebar-card-pricing del{font-size:17px!important;color:var(--hk-muted)!important}
body.single-courses .tutor-sidebar-card .tutor-btn{border-radius:3px;min-height:52px;font-family:var(--hk-font);font-weight:700;font-size:17px}
body.single-courses .tutor-sidebar-card .tutor-btn-outline-primary{border-color:var(--hk-go);color:var(--hk-go-dark)}
body.single-courses .tutor-sidebar-card .tutor-btn-outline-primary:hover,body.single-courses .tutor-sidebar-card .tutor-btn-outline-primary:focus-visible{background:var(--hk-go);border-color:var(--hk-go);color:#fff}
body.hk-academy .hka-promo{border-radius:3px;background:var(--hk-promo-bg);color:var(--hk-promo);font-family:var(--hk-font);font-weight:700;font-size:13px;white-space:normal;text-wrap:balance}
@media (min-width:1200px){body.single-courses .tutor-single-course-sidebar{position:sticky;top:24px}}
@media (max-width:767px){
  /* Tutor's info tooltips stuck out past the right edge on phones (sideways scroll); show them under the heading instead. */
  body.single-courses .tutor-accordion-item-header .tooltip-wrap{position:static}
  body.single-courses .tutor-accordion-item-header .tooltip-txt{left:12px!important;right:12px!important;top:100%!important;bottom:auto!important;width:auto!important;max-width:none!important;transform:none!important;margin:0!important}
  body.single-courses .tutor-accordion-item-header .tooltip-txt:after{display:none}
  body.single-courses .tutor-accordion-item-header{font-size:23px}
}

/* Course list (Tutor archive): same type and colours; price above a full-width button so nothing is squeezed */
body.hk-academy .hka-archive-h1{font-family:var(--hk-display)!important;font-weight:800;font-size:clamp(40px,4.6vw,64px)!important;line-height:.95!important;color:var(--hk-navy)!important;letter-spacing:0!important}
body.hk-academy .tutor-course-card{border-radius:0;border:1px solid var(--hk-rule);border-top:2px solid var(--hk-navy);overflow:hidden}
body.hk-academy .tutor-course-card .tutor-course-name,body.hk-academy .tutor-course-card .tutor-course-name a{font-family:var(--hk-display)!important;font-weight:700!important;font-size:26px!important;line-height:1.05!important;color:var(--hk-navy)!important}
body.hk-academy .tutor-course-card .tutor-card-footer>.tutor-d-flex{flex-wrap:wrap;gap:12px}
body.hk-academy .tutor-course-card .tutor-card-footer .list-item-button{flex:1 1 100%}
body.hk-academy .tutor-course-card .tutor-card-footer .tutor-btn{border-radius:3px;min-height:44px;white-space:nowrap;font-weight:700;border-color:var(--hk-go);color:var(--hk-go-dark)}
body.hk-academy .tutor-course-card .tutor-card-footer .tutor-btn:hover{background:#E3F5E9;color:var(--hk-go-dark)}
body.hk-academy .tutor-course-card .list-item-price>span{display:flex;flex-direction:column;gap:2px}
body.hk-academy .tutor-course-card .tutor-item-price span{font-family:var(--hk-display);font-weight:800;font-size:26px;line-height:1;color:var(--hk-ink)}
body.hk-academy .tutor-course-card .tutor-item-price del{font-size:14px;color:var(--hk-muted);margin-left:8px}
body.single-courses .tutor-course-details-content h2{padding-top:4px}

/* Not found (1.22.0): empty A-scan */
body.hka-404 #content .ast-container{display:block;max-width:none;padding:0}
.hka-nf{background:var(--hk-bg)}
.hka-nf-in{max-width:1312px;margin:0 auto;padding:64px var(--hk-pad,clamp(16px,4.4vw,64px)) 88px;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.hka-nf-copy{display:flex;flex-direction:column;gap:18px;min-width:0}
.hka-nf-k{font:500 13px/1.3 var(--hk-mono);letter-spacing:.06em;color:var(--hk-navy)}
body .hka-nf h1{margin:0;font:800 clamp(46px,5.2vw,76px)/.95 var(--hk-display);color:var(--hk-navy);text-wrap:balance;letter-spacing:0}
.hka-nf-copy>p{margin:0;font-size:18px;line-height:1.55;color:var(--hk-ink-2);max-width:30em}
.hka-nf-ctas{display:flex;flex-wrap:wrap;gap:12px}
.hka-nf-out{border:1.5px solid var(--hk-navy);color:var(--hk-navy)!important;background:#fff}
.hka-nf-out:hover{background:var(--hk-tint)}
.hka-nf-s{display:flex;flex-direction:column;gap:6px;padding-top:18px;border-top:1px solid var(--hk-rule);max-width:520px;margin:0}
.hka-nf-s label{font-size:14.5px;font-weight:700;color:var(--hk-ink-2)}
.hka-nf-s span{display:flex;gap:8px}
.hka-nf-s input{flex:1 1 auto;min-width:0;box-sizing:border-box;min-height:48px;padding:0 14px;border:1.5px solid var(--hk-field);border-radius:3px;background:#fff;color:var(--hk-ink);font:400 16px var(--hk-font)}
.hka-nf-s input:focus{outline:3px solid var(--hk-check);outline-offset:1px;border-color:var(--hk-navy)}
.hka-nf-s button{flex:none;min-height:48px;padding:0 18px;border:0;background:var(--hk-navy);color:#fff;font:700 15.5px var(--hk-font);border-radius:3px;cursor:pointer}
.hka-nf-s button:hover{background:#00152E}
.hka-nf-scan{margin:0;background:#00152E;border:1px solid #12386B;padding:16px 16px 12px;display:flex;flex-direction:column;gap:10px;min-width:0}
.hka-nf-read{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hka-nf-read span{display:flex;flex-direction:column;min-width:0}
.hka-nf-read i{font:normal 11px/1.4 var(--hk-mono);color:#8FA3BF}
.hka-nf-read b{font:400 19px/1.3 var(--hk-mono);color:#fff;white-space:nowrap}
.hka-nf-read b.g{color:var(--hk-check)}
.hka-nf-scan svg{width:100%;height:auto;display:block}
.hka-nf-scan .t1{font:600 15px var(--hk-mono)}
.hka-nf-scan .t2{font:600 14px var(--hk-mono)}
@media (max-width:900px){.hka-nf-in{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:48px;padding-bottom:64px}}
@media (max-width:420px){.hka-nf-read b{font-size:15px}}

/* Articles and lists (1.22.0, canvas "Article") */
body.hka-blog #content .ast-container{display:block;max-width:none;padding:0}
body.hka-blog #content{padding:0;margin:0}
.hka-art{background:var(--hk-bg);color:var(--hk-ink);font-family:var(--hk-font)}
.hka-art-wrap{max-width:1312px;margin:0 auto;padding-left:var(--hk-pad);padding-right:var(--hk-pad);box-sizing:border-box}
.hka-art-head{background:#fff;border-bottom:1px solid var(--hk-rule)}
.hka-art-head .hka-art-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding-top:36px;padding-bottom:38px}
a.hka-art-crumb{font-size:14.5px;color:var(--hk-muted);text-decoration:none}
a.hka-art-crumb:hover{color:var(--hk-navy);text-decoration:underline;text-underline-offset:3px}
.hka-art-k{font:500 13px/1.3 var(--hk-mono);letter-spacing:.08em;color:var(--hk-go-text);text-transform:uppercase}
body .hka-art-head h1{margin:2px 0 0;max-width:24ch;font:800 clamp(40px,4.9vw,68px)/.98 var(--hk-display);color:var(--hk-navy);letter-spacing:0;text-wrap:balance}
.hka-art-by{margin:2px 0 0;font-size:15px;line-height:1.5;color:var(--hk-muted)}
.hka-art-grid{display:grid;grid-template-columns:minmax(0,766px) 296px;justify-content:space-between;gap:56px;padding-top:40px;padding-bottom:88px}
.hka-art-body{min-width:0;font-size:18px;line-height:1.65;color:var(--hk-ink)}
.hka-art-body>*:first-child{margin-top:0}
.hka-art-body p{margin:0 0 18px}
.hka-art-body>p:first-child{margin:0 0 36px;padding:2px 0 2px 20px;border-left:3px solid var(--hk-check);font-size:20px;line-height:1.6;color:var(--hk-ink-2)}
body .hka-art-body h2{margin:44px 0 12px;font:800 clamp(28px,2.6vw,34px)/1.05 var(--hk-display);color:var(--hk-navy);letter-spacing:0;scroll-margin-top:24px}
body .hka-art-body h3{margin:32px 0 10px;font:800 24px/1.1 var(--hk-display);color:var(--hk-navy);letter-spacing:0}
.hka-art-body a{color:var(--hk-navy);text-decoration:underline;text-underline-offset:3px}
.hka-art-body a:hover{color:var(--hk-navy-dark)}
.hka-art-body ul,.hka-art-body ol{margin:0 0 18px;padding-left:1.3em}
.hka-art-body li{margin:0 0 6px}
.hka-art-body strong,.hka-art-body b{font-weight:700;color:var(--hk-ink)}
.hka-tbl{margin:20px 0 32px;overflow-x:auto;background:#fff;border:1px solid var(--hk-rule);-webkit-overflow-scrolling:touch}
.hka-tbl:focus-visible{outline:3px solid var(--hk-check);outline-offset:2px}
.hka-art-body .hka-tbl table{width:100%;min-width:600px;margin:0;border:0;border-collapse:collapse;font-size:15px;line-height:1.45}
.hka-art-body .hka-tbl th{padding:14px;border:0;background:var(--hk-navy);color:#fff;font:600 12.5px/1.3 var(--hk-mono);letter-spacing:.08em;text-transform:uppercase;text-align:left;vertical-align:bottom}
.hka-art-body .hka-tbl td{padding:14px;border:0;border-top:1px solid var(--hk-rule);vertical-align:top;text-align:left;color:var(--hk-ink)}
.hka-art-body .hka-tbl tr:first-child td{border-top:0}
.hka-art-body .hka-tbl td:first-child{font-weight:700;color:var(--hk-navy)}
.hka-art-body .hka-article-src{margin-top:28px;font-size:13.5px;line-height:1.5;color:var(--hk-muted)}
a.hka-art-next{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:48px 0 0;padding:20px 22px;background:#fff;border:1px solid var(--hk-rule);border-top:2px solid var(--hk-navy);color:var(--hk-navy);text-decoration:none}
a.hka-art-next:hover{background:var(--hk-tint)}
a.hka-art-next>span{display:flex;flex-direction:column;gap:6px;min-width:0}
a.hka-art-next i{font:normal 500 12.5px/1.3 var(--hk-mono);letter-spacing:.08em;color:var(--hk-muted)}
a.hka-art-next b{font:800 24px/1.15 var(--hk-display);color:var(--hk-navy)}
a.hka-art-next svg{flex:none}
.hka-art-side{position:sticky;top:24px;align-self:start;display:flex;flex-direction:column;gap:32px}
.hka-art-tk{font:500 12.5px/1.3 var(--hk-mono);letter-spacing:.08em;color:var(--hk-muted)}
.hka-art-toc ol{list-style:none;margin:12px 0 0;padding:0;border-left:2px solid var(--hk-rule)}
.hka-art-toc li{margin:0}
.hka-art-toc a{display:block;margin-left:-2px;padding:7px 0 7px 14px;border-left:2px solid transparent;font-size:15px;line-height:1.35;color:var(--hk-ink-2);text-decoration:none}
.hka-art-toc a:hover{color:var(--hk-navy);text-decoration:underline;text-underline-offset:3px}
.hka-art-toc a[aria-current]{border-left-color:var(--hk-navy);color:var(--hk-navy);font-weight:700}
.hka-art-cta{display:flex;flex-direction:column;gap:10px;padding:22px 20px 20px;background:var(--hk-navy);color:#fff}
.hka-art-ck{font:500 12.5px/1.3 var(--hk-mono);letter-spacing:.08em;color:var(--hk-check)}
.hka-art-cta .hka-art-ct{margin:0;font:800 30px/1 var(--hk-display);color:#fff}
.hka-art-cta .hka-art-cd{margin:0;font-size:15px;line-height:1.5;color:var(--hk-lilac-2)}
.hka-art-codes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0 4px}
.hka-art-codes a{display:flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--hk-ghost);color:#fff!important;font:800 24px/1 var(--hk-display);text-decoration:none!important}
.hka-art-codes a:hover{background:var(--hk-line-dark)}
.hka-art-cta .hka-art-go{width:100%;min-height:48px;font-size:16px;white-space:normal;text-align:center}
.hka-list .hka-list-d{margin:2px 0 0;max-width:46em;font-size:18px;line-height:1.55;color:var(--hk-ink-2)}
.hka-list-s{display:flex;gap:8px;width:100%;max-width:560px;margin:8px 0 0}
.hka-list-s input{flex:1 1 auto;min-width:0;height:48px;padding:0 14px;border:1px solid var(--hk-field);border-radius:3px;background:#fff;font:400 16px var(--hk-font);color:var(--hk-ink)}
.hka-list-s input:focus{outline:3px solid var(--hk-check);outline-offset:1px;border-color:var(--hk-navy)}
.hka-list-s button{flex:none;height:48px;padding:0 20px;border:0;border-radius:3px;background:var(--hk-navy);color:#fff;font:700 16px var(--hk-font);cursor:pointer}
.hka-list-s button:hover{background:var(--hk-navy-dark)}
.hka-list-body{padding-top:40px;padding-bottom:88px}
.hka-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.hka-card{position:relative;display:flex;flex-direction:column;gap:10px;margin:0;padding:24px 24px 22px;background:#fff;border:1px solid var(--hk-rule);border-top:2px solid var(--hk-navy)}
.hka-card:hover{background:#FBFCFE;border-color:var(--hk-lilac-3);border-top-color:var(--hk-navy)}
.hka-card-k{font:500 12.5px/1.3 var(--hk-mono);letter-spacing:.08em;color:var(--hk-go-text);text-transform:uppercase}
body .hka-card h2{margin:0;font:800 26px/1.08 var(--hk-display);letter-spacing:0;text-wrap:balance}
.hka-card h2 a{color:var(--hk-navy);text-decoration:none}
.hka-card h2 a::after{content:"";position:absolute;inset:0}
.hka-card h2 a:focus-visible{outline:none}
.hka-card:focus-within{outline:3px solid var(--hk-check);outline-offset:2px}
.hka-card p{margin:0;font-size:16px;line-height:1.55;color:var(--hk-ink-2)}
.hka-card-m{margin-top:auto;padding-top:8px;font:500 13px/1.3 var(--hk-mono);color:var(--hk-muted)}
.hka-list-body .navigation.pagination{margin:40px 0 0}
.hka-list-body .nav-links{display:flex;flex-wrap:wrap;gap:6px}
.hka-list-body .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--hk-rule);background:#fff;color:var(--hk-navy);font:500 15px var(--hk-mono);text-decoration:none}
.hka-list-body .page-numbers.current{background:var(--hk-navy);border-color:var(--hk-navy);color:#fff}
.hka-list-none{display:flex;flex-direction:column;gap:18px;max-width:640px}
.hka-list-none p{margin:0;font-size:18px;line-height:1.55;color:var(--hk-ink-2)}
@media (max-width:1100px){
  .hka-art-grid{grid-template-columns:minmax(0,1fr) 260px;gap:40px}
  .hka-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .hka-art-grid{grid-template-columns:minmax(0,1fr);padding-top:28px;padding-bottom:64px}
  .hka-art-side{display:none}
}
@media (max-width:600px){
  .hka-art-head .hka-art-wrap{padding-top:28px;padding-bottom:28px;gap:10px}
  .hka-art-body{font-size:17px}
  .hka-art-body>p:first-child{font-size:18.5px;padding-left:16px}
  .hka-art-body .hka-tbl table{min-width:520px;font-size:14.5px}
  .hka-art-body .hka-tbl th,.hka-art-body .hka-tbl td{padding:12px}
  a.hka-art-next{padding:18px 16px}
  a.hka-art-next b{font-size:22px}
  .hka-cards{grid-template-columns:minmax(0,1fr);gap:16px}
  .hka-card{padding:20px 18px 18px}
  .hka-list-body{padding-top:28px;padding-bottom:64px}
}
