/* Wolf Hack Academy · Visual Art Direction 17 · 14.24.0
   Premium asset integration layer. Preserves content and protected certification brochures. */
:root{
  --wha-art-cyan:#32dcff;
  --wha-art-blue:#1185ff;
  --wha-art-navy:#041526;
  --wha-art-navy-2:#082b4b;
  --wha-art-steel:#9ab5c8;
  --wha-art-ice:#f5faff;
  --wha-art-line:rgba(51,175,235,.22);
  --wha-art-glow:0 0 34px rgba(25,174,255,.22);
  --wha-art-shadow:0 26px 76px rgba(3,20,38,.19);
}

/* ---------- shell refinement ---------- */
.wha-shell-header .header-inner{min-height:86px;gap:20px}
.wha-shell-header .brand-mark{position:relative;overflow:hidden}
.wha-shell-header .brand-mark:after{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,transparent 35%,rgba(110,225,255,.2) 49%,transparent 63%);transform:translateX(-80%);transition:transform .65s ease}
.wha-shell-header .brand:hover .brand-mark:after{transform:translateX(80%)}
.wha-shell-header .brand-word small{max-width:230px;white-space:normal}
.wha-nav-deck{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.wha-nav-deck>a,.wha-nav-deck>.nav-drop>summary{position:relative;isolation:isolate}
.wha-nav-deck>a:before,.wha-nav-deck>.nav-drop>summary:before{content:"";position:absolute;left:12px;right:12px;bottom:5px;height:1px;background:linear-gradient(90deg,transparent,var(--wha-art-cyan),transparent);opacity:0;transform:scaleX(.45);transition:.2s ease}
.wha-nav-deck>a:hover:before,.wha-nav-deck>a[aria-current=page]:before,.wha-nav-deck>.nav-drop[open]>summary:before{opacity:.75;transform:scaleX(1)}
.wha-shell-header .mega{overflow:hidden;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.wha-shell-header .mega:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 13% 0%,rgba(50,220,255,.09),transparent 24%),linear-gradient(90deg,rgba(77,203,255,.035) 1px,transparent 1px),linear-gradient(rgba(77,203,255,.028) 1px,transparent 1px);background-size:auto,44px 44px,44px 44px}
.wha-shell-header .mega>*{position:relative;z-index:1}
.wha-shell-header .mega-identity{width:72px;height:72px;padding:3px;background:radial-gradient(circle at 50% 38%,rgba(24,132,213,.26),rgba(3,17,31,.92) 69%);box-shadow:inset 0 0 30px rgba(41,189,255,.08),0 16px 34px rgba(0,0,0,.25)}
.wha-shell-header .mega-identity img{filter:drop-shadow(0 12px 18px rgba(16,144,255,.34));transform:scale(1.08)}
.wha-shell-header .mega-link{position:relative;overflow:hidden}
.wha-shell-header .mega-link:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 0 55%,rgba(50,220,255,.06));opacity:0;transition:.2s ease}
.wha-shell-header .mega-link:hover:before{opacity:1}
.wha-shell-header .mega-icon{box-shadow:inset 0 0 16px rgba(45,193,255,.06)}

