.public-logo{display:block;max-width:178px;max-height:42px;width:auto;height:auto;object-fit:contain;object-position:left center;border-radius:12px}

.public-shell{background:#f6f9fc;color:#132542;overflow:visible}

.public-nav{height:82px;max-width:1200px;padding:0 30px;border-bottom:1px solid #e2eaf3;background:#fff}

.public-links{display:flex;gap:26px;margin-left:auto;margin-right:28px}

.public-links a{color:#48607d;text-decoration:none;font-size:14px;font-weight:600}

.public-links a:hover{color:#146cf0}

.nav-note{font:700 10px Arial,sans-serif;letter-spacing:1.8px;color:#55769e}

.nav-toggle{display:none;width:44px;height:44px;margin-left:auto;border:1px solid #d9e4f0;border-radius:11px;background:#fff;padding:10px}

.nav-toggle i{display:block;height:2px;margin:4px 0;border-radius:2px;background:#0b3d91}

.mobile-menu{display:none}

.home-view{max-width:1200px;min-height:540px;padding:58px 30px 66px;grid-template-columns:1.05fr .95fr;gap:4vw;color:#102543}

.hero-copy h1{font-weight:800;font-size:clamp(42px,4.6vw,64px);letter-spacing:-2.6px;margin:13px 0 17px}

.hero-copy h1 em{background:linear-gradient(90deg,#0b3d91,#1677ff);-webkit-background-clip:text;background-clip:text;color:transparent}

.hero-copy>p{max-width:560px;color:#596f8a;font-size:18px;line-height:1.75}

.trust-row{gap:9px;margin-top:28px}

.trust-row span{border:1px solid #d5e3f2;border-radius:999px;padding:8px 11px;font-size:12px;background:#fff;color:#47637f}

.hero-art{min-height:380px;position:relative;overflow:hidden;border-radius:32px;background:linear-gradient(135deg,#061b3b 0%,#0b4197 48%,#1677ff 100%);box-shadow:0 26px 55px rgba(14,66,139,.22)}

.hero-art:before{content:'';position:absolute;width:360px;height:360px;border-radius:50%;right:-110px;top:-120px;border:54px solid rgba(255,255,255,.1)}

.hero-art:after{content:'';position:absolute;width:240px;height:240px;border-radius:50%;left:-135px;bottom:-145px;border:38px solid rgba(58,211,145,.24)}

.art-screen{position:absolute;z-index:2;left:15%;bottom:13%;width:56%;padding:26px 24px;border:1px solid rgba(201,235,255,.36);border-radius:20px;background:linear-gradient(145deg,rgba(4,19,49,.92),rgba(17,76,158,.55));box-shadow:0 22px 30px rgba(0,0,0,.25);transform:rotate(-4deg);color:#cce3ff}

.art-screen span,.art-screen b,.art-screen strong{display:block;letter-spacing:2px}

.art-screen span{font-size:11px}

.art-screen b{font-size:29px;margin:10px 0;color:#fff}

.art-screen strong{font-size:18px;color:#6af1b4}

.art-shield{position:absolute;z-index:3;right:15%;top:21%;display:grid;place-items:center;width:94px;height:106px;border:2px solid #74e9ba;border-radius:48% 48% 41% 41%;background:rgba(4,30,73,.6);box-shadow:0 0 42px rgba(67,238,165,.4);color:#d6fff0;font-size:52px}

.art-orbit{position:absolute;z-index:1;width:430px;height:430px;right:1%;bottom:-270px;border:1px solid rgba(144,210,255,.35);border-radius:50%;box-shadow:0 0 0 42px rgba(144,210,255,.05),0 0 0 84px rgba(144,210,255,.03)}

.platform-hub{background:#f6f9fc;color:#10233f;padding:65px max(24px,calc((100vw - 1200px)/2)) 76px;border:0}

.hub-heading{max-width:760px;margin-bottom:30px}

.hub-heading .eyebrow,.document-intro .eyebrow{color:#1677df}

.hub-heading h2,.document-intro h2{margin:9px 0 9px;font-size:clamp(28px,3.2vw,40px);line-height:1.17;letter-spacing:-1.5px}

.hub-heading p,.document-intro p{margin:0;color:#61718a;line-height:1.7}

.platform-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

.platform-card{min-height:470px;display:flex;flex-direction:column;padding:0 24px 24px;border:1px solid #d9e4f0;border-radius:19px;background:#fff;box-shadow:0 9px 25px rgba(25,53,91,.06);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}

.platform-card:hover{transform:translateY(-4px);border-color:#9fc5ff;box-shadow:0 22px 38px rgba(25,67,123,.13)}

.platform-cover{height:156px;margin:0 -24px 18px;overflow:hidden;background:#08275d}

.platform-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

.platform-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(145deg,#e4f0ff,#d8e7ff);color:#175dc8;font-size:22px;font-weight:700}

.platform-card.patching .platform-icon{background:linear-gradient(145deg,#dff8e9,#c2efd9);color:#087851}

.platform-card.exam .platform-icon{background:linear-gradient(145deg,#eef2ff,#dfe7ff);color:#4f65bf}

.platform-card.ctf .platform-icon{background:linear-gradient(145deg,#e4f2ff,#d6e9ff);color:#1169c9}

.platform-copy{display:grid;gap:6px;margin-top:14px}

.platform-copy small{font-size:9px;letter-spacing:1.35px;color:#7590ae;font-weight:700}

.platform-copy b{font-size:20px;line-height:1.18}

.platform-copy>span{font-size:13px;color:#61718a;line-height:1.55}

.platform-price{display:grid;grid-template-columns:1fr auto;align-items:center;margin:18px 0 13px;padding-top:15px;border-top:1px solid #e8eef5}

.platform-price .price-label{font-size:12px;color:#637590}

.price-values{display:flex;align-items:baseline;justify-content:flex-end;gap:8px;text-align:right}

.price-values del{font-size:13px;color:#8a99aa;text-decoration-thickness:1.5px}

.price-values b{font:800 14px Manrope;color:#123866;white-space:nowrap}

.platform-price em{grid-column:1/-1;justify-self:start;font-style:normal;font-size:12px;color:#148454;background:linear-gradient(90deg,#e9fbf2,#f7fffa);padding:5px 9px;border-radius:999px;margin-top:8px}

.course-button{display:flex;justify-content:space-between;align-items:center;text-decoration:none;border:0;border-radius:10px;padding:12px 14px;background:linear-gradient(90deg,#0b52c5,#1677ff);color:#fff;font-size:13px;font-weight:700;box-shadow:0 9px 18px rgba(22,119,255,.18)}

.course-button:hover{filter:brightness(.96)}

.course-button.is-unavailable{background:#a9b8ca;box-shadow:none;cursor:not-allowed}

.course-button b{font-size:18px}

.platform-note{margin:11px 0 0;font-size:10px;color:#8091a6;text-align:center}

.document-access{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:8vw;padding:72px max(24px,calc((100vw - 1100px)/2));background:linear-gradient(135deg,#edf5ff 0%,#f7fbff 56%,#effbf4 100%);border-top:1px solid #deebf7}

.document-intro h2{font-size:clamp(31px,4vw,49px)}

.document-benefits{display:grid;gap:10px;margin-top:25px;color:#2c567b;font-size:14px}

.document-benefits span{display:flex;align-items:center;gap:9px}

.document-benefits span::first-letter{color:#148454}

.voucher-card{border:1px solid #dce8f4;border-radius:22px;padding:29px;background:#fff;box-shadow:0 20px 45px rgba(21,74,133,.12)}

.card-top{margin-bottom:25px}

.mini-icon{background:linear-gradient(145deg,#0b52c5,#1677ff)}

.card-top h2{font-size:21px}

.primary{min-height:48px;border-radius:10px;background:linear-gradient(90deg,#0b52c5,#1677ff);transition:transform .18s ease,box-shadow .18s ease}

.primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(21,103,232,.28)}

.flow-view{background:#f7f9fd}

.resource-grid{gap:18px}

.document-card{border-radius:18px;box-shadow:0 8px 18px rgba(28,54,90,.05);transition:transform .18s ease,box-shadow .18s ease}

.document-card:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(28,54,90,.11)}

.secondary{min-height:42px;border-radius:10px}

.watermark-note{border-radius:14px}

.cookie-banner{position:fixed;z-index:100;left:24px;right:24px;bottom:24px;max-width:980px;margin:auto;padding:22px;border:1px solid #cfddeb;border-radius:18px;background:rgba(255,255,255,.98);color:#132542;box-shadow:0 22px 60px rgba(7,31,66,.24)}
.cookie-banner[hidden]{display:none}
.cookie-copy h2{margin:6px 0 7px;font-size:21px}
.cookie-copy p{max-width:700px;margin:0;color:#5c6f85;font-size:13px;line-height:1.65}
.cookie-actions{display:flex;gap:10px;position:absolute;right:22px;top:24px}
.cookie-actions .primary,.cookie-actions .secondary{min-height:40px;padding:9px 13px;font-size:13px}
.cookie-settings-panel{display:grid;gap:0;margin-top:18px;border-top:1px solid #e2eaf2}
.cookie-settings-panel[hidden]{display:none}
.cookie-setting{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #e9eff5}
.cookie-setting b,.cookie-setting span{display:block}
.cookie-setting b{font-size:14px}
.cookie-setting span{margin-top:4px;font-size:12px;color:#65778e;line-height:1.45}
.cookie-switch{display:flex!important;align-items:center;gap:7px;min-width:100px;align-self:center;font-size:11px}
.cookie-switch input{position:absolute;opacity:0}
.cookie-switch i{display:block;width:36px;height:20px;border-radius:20px;background:#aab8c8;position:relative;transition:.18s}
.cookie-switch i:after{content:'';position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.18s}
.cookie-switch input:checked+i{background:#1875df}
.cookie-switch input:checked+i:after{transform:translateX(16px)}
.cookie-switch em{font-style:normal;color:#66788d}
.cookie-settings-actions{padding-top:15px}
.cookie-settings-actions .primary{min-height:40px;min-width:auto;padding:9px 14px;font-size:13px}
@media(max-width:760px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:18px}
.cookie-copy h2{font-size:18px}
.cookie-actions{position:static;margin-top:16px;display:grid;grid-template-columns:1fr 1fr}
.cookie-actions button{width:100%}
.cookie-setting{align-items:center}
.cookie-setting span{max-width:230px}
.cookie-switch{min-width:90px}
.cookie-settings-actions .primary{width:auto}
}

@media(max-width:760px){.public-nav{height:69px;padding:0 18px}

.public-logo{max-width:145px;max-height:34px}

.nav-note,.public-links{display:none}

.nav-toggle{display:block}

.mobile-menu{display:grid;position:absolute;z-index:20;left:12px;right:12px;top:75px;padding:9px;background:#fff;border:1px solid #dbe6f2;border-radius:14px;box-shadow:0 17px 32px rgba(22,57,103,.16)}

.mobile-menu[hidden]{display:none}

.mobile-menu a{padding:13px 14px;color:#173759;text-decoration:none;font-weight:700;border-radius:9px}

.mobile-menu a:hover{background:#eef5ff;color:#0d63d6}

.home-view{min-height:auto;padding:35px 20px 43px;gap:26px;grid-template-columns:1fr;align-items:start}

.hero-copy h1{font-size:40px;letter-spacing:-2.1px;margin:9px 0 14px}

.hero-copy>p{font-size:16px}

.trust-row{display:none}

.hero-art{width:100%;min-height:250px;border-radius:22px}

.art-screen{left:13%;bottom:15%;padding:18px;width:60%}

.art-screen b{font-size:21px}

.art-shield{width:70px;height:80px;font-size:38px;right:13%;top:18%}

.platform-hub{padding:48px 20px 55px}

.hub-heading{margin-bottom:20px}

.platform-grid{grid-template-columns:1fr;gap:13px}

.platform-card{min-height:0;padding:0 19px 19px;border-radius:16px}

.platform-cover{height:148px;margin:0 -19px 15px}

.platform-copy{margin-top:14px}

.platform-copy b{font-size:18px}

.platform-price{margin:16px 0 11px;padding-top:13px}

.document-access{grid-template-columns:1fr;padding:50px 20px;gap:29px}

.voucher-card{padding:23px;border-radius:18px}

.resource-grid{gap:14px}

.flow-head{height:72px}

.resources-head{margin:36px auto 23px}

}

 
.cookie-settings-fab{position:fixed;z-index:90;right:18px;bottom:18px;border:1px solid #cbdced;border-radius:999px;background:#fff;color:#27516f;padding:9px 13px;font-size:12px;font-weight:700;box-shadow:0 8px 20px rgba(13,45,82,.14)}
.cookie-banner:not([hidden])+.cookie-settings-fab{display:none}

/* v4.14.0 — Training packages and quotation request */
.nav-quote{border:1px solid #1767da;background:#fff;color:#114c9e;border-radius:12px;padding:10px 15px;font-weight:800;white-space:nowrap}
.nav-quote span{margin-left:12px;font-size:18px}.hero-actions{display:flex;gap:12px;margin-top:28px}.hero-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:space-between;gap:28px}.hero-secondary{border-color:#b9cee6;color:#174f93}.package-hub{padding:74px max(24px,calc((100vw - 1200px)/2));background:linear-gradient(135deg,#f7faff 0%,#eff7ff 53%,#f3fcf7 100%);color:#10233f;border-top:1px solid #dce9f5}.package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.package-card{position:relative;display:flex;flex-direction:column;padding:24px;border:1px solid #d8e5f2;border-radius:19px;background:#fff;box-shadow:0 11px 26px rgba(25,53,91,.06)}.package-card.featured{border-color:#9adbc4;box-shadow:0 18px 34px rgba(29,112,84,.12)}.package-badge{position:absolute;top:15px;right:15px;border-radius:999px;background:linear-gradient(90deg,#d9fae8,#bff0d6);color:#087755;padding:5px 10px;font-size:11px;font-weight:800}.package-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#e7f0ff;color:#1768d4;font-size:23px}.package-card.featured .package-icon{background:#def8ea;color:#0c8a61}.package-card h3{margin:20px 0 7px;font-size:21px;line-height:1.2}.package-card>p{margin:0;color:#61718a;font-size:13px;line-height:1.6;min-height:62px}.package-price{display:flex;justify-content:space-between;align-items:end;margin:20px 0 15px;padding-top:15px;border-top:1px solid #e7eef5}.package-price span{font-size:12px;color:#647791}.package-price b{font:800 25px Manrope;color:#13325b}.package-card ul{margin:0 0 24px;padding:0;list-style:none;display:grid;gap:9px;color:#46617f;font-size:12px;line-height:1.45}.package-card li{color:#34715c}.package-card .primary{margin-top:auto;width:100%;font-size:12px;display:flex;align-items:center;justify-content:space-between}.package-note{max-width:690px;margin:28px auto 0;padding:14px 18px;display:flex;gap:13px;align-items:center;border:1px solid #cde5da;border-radius:13px;background:#f5fcf8;color:#3b6470}.package-note span{font-size:20px;color:#0a8b60}.package-note p{margin:0;font-size:12px;line-height:1.55}.catalog-empty{padding:35px;text-align:center;color:#637590}.quote-view{min-height:100vh;padding:0 max(24px,calc((100vw - 1200px)/2)) 70px;background:linear-gradient(135deg,#f5f9ff,#eff7ff 64%,#f4fcf8);color:#132542}.quote-head{height:86px;display:flex;align-items:center;gap:24px;border-bottom:1px solid #dce7f1}.quote-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:33px;padding-top:48px}.quote-form,.quote-steps{background:#fff;border:1px solid #d9e5f0;border-radius:21px;padding:31px;box-shadow:0 14px 38px rgba(22,65,119,.08)}.quote-form h1{font-size:clamp(35px,4vw,53px);line-height:1.08;letter-spacing:-2px;margin:10px 0 13px}.quote-form>p{color:#60748d;line-height:1.65;margin:0 0 25px}.quote-form label{display:block;margin-bottom:16px;font-weight:700;font-size:13px}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d9e4ef;border-radius:9px;background:#fff;color:#183555;outline:none}.quote-form textarea{resize:vertical}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:#3c82e8;box-shadow:0 0 0 3px #e6f0ff}.quote-form b{color:#d84949}.quote-form .primary{width:100%;display:flex;justify-content:space-between;align-items:center}.quote-summary{margin:-4px 0 16px;padding:11px 13px;border-left:3px solid #1677df;border-radius:8px;background:#eff6ff}.quote-summary b,.quote-summary span{display:block}.quote-summary b{color:#184d94;font-size:13px}.quote-summary span{margin-top:4px;color:#58728e;font-size:11px}.quote-steps{background:linear-gradient(160deg,#fff,#f6fbff)}.quote-steps h2{font-size:27px;margin:9px 0 24px}.quote-steps ol{display:grid;gap:20px;padding:0;margin:0;list-style:none}.quote-steps li{display:grid;grid-template-columns:34px 1fr;gap:12px}.quote-steps li>b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e3f0ff;color:#1768ca;font-size:14px}.quote-steps strong,.quote-steps span{display:block}.quote-steps strong{font-size:14px}.quote-steps li span{margin-top:4px;color:#637590;font-size:12px;line-height:1.5}.minimise-note{margin:25px 0 0;padding:12px;border-radius:11px;background:#e9faf2;color:#28735a;font-size:12px;line-height:1.5}.mobile-menu button{border:0;padding:13px 14px;background:none;color:#174f93;font-weight:800;text-align:left;font:inherit}
@media(max-width:950px){.package-grid{grid-template-columns:repeat(2,1fr)}.quote-layout{grid-template-columns:1fr}.quote-steps{order:-1}}
@media(max-width:760px){.nav-quote{display:none}.hero-actions{margin-top:23px}.hero-actions .primary,.hero-actions .secondary{flex:1;padding:11px;font-size:13px}.package-hub{padding:49px 20px}.package-grid{grid-template-columns:1fr;gap:13px}.package-card{padding:20px;border-radius:16px}.package-card>p{min-height:0}.quote-view{padding:0 20px 46px}.quote-head{height:72px}.quote-layout{padding-top:25px;gap:16px}.quote-form,.quote-steps{padding:22px;border-radius:17px}.quote-form h1{font-size:37px}.quote-steps h2{font-size:24px}.quote-steps{order:initial}.mobile-menu button{display:block}.two-col{grid-template-columns:1fr}}
/* v4.15.2 — quotation is a scrollable public section */
#quote-view{scroll-margin-top:18px}

/* v4.16.2 — clearer routes, version visibility, and document access layout */
.app-version{font:700 10px Manrope,Arial,sans-serif;letter-spacing:.5px}
.public-version{position:fixed;z-index:91;right:16px;bottom:12px;padding:6px 9px;border-radius:7px;background:#142944;color:#fff;white-space:nowrap;box-shadow:0 5px 12px rgba(5,31,69,.2)}
.hero-route-actions button{display:inline-flex;align-items:center;justify-content:center;min-width:190px}
.hero-route-actions .hero-secondary{background:linear-gradient(90deg,#0b52c5,#1677ff);border-color:#0b52c5;color:#fff;box-shadow:0 9px 18px rgba(22,119,255,.18)}
.hero-route-actions .hero-secondary:hover{background:#0d58cc;color:#fff}
.document-access{display:block;min-height:calc(100vh - 82px);padding-top:24px}
.document-access .destination-head{max-width:1100px;margin:0 auto 22px}
.document-layout{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:8vw}
.document-access .document-intro,.document-access .voucher-card{max-width:none;margin:0}
.training-quote{margin-top:20px;min-width:170px}
.public-quote-link{color:#0d5ed0!important}
.cookie-settings-fab{bottom:48px}
@media(max-width:760px){.public-version{font-size:9px;right:12px;bottom:10px}.document-layout{grid-template-columns:1fr;gap:29px}.document-access{padding-top:20px}.document-access .destination-head{margin-bottom:16px}.hero-route-actions button{min-width:0}.cookie-settings-fab{bottom:43px}}
