@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap");

:root {
  --navy: #06083b;
  --blue: #242896;
  --blue-light: #2f34a8;
  --red: #e50909;
  --white: #ffffff;
  --text-dark: #111111;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Montserrat", sans-serif;
  background: #ffffff;
  color: var(--text-dark);
}

a {
  text-decoration: none;
  color: inherit;
}

img {
  max-width: 100%;
  display: block;
}

.container {
  width: min(1180px, 92%);
  margin: 0 auto;
}

/* Header */
.header {
  background: #ffffff;
  padding: 25px 0 12px;
  position: sticky;
  top: 0;
  z-index: 1000;
}

.nav-container {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.logo img {
  width: 85px;
}

.navbar {
  display: flex;
  gap: 25px;
  align-items: center;
}

.navbar a {
  font-size: 13px;
  font-weight: 600;
  color: #111;
  border-bottom: 2px solid transparent;
  padding-bottom: 4px;
}

.navbar a:hover,
.navbar a.active {
  border-bottom-color: var(--red);
}

.menu-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 26px;
  cursor: pointer;
}

/* Hero */
.hero {
  min-height: 560px;
  background:
    linear-gradient(rgba(5, 8, 63, 0.78), rgba(5, 8, 63, 0.9)),
    url("../images/hero-bg.jpg") center/cover no-repeat;
  border-top: 4px solid var(--red);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--white);
}

.hero h1 {
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.1;
  font-weight: 500;
  margin-bottom: 22px;
}

.hero p {
  max-width: 780px;
  margin: 0 auto 30px;
  font-size: 17px;
  line-height: 1.5;
}

.hero-buttons {
  display: flex;
  justify-content: center;
  gap: 22px;
  flex-wrap: wrap;
}

.btn {
  padding: 12px 34px;
  border-radius: 9px;
  font-weight: 700;
  font-size: 15px;
  transition: 0.3s ease;
}

.btn-red {
  background: var(--red);
  color: var(--white);
}

.btn-red:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(229, 9, 9, 0.35);
}

/* Quick Cards */
.quick-cards {
  background: linear-gradient(120deg, #25299a, #07083d);
  margin-top: -95px;
  padding-bottom: 80px;
}

.quick-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 55px;
}

.quick-card {
  height: 180px;
  background: var(--blue);
  color: var(--white);
  padding: 24px;
  position: relative;
  overflow: visible;
  box-shadow: 0 10px 18px rgba(0, 0, 0, 0.25);
  transition: 0.3s ease;
}

.quick-card:hover {
  transform: translateY(-8px);
}

.quick-card h3 {
  font-size: 32px;
  font-weight: 500;
}

.quick-card p {
  font-size: 15px;
  opacity: 0.9;
}

.quick-card img {
  position: absolute;
  right: 0;
  bottom: -22px;
  max-height: 120px;
}

/* About */
.about-section {
  min-height: 430px;
  color: var(--white);
  background:
    linear-gradient(90deg, rgba(37, 41, 154, 0.98) 0%, rgba(37, 41, 154, 0.9) 48%, rgba(37, 41, 154, 0.65) 100%),
    url("../images/about-bg.jpg") center/cover no-repeat;
  display: flex;
  align-items: center;
}

.about-content {
  width: min(1050px, 88%);
  margin: 0 auto;
}

.about-content h2 {
  font-size: 42px;
  font-weight: 600;
  margin-bottom: 30px;
}

.about-content p {
  max-width: 920px;
  font-size: 17px;
  line-height: 1.55;
  margin-bottom: 22px;
}

.about-content strong {
  font-size: 17px;
}

/* Services */
.services-section {
  background: linear-gradient(135deg, #25299a 0%, #07083d 100%);
  color: var(--white);
  padding: 90px 0 95px;
}

.section-title {
  text-align: center;
  margin-bottom: 65px;
}

.section-title h2 {
  font-size: 43px;
  font-weight: 600;
  margin-bottom: 12px;
}

.section-title p {
  font-size: 18px;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 42px 55px;
}

.service-card {
  background: var(--white);
  color: #111;
  min-height: 155px;
  border-radius: 7px;
  padding: 22px 24px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: 0.3s ease;
}

.service-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25);
}

