
:root{
  --ground:#F4F6F9; --surface:#FFFFFF; --surface-2:#EDEFF3; --panel:#14181C;
  --ink:#171A20; --muted:#697079; --line:#E5E8EE; --tint:#FCF1F1;
  --teal:#2A8F86; --teal-bright:#58C0B8; --deep:#0C3A35; --deepest:#082A26;
  --coral:#F85058; --coral-d:#E23A44; --coral-soft:rgba(248,80,88,.10);
  --gold:#F6C049; --gold-d:#C98F22;
  --good:#1F9D6B; --good-bg:#E4F5EC; --bad:#D8434E; --bad-bg:#FBE7E8;
  --disp:'Space Grotesk',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,Menlo,monospace; --hand:'Caveat','Segoe Print',cursive; --body:'Inter',system-ui,sans-serif;
  --shadow:0 24px 50px -26px rgba(20,24,30,.28); --shadow-sm:0 10px 26px -16px rgba(20,24,30,.20);
  --r:16px; --r-sm:11px;
  --ecg:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20260%2040%22%3E%3Cpath%20d%3D%22M0%2020%20H74%20l9%20-13%2011%2025%2010%20-33%2011%2041%209%20-20%20H260%22%20fill%3D%22none%22%20stroke%3D%22%23F85058%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E");
  --crossw:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2246%22%20height%3D%2246%22%20viewBox%3D%220%200%2046%2046%22%3E%3Cpath%20d%3D%22M20%2013%20h6%20v7%20h7%20v6%20h-7%20v7%20h-6%20v-7%20h-7%20v-6%20h7%20z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E");
  --crossd:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2246%22%20height%3D%2246%22%20viewBox%3D%220%200%2046%2046%22%3E%3Cpath%20d%3D%22M20%2013%20h6%20v7%20h7%20v6%20h-7%20v7%20h-6%20v-7%20h-7%20v-6%20h7%20z%22%20fill%3D%22%230f1216%22%2F%3E%3C%2Fsvg%3E");
  --shieldmask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M12%202%204%205v6c0%205%203.4%208.5%208%2011%204.6-2.5%208-6%208-11V5z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E");
}
:root:not([data-theme="light"]) { }
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ground:#0E1013; --surface:#171A20; --surface-2:#14181C; --panel:#0B0D10;
    --ink:#EAECEF; --muted:#9AA0A8; --line:#282C34; --tint:#161217;
    --teal:#58C0B8;
    --shadow:0 24px 50px -26px rgba(0,0,0,.6); --shadow-sm:0 10px 26px -16px rgba(0,0,0,.55);
  }
}
:root[data-theme="dark"]{
  --ground:#0E1013; --surface:#171A20; --surface-2:#14181C; --panel:#0B0D10;
  --ink:#EAECEF; --muted:#9AA0A8; --line:#282C34; --tint:#161217;
  --teal:#58C0B8;
  --shadow:0 24px 50px -26px rgba(0,0,0,.6); --shadow-sm:0 10px 26px -16px rgba(0,0,0,.55);
}
*{box-sizing:border-box}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--disp);line-height:1.12;margin:0;text-wrap:balance;letter-spacing:-.01em}
a{color:inherit}
.wrap{max-width:1160px;margin:0 auto;padding-inline:24px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--coral)}
.eyebrow::before{content:"";width:15px;height:15px;flex:none;background:currentColor;-webkit-mask:var(--crossw) center/contain no-repeat;mask:var(--crossw) center/contain no-repeat}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:600;font-size:14.5px;border-radius:999px;padding:11px 20px;border:0;cursor:pointer;text-decoration:none;transition:transform .15s,box-shadow .2s,background .2s}
.btn-coral{background:var(--coral);color:#fff;box-shadow:0 12px 24px -12px rgba(248,80,88,.7)}
.btn-coral:hover{background:var(--coral-d);transform:translateY(-1px)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--teal)}

