:root{--ink:#06111e;--navy:#0a1b2d;--navy2:#10283f;--blue:#173b59;--line:#29445d;--gold:#d6a947;--gold2:#f0ca76;--paper:#f2f0e9;--white:#f6f8fa;--text:#e9f0f6;--muted:#91a5b7;--green:#44c890;--red:#ef7479}
.portal-welcome{min-height:260px;padding:44px clamp(25px,5vw,70px);margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(90deg,#071421 0%,#0b22368c 48%,#07142155),url('/assets/vpd-training.png') center 42%/cover;border:1px solid var(--line);border-radius:6px;position:relative;overflow:hidden}.portal-welcome:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#06111ee8 0,#06111eab 52%,#06111e44)}.portal-welcome>div{position:relative;z-index:1}.portal-welcome h2{font:800 clamp(36px,5vw,62px)/1 Barlow Condensed;text-transform:uppercase;margin:0 0 10px}.portal-welcome p:last-child{font-size:11px;color:#c6d1db}.welcome-avatar{width:92px;height:92px;border:2px solid var(--gold2);border-radius:50%;display:grid;place-items:center;background-color:#102b43;background-size:cover;background-position:center;color:var(--gold2);font:800 25px Barlow Condensed;box-shadow:0 12px 40px #0008}.operational-cards{margin-top:16px}.stat-card strong{font-size:clamp(20px,2.2vw,32px)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.logout-button{border:1px solid #456078;background:transparent;color:#b8c7d3;border-radius:4px;padding:8px 11px;font-size:9px;font-weight:700;cursor:pointer}.logout-button:hover{border-color:var(--gold);color:var(--gold2)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--text);font-family:Inter,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}a{color:inherit}.hidden{display:none!important}.eyebrow,.section-kicker{font:700 11px Barlow Condensed;color:var(--gold2);letter-spacing:3px;text-transform:uppercase;margin:0 0 12px}
.badge-mark{width:48px;height:55px;display:grid;place-items:center;color:var(--gold2);font:800 16px Barlow Condensed;border:2px solid var(--gold);clip-path:polygon(50% 0,92% 19%,83% 78%,50% 100%,17% 78%,8% 19%);background:linear-gradient(145deg,#18334c,#081522);flex:0 0 auto}.public-brand{display:flex;align-items:center;gap:13px;text-decoration:none}.public-brand b{display:block;font:800 22px/1 Barlow Condensed;color:var(--gold2);letter-spacing:2px}.public-brand small{display:block;font-size:8px;letter-spacing:2.2px;color:#9aacba;margin-top:5px}
.public-header{height:86px;position:absolute;z-index:5;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,82px);border-bottom:1px solid #ffffff20;background:linear-gradient(#02070dcc,transparent)}.public-nav{display:flex;gap:34px}.public-nav a{text-decoration:none;font-size:11px;font-weight:600;letter-spacing:.4px;color:#dbe5ed}.public-nav a:hover{color:var(--gold2)}.login-button,.primary-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;border-radius:3px;text-decoration:none;font-size:11px;font-weight:700;cursor:pointer}.login-button,.primary-button{color:#101823;background:linear-gradient(135deg,var(--gold2),#b98027);border:0}.ghost-button{border:1px solid #ffffff65;background:#06111e55;color:white}
.public-hero{height:min(860px,100vh);min-height:680px;position:relative;overflow:hidden}.public-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#030a12ef 0%,#06101dba 36%,#06101d22 70%),linear-gradient(0deg,#07111f 0%,transparent 36%)}.hero-copy{position:absolute;left:clamp(24px,8vw,150px);top:50%;transform:translateY(-48%);max-width:690px}.hero-copy h1{font:800 clamp(56px,7.2vw,108px)/.86 Barlow Condensed;text-transform:uppercase;letter-spacing:-1.5px;margin:0;color:white;text-shadow:0 8px 32px #000}.hero-lead{max-width:570px;color:#c1cdd7;font-size:14px;line-height:1.75;margin:28px 0}.hero-actions{display:flex;gap:10px}.motto-bar{position:absolute;bottom:0;right:clamp(24px,7vw,120px);height:70px;display:flex;align-items:center;gap:22px;font:700 12px Barlow Condensed;letter-spacing:3px;color:white}.motto-bar i{width:4px;height:4px;border-radius:50%;background:var(--gold)}
.public-section{padding:110px clamp(24px,8vw,150px)}.about-section{background:var(--paper);color:#142331}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(50px,9vw,150px)}.about-grid h2,.section-heading h2,.training-copy h2,.contact-section h2{font:800 clamp(42px,5vw,72px)/.95 Barlow Condensed;text-transform:uppercase;letter-spacing:-.5px;margin:0 0 30px}.about-grid>div>p{color:#526170;line-height:1.8;font-size:14px;max-width:650px}.principles{display:grid}.principles article{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid #cbd1d4}.principles strong{font:700 14px Barlow Condensed;color:#a87b2d}.principles b{font:700 20px Barlow Condensed;text-transform:uppercase}.principles p{font-size:11px;color:#697581;margin:6px 0}
.image-statement{min-height:650px;display:grid;grid-template-columns:1.2fr .8fr;background:#0a1928}.image-statement img{width:100%;height:100%;object-fit:cover;min-height:560px;filter:saturate(.75) contrast(1.05)}.image-statement>div{padding:80px clamp(36px,6vw,100px);align-self:center}.image-statement h2{font:800 clamp(40px,5vw,70px)/.95 Barlow Condensed;text-transform:uppercase;margin:0 0 25px}.image-statement p:last-child{font-size:13px;line-height:1.8;color:var(--muted)}
.divisions-section{background:#071421}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:55px}.section-heading h2{margin:0}.section-heading>p{max-width:480px;color:var(--muted);font-size:12px;line-height:1.7}.division-cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.division-cards article{padding:36px 28px;min-height:280px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s;background:linear-gradient(145deg,#10243a88,#091725)}.division-cards article:hover{transform:translateY(-5px);background:#112a42}.division-cards span{font:700 11px Barlow Condensed;color:var(--gold)}.division-cards h3{font:700 25px Barlow Condensed;text-transform:uppercase;margin:34px 0 13px}.division-cards p{font-size:11px;line-height:1.7;color:var(--muted)}.division-cards small{display:block;color:var(--gold2);font:600 9px Barlow Condensed;letter-spacing:1.5px;margin-top:28px}
.training-feature{display:grid;grid-template-columns:.85fr 1.15fr;background:var(--paper);color:#152534}.training-feature img{width:100%;height:100%;min-height:670px;object-fit:cover}.training-copy{padding:100px clamp(35px,7vw,120px);align-self:center}.training-copy>p:not(.section-kicker){font-size:13px;line-height:1.8;color:#66727c}.command-row{margin-top:40px;border-top:1px solid #c8cdd0}.command-row>div{padding:15px 0;border-bottom:1px solid #c8cdd0;display:flex;justify-content:space-between;gap:20px}.command-row b{font:700 17px Barlow Condensed;text-transform:uppercase}.command-row span{font-size:9px;color:#78828b;text-transform:uppercase;letter-spacing:1px}.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#0c2135;padding:0 clamp(24px,6vw,100px)}.stats-strip div{text-align:center;padding:42px 15px;border-right:1px solid var(--line)}.stats-strip div:last-child{border:0}.stats-strip strong{display:block;font:800 36px Barlow Condensed;color:var(--gold2)}.stats-strip span{font-size:9px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}.contact-section{padding:110px clamp(24px,8vw,150px);display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;background:linear-gradient(120deg,#06111e,#112e49)}.contact-section h2{margin:0}.contact-copy p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 26px}.public-footer{padding:35px clamp(24px,5vw,82px);display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);background:#040c15}.public-footer p,.public-footer>small{font-size:9px;color:#718496;letter-spacing:1px}

/* Department portal */
.portal{min-height:100vh;background:radial-gradient(circle at 75% 0,#173c5c 0,transparent 35%),#071421}.portal-header{height:86px;position:sticky;z-index:10;top:0;padding:0 clamp(18px,3vw,55px);display:flex;align-items:center;gap:35px;background:#06111ef2;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.portal-brand .badge-mark{width:40px;height:46px;font-size:13px}.portal-brand b{font-size:17px}.portal-nav{display:flex;align-items:stretch;gap:2px;height:100%;margin-left:auto}.nav-item{border:0;border-bottom:2px solid transparent;background:transparent;color:#91a4b5;padding:0 11px;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap}.nav-item:hover{color:white}.nav-item.active{border-bottom-color:var(--gold);color:var(--gold2)}.portal-profile{display:flex;align-items:center;gap:10px;padding-left:20px;border-left:1px solid var(--line)}.profile b,.profile span{display:block}.profile b{font-size:11px}.profile span{font-size:9px;color:var(--gold2);margin-top:4px}.avatar,.mini-avatar{border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e3c17a,#7c5b25);color:#07111f;font:800 12px Barlow Condensed;background-size:cover;background-position:center}.avatar{width:38px;height:38px}.mini-avatar{width:30px;height:30px}.portal-main{max-width:1500px;margin:auto;padding:38px clamp(18px,4vw,64px) 70px}.portal-titlebar{display:flex;justify-content:space-between;align-items:center;padding-bottom:22px;margin-bottom:25px;border-bottom:1px solid var(--line)}.portal-titlebar h1{font:700 29px Barlow Condensed;margin:0}.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:4px;background:#0b1d2e;color:var(--muted);font-size:18px;cursor:pointer}.view{animation:rise .3s ease}@keyframes rise{from{opacity:0;transform:translateY(6px)}}.hero{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:20px}.hero h2{font:700 25px Barlow Condensed;margin:0}.hero p{font-size:11px;color:var(--muted);margin:6px 0 0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card,.panel{background:linear-gradient(145deg,#10283ee8,#0a1c2de8);border:1px solid var(--line);border-radius:6px}.stat-card{padding:19px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-25px;bottom:-30px;width:80px;height:80px;border:1px solid #d6a94722;transform:rotate(45deg)}.stat-card span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.stat-card strong{display:block;font:700 32px Barlow Condensed;margin-top:8px}.stat-card small{font-size:9px;color:var(--green)}.grid-2{display:grid;grid-template-columns:1.25fr .85fr;gap:16px;margin-top:16px}.panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:17px}.panel h3{font:700 17px Barlow Condensed;letter-spacing:.4px;margin:0}.status-pill{font-size:8px;padding:5px 8px;border-radius:20px;background:#38c98b18;color:var(--green);border:1px solid #38c98b47}.duty-box{padding:27px;text-align:center;border:1px dashed #34516a;border-radius:5px}.timer{font:700 40px Barlow Condensed;letter-spacing:2px;margin:10px}.primary-button,.secondary-button{border:0;border-radius:4px;padding:11px 16px;font:700 10px Inter;cursor:pointer;text-decoration:none;display:inline-block}.secondary-button{background:#132c43;color:#d8e3ed;border:1px solid #36526a}.announcement{padding:14px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:38px 1fr;gap:12px}.announcement:last-child{border:0}.announcement .date{background:#17344d;border-radius:3px;padding:7px 4px;text-align:center;font:700 12px Barlow Condensed;color:var(--gold2)}.announcement b{font-size:11px}.announcement p{font-size:10px;color:var(--muted);margin:5px 0;line-height:1.55}.toolbar{display:flex;gap:9px;margin-bottom:14px;flex-wrap:wrap}.input,.select{background:#081827;border:1px solid var(--line);color:var(--text);border-radius:4px;padding:10px 12px;font:500 10px Inter;outline:none}.input{min-width:220px}.input:focus,.select:focus{border-color:#9c7934}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:5px}.data-table{width:100%;border-collapse:collapse;background:#091a2aaf;font-size:10px}.data-table th{text-align:left;padding:12px;color:#758a9d;font-size:8px;letter-spacing:1px;background:#0a1b2c}.data-table td{padding:13px 12px;border-top:1px solid #1e3549}.person{display:flex;align-items:center;gap:9px}.muted{color:var(--muted)}.pager{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:13px;font-size:9px;color:var(--muted)}.notice{padding:11px 14px;border:1px solid #ef6a7059;background:#ef6a7017;color:#ffb3b6;border-radius:4px;font-size:10px;margin-bottom:15px}.empty{padding:35px;text-align:center;color:var(--muted);font-size:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px}.form-grid .wide{grid-column:1/-1}.form-grid label{display:grid;gap:6px;color:var(--muted);font-size:9px}.form-grid .input,.form-grid .select{width:100%;min-width:0}.action-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.small-button{padding:7px 10px;font-size:8px}.danger-button{border:1px solid #ef6a7059;background:#ef6a701a;color:#ff9ca1;border-radius:4px;padding:7px 10px;font:700 8px Inter;cursor:pointer}.management-grid{display:grid;grid-template-columns:minmax(280px,.65fr) 1.35fr;gap:16px}.checkbox-line{display:flex!important;align-items:center}.textarea{min-height:110px;resize:vertical}.stack{display:grid;gap:16px}.profile-hero{display:grid;grid-template-columns:auto 1fr;gap:25px;align-items:center}.profile-avatar{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#e0bd72,#6c4d1f);color:#07111f;font:800 28px Barlow Condensed;background-size:cover;background-position:center}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.detail-grid div{padding:15px;background:#081a2a;border:1px solid var(--line)}.detail-grid span,.detail-grid b{display:block}.detail-grid span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.detail-grid b{font:600 16px Barlow Condensed;margin-top:6px}

@media(max-width:1100px){.public-nav{display:none}.division-cards{grid-template-columns:repeat(2,1fr)}.portal-header{flex-wrap:wrap;height:auto;padding-top:13px}.portal-nav{order:3;width:100%;overflow:auto;height:48px;margin:0}.portal-profile{margin-left:auto}.nav-item{padding:0 12px}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.about-grid,.image-statement,.training-feature,.contact-section{grid-template-columns:1fr}.image-statement img,.training-feature img{min-height:400px}.training-feature img{order:-1}.section-heading{display:block}.section-heading>p{margin-top:20px}.stats-strip{grid-template-columns:repeat(2,1fr)}.public-footer{flex-direction:column;text-align:center}.grid-2,.management-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.public-header{height:75px}.public-header .public-brand small,.public-header .public-brand b{display:none}.public-hero{min-height:630px}.hero-copy h1{font-size:54px}.hero-lead{font-size:12px}.motto-bar{left:24px;right:auto;gap:10px;font-size:9px}.public-section{padding-top:75px;padding-bottom:75px}.division-cards{grid-template-columns:1fr}.stats-strip{grid-template-columns:1fr 1fr}.portal-profile>div:last-child{display:none}.portal-titlebar{margin-top:5px}.cards{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}}
.notice.notice-success{border-color:#38c98b70;background:#38c98b18;color:#91f0c3}.notice.notice-error{border-color:#ef6a7075;background:#ef6a701b;color:#ffb3b6}
