:root{
  --nav-bg:#0b3f67;
  --nav-text:#ffffff;
  --content-max: 980px;
  --section-alt:#f3f6fa;
}

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

.hero{
  position:relative;
  min-height:46vh;
  background-image:url("assets/hero.png");
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55));
}
.hero-inner{position:relative;z-index:1;width:100%;}
.hero-text{max-width:900px;margin:0 auto;padding:28px 18px;}
.hero h1{margin:0 0 10px 0;color:#fff;font-size:clamp(28px,4vw,48px);font-weight:800;letter-spacing:.2px;}
.hero .subtitle{margin:0;color:#fff;font-size:clamp(14px,2vw,20px);font-weight:600;opacity:.95;}

.topnav{
  position:sticky;top:0;z-index:20;
  background:var(--nav-bg);
  box-shadow:0 2px 10px rgba(0,0,0,.12);
}
.nav-inner{
  max-width:1200px;
  margin:0 auto;
  padding:12px 16px;
  display:flex;
  gap:14px;
  align-items:center;
  justify-content:space-between;
}
.nav-links{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
}
.nav-links a{
  color:var(--nav-text);
  text-decoration:none;
  font-weight:700;
  opacity:.95;
  padding:6px 0;
  border-bottom:2px solid transparent;
}
.nav-links a:hover{opacity:1;border-bottom-color:rgba(255,255,255,.65);}
.lang-switch{display:flex;gap:10px;align-items:center;}
.lang-switch .lang{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:44px;height:30px;
  padding:0 10px;
  border-radius:12px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.6px;
}
.lang-switch .lang:hover{background:rgba(255,255,255,.18);} 

.section{background:#fff;}
.section:nth-of-type(even){background:var(--section-alt);}

h2{margin:0 0 14px 0;font-size:28px;color:#0b3f67;}
h3{margin:22px 0 10px 0;font-size:18px;color:#0b3f67;}
p{margin:0 0 14px 0;font-size:17px;}
ul{margin:10px 0 18px 22px;}
li{margin:6px 0;font-size:17px;}
strong{font-weight:800;}

.faq details{
  background:#fff;
  border:1px solid rgba(11,34,57,.12);
  border-radius:12px;
  padding:12px 14px;
  margin:10px 0;
}
.faq details summary{
  cursor:pointer;
  font-weight:800;
  color:#0b3f67;
}
.faq-a{margin-top:10px;color:#0b2239;}

.footer{background:#062c49;color:#fff;}
.footer .container{padding:18px 18px;font-size:14px;opacity:.9;}

@media (max-width:720px){
  .hero{min-height:40vh;}
  .nav-inner{flex-direction:column;align-items:flex-start;}
  .lang-switch{align-self:flex-end;}
  .container{padding:26px 16px;}
  p,li{font-size:16px;}
}


/* --- Added for RU full content (FAQ + note box + contacts) --- */
.faq details{border:1px solid rgba(0,0,0,.08);border-radius:10px;padding:10px 12px;margin:10px 0;background:#fff}
.faq summary{cursor:pointer;font-weight:700;color:#0b2e4a}
.faq .faq-a{margin-top:8px}
.note-box{margin-top:14px;padding:14px 16px;border-radius:12px;background:rgba(11,46,74,.06);border:1px dashed rgba(11,46,74,.25)}
.contact-list{list-style:none;padding-left:0}
.contact-list li{margin:6px 0}


/* --- Hero text visibility --- */
.hero h1, .hero p { color: #ffffff; }
.hero h1 { font-weight: 800; letter-spacing: 0.2px; }
.hero p { font-weight: 500; }
.hero .hero-text { text-shadow: 0 2px 18px rgba(0,0,0,.55); }

@media (max-width: 768px) {
  .hero { min-height: 46vh; }
  .hero-inner { padding: 32px 16px; }
  .hero-text h1 { font-size: 28px; }
  .hero-text p { font-size: 16px; }

  .nav-inner { flex-direction: column; align-items: center; gap: 10px; }
  .nav-links { justify-content: center; flex-wrap: wrap; gap: 10px 14px; }
  .lang-switch { align-self: auto; justify-content: center; }

  .section { padding: 44px 0; }
  .section.alt { background-image: none !important; }
}

/* Mobile overrides: keep hero + navigation stable */
@media (max-width: 768px) {
  .hero { min-height: 46vh; }
  .hero-inner { padding: 32px 16px; }
  .hero-text h1 { font-size: 28px; }
  .hero-text p { font-size: 16px; }

  .nav-inner { flex-direction: column; align-items: center; gap: 10px; }
  .nav-links { justify-content: center; flex-wrap: wrap; gap: 10px 14px; }
  .lang-switch { align-self: auto; justify-content: center; }

  /* If any background image causes GPU artifacts on mobile, disable it */
  .section.alt { background-image: none !important; }
}
/* --- NOALYUT NDA additions (safe, minimal) --- */
.fine{opacity:.75;font-size:.92rem}
.pillbar{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 22px}
.pill{display:inline-block;padding:10px 14px;border-radius:999px;background:rgba(11,63,103,.10);border:1px solid rgba(11,63,103,.20);text-decoration:none}
.pill:hover{background:rgba(11,63,103,.16)}
.card{background:rgba(255,255,255,.60);border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:18px 18px;margin:14px 0}
.dark .card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.kicker{font-size:.92rem;opacity:.8;margin:0 0 10px}
hr.soft{border:none;border-top:1px solid rgba(0,0,0,.08);margin:18px 0}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border:1px solid rgba(0,0,0,.12);padding:10px;vertical-align:top}
.table th{background:rgba(11,63,103,.08);text-align:left}
@media (max-width:640px){
  .table th,.table td{padding:8px}
}
