:root{
    --navy-950:#081b3e;
    --navy-900:#0c2454;
    --navy-800:#12305f;
    --navy-700:#1a3d73;
    --blue-600:#2454c9;
    --blue-500:#3b6bd8;
    --teal-600:#0e8a94;
    --amber-600:#d9820b;
    --purple-600:#7c4cd6;
    --pink-600:#d63384;
    --brown-600:#a15c1f;
    --red-600:#dc3535;
    --gray-600:#5b6472;
    --link-blue:#2455c9;
    --page-bg:#eef2fb;
    --card-bg:#ffffff;
    --ink-900:#0c1a33;
    --ink-600:#48546b;
    --ink-500:#66718a;
    --star-gold:#f4c542;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    font-family: 'Manrope', sans-serif;
    color:var(--ink-900);
    line-height:1.55;
  }
  h1,h2,h3{
    font-family: 'Manrope', sans-serif;
    margin:0;
  }
  a{color:var(--link-blue); text-decoration:none;}
  a:hover{text-decoration:underline;}

  /* Container architecture: header runs at 1920px, all sub-sections at 1320px */
  .wrap-xl{
    max-width:1620px;
    margin:0 auto;
    padding:0 90px;
  }
  .wrap{
    max-width:1320px;
    margin:0 auto;
    padding:0 32px;
  }

  /* ===== HEADER / HERO ===== */
  .hero{
    padding:56px 0 40px;
  }
  .hero-grid{
    display:grid;
    grid-template-columns:1.15fr 0.85fr;
    gap:48px;
    align-items:center;
  }
  .eyebrow-title h1{
    font-size:clamp(2.4rem,5vw,3.6rem);
    font-weight:800;
    line-height:1.02;
    letter-spacing:-0.01em;
  }
  .eyebrow-title h1 .line1{ color: #1da1f2; display:block;}
  .eyebrow-title h1 .line2{
    display:block;
    background:#1d47a7;
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
  }
  .tagline{
    margin-top:14px;
    font-size:20px;
    font-weight:600;
    color:var(--ink-600);
  }
  .date-badge{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:20px;
    background: #b0c7e9;
    color:#050505;
    font-weight:600;
    font-size:0.92rem;
    padding:9px 18px;
    border-radius:999px;
  }
  .date-badge svg{width:16px; height:16px; flex:none;}
  .hero-copy{
    margin-top:22px;
    font-size:22px;
    color:var(--ink-600);
    max-width:60ch;
  }
  .hero-copy a{font-weight:600;}
  .hero-image{
    display:flex;
    justify-content:center;
  }
  .hero-image img{
    width:100%;
    height:auto;
  }

  .trust-row{
    margin-top:38px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
  }
  .trust-item{
    display:flex;
    align-items:center;
    gap:10px;
    background:#fff;
    border:1px solid #dde5f7;
    border-radius:12px;
    padding:14px 16px;
    font-weight:600;
    font-size:0.95rem;
    color:var(--navy-900);
  }
  .trust-item svg{width:22px; height:22px; flex:none; color:var(--blue-600);}

  /* ===== SECTION GRID ===== */
  .sections{
    padding:56px 0 40px;
  }
  .grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
  }
  .card{
    background:var(--card-bg);
    border-radius:16px;
    padding:26px 24px 24px;
    border:1px solid #e1e8f7;
    box-shadow:0 4px 14px rgba(20,45,100,0.05);
    border-top:4px solid var(--accent);
    display:flex;
    flex-direction:column;
    gap:12px;
  }
  .card-head{
    display:flex;
    align-items:center;
    gap:12px;
  }
  .num-badge{
    width:36px; height:36px;
    border-radius:10px;
    background:var(--accent);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-family: 'Manrope', sans-serif;
    font-weight:700;
    font-size:1rem;
    flex:none;
  }
  .icon-badge{
    width:40px; height:40px;
    border-radius:12px;
    background:color-mix(in srgb, var(--accent) 14%, white);
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
  }
  .icon-badge svg{width:22px; height:22px; color:var(--accent);}
  .card h3{
    font-size:30px;
    font-weight:700;
    color:#1d47a7;
    line-height:1.3;
  }
  .card p{
    margin:0;
font-size: 22px;
    color:var(--ink-600);
  }
  .card ul{
    margin:0;
    padding-left:18px;
    font-size:20px;
    color:var(--ink-600);
  }
  .card ul li{ margin-bottom:4px; }
  .sub-label{
    font-weight:700;
    color:var(--navy-900);
    font-size:22px;
    text-transform:uppercase;
    letter-spacing:0.03em;
    margin-top:6px;
  }
  .col2{
    columns:2;
    column-gap:18px;
    font-size:0.92rem;
    color:var(--ink-600);
    padding-left:18px;
    margin:0;
  }
  .col2 li{ break-inside:avoid; margin-bottom:4px;}
  .card .note{
    font-size:22px;
    color:var(--ink-500);
  }
  .card .contact-block{
    font-size:22px;
    color:var(--ink-600);
  }
  .card .contact-block strong{ color:var(--navy-900);}

  /* accent assignment */
  .c1{--accent:var(--blue-600);}
  .c2{--accent:var(--teal-600);}
  .c3{--accent:var(--amber-600);}
  .c4{--accent:var(--purple-600);}
  .c5{--accent:var(--blue-600);}
  .c6{--accent:var(--teal-600);}
  .c7{--accent:var(--blue-600);}
  .c8{--accent:var(--pink-600);}
  .c9{--accent:var(--brown-600);}
  .c10{--accent:var(--blue-600);}
  .c11{--accent:var(--amber-600);}
  .c12{--accent:var(--blue-600);}
  .c13{--accent:var(--red-600);}
  .c14{--accent:var(--gray-600);}
  .c15{--accent:var(--blue-600);}

  /* ===== FOOTER COMMITMENT ===== */
  .commitment{
    background:linear-gradient(120deg,var(--navy-950),var(--navy-800));
    color:#fff;
    padding:44px 0;
    margin-top:8px;
  }
  .commitment-grid{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:36px;
  }
  .commitment img{
    width:88px; height:88px;
    flex:none;
    border-radius:20px;
  }
  .commitment h2{
    font-size:1.5rem;
    font-weight:700;
    margin-bottom:8px;
  }
  .commitment p{
    margin:0;
    font-size:0.98rem;
    color:#c9d5ee;
    max-width:60ch;
  }
  .commitment-badges{
    display:flex;
    flex-direction:column;
    gap:14px;
  }
  .commitment-badge{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:600;
    font-size:18px;
    white-space:nowrap;
    color: white;
  }
  .commitment-badge svg{width:40px; height:25px; color: white; flex:none;}

  /* ===== RESPONSIVE BREAKPOINTS ===== */

  /* Large desktop refinement */
  @media (max-width:1180px){
    .wrap{ padding:0 24px; }
  }

  /* Tablet: 1024px */
  @media (max-width:1024px){
    .grid{ grid-template-columns:repeat(2,1fr); }
    .hero-grid{ grid-template-columns:1fr; }
    .hero-image{ order:-1; }
    .hero-image img{ max-width:300px; }
    .trust-row{ grid-template-columns:repeat(2,1fr); }
    .commitment-grid{ grid-template-columns:auto 1fr; }
    .commitment-badges{
      grid-column:1 / -1;
      flex-direction:row;
      flex-wrap:wrap;
      margin-top:10px;
    }
  }

  /* Small tablet / large phone: 768px */
  @media (max-width:768px){
    .eyebrow-title h1{ font-size:clamp(2rem,7vw,2.6rem); }
    .tagline{ font-size:1rem; }
    .grid{ grid-template-columns:1fr; }
    .sections{ padding:40px 0 24px; }
    .hero{ padding:40px 0 28px; }
    .commitment-grid{ grid-template-columns:1fr; text-align:center; }
    .commitment img{ margin:0 auto; }
    .commitment-badges{ justify-content:center; }
  }

  /* Mobile: 480px */
  @media (max-width:480px){
    .wrap{ padding:0 18px; }
    .eyebrow-title h1{ font-size:1.8rem; }
    .tagline{ font-size:0.95rem; }
    .hero-copy{ font-size:0.94rem; }
    .trust-row{ grid-template-columns:1fr 1fr; gap:10px; }
    .trust-item{ font-size:0.82rem; padding:10px 12px; }
    .card{ padding:20px 18px; }
    .col2{ columns:1; }
    .commitment-badge{ font-size:0.85rem; }
    .date-badge{ font-size:0.8rem; }
  }
