@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Montserrat:wght@600;700;800&display=swap');
:root{--navy:#142d49;--gold:#d9a323;--ink:#17283b;--muted:#647386;--paper:#fff;--soft:#f3f5f7}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:#fff}button,a{font:inherit}button{cursor:pointer}.topbar{height:84px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e8edf2;background:#fff;position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy)}.brand img{width:58px;height:58px;object-fit:contain}.brand span{display:grid;gap:3px}.brand b,.footer-brand{font-family:Montserrat,sans-serif;font-size:15px;letter-spacing:.05em}.brand small{font-size:9px;letter-spacing:.12em;color:#8b6a20;font-weight:700}nav{display:flex;align-items:center;gap:25px}nav a{text-decoration:none;color:#425267;font-size:13px;font-weight:600}nav a:hover{color:var(--gold)}.nav-login,.gold-btn{background:var(--gold);color:var(--navy);border:0;border-radius:7px;padding:13px 19px;font-weight:800}.menu{display:none;background:none;border:0;font-size:25px;color:var(--navy)}.hero{background:linear-gradient(112deg,#102944 0%,#173b60 65%,#1b456a 100%);color:#fff;min-height:510px;padding:70px max(7vw,28px);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:var(--gold);margin:0 0 15px}.hero h1{font:800 clamp(40px,5vw,66px)/1.08 Montserrat,sans-serif;margin:0 0 20px;letter-spacing:-.04em}.hero h1 span{color:#efbd49}.lead{max-width:520px;color:#d7e1eb;font-size:17px;line-height:1.7}.actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.outline-btn,.outline-dark{border:1px solid #d3dce6;border-radius:7px;color:#fff;text-decoration:none;padding:12px 18px;background:transparent;font-weight:700}.hero-mark{display:flex;justify-content:center}.hero-mark img{width:min(100%,390px);filter:drop-shadow(0 18px 28px #07182788)}.section{padding:82px max(7vw,28px)}.section-heading{max-width:690px;margin-bottom:35px}.section h2,.portal h2,.contact-section h2{font:700 clamp(27px,3vw,38px)/1.2 Montserrat,sans-serif;color:var(--navy);margin:0 0 14px}.section-heading>p:last-child,.contact-section p{color:var(--muted);line-height:1.7}.feature-grid,.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature,.portal-card{border:1px solid #e5eaf0;border-radius:13px;padding:25px;background:#fff;box-shadow:0 8px 25px #1a345008}.feature-icon,.portal-symbol{font-size:28px;color:var(--gold);font-weight:700}.feature h3,.portal-card h3{font:700 17px Montserrat,sans-serif;color:var(--navy)}.feature p,.portal-card p{font-size:14px;color:var(--muted);line-height:1.65}.shaded{background:var(--soft)}.empty-state{border:1px dashed #cbd4df;border-radius:13px;padding:36px;display:grid;justify-items:center;gap:8px;color:var(--navy)}.empty-icon{font-size:28px;color:var(--gold)}.empty-state span{font-size:13px;color:var(--muted)}.contact-section{display:flex;justify-content:space-between;align-items:center;gap:25px}.outline-dark{color:var(--navy);border-color:#b8c4d0}.portal{padding:65px max(7vw,28px);background:#f7f9fb;border-top:5px solid var(--gold)}.portal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.portal-head p:last-child{color:var(--muted)}.notice{padding:18px 20px;border-radius:10px;background:#eaf0f6;display:grid;gap:5px;margin-bottom:22px;color:var(--navy)}.notice span{font-size:13px;color:#596c80}.portal-grid{grid-template-columns:repeat(4,1fr)}.portal-card{padding:22px}.tag{font-size:10px;color:#826017;background:#fff4d7;border-radius:20px;padding:6px 9px;display:inline-block}.demo-warning{font-size:12px;color:#8a5b00;background:#fff5df;padding:12px;border-radius:8px;margin-top:22px}footer{background:#0e2238;color:#d9e2eb;padding:28px max(7vw,28px);display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:12px}footer span:last-child{margin-left:auto;color:#aab8c6}.footer-brand{color:#fff}.modal-backdrop{position:fixed;inset:0;background:#071827bb;z-index:10;display:grid;place-items:center;padding:18px}.modal{width:min(100%,430px);background:#fff;border-radius:16px;padding:32px;position:relative;box-shadow:0 20px 70px #0005}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:28px;color:#617084}.modal-logo{text-align:center}.modal-logo img{width:100px;height:85px;object-fit:contain}.modal h2{font:700 27px Montserrat;color:var(--navy);margin:0 0 8px}.modal-sub,.modal-foot{font-size:13px;color:var(--muted);line-height:1.5}.modal form{display:grid;gap:14px;margin-top:20px}.modal label{font-size:12px;font-weight:700;color:#35465a;display:grid;gap:7px}.modal input{border:1px solid #d5dde6;border-radius:7px;padding:12px;font:inherit}.full{width:100%}.modal-foot{border-top:1px solid #e8edf2;margin-top:20px;padding-top:15px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;padding:12px 18px;border-radius:8px;display:none;z-index:20;font-size:13px}
[hidden]{display:none!important}
@media(max-width:850px){nav{gap:12px}nav a{font-size:12px}.hero{grid-template-columns:1fr .7fr}.portal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{height:72px}.brand img{width:48px;height:48px}.menu{display:block}nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:18px 25px 24px;box-shadow:0 12px 18px #152b441a;flex-direction:column;align-items:stretch}nav.open{display:flex}nav a{padding:8px}.hero{padding-top:50px;grid-template-columns:1fr}.hero-mark{display:none}.hero h1{font-size:43px}.section{padding-top:58px;padding-bottom:58px}.feature-grid{grid-template-columns:1fr}.contact-section{align-items:flex-start;flex-direction:column}.portal-head{align-items:flex-start;gap:15px;flex-direction:column}.portal-grid{grid-template-columns:1fr 1fr}footer{gap:10px}footer span:last-child{margin-left:0;width:100%}}
@media(max-width:390px){.portal-grid{grid-template-columns:1fr}.hero h1{font-size:37px}}