.service-card i {
  width: 58px;
  height: 58px;
  background: var(--blue);
  color: var(--white);
  font-size: 29px;
  border-radius: 4px;
  display: grid;
  place-items: center;
  margin-bottom: 17px;
}

.service-card h4 {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 7px;
}

.service-card p {
  font-size: 12px;
  line-height: 1.4;
}

/* Footer */
.footer {
  background: var(--navy);
  color: var(--white);
}

.footer-top {
  height: 4px;
  background: var(--red);
}

.footer-grid {
  padding: 60px 0 55px;
  display: grid;
  grid-template-columns: 1.1fr 1.2fr 1fr;
  gap: 60px;
  align-items: center;
}

.footer-logo img {
  width: 230px;
}

.footer h3 {
  font-size: 20px;
  margin-bottom: 22px;
  display: inline-block;
  border-bottom: 3px solid var(--red);
  padding-bottom: 5px;
}

.footer-contact p {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  font-size: 14px;
  line-height: 1.5;
  margin-bottom: 15px;
}

.footer-contact i {
  color: var(--red);
  font-size: 20px;
  margin-top: 2px;
}

.footer-map img {
  width: 280px;
  height: 150px;
  object-fit: cover;
}

.copyright {
  background: #020219;
  text-align: center;
  padding: 17px;
  font-size: 12px;
}

/* Responsive */
@media (max-width: 992px) {
  .navbar {
    position: absolute;
    top: 95px;
    right: 4%;
    background: #ffffff;
    width: 260px;
    flex-direction: column;
    align-items: flex-start;
    padding: 25px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    display: none;
  }

  .navbar.show {
    display: flex;
  }

  .menu-toggle {
    display: block;
  }

  .quick-card-grid,
  .services-grid,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .quick-cards {
    margin-top: 0;
    padding: 50px 0;
  }

  .quick-card {
    height: 170px;
  }

  .footer-grid {
    text-align: center;
  }

  .footer-logo img,
  .footer-map img {
    margin: 0 auto;
  }

  .footer-contact p {
    justify-content: center;
    text-align: left;
  }
}

@media (max-width: 576px) {
  .header {
    padding-top: 15px;
  }

  .logo img {
    width: 70px;
  }

  .hero {
    min-height: 500px;
    padding: 60px 20px;
  }

  .hero p {
    font-size: 14px;
  }

  .quick-card h3 {
    font-size: 25px;
  }

  .about-content h2,
  .section-title h2 {
    font-size: 32px;
  }

  .about-content p {
    font-size: 14px;
  }

  .footer-logo img {
    width: 180px;
  }
}