/*-----------------------------------*/
.consent {
  max-width: 1320px;
  width: calc(100% - 32px);
  margin: 36px auto 56px; /* Centers the container */
  background: linear-gradient(120deg, #1d47a7 0%, #1b3f95 100%);
  border-radius: 14px;
  padding: 22px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
  box-sizing: border-box;
}

.consent-left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1 1 380px;
}

.consent-left .badge {
  flex: none;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
}

.consent-left .badge i {
  font-size: 28px;
  color: #fff;
}

.consent h4 {
  color: #fff;
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 4px;
}

.consent p {
  color: #cfdaf4;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.6;
  max-width: 640px;
}

.consent-img {
  flex: 0 0 250px;
  text-align: center;
}

.consent-img img {
  width: 100%;
  max-width: 250px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* Tablet */
@media (max-width: 992px) {
  .consent {
    padding: 20px;
    gap: 20px;
  }

  .consent h4 {
    font-size: 22px;
  }

  .consent p {
    font-size: 16px;
  }

  .consent-img {
    flex: 0 0 200px;
  }

  .consent-img img {
    max-width: 200px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  .consent {
    flex-direction: column;
    text-align: center;
    padding: 20px 16px;
    margin: 24px auto;
  }

  .consent-left {
    flex-direction: column;
    text-align: center;
  }

  .consent h4 {
    font-size: 20px;
  }

  .consent p {
    font-size: 15px;
    max-width: 100%;
  }

  .consent-img {
    width: 180px;
  }

  .consent-img img {
    max-width: 180px;
  }
}

/* Small Mobile */
@media (max-width: 480px) {
  .consent {
    width: calc(100% - 20px);
    padding: 16px;
  }

  .consent-left .badge {
    width: 60px;
    height: 60px;
  }

  .consent-left .badge i {
    font-size: 24px;
  }

  .consent h4 {
    font-size: 18px;
  }

  .consent p {
    font-size: 14px;
  }

  .consent-img {
    width: 150px;
  }
}