:root{
  --bg:#0b3a6a;
  --text:#0f172a;
  --muted:#475569;
  --card:#ffffff;
  --line:#e2e8f0;
  --max:1100px;
  --header-bg:#ffffff;
  --header-text:#0f172a;
  --header-line:#e2e8f0;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.5;
}
a{color:inherit}
.container{max-width:var(--max); margin:0 auto; padding:0 18px;}

/* Header */
.site-header{background:var(--bg); color:#fff;}

/* bksn-like header */
.site-header.bksn-header{
  background:var(--header-bg);
  color:var(--header-text);
  border-bottom:1px solid var(--header-line);
}
.site-header.bksn-header a{color:var(--header-text)}
.site-header.bksn-header .header-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
}
.site-header.bksn-header .logo img{
  height:64px;
  width:auto;
  display:block;
}
.site-header.bksn-header .main-nav{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  align-items:center;
}
.site-header.bksn-header .main-nav a{
  text-decoration:none;
  font-weight:700;
  padding:10px 0;
  opacity:.95;
}
.site-header.bksn-header .main-nav a:hover{
  opacity:1;
  text-decoration:underline;
}
@media (max-width: 760px){
  .site-header.bksn-header .header-row{flex-direction:column; align-items:flex-start;}
}

/* legacy header (still used on some pages until migrated) */
.site-header .bar{padding:22px 0;}
.brand{display:flex; align-items:center; gap:12px;}
.brand h1{font-size:22px; margin:0;}
.brand .sub{opacity:.9; font-size:14px; margin-top:2px}

.nav{display:flex; flex-wrap:wrap; gap:14px; padding:0 0 16px 0;}
.nav a{color:#fff; text-decoration:none; font-weight:650; opacity:.95}
.nav a:hover{opacity:1; text-decoration:underline}

.hero{padding:26px 0 18px 0;}
.hero h2{margin:0 0 10px 0; font-size:28px}
.hero p{margin:0; opacity:.95; max-width:70ch}

main{padding:22px 0 34px 0;}
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px;}
.card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:12px;
  padding:14px;
}
.card h3{margin:0 0 6px 0; font-size:16px}
.card p{margin:0; color:var(--muted)}
.kicker{color:var(--muted); font-size:14px}

.list{margin:12px 0 0 0; padding-left:18px;}
.list li{margin:6px 0}

.notice{border-left:4px solid #f59e0b; background:#fff7ed; padding:10px 12px; border-radius:10px; border:1px solid #fed7aa; color:#7c2d12;}

.site-footer{
  border-top:1px solid var(--line);
  color:var(--muted);
  padding:16px 0;
  font-size:14px;
}
.site-footer a{color:var(--muted); text-decoration:none}
.site-footer a:hover{text-decoration:underline}

/* Simple slider (homepage) */
.simple-slider{
  position:relative;
  margin:0 0 10px 0;
  border:1px solid var(--line);
  border-radius:12px;
  overflow:hidden;
}
.simple-slider .slides{
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.06);
}
.simple-slider .slide{
  display:none;
}
.simple-slider .slide.is-active{
  display:block;
}
.simple-slider img{
  width:100%;
  height:320px;
  object-fit:cover;
  display:block;
}
@media (max-width: 600px){
  .simple-slider img{height:200px;}
}
.simple-slider .arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(15,23,42,.55);
  color:#fff;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight:800;
}
.simple-slider .arrow:hover{background:rgba(15,23,42,.75)}
.simple-slider .arrow.prev{left:12px}
.simple-slider .arrow.next{right:12px}

.simple-slider .dots{
  position:absolute;
  left:0;
  right:0;
  bottom:10px;
  display:flex;
  gap:8px;
  justify-content:center;
}
.simple-slider .dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.8);
  background:rgba(255,255,255,.25);
}
.simple-slider .dot.is-active{background:rgba(255,255,255,.95)}
