/* ── Hero override: light theme matching home/solutions ── */
    /* ── CTA section ── */
    .pg-cta {
      background: linear-gradient(120deg,#071633,#081d4d);
      padding: 56px 0; text-align: center;
    }
    .pg-cta h2 {
      font-size: clamp(22px, 4vw, 40px); font-weight: 900;
      color: #fff; margin: 0 0 14px; letter-spacing: -0.3px;
    }
    .pg-cta h2 span { color: #10C987; }
    .pg-cta p {
      color: rgba(255,255,255,0.62); font-size: 16px;
      margin: 0 auto 36px; max-width: 480px; line-height: 1.7;
    }
    .btn-cta-wh {
      display: inline-flex; align-items: center; gap: 8px;
      background: #155be7; color: #fff; font-size: 15px; font-weight: 800;
      padding: 15px 36px; border-radius: 999px; text-decoration: none;
      box-shadow: 0 4px 20px rgba(21,91,231,.32);
      transition: background 0.2s, transform 0.2s;
    }
    .btn-cta-wh:hover { background: #104fc4; transform: translateY(-2px); }

    .contact-main {
      padding: 44px 0 58px;
      background: radial-gradient(circle at 72% 7%,rgba(218,232,255,.85),transparent 28%),linear-gradient(180deg,#f7faff 0,#fff 48%);
    }
    .contact-hero {
      display: grid;
      grid-template-columns: .95fr 1.05fr;
      align-items: center;
      padding: 0;
      min-height: 305px;
      gap: clamp(35px,5vw,78px);
      margin-bottom: 6px;
    }
    .contact-kicker {
      display: flex;
      align-items: center;
      gap: 9px;
      color: #1765df;
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
    }
    .contact-kicker::after { content:"";width:22px;height:1px;background:#1765df; }
    .contact-title {
      margin: 14px 0 13px;
      color: #091633;
      font-size: clamp(42px,4vw,62px);
      line-height: 1;
      letter-spacing: -.045em;
    }
    .contact-title::after { content:"";display:block;width:37px;height:2px;margin-top:16px;background:#1765df; }
    .contact-lead { max-width:570px;margin:0;color:#43516a;font-size:17px;line-height:1.7; }
    .contact-promises {
      display: grid;
      grid-template-columns: repeat(3,minmax(0,1fr));
      gap: 18px;
      margin-top: 34px;
    }
    .contact-promise {
      display: grid;
      grid-template-columns: 46px 1fr;
      align-items: center;
      gap: 10px;
      min-width: 0;
    }
    .contact-round-icon {
      width: 46px;
      height: 46px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      color: #1765df;
      background: #ebf2ff;
      font-size: 19px;
    }
    .contact-round-icon i { display:block;margin:0;line-height:1; }
    .contact-promise > .contact-round-icon {
      display: grid;
      place-items: center;
      color: #1765df;
      font-size: 20px;
    }
    .contact-promise > div { align-self: start; }
    .contact-promise strong { display:block;margin-bottom:5px;color:#101d35;font-size:13px;line-height:1.35; }
    .contact-promise > div > span { display:block;color:#637086;font-size:11.5px;line-height:1.5; }
    .contact-hero-image { height:315px;overflow:hidden;border-radius:48% 48% 0 0; }
    .contact-hero-image img {
      display: block;
      width: 273%;
      max-width: none;
      height: auto;
      transform: translate(-56%,-9.4%);
    }
    .new-contact-panels {
      display: grid;
      grid-template-columns: 1.38fr 1fr;
      gap: 16px;
      align-items: stretch;
      padding: 0;
    }
    .new-contact-card {
      border: 1px solid #e6ebf2;
      border-radius: 9px;
      background: rgba(255,255,255,.96);
      box-shadow: 0 8px 25px rgba(33,60,105,.055);
    }
    .new-contact-form { padding:25px; }
    .new-contact-card h2 { margin:0 0 8px;color:#0b1730;font-size:25px;letter-spacing:-.025em; }
    .new-contact-card .card-sub { margin:0 0 18px;color:#657287;font-size:13px; }
    .new-form-row { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
    .new-form-group { margin-bottom:11px; }
    .new-form-group input,
    .new-form-group select,
    .new-form-group textarea {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #dfe5ed;
      border-radius: 4px;
      outline: 0;
      color: #263550;
      background: #fff;
      font: 13px Inter,sans-serif;
      transition: .18s ease;
    }
    .new-form-group input,.new-form-group select { height:46px;padding:0 14px; }
    .new-form-group textarea { min-height:112px;padding:14px;resize:vertical; }
    .new-form-group input:focus,
    .new-form-group select:focus,
    .new-form-group textarea:focus { border-color:#1765df;box-shadow:0 0 0 3px rgba(23,101,223,.09); }
    .contact-submit {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      min-height: 44px;
      padding: 0 24px;
      border: 0;
      border-radius: 4px;
      color: #fff;
      background: #1765df;
      cursor: pointer;
      font: 700 13px Inter,sans-serif;
      box-shadow: 0 6px 15px rgba(23,101,223,.2);
    }
    .contact-submit:hover { background:#1058c8; }
    .connect-card { padding:25px 28px;display:flex;flex-direction:column; }
    .connect-list { margin-top:12px; }
    .connect-row {
      display: grid;
      grid-template-columns: 53px 1fr 15px;
      align-items: center;
      gap: 15px;
      min-height: 96px;
      border-bottom: 1px solid #e9edf3;
      color: inherit;
      text-decoration: none;
    }
    .connect-row:last-child { border-bottom:0; }
    .connect-row > .contact-round-icon {
      width: 58px;
      height: 58px;
      display: grid;
      place-items: center;
      color: #1765df;
      font-size: 22px;
    }
    .connect-row strong { display:block;margin-bottom:5px;color:#101d35;font-size:15px; }
    .connect-row b { display:block;margin-bottom:5px;color:#1765df;font-size:13px;font-weight:600; }
    .connect-row > span:nth-child(2) > span { display:block;color:#59677c;font-size:12px;line-height:1.5; }
    .connect-arrow { color:#17243c;font-size:14px; }
    .connect-help {
      display: flex;
      align-items: center;
      gap: 16px;
      flex: 1;
      min-height: 120px;
      margin-top: 16px;
      padding: 20px;
      border-radius: 10px;
      background: linear-gradient(135deg,#eef5ff,#f7faff);
    }
    .connect-help .contact-round-icon { flex:0 0 auto;background:#fff;box-shadow:0 5px 16px rgba(23,101,223,.1); }
    .connect-help strong { display:block;margin-bottom:6px;color:#101d35;font-size:14px; }
    .connect-help p { margin:0 0 10px;color:#59677c;font-size:12px;line-height:1.55; }
    .connect-help a { color:#1765df;font-size:12px;font-weight:700;text-decoration:none; }
    .offices-card { margin-top:16px;padding:19px 25px 22px; }
    .offices-card h2 { margin-bottom:5px;font-size:17px; }
    .offices-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:16px; }
    .office { display:grid;grid-template-columns:45px 1fr;gap:13px;min-width:0; }
    .office .contact-round-icon { width:48px;height:48px;font-size:19px; }
    .office strong { display:block;margin-bottom:6px;color:#101d35;font-size:13px; }
    .office address { color:#59677c;font-size:11.5px;font-style:normal;line-height:1.6; }
    @media(max-width:1050px){
      .new-contact-panels{grid-template-columns:1fr}
    }
    @media(max-width:800px){
      .contact-main{padding-top:34px}
      .contact-hero{grid-template-columns:1fr}
      .contact-hero-image{height:300px}
      .offices-grid{grid-template-columns:repeat(2,1fr)}
    }
    @media(max-width:520px){
      .contact-title{font-size:42px}
      .contact-promises,.new-form-row,.offices-grid{grid-template-columns:1fr}
      .contact-hero-image{height:230px}
      .new-contact-form,.connect-card,.offices-card{padding:21px 18px}
    }
