@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Oswald:wght@500;600;700&display=swap');

:root{
  --blue:#062b66;
  --blue2:#0d4da5;
  --red:#d71920;
  --gold:#f4c400;
  --ink:#14213d;
  --muted:#5c6780;
  --light:#f5f8fc;
  --white:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
.container{width:min(1180px,92%);margin:auto}
.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid #e7edf5;backdrop-filter:blur(10px)}
.nav{min-height:78px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;margin-right:auto}
.brand-mark{width:42px;height:42px;border:3px solid var(--blue);border-radius:50%;display:grid;place-items:center;color:var(--blue);font-weight:900;font-size:22px}
.brand strong{display:block;font-family:Oswald,sans-serif;font-size:22px;letter-spacing:.5px}
.brand small{display:block;font-size:10px;color:var(--blue2)}
nav{display:flex;gap:22px}
nav a{color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}
nav a:hover{color:var(--blue2)}
.btn{display:inline-block;padding:12px 20px;border-radius:8px;text-decoration:none;font-weight:800;border:2px solid transparent;cursor:pointer;font:inherit}
.btn-red{background:var(--red);color:#fff}
.btn-red:hover{filter:brightness(.92)}
.btn-outline{border-color:#cbd7e8;color:var(--blue);background:#fff}
.menu{display:none;background:none;border:0;font-size:26px}

.hero{background:linear-gradient(135deg,#f7faff 0%,#fff 55%,#eef4fc 100%);padding:54px 0 70px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:44px;align-items:center}
.eyebrow,.section-tag{display:inline-block;font-weight:900;letter-spacing:1.5px;color:var(--blue2);font-size:12px}
.hero h1{font-family:Oswald,sans-serif;font-size:clamp(44px,5.2vw,72px);line-height:1.04;margin:14px 0 20px;text-transform:uppercase}
.hero h1 span{color:var(--blue2)}
.hero p{font-size:17px;color:var(--muted);max-width:650px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.hero-visual{border-radius:22px;overflow:hidden;box-shadow:0 25px 60px rgba(7,43,102,.18);background:#fff}
.hero-visual img{width:100%;display:block}
.stats{display:flex;gap:28px;margin-top:30px;padding-top:22px;border-top:1px solid #dce5f1}
.stats div{display:flex;flex-direction:column}
.stats strong{font-size:14px;color:var(--blue)}
.stats span{font-size:12px;color:var(--muted)}

.section{padding:85px 0}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
h2{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:clamp(34px,4vw,52px);line-height:1.1;margin:12px 0 18px}
.about-grid p{color:var(--muted);font-size:17px}
.services{background:var(--light)}
.section-heading{text-align:center;max-width:760px;margin:0 auto 42px}
.section-heading p{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card{background:#fff;border:1px solid #e5ebf4;border-radius:16px;padding:26px;box-shadow:0 8px 24px rgba(10,39,80,.05);transition:.2s}
.card:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(10,39,80,.10)}
.icon{width:50px;height:50px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:24px;margin-bottom:18px}
.card h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:21px;line-height:1.2;margin:0 0 10px;color:var(--blue)}
.card p{font-size:14px;color:var(--muted);margin:0}

.formation{background:var(--blue);color:#fff}
.formation-grid{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}
.formation .section-tag,.contact .section-tag{color:var(--gold)}
.formation p,.contact p{color:#dce6f5}
.formation-box{background:#fff;color:var(--ink);border-radius:18px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.18)}
.formation-box h3{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:28px;margin-top:0;color:var(--blue)}
label{display:block;font-weight:700;font-size:13px;margin:12px 0}
input,select{width:100%;margin-top:6px;padding:12px;border:1px solid #d6deea;border-radius:7px;font:inherit}
.formation-box .btn{width:100%;margin-top:10px}

.values{background:#fff}
.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.value-grid div{border-top:4px solid var(--blue2);padding:22px;background:#f7f9fc}
.value-grid strong{font-family:Oswald,sans-serif;text-transform:uppercase;font-size:25px;color:var(--blue)}
.value-grid p{color:var(--muted);font-size:14px}

.contact{background:linear-gradient(135deg,#062b66,#0d4da5);color:#fff;padding:70px 0}
.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}
.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-info p{background:rgba(255,255,255,.08);padding:18px;border-radius:10px;margin:0}
.contact-info p:last-child{grid-column:1/-1}

footer{background:#031a3d;color:#c8d4e8;padding:25px 0}
.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:12px}
.footer-grid strong{color:#fff;font-family:Oswald,sans-serif;font-size:20px}

@media(max-width:980px){
  nav{display:none}
  nav.open{display:flex;position:absolute;left:0;right:0;top:78px;background:#fff;padding:20px;flex-direction:column;border-bottom:1px solid #ddd}
  .menu{display:block}
  .hero-grid,.about-grid,.formation-grid,.contact-grid{grid-template-columns:1fr}
  .cards{grid-template-columns:repeat(2,1fr)}
  .value-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .nav .btn{display:none}
  .hero{padding-top:35px}
  .cards,.value-grid,.contact-info{grid-template-columns:1fr}
  .contact-info p:last-child{grid-column:auto}
  .footer-grid{flex-direction:column;align-items:flex-start}
}