/* ---------- reusable art objects ---------- */
.wha-art-img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(0,92,180,.22));user-select:none;-webkit-user-drag:none}
.wha-art-float{animation:whaArtFloat 6s ease-in-out infinite}
.wha-art-float--slow{animation-duration:8.5s}
.wha-art-float--delay{animation-delay:-2.1s}
@keyframes whaArtFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.wha-art-circuit{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(60,195,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(60,195,255,.055) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at center,#000 25%,transparent 82%)}
.wha-art-ring{position:absolute;border:1px solid rgba(64,211,255,.22);border-radius:50%;box-shadow:inset 0 0 26px rgba(18,144,255,.04),0 0 28px rgba(18,144,255,.04)}
.wha-art-data-label{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(75,207,255,.2);border-radius:8px;background:rgba(4,24,43,.72);color:#a8cfe4;font:700 8px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.wha-art-data-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--wha-art-cyan);box-shadow:0 0 10px var(--wha-art-cyan)}

/* ---------- home command center ---------- */
.hero-v2-visual{isolation:isolate}
.hero-v2-core{z-index:5;width:276px;height:276px}
.hero-v2-core:before{content:"";position:absolute;inset:-28px;border:1px dashed rgba(75,216,255,.18);border-radius:50%;animation:whaSpin 32s linear infinite}
@keyframes whaSpin{to{transform:rotate(360deg)}}
.hero-v2-core img{width:194px;height:194px}
.wha-core-art{position:absolute;z-index:4;width:104px;height:104px;padding:4px;border:1px solid rgba(59,206,255,.18);border-radius:22px;background:radial-gradient(circle,rgba(10,82,139,.34),rgba(2,16,30,.42) 68%,transparent 70%);filter:drop-shadow(0 18px 22px rgba(0,0,0,.22))}
.wha-core-art img{width:100%;height:100%;object-fit:contain}
.wha-core-art.a1{left:9%;top:25%}.wha-core-art.a2{right:8%;top:25%}.wha-core-art.a3{left:12%;bottom:17%}.wha-core-art.a4{right:11%;bottom:17%}
.hero-v2-node{z-index:6;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.hero-v2-bottom{z-index:7}
.wha-domain-art{position:absolute;right:18px;bottom:15px;width:92px;height:92px;z-index:3;opacity:.92;filter:drop-shadow(0 14px 18px rgba(0,54,110,.25));pointer-events:none}
.p2-domain-visual{position:relative;isolation:isolate}
.p2-domain-visual:after{content:"";position:absolute;right:8px;bottom:7px;width:128px;height:128px;border-radius:50%;background:radial-gradient(circle,rgba(26,181,255,.15),transparent 68%);pointer-events:none}


/* Contextualize the shared hero telemetry label for custom visual systems. */
.public-hero-visual:has(.wha-range-stage)::after{content:"WHA // CYBER RANGE SYSTEM"}
.public-hero-visual:has(.wha-library-stage)::after{content:"WHA // KNOWLEDGE SYSTEM"}

/* ---------- laboratory hero / cyber range ---------- */
.wha-range-stage{position:relative;width:100%;min-height:430px;height:100%;overflow:hidden;border-radius:inherit;background:radial-gradient(circle at 50% 48%,rgba(0,131,255,.21),transparent 33%),linear-gradient(155deg,#03111f,#082c4d 72%,#0b3a61);border:1px solid rgba(67,208,255,.26);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 28px 70px rgba(0,0,0,.25)}
.wha-range-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(84,210,255,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(84,210,255,.065) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(#000,rgba(0,0,0,.2))}
.wha-range-stage:after{content:"";position:absolute;left:7%;right:7%;bottom:38px;height:1px;background:linear-gradient(90deg,transparent,rgba(83,220,255,.72),transparent);box-shadow:0 0 18px rgba(51,211,255,.35)}
.wha-range-core{position:absolute;left:50%;top:50%;width:245px;height:245px;transform:translate(-50%,-49%);z-index:4;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(66,216,255,.34);background:radial-gradient(circle,rgba(10,89,151,.38),rgba(3,17,31,.84) 66%);box-shadow:0 0 0 30px rgba(21,129,205,.045),0 0 0 60px rgba(21,129,205,.025),inset 0 0 46px rgba(26,167,255,.12)}
.wha-range-core img{width:184px;height:184px;object-fit:contain;filter:drop-shadow(0 20px 26px rgba(0,98,194,.4))}
.wha-range-core span{position:absolute;bottom:18px;color:#75e8ff;font:700 8px var(--font-mono);letter-spacing:.14em}
.wha-range-object{position:absolute;z-index:5;width:105px;height:105px;display:grid;place-items:center;border-radius:18px;border:1px solid rgba(69,206,255,.18);background:linear-gradient(150deg,rgba(9,49,82,.76),rgba(3,19,34,.76));box-shadow:0 18px 32px rgba(0,0,0,.22)}
.wha-range-object img{width:92%;height:92%;object-fit:contain}
.wha-range-object small{position:absolute;white-space:nowrap;padding:5px 7px;border-radius:6px;background:rgba(2,15,27,.82);border:1px solid rgba(78,207,255,.16);color:#9bc9df;font:700 7px var(--font-mono);letter-spacing:.08em}
.wha-range-object.r1{left:7%;top:14%}.wha-range-object.r1 small{left:82px;top:8px}
.wha-range-object.r2{right:7%;top:14%}.wha-range-object.r2 small{right:82px;top:8px}
.wha-range-object.r3{left:8%;bottom:13%}.wha-range-object.r3 small{left:82px;bottom:8px}
.wha-range-object.r4{right:8%;bottom:13%}.wha-range-object.r4 small{right:82px;bottom:8px}
.wha-range-stage .range-status{position:absolute;z-index:7;left:18px;top:43px;color:#62e4ff;font:700 8px var(--font-mono);letter-spacing:.13em}
.wha-range-stage .range-status:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;background:#32dcff;box-shadow:0 0 12px #32dcff}
.wha-range-stage .range-footer{position:absolute;z-index:7;left:18px;right:18px;bottom:14px;display:flex;justify-content:space-between;color:#759eb7;font:700 7px var(--font-mono);letter-spacing:.11em}

/* capability cards use stronger art without changing the content */
.p3-cap{position:relative;overflow:hidden;min-height:132px;padding-top:68px!important}
.p3-cap>img{position:absolute;top:8px;left:12px;width:58px!important;height:58px!important;object-fit:contain!important;filter:drop-shadow(0 10px 14px rgba(0,80,160,.26));transition:.25s ease}
.p3-cap:hover>img{transform:translateY(-3px) scale(1.04)}

/* ---------- simulator hero ---------- */
.simulator-hero{overflow:hidden;position:relative;background:linear-gradient(105deg,#f8fbfe 0%,#edf6fb 54%,#06182b 54.2%,#092f50 100%);border-bottom:1px solid #c9dce8}
.simulator-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(36,118,175,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(36,118,175,.055) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,#000 0 60%,transparent 92%)}
.wha-simulator-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,.83fr);gap:52px;align-items:center;min-height:510px;padding-block:50px}
.wha-simulator-copy{max-width:760px}
.wha-simulator-copy h1{font-size:clamp(3rem,5vw,5.4rem);line-height:.96;letter-spacing:-.045em;color:#081a2e}
.wha-simulator-copy .section-index{color:#0871e7}
.wha-sim-stage{position:relative;min-height:400px;border:1px solid rgba(67,204,255,.28);border-radius:26px;background:radial-gradient(circle at 50% 48%,rgba(12,135,255,.2),transparent 31%),linear-gradient(155deg,#03111e,#082b4a);box-shadow:0 30px 70px rgba(0,0,0,.27);overflow:hidden}
.wha-sim-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(78,211,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(78,211,255,.06) 1px,transparent 1px);background-size:30px 30px}
.wha-sim-core{position:absolute;left:50%;top:50%;width:210px;height:210px;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(64,210,255,.3);background:radial-gradient(circle,rgba(10,82,139,.38),rgba(2,14,26,.85) 68%);box-shadow:0 0 0 34px rgba(15,132,215,.035),inset 0 0 38px rgba(17,149,245,.1)}
.wha-sim-core img{width:155px;height:155px;object-fit:contain}.wha-sim-core span{position:absolute;bottom:12px;color:#6ce4ff;font:700 7px var(--font-mono);letter-spacing:.12em}
.wha-sim-object{position:absolute;z-index:4;width:92px;height:92px;filter:drop-shadow(0 15px 20px rgba(0,0,0,.25))}
.wha-sim-object img{width:100%;height:100%;object-fit:contain}.wha-sim-object.s1{left:8%;top:15%}.wha-sim-object.s2{right:8%;top:14%}.wha-sim-object.s3{left:10%;bottom:12%}.wha-sim-object.s4{right:10%;bottom:12%}
.wha-sim-object.is-challenge{width:84px;height:84px}
.wha-sim-caption{position:absolute;left:16px;right:16px;bottom:14px;display:flex;justify-content:space-between;color:#7ea6bd;font:700 7px var(--font-mono);letter-spacing:.1em}
.sim-intel-card{position:relative;overflow:hidden}.sim-intel-card>img{filter:drop-shadow(0 12px 18px rgba(0,83,164,.22))}

/* ---------- certification catalog hero ---------- */
.page-hero.wha-cert-catalog-hero{overflow:hidden;background:linear-gradient(110deg,#f8fbfe 0%,#eef6fb 58%,#071a2f 58.2%,#0b365b 100%);border-bottom:1px solid #c7dce9}
.wha-cert-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(430px,.8fr);gap:48px;align-items:center;min-height:520px;padding-block:48px}
.wha-cert-hero-copy h1{font-size:clamp(3.1rem,5vw,5.4rem);line-height:.96;letter-spacing:-.045em;max-width:840px}
.wha-cert-hero-copy .catalog-toolbar{margin-top:28px}
.wha-cert-stage{position:relative;min-height:400px;border-radius:28px;border:1px solid rgba(70,210,255,.3);background:radial-gradient(circle at 50% 45%,rgba(11,132,255,.22),transparent 33%),linear-gradient(150deg,#041426,#092f50);box-shadow:0 32px 76px rgba(0,0,0,.28);overflow:hidden}
.wha-cert-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(83,211,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(83,211,255,.055) 1px,transparent 1px);background-size:32px 32px}
.wha-cert-main{position:absolute;left:50%;top:48%;width:230px;height:230px;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(67,214,255,.29);background:radial-gradient(circle,rgba(13,92,154,.38),rgba(3,18,32,.8) 70%);box-shadow:0 0 0 36px rgba(18,143,235,.035)}
.wha-cert-main img{width:185px;height:185px;object-fit:contain}.wha-cert-main span{position:absolute;bottom:10px;color:#68e5ff;font:700 7px var(--font-mono);letter-spacing:.12em}
.wha-cert-object{position:absolute;z-index:4;width:102px;height:102px}.wha-cert-object img{width:100%;height:100%;object-fit:contain}.wha-cert-object.c1{left:7%;top:13%}.wha-cert-object.c2{right:7%;top:13%}.wha-cert-object.c3{left:10%;bottom:12%}.wha-cert-object.c4{right:10%;bottom:12%}
.wha-cert-stage .cert-stage-label{position:absolute;left:16px;top:15px;color:#65e3ff;font:700 8px var(--font-mono);letter-spacing:.12em}.wha-cert-stage .cert-stage-footer{position:absolute;left:16px;right:16px;bottom:13px;display:flex;justify-content:space-between;color:#7da6bd;font:700 7px var(--font-mono);letter-spacing:.1em}

/* ---------- E-Learning stage ---------- */
.modality-stage-shell{isolation:isolate;overflow:visible!important}
.wha-elearn-flow{position:absolute;z-index:9;left:5%;right:5%;bottom:-30px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;border:1px solid rgba(79,205,255,.24);border-radius:16px;background:rgba(3,20,36,.9);box-shadow:0 20px 42px rgba(0,0,0,.28);backdrop-filter:blur(12px)}
.wha-elearn-node{min-width:0;display:grid;grid-template-columns:44px 1fr;gap:7px;align-items:center;padding:7px;border-radius:10px;background:rgba(255,255,255,.025);border:1px solid rgba(104,198,240,.1)}
.wha-elearn-node img{width:44px;height:44px;object-fit:contain}.wha-elearn-node b{display:block;color:#fff;font:800 8px var(--font-head);letter-spacing:.04em}.wha-elearn-node span{display:block;margin-top:2px;color:#88abc1;font:600 6.5px var(--font-mono);letter-spacing:.05em}
.modality-hero-v2{padding-bottom:34px}
.modality-copy h1{font-size:clamp(3.2rem,4.15vw,5.1rem);max-width:15.5ch;text-wrap:balance}

/* ---------- materials / knowledge library ---------- */
.wha-library-stage{position:relative;width:100%;min-height:430px;height:100%;overflow:hidden;border-radius:inherit;background:radial-gradient(circle at 50% 47%,rgba(9,128,255,.19),transparent 33%),linear-gradient(155deg,#03111f,#082d4d);border:1px solid rgba(67,207,255,.25);box-shadow:0 28px 70px rgba(0,0,0,.24)}
.wha-library-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(80,208,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(80,208,255,.055) 1px,transparent 1px);background-size:32px 32px}
.wha-library-main{position:absolute;left:50%;top:50%;width:245px;height:245px;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;border:1px solid rgba(65,213,255,.28);border-radius:50%;background:radial-gradient(circle,rgba(11,89,151,.36),rgba(3,18,32,.83) 67%)}
.wha-library-main img{width:190px;height:190px;object-fit:contain}.wha-library-main span{position:absolute;bottom:12px;color:#69e4ff;font:700 7px var(--font-mono);letter-spacing:.11em}
.wha-library-object{position:absolute;z-index:4;width:100px;height:100px}.wha-library-object img{width:100%;height:100%;object-fit:contain}.wha-library-object.l1{left:7%;top:14%}.wha-library-object.l2{right:7%;top:14%}.wha-library-object.l3{left:10%;bottom:12%}.wha-library-object.l4{right:10%;bottom:12%}
.wha-library-stage .library-status{position:absolute;left:16px;top:43px;color:#68e5ff;font:700 8px var(--font-mono);letter-spacing:.12em}.wha-library-stage .library-status:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:7px;background:#34dcff;box-shadow:0 0 10px #34dcff}
.resource-card{position:relative;overflow:hidden;padding-top:78px!important}.resource-card .wha-resource-card-art{position:absolute;right:12px;top:7px;width:70px;height:70px;object-fit:contain;filter:drop-shadow(0 10px 15px rgba(0,80,160,.2));opacity:.95;transition:.25s ease}.resource-card:hover .wha-resource-card-art{transform:translateY(-3px) scale(1.04)}

/* ---------- cybersecurity services ---------- */
.p5-hero-visual{isolation:isolate}
.p5-hero-core{z-index:6!important;width:144px!important;height:144px!important}.p5-hero-core img{width:124px!important;height:124px!important;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(0,84,168,.34))}.p5-hero-core small{bottom:-7px!important;background:rgba(2,17,29,.75);padding:4px 8px;border-radius:6px}
.wha-service-orbit{position:absolute;z-index:4;width:76px;height:76px;opacity:.93;filter:drop-shadow(0 14px 18px rgba(0,0,0,.24));pointer-events:none}.wha-service-orbit img{width:100%;height:100%;object-fit:contain}.wha-service-orbit.v1{left:17%;top:26%}.wha-service-orbit.v2{right:16%;top:26%}.wha-service-orbit.v3{left:18%;bottom:22%}.wha-service-orbit.v4{right:18%;bottom:22%}
.p5-service-card .p5-card-icon{width:72px;height:72px;border-radius:16px;padding:4px}.p5-service-card .p5-card-icon img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 16px rgba(0,77,151,.25))}

/* ---------- institutional visual differentiation ---------- */
.wha-institution-stage{position:relative;width:100%;min-height:430px;height:100%;overflow:hidden;border-radius:26px;border:1px solid rgba(69,210,255,.25);background:radial-gradient(circle at 50% 47%,rgba(8,125,255,.19),transparent 34%),linear-gradient(155deg,#03111f,#082c4b);box-shadow:0 28px 70px rgba(0,0,0,.24)}
.wha-institution-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(82,210,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(82,210,255,.055) 1px,transparent 1px);background-size:34px 34px}
.wha-institution-core{position:absolute;left:50%;top:50%;width:235px;height:235px;transform:translate(-50%,-50%);z-index:3;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(67,213,255,.28);background:radial-gradient(circle,rgba(12,91,151,.38),rgba(3,17,30,.84) 68%)}
.wha-institution-core img{width:184px;height:184px;object-fit:contain}.wha-institution-core span{position:absolute;bottom:13px;color:#6de5ff;font:700 7px var(--font-mono);letter-spacing:.11em}
.wha-institution-object{position:absolute;z-index:4;width:96px;height:96px}.wha-institution-object img{width:100%;height:100%;object-fit:contain}.wha-institution-object.i1{left:8%;top:16%}.wha-institution-object.i2{right:8%;top:16%}.wha-institution-object.i3{left:12%;bottom:13%}.wha-institution-object.i4{right:12%;bottom:13%}
.wha-hero-corner-art{position:absolute;z-index:7;right:14px;bottom:12px;width:82px;height:82px;pointer-events:none;filter:drop-shadow(0 12px 18px rgba(0,0,0,.25))}.wha-hero-corner-art img{width:100%;height:100%;object-fit:contain}

/* ---------- generic art seal for secondary pages ---------- */
.wha-page-art-seal{position:absolute;z-index:8;right:clamp(18px,4vw,58px);top:50%;width:clamp(100px,10vw,150px);height:clamp(100px,10vw,150px);transform:translateY(-50%);display:grid;place-items:center;border-radius:50%;border:1px solid rgba(66,207,255,.2);background:radial-gradient(circle,rgba(18,132,213,.15),transparent 69%);pointer-events:none}.wha-page-art-seal img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 16px 22px rgba(0,71,140,.23))}
.page-hero:has(.wha-page-art-seal),.public-hero:has(.wha-page-art-seal){position:relative}.page-hero:has(.wha-page-art-seal)>.editorial:not(.wha-cert-hero-grid),.public-hero:has(.wha-page-art-seal)>.editorial{padding-right:clamp(130px,14vw,210px)}

/* ---------- footer refinement ---------- */
.wha-footer-v2{position:relative;overflow:hidden}.wha-footer-v2:before{content:"";position:absolute;right:-110px;bottom:-130px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(22,162,255,.1),transparent 66%);pointer-events:none}.footer-v2-cta{position:relative;overflow:hidden}.footer-v2-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 0 58%,rgba(50,220,255,.055));pointer-events:none}.footer-v2-brand{position:relative}.footer-v2-brand .wha-footer-art{position:absolute;right:0;top:4px;width:88px;height:88px;opacity:.18;filter:grayscale(.15) drop-shadow(0 12px 18px rgba(0,0,0,.2));pointer-events:none}.footer-v2-brand .wha-footer-art img{width:100%;height:100%;object-fit:contain}

/* ---------- card depth, typography and micro-detail ---------- */
.p3-panel,.p5-service-card,.sim-intel-card,.resource-card,.evidence-card,.instructor-record,.timeline-entry{transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.p3-panel:hover,.p5-service-card:hover,.sim-intel-card:hover,.resource-card:hover{transform:translateY(-3px)}
.section-head h2,.p2-title,.p3-head h2,.p5-title,.premium-section-head h2{letter-spacing:-.025em}
.public-chip-row span,.wha-premium-hero__tags span,.p5-hero-tags span{box-shadow:inset 0 1px rgba(255,255,255,.04)}

/* ---------- responsive ---------- */
@media(max-width:1250px){
  .wha-shell-header .header-inner{grid-template-columns:auto 1fr auto;gap:13px}.wha-shell-header .brand{min-width:205px}.wha-shell-header .brand-word small{display:none}.wha-nav-deck>a,.wha-nav-deck>.nav-drop>summary{padding-inline:11px}
  .wha-cert-hero-grid,.wha-simulator-hero-grid{grid-template-columns:1fr minmax(390px,.75fr);gap:30px}
  .wha-core-art{width:90px;height:90px}.wha-range-object,.wha-library-object{width:88px;height:88px}.wha-cert-object{width:88px;height:88px}
}
@media(max-width:1020px){
  .wha-cert-hero-grid,.wha-simulator-hero-grid{grid-template-columns:1fr}.wha-cert-stage,.wha-sim-stage{min-height:390px;max-width:720px;width:100%;margin:auto}.page-hero.wha-cert-catalog-hero,.simulator-hero{background:linear-gradient(180deg,#f7fbfe 0%,#edf6fb 57%,#06182b 57.2%,#092e4e 100%)}
  .wha-elearn-flow{position:relative;left:auto;right:auto;bottom:auto;margin:10px}.modality-hero-v2{padding-bottom:0}
  .wha-page-art-seal{opacity:.65;width:110px;height:110px;right:18px}.page-hero:has(.wha-page-art-seal)>.editorial:not(.wha-cert-hero-grid),.public-hero:has(.wha-page-art-seal)>.editorial{padding-right:130px}
}
@media(max-width:760px){
  .wha-shell-header .header-inner{min-height:72px}.wha-shell-header .brand-mark{width:49px;height:49px}.wha-shell-header .brand-word{font-size:16px}.wha-shell-header .brand-word small{display:none}
  .wha-home-hero-v2 .hero-v2-visual{min-height:480px}.hero-v2-core{width:225px;height:225px}.hero-v2-core img{width:160px;height:160px}.wha-core-art{width:74px;height:74px}.wha-core-art.a1{left:4%;top:25%}.wha-core-art.a2{right:4%;top:25%}.wha-core-art.a3{left:5%;bottom:18%}.wha-core-art.a4{right:5%;bottom:18%}
  .wha-range-stage,.wha-library-stage,.wha-institution-stage{min-height:380px}.wha-range-core,.wha-library-main,.wha-institution-core{width:205px;height:205px}.wha-range-core img,.wha-library-main img,.wha-institution-core img{width:155px;height:155px}.wha-range-object,.wha-library-object,.wha-institution-object{width:76px;height:76px}.wha-range-object small{display:none}
  .wha-elearn-flow{grid-template-columns:1fr 1fr}.wha-cert-stage,.wha-sim-stage{min-height:360px}.wha-cert-main,.wha-sim-core{width:190px;height:190px}.wha-cert-main img,.wha-sim-core img{width:145px;height:145px}.wha-cert-object,.wha-sim-object{width:74px;height:74px}
  .wha-page-art-seal{display:none}.page-hero:has(.wha-page-art-seal)>.editorial:not(.wha-cert-hero-grid),.public-hero:has(.wha-page-art-seal)>.editorial{padding-right:var(--space-page,20px)}
}
@media(max-width:500px){
  .wha-home-hero-v2 .hero-v2-visual{min-height:430px}.hero-v2-core{width:190px;height:190px}.hero-v2-core img{width:138px;height:138px}.wha-core-art{width:58px;height:58px;border-radius:14px}.hero-v2-node{transform:scale(.86);transform-origin:center}
  .wha-range-stage,.wha-library-stage,.wha-institution-stage{min-height:330px}.wha-range-core,.wha-library-main,.wha-institution-core{width:172px;height:172px}.wha-range-core img,.wha-library-main img,.wha-institution-core img{width:128px;height:128px}.wha-range-object,.wha-library-object,.wha-institution-object{width:61px;height:61px}
  .wha-elearn-flow{grid-template-columns:1fr}.wha-cert-stage,.wha-sim-stage{min-height:320px}.wha-cert-main,.wha-sim-core{width:160px;height:160px}.wha-cert-main img,.wha-sim-core img{width:122px;height:122px}.wha-cert-object,.wha-sim-object{width:58px;height:58px}.wha-sim-object.is-challenge{width:54px;height:54px}
  .resource-card{padding-top:66px!important}.resource-card .wha-resource-card-art{width:56px;height:56px}
}
@media(prefers-reduced-motion:reduce){.wha-art-float,.hero-v2-core:before{animation:none!important}.wha-shell-header .brand-mark:after{transition:none!important}}

/* A9 legibility floor: narrative body copy must remain >= 14px at all supported breakpoints. */
.phase02-page .p2-muted-on-dark{font-size:max(.9rem,14px)}
/* Global narrative readability floor for phase 02/05 body copy. */
.phase02-page .p2-enroll-side p,
.phase05-page .p5-step p,
.phase05-page .p5-tool-card p,
.phase05-page .p5-tool-detail p.tool-sub{font-size:max(.9rem,14px)}

/* v17.0.1 QA correction: preserve premium domain art dimensions against phase02 image rules. */
.p2-domain-visual .wha-domain-art{
  position:absolute;
  right:18px;
  bottom:15px;
  width:92px;
  height:92px;
  object-fit:contain;
  opacity:.92;
  z-index:3;
  filter:drop-shadow(0 14px 18px rgba(0,54,110,.25));
  pointer-events:none;
}
@media(max-width:760px){
  .p2-domain-visual .wha-domain-art{width:72px;height:72px;right:12px;bottom:12px}
}

/* v17.0.2 A10 accessibility: explicit dark surfaces for expanded mobile navigation. */
@media(max-width:1160px){
  .wha-shell-header .mobile-group{
    border:1px solid rgba(106,189,229,.14);
    background:#071f36;
    box-shadow:none;
  }
  .wha-shell-header .mobile-group>summary{
    color:#edf8ff;
    background:#0a2a47;
    border-color:rgba(106,189,229,.18);
  }
  .wha-shell-header .mobile-group>div{background:#071f36}
  .wha-shell-header .mobile-group>div a{
    color:#e4f2fb;
    background:#0a2944;
    border-color:rgba(106,189,229,.14);
  }
}

/* Keep the sticky first comparison header in the same dark header system. */
body.wha-ultra-complete .comparison-table th:first-child{
  background:linear-gradient(180deg,#0b2340,#0d3158);
  color:#fff;
}

/* v17.0.3 A10 contrast refinements for normalized certification detail pages. */
.certification-detail-f3 .cert-f3-note{color:#4b657b}
section.cert-f3-evidence .btn-secondary{
  background:#fff;
  color:#0b2948;
  border-color:#d7e6ef;
  backdrop-filter:none;
}
section.cert-f3-evidence .btn-secondary:hover{background:#eef7fc;color:#075f9f;border-color:#87cce9}
