:root{--black:#0e0f11;--dark:#1d2024;--white:#fff;--off-white:#f6f6f3;--gray:#666b73;--border:#e3e3df;--future-red:#d62828;--w:1140px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:400 16px/1.7 Poppins,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--dark);background:var(--white);-webkit-font-smoothing:antialiased}
h1,h2,h3{color:var(--black);font-weight:600;line-height:1.2;margin:0 0 .6em}h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:-.02em;max-width:18ch}
h2{font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.01em}h3{font-size:1.05rem;margin-top:1.6em}p{margin:0 0 1em}
a{color:inherit}.wrap{max-width:var(--w);margin:0 auto;padding:0 24px}.narrow{max-width:760px}
.skip{position:absolute;left:-999px;background:var(--black);color:#fff;padding:10px 14px;z-index:99}.skip:focus{left:8px;top:8px}
:focus-visible{outline:3px solid var(--future-red);outline-offset:3px}
header.site{position:sticky;top:0;background:rgba(255,255,255,.97);border-bottom:1px solid var(--border);z-index:50}
.bar{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:16px}
.logo{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--black);text-decoration:none}.mark{width:10px;height:22px;background:var(--future-red);display:inline-block}
nav{display:flex;align-items:center;gap:20px}nav ul{list-style:none;margin:0;padding:0;display:flex;gap:2px}
nav>ul>li>a{display:block;padding:8px 10px;font:500 .88rem Poppins,sans-serif;text-decoration:none}nav>ul>li>a:hover{color:var(--future-red)}
.dd{position:relative}.dd>ul{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--border);min-width:250px;padding:8px;flex-direction:column;gap:0}
.dd:hover>ul,.dd:focus-within>ul{display:flex}.dd>ul a{display:block;padding:8px 12px;font-size:.88rem;text-decoration:none}.dd>ul a:hover{background:var(--off-white)}
.btn{display:inline-block;background:var(--future-red);color:#fff;border:1px solid var(--future-red);padding:13px 26px;border-radius:4px;font:500 .95rem Poppins,sans-serif;text-decoration:none;cursor:pointer}.btn:hover{background:#b81f1f}
.btn.ghost{background:transparent;color:var(--black);border-color:var(--black)}.btn.ghost:hover{background:var(--black);color:#fff}.btn.sm{padding:9px 18px;font-size:.85rem}
.burger{display:none;background:none;border:1px solid var(--border);padding:8px 14px;border-radius:4px;font:500 .85rem Poppins,sans-serif}
.hero{padding:104px 0 72px}.hero.page{padding:64px 0 56px;background:var(--off-white);border-bottom:1px solid var(--border)}.hero.page h1{font-size:clamp(1.8rem,4vw,2.8rem);max-width:24ch}
.eyebrow{font:600 .75rem Poppins,sans-serif;letter-spacing:.12em;color:var(--future-red);margin-bottom:1.2em}
.lead{font-size:1.15rem;color:var(--gray);max-width:620px}.actions{margin-top:2em}.actions .btn{margin-right:10px}
.channels{margin-top:56px;padding-top:22px;border-top:1px solid var(--border);color:var(--gray);font-size:.88rem}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 24px;padding:0;font-size:.82rem;color:var(--gray)}.crumbs li+li:before{content:"/";margin-right:6px}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--future-red)}
.sec{padding:88px 0}.alt{background:var(--off-white)}.split{display:grid;grid-template-columns:1fr 1.6fr;gap:56px}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.cols3 h3{margin-top:0}
.rows{border-top:1px solid var(--border)}.row{display:grid;grid-template-columns:1fr 1.5fr auto;gap:24px;padding:22px 0;border-bottom:1px solid var(--border);text-decoration:none;align-items:baseline}
.row strong{color:var(--black);font-weight:600}.row span{color:var(--gray);font-size:.95rem}.row em{font:500 .85rem Poppins;font-style:normal;color:var(--future-red)}.row:hover strong{color:var(--future-red)}
.ticks,.plain{list-style:none;padding:0;margin:0}.ticks li{padding:12px 0 12px 22px;border-bottom:1px solid var(--border);position:relative}.ticks li:before{content:"";position:absolute;left:0;top:23px;width:8px;height:2px;background:var(--future-red)}
.plain.cols{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}.plain span{color:var(--gray);font-size:.92rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;padding:0;margin:0}.steps li{border-top:2px solid var(--black);padding-top:14px;color:var(--gray);font-size:.95rem}.steps strong{display:block;color:var(--black)}
.chips{display:flex;flex-wrap:wrap;gap:10px}.chips a{border:1px solid var(--border);padding:8px 16px;border-radius:99px;font-size:.9rem;text-decoration:none}.chips a:hover{border-color:var(--future-red);color:var(--future-red)}
.link{color:var(--future-red);font-weight:500;text-underline-offset:3px}.note{color:var(--gray);font-size:.9rem}
details{border-bottom:1px solid var(--border);padding:16px 0}summary{cursor:pointer;font-weight:500;color:var(--black)}details p{margin:.8em 0 0;color:var(--gray)}
.facts dt{font-weight:600;color:var(--black)}.facts dd{margin:0 0 14px;color:var(--gray)}
.cta{background:var(--black);color:#fff}.cta h2{color:#fff}.cta p{color:#c9ccd1;max-width:560px}
.form label{display:block;font:500 .85rem Poppins;margin-bottom:6px;color:var(--black)}.form input,.form select,.form textarea{width:100%;padding:12px 14px;border:1px solid #c9c9c4;border-radius:4px;font:inherit;background:#fff}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.trap{position:absolute;left:-9999px}
.notice{padding:14px 18px;border-radius:4px;margin-bottom:24px}.notice.ok{background:#eaf6ee;border:1px solid #b9dfc5}.notice.err{background:#fdeeee;border:1px solid #f0bcbc}.notice ul{margin:0;padding-left:18px}
footer.site{background:var(--black);color:#b9bdc4;padding:72px 0 28px;font-size:.9rem}footer.site .logo{color:#fff}footer.site h3{color:#fff;font-size:.9rem;margin:0 0 .8em}footer.site h3:not(:first-child){margin-top:1.6em}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:32px}.fgrid a{display:block;text-decoration:none;padding:3px 0}.fgrid a:hover,.legal a:hover{color:#fff}
.legal{display:flex;gap:24px;flex-wrap:wrap;margin-top:48px;padding-top:22px;border-top:1px solid #2a2d33}.legal a{text-decoration:none}
@media(max-width:900px){.split,.cols3,.fgrid,.steps{grid-template-columns:1fr}.split{gap:24px}.row{grid-template-columns:1fr;gap:4px}.row em{display:none}.sec{padding:60px 0}.hero{padding:64px 0 48px}.g2{grid-template-columns:1fr}
.js .burger{display:block}.js nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--border);padding:12px 24px 20px;flex-direction:column;align-items:stretch;max-height:calc(100vh - 72px);overflow:auto}.js nav.open{display:flex}
nav ul{flex-direction:column}.dd>ul{display:flex;position:static;border:0;padding:0 0 0 14px;min-width:0}.btn.sm{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ---- VigilIQ-style corporate layer: dark image heroes, tables, centered intros, card grids ---- */
:root{--navy:#0d1b2a}
.hero.big,.hero.page.img{position:relative;background:var(--navy);color:#fff;overflow:hidden;border:0}
.hero.big{padding:128px 0 72px}.hero.page.img{padding:80px 0 64px}
.bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}
.hero.big::after,.hero.page.img::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,27,42,.96) 35%,rgba(13,27,42,.55))}
.hero.big .wrap,.hero.page.img .wrap{position:relative;z-index:2}
.hero.big h1,.hero.page.img h1,.hero.big .lead,.hero.page.img .lead{color:#fff}.hero.big .lead,.hero.page.img .lead{color:#d5dbe4}
.hero.big .eyebrow{color:#ff8a8a}.hero.big .btn.ghost{color:#fff;border-color:#fff}.hero.big .btn.ghost:hover{background:#fff;color:var(--navy)}
.hero.big .channels{border-color:rgba(255,255,255,.25);color:#c1c9d4}
.hero.page.img .crumbs ol,.hero.page.img .crumbs a{color:#c1c9d4}.hero.page.img .eyebrow{color:#ff8a8a}
.center{text-align:center;margin:0 auto}.center h2{margin-left:auto;margin-right:auto}
.tablewrap{overflow-x:auto;margin-top:28px;border:1px solid var(--border);border-radius:6px;background:#fff}
.ftable{width:100%;border-collapse:collapse;min-width:640px}.ftable th,.ftable td{padding:18px 22px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}
.ftable thead th{background:var(--navy);color:#fff;font:500 .85rem Poppins;letter-spacing:.04em}.ftable tbody th{color:var(--black);font-weight:600;white-space:nowrap}.ftable td{color:var(--gray);font-size:.95rem}.ftable tr:last-child>*{border-bottom:0}
.cardgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin-top:28px}
.lcard{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--border);border-top:3px solid var(--future-red);border-radius:6px;padding:22px;text-decoration:none}.lcard strong{color:var(--black);font-size:1.05rem}.lcard span{color:var(--gray);font-size:.88rem;flex:1}.lcard em{font:500 .85rem Poppins;font-style:normal;color:var(--future-red)}.lcard:hover{border-color:var(--future-red)}
.cols3.ind{margin:28px 0 20px}.cols3.ind>div{background:#fff;border:1px solid var(--border);border-radius:6px;padding:22px}.cols3.ind h3{margin:0 0 .4em}.cols3.ind p{color:var(--gray);font-size:.95rem;margin:0}
.imgsplit{align-items:center;grid-template-columns:1fr 1fr}.imgsplit img{width:100%;height:auto;border-radius:6px;display:block}
.why{list-style:none;padding:0;margin:0}.why li{padding:14px 0;border-bottom:1px solid var(--border);color:var(--gray)}.why strong{color:var(--black)}
.chips span{border:1px solid var(--border);padding:7px 15px;border-radius:99px;font-size:.88rem;background:#fff}
.alt .cols3.ind>div{background:#fff}.sec h2+.cardgrid{margin-top:28px}
@media(max-width:900px){.hero.big{padding:80px 0 48px}.imgsplit{grid-template-columns:1fr}.hero.big::after,.hero.page.img::after{background:rgba(13,27,42,.88)}}

/* ===== v3 visual layer ===== */
.ic{flex:none;vertical-align:-5px}.btn .ic{width:18px;height:18px;margin-left:6px;vertical-align:-3px;transition:transform .25s}.btn:hover .ic{transform:translateX(4px)}
.topbar{background:var(--black);color:#d7dae0;font-size:.8rem}.topbar .wrap{display:flex;justify-content:space-between;gap:12px;padding-top:8px;padding-bottom:8px}.topbar a{color:#fff;font-weight:500;text-decoration:none;white-space:nowrap}
header.site{transition:box-shadow .3s}header.site.shrunk{box-shadow:0 6px 24px rgba(10,20,40,.08)}header.site.shrunk .bar{min-height:60px}.bar{transition:min-height .25s}
.hx{position:relative;background:var(--navy);color:#fff;overflow:hidden;padding:110px 0 120px}
.hx .bgimg{opacity:.22}.hx::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(13,27,42,.97) 30%,rgba(13,27,42,.6));z-index:1}
.orb{position:absolute;border-radius:50%;filter:blur(90px);z-index:1;animation:drift 14s ease-in-out infinite alternate}.o1{width:420px;height:420px;background:rgba(214,40,40,.35);right:-80px;top:-80px}.o2{width:360px;height:360px;background:rgba(60,110,255,.22);left:30%;bottom:-160px;animation-delay:-6s}
@keyframes drift{to{transform:translate(-50px,40px) scale(1.15)}}
.hxg{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hx h1{color:#fff;font-size:clamp(2.2rem,5.4vw,4rem);max-width:15ch;margin-bottom:.5em}.hl{background:linear-gradient(transparent 82%,var(--future-red) 82%);padding-bottom:2px}
.hx .lead{color:#cfd7e3}.pill{display:inline-block;border:1px solid rgba(255,255,255,.25);padding:7px 16px;border-radius:99px;color:#fff;background:rgba(255,255,255,.07)}
.trust{margin-top:36px;color:#b9c3d1;font-size:.85rem;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.trust .ic{width:16px;height:16px;color:#ff8a8a;margin-right:-8px}
.hx .btn.ghost{color:#fff;border-color:rgba(255,255,255,.6)}.hx .btn.ghost:hover{background:#fff;color:var(--navy)}
.hxv{display:grid;gap:18px}.sc{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);padding:20px 22px;border-radius:12px;animation:fl 6s ease-in-out infinite}
.sc .ic{width:30px;height:30px;color:#ff8a8a}.sc strong{display:block;font-weight:600}.sc span{font-size:.85rem;color:#c1c9d4}.s1{margin-right:50px}.s2{margin-left:28px;animation-delay:-2s}.s3{margin-right:20px;animation-delay:-4s}
@keyframes fl{50%{transform:translateY(-10px)}}
.ticker{background:var(--future-red);color:#fff;overflow:hidden;padding:13px 0;white-space:nowrap}.track{display:inline-flex;animation:tk 32s linear infinite}.track span{font:500 .85rem Poppins;letter-spacing:.06em;padding:0 28px;position:relative}.track span::after{content:"";position:absolute;right:-3px;top:50%;width:6px;height:6px;border-radius:50%;background:#fff;opacity:.7}
@keyframes tk{to{transform:translateX(-50%)}}
.stats{background:#fff;border-bottom:1px solid var(--border)}.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.stats .wrap>div{padding:40px 12px;border-right:1px solid var(--border)}.stats .wrap>div:last-child{border:0}
.stats b{display:block;font:600 clamp(2.2rem,4vw,3.2rem) Poppins;color:var(--black);line-height:1}.stats b::after{content:"+";color:var(--future-red)}.stats span{color:var(--gray);font-size:.9rem}
.head{max-width:680px;margin:0 auto 48px;text-align:center}.head p:last-child{color:var(--gray)}
.frame{position:relative}.frame::before{content:"";position:absolute;inset:22px -22px -22px 22px;border:2px solid var(--future-red);border-radius:8px;z-index:0}.frame img{position:relative;z-index:1;width:100%;height:auto;border-radius:8px;display:block;box-shadow:0 24px 60px rgba(10,20,40,.18)}
.imgsplit{gap:72px}.rev .frame{order:2}
.mini{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:18px}.mini li{display:flex;gap:16px}.mini .ic{width:42px;height:42px;padding:10px;background:#fdecec;color:var(--future-red);border-radius:10px}.mini strong{display:block;color:var(--black)}.mini div{color:var(--gray);font-size:.95rem}
.svgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.svgrid.three{grid-template-columns:repeat(3,1fr)}
.svc{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:10px;padding:30px 26px;text-decoration:none;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s}
.svc::before{content:"";position:absolute;left:0;top:0;height:3px;width:0;background:var(--future-red);transition:width .4s}.svc:hover{transform:translateY(-8px);box-shadow:0 22px 44px rgba(10,20,40,.12);border-color:transparent}.svc:hover::before{width:100%}
.svc .no{position:absolute;right:20px;top:16px;font:600 .8rem Poppins;color:#cfd2d8}.ico{width:54px;height:54px;border-radius:12px;background:#fdecec;color:var(--future-red);display:grid;place-items:center;margin-bottom:20px;transition:background .3s,color .3s}.svc:hover .ico{background:var(--future-red);color:#fff}
.svc h3{margin:0 0 .5em;font-size:1.1rem}.svc p{color:var(--gray);font-size:.9rem;flex:1}.svc em{font:500 .85rem Poppins;font-style:normal;color:var(--future-red)}.svc em .ic{width:16px;height:16px;vertical-align:-3px}
.sec.dark{background:var(--navy);color:#cfd7e3}.sec.dark h2,.sec.dark h3{color:#fff}.sec.dark .head p:last-child{color:#aab5c5}.sec.dark .eyebrow{color:#ff8a8a}
.tl{display:flex;justify-content:center;gap:10px;margin-bottom:36px;flex-wrap:wrap}.tl button{background:transparent;color:#cfd7e3;border:1px solid rgba(255,255,255,.25);padding:12px 26px;border-radius:99px;font:500 .95rem Poppins;cursor:pointer;transition:.25s}.tl button:hover{border-color:#fff}.tl button[aria-selected=true]{background:var(--future-red);border-color:var(--future-red);color:#fff}
.tp{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:44px}.tp[hidden]{display:none}.tp h3{font-size:1.6rem;margin-top:0}.tp ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}.tp li{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.07);padding:16px 18px;border-radius:8px;color:#fff}.tp li .ic{color:#ff8a8a;width:20px;height:20px}
.note.light{color:#9aa6b8;text-align:center;margin-top:32px}
.tline{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}.tline::before{content:"";position:absolute;left:10%;right:10%;top:28px;height:2px;background:var(--border)}
.tline li{position:relative;text-align:center}.tline span{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 18px;background:#fff;border:2px solid var(--future-red);color:var(--future-red);font:600 1.2rem Poppins;border-radius:50%;position:relative;transition:.3s}.tline li:hover span{background:var(--future-red);color:#fff;transform:scale(1.1)}.tline p{color:var(--gray);font-size:.92rem}
.why{list-style:none;padding:0;margin:20px 0 0}.why li{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid var(--border);color:var(--gray)}.why .ic{color:#fff;background:var(--future-red);border-radius:50%;padding:4px;width:26px;height:26px;margin-top:2px}.why strong{color:var(--black)}
.lgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.lc{position:relative;display:flex;flex-direction:column;gap:6px;min-height:200px;padding:24px;border-radius:10px;text-decoration:none;color:#fff;overflow:hidden;background:linear-gradient(145deg,#13243a,#1f3a5c);transition:transform .3s,box-shadow .3s}
.lc:nth-child(3n+2){background:linear-gradient(145deg,#2a1519,#5b1f27)}.lc:nth-child(3n){background:linear-gradient(145deg,#161a22,#303846)}
.lc i{position:absolute;right:-6px;bottom:-34px;font:700 6.5rem Poppins;font-style:normal;color:rgba(255,255,255,.08);line-height:1;transition:transform .4s}.lc:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(10,20,40,.25)}.lc:hover i{transform:scale(1.15) translateY(-6px)}
.lc strong{font-size:1.1rem}.lc span{color:#c1cad6;font-size:.82rem;flex:1}.lc em{font:500 .82rem Poppins;font-style:normal}.lc .ic{width:15px;height:15px;vertical-align:-3px}
.ig{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:24px}.ic2{background:#fff;border:1px solid var(--border);border-radius:10px;padding:26px;transition:.3s}.ic2:hover{border-color:var(--future-red);transform:translateY(-5px)}.ic2 span{font:600 .85rem Poppins;color:var(--future-red)}.ic2 h3{margin:.4em 0}.ic2 p{color:var(--gray);font-size:.9rem;margin:0}
.acad{position:relative;background:var(--navy);color:#fff;padding:110px 0;overflow:hidden}.acad::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,27,42,.95) 40%,rgba(13,27,42,.45))}.acad .bgimg{opacity:.55}.acad .wrap{position:relative;z-index:2}.acad h2{color:#fff;font-size:clamp(1.8rem,4vw,2.8rem);max-width:16ch}.acad p{max-width:560px;color:#d0d8e3}.acad .eyebrow{color:#ff8a8a}
.cband{background:linear-gradient(120deg,#b81f1f,var(--future-red) 55%,#e85a3c);color:#fff;text-align:center;padding:96px 0}.cband h2{color:#fff;font-size:clamp(1.8rem,4vw,2.8rem)}.cband p{color:#ffe3e3;max-width:560px;margin-left:auto;margin-right:auto}
.btn.light{background:#fff;color:var(--future-red);border-color:#fff}.btn.light:hover{background:var(--black);color:#fff;border-color:var(--black)}.cband .btn.ghost{color:#fff;border-color:#fff}.cband .btn.ghost:hover{background:#fff;color:var(--future-red)}
details{background:#fff;border:1px solid var(--border);border-radius:8px;padding:6px 22px;margin-bottom:12px}.alt details{border:1px solid var(--border)}summary{padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}summary::after{content:"+";color:var(--future-red);font-size:1.4rem;line-height:1;transition:transform .25s}details[open] summary::after{transform:rotate(45deg)}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.js .rv.in{opacity:1;transform:none}
.hero.page{background:linear-gradient(120deg,#0d1b2a,#1b2f4a);color:#fff;border:0}.hero.page h1,.hero.page .lead{color:#fff}.hero.page .lead{color:#cfd7e3}.hero.page .eyebrow{color:#ff8a8a}.hero.page .crumbs ol,.hero.page .crumbs a{color:#b9c3d1}
@media(max-width:1000px){.svgrid,.lgrid,.ig{grid-template-columns:repeat(2,1fr)}.svgrid.three{grid-template-columns:1fr}.hxg,.tp,.tline{grid-template-columns:1fr}.tline::before{display:none}.hxv{display:none}.stats .wrap{grid-template-columns:repeat(2,1fr)}.rev .frame{order:0}.imgsplit{gap:40px}.frame::before{display:none}}
@media(max-width:560px){.svgrid,.lgrid,.ig{grid-template-columns:1fr}.hx{padding:70px 0 80px}.topbar span{display:none}.tp{padding:26px}}
@media(prefers-reduced-motion:reduce){.orb,.sc,.track{animation:none}.js .rv{opacity:1;transform:none;transition:none}}

/* ===== v4: laptop-first layout, illustrations, redesigned sections (Poppins only) ===== */
:root{--w:1240px}
body,button,input,select,textarea{font-family:Poppins,sans-serif}
.wrap{padding:0 32px}.sec{padding:104px 0}.sec.tight{padding:0;margin-top:-44px;position:relative;z-index:6}
h2{font-size:clamp(1.7rem,3vw,2.5rem)}.head h2{max-width:22ch;margin-left:auto;margin-right:auto}.head{margin-bottom:56px}
/* nav */
nav>ul>li>a{padding:8px 9px;font-size:.84rem}nav{gap:14px}
.dd.mega>ul{grid-template-columns:1fr 1fr;min-width:600px;gap:2px;padding:14px}.dd.mega:hover>ul,.dd.mega:focus-within>ul{display:grid}
.dd.mega>ul a{padding:12px 14px;border-radius:8px}.dd.mega>ul strong{display:block;color:var(--black);font-weight:600;font-size:.88rem}.dd.mega>ul span{display:block;color:var(--gray);font-size:.78rem;line-height:1.4;margin-top:2px}
/* page hero with illustration */
.hero.page{padding:76px 0 96px}.hpg{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative;z-index:2}
.hero.page h1{font-size:clamp(2rem,3.8vw,3.2rem);max-width:20ch}.hero.page .actions{margin-top:28px}.hero.page .btn.ghost{color:#fff;border-color:rgba(255,255,255,.55)}.hero.page .btn.ghost:hover{background:#fff;color:var(--navy)}
.hero.page::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(13,27,42,.96) 35%,rgba(13,27,42,.7))}.hero.page .bgimg{opacity:.22}
.hpi{position:relative;z-index:2}.hpi .ill{max-width:540px;margin-left:auto;display:block;animation:fl 7s ease-in-out infinite}
.ill{width:100%;height:auto;display:block;filter:drop-shadow(0 24px 40px rgba(0,0,0,.28))}
.ill .w{fill:#fff}.ill .g{fill:#eef1f6}.ill .m{fill:#d3dae6}.ill .n{fill:#13243a}.ill .a{fill:var(--future-red)}.ill .ha{fill:rgba(214,40,40,.18)}.ill .gr{fill:#eef1f6}
.ill .o{fill:none;stroke:#13243a;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.ill .s{stroke:var(--future-red);stroke-width:2}.ill .s2{stroke:#13243a;stroke-width:2}
.ill .tw{fill:#fff;font:600 13px Poppins}.ill .tw.sm{font-size:10px;letter-spacing:.1em;fill:#c9d3e0}.ill .tw.bg{font-size:17px}
.ill .rd{stroke:#fff;stroke-width:14;fill:none}.ill .ln{stroke:#9fb0c6;stroke-width:2.5;stroke-dasharray:5 5;fill:none;animation:dash 1.6s linear infinite}
.ill .tn text{font:600 11px Poppins;fill:#13243a}.ill .tn2{font:600 12px Poppins;fill:#13243a}.ill .arc{fill:none;stroke:var(--future-red);stroke-width:8;stroke-linecap:round}.ill .ax{stroke:#c3ccda;stroke-width:2;fill:none}
@keyframes dash{to{stroke-dashoffset:-20}}
.ilpanel{background:linear-gradient(140deg,#13243a,#1d3a5e);border-radius:14px;padding:36px}.ilpanel::before{display:none}.ilpanel .ill{filter:none}
/* in-short answer box */
.short{display:flex;gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--border);border-left:5px solid var(--future-red);border-radius:12px;padding:26px 30px;box-shadow:0 18px 44px rgba(10,20,40,.12)}
.short .tag{flex:none;background:var(--future-red);color:#fff;font:600 .72rem Poppins;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:99px;margin-top:2px}.short p{margin:0;font-size:1.02rem;color:var(--dark)}.short small{flex:none;color:var(--gray);font-size:.78rem;align-self:flex-end;white-space:nowrap}
/* two-column text + card */
.two{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:start}
.facts-card{background:var(--off-white);border:1px solid var(--border);border-radius:14px;padding:32px;position:sticky;top:110px}.facts-card h3{margin-top:0}.facts-card dt{font:600 .75rem Poppins;letter-spacing:.08em;text-transform:uppercase;color:var(--future-red);margin-top:18px}.facts-card dd{margin:4px 0 0;color:var(--dark)}.facts-card .ticks li:first-child{padding-top:0}
.pins{display:flex;flex-wrap:wrap;gap:10px}.pins span{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid var(--border);border-radius:99px;padding:7px 14px;font-size:.86rem}.pins .ic{width:15px;height:15px;color:var(--future-red)}
/* who we help */
.aud-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.aud{position:relative;background:#fff;border:1px solid var(--border);border-radius:16px;padding:38px 36px 32px;overflow:hidden;transition:transform .3s,box-shadow .3s}.aud::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:36%;background:var(--future-red);transition:width .4s}.aud:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(10,20,40,.1)}.aud:hover::after{width:100%}
.aud .num{position:absolute;right:26px;top:8px;font:700 4.6rem Poppins;color:#f0f1f4;line-height:1}.aud h3{position:relative;margin:0 0 .6em;font-size:1.2rem;max-width:80%}.aud p{position:relative;color:var(--gray);font-size:.96rem}
.qchip{display:inline-flex;align-items:center;gap:8px;background:#fdecec;color:#b02323;border-radius:99px;padding:7px 14px;font:500 .8rem Poppins;position:relative}.qchip .ic{width:15px;height:15px}
/* what you receive */
.deliv{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.dv{position:relative;background:linear-gradient(180deg,#fff,#f8f9fb);border:1px solid var(--border);border-radius:14px;padding:30px 28px;overflow:hidden;transition:.3s}.dv:hover{border-color:var(--future-red);transform:translateY(-5px)}
.dv b{position:absolute;right:20px;top:4px;font:700 4rem Poppins;color:#eef0f4;line-height:1}.dvi{position:relative;display:grid;place-items:center;width:50px;height:50px;border-radius:12px;background:var(--future-red);color:#fff;margin-bottom:18px}.dv p{position:relative;margin:0;font-weight:500;color:var(--black)}
/* roadmap */
.road{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;position:relative}.road::before{content:"";position:absolute;left:6%;right:6%;top:28px;border-top:2px dashed rgba(255,255,255,.25)}
.road li{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:64px 28px 30px}.rn{position:absolute;left:28px;top:-2px;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--future-red);color:#fff;font:600 1.25rem Poppins;box-shadow:0 0 0 8px var(--navy)}.road h3{margin-top:0;font-size:1.05rem}.road p{color:#bcc7d6;margin:0;font-size:.94rem}
/* queries panel */
.queries{background:var(--navy);color:#fff;border-radius:16px;padding:34px}.queries h3{color:#fff;margin-top:0}.queries ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.queries li{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:12px 16px;font-size:.92rem}.queries .ic{width:17px;height:17px;color:#ff8a8a}
/* mistakes + metrics */
.mm{align-items:stretch}.warn,.meas{border-radius:16px;padding:34px}.warn{background:#fff;border:1px solid #f1caca;border-top:4px solid var(--future-red)}.meas{background:#fff;border:1px solid var(--border);border-top:4px solid var(--navy)}.warn h3,.meas h3{margin-top:0}
.warn ul{margin:0;padding-left:20px;color:var(--gray)}.warn li{margin-bottom:10px}.mchips{display:grid;gap:10px}.mchips span{display:flex;align-items:center;gap:10px;background:var(--off-white);border-radius:10px;padding:12px 16px;font-size:.92rem}.mchips .ic{width:18px;height:18px;color:var(--future-red)}
.mm1{display:grid;gap:22px}
/* FAQ redesign */
.fx{display:grid;grid-template-columns:.8fr 1.4fr;gap:64px;align-items:start}.fxl{position:sticky;top:110px}.fxl p{color:var(--gray)}
.askcard{margin-top:28px;background:var(--navy);color:#fff;border-radius:14px;padding:26px}.askcard strong{display:block;margin-bottom:6px}.askcard p{color:#c3cddb;font-size:.9rem}
.fxr details{background:#fff;border:1px solid var(--border);border-radius:12px;padding:4px 24px;margin-bottom:14px;transition:.25s}.fxr details[open]{border-color:var(--future-red);box-shadow:0 14px 34px rgba(10,20,40,.08)}
.fxr summary{display:flex;align-items:center;gap:16px;padding:18px 0;font-weight:500;color:var(--black)}.fxr .qn{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fdecec;color:var(--future-red);font:600 .8rem Poppins}.fxr details[open] .qn{background:var(--future-red);color:#fff}.fxr summary::after{margin-left:auto}.fxr details p{margin:0 0 20px 54px;color:var(--gray)}
/* proof + buyer guide */
.proof{background:var(--off-white);border-bottom:1px solid var(--border);padding:26px 0}.proof .wrap{display:flex;flex-wrap:wrap;gap:18px 44px;align-items:center;justify-content:center}.pr{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;color:var(--gray);font-size:.9rem}.pr b{font:600 1.5rem Poppins;color:var(--black)}.pr a{color:var(--black);font-weight:500}.pr em{font-style:normal;font-weight:600;color:var(--black)}
.chk .ic{background:var(--future-red);color:#fff;border-radius:50%;padding:4px;width:26px;height:26px}
/* laptop + tablet breakpoints */
@media(max-width:1180px){.svgrid{grid-template-columns:repeat(2,1fr)}.lgrid{grid-template-columns:repeat(3,1fr)}.ig{grid-template-columns:repeat(2,1fr)}.deliv{grid-template-columns:repeat(2,1fr)}.two{gap:44px}.fx{grid-template-columns:1fr}.fxl{position:static}.dd.mega>ul{min-width:520px}}
@media(max-width:960px){.hpg,.two,.aud-grid,.road,.deliv{grid-template-columns:1fr}.hpi{display:none}.road::before{display:none}.road li{padding-top:60px}.short{flex-direction:column}.facts-card{position:static}.hero.page{padding:56px 0 72px}.sec{padding:68px 0}.wrap{padding:0 22px}.sec.tight{margin-top:-30px}.fxr details p{margin-left:0}}
@media(max-width:700px){.dd.mega>ul{display:flex;grid-template-columns:none;min-width:0}.dd.mega>ul span{display:none}.deliv,.aud-grid{gap:16px}.aud{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){.hpi .ill,.ill .ln{animation:none}}
/* v5 accessibility and mobile hero stacking fixes */
:root{--body-size:17px}
body{font-size:17px;line-height:1.75}
p,li,dd,dt,label,input,textarea,select{font-size:1rem;line-height:1.75}
nav a{font-size:15px}
.btn{font-size:15px;min-height:48px}
.hero.page::after,.hero.page.img::after{z-index:0;pointer-events:none}
.hero.page .hpg,.hero.page .wrap{position:relative;z-index:2}
.hero.page .bgimg{z-index:0;pointer-events:none}
.hero.page .hpt{position:relative;z-index:3;max-width:720px}
.hero.page h1{font-size:clamp(2.15rem,4.2vw,3.6rem);line-height:1.12;letter-spacing:-.035em}
.hero.page .lead{font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.7;max-width:58ch}
.sec h2{font-size:clamp(1.8rem,3.2vw,2.6rem);line-height:1.2;letter-spacing:-.025em}
.svc p,.aud p,.row span{font-size:16px;line-height:1.7}
.city-landmark{min-height:300px;display:grid;place-items:center;position:relative;z-index:3}
.city-landmark img{display:block;width:min(100%,440px);max-height:340px;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.18));animation:landmark-float 7s ease-in-out infinite}
@keyframes landmark-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media(max-width:960px){.hero.page .hpg{grid-template-columns:1fr;gap:24px}.hero.page .hpt{z-index:4}.hero.page::after{background:linear-gradient(100deg,rgba(13,27,42,.97) 0%,rgba(13,27,42,.83) 100%);z-index:1}.hero.page .bgimg{opacity:.18}.city-landmark{min-height:180px}.city-landmark img{max-height:220px;max-width:280px}.hero.page{padding:48px 0 56px}.hero.page h1{font-size:clamp(2rem,7vw,3rem)}}
@media(prefers-reduced-motion:reduce){.city-landmark img{animation:none}}

/* Academy visual refresh and static-page polish */
.academy-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;background:#fff;border:1px solid #e8e9ed;border-radius:24px;padding:clamp(22px,4vw,44px);box-shadow:0 18px 50px rgba(13,27,42,.06)}.academy-feature img{width:100%;height:100%;min-height:260px;max-height:360px;object-fit:cover;border-radius:18px}.academy-feature h2{margin-top:0}.academy-points{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0}.academy-point{border:1px solid var(--border);border-radius:18px;padding:22px;background:linear-gradient(145deg,#fff,#fff8f8)}.academy-point b{display:block;margin-bottom:8px;color:var(--navy)}.academy-point p{margin:0;font-size:15px}.whatsapp-cta{display:inline-flex;align-items:center;gap:10px;background:#e53935;color:#fff;padding:14px 20px;border-radius:999px;font-weight:600;text-decoration:none}.whatsapp-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(229,57,53,.2)}.city-note{border-left:4px solid #e53935;padding:18px 22px;background:#fff6f6;border-radius:0 14px 14px 0;margin:24px 0}.contact-float{position:fixed;right:20px;bottom:20px;z-index:20;box-shadow:0 10px 30px #0d1b2a22}.academy-points svg{color:#e53935}@media(max-width:760px){.academy-feature{grid-template-columns:1fr}.academy-feature img{min-height:190px}.academy-points{grid-template-columns:1fr}.contact-float{right:12px;bottom:12px}}

/* Location-specific content and company-wide proof */
.company-proof{background:#f8f9fb}.company-proof h2{max-width:850px}.company-proof p{max-width:900px}.proof-note{margin-top:18px;padding:16px 20px;border-left:3px solid #e53935;background:#fff;border-radius:0 12px 12px 0;max-width:920px}.market-specific{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.market-specific article{padding:22px;border:1px solid var(--border,#e5e7eb);border-radius:18px;background:#fff}.market-specific h3{margin-top:0}.market-specific p{margin-bottom:0}.city-landmark img{width:100%;height:auto;display:block}@media(max-width:760px){.market-specific{grid-template-columns:1fr}.company-proof{padding-top:42px;padding-bottom:42px}}


/* V7 refinement: simpler navigation, less crowded footer, accessible controls */
.topbar{display:none!important}
header.site{z-index:100;background:#fff}
.bar{min-height:76px}
nav>ul>li>a{font-size:.94rem;padding:10px 13px}
.js .burger{display:none}
/* Contact and standard page heroes stay light; image overlays apply only to explicit image heroes. */
.hero.page:not(.img)::after{display:none!important}
.hero.page:not(.img){position:relative;background:#f7f7f5;color:var(--dark);overflow:visible}
.hero.page:not(.img) h1,.hero.page:not(.img) .lead{color:var(--dark)}
.hero.page:not(.img) .lead{color:#545a63}
.hero.page:not(.img) .eyebrow{color:var(--future-red)}
.hero.page:not(.img) .crumbs ol,.hero.page:not(.img) .crumbs a{color:#626873}
.hero.page:not(.img) .hpt{position:relative;z-index:2}
/* Keep heading casing consistent while preserving acronym casing (SEO, AEO, GEO). */
main h1,main h2,main h3{text-transform:capitalize}
main h1{text-wrap:balance}
/* Cleaner training page sections */
.academy-feature{border-radius:16px;box-shadow:0 14px 34px rgba(13,27,42,.07)}
.academy-point{border-radius:12px;background:#fff}
main .sec h2{max-width:28ch}
main .rows{margin-top:22px}
main .rows .row{padding:25px 0}
/* Form improvements */
.form{background:#fff;border:1px solid #e2e4e7;border-radius:18px;padding:clamp(20px,4vw,36px);box-shadow:0 12px 34px rgba(13,27,42,.06)}
.form label{font-size:.92rem;font-weight:600}
.form input,.form select,.form textarea{min-height:48px;border-radius:8px;border-color:#d2d5da;transition:border-color .18s,box-shadow .18s}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--future-red);box-shadow:0 0 0 3px rgba(214,40,40,.12)}
.form textarea{min-height:140px;resize:vertical}
.form button{min-width:170px}
/* Compact, well-spaced footer with icon-based contact and social links */
footer.site{padding:54px 0 22px;background:#101216;color:#c4c8cf}
.footer-main{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.25fr;gap:36px;padding-bottom:34px}
.footer-brand p{max-width:330px;color:#b6bbc4;margin:18px 0}
.footer-links h3,.footer-contact h3{color:#fff;font-size:.96rem;margin:4px 0 16px;text-transform:capitalize}
.footer-links a{display:block;color:#c4c8cf;text-decoration:none;padding:5px 0;font-size:.9rem}
.footer-links a:hover,.footer-contact a:hover{color:#fff}
.footer-social{display:flex;gap:10px;margin-top:18px}
.footer-social a,.contact-line svg{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #393d44;border-radius:50%;color:#fff}
.footer-social svg,.contact-line svg,.floating-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-contact p{margin:0 0 12px}
.footer-contact .contact-line{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:#e5e7eb}
.footer-contact .contact-line svg{width:20px;height:20px;border:0;border-radius:0}
.footer-contact .address{font-size:.86rem;line-height:1.6;color:#b6bbc4;margin-top:16px}
.footer-contact .address strong{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid #30343b;padding-top:20px;color:#999fa9;font-size:.82rem}
.legal{display:none!important}
.floating-actions{position:fixed;right:18px;bottom:18px;z-index:110;display:flex;flex-direction:column;gap:10px}
.float-btn{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(0,0,0,.18);text-decoration:none;color:#fff;transition:transform .2s}
.float-btn:hover{transform:translateY(-3px)}
.float-btn svg{width:24px;height:24px}
.whatsapp-float{background:#20a464}.call-float{background:#d62828}
/* Mobile navigation becomes a collapsible dropdown rather than a horizontal squeeze. */
@media(max-width:900px){
 .bar{min-height:68px;position:relative}
 .js .burger{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d9dce1;border-radius:8px;padding:10px 13px;color:#17191d}
 .burger-lines{font-size:1.1rem;line-height:1}
 .js nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e3e5e8;border-radius:0 0 14px 14px;padding:14px 20px 20px;box-shadow:0 18px 28px rgba(0,0,0,.12);max-height:calc(100vh - 76px);overflow-y:auto;z-index:120}
 .js nav.open{display:block}
 .js nav>ul{display:flex;flex-direction:column;align-items:stretch;gap:2px}
 .js nav>ul>li>a{padding:12px 8px;border-bottom:1px solid #f0f1f2;font-size:1rem}
 .dd>ul{display:none;position:static;border:0;padding:0 0 8px 14px;min-width:0;background:#fafafa}
 .dd:focus-within>ul,.dd.open>ul{display:flex}
 .dd>ul a{padding:10px 12px}
 .footer-main{grid-template-columns:1fr 1fr;gap:28px}
}
@media(max-width:560px){.footer-main{grid-template-columns:1fr;gap:26px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}.floating-actions{right:12px;bottom:12px}.float-btn{width:48px;height:48px}.form{padding:20px 16px}}

/* Final refinements */
main .sec h2{max-width:none}
main .sec .head h2{max-width:32ch}
main .fxl h2{max-width:18ch}
.hero.page.img .hpt{position:relative;z-index:3}
.hero.page.img::after{z-index:1;pointer-events:none}
.hero.page.img .bgimg{z-index:0}
@media(max-width:900px){.hero.page.img::after{background:linear-gradient(90deg,rgba(13,27,42,.82),rgba(13,27,42,.65))}.hero.page.img .hpt{z-index:3}}
.outcome-heading{max-width:720px;margin-bottom:26px}.outcome-heading>p:last-child{color:#606672}.outcome-card{display:flex;gap:18px;align-items:flex-start;border:1px solid #e3e5e8;border-radius:14px;background:#fff;padding:clamp(20px,3vw,30px);max-width:900px}.outcome-mark{display:flex;flex:0 0 42px;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:#fff0f0;color:var(--future-red);font-size:1.25rem;font-weight:700}.outcome-card h3{margin:0 0 8px}.outcome-card p{margin:0;color:#606672}.related-services h2{max-width:none}


/* V8: navigation, mobile card fit, distinctive market sections and purposeful motion */
.burger{width:46px;height:44px;padding:0;border-radius:10px;align-items:center;justify-content:center}
.burger-lines{display:flex!important;flex-direction:column;gap:5px;width:21px;height:auto;font-size:0!important}
.burger-lines i{display:block;width:21px;height:2px;background:#17191d;border-radius:4px;transition:transform .22s,opacity .22s}
.burger[aria-expanded="true"] .burger-lines i:first-child{transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] .burger-lines i:nth-child(2){opacity:0}
.burger[aria-expanded="true"] .burger-lines i:last-child{transform:translateY(-7px) rotate(-45deg)}
nav>ul>li>a{transition:color .2s,background .2s;border-radius:8px}nav>ul>li>a:hover{background:#fff3f3;color:var(--future-red)}
.dd>ul{box-shadow:0 18px 36px rgba(15,20,28,.12);border-radius:0 0 12px 12px;overflow:hidden}.dd>ul a{transition:background .18s,color .18s}.dd>ul a:hover{color:var(--future-red);padding-left:16px}
.hx{position:relative;isolation:isolate}.hxg{position:relative;z-index:2}.hxv{grid-template-columns:1fr;gap:14px;max-width:430px;margin-left:auto}.sc{margin:0!important;animation:none;backdrop-filter:blur(10px)}
.hero-shape{position:absolute;pointer-events:none;z-index:1;border:1px solid rgba(255,255,255,.18);border-radius:32% 68% 56% 44%;transform:rotate(-20deg)}.hero-shape-a{width:320px;height:320px;right:4%;top:12%;background:linear-gradient(145deg,rgba(214,40,40,.22),rgba(255,255,255,.02));animation:shapeDrift 13s ease-in-out infinite}.hero-shape-b{width:150px;height:150px;right:26%;bottom:5%;border-radius:50%;border-color:rgba(255,255,255,.1);animation:shapeDrift 16s ease-in-out infinite reverse}
@keyframes shapeDrift{0%,100%{transform:translateY(0) rotate(-20deg)}50%{transform:translateY(-12px) rotate(-8deg)}}
.market-insight-v8{background:linear-gradient(135deg,#f8f8f6 0%,#fff 58%,#fff4f4 100%)}.market-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:end;margin-bottom:28px}.market-intro h2{margin-bottom:0}.market-intro>p{color:#565c65;margin:0}.market-index{display:inline-block;font:600 .72rem Poppins,sans-serif;letter-spacing:.12em;color:var(--future-red);margin-bottom:12px}.market-specific article{transition:transform .25s,box-shadow .25s;border-radius:16px;box-shadow:0 10px 30px rgba(18,24,33,.035)}.market-specific article:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(18,24,33,.09)}
.purpose-heading{max-width:780px;margin-bottom:32px}.purpose-heading>p:last-child{color:#5b616b}.purpose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.purpose-grid article,.team-card{border:1px solid var(--border);border-radius:16px;padding:26px;background:#fff;transition:transform .22s,box-shadow .22s}.purpose-grid article:hover,.team-card:hover{transform:translateY(-4px);box-shadow:0 16px 38px rgba(20,24,30,.08)}.purpose-grid article>span{color:var(--future-red);font-size:.8rem;font-weight:700;letter-spacing:.12em}.purpose-grid h3{margin-top:14px}.purpose-grid p{margin-bottom:0;color:#5b616b}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.team-card{padding:22px}.team-avatar{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#d62828,#f7a0a0);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.1rem;margin-bottom:18px}.team-card h3{margin:0 0 6px}.team-card p{margin:0 0 8px;color:var(--future-red);font-weight:600}.team-card span{font-size:.86rem;color:#626873}.office-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px;padding:22px;border-radius:16px;background:#f6f6f3}.office-strip p{margin:6px 0 0;color:#5b616b}
/* Keep the mobile hero balanced and stop the three discovery cards from clipping. */
@media(max-width:900px){.hxv{display:grid;grid-template-columns:1fr;width:100%;max-width:100%;margin:24px 0 0}.hxg{grid-template-columns:1fr}.hx{padding:66px 0 48px}.sc{width:100%;padding:15px 16px}.s1,.s2,.s3{margin:0}.market-intro{grid-template-columns:1fr;gap:12px}.purpose-grid{grid-template-columns:1fr 1fr}.team-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hxv{gap:10px}.sc{border-radius:12px}.sc span{font-size:.82rem}.hero-shape-a{width:220px;height:220px;right:-70px;top:18%}.hero-shape-b{width:100px;height:100px;right:12%;bottom:8%}.purpose-grid,.team-grid,.office-strip{grid-template-columns:1fr}.market-specific{gap:14px}.hero.page.img .hpg{grid-template-columns:1fr}.hero.page.img .hpi{display:none}}
@media(prefers-reduced-motion:reduce){.hero-shape,.purpose-grid article,.team-card,.market-specific article{animation:none;transition:none}}

.training-curriculum>div:first-child{align-self:start;position:sticky;top:110px}.training-curriculum .ticks li{padding:16px 0 16px 24px}.training-curriculum .ticks li:before{width:10px;height:10px;border-radius:50%;top:25px}.training-curriculum .note{margin-top:14px}@media(max-width:900px){.training-curriculum>div:first-child{position:static}}


/* Carefully scoped Version 8 refinements requested by the client */
/* Cream hero background changes only on About and Contact; other pages retain Version 8 styling. */
body:has(a[aria-current="page"]):has(.hero.page) .hero.page { }
body:has(.hero.page .crumbs span[aria-current="page"]) .hero.page { }
/* Scoped via canonical page URLs in the page content to avoid changing unrelated heroes. */
.hero.page.blue-page {background:#0d1b2a;color:#fff}
.logo-image{display:flex;align-items:center;flex:0 0 auto;max-width:250px}
.logo-image img{display:block;width:100%;max-width:250px;height:auto;max-height:62px;object-fit:contain;object-position:left center}
.footer-main{grid-template-columns:1.35fr 1fr 1.15fr 1fr 1.25fr}
.footer-social{display:flex;gap:10px;align-items:center;margin-top:18px}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:inherit;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.footer-social a:hover{transform:translateY(-3px);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.45)}
.footer-social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.floating-actions .float-btn{animation:fiFloat 3.4s ease-in-out infinite}
.floating-actions .call-float{animation-delay:-1.7s}
@keyframes fiFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.training-curriculum{position:relative}
.training-curriculum>div:first-child{padding:clamp(22px,3vw,34px);border-radius:16px;background:linear-gradient(145deg,#f3f6fa,#fff);border:1px solid #e5e9ef}
.training-curriculum>div:last-child{padding:clamp(22px,3vw,34px);border-radius:16px;background:#fff;border:1px solid #e5e9ef;box-shadow:0 12px 32px rgba(13,27,42,.06)}
.outcome-section{background:linear-gradient(135deg,#f5f7fa,#fff 70%)}
.outcome-heading{margin-bottom:28px}
.outcome-card{box-shadow:0 14px 34px rgba(13,27,42,.07);border-color:#e0e6ed;border-radius:18px}
.outcome-mark{background:#e9eef5;color:#0d1b2a}
section.sec:has(> .wrap.split > div > h2:first-child) dl.facts{display:grid;grid-template-columns:130px 1fr;gap:12px 20px;margin:0;padding:clamp(22px,3vw,32px);background:#fff;border:1px solid #e3e8ee;border-radius:16px;box-shadow:0 12px 32px rgba(13,27,42,.05)}
section.sec:has(> .wrap.split > div > h2:first-child) dl.facts dt{font-weight:600;color:#0d1b2a}
section.sec:has(> .wrap.split > div > h2:first-child) dl.facts dd{margin:0;color:#565e68}
@media(max-width:1050px){.footer-main{grid-template-columns:repeat(3,minmax(0,1fr))}.logo-image{max-width:220px}}
@media(max-width:760px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}.logo-image{max-width:205px}.logo-image img{max-height:52px}}
@media(max-width:560px){.footer-main{grid-template-columns:1fr}.logo-image{max-width:210px}.training-curriculum>div:first-child,.training-curriculum>div:last-child{padding:22px}section.sec:has(> .wrap.split > div > h2:first-child) dl.facts{grid-template-columns:1fr;gap:5px}section.sec:has(> .wrap.split > div > h2:first-child) dl.facts dd{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){.floating-actions .float-btn{animation:none!important}}


/* October 2026 refinement pass */
/* Keep location cards in a single column on phones. */
@media(max-width:560px){main .lgrid{grid-template-columns:1fr!important}.lc{min-height:150px}}
/* Consistent readable dark hero treatment across About, Locations and Contact. */
.hero.page.blue-page{background:#0d1b2a!important;color:#fff!important}
.hero.page.blue-page h1,.hero.page.blue-page .lead,.hero.page.blue-page .eyebrow,.hero.page.blue-page .crumbs,.hero.page.blue-page .crumbs a{color:#fff!important}
.hero.page.blue-page .lead{opacity:.92}
/* Locations overview cards */
.location-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0 34px}
.location-feature{overflow:hidden;border:1px solid var(--border,#e5e7eb);border-radius:18px;background:#fff;box-shadow:0 14px 36px rgba(13,27,42,.07)}
.location-feature img{width:100%;height:220px;object-fit:cover;display:block}
.location-feature div{padding:24px}
.location-feature span{font:600 .72rem Poppins,sans-serif;letter-spacing:.12em;color:var(--future-red,#d62828)}
.location-feature h2{font-size:1.35rem;margin:8px 0}
.location-feature p{margin:0;color:#565c65}
/* Shared credentials strip appears in the shared footer on every page. */
.accreditation-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);margin:12px 0 22px}
.accreditation-label{color:#fff;font:600 .85rem Poppins,sans-serif;white-space:nowrap}
.accreditation-logos{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.accreditation-logos img{display:block;width:auto;max-width:180px;height:42px;object-fit:contain;background:#fff;border-radius:4px;padding:4px 8px}
.footer-logo img{display:block;width:100%;height:auto;max-width:250px;max-height:74px;object-fit:contain;object-position:left center}
/* Contact page content stays aligned to the same site container as other pages. */
#main .wrap{box-sizing:border-box}
#main .form{width:100%;max-width:100%;box-sizing:border-box;margin:0 auto}
#main .form input,#main .form select,#main .form textarea{box-sizing:border-box;max-width:100%}
#main .g2{gap:10px 20px}
#main .form p{margin-bottom:18px}
#main .form p:last-child{margin-bottom:0}
@media(max-width:760px){.location-feature-grid{grid-template-columns:1fr}.location-feature img{height:190px}.accreditation-strip{align-items:flex-start;flex-direction:column;gap:14px}.accreditation-logos{gap:12px}.accreditation-logos img{max-width:145px;height:36px}.footer-logo img{max-width:220px}}

.form-alert{padding:14px 18px;margin:0 0 20px;border:1px solid #e9a7a7;border-left:4px solid #d62828;border-radius:10px;background:#fff5f5;color:#7c2020}
.academy-enquiry-section,.academy-enquiry{scroll-margin-top:100px}
.academy-enquiry-form{margin:0;min-width:0}
.academy-enquiry-form input,.academy-enquiry-form select,.academy-enquiry-form textarea{min-width:0}
@media(max-width:760px){.academy-enquiry-form{padding:20px 16px!important}.academy-enquiry-form .field{margin-bottom:14px}.academy-feature{gap:22px}.academy-points{margin:22px 0}.academy-enquiry-copy{padding:0!important}}


/* Shared Google review carousel */
.fi-reviews{padding:76px 0;background:#f5f7fa;color:#142333;overflow:hidden}
.fi-reviews-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.fi-reviews-head h2{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.15;margin:0 0 12px;color:#0d1b2a}
.fi-reviews-intro{margin:0;color:#526171;max-width:640px}
.fi-review-controls{display:flex;gap:10px;flex-shrink:0}
.fi-review-arrow{width:44px;height:44px;border:1px solid #cbd5df;border-radius:50%;background:#fff;color:#0d1b2a;font-size:22px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.fi-review-arrow:hover,.fi-review-arrow:focus-visible{background:#0d1b2a;color:#fff;border-color:#0d1b2a}
.fi-review-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:2px 2px 16px;scrollbar-width:thin;scrollbar-color:#b8c4d0 transparent}
.fi-review-card{display:flex;flex-direction:column;min-height:310px;padding:25px;background:#fff;border:1px solid #e2e8ef;border-radius:18px;box-shadow:0 12px 34px rgba(13,27,42,.06);scroll-snap-align:start}
.fi-review-top{display:flex;align-items:center;gap:9px;margin-bottom:18px}.fi-google-mark{font-family:Arial,sans-serif;font-weight:700;font-size:27px;line-height:1;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 25% 48%,#fbbc05 48% 70%,#ea4335 70% 85%,#4285f4 85%);color:transparent;background-clip:text;-webkit-background-clip:text}.fi-review-source{font-size:.83rem;color:#647386;font-weight:600}
.fi-review-card blockquote{margin:0 0 24px;font-size:.96rem;line-height:1.75;color:#27394b;flex:1}
.fi-review-person{display:flex;align-items:center;gap:12px;padding-top:17px;border-top:1px solid #edf0f4}.fi-review-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8eef5;color:#0d1b2a;font-weight:700}.fi-review-person-text{display:flex;flex-direction:column;gap:3px}.fi-review-person-text strong{font-size:.93rem;color:#142333}.fi-review-person-text span{font-size:.78rem;color:#657386}.fi-review-link{display:inline-flex;align-self:flex-start;gap:7px;margin-top:16px;color:#1459a6;font-size:.84rem;font-weight:600;text-decoration:none}.fi-review-link:hover{text-decoration:underline}
.fi-review-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;color:#657386;font-size:.82rem}.fi-all-reviews{color:#0d1b2a;font-weight:700;text-decoration:none}.fi-all-reviews:hover{text-decoration:underline}
@media(max-width:900px){.fi-review-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:600px){.fi-reviews{padding:52px 0}.fi-reviews-head{align-items:flex-start}.fi-review-controls{padding-top:4px}.fi-review-arrow{width:38px;height:38px}.fi-review-track{grid-auto-columns:88%;gap:14px}.fi-review-card{padding:21px;min-height:300px}.fi-review-bottom{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.fi-review-track{scroll-behavior:auto}}


/* October 2026 site-wide design consistency: navy hero and CTA, readable white text, responsive spacing. */
:root{--navy:#0d1b2a;--future-red:#e63946;--w:1240px}
.hero.big,.hero.page,.hero.page.img{background-color:#0d1b2a;color:#fff}
.hero.page{background-image:linear-gradient(120deg,#0d1b2a,#142b40)!important}
.hero.big h1,.hero.page h1,.hero.page.img h1,.hero.big h2,.hero.page .lead,.hero.page.img .lead{color:#fff}
.hero.big .lead,.hero.page .lead,.hero.page.img .lead{color:#eef2f7}
.hero.page .eyebrow,.hero.page.img .eyebrow,.hero.big .eyebrow{color:#ff9a9a}
.hero.page .crumbs ol,.hero.page .crumbs a,.hero.page.img .crumbs ol,.hero.page.img .crumbs a{color:#e1e7ef}
.hero.page.img::after{background:linear-gradient(90deg,rgba(13,27,42,.94) 0%,rgba(13,27,42,.78) 58%,rgba(13,27,42,.66) 100%)!important}
.hero.page.img .bgimg{opacity:.24}
/* Standard CTA component used across existing pages */
.cband{background:#0d1b2a!important;color:#fff;text-align:center;padding:clamp(52px,7vw,92px) 24px!important;position:relative;isolation:isolate}
.cband::before{content:"";position:absolute;inset:0;border-top:4px solid #e63946;pointer-events:none;z-index:-1}
.cband>.wrap{width:100%;max-width:900px;margin:0 auto;padding:0 12px}
.cband h2{color:#fff!important;font-size:clamp(1.75rem,3.5vw,2.65rem);line-height:1.2;max-width:25ch;margin:0 auto 18px}
.cband p{color:#e2e8f0!important;max-width:650px;margin:0 auto 18px;line-height:1.75}
.cband p:last-child{margin:26px auto 0}
.cband .btn.light{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:14px 26px;background:#e63946!important;color:#fff!important;border:1px solid #e63946!important;border-radius:6px;font-weight:600;box-shadow:0 8px 20px rgba(0,0,0,.18)}
.cband .btn.light:hover{background:#fff!important;color:#0d1b2a!important;border-color:#fff!important;transform:translateY(-1px)}
.cta{background:#0d1b2a!important;color:#fff}
.cta h2,.cta h3{color:#fff}.cta p{color:#e2e8f0}
.location-keyword-context,.service-keyword-context{margin-top:14px;line-height:1.8;color:var(--gray);font-size:.97rem}
.location-keyword-context a,.service-keyword-context a{font-weight:600;text-underline-offset:3px}
@media(max-width:760px){.cband{padding:52px 18px!important}.cband>.wrap{padding:0 4px}.cband h2{max-width:100%;font-size:clamp(1.55rem,7vw,2rem)}.cband p{font-size:.98rem}.hero.page.img{padding:54px 0 44px}.hero.page.img .bgimg{opacity:.18}.hero.page.img::after{background:rgba(13,27,42,.88)!important}.hero.page h1,.hero.page.img h1{max-width:100%;overflow-wrap:anywhere}.location-keyword-context,.service-keyword-context{font-size:.94rem}}

.case-study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0}.case-study-card{background:#fff;border:1px solid var(--border);border-top:4px solid var(--future-red);border-radius:12px;padding:clamp(22px,3vw,34px);box-shadow:0 12px 32px rgba(13,27,42,.06)}.case-study-card h3{font-size:1.35rem;line-height:1.3;margin:0 0 16px}.case-study-card .eyebrow{margin-bottom:10px}.case-study-card p{line-height:1.75}.case-study-card .note{font-size:.86rem}.case-study-disclaimer{margin:18px 0;color:var(--gray);font-size:.9rem}@media(max-width:760px){.case-study-grid{grid-template-columns:1fr;gap:16px}.case-study-card{padding:22px}}


/* FINAL HERO CONTRAST FIX — October 2026
   Keep every hero on the brand navy and force all hero H1 text white,
   including nested spans/highlight spans that may otherwise inherit dark colors. */
.hero,
.hero.big,
.hero.page,
.hero.page.img,
.hero-section,
.page-hero,
.hero-banner,
.hx {
  background-color: #0d1b2a !important;
  color: #ffffff !important;
}
.hero h1,
.hero h1 *,
.hero.big h1,
.hero.big h1 *,
.hero.page h1,
.hero.page h1 *,
.hero.page.img h1,
.hero.page.img h1 *,
.hero-section h1,
.hero-section h1 *,
.page-hero h1,
.page-hero h1 *,
.hero-banner h1,
.hero-banner h1 *,
.hx h1,
.hx h1 * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.hero .lead,
.hero.big .lead,
.hero.page .lead,
.hero.page.img .lead,
.hero-section .lead,
.page-hero .lead,
.hero-banner .lead,
.hx p { color: #ffffff !important; }
.hero.page:not(.img),
.hero.page.blue-page { background: #0d1b2a !important; }
.hero.page.img .bgimg { opacity: .12 !important; }
.hero.page.img::after { background: rgba(13,27,42,.88) !important; }
