:root{
  --topbarH: 44px;
  --navH-desktop: 72px;
  --navH-mobile: 58px;

  --jibb-blue-900:#072264;
  --jibb-blue-800:#1d2a70;
  --jibb-blue-700:#223070;
  --jibb-red:#e60012;
  --jibb-on-dark:#ffffff;
  --jibb-on-muted:#374151;
  --jibb-muted:#6b7280;
  --jibb-surface:#ffffff;
  --jibb-elev:0 10px 24px rgba(0,0,0,0.08);
  --jibb-card:0 18px 36px rgba(16,24,64,0.10);
}

*{box-sizing:border-box}
img{max-width:100%;height:auto;display:block}
.jibb-container{ max-width:1200px; margin:0 auto; padding:0 20px; }

@media (min-width:993px){ body{ padding-top: calc(var(--topbarH) + var(--navH-desktop)); } }
@media (max-width:992px){ body{ padding-top: calc(var(--topbarH) + var(--navH-mobile)); } }

.page .entry-header,
.page .page-header,
.page h1.entry-title,
.elementor-page-title{ display:none !important; }
.page .site-main{ padding-top:0 !important; }

/* Top Language Bar */
#jibb-header .jibb-topbar{
  position:fixed; top:0; left:0; right:0;
  height:var(--topbarH);
  background:var(--jibb-blue-900); color:var(--jibb-on-dark);
  z-index:2000; display:flex; align-items:center;
}
#jibb-header .jibb-topbar .jibb-container{ display:flex; justify-content:center; align-items:center; }
.jibb-topbar-right{ display:flex; gap:12px; }
.lang-btn{ color:#fff; border:1px solid #fff; border-radius:999px; padding:4px 14px; text-decoration:none; transition:.25s; font-weight:600; }
.lang-btn:hover,.lang-btn.active{ background:#fff; color:#001a66; }

/* Navbar */
#jibb-header .jibb-navbar{
  position:fixed; left:0; right:0; top:var(--topbarH);
  z-index:1990; background:var(--jibb-blue-800);
  box-shadow:0 2px 6px rgba(0,0,0,.12);
}
#jibb-header .jibb-navbar .jibb-container{ display:flex; align-items:center; gap:16px; height:var(--navH-desktop); }
#jibb-header .jibb-logo img{ max-height:44px; height:auto; }

/* Desktop menu */
@media (min-width:993px){
  #jibb-menu{ position:static; transform:none; max-height:none; opacity:1; background:transparent; border:0; box-shadow:none; overflow:visible; }
  .jibb-menu-list{ display:flex; align-items:center; gap:32px; margin:0; list-style:none; }
  .jibb-menu-list li a{
    color:#fff; text-decoration:none; font-weight:600; padding:6px 0; transition:.25s;
    font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  }
  .jibb-menu-list li a:hover{ color:#ffd9df; }
  .jibb-menu-list li:last-child a{ background:#fff; color:#223070; padding:8px 18px; border-radius:999px; }
  .jibb-menu-list li:last-child a:hover{ background:#f2f4ff; color:#1b265f; }
}

/* Mobile / tablet drawer */
@media (max-width:992px){
  #jibb-header .jibb-navbar .jibb-container{ height:var(--navH-mobile); }

  #jibb-header .jibb-burger{
    display:flex; position:absolute; right:16px; top:50%; transform:translateY(-50%);
    width:44px; height:38px; background:transparent; border:0; cursor:pointer;
    flex-direction:column; justify-content:center; align-items:center; gap:6px; z-index:1205;
  }
  #jibb-header .jibb-burger span{
    width:28px; height:3px; background:#fff; border-radius:2px; transition:all .25s; display:block;
  }
  #jibb-header .jibb-burger.is-open span:nth-child(1){ transform:rotate(45deg) translate(5px,6px); }
  #jibb-header .jibb-burger.is-open span:nth-child(2){ opacity:0; }
  #jibb-header .jibb-burger.is-open span:nth-child(3){ transform:rotate(-45deg) translate(6px,-6px); }

  #jibb-menu{
    position:absolute; left:0; top:100%; width:100%;
    background:#fff; border-top:1px solid #e8eaf4; box-shadow:0 10px 24px rgba(0,0,0,.08);
    overflow:hidden; transform-origin:top; max-height:0; opacity:0; transition:max-height .3s ease, opacity .2s ease; z-index:1200;
  }
  #jibb-menu.open{ max-height:70vh; opacity:1; }

  #jibb-menu .jibb-menu-list{
    list-style:none; margin:0; padding:16px 0;
    display:flex; flex-direction:column; gap:14px; align-items:center;
  }
  #jibb-menu .jibb-menu-list a{ color:#1d2a70; font-weight:700; text-decoration:none; font-size:17px; padding:8px 0; width:100%; text-align:center; }

  body.menu-open::before{ content:""; position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:1150; }
}

