:root{
  --bg:#f6f8fc;
  --card:#ffffff;
  --text:#0f172a;
  --muted:#475569;
  --line:#e6eaf2;

  --brand:#0b1e3a;
  --brand2:#1f4c8f;
  --gold:#d4af37;

  --shadow: 0 18px 55px rgba(15,23,42,.12);
  --r: 20px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  color:var(--text);
  background:
    radial-gradient(900px 520px at 18% -10%, rgba(31,76,143,.16), transparent 55%),
    radial-gradient(900px 520px at 110% 0%, rgba(212,175,55,.14), transparent 52%),
    var(--bg);
  line-height:1.6;
}
a{color:inherit}
.container{width:min(1220px, 92%); margin-inline:auto}

.site-header{
  position:sticky; top:0; z-index:50;
  background: linear-gradient(135deg, rgba(11,30,58,.92), rgba(31,76,143,.92));
  backdrop-filter: blur(14px);
  border-bottom:1px solid rgba(255,255,255,.14);
  color:#fff;
}
.header__row{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0;
  gap:14px;
}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; min-width: 220px;}
.brand__logo{width:180px; height:auto; display:block}
.brand__meta{display:flex; flex-direction:column; color:#ffffff;}
.brand__sub{font-size:12px; opacity:.9}

.nav{display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end}
.nav__link{
  text-decoration:none;
  font-size:13px;
  padding:10px 12px;
  border-radius:999px;
  opacity:.96;
  border:1px solid transparent;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.nav__link:hover{background:rgba(255,255,255,.10); border-color:rgba(255,255,255,.20); transform: translateY(-1px)}
.nav__link--active{background:rgba(255,255,255,.16); border-color:rgba(255,255,255,.24)}

.nav__toggle{
  display:none;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.10);
  color:#fff;
  padding:10px 12px;
  border-radius:14px;
  cursor:pointer;
}
.nav__bars{display:block; width:18px; height:2px; background:#fff; position:relative}
.nav__bars::before,.nav__bars::after{content:""; position:absolute; left:0; width:18px; height:2px; background:#fff}
.nav__bars::before{top:-6px}
.nav__bars::after{top:6px}

.site-main{padding:26px 0 70px}

.hero{
  border-radius:var(--r);
  overflow:hidden;
  box-shadow:var(--shadow);
  background:
    linear-gradient(135deg, rgba(6,19,37,.72), rgba(6,19,37,.42)),
    url('../images/hero.svg') center/cover no-repeat;
  color:#fff;
  position:relative;
}
.hero::after{
  content:"";
  position:absolute; inset:0;
  background: url('../images/pattern.svg') center/420px 420px repeat;
  opacity: .72;
  pointer-events:none;
}
.hero__inner{padding:62px 22px; position:relative; z-index:1}
.hero__kicker{
  display:inline-flex; align-items:center; gap:10px;
  font-size:12px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  margin-bottom:14px;
}
.hero h1{margin:10px 0 10px; font-size:46px; line-height:1.06; letter-spacing:-.4px}
.hero p{margin:0; max-width:74ch; opacity:.95}

.hero__cta{margin-top:18px; display:flex; gap:12px; flex-wrap:wrap}

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  border-radius:16px;
  padding:12px 16px;
  text-decoration:none;
  font-weight:800;
  border:1px solid transparent;
  font-size:14px;
  transition: transform .18s ease, filter .18s ease;
}
.btn:hover{transform: translateY(-1px); filter: brightness(1.03)}
.btn--gold{background:var(--gold); color:#111}
.btn--glass{
  background: rgba(255,255,255,.12);
  color:#fff;
  border-color: rgba(255,255,255,.24);
  backdrop-filter: blur(10px);
}

.section{margin-top:22px}
.section__title{font-size:20px; margin:0 0 12px}
.muted{color:var(--muted)}
.grid{display:grid; grid-template-columns:repeat(12,1fr); gap:16px}

.card{
  background: rgba(255,255,255,.80);
  border:1px solid var(--line);
  border-radius:var(--r);
  box-shadow:0 10px 30px rgba(15,23,42,.08);
  padding:18px;
  backdrop-filter: blur(10px);
}
.card--solid{background:#fff; backdrop-filter:none}
.card h3{margin:0 0 6px; font-size:15px}
.card p{margin:0; color:var(--muted); font-size:13.5px}

.col-4{grid-column:span 4}
.col-6{grid-column:span 6}
.col-8{grid-column:span 8}
.col-12{grid-column:span 12}

.badge{
  display:inline-flex; gap:8px; align-items:center;
  font-size:12px; font-weight:900;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
}
.badge--good{border-color:rgba(34,197,94,.25); background:rgba(34,197,94,.08); color:#166534}
.badge--warn{border-color:rgba(245,158,11,.30); background:rgba(245,158,11,.10); color:#92400e}

.list{margin:10px 0 0; padding-left:18px; color:var(--muted)}
.list li{margin:6px 0}

.kpi{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.kpi__item{
  background: rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  padding:14px;
  backdrop-filter: blur(10px);
}
.kpi__label{font-size:12px; opacity:.92}
.kpi__value{font-size:18px; font-weight:900; margin-top:2px}

.form{display:grid; grid-template-columns:repeat(12,1fr); gap:12px}
.field{grid-column:span 6}
.field--full{grid-column:span 12}
label{display:block; font-size:12px; font-weight:900; margin-bottom:6px}
input, textarea, select{
  width:100%;
  padding:12px 12px;
  border-radius:16px;
  border:1px solid var(--line);
  background:#fff;
  font-size:14px;
  outline:none;
}
textarea{min-height:120px; resize:vertical}
input:focus, textarea:focus, select:focus{border-color:rgba(31,76,143,.55); box-shadow:0 0 0 4px rgba(31,76,143,.12)}

.checkbox{
  display:flex; gap:10px; align-items:flex-start;
  padding:14px;
  border-radius:18px;
  border:1px solid var(--line);
  background:#fff;
}
.checkbox input{width:auto; margin-top:3px}
.checkbox small{display:block; color:var(--muted); margin-top:6px; font-size:12px}
.checkbox a{color:var(--brand2)}

.note{
  background:rgba(31,76,143,.06);
  border:1px solid rgba(31,76,143,.18);
  padding:14px;
  border-radius:18px;
  color:var(--muted);
  font-size:13px;
}

.table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border-radius:18px;
  border:1px solid var(--line);
  background:#fff;
}
.table th, .table td{
  text-align:left;
  padding:12px 12px;
  border-bottom:1px solid var(--line);
  font-size:13px;
}
.table th{background:#f7f9fe; font-weight:900}
.table tr:last-child td{border-bottom:0}

.site-footer{
  margin-top:56px;
  background:linear-gradient(135deg, rgba(11,30,58,1), rgba(6,19,37,1));
  color:#fff;
  border-top:1px solid rgba(255,255,255,.10);
}
.footer__grid{
  padding:34px 0;
  display:grid;
  grid-template-columns:1.2fr 1.6fr 1fr;
  gap:18px;
}
.footer__brand{font-weight:900; letter-spacing:.2px}
.footer__title{font-weight:900; margin-bottom:8px}
.footer__muted{opacity:.9; font-size:13px; margin-top:4px}
.footer__links{opacity:.95; font-size:13px; line-height:1.7}
.footer__links a{color:rgba(212,175,55,.98); text-decoration:none}
.footer__links a:hover{text-decoration:underline}
.footer__small{opacity:.92; font-size:12px; line-height:1.6; margin-top:10px}

.fade-up{animation: fadeUp .7s ease both}
@keyframes fadeUp{from{opacity:0; transform: translateY(10px)} to{opacity:1; transform: translateY(0)}}
@media (prefers-reduced-motion: reduce){
  .fade-up{animation:none}
  .btn,.nav__link{transition:none}
}

@media (max-width: 980px){
  .col-4,.col-6,.col-8{grid-column:span 12}
  .kpi{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .nav__toggle{display:inline-flex}
  .nav{
    position:absolute;
    right:4%;
    top:66px;
    flex-direction:column;
    background:rgba(6,19,37,.98);
    padding:10px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    box-shadow:var(--shadow);
    display:none;
    min-width:260px;
  }
  .nav.nav--open{display:flex}
}

.brand__sub{color:#ffffff !important; opacity:0.95;}

.brand__name{color:#ffffff !important;}

/* Force logo text white in header */
.brand__logo text,
.brand,
.brand__meta,
.brand__sub {
    color: #ffffff !important;
    fill: #ffffff !important;
}
