:root{
  --background:#0a0f1a;
  --foreground:#f4f7ff;
  --slate-light:#131c2d;
  --slate-medium:#9fb0cf;
  --slate-dark:#d8e3ff;
  --executive-border:#26344f;
  --midnight:#1d5fff;
  --midnight-hover:#184fd1;
  --teal:#00B3C6;
  --green:#1E9E62;
  --green-hover:#187C4D;
  --shadow: 0 10px 30px rgba(0,0,0,0.45);
  --radius: 18px;
  --max: 72rem;
  --logo-size:42px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{-webkit-text-size-adjust:100%; text-size-adjust:100%; overflow-y:scroll}
body{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  color:#ffffff;
  background:var(--background);
  line-height:1.5;
}
a{color:inherit}
img,svg,video{display:block; max-width:100%}
button,input,select,textarea{font:inherit; color:inherit}
h1,h2,h3,h4,h5,h6{font-weight:400}
.container{max-width:var(--max); margin:0 auto; padding:0 1.5rem}
@media (min-width:768px){.container{padding:0 3rem}}
@media (min-width:1024px){.container{padding:0 6rem}}
header{
  position:sticky; top:0; z-index:50;
  background:rgba(10,15,26,0.92);
  -webkit-backdrop-filter:saturate(180%) blur(10px);
  backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid var(--executive-border);
}
@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){
  header{background:#0a0f1a}
}
.header-row{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 0}
.header-row > *{min-width:0}
.brand{display:flex; align-items:center; gap:0; text-decoration:none; line-height:1; flex:0 0 auto}
.brand img{display:none}
.brand span{display:inline-block}

.text-logo{font-family:"Inter", "Segoe UI", Roboto, Helvetica, Arial, sans-serif; font-weight:700; line-height:1; letter-spacing:0; white-space:nowrap; color:#ffffff; display:inline-block}
.brand .text-logo{display:inline-block !important; visibility:visible !important; opacity:1 !important; color:#ffffff !important; font-weight:700 !important; font-size:clamp(16px,1.4vw,24px)}
.text-logo-footer{display:inline-block !important; visibility:visible !important; opacity:1 !important; font-size:clamp(16px,1.4vw,24px)}
.text-logo-modal{font-size:14px}
nav{display:none; gap:1rem; align-items:flex-start}
nav a{text-decoration:none; font-size:0.92rem; color:var(--slate-medium); transition:color .2s ease}
nav a:hover{color:var(--foreground)}
nav a.active{color:#ffffff; font-weight:600}
nav#site-nav a::before{content:"/"; margin-right:0.02rem; color:currentColor}
/* services pull-down */
#site-nav .nav-item-dropdown{position:relative; display:inline-block}
#site-nav .nav-item-dropdown > summary{list-style:none; cursor:pointer}
#site-nav .nav-item-dropdown > summary::-webkit-details-marker{display:none}
#site-nav .nav-item-dropdown .nav-link{text-decoration:none; font-size:0.92rem; color:var(--slate-medium); transition:color .2s ease; white-space:nowrap}
#site-nav .nav-item-dropdown .nav-link:hover{color:var(--foreground)}
#site-nav .nav-item-dropdown .nav-link.active{color:#ffffff; font-weight:600}
#site-nav .nav-item-dropdown .nav-link::before{content:"/"; margin-right:0.02rem; color:currentColor}
#site-nav .nav-item-dropdown .nav-link::after{content:" ▾"; font-size:0.75em; margin-left:0.2rem; color:var(--slate-medium)}
#site-nav .nav-item-dropdown[open] .nav-link::after{color:#ffffff}
#site-nav .nav-item-dropdown .nav-dropdown{position:absolute; top:calc(100% + 0.55rem); left:0; min-width:220px; border:1px solid var(--executive-border); border-radius:12px; background:#0f1728; box-shadow:var(--shadow); padding:0.45rem; display:none; z-index:140}
#site-nav .nav-item-dropdown[open] .nav-dropdown{display:block}
#site-nav .nav-item-dropdown .nav-dropdown a{display:block; padding:0.5rem 0.55rem; border-radius:8px; text-decoration:none; color:var(--slate-medium); font-size:0.88rem}
#site-nav .nav-item-dropdown .nav-dropdown a::before{content:"/"; margin-right:0.02rem; color:currentColor}
#site-nav .nav-item-dropdown .nav-dropdown a:hover{color:#ffffff; background:#111b30}
@media (max-width: 899px){
  #site-nav .nav-item-dropdown{display:block}
  #site-nav .nav-item-dropdown .nav-link::after{content:""}
  #site-nav .nav-item-dropdown .nav-dropdown{position:static; border:0; box-shadow:none; background:transparent; padding:0.2rem 0 0.2rem 0.9rem; min-width:0}
  #site-nav .nav-item-dropdown:not([open]) .nav-dropdown{display:none}
  #site-nav .nav-item-dropdown[open] .nav-dropdown{display:block}
  #site-nav .nav-item-dropdown .nav-dropdown a{padding:0.35rem 0; border-radius:0}
}

.actions{display:flex; align-items:center; gap:0.75rem}
.menu-toggle{display:none; align-items:center; justify-content:center; border:1px solid var(--executive-border); background:#0f1728; color:#ffffff; border-radius:999px; padding:0.62rem 0.9rem; font-size:0.78rem; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; cursor:pointer}
.nav-backdrop{display:none}
@media (max-width: 899px){
  .actions .lang,.actions .btn{display:none}
  .menu-toggle{display:inline-flex !important}
  nav#site-nav{position:fixed; top:0; right:0; height:100dvh; width:min(82vw,340px); background:#0f1728; border-left:1px solid var(--executive-border); box-shadow:var(--shadow); padding:5.4rem 1.2rem 1.2rem; z-index:120; transform:translateX(105%); transition:transform .24s ease; display:flex; flex-direction:column; gap:0.85rem}
  nav#site-nav.open{transform:translateX(0)}
  .nav-backdrop{position:fixed; inset:0; background:rgba(11,16,32,0.34); z-index:110; opacity:0; pointer-events:none; transition:opacity .2s ease; display:block}
  .nav-backdrop.open{opacity:1; pointer-events:auto}
  body.nav-open{overflow:hidden}
}
@media (min-width: 900px){
  .menu-toggle{display:none !important}
  nav#site-nav{position:static; transform:none; height:auto; width:auto; border:0; box-shadow:none; padding:0; display:flex; align-items:center; gap:1.25rem}
  .actions .lang,.actions .btn{display:inline-flex}
  .nav-backdrop{display:none !important}
}
.btn{
  -webkit-appearance:none; appearance:none;
  display:inline-flex; align-items:center; justify-content:center;
  padding:0.8rem 1.1rem; border-radius:999px;
  font-weight:600; font-size:0.82rem;
  letter-spacing:0.04em; text-transform:uppercase;
  text-decoration:none; border:1px solid transparent; cursor:pointer;
}
.btn-primary{background:var(--midnight); color:#fff}
.btn-primary:hover{background:var(--midnight-hover)}
.btn-join{background:#1a8f4d !important; color:#fff !important; border:1px solid #15723d !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08), 0 0 0 1px rgba(21,114,61,0.20)}
.btn-join:hover{background:#15723d !important; border-color:#115d32 !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10), 0 0 0 1px rgba(17,93,50,0.24)}
.btn-outline{background:transparent; border-color:var(--executive-border)}
.btn-outline:hover{border-color:var(--slate-dark)}
.btn-talent{background:#f97316 !important; color:#fff !important; border:1px solid #ea580c !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.08), 0 0 0 1px rgba(234,88,12,0.20)}
.btn-talent:hover{background:#ea580c !important; border-color:#c2410c !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,0.10), 0 0 0 1px rgba(194,65,12,0.24)}
.btn-ghost{background:#0f1728; color:var(--slate-medium); padding:0.65rem 0.8rem; border:1px solid var(--executive-border)}
.btn-ghost:hover{color:#ffffff; border-color:var(--slate-dark)}
.lang{display:flex; gap:0.25rem; padding:0.25rem; border:1px solid var(--executive-border); border-radius:999px; background:var(--background)}
.lang .lang-btn{display:inline-block; text-decoration:none; border:0; background:transparent; cursor:pointer; font-size:0.78rem; padding:0.45rem 0.6rem; border-radius:999px; color:var(--slate-medium)}
.lang .lang-btn.active{background:linear-gradient(135deg,var(--midnight),var(--teal)); color:#ffffff; font-weight:700; box-shadow:0 10px 20px rgba(10,42,102,0.18);}
.lang .lang-btn:focus-visible{outline:2px solid var(--teal); outline-offset:2px}
.section{padding:4.5rem 0}
.hero{min-height:auto !important; display:flex; align-items:center; position:relative}
.kicker{font-size:0.75rem; text-transform:uppercase; letter-spacing:0.08em; color:var(--slate-medium); margin:0 0 1rem}
.h1{font-size:clamp(2.1rem, 4vw, 3.2rem); line-height:1.1; letter-spacing:-0.03em; margin:0 0 1.25rem; font-weight:400}
.lead{font-size:1.12rem; color:var(--slate-medium); max-width:44rem; margin:0 0 1.15rem}
.hero-cta{display:flex; flex-wrap:wrap; gap:0.75rem}
.hero-art{
  position:absolute; right:-80px; top:10%;
  width:520px; height:520px; border-radius:50%;
  background: radial-gradient(circle at 35% 35%, rgba(0,179,198,0.35), transparent 55%),
              radial-gradient(circle at 70% 65%, rgba(10,42,102,0.20), transparent 55%);
  opacity:0.9; pointer-events:none;
}
@media (max-width: 980px){.hero-art{display:none}}
.card-grid{display:grid; gap:1px; background:var(--executive-border); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow)}
@media (min-width: 900px){.card-grid.cols-2{grid-template-columns:1fr 1fr}}
@media (min-width: 900px){.card-grid.cols-3{grid-template-columns:1fr 1fr 1fr}}
.card{background:var(--background); padding:2rem}
.card.alt{background:var(--foreground); color:var(--background)}
.card h3{margin:0 0 0.75rem; font-size:1.15rem; font-weight:400}
.card p{margin:0; color:var(--slate-medium)}
.card.alt p{color:rgba(255,255,255,0.72)}
.badge{display:inline-flex; gap:0.5rem; align-items:center; font-size:0.75rem; color:var(--slate-medium)}
.badge .dot{width:8px; height:8px; border-radius:50%; background:var(--teal)}
.split{display:grid; gap:2rem; align-items:start}
@media (min-width: 900px){.split{grid-template-columns: 1.1fr 0.9fr}}
.list{margin:1.25rem 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:0.85rem}
.list li{display:flex; gap:0.75rem; align-items:flex-start}
.bullet{width:8px; height:8px; border-radius:50%; background:var(--teal); margin-top:0.55rem; flex:0 0 auto}
small.muted{color:var(--slate-medium)}
.profile-grid{display:grid; gap:1.25rem}
@media (min-width: 900px){.profile-grid{grid-template-columns: repeat(3, 1fr)}}
.profile{border:1px solid var(--executive-border); border-radius:var(--radius); overflow:hidden; background:var(--background);
  box-shadow: 0 10px 25px rgba(11,16,32,0.06); text-decoration:none; transition:transform .2s ease, border-color .2s ease}
.profile:hover{transform:translateY(-4px); border-color:var(--slate-dark)}
.profile .img{aspect-ratio:3/4; background:var(--slate-light)}
.profile img{width:100%; height:100%; object-fit:cover; transition:transform .35s ease;}
.profile:hover img{transform:scale(1.03);}
.photo-toggle{cursor:pointer}
.photo-toggle.is-color{filter:none}

.profile .info{padding:1.25rem 1.25rem 1.4rem}
.profile .name{font-size:1.05rem; font-weight:700; margin:0 0 0.25rem}
.profile .role{margin:0 0 0.65rem; color:var(--midnight); font-weight:650; font-size:0.88rem}
.profile .exp{margin:0; color:var(--slate-medium); font-size:0.9rem}
.manifest-lines{margin:1.25rem 0 0; display:grid; gap:0.65rem; max-width:60rem}
.manifest-line{margin:0 0 1.15rem; color:var(--slate-dark); font-size:1.02rem; line-height:1.6}
.manifest-lines .manifest-line:last-child{margin-bottom:0}
footer{border-top:1px solid var(--executive-border); padding:3rem 0}
.footer-top{display:flex; flex-direction:column; gap:1.25rem}
.footer-top img{display:none}
@media(min-width: 900px){.footer-top{flex-direction:row; align-items:center; justify-content:space-between}}
.footer-links{display:flex; flex-wrap:wrap; gap:1rem; color:var(--slate-medium)}
.footer-links a{text-decoration:none}
.footer-links a:hover{color:var(--foreground)}
.footer-bottom{margin-top:1.75rem; padding-top:1.75rem; border-top:1px solid var(--executive-border); display:flex; flex-direction:column; gap:0.5rem; color:var(--slate-medium)}
@media(min-width: 900px){.footer-bottom{flex-direction:row; justify-content:space-between; align-items:center}}
.modal-backdrop{position:fixed; inset:0; background:rgba(11,16,32,0.55); display:none; align-items:center; justify-content:center; padding:1.25rem; z-index:100}
.modal{background:var(--background); border-radius:22px; width:min(720px, 100%); box-shadow:var(--shadow); overflow:hidden}
.modal header{position:relative; border:0; background:var(--background); backdrop-filter:none}
.modal .modal-body{padding:1.5rem 1.75rem 1.75rem}
.modal .modal-title{margin:0 0 0.25rem; font-size:1.25rem; letter-spacing:-0.02em}
.modal .modal-sub{margin:0 0 1.25rem; color:var(--slate-medium)}
.modal .row{display:grid; gap:0.9rem}
@media(min-width:700px){.modal .row{grid-template-columns:1fr 1fr}}
.field label{display:block; font-size:0.82rem; color:var(--slate-medium); margin:0 0 0.35rem}
.field input,.field select,.field textarea{width:100%; padding:0.75rem 0.85rem; border-radius:14px; border:1px solid var(--executive-border); font:inherit}
.field textarea{min-height:120px; resize:vertical}
.modal .actions{justify-content:flex-end; margin-top:1rem}

.platform-layout{display:grid; gap:1rem}
@media (min-width: 980px){.platform-layout{grid-template-columns:1.3fr 0.9fr; align-items:start}}
.platform-steps{display:grid; gap:0.7rem}
.platform-step{border:1px solid var(--executive-border); border-radius:14px; padding:0.85rem 1rem}
.platform-step p{margin:0.35rem 0 0; color:var(--slate-medium)}
.platform-arrow{text-align:center; color:var(--slate-medium); font-weight:700}
.platform-icons{display:grid; gap:0.7rem}
.platform-icon-card{display:flex; gap:0.75rem; align-items:flex-start; border:1px solid var(--executive-border); border-radius:14px; padding:0.8rem 0.9rem; background:var(--slate-light)}
.platform-icon{width:34px; height:34px; border-radius:10px; display:inline-flex; align-items:center; justify-content:center; color:#ffffff; background:#0f1728; border:1px solid var(--executive-border); flex:0 0 auto}
.platform-icon-card p{margin:0.2rem 0 0; color:var(--slate-medium); font-size:0.9rem}

.table-wrap{overflow-x:auto; border:1px solid var(--executive-border); border-radius:14px; background:#0f1728}
.compare-table{width:100%; border-collapse:collapse; min-width:760px; border:1px solid var(--executive-border)}
.compare-table th,.compare-table td{padding:0.9rem 1rem; border:1px solid var(--executive-border); text-align:left; vertical-align:top}
.compare-table th{font-size:0.82rem; text-transform:uppercase; letter-spacing:0.04em; color:var(--slate-medium); background:#101a2d}
.compare-table td:first-child{font-weight:600}

.compare-table td .yn{display:inline-flex; width:16px; height:16px; border-radius:999px; align-items:center; justify-content:center; font-weight:700; font-size:0.68rem; line-height:1; color:#fff; margin:0 auto}
.compare-table td .yn-yes{background:#1a8f4d}
.compare-table td .yn-no{background:#c43b3b}
.small-note{font-size:0.82rem; color:var(--slate-medium)}

.compare-table th:not(:last-child),.compare-table td:not(:last-child){border-right:1px solid var(--executive-border)}

.platform-row{border:1px solid var(--executive-border); border-radius:14px; padding:0.85rem 1rem; display:flex; align-items:flex-start; justify-content:space-between; gap:0.9rem}
.platform-mini-icon{width:30px; height:30px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; color:var(--midnight); background:var(--slate-light); border:1px solid var(--executive-border); flex:0 0 auto}

.compare-table tbody td:not(:first-child){text-align:center !important; vertical-align:middle}

.compare-table tbody td:not(:first-child) .yn{margin:0 auto !important}

.mission-card{position:relative; overflow:hidden}
.mission-quote{position:absolute; right:14px; top:-26px; font-size:140px; line-height:1; color:rgba(27,36,66,0.12); font-family:Georgia, "Times New Roman", serif; pointer-events:none}

.flow-card{border:1px solid var(--executive-border); border-radius:16px; background:linear-gradient(180deg,#0f1728,#111d31); padding:1rem}
.flow-row{display:grid; gap:0.7rem; align-items:stretch}
.flow-node{border:1px solid var(--executive-border); border-radius:12px; background:#0f1728; padding:0.8rem; text-align:center; display:flex; flex-direction:column; gap:0.25rem; justify-content:center}
.flow-node p{margin:0; color:var(--slate-medium); font-size:0.85rem}
.flow-icon{display:inline-flex; width:30px; height:30px; border-radius:999px; align-items:center; justify-content:center; margin:0 auto 0.2rem; background:var(--slate-light); border:1px solid var(--executive-border); font-size:0.95rem}
.flow-arrow{display:flex; align-items:center; justify-content:center; color:var(--slate-medium); font-weight:700; font-size:1rem}
@media (min-width: 980px){.flow-row{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr}}


.site-footer{border-top:1px solid var(--executive-border); padding:2.5rem 0 1.5rem; background:linear-gradient(180deg,#0b1322,#0a0f1a); font-size:0.92rem}
.site-footer .footer-top{display:flex; flex-direction:column; gap:1rem; align-items:flex-start; justify-content:space-between; padding-bottom:1.4rem; border-bottom:1px solid var(--executive-border)}
.site-footer .footer-brand{display:flex; align-items:center; gap:0.9rem; text-decoration:none}
.site-footer .footer-brand img{display:none}
.site-footer .footer-brand-copy{color:var(--slate-medium); font-size:0.82rem}
.site-footer .footer-grid{display:grid; gap:1.25rem; padding-top:1.25rem}
.site-footer .footer-heading{margin:0 0 0.5rem; font-size:0.75rem; text-transform:uppercase; letter-spacing:0.08em; color:var(--slate-medium)}
.site-footer .footer-nav{display:grid; gap:0.35rem}
.site-footer .footer-nav a{text-decoration:none; color:#ffffff; font-size:0.88rem}
.site-footer .footer-nav a:hover{color:var(--midnight)}
.site-footer .footer-text{margin:0; color:var(--slate-medium); font-size:0.84rem}
.site-footer .footer-bottom{margin-top:1.1rem; padding-top:1.1rem; border-top:1px solid var(--executive-border); display:flex; flex-direction:column; gap:0.45rem; color:var(--slate-medium)}
@media(min-width:900px){
  .site-footer .footer-top{flex-direction:row; align-items:center}
  .site-footer .footer-grid{grid-template-columns:1.2fr 1fr 1fr; gap:2rem}
  .site-footer .footer-bottom{flex-direction:row; justify-content:space-between; align-items:center}
}

.brandmark{color:#ffffff !important; font-weight:700}

.text-logo, .text-logo-footer, .text-logo-modal{color:#ffffff !important}

.support-table tbody td{text-align:left !important; vertical-align:top !important}

.support-table tbody td:not(:first-child){text-align:left !important; vertical-align:top !important}

.text-logo, .text-logo-footer, .text-logo-modal, .brandmark{color:#ffffff !important}

.support-table tbody td:nth-child(2){color:var(--slate-medium) !important; line-height:1.6}

.action-link{display:inline-flex; align-items:center; text-decoration:none; color:var(--slate-medium); font-size:0.92rem; font-weight:500; letter-spacing:0.03em; text-transform:uppercase}
.action-link:hover{color:#ffffff}