/* HERO (home) */
#jibb-home .jibb-hero{ background:#2a3481; color:#fff; padding:60px 0 50px; display:flex; align-items:center; overflow:hidden; }
#jibb-home .jibb-hero .jibb-container{ display:flex; align-items:center; justify-content:space-between; gap:40px; padding:0 40px; max-width:1200px; margin:0 auto; }
.hero-text{ flex:1.1; display:flex; flex-direction:column; justify-content:center; }
.hero-text .eyebrow{ color:#cdd6ff; text-transform:uppercase; font-size:13px; font-weight:700; letter-spacing:.15em; margin-bottom:12px; }
.hero-text h1{ font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; font-weight:700; font-size:52px; line-height:1.15; color:#fff; margin:0 0 20px; }
.hero-text .subtitle{ color:#d8e2ff; font-size:16px; line-height:1.6; margin:0 0 28px; max-width:540px; }
.hero-cta{ display:flex; flex-wrap:wrap; gap:14px; }
.btn-pill{ display:inline-block; border-radius:50px; padding:10px 22px; text-decoration:none; font-weight:600; transition:all .3s ease; font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.btn-light{ background:#fff; color:#223070; } .btn-light:hover{ background:#dfe5ff; }
.btn-outline{ border:2px solid #fff; color:#fff; } .btn-outline:hover{ background:#fff; color:#223070; }
.hero-media{ flex:.9; display:flex; justify-content:flex-end; align-items:center; }
.hero-media img{ width:100%; max-width:420px; border-radius:22px; box-shadow:0 8px 28px rgba(0,0,0,.25); }
@media (max-width:900px){ #jibb-home .jibb-hero .jibb-container{ flex-direction:column; text-align:center; gap:32px; padding:0 20px; } .hero-media img{ max-width:90%; margin:0 auto; } }

/* ABOUT (home) */
#about.jibb-section{ background:#f6f8ff; padding:72px 0; }
#about .about-wrap{ display:grid; grid-template-columns:1.3fr 1fr; gap:40px; align-items:center; max-width:1200px; margin:0 auto; padding:0 24px; }
#about h2{ font-size:34px; font-weight:800; color:#0f1f64; margin:0 0 10px; }
#about .lead{ font-size:17px; line-height:1.75; color:#2b3566; margin:0 0 18px; }
#about .about-bullets{ list-style:none; padding:0; margin:0 0 20px; }
#about .about-bullets li{ position:relative; padding-left:26px; margin:10px 0; color:#32417e; }
#about .about-bullets li::before{ content:""; position:absolute; left:0; top:8px; width:10px; height:10px; border-radius:50%; background:#7ea2ff; box-shadow:0 0 0 4px #e6edff; }
#about .about-cta{ display:flex; flex-wrap:wrap; gap:12px; }
#about .btn-pill{ border-radius:999px; padding:10px 22px; font-weight:600; }
#about .btn-light{ background:#fff; color:#223070; }
#about .btn-outline{ border:2px solid #223070; color:#223070; }
#about .btn-outline:hover{ background:#223070; color:#fff; }
#about .about-card{ background:#fff; border-radius:18px; box-shadow:0 12px 30px rgba(15,31,100,.12); padding:22px; }
#about .about-stat{ display:flex; align-items:baseline; gap:12px; }
#about .about-stat .num{ font-size:44px; font-weight:800; color:#1c2c7a; line-height:1; }
#about .about-stat .label{ color:#5663a3; }
#about .about-divider{ height:1px; background:linear-gradient(90deg,#e8ecff,transparent); margin:18px 0; }
#about .about-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
#about .tag{ display:inline-block; padding:8px 12px; border-radius:999px; background:#eef2ff; color:#26357b; font-weight:600; font-size:13px; }
#about sup{ font-size:.65em; margin-left:2px; opacity:.85; vertical-align:super; }
@media (max-width:980px){ #about .about-wrap{ grid-template-columns:1fr; } #about .about-card{ order:2; } }

/* HIGHLIGHTS (home) */
#highlights.jibb-section{ background:#fff; padding:72px 0; }
#highlights .jibb-container{ max-width:1200px; margin:0 auto; padding:0 24px; }
#highlights .hl-title{ margin:0; font-size:34px; font-weight:800; color:#0f1f64; }
#highlights .hl-sub{ margin:10px 0 26px; color:#6b7280; font-size:16px; }
#highlights .hl-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
#highlights .hl-card{ background:#fff; border-radius:18px; padding:24px 24px 22px; box-shadow:var(--jibb-card); border:1px solid rgba(15,31,100,.06); text-align:left; }
#highlights .hl-card h3{ margin:0 0 10px; font-size:20px; font-weight:800; color:#0f1f64; }
#highlights .hl-card p{ margin:0; color:#374151; line-height:1.6; font-size:15.5px; }
@media (max-width:992px){ #highlights .hl-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:640px){ #highlights .hl-grid{ grid-template-columns:1fr; } }

/* PARTNERS MARQUEE */
#partners.jibb-section{ background:#fff; padding:64px 0; }
#partners .jibb-container{ max-width:1200px; margin:0 auto; padding:0 24px; }
.partners-title{ margin:0; font-size:32px; font-weight:800; color:#0f1f64; }
.partners-sub{ margin:8px 0 18px; color:#6b7280; }
.marquee{ position:relative; overflow:hidden;
  mask-image: linear-gradient(to right, transparent 0, black 8%, black 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0, black 8%, black 92%, transparent 100%);
}
.marquee-track{ display:flex; align-items:center; gap:48px; list-style:none; margin:0; padding:14px 0; animation: partners-scroll 28s linear infinite; }
.marquee:hover .marquee-track{ animation-play-state:paused; }
.marquee img{ height:42px; width:auto; filter:grayscale(100%) opacity(.9); transition:filter .25s, transform .25s; }
.marquee img:hover{ filter:grayscale(0%) opacity(1); transform:translateY(-2px); }
@keyframes partners-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (max-width:640px){ .marquee, .logo-marquee{ -webkit-mask-image:none !important; mask-image:none !important; } .marquee-track{ gap:28px; animation-duration:22s !important; } .marquee img{ height:28px !important; } }

/* NEWS & EVENTS */
.news-section{ background:#f8f9fc; padding:100px 0; }
.news-container{ max-width:1200px; margin:0 auto; padding:0 40px; }
.section-title{ font-size:36px; font-weight:800; color:#0f1f64; margin-bottom:40px; }
.news-slide{ display:flex; justify-content:center; }
.news-content{ display:flex; align-items:center; justify-content:space-between; background:#fff; border-radius:25px; box-shadow:0 8px 25px rgba(0,0,0,.08); overflow:hidden; width:100%; max-width:1100px; padding:50px 40px; }
.news-text{ flex:1; padding-right:30px; }
.news-text h3{ font-size:22px; font-weight:700; color:#0f1f64; margin-bottom:15px; }
.news-text p{ font-size:16px; color:#333; margin-bottom:25px; }
.news-img{ flex:1; text-align:right; }
.news-img img{ width:100%; max-width:550px; border-radius:15px; object-fit:cover; }
.btn-primary{ display:inline-block; padding:10px 24px; border-radius:25px; background:#223070; color:#fff; text-decoration:none; font-weight:600; transition:background .3s; }
.btn-primary:hover{ background:#1a255d; }
.swiper-pagination{ margin-top:30px; text-align:center; }
.swiper-pagination-bullet{ width:10px; height:10px; background:#223070; opacity:.4; margin:0 6px; }
.swiper-pagination-bullet-active{ opacity:1; background:#0f1f64; }
@media (max-width:992px){ .news-content{ flex-direction:column; text-align:center; padding:40px 25px; } .news-text{ padding-right:0; } .news-img img{ margin-top:20px; } }

/* FOOTER */
#jibb-footer{ background:#1a2660; color:#fff; }
#jibb-footer a{ color:#fff; text-decoration:none; }
#jibb-footer a:hover{ opacity:.9; }
#jibb-footer .jibb-footer-inner{ max-width:1200px; margin:0 auto; padding:32px 24px; display:grid; gap:28px; grid-template-columns:2fr 1.2fr 1.2fr 1fr; }
#jibb-footer .footer-logo{ display:flex; align-items:center; gap:10px; margin-bottom:8px; }
#jibb-footer .footer-logo img{ height:28px; width:auto; }
#jibb-footer .footer-logo .wordmark{ font-weight:800; letter-spacing:.4px; }
#jibb-footer .col h4{ margin:0 0 10px; font-weight:800; }
#jibb-footer .jibb-footer-links{ list-style:none; margin:0; padding:0; }
#jibb-footer .jibb-footer-links li{ margin:6px 0; }
#jibb-footer .social-list{ list-style:none; margin:0; padding:0; }
#jibb-footer .social-list li{ margin:6px 0; }
#jibb-footer .social-list a{ display:flex; align-items:center; gap:8px; }
#jibb-footer .lang-buttons{ display:flex; gap:10px; margin-top:6px; }
#jibb-footer .lang-btn{ border:1px solid #fff; padding:8px 14px; border-radius:999px; }
#jibb-footer .lang-btn.active, #jibb-footer .lang-btn:hover{ background:#fff; color:#1a2660; }
#jibb-footer .jibb-footer-bottom{ border-top:1px solid rgba(255,255,255,.25); text-align:center; padding:10px 24px; font-size:14px; opacity:.9; }
@media (max-width:900px){ #jibb-footer .jibb-footer-inner{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ #jibb-footer .jibb-footer-inner{ grid-template-columns:1fr; } }

/* CONTACT PAGE (template) */
.jibb-wrap{ max-width:1060px; margin:0 auto; padding:24px; }
.jibb-title{ font-weight:800; font-size:clamp(26px,2.8vw,40px); margin:0 0 6px; }
.jibb-sub{ color:#667085; margin-bottom:20px; }
.jibb-alert{ padding:12px 14px; border-radius:10px; margin-bottom:16px; border:1px solid transparent; }
.jibb-success{ background:#e6f7ed; border-color:#b7e2c7; }
.jibb-error{ background:#fdecea; border-color:#f5c2c0; }
.jibb-contacts{ margin:10px 0 26px; background:var(--jibb-blue-800); color:#fff; border-radius:14px; overflow:hidden; }
.jibb-contacts .top-strip{ height:6px; background:linear-gradient(90deg,#5ab6ff,#91a7ff); }
.jibb-cards{ display:grid; grid-template-columns:1fr 1fr; gap:0; }
.jibb-card{ padding:18px 22px; border-right:1px solid rgba(255,255,255,.15); }
.jibb-card:last-child{ border-right:0; }
.jibb-card h3{ margin:0 0 8px; font-size:18px; font-weight:800; }
.jibb-card-line{ display:flex; align-items:center; gap:8px; margin:8px 0; }
.jibb-icon{ width:18px; height:18px; min-width:18px; display:inline-block; }
.jibb-icon svg{ width:18px; height:18px; fill:#5ab6ff; }
.jibb-form{ background:#fff; border:1px solid #e5e7eb; border-radius:14px; padding:20px; }
.jibb-grid{ display:grid; gap:14px; grid-template-columns:1fr 1fr; }
@media (max-width:720px){ .jibb-grid{ grid-template-columns:1fr; } }
.jibb-field label{ display:block; font-weight:600; margin:6px 0; }
.jibb-field input,
.jibb-field select,
.jibb-field textarea{ width:100%; padding:12px; border:1px solid #d7dce1; border-radius:10px; background:#fff; color:#111827; }
.jibb-btn{ display:inline-block; padding:12px 18px; border-radius:12px; border:none; cursor:pointer; font-weight:700; }
.jibb-btn-primary{ background:var(--jibb-blue-900); color:#fff; }
.jibb-btn-primary:hover{ filter:brightness(1.08); }
@media (max-width:900px){ .jibb-cards{ grid-template-columns:1fr; } .jibb-card{ border-right:0; border-bottom:1px solid rgba(255,255,255,.15); } .jibb-card:last-child{ border-bottom:0; } }

/* Utilities */
.text-center{ text-align:center; }
.mt-0{ margin-top:0; } .mb-0{ margin-bottom:0; }
.mt-8{ margin-top:8px; } .mt-12{ margin-top:12px; } .mt-16{ margin-top:16px; }
/* ---------- JIBB HEADER: match target look ---------- */

/* Topbar: pills centered (you already have this) */
#jibb-header .jibb-topbar .jibb-container{ justify-content:center; }

/* Navbar bar color + spacing */
#jibb-header .jibb-navbar{
  background:#232f74;            /* slightly lighter than top bar */
  box-shadow:none;
  border:0;
}
#jibb-header .jibb-navbar .jibb-container{
  height:72px;
  align-items:center;
  justify-content:space-between;  /* brand left, menu right */
  gap:20px;
}

/* Brand block: logo + wordmark inline and vertically centered */
.jibb-brand{ display:flex; align-items:center; gap:10px; }
.jibb-brand .jibb-logo img{ max-height:34px; width:auto; display:block; }
.jibb-brand .jibb-wordmark{
  font-weight:800; letter-spacing:.4px;
  color:#8ea2ff;                   /* muted blue like in screenshot */
  font-size:20px; line-height:1;
}

/* Push menu to the right on desktop */
@media (min-width:993px){
  #jibb-menu{ margin-left:auto; }
  .jibb-menu-list{ gap:34px; }
  .jibb-menu-list li a{
    color:#ffffff;                 /* white links */
    font-weight:700;               /* bold like screenshot */
  }
  /* Contact pill */
  .jibb-menu-list li:last-child a{
    background:#ffffff;
    color:#1f2a66;
    padding:10px 18px;
    border-radius:999px;
    font-weight:700;
  }
}

/* Hide all hamburgers on desktop; only show ours on mobile */
#jibb-header .jibb-burger{ display:none; }
@media (min-width:993px){
  #jibb-header .elementor-menu-toggle{ display:none !important; }
}
@media (max-width:992px){
  #jibb-header .jibb-burger{ display:flex; }
  /* keep mobile drawer styles you already have */
}

/* Tighten the thin purple line showing under navbar (remove if any) */
#jibb-header .jibb-navbar::after{ content:none; }

/* Optional: reduce logo area top padding so brand aligns with menu text */
#jibb-header .jibb-navbar .jibb-container{ padding-top:6px; padding-bottom:6px; }
/* Keep the header logo tidy */
#jibb-header .custom-logo,
#jibb-header .jibb-logo img {
  max-height: 34px;
  width: auto;
  height: auto;
  display: block;
}
/* Ensure header left/right alignment even if menu is empty initially */
#jibb-header .jibb-navbar .jibb-container{
  display:flex;
  align-items:center;
  justify-content:space-between !important;
  gap:20px;
}

/* Brand tidy + logo sizing */
#jibb-header .custom-logo,
#jibb-header .jibb-logo img{ max-height:34px; width:auto; height:auto; display:block; }

/* Desktop: inline menu to the right */
@media (min-width:993px){
  #jibb-menu{ margin-left:auto; }
  #jibb-menu .jibb-menu-list{ display:flex; gap:34px; list-style:none; margin:0; }
  #jibb-menu .jibb-menu-list a{ color:#fff; font-weight:700; text-decoration:none; }
  #jibb-menu .jibb-menu-list li:last-child a{
    background:#fff; color:#1f2a66; padding:10px 18px; border-radius:999px;
  }
}
/* ========== HIGHLIGHTS SECTION (Final polished version) ========== */
#highlights.jibb-section {
  background: #ffffff;
  padding: 80px 0;
}

/* container */
#highlights .jibb-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}

/* layout grid: left intro + 3 highlight cards */
#highlights .highlights-wrap {
  display: grid;
  grid-template-columns: minmax(240px, 0.9fr) repeat(3, 1fr);
  gap: 36px;
  align-items: stretch;
}

/* left text column */
#highlights .section-head {
  grid-column: 1;
  align-self: flex-start;
  max-width: 260px;
}
#highlights .section-head h2 {
  font-size: 34px;
  font-weight: 800;
  color: #0f1f64;
  margin-bottom: 10px;
}
#highlights .section-sub {
  color: #444c7a;
  font-size: 16px;
  line-height: 1.7;
}

/* highlight cards */
#highlights .highlight-card {
  background: #f6f8ff; /* soft blue tint like your desired look */
  border-radius: 20px;
  padding: 30px 26px;
  box-shadow: 0 12px 28px rgba(15, 25, 90, 0.12);
  border: 1px solid rgba(15, 31, 100, 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: all 0.3s ease;
}

/* hover effect */
#highlights .highlight-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 36px rgba(16, 24, 64, 0.15);
}

/* icons */
#highlights .highlight-card .icon {
  font-size: 36px;
  margin-bottom: 12px;
  opacity: 0.95;
}

/* headings inside cards */
#highlights .highlight-card h3 {
  font-size: 20px;
  font-weight: 800;
  color: #0f1f64;
  margin-bottom: 10px;
}

/* paragraph text */
#highlights .highlight-card p {
  color: #374151;
  font-size: 15.5px;
  line-height: 1.7;
  margin: 0;
  max-width: 400px;
}

/* responsive */
@media (max-width: 992px) {
  #highlights .highlights-wrap {
    grid-template-columns: 1fr;
  }
  #highlights .section-head {
    max-width: none;
    text-align: center;
    margin-bottom: 20px;
  }
  #highlights .highlight-card {
    text-align: center;
    align-items: center;
  }
}

/* --- HIGHLIGHTS: vertically center the left intro vs the cards --- */

/* keep 4 columns (intro + 3 cards), but allow vertical centering */
#highlights .highlights-wrap{
  display: grid;
  grid-template-columns: minmax(240px, 0.9fr) repeat(3, 1fr);
  gap: 32px;
  align-items: start;                /* cards stay top-aligned */
  grid-auto-rows: 1fr;               /* equal row height for centering math */
}

/* center the left intro block vertically relative to the card row */
#highlights .section-head{
  grid-column: 1;
  align-self: center;                /* <-- key change */
  max-width: 260px;
}

/* polish heading + subtext (sizes from your mock) */
#highlights .section-head h2{
  margin: 0 0 12px;
  font-size: 34px;
  font-weight: 800;
  color: #0f1f64;
  line-height: 1.15;
}
#highlights .section-head .section-sub{
  margin: 0;
  color: #6b7280;
  font-size: 16px;
  line-height: 1.75;
}

/* make cards equal height so the centering feels correct */
#highlights .highlight-card{
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* mobile: stack; intro goes on top */
@media (max-width: 992px){
  #highlights .highlights-wrap{ grid-template-columns: 1fr; }
  #highlights .section-head{ align-self: start; max-width: none; text-align: center; }
}
/* ================================
   PARTNERS & ASSOCIATIONS SECTION
   ================================ */

#partners.jibb-section {
  background: #fff;
  padding: 72px 0;
}

#partners .jibb-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;

  /* 3-column layout — Title | Subtitle | Logos */
  display: grid;
  grid-template-columns: 1fr 1fr 2fr;
  align-items: center;
  gap: 40px;
}

/* --- Title --- */
#partners h2 {
  margin: 0;
  font-size: 34px;
  font-weight: 800;
  color: #0f1f64;
  line-height: 1.2;
}

/* --- Subtitle (Description) --- */
#partners .partners-sub,
#partners > .jibb-container > p:first-of-type {
  margin: 0;
  font-size: 17px;
  line-height: 1.7;
  color: #6b7280;
  max-width: 380px;
}

/* --- Logos List --- */
#partners .partners-logos {
  list-style: none;
  margin: 0;
  padding: 0;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 50px 45px;
}

#partners .partners-logos li {
  line-height: 1;
}

#partners .partners-logos img {
  display: block;
  height: 48px;
  width: auto;
  filter: grayscale(100%) opacity(0.9);
  transition: all 0.25s ease;
}

#partners .partners-logos img:hover {
  filter: grayscale(0%) opacity(1);
  transform: translateY(-3px);
}

/* --- Responsive Tweaks --- */
@media (max-width: 980px) {
  #partners .jibb-container {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 28px;
  }

  #partners h2 {
    font-size: 28px;
  }

  #partners .partners-sub {
    max-width: none;
    margin: 0 auto;
  }

  #partners .partners-logos {
    justify-content: center;
    gap: 32px 28px;
  }

  #partners .partners-logos img {
    height: 36px;
  }
}
/* ======== News & Events (Home) ======== */
.news-section{ background:#f5f7fc; padding:80px 0; }
.news-container{ max-width:1200px; margin:0 auto; padding:0 40px; }
.section-title{ font-size:36px; font-weight:800; color:#0f1f64; margin-bottom:28px; }

.news-content{
  display:flex; align-items:center; justify-content:space-between;
  background:#fff; border-radius:24px;
  box-shadow:0 14px 32px rgba(17,28,84,.12);
  overflow:hidden; width:100%; padding:40px 36px;
}
.news-text{ flex:1; padding-right:32px; }
.news-text h3{ font-size:22px; font-weight:800; color:#0f1f64; margin:0 0 10px; }
.news-text .news-date{ color:#6b7280; font-size:14px; margin:0 0 10px; }
.news-text p{ font-size:16px; color:#374151; line-height:1.7; margin:0 0 22px; }

.news-img{ flex:0 0 42%; text-align:right; }
.news-img img{ width:100%; max-width:520px; border-radius:14px; object-fit:cover; }

.btn-primary{
  display:inline-block; padding:10px 22px; border-radius:999px;
  background:#223070; color:#fff; text-decoration:none; font-weight:700;
  transition: filter .25s ease, transform .25s ease;
}
.btn-primary:hover{ filter:brightness(1.08); transform:translateY(-1px); }

/* swiper dots */
.news-pagination{ margin-top:16px; text-align:center; }
.news-pagination .swiper-pagination-bullet{
  width:10px; height:10px; background:#223070; opacity:.35; margin:0 6px;
}
.news-pagination .swiper-pagination-bullet-active{ opacity:1; }

/* responsive */
@media (max-width: 992px){
  .news-content{ flex-direction:column; text-align:center; padding:30px 22px; }
  .news-text{ padding-right:0; }
  .news-img{ flex-basis:auto; width:100%; margin-top:16px; }
}
/* ============== HOME: News & Events ============== */
.news-section{
  background:#f8f9fc;
  padding:100px 0;
}
.news-container{
  max-width:1200px;
  margin:0 auto;
  padding:0 40px;
}
.section-title{
  font-size:36px;
  font-weight:800;
  color:#0f1f64;
  margin-bottom:40px;
}

/* Swiper slide layout */
.news-slide{display:flex;justify-content:center;}
.news-content{
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  border-radius:25px;
  box-shadow:0 8px 25px rgba(0,0,0,0.08);
  overflow:hidden;
  width:100%;
  max-width:1100px;
  padding:50px 40px;
}

/* Left text block */
.news-text{
  flex:1;
  padding-right:30px;
}
.news-text h3{
  font-size:22px;
  font-weight:700;
  color:#0f1f64;
  margin-bottom:10px;
}
.news-date{
  font-weight:700;
  color:#223070;
  margin-bottom:8px;
}
.news-text p{
  font-size:16px;
  color:#333;
  margin-bottom:25px;
}

/* Right image */
.news-img{flex:1;text-align:right;}
.news-img img{
  width:100%;
  max-width:550px;
  border-radius:15px;
  object-fit:cover;
}

/* CTA button */
.btn-primary{
  display:inline-block;
  padding:10px 24px;
  border-radius:25px;
  background:#223070;
  color:#fff;
  text-decoration:none;
  font-weight:600;
  transition:background .3s;
}
.btn-primary:hover{background:#1a255d;}

/* Swiper pagination */
.news-swiper .swiper-pagination{margin-top:30px;text-align:center;}
.news-swiper .swiper-pagination-bullet{
  width:10px;height:10px;background:#223070;opacity:.4;margin:0 6px;
}
.news-swiper .swiper-pagination-bullet-active{opacity:1;background:#0f1f64;}

/* Responsive */
@media(max-width:992px){
  .news-content{flex-direction:column;text-align:center;padding:40px 25px;}
  .news-text{padding-right:0;}
  .news-img img{margin-top:20px;max-width:100%;}
}
/* ===== Top language bar layout ===== */
.jibb-topbar { background:#0b1f63; color:#fff; padding:6px 0; }
.jibb-topbar .jibb-topbar-inner {
  display:flex; justify-content:center; align-items:center; gap:12px;
}

/* ===== Pills ===== */
.jibb-lang-switch { display:flex; gap:10px; align-items:center; }
.lang-btn {
  padding:7px 16px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,.5);
  background:transparent;
  color:#ffffff;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:all .25s ease;
}
.lang-btn:hover { border-color:#ffffff; }

/* Active pill: white bg + brand-blue text */
.lang-btn.is-active {
  background:#ffffff;
  color:#0b1f63;
  border-color:#ffffff;
}

/* Optional: keep the pills from shrinking */
.lang-btn { min-width:98px; text-align:center; }

/* Hide Google’s banner / UI so it doesn't break layout */
body .goog-te-banner-frame { display:none !important; }
body { top:0 !important; }
#google_translate_element,
.goog-te-gadget, .goog-te-gadget-simple, .goog-te-menu-value,
.goog-te-menu2, .goog-text-highlight, .goog-te-combo { display:none !important; }

/* Pill base + layout (keep yours if you already have) */
.jibb-topbar { background:#0b1f63; color:#fff; padding:6px 0; }
.jibb-topbar .jibb-topbar-inner {
  display:flex; justify-content:center; align-items:center; gap:12px;
}
.jibb-lang-switch { display:flex; gap:10px; }

/* Pills */
.lang-btn {
  padding:7px 16px;
  border-radius:999px;
  border:2px solid rgba(255,255,255,.6);
  background:transparent;
  color:#ffffff;
  font-weight:700;
  line-height:1;
  cursor:pointer;
  transition:all .25s ease;
  min-width:98px; text-align:center;
}

/* Hover tidy */
.lang-btn:hover { border-color:#ffffff; }

/* ACTIVE pill: force white bg + brand text */
.lang-btn.is-active {
  background:#ffffff !important;
  color:#0b1f63 !important;
  border-color:#ffffff !important;
}

/* Neutralize any theme :active/:focus that turned it pink */
.lang-btn:active,
.lang-btn:focus {
  box-shadow:none !important;
  outline:none !important;
  background: inherit;  /* will be overridden by .is-active when needed */
}
.lang-btn.is-active:active,
.lang-btn.is-active:focus {
  background:#ffffff !important;
  color:#0b1f63 !important;
}

/* Hide Google banner & UI */
body .goog-te-banner-frame { display:none !important; }
body { top:0 !important; }
#google_translate_element,
.goog-te-gadget, .goog-te-gadget-simple, .goog-te-menu-value,
.goog-te-menu2, .goog-text-highlight, .goog-te-combo { display:none !important; }
/* Hide Google Website Translator UI completely */
.goog-te-banner-frame.skiptranslate,
.goog-te-banner-frame,
.goog-te-balloon-frame,
#goog-gt-tt,
.goog-tooltip,
.goog-text-highlight,
.goog-te-gadget-icon,
.goog-te-spinner-pos,
.goog-te-banner {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Hide the invisible translator gadget area and combo */
#google_translate_element,
.goog-te-gadget,
.goog-te-gadget-simple,
.goog-te-combo {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Fix page push-down the banner causes */
html, body { top: 0 !important; }
.jibb-contact-page .jibb-contacts-grid{
  display:grid; gap:24px; grid-template-columns:1fr 1fr;
}
@media(max-width:900px){ .jibb-contact-page .jibb-contacts-grid{ grid-template-columns:1fr; } }

.jibb-card--contact{ background:#182765; color:#fff; border-radius:16px; padding:24px; box-shadow:0 10px 28px rgba(0,0,0,.12); }
.jibb-alert{ padding:12px 14px; border-radius:10px; margin-bottom:16px; }
.jibb-success{ background:#e6f7ed; color:#0a6b3f; border:1px solid #b7e6ca; }
.jibb-error{ background:#fdecea; color:#8a1f1f; border:1px solid #f6b7b7; }

.jibb-form .jibb-grid{ display:grid; gap:18px; grid-template-columns:1fr 1fr; }
.jibb-form .jibb-field--full{ grid-column:1 / -1; }
.jibb-form input, .jibb-form select, .jibb-form textarea{
  width:100%; padding:12px; border:1px solid #d7dce6; border-radius:10px; background:#fff;
}
.jibb-btn.jibb-btn--primary{
  background:#0f1f64; color:#fff; font-weight:700; border:none; border-radius:12px; padding:12px 18px; cursor:pointer;
}
.jibb-btn.jibb-btn--primary:hover{ filter:brightness(1.08); }