:root{--navy:#06063b;--navy2:#10134d;--blue:#262a98;--blue2:#1727a8;--red:#ef1219;--white:#fff;--ink:#141414;--shadow:0 16px 35px rgba(0,0,0,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(1180px,92%);margin-inline:auto}
.site-header{background:#fff;position:sticky;top:0;z-index:50}.nav-wrap{min-height:112px;display:flex;align-items:flex-end;justify-content:space-between;padding:16px 0 12px}.brand img{width:88px;height:68px;object-fit:contain}.site-nav{display:flex;gap:25px;align-items:center}.site-nav a{font-size:13px;font-weight:500;padding:8px 0;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a.active{border-color:var(--red)}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:27px;height:3px;background:#111;margin:5px;border-radius:5px}
.hero-image{background-image:linear-gradient(rgba(22,28,126,.76),rgba(4,7,57,.83)),var(--bg);background-position:center;background-size:cover;border-top:3px solid var(--red);color:#fff}.home-hero{min-height:520px;display:grid;place-items:center;text-align:center}.hero-overlay{padding:80px 22px 130px}.home-hero h1{font-size:clamp(38px,5vw,64px);font-weight:500;line-height:1.08;margin:0 0 20px}.home-hero p{max-width:820px;margin:0 auto 28px;font-size:17px;line-height:1.55}.button-row{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:var(--red);color:#fff;padding:12px 28px;font:700 15px Montserrat;cursor:pointer;transition:.25s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(239,18,25,.35)}
.quick-links{background:linear-gradient(110deg,var(--blue),var(--navy));padding:0 0 70px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;transform:translateY(-74px);margin-bottom:-74px}.quick-grid a{position:relative;min-height:170px;padding:24px;background:#292f9d;color:#fff;box-shadow:var(--shadow);overflow:hidden;transition:.25s}.quick-grid a:hover{transform:translateY(-6px)}.quick-grid h3{font-size:28px;font-weight:500;margin:0 0 5px}.quick-grid span{font-size:14px;opacity:.85}.quick-grid b{position:absolute;right:24px;bottom:12px;font-size:72px;opacity:.32}
.about-band{background-image:linear-gradient(90deg,rgba(40,45,158,.98),rgba(41,46,158,.78)),url('../images/about-bg.jpg');background-size:cover;background-position:center;color:#fff;padding:72px 0}.about-copy h2{font-size:36px;margin:0 0 28px}.about-copy p{max-width:980px;font-size:16px;line-height:1.6}.about-copy strong{display:inline-block;margin-top:8px}
.services-section{background:linear-gradient(115deg,#272b98 0%,#141c77 55%,#07073d 100%);padding:78px 0 90px;color:#fff}.services-section.standalone{min-height:680px}.section-heading{text-align:center;margin-bottom:52px}.section-heading h2{font-size:40px;margin:0 0 8px}.section-heading p{margin:0;font-size:17px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 50px}.service-card{background:#fff;color:#111;border-radius:6px;text-align:center;padding:18px 18px 22px;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.25s}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.service-icon{width:58px;height:58px;border-radius:5px;background:#2b309e;color:#fff;display:grid;place-items:center;font-size:29px;margin-bottom:14px}.service-card h3{font-size:13px;line-height:1.25;margin:0 0 8px}.service-card p{font-size:11px;line-height:1.45;margin:0}
.inner-hero{min-height:360px;display:flex;align-items:center}.hero-left{padding:58px 38px}.hero-left h1{font-size:clamp(58px,8vw,100px);line-height:1.02;font-weight:500;margin:0 0 20px}.hero-left p{font-size:19px}.stats{background:linear-gradient(90deg,#121547,#2026a0);color:#fff;padding:34px 0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr)}.stats-grid>div{display:flex;align-items:center;justify-content:center;gap:14px;border-right:2px solid rgba(255,255,255,.75)}.stats-grid>div:last-child{border:0}.stats b{font-size:48px}.stats span{max-width:130px}.values-section{background:linear-gradient(120deg,#222964,#1e28ad);color:#fff;padding:64px 0;border-bottom:3px solid var(--red)}.values-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:80px;align-items:center}.values-grid>h2{font-size:72px;line-height:.98;font-weight:500;margin:0}.tabs{display:flex;max-width:480px}.tab{flex:1;border:0;background:#24284f;color:#fff;padding:12px;font:500 14px Montserrat;text-decoration:underline;cursor:pointer}.tab.active{background:#6f7ac9}.tab-panel{display:none;background:#25294f;padding:34px;margin-top:18px;min-height:150px;border-radius:4px;font-size:18px;line-height:1.35}.tab-panel.active{display:block}.core-panel{font-size:34px;background:transparent}
.page-banner{min-height:260px;display:grid;place-items:center;text-align:center}.page-banner h1{font-size:48px;margin:0 0 8px}.page-banner p{font-size:19px;margin:0}.logo-section{min-height:820px;padding:58px 0;background:linear-gradient(115deg,#252b98,#07073f)}.logo-section.tall{min-height:1050px}.logo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.logo-card{background:#fff;border-radius:5px;min-height:155px;display:grid;place-items:center;padding:18px;text-align:center;box-shadow:0 8px 20px rgba(0,0,0,.08);transition:.25s}.logo-card:hover{transform:translateY(-5px)}.logo-card span{font-size:25px;font-weight:800;color:#22318e}.logo-card:nth-child(odd) span{color:#111}.partners-grid .partner{min-height:175px}
.contact-section{display:grid;grid-template-columns:1fr 1.05fr;background:linear-gradient(120deg,#2a2f9d,#08083f);color:#fff;border-bottom:3px solid var(--red)}.contact-photo{min-height:455px;background:url('../images/contact-office.jpg') center/cover}.contact-form{padding:28px 42px 18px}.contact-form h2{font-size:30px;margin:0 0 20px}.contact-form label{display:block;font-size:18px;font-weight:600;margin:14px 0}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:9px;border:0;border-radius:4px;padding:13px;font:16px Montserrat}.contact-form .btn{float:right;min-width:120px}.form-status{min-height:24px;font-size:14px}.form-status.error{color:#ffd1d1}.form-status.success{color:#c8ffd5}
.hub-banner{min-height:220px}.featured-news{min-height:430px;position:relative}.featured-caption{position:absolute;left:0;right:0;bottom:0;padding:60px 4% 28px;background:linear-gradient(transparent,rgba(0,0,0,.8))}.featured-caption h2{font-size:21px;margin:0 0 8px}.featured-caption p{margin:0;font-size:13px}.news-section,.article-section{background:linear-gradient(115deg,#272c9c,#08083f);padding:42px 0 100px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.news-card{background:#fff;color:#111;border-radius:5px;padding:18px;min-height:128px;transition:.25s}.news-card:hover{transform:translateY(-4px)}.news-card small{font-size:10px;color:#666}.news-card h3{font-size:18px;line-height:1.15;margin:20px 0 0}.article-hero{min-height:500px}.article-layout{display:grid;grid-template-columns:.7fr 1.7fr;gap:45px;align-items:start}.article-layout aside{color:#fff}.article-layout aside h1{font-size:38px;line-height:1.08}.article-layout article{background:#fff;border-radius:7px;padding:34px}.article-layout article h2{font-size:20px}.article-layout article h4{margin-top:-8px}.article-layout article p{line-height:1.45}.related{margin-top:38px}
.site-footer{background:#06063b;color:#fff}.footer-accent{height:3px;background:var(--red)}.footer-grid{display:grid;grid-template-columns:1.1fr 1.15fr 1fr;gap:55px;align-items:center;padding:50px 0}.footer-logo{width:240px}.site-footer h3{display:inline-block;margin:0 0 18px;border-bottom:3px solid var(--red);padding-bottom:5px}.site-footer p{font-size:13px;line-height:1.5}.site-footer a:hover{text-decoration:underline}.map-image{width:260px;height:145px;object-fit:cover}.copyright{text-align:center;background:#02021b;padding:15px;font-size:11px}.back-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--red);color:#fff;font-size:20px;cursor:pointer;opacity:0;pointer-events:none;transition:.25s}.back-top.show{opacity:1;pointer-events:auto}
@media(max-width:900px){.nav-wrap{min-height:86px;align-items:center}.brand img{width:70px;height:58px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:86px;left:4%;right:4%;background:#fff;box-shadow:var(--shadow);padding:18px;flex-direction:column;align-items:flex-start}.site-nav.open{display:flex}.quick-grid,.services-grid,.logo-grid,.news-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{gap:20px}.stats-grid{grid-template-columns:1fr}.stats-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.4);padding:18px}.values-grid,.contact-section,.article-layout,.footer-grid{grid-template-columns:1fr}.values-grid>h2{font-size:55px}.contact-photo{min-height:330px}.footer-grid{text-align:center}.footer-logo,.map-image{margin-inline:auto}.article-layout aside h1{font-size:30px}}
@media(max-width:580px){.home-hero{min-height:480px}.hero-overlay{padding:70px 18px 110px}.home-hero p{font-size:14px}.quick-grid,.services-grid,.logo-grid,.news-grid{grid-template-columns:1fr}.quick-grid{transform:translateY(-55px);margin-bottom:-55px}.about-band,.services-section{padding:58px 0}.hero-left{padding:44px 20px}.hero-left h1{font-size:58px}.page-banner h1{font-size:38px}.page-banner p{font-size:15px;padding-inline:18px}.values-grid{gap:35px}.values-grid>h2{font-size:48px}.contact-form{padding:28px 20px 24px}.article-hero{min-height:300px}.article-layout article{padding:22px}.footer-grid{gap:30px}.footer-logo{width:190px}}
