/* Dedicated public Apprentice surface; existing portals stay untouched. */
body:has(#apprenticeHubView:not(.hidden)){background:#071b43}
body:has(#apprenticeHubView:not(.hidden)) .app-shell{width:100%;max-width:none;padding:0;margin:0}
body:has(#apprenticeHubView:not(.hidden)) main{padding:0;max-width:none}
body:has(#apprenticeHubView:not(.hidden)) .login-shell{display:block;border:0;box-shadow:none;background:#fff;min-height:0}
body:has(#apprenticeHubView:not(.hidden)) .login-visual-panel,body:has(#apprenticeHubView:not(.hidden)) .login-centre-photo{display:none}
body:has(#apprenticeHubView:not(.hidden)) .login-card-panel{padding:0;background:#fff;min-height:0}
#apprenticeHubView{min-width:0}
.apprentice-landing{position:relative;isolation:isolate;min-height:calc(100svh - 88px);overflow:hidden;background:#071b43;color:#fff}
.apprentice-background{position:absolute;inset:0;width:100%;height:100svh;object-fit:cover;object-position:center top;z-index:-2;animation:apprentice-establish .6s ease both}
.apprentice-landing::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#071b43de, #071b4355 75%),linear-gradient(180deg,#071b431a 0%,#071b4355 35%,#071b43e6 100%)}
.apprentice-content{max-width:1480px;margin:auto;padding:24px clamp(20px,4vw,64px) 72px}
.apprentice-utility{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.82rem;font-weight:700;color:#fff}
.apprentice-utility>a{color:#fff;text-underline-offset:5px}
.apprentice-account{position:relative;z-index:2}
.apprentice-account summary{cursor:pointer;padding:12px 16px;border:1px solid #d4b268;border-radius:12px;background:#071b4380}
.apprentice-account>div{position:absolute;right:0;top:100%;width:min(300px,80vw);padding:20px;background:#fff;color:#071b43;border-radius:12px;box-shadow:0 12px 30px #0003}
.apprentice-account p{margin:8px 0 0}
.apprentice-intro{padding:clamp(36px,6vw,80px) 0 38px;max-width:850px;animation:apprentice-enter .7s .15s cubic-bezier(.22,1,.36,1) backwards}
.apprentice-intro .eyebrow{color:#f0cc7a;font-size:.84rem;letter-spacing:.19em;margin:0 0 18px}
.apprentice-intro h1{color:#fff;font-size:clamp(2.5rem,5.6vw,5.2rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 20px;font-weight:800}
.apprentice-intro>p:last-child{color:#f1f4fa;font-size:clamp(1rem,1.6vw,1.3rem);line-height:1.6;margin:0;max-width:640px}
.apprentice-pathways-heading{margin:0 0 24px;animation:apprentice-enter .6s .4s ease backwards}
.apprentice-pathways-heading h2{color:#fff;font-size:clamp(1.2rem,2vw,1.6rem);margin:0 0 8px}
.apprentice-pathways-heading p{margin:0;color:#e1e8f2}
.apprentice-pathways{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.apprentice-pathway-card{display:grid;grid-template-rows:88px auto 1fr auto;min-width:0;text-decoration:none;color:#173253;background:#fff;border:1px solid #d4b268;border-radius:18px;overflow:hidden;box-shadow:0 14px 32px #0003;transition:transform .2s,box-shadow .2s;animation:apprentice-enter .6s calc(.85s + var(--card-index)*.065s) ease backwards}
.apprentice-pathway-card>header{padding:20px 22px;background:#091e47;border-bottom:2px solid #d4b268;display:flex;flex-direction:column;justify-content:center;gap:5px}
.apprentice-pathway-card h3{font-size:1.05rem;line-height:1.3;color:#fff;text-transform:uppercase;letter-spacing:.025em;margin:0}
.apprentice-pathway-card>header>span{color:#eed095;font-size:.85rem}
.apprentice-card-photo{position:relative;aspect-ratio:16/10;overflow:hidden}
.apprentice-card-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.apprentice-current-level{position:absolute;bottom:12px;left:12px;padding:7px 10px;background:#f4d994;color:#071b43;font-size:.68rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase;border-radius:8px}
.apprentice-pathway-card>p{padding:20px 22px 0;margin:0;line-height:1.6;font-size:.95rem}
.apprentice-card-cta{margin:22px}
.apprentice-pathway-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0005}
.apprentice-landing :is(a,summary):focus-visible{outline:3px solid #f4d994;outline-offset:5px}
.apprentice-placeholder{max-width:760px;background:#fff;color:#173253;padding:clamp(24px,4vw,44px);border:1px solid #d4b268;border-radius:18px}
.apprentice-placeholder .eyebrow{color:#806020}
.apprentice-placeholder h2{color:#071b43;margin:12px 0}
.apprentice-placeholder p{line-height:1.7}
.apprentice-placeholder>a{margin-top:20px}
@keyframes apprentice-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes apprentice-establish{from{opacity:.5}to{opacity:1}}
@media(max-width:1050px){.apprentice-pathways{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.apprentice-pathways{grid-template-columns:1fr;gap:24px}.apprentice-intro{padding-top:44px}.apprentice-content{padding-bottom:40px}.apprentice-utility{gap:12px}.apprentice-pathway-card{grid-template-rows:88px auto 1fr auto}}
@media(prefers-reduced-motion:reduce){.apprentice-landing *, .apprentice-background{animation:none!important;transition:none!important}.apprentice-pathway-card:hover{transform:none}}