/* ---- DEMO ribbon ---- */
.demo-note{background:#0B0D10;color:#C7CCD2;text-align:center;font-size:12.5px;letter-spacing:.02em;padding:7px 16px;font-family:var(--disp);font-weight:500}
.demo-note b{color:#fff}

/* ---- Top bar ---- */
.topbar{background:#14181C;color:#E7EDEA}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:9px;flex-wrap:wrap}
.topbar .tinfo{display:flex;gap:22px;flex-wrap:wrap;font-size:13.5px}
.topbar .tinfo a{display:inline-flex;align-items:center;gap:7px;color:#E7EDEA;text-decoration:none}
.topbar .tinfo a:hover{color:#fff}
.topbar svg{width:15px;height:15px;color:var(--teal-bright);flex:none}
.topbar .btn{padding:7px 15px;font-size:13px}

/* ---- Header ---- */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--surface);border-bottom:1px solid var(--line)}
.hdr .wrap{display:flex;align-items:center;gap:20px;padding-block:14px}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand img{height:44px;width:auto;display:block}
.nav{display:flex;gap:6px;margin-left:auto;align-items:center}
.nav a{font-family:var(--disp);font-weight:600;font-size:14.5px;color:var(--ink);text-decoration:none;padding:9px 14px;border-radius:9px;display:inline-flex;align-items:center;gap:7px}
.nav a:hover{background:var(--surface-2);color:var(--teal)}
.navkit{width:17px;height:17px;flex:none;color:var(--teal)}
.nav a:hover .navkit{color:var(--coral)}
/* Request training = ambulance lightbar (girofar): half red / half blue, alternating flash */
.navcta{position:relative;overflow:hidden;color:#fff!important;background:linear-gradient(90deg,#F85058 0 50%,#2E6BF0 50% 100%)!important;animation:cta-emer 1s steps(1,end) infinite}
.navcta .lbl{position:relative;z-index:3;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.navcta::before,.navcta::after{content:"";position:absolute;top:0;bottom:0;width:50%;z-index:1;pointer-events:none;background:rgba(255,255,255,.5);mix-blend-mode:screen}
.navcta::before{left:0;animation:cta-flashL 1s steps(1,end) infinite}
.navcta::after{right:0;animation:cta-flashR 1s steps(1,end) infinite}
@keyframes cta-flashL{0%,49%{opacity:.6}50%,100%{opacity:0}}
@keyframes cta-flashR{0%,49%{opacity:0}50%,100%{opacity:.6}}
@keyframes cta-emer{0%,49%{box-shadow:-6px 7px 20px -8px rgba(248,80,88,.95),0 0 15px 1px rgba(248,80,88,.55)}50%,100%{box-shadow:6px 7px 20px -8px rgba(46,107,240,.95),0 0 15px 1px rgba(46,107,240,.6)}}
.navcta:hover{animation-duration:.7s}
@media(prefers-reduced-motion:reduce){.navcta{animation:none}.navcta::before,.navcta::after{display:none}}
.menu-btn{display:none;margin-left:auto;background:transparent;border:1.5px solid var(--line);border-radius:9px;padding:8px 10px;cursor:pointer;color:var(--ink)}
.menu-btn svg{width:22px;height:22px;display:block}

/* ---- Intro ---- */
.intro{background:linear-gradient(160deg,var(--deep),var(--deepest));color:#fff;position:relative;overflow:hidden}
.intro .wrap{padding-block:56px 62px;position:relative;z-index:2;display:grid;grid-template-columns:.86fr 1.14fr;gap:44px;align-items:center}
.intro .wrap>*{min-width:0}
.intro .eyebrow{color:var(--teal-bright)}
.intro h1{font-size:clamp(30px,4.4vw,50px);margin:14px 0 14px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.intro h1 span{color:var(--gold);
  text-shadow:0 1px 0 var(--gold-d),0 2px 0 #bd8420,0 3px 0 #ac7a1e,0 4px 0 #97691a,0 6px 12px rgba(0,0,0,.5)}
.intro p{max-width:56ch;color:#CFE4E0;font-size:16.5px;margin:0}
.intro .halo{position:absolute;right:-160px;top:-140px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(88,192,184,.30),transparent 66%);z-index:1}
.hcross{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.hcross i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);opacity:0;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M9.5%203h5v6.5H21v5h-6.5V21h-5v-6.5H3v-5h6.5z%22%20fill%3D%22%23F85058%22%20stroke%3D%22%23F85058%22%20stroke-width%3D%222%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;filter:drop-shadow(0 0 14px rgba(248,80,88,.7));animation:xfade var(--d) ease-in-out var(--w) infinite}
@keyframes xfade{0%,100%{opacity:0;transform:scale(.55) rotate(-10deg)}40%,60%{opacity:var(--o);transform:scale(1) rotate(0)}}
@media(prefers-reduced-motion:reduce){.hcross i{animation:none;opacity:calc(var(--o)*.5)}}
.intro .chips{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}
.intro .chips span{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#F1F7F6;font-size:13px;font-weight:600;padding:7px 15px 7px 7px;border-radius:999px}
.intro .chips .ic{width:25px;height:25px;border-radius:50%;background:var(--coral);display:grid;place-items:center;color:#fff;flex:none;box-shadow:0 4px 10px -3px rgba(248,80,88,.8)}
.intro .chips .ic svg{width:14px;height:14px}
.hero-img{position:relative}
.hero-img img{width:100%;height:auto;display:block;border-radius:16px;box-shadow:0 34px 64px -26px rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.12)}

/* ---- Sections ---- */
.sec{padding-block:76px}
.sec-head{text-align:center;max-width:64ch;margin:0 auto 44px}
.sec-head::after{content:"";display:block;width:118px;height:20px;margin:16px auto 0;background:var(--ecg) center/contain no-repeat}
.sec-head h2{font-size:clamp(26px,3.6vw,38px);margin:12px 0 10px}
.sec-head p{color:var(--muted);margin:0;font-size:16.5px}

/* ---- Courses ---- */
.courses{background:var(--surface)}
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.course-grid>:last-child:nth-child(3n+1){grid-column:2}
.ccard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}
.ccard:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.cphoto{aspect-ratio:16/9;position:relative;background:var(--panel);display:grid;place-items:center;overflow:hidden}
.cphoto img{width:100%;height:100%;object-fit:cover;display:block}
.cphoto.has-img::before,.cphoto.has-img::after{display:none}
.cphoto.ph::after{display:none}
.ph-wrap{position:relative;z-index:1;text-align:center;padding:14px}
.ph-title{display:block;font-family:var(--disp);font-weight:700;font-size:21px;color:#fff}
.ph-sub{display:block;font-family:var(--disp);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:7px}
.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}
.cphoto::before{content:"";position:absolute;inset:0;background:var(--pat,var(--crossw)) 0 0/48px 48px;opacity:.08;pointer-events:none}
.cphoto.p-firstaid{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M21%2015%20h6%20v6%20h6%20v6%20h-6%20v6%20h-6%20v-6%20h-6%20v-6%20h6%20z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-cardiac{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M24%2033%20C16%2027%2012%2022.5%2014.5%2018%20C16%2015.4%2020%2015.6%2022%2018.4%20C22.6%2019.2%2023.4%2019.2%2024%2018.4%20C26%2015.6%2030%2015.4%2031.5%2018%20C34%2022.5%2030%2027%2024%2033%20Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-manual{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M24%2014%20L33%2018.5%20L24%2023%20L15%2018.5%20Z%20M15%2020%20L23%2024%20L23%2034%20L15%2030%20Z%20M33%2020%20L25%2024%20L25%2034%20L33%2030%20Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-fire{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M24%2014%20C27%2019%2031%2020.5%2031%2025.6%20A7%207%200%200%201%2017%2025.6%20C17%2023.6%2017.9%2022.1%2019.2%2020.9%20C19.9%2023%2022.4%2022%2022%2018.2%20C22.5%2020%2023.2%2017%2024%2014%20Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-food{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M24%2020.5%20C21%2017.8%2015%2018.8%2015%2025.2%20C15%2031%2019%2036.6%2024%2036.6%20C29%2036.6%2033%2031%2033%2025.2%20C33%2018.8%2027%2017.8%2024%2020.5%20Z%22%20fill%3D%22%23ffffff%22%2F%3E%3Cpath%20d%3D%22M25%2018.6%20c1.6%20-2.6%204.4%20-3%205.6%20-3%20c0%201.8%20-1%203.8%20-2.8%204.6%20c-1%20.5%20-1.9%20.3%20-2.8%20-1.6%20z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-reps{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Ccircle%20cx%3D%2224%22%20cy%3D%2219.5%22%20r%3D%224.3%22%20fill%3D%22%23ffffff%22%2F%3E%3Cpath%20d%3D%22M15%2035%20C15%2028.6%2019%2025.4%2024%2025.4%20C29%2025.4%2033%2028.6%2033%2035%20Z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto.p-cons{--pat:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2248%22%20height%3D%2248%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cpath%20d%3D%22M17%2015.5%20h14%20a1%201%200%200%201%201%201%20v19%20a1%201%200%200%201%20-1%201%20h-14%20a1%201%200%200%201%20-1%20-1%20v-19%20a1%201%200%200%201%201%20-1%20z%20M21%2013%20h6%20v4%20h-6%20z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E")}
.cphoto::after{content:"Course photo";position:absolute;font-family:var(--disp);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.38)}
.cphoto .badge{position:absolute;top:13px;left:13px;font-family:var(--disp);font-size:11px;font-weight:600;color:#fff;background:var(--coral);padding:5px 11px;border-radius:999px;z-index:2}
.cicon{position:absolute;bottom:-24px;right:18px;width:54px;height:54px;border-radius:14px;background:linear-gradient(150deg,#ff7a75,var(--coral));display:grid;place-items:center;color:#fff;box-shadow:0 14px 24px -10px rgba(248,80,88,.55);z-index:3}
.cicon svg{width:27px;height:27px}
.ccard .in{padding:22px;display:flex;flex-direction:column;gap:12px;flex:1}
.ccard h3{font-size:19px;margin:0}
.ccard .cdesc{color:var(--muted);font-size:14.5px;margin:0;flex:1}
.cmeta{display:flex;flex-wrap:wrap;gap:7px}
.cmeta span{font-size:11.5px;font-weight:600;color:var(--coral-d);background:var(--coral-soft);padding:4px 10px;border-radius:999px;font-family:var(--disp)}
.ccard .btn{justify-content:center;width:100%}
.ccard.cons .cphoto{background:linear-gradient(150deg,#8a2229,var(--coral-d))}
.ccard.cons .cphoto::after{content:"Consultancy"}
.ccard.cons .cicon{background:linear-gradient(150deg,#ff8a84,var(--coral));box-shadow:0 14px 24px -10px rgba(248,80,88,.8)}

/* ---- Courses: dark with teal glow, white waves, first-aid signs ---- */
.courses{position:relative;overflow:hidden;--ink:#fff;--muted:#99A3AA;color:#fff;
  background:radial-gradient(60% 40% at 50% 0%,rgba(88,192,184,.16),transparent 65%),radial-gradient(50% 35% at 50% 100%,rgba(88,192,184,.10),transparent 70%),#101417}
.courses .wrap{position:relative;z-index:2}
.courses .sec-head h2{color:#fff}
.courses .sec-head p{color:#A3ADB4}
.courses .sec-head p b{color:#fff}
.courses .eyebrow{color:var(--teal-bright)}
.courses .sec-head::after{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%20260%2040%22%3E%3Cpath%20d%3D%22M0%2020%20H74%20l9%20-13%2011%2025%2010%20-33%2011%2041%209%20-20%20H260%22%20fill%3D%22none%22%20stroke%3D%22%2358C0B8%22%20stroke-width%3D%223%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E")}
.courses .ccard{background:#151B1F;border:1px solid rgba(88,192,184,.35);box-shadow:0 0 0 1px rgba(88,192,184,.06),0 18px 34px -22px rgba(0,0,0,.8);transition:transform .2s,box-shadow .25s,border-color .25s}
.courses .ccard:hover{border-color:#58C0B8;box-shadow:0 0 28px -4px rgba(88,192,184,.45),0 18px 34px -22px rgba(0,0,0,.8)}
.courses .ccard .cdesc{color:#BCC6CC}
.courses .cmeta span{background:rgba(88,192,184,.10);color:#8EE0D8;border:1px solid rgba(88,192,184,.25)}
.courses .ccard .btn-coral{background:linear-gradient(90deg,#2A8F86,#3BB58A);color:#fff;box-shadow:0 10px 22px -10px rgba(59,181,138,.8)}
.courses .ccard .btn-coral:hover{filter:brightness(1.1);transform:translateY(-1px)}
.cwaves{position:absolute;inset:0;z-index:0;pointer-events:none}
.cwaves svg{position:absolute;left:0;width:100%;height:46%}
.cwaves .wt{top:4%}.cwaves .wb{bottom:0;transform:scaleY(-1)}
.cwaves path{transform-box:fill-box;transform-origin:center;animation:cwave 14s ease-in-out infinite alternate}
.cwaves path:nth-child(2){animation-duration:18s;animation-delay:-4s}
.cwaves path:nth-child(3){animation-duration:22s;animation-delay:-9s}
@keyframes cwave{from{transform:translateX(-2%) translateY(0)}to{transform:translateX(2%) translateY(12px)}}
.cfa{position:absolute;inset:0;z-index:1;pointer-events:none}
.cfa i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22%232A8F86%22/%3E%3Crect%20x%3D%221%22%20y%3D%221%22%20width%3D%2222%22%20height%3D%2222%22%20rx%3D%226%22%20fill%3D%22none%22%20stroke%3D%22%2358C0B8%22%20stroke-opacity%3D%22.6%22/%3E%3Cpath%20d%3D%22M10%205.5h4v4.5h4.5v4H14v4.5h-4V14H5.5v-4H10z%22%20fill%3D%22%23ffffff%22/%3E%3C/svg%3E") center/contain no-repeat;opacity:0;filter:drop-shadow(0 0 10px rgba(88,192,184,.45));animation:cfa var(--d) ease-in-out var(--w) infinite}
@keyframes cfa{0%,100%{opacity:0;transform:scale(.7) rotate(-8deg)}40%,60%{opacity:var(--o);transform:none}}
@media (max-width:900px){.cfa i:nth-child(n+7){display:none}}
@media (prefers-reduced-motion:reduce){.cwaves path,.cfa i{animation:none}.cfa i{opacity:calc(var(--o)*.6)}}
/* course topics (expandable) + placeholder banners */
.ctopics{border-top:1px solid rgba(88,192,184,.18);padding-top:10px}
.ctopics summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:var(--disp);font-weight:600;font-size:13.5px;color:#8EE0D8;padding:2px 0}
.ctopics summary::-webkit-details-marker{display:none}
.ctopics summary::after{content:"+";font-size:20px;line-height:1;color:#58C0B8;transition:transform .2s}
.ctopics[open] summary::after{transform:rotate(45deg)}
.ctopics summary:hover{color:#B5F0EA}
.ctopics summary:focus-visible{outline:2px solid #58C0B8;outline-offset:3px;border-radius:4px}
.ctopics ul{margin:10px 0 4px;padding:0;list-style:none;display:grid;gap:7px}
.ctopics li{position:relative;padding-left:20px;font-size:13.5px;line-height:1.45;color:#C9D2D7}
.ctopics li::before{content:"";position:absolute;left:0;top:.38em;width:11px;height:11px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M9.5%203h5v6.5H21v5h-6.5V21h-5v-6.5H3v-5h6.5z%22%20fill%3D%22%2358C0B8%22/%3E%3C/svg%3E") center/contain no-repeat}
.course-grid:has(.ctopics[open]){align-items:start}
.courses .cphoto.ph{background:radial-gradient(70% 90% at 85% 20%,rgba(248,80,88,.28),transparent 60%),linear-gradient(150deg,#1d2a2e,#0f1518)}
.courses .cphoto.ph::before{opacity:.07}
.courses .ph-title{font-size:24px}
.courses .ph-sub{color:#8EE0D8}
.ccard{scroll-margin-top:110px}
.ccard.ping{animation:cping 1.6s ease-out 2}
@keyframes cping{0%{box-shadow:0 0 0 0 rgba(88,192,184,.9)}100%{box-shadow:0 0 0 18px rgba(88,192,184,0)}}
@media (prefers-reduced-motion:reduce){.ccard.ping{animation:none;outline:2px solid #58C0B8}}
/* ---- Booking modal ---- */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:flex-start;justify-content:center;padding:24px;overflow:auto;background:rgba(6,26,23,.6);backdrop-filter:blur(4px)}
.modal.open{display:flex}
.modal-card{background:var(--surface);color:var(--ink);border-radius:20px;max-width:560px;width:100%;margin:auto;box-shadow:0 44px 90px -30px rgba(0,0,0,.65);overflow:hidden;animation:pop .25s ease}
@keyframes pop{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.modal-head{background:linear-gradient(150deg,#1b2027,#0e1216);color:#fff;padding:22px 52px 22px 24px;position:relative}
.modal-head .eyebrow{color:var(--coral)}
.modal-head h3{font-size:22px;color:#fff;margin:6px 0 2px}
.modal-head p{margin:0;color:#CFE4E0;font-size:13.5px}
.modal-x{position:absolute;top:16px;right:16px;width:34px;height:34px;border-radius:9px;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;font-size:19px;line-height:1}
.modal-x:hover{background:rgba(255,255,255,.24)}
.modal-body{padding:24px}
.modal-body .field select{width:100%;background:var(--ground);border:1.5px solid var(--line);border-radius:10px;padding:11px 13px;font-family:var(--body);font-size:15px;color:var(--ink)}
.modal-body .field select:focus{outline:none;border-color:var(--teal)}

/* ---- Quiz (Dark Pro tablet) ---- */
.quiz{background:var(--surface-2)}
/* ---------- Tablet 4: Dark Pro ---------- */
.t4stage{position:relative;overflow:hidden;border-radius:18px;padding:44px 20px 58px;display:flex;justify-content:center;
  background:radial-gradient(120% 70% at 50% 110%,rgba(226,58,68,.38),transparent 60%),linear-gradient(180deg,#151a21,#07090c 75%);box-shadow:var(--shadow)}
.t4peaks{position:absolute;inset:auto 0 30% 0;height:45%;background:linear-gradient(180deg,#1d242c,#0d1115);opacity:.75;
  clip-path:polygon(0 70%,10% 45%,18% 58%,30% 20%,41% 52%,52% 30%,63% 55%,74% 12%,86% 48%,100% 28%,100% 100%,0 100%)}
.t4floor{position:absolute;left:8%;right:8%;bottom:30px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#F85058,transparent);box-shadow:0 0 24px 6px rgba(248,80,88,.45)}
.t4dev{position:relative;width:100%;max-width:780px;border-radius:30px;padding:16px;background:linear-gradient(150deg,#2a3038,#0c0f13 40%,#161b21);
  box-shadow:0 40px 70px -30px rgba(0,0,0,.9),inset 0 0 0 1.5px #3a424b,10px 0 26px -12px rgba(248,80,88,.75);
  transform:perspective(1800px) rotateY(-7deg) rotateX(4deg);transition:transform .6s ease}
.t4dev:hover{transform:perspective(1800px) rotateY(0) rotateX(0)}
.t4cam{position:absolute;top:50%;left:7px;transform:translateY(-50%);width:6px;height:6px;border-radius:50%;background:#26303a}
.t4btn{position:absolute;right:-3px;top:60px;width:4px;height:52px;border-radius:2px;background:#F85058;box-shadow:0 0 10px #F85058}
.t4scr{background:radial-gradient(90% 60% at 80% 0%,rgba(248,80,88,.08),transparent 60%),linear-gradient(170deg,#141a20,#0c1014);border-radius:18px;padding:16px 20px 18px;color:#e9eef1;display:flex;flex-direction:column;gap:12px;min-height:440px}
.t4bar{display:flex;justify-content:space-between;align-items:center;font-family:var(--disp);font-size:14px;color:#cfd6db}
.t4logo{display:flex;align-items:center}.t4logo img{width:24px;height:24px;margin-right:9px}.t4logo b{color:#fff}
.t4score{display:flex;align-items:center;gap:7px;border:1.5px solid rgba(248,80,88,.6);background:rgba(248,80,88,.1);color:#ffd6d8;border-radius:10px;padding:5px 12px;font-family:var(--disp);font-weight:600;font-size:13px;box-shadow:0 0 14px -4px rgba(248,80,88,.7)}
.t4score svg{width:16px;height:16px;color:#F85058}
.t4segs{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}
.t4segs i{height:6px;border-radius:4px;background:#2a3239;transition:background .3s,box-shadow .3s}
.t4segs i.ok{background:#2ed47f;box-shadow:0 0 8px rgba(46,212,127,.6)}
.t4segs i.no{background:#F85058;box-shadow:0 0 8px rgba(248,80,88,.6)}
.t4segs i.cur{background:#8a949c}
.t4meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#8e9aa2}
.t4time{display:flex;align-items:center;gap:6px;letter-spacing:.04em}.t4time svg{width:16px;height:16px}
.t4main{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;flex:1}
.t4main>*{min-width:0}
.t4text{font-family:var(--disp);font-weight:700;font-size:clamp(17px,2.2vw,22px);line-height:1.25;color:#fff;margin-bottom:14px;text-wrap:balance}
.t4opts{display:flex;flex-direction:column;gap:9px}
.t4o{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#1a2027;border:1.5px solid #2b333b;border-radius:12px;padding:11px 13px;color:#dfe5e9;font:500 14px/1.35 var(--body);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .2s}
.t4o:hover:not(:disabled){border-color:#58606a;background:#1f262e}
.t4o:focus-visible{outline:2px solid #58C0B8;outline-offset:2px}
.t4o:disabled{cursor:default}
.t4o .k{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:rgba(248,80,88,.16);color:#ff7c83;font-family:var(--disp);font-weight:700;font-size:13px}
.t4o .ck{margin-left:auto;flex:none;width:24px;height:24px;border-radius:50%;display:none;place-items:center}
.t4o.ok{border-color:#2ed47f;background:rgba(46,212,127,.12);color:#d6ffe9;box-shadow:0 0 18px -4px rgba(46,212,127,.6)}
.t4o.ok .k{background:#2ed47f;color:#06301b}.t4o.ok .ck{display:grid;background:#2ed47f;color:#06301b}
.t4o.no{border-color:#F85058;background:rgba(248,80,88,.12);color:#ffd9db}
.t4o.no .k{background:#F85058;color:#fff}.t4o.no .ck{display:grid;background:#F85058;color:#fff}
.t4o .ck svg{width:14px;height:14px}
.t4vis{border:1px solid #29313a;background:linear-gradient(160deg,#171d23,#0f1317);border-radius:14px;padding:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}
.t4art{width:100%;max-width:190px;aspect-ratio:1;display:grid;place-items:center}
.t4art svg{width:100%;height:100%}
.t4art svg *{vector-effect:non-scaling-stroke}
.t4tip{font-size:13px;line-height:1.45;color:#9aa6ae;max-width:30ch}
.t4tip b{color:#fff;font-family:var(--disp)}
.t4tip.ok b{color:#2ed47f}.t4tip.no b{color:#ff7c83}
.t4next{border:0;border-radius:999px;padding:13px;font:600 15px var(--disp);color:#fff;background:linear-gradient(180deg,#ff5a62,#e23a44);box-shadow:0 10px 24px -10px rgba(248,80,88,.9);cursor:pointer;transition:opacity .2s}
.t4next:disabled{opacity:.35;cursor:default}
.t4next:focus-visible{outline:2px solid #fff;outline-offset:2px}
.t4done{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:10px}
.t4done .big{font-family:var(--disp);font-weight:700;font-size:52px;color:#fff;line-height:1}
.t4done p{color:#aab5bc;margin:0}
@media (max-width:720px){.t4main{grid-template-columns:1fr}.t4vis{flex-direction:row;text-align:left}.t4art{max-width:84px}.t4dev{transform:none;padding:10px;border-radius:22px}.t4dev:hover{transform:none}.t4scr{padding:14px}}
@media (prefers-reduced-motion:reduce){.t4dev,.t4dev:hover{transform:none;transition:none}}
/* power + boot */
.t4scr{position:relative;overflow:hidden}
.t4btn{border:0;padding:0;cursor:pointer;width:5px;transition:background .3s,box-shadow .3s;z-index:3}
.t4btn::before{content:"";position:absolute;inset:-10px -12px}
.t4btn:hover{box-shadow:0 0 16px 2px #F85058}
.t4btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.t4dev.off{box-shadow:0 40px 70px -30px rgba(0,0,0,.9),inset 0 0 0 1.5px #3a424b}
.t4dev.off .t4btn{background:#5b2a2e;box-shadow:none}
.t4off{position:absolute;inset:0;z-index:5;background:linear-gradient(125deg,rgba(255,255,255,.07),transparent 38%),#030405;opacity:0;pointer-events:none;transition:opacity .45s}
.t4dev.off .t4off{opacity:1;pointer-events:auto}
.t4boot{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  background:radial-gradient(55% 45% at 50% 42%,rgba(248,80,88,.2),transparent 70%),#07090c;opacity:0;pointer-events:none;transition:opacity .6s}
.t4boot.show{opacity:1;pointer-events:auto;transition:opacity .25s}
.t4boot .blogo{width:88px;height:88px;opacity:0;transform:scale(.55);filter:drop-shadow(0 0 20px rgba(88,192,184,.6))}
.t4boot .bn{font-family:var(--disp);font-weight:700;font-size:clamp(24px,4vw,34px);color:#fff;letter-spacing:.4em;opacity:0;margin-top:6px}
.t4boot .bn span{color:#F85058}
.t4boot .bs{font-family:var(--mono);font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:#58C0B8;opacity:0}
.t4boot .becg{width:160px;height:24px;margin-top:10px}
.t4boot .becg path{stroke-dasharray:200;stroke-dashoffset:200}
.t4boot.show .blogo{animation:bLogo .9s cubic-bezier(.2,.8,.25,1.25) .15s forwards}
.t4boot.show .bn{animation:bName 1s ease .65s forwards}
.t4boot.show .bs{animation:bFade .6s ease 1.15s forwards}
.t4boot.show .becg path{animation:bDraw 1.1s ease-in-out 1.3s forwards}
@keyframes bLogo{to{opacity:1;transform:scale(1)}}
@keyframes bName{to{opacity:1;letter-spacing:.06em}}
@keyframes bFade{to{opacity:1}}
@keyframes bDraw{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.t4boot.show .blogo,.t4boot.show .bn,.t4boot.show .bs{animation:none;opacity:1;transform:none;letter-spacing:.06em}.t4boot.show .becg path{animation:none;stroke-dashoffset:0}}
.quiz .t4stage{max-width:1000px;margin:0 auto;
  background:radial-gradient(70% 55% at 50% 0%,rgba(88,192,184,.22),transparent 65%),radial-gradient(90% 60% at 50% 115%,rgba(248,80,88,.28),transparent 60%),linear-gradient(165deg,#0f4a43,#0C3A35 45%,#072622);
  border:1px solid rgba(88,192,184,.18)}
.quiz .t4peaks{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(0,0,0,.18));opacity:.55}
.t4stage .hcross{z-index:0}
.t4dev{z-index:2}
/* power button: always gently pulsing so it gets noticed */
@keyframes pwOn{0%,100%{box-shadow:0 0 6px 1px rgba(248,80,88,.65)}50%{box-shadow:0 0 20px 6px rgba(248,80,88,1)}}
@keyframes pwOff{0%,100%{background:#8d979e;box-shadow:0 0 4px 1px rgba(255,255,255,.35)}50%{background:#fff;box-shadow:0 0 22px 7px rgba(255,255,255,.95)}}
.t4btn{animation:pwOn 1.8s ease-in-out infinite}
.t4dev.off .t4btn{animation:pwOff 1s ease-in-out infinite}
.t4pwtip{position:absolute;left:calc(100% + 14px);top:58px;display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#ffb3b7;white-space:nowrap;pointer-events:none}
.t4pwtip::before{content:"";width:0;height:0;border:5px solid transparent;border-right:7px solid currentColor;margin-left:-6px;animation:pwNudge 1.2s ease-in-out infinite}
.t4dev.off .t4pwtip{color:#fff}
@keyframes pwNudge{0%,100%{transform:translateX(0)}50%{transform:translateX(-5px)}}
.t4offhint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:rgba(255,255,255,.55);font-family:var(--mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;text-align:center;padding:20px;animation:hintBlink 2.4s ease-in-out infinite}
.t4offhint svg{width:34px;height:34px;color:#F85058}
@keyframes hintBlink{0%,100%{opacity:.35}50%{opacity:1}}
@media (max-width:1180px){.t4pwtip{display:none}}
@media (prefers-reduced-motion:reduce){.t4btn,.t4dev.off .t4btn,.t4pwtip::before,.t4offhint{animation:none}}
@media (min-width:721px){.quiz .t4main{grid-template-columns:1fr 1fr}}
.t4art.photo{max-width:100%;aspect-ratio:1}
.t4art.photo img{width:100%;height:100%;object-fit:cover;border-radius:10px;box-shadow:0 12px 26px -14px rgba(0,0,0,.8);animation:t4in .45s ease both}
@keyframes t4in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
@media (max-width:720px){.t4vis.has-photo{flex-direction:column;text-align:center}.t4vis.has-photo .t4art{max-width:100%}}
.qmedal{display:flex;justify-content:center;margin-bottom:4px}
.qmedal svg{animation:medalpop .55s cubic-bezier(.2,.9,.3,1.3) both;filter:drop-shadow(0 10px 14px rgba(201,143,34,.35))}
@keyframes medalpop{0%{transform:scale(.4) rotate(-14deg);opacity:0}60%{transform:scale(1.06)}100%{transform:scale(1) rotate(0);opacity:1}}

/* ---- Quiz on a trainer's desk (white section) ---- */
.quiz{--ink:#171A20;--muted:#697079;position:relative;overflow:hidden;background:#F6F8FA;color:#171A20;padding-bottom:0}
.quiz::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2246%22%20height%3D%2246%22%3E%3Cpath%20d%3D%22M20%2013h6v7h7v6h-7v7h-6v-7h-7v-6h7z%22%20fill%3D%22%230C3A35%22%2F%3E%3C%2Fsvg%3E") 0 0/46px 46px}
.quiz .wrap{position:relative}
.quiz .sec-head h2{color:#171A20}
.quiz .t4stage{background:none!important;border:0!important;box-shadow:none!important;border-radius:0;padding:6px 0 0;overflow:visible;display:block;max-width:none}
.quiz .t4dev{margin:0 auto;box-shadow:0 44px 60px -32px rgba(12,30,30,.6),inset 0 0 0 1.5px #3a424b,10px 0 26px -12px rgba(248,80,88,.75)}
.quiz .t4dev.off{box-shadow:0 44px 60px -32px rgba(12,30,30,.6),inset 0 0 0 1.5px #3a424b}
.quiz .t4pwtip{color:var(--coral-d)}
.quiz .t4dev.off .t4pwtip{color:#171A20}
.t4standwrap{position:relative;z-index:1;width:min(260px,40%);margin:-4px auto -14px}
.t4standwrap svg{display:block;width:100%;height:auto}
.t4desk{position:relative;height:clamp(64px,9vw,120px);margin-inline:calc(50% - 50vw);
  background:repeating-linear-gradient(92deg,rgba(120,80,40,.05) 0 3px,transparent 3px 11px),repeating-linear-gradient(89deg,rgba(255,255,255,.08) 0 2px,transparent 2px 23px),linear-gradient(180deg,#E8D6BC,#D6BE9C 70%,#C8AD87)}
.t4desk::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:linear-gradient(180deg,#F3E6D2,#E0CBAA)}
.t4desk::after{content:"";position:absolute;left:0;right:0;bottom:0;height:16%;background:rgba(0,0,0,.06)}
.t4desk .shade{position:absolute;left:50%;top:6px;transform:translateX(-50%);width:min(520px,60%);height:20px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.25),transparent)}
.t4props{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(100% - 20px);width:min(1280px,100%);height:0;pointer-events:none;z-index:2}
.t4props .prop{position:absolute;bottom:0}
.t4props svg{display:block;width:100%;height:auto}
.t4props .kit{left:2%;width:clamp(96px,10vw,150px)}
.t4props .plant{left:13.5%;width:clamp(42px,4.4vw,66px)}
.t4props .note{right:13%;width:clamp(76px,8vw,120px);bottom:-4px}
.t4props .mug{right:3%;width:clamp(52px,5.4vw,80px)}
.t4props .steam path{opacity:0;animation:t4steam 3.2s ease-in-out infinite}
.t4props .steam path:nth-child(2){animation-delay:1s}.t4props .steam path:nth-child(3){animation-delay:2s}
@keyframes t4steam{0%{opacity:0;transform:translateY(6px)}40%{opacity:.6}100%{opacity:0;transform:translateY(-14px)}}
@media (max-width:1320px){.t4props .plant,.t4props .note{display:none}}
@media (max-width:1180px){.t4props{display:none}}
@media (prefers-reduced-motion:reduce){.t4props .steam path{animation:none;opacity:.4}}
/* ---- Reviews (dark) ---- */
.rev{position:relative;overflow:hidden;background:linear-gradient(165deg,#0d2a30,#081a20 62%,#0a2027);color:#EAF2F1}
.rev::before,.rev::after{content:"";position:absolute;top:50%;transform:translateY(-50%);width:460px;height:460px;opacity:.07;pointer-events:none;z-index:1;background:url("/assets/img/logo_mark.png") center/contain no-repeat}
.rev::before{left:-120px}
.rev::after{right:-120px}
.rev .wrap{position:relative;z-index:2}
.rev .sec-head h2{color:#fff}
.rev .sec-head h2 span{color:var(--coral)}
.rev .sec-head p{color:#9FB6B3}
.rev-rate{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:14px}
.rev-rate .s{color:#F5B426;font-size:19px;letter-spacing:3px}
.rev-rate b{font-family:var(--disp);color:#fff;font-size:15px}
.rev-rate small{color:#8AA4A0;font-size:11px;letter-spacing:.14em}
.rev-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:24px;margin:44px 0}
.rev-grid>.cert{flex:1 1 300px;max-width:370px}
.rev-grid>.cert.blank{max-width:560px}
.cert{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,#ffffff,#f2f7f5);color:#16302c;border-radius:6px;padding:30px 28px 22px;text-align:center;box-shadow:0 26px 44px -20px rgba(0,0,0,.85);outline:2px solid #2A8F86;outline-offset:-10px}
.cert::after{content:"";position:absolute;inset:14px;border:1px solid rgba(42,143,134,.32);border-radius:2px;pointer-events:none}
.cert .ck{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#2A8F86}
.cert h4{font-family:var(--disp);font-size:19px;margin:6px 0 2px;color:#16302c}
.cert .crs{font-family:var(--disp);font-weight:700;font-size:15px;letter-spacing:.01em;color:var(--coral-d)}
.cert q{display:block;flex:1;font-size:15px;line-height:1.55;margin:14px auto 14px;max-width:38ch;quotes:"\201C" "\201D"}
.cert .cfoot{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;font-size:11px;color:#5c7470;text-align:left;position:relative;z-index:1}
.cert .cfoot b{display:block;font-family:var(--hand);font-size:24px;font-weight:600;color:#16302c;line-height:1}
.seal{flex:none;width:60px;height:60px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd977,#d99a23);display:grid;place-items:center;color:#5a3c06;font-family:var(--disp);font-weight:700;font-size:13px;line-height:1.05;text-align:center;box-shadow:0 0 0 4px rgba(243,193,76,.33),0 6px 12px -4px rgba(0,0,0,.4)}
.cert.blank{background:transparent;outline:2px dashed rgba(255,255,255,.22);box-shadow:none;color:#9FB6B3;padding:34px 28px}
.cert.blank::after{border-color:rgba(255,255,255,.07)}
.cert.blank h4{color:#fff;font-size:21px}
.cert.blank .ck{color:var(--teal-bright)}
.cert.blank .crs{color:#9FB6B3;font-size:14px}
/* share-experience panel */
.rev-form{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;color:#16302c;border-radius:18px;padding:50px 48px 44px;
  background:radial-gradient(120% 90% at 0% 0%,#ffffff,#eef5f3 58%,#e3eeeb);box-shadow:0 44px 80px -36px rgba(0,0,0,.9)}
.rev-form::before{content:"";position:absolute;inset:12px;border:2px solid #2A8F86;border-radius:10px;pointer-events:none}
.rev-form::after{content:"";position:absolute;inset:18px;border:1px solid rgba(42,143,134,.3);border-radius:6px;pointer-events:none}
.rev-form>*{position:relative;z-index:1;min-width:0}
.rf-corner{position:absolute;z-index:2;width:28px;height:28px;border-radius:50%;
  background:linear-gradient(var(--coral),var(--coral)) center/12px 4px no-repeat,linear-gradient(var(--coral),var(--coral)) center/4px 12px no-repeat,#f4f8f7;box-shadow:0 0 0 2px #2A8F86}
.rf-corner.tl{top:-1px;left:-1px}.rf-corner.tr{top:-1px;right:-1px}.rf-corner.bl{bottom:-1px;left:-1px}.rf-corner.br{bottom:-1px;right:-1px}
.rf-kicker{display:flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#2A8F86;margin-bottom:12px}
.rf-kicker img{width:24px;height:24px}
.rev-form h3{font-size:26px;color:#0C3A35;margin-bottom:8px}
.rf-left>p{color:#4f6a66;font-size:14.5px;margin:0 0 24px;max-width:38ch}
.cert.prev{transform:rotate(-1.2deg);box-shadow:0 22px 34px -20px rgba(12,58,53,.55);max-width:420px}
.cert.prev .ck{color:var(--coral-d)}
.field{margin-bottom:15px}
.field label{display:block;font-family:var(--disp);font-size:12px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:#8AA4A0;margin-bottom:6px}
.field input,.field textarea{width:100%;background:rgba(255,255,255,.05);border:1.5px solid rgba(255,255,255,.12);border-radius:10px;padding:11px 13px;font-family:var(--body);font-size:15px;color:#fff;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#7C9591}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--coral)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rate{display:flex;gap:6px}
.rate button{background:transparent;border:0;cursor:pointer;padding:2px;color:#3f5b57;line-height:0}
.rate svg{width:30px;height:30px;transition:transform .12s}
.rate button:hover svg{transform:scale(1.12)}
.rate button.on{color:#F5B426}
.success{display:none;background:rgba(31,157,107,.16);border:1px solid rgba(31,157,107,.5);color:#B9F0D6;border-radius:12px;padding:14px 16px;font-size:14.5px;margin-bottom:16px}
.success.show{display:block}
.sendfail{background:rgba(216,67,78,.12);border:1px solid rgba(216,67,78,.5);color:var(--bad);border-radius:10px;padding:10px 13px;font-size:14px;margin-bottom:14px;font-weight:500}
.success b{font-family:var(--disp)}
.formnote{font-size:12px;color:#8AA4A0;margin-top:12px;text-align:center}
.rev-form .field label{color:#2A6F69}
.rev-form .field input,.rev-form .field textarea,.rev-form .field select{width:100%;background:#fff;border:1.5px solid #cbd9d6;border-radius:10px;padding:11px 13px;font-family:var(--body);font-size:15px;color:#16302c}
.rev-form .field input::placeholder,.rev-form .field textarea::placeholder{color:#8aa09c}
.rev-form .field input:focus,.rev-form .field textarea:focus,.rev-form .field select:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px rgba(248,80,88,.15)}
.rev-form .rate button{color:#c3d1ce}
.rev-form .rate button.on{color:#F5B426}
.rev-form .success{background:#E4F5EC;border-color:rgba(31,157,107,.45);color:#0f5e40}
.rev-form .formnote{color:#5f7b77}
.rev-side{position:absolute;top:50%;transform:translateY(-50%);font-family:var(--disp);font-weight:600;font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.16);line-height:2.3;z-index:1;display:none}
.rev-side-l{left:26px}.rev-side-r{right:26px;text-align:right}
@media(min-width:1300px){.rev-side{display:block}}

/* Google rating badge + review strip */
.gbadge{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(245,180,38,.35);color:#fff;text-decoration:none;font-family:var(--disp);font-size:14px;transition:background .2s,border-color .2s}
.gbadge:hover{background:rgba(245,180,38,.12);border-color:#F5B426}
.gbadge b{font-size:16px}.gbadge .gst{color:#F5B426;letter-spacing:2px}.gbadge .gtx{color:#CFE0DD}.gbadge .garr{color:#F5B426}
.gstrip{position:relative;overflow:hidden;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:34px;align-items:center;margin:0 0 40px;padding:30px 34px;border-radius:22px;
  background:linear-gradient(135deg,#1b2a24 0%,#13201d 45%,#0f1a1b 100%);border:1px solid rgba(245,180,38,.32);box-shadow:0 30px 60px -36px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06)}
.gstrip>*{position:relative;z-index:1;min-width:0}
.gs-glow{position:absolute!important;z-index:0!important;inset:-40% auto auto -10%;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(245,180,38,.22),transparent 65%);pointer-events:none}
.gs-score{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px 26px;border-radius:18px;text-decoration:none;color:#fff;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);transition:transform .2s,border-color .2s}
.gs-score:hover{transform:translateY(-3px);border-color:#F5B426}
.gs-num{font-family:var(--disp);font-weight:700;font-size:54px;line-height:1;background:linear-gradient(180deg,#FFE29A,#F5B426);-webkit-background-clip:text;background-clip:text;color:transparent}
.gs-stars{display:flex;gap:3px;color:#F5B426}
.gs-stars svg{width:20px;height:20px;filter:drop-shadow(0 0 6px rgba(245,180,38,.55))}
.gs-count{font-size:13px;color:#C9D6D3;white-space:nowrap}
.gs-count b{color:#fff;font-family:var(--disp);font-size:15px}
.gs-k{font-family:var(--disp);font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#F5B426}
.gstrip h3{font-size:24px;line-height:1.2;color:#fff;margin:8px 0 8px}
.gstrip h3 span{color:#F5B426}
.gstrip p{color:#A9C2BE;margin:0 0 18px;font-size:14.5px;max-width:50ch}
.gs-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.gs-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:600;font-size:14.5px;padding:12px 22px;border-radius:999px;background:linear-gradient(180deg,#FFCB52,#F0A818);color:#1d1a10;text-decoration:none;box-shadow:0 14px 26px -12px rgba(245,180,38,.85);transition:transform .15s,filter .2s}
.gs-btn svg{width:16px;height:16px}
.gs-btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.gs-link{font-family:var(--disp);font-weight:600;font-size:14px;color:#F5D27A;text-decoration:none;border-bottom:1px solid rgba(245,210,122,.35)}
.gs-link:hover{color:#fff;border-color:#fff}
.gs-btn:focus-visible,.gbadge:focus-visible,.gs-score:focus-visible,.gs-link:focus-visible{outline:2px solid #F5B426;outline-offset:3px}
.gs-qr{margin:0;text-align:center}
.gs-frame{position:relative;padding:12px;border-radius:16px;background:#fff;box-shadow:0 18px 30px -18px rgba(0,0,0,.9)}
.gs-frame::before{content:"";position:absolute;inset:-7px;border-radius:20px;pointer-events:none;
  background:linear-gradient(#F5B426,#F5B426) top left/22px 3px,linear-gradient(#F5B426,#F5B426) top left/3px 22px,linear-gradient(#F5B426,#F5B426) top right/22px 3px,linear-gradient(#F5B426,#F5B426) top right/3px 22px,linear-gradient(#F5B426,#F5B426) bottom left/22px 3px,linear-gradient(#F5B426,#F5B426) bottom left/3px 22px,linear-gradient(#F5B426,#F5B426) bottom right/22px 3px,linear-gradient(#F5B426,#F5B426) bottom right/3px 22px;background-repeat:no-repeat}
.gs-frame img{display:block;width:132px;height:132px}
.gs-qr figcaption{font-size:12px;color:#8AA4A0;margin-top:12px;letter-spacing:.04em}
@media (max-width:960px){.gstrip{grid-template-columns:auto minmax(0,1fr)}.gs-qr{display:none}}
@media (max-width:640px){.gstrip{grid-template-columns:1fr;padding:24px;gap:22px;text-align:center}.gs-score{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:10px 14px;padding:14px}.gs-num{font-size:40px}.gstrip p{margin-inline:auto}.gs-actions{justify-content:center}}
@media (prefers-reduced-motion:reduce){.gs-score,.gs-btn{transition:none}}
/* ---- Footer ---- */
.foot{background:#101418;color:#AEB4BC}
.foot .wrap{padding-block:40px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.foot img{height:40px}
.foot .soc{display:flex;gap:10px}
.foot .soc a{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#fff;transition:transform .15s,filter .15s}
.foot .soc a:hover{transform:translateY(-2px);filter:brightness(1.08)}
.foot .soc a[aria-label="Facebook"]{background:#1877F2}
.foot .soc a[aria-label="Instagram"]{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fdf497 5%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.foot .soc a[aria-label="YouTube"]{background:#FF0000}
.foot .soc a[aria-label="LinkedIn"]{background:#0A66C2}
.foot .soc svg{width:18px;height:18px}
.foot-links{display:flex;gap:20px;flex-wrap:wrap;width:100%;justify-content:center;order:3}
.foot-links a{color:#CFE9E5;font-size:13px;text-decoration:none;font-family:var(--disp);font-weight:600}
.foot-links a:hover{color:var(--coral)}
.foot small{display:block;width:100%;border-top:1px solid rgba(255,255,255,.1);padding-top:18px;color:#8FB8B2;font-size:12.5px;text-align:center;order:4}
.foot small b{color:var(--teal-bright)}
.foot .zecred{display:inline-flex;align-items:center;vertical-align:middle;line-height:0;opacity:.9;transition:opacity .15s}
.foot .zecred:hover{opacity:1}
.foot .zelogo{height:40px;width:auto;display:block}

@media(max-width:860px){
  .nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);flex-direction:column;padding:10px 16px 16px;border-bottom:1px solid var(--line);box-shadow:var(--shadow-sm);gap:2px}
  .nav.open{display:flex}
  .nav a{padding:12px 12px}
  .menu-btn{display:inline-flex}
  .hdr .wrap{position:relative}
  .qgrid{grid-template-columns:1fr}
  .rev-grid{grid-template-columns:1fr}
  .rev-form{grid-template-columns:1fr;gap:26px;padding:40px 26px 32px}
  .cert.prev{display:none}
  .course-grid{grid-template-columns:repeat(2,1fr)}
  .course-grid>:last-child:nth-child(3n+1){grid-column:auto}
  .intro .wrap{grid-template-columns:1fr;gap:30px}
}
@media(max-width:560px){
  .row2{grid-template-columns:1fr}
  .course-grid{grid-template-columns:1fr}
  .sec{padding-block:56px}
  .topbar .tinfo{gap:14px;font-size:12.5px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.wafab{position:fixed;right:18px;bottom:18px;z-index:90;width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(37,211,102,.7);transition:transform .15s}
.wafab:hover{transform:translateY(-2px)}
.wafab svg{width:30px;height:30px}
@media(max-width:560px){.wafab{width:52px;height:52px;right:14px;bottom:14px}}
.rev-grid-empty{display:flex}
.rev-empty{text-align:center;color:#9FB6B3;font-size:15.5px;line-height:1.6;background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.14);border-radius:16px;padding:40px 24px;margin:0}

/* ===== Course pages ===== */
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:13px;color:#9FC9C3;margin-bottom:6px}
.crumbs a{color:#CFE4E0;text-decoration:none}.crumbs a:hover{color:#fff;text-decoration:underline}
.cp-hero .wrap{grid-template-columns:1.05fr .95fr}
.cp-hero h1{font-size:clamp(30px,4.2vw,48px)}
.cp-hero h1 span{color:var(--coral);text-shadow:none}
.cp-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.22)}
.btn-ghost:hover{background:rgba(255,255,255,.16)}
.cp-main{background:#101417;color:#fff;position:relative;overflow:hidden}
.cp-main::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 40% at 50% 0%,rgba(88,192,184,.14),transparent 65%);pointer-events:none}
.cp-main .wrap{position:relative;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:36px;align-items:start}
.cp-card{background:#151B1F;border:1px solid rgba(88,192,184,.28);border-radius:18px;padding:28px 30px}
.cp-card+.cp-card{margin-top:24px}
.cp-card h2{font-size:24px;margin:0 0 14px;color:#fff}
.cp-card h2 span{color:var(--teal-bright)}
.cp-card p{color:#BCC6CC;margin:0 0 12px;line-height:1.7}
.cp-topics{list-style:none;padding:0;margin:4px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}
.cp-topics li{position:relative;padding-left:28px;color:#E3ECEE;line-height:1.45}
.cp-topics li::before{content:"";position:absolute;left:0;top:.1em;width:18px;height:18px;border-radius:5px;background:var(--teal) url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M10%205h4v5h5v4h-5v5h-4v-5H5v-4h5z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E") center/14px no-repeat}
.cp-who{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.cp-who li{font-family:var(--disp);font-size:13px;font-weight:600;padding:7px 14px;border-radius:999px;background:rgba(88,192,184,.10);color:#8EE0D8;border:1px solid rgba(88,192,184,.25)}
.cp-side{position:sticky;top:96px}
.cp-facts{margin:0}
.cp-facts div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.cp-facts div:last-child{border:0}
.cp-facts dt{color:#8FA3AA;font-size:13.5px}
.cp-facts dd{margin:0;color:#fff;font-weight:600;font-size:14px;text-align:right}
.cp-side .btn{width:100%;justify-content:center;margin-top:18px}
.cp-side .cp-call{display:block;text-align:center;margin-top:12px;color:#8EE0D8;font-family:var(--disp);font-weight:600;text-decoration:none}
.cp-g{display:flex;align-items:center;gap:12px;margin-top:20px;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#1b2a24,#13201d);border:1px solid rgba(245,180,38,.3);color:#fff;text-decoration:none}
.cp-g b{font-family:var(--disp);font-size:26px;color:#F5B426;line-height:1}
.cp-g span{font-size:13px;color:#C9D6D3}.cp-g em{font-style:normal;color:#F5B426;letter-spacing:2px;display:block}
.cp-faq details{border-top:1px solid rgba(255,255,255,.08);padding:14px 0}
.cp-faq details:first-of-type{border-top:0}
.cp-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;font-family:var(--disp);font-weight:600;font-size:16px;color:#fff}
.cp-faq summary::-webkit-details-marker{display:none}
.cp-faq summary::after{content:"+";color:var(--teal-bright);font-size:22px;line-height:1;transition:transform .2s}
.cp-faq details[open] summary::after{transform:rotate(45deg)}
.cp-faq details p{margin:10px 0 0}
.cp-faq summary:focus-visible{outline:2px solid #58C0B8;outline-offset:3px;border-radius:4px}
.cp-rel{background:#0d1316}
.cp-rel .sec-head h2{color:#fff}.cp-rel .sec-head p{color:#9AA5AC}
.cp-rel .course-grid>:last-child:nth-child(3n+1){grid-column:auto}
.cp-rel .ccard{background:#151B1F;border:1px solid rgba(88,192,184,.3);text-decoration:none;color:#fff}
.cp-rel .ccard:hover{border-color:#58C0B8;box-shadow:0 0 26px -4px rgba(88,192,184,.45)}
.cp-rel .ccard .in{gap:8px}.cp-rel .ccard h3{color:#fff}.cp-rel .ccard .cdesc{color:#BCC6CC;font-size:14px}
.cp-rel .more{font-family:var(--disp);font-weight:600;color:#8EE0D8;font-size:14px}
@media (max-width:900px){.cp-main .wrap{grid-template-columns:1fr}.cp-side{position:static}.cp-hero .wrap{grid-template-columns:1fr}}
@media (max-width:600px){.cp-topics{grid-template-columns:1fr}.cp-card{padding:22px 20px}}
