.phone-numbers {
    width: 100%;
}

.phone-group {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 12px;
}

.phone-group:last-child {
    margin-bottom: 0;
}


/* LEFT ICON */
.phone-group-icon {
   flex: 0 0 43px;
    width: 43px;
    height: 43px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #eaf4f8;
    color: #0b6b9c;
}

.phone-group-icon svg {
    width: 21px;
    height: 21px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}


/* TELEPHONE ICON */
.telephone-icon svg {
    width: 21px;
    height: 21px;
}


/* NUMBERS */
.phone-group-numbers {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-top: 1px;
}

.phone-group-numbers a {
    display: block;

    color: #68737c;
    text-decoration: none;

    font-size: 14px;
    line-height: 1.55;
}

.phone-group-numbers a:hover {
    color: #0b6b9c;
}

  .contact-cta {
      position: relative;
      max-width: 1560px;
      margin: 0px auto 70px;
      padding: 42px 55px;
      background: #f4f9fb;
      border: 1px solid #dceaf0;
      border-radius: 14px;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 35px;
  }

  /* Decorative right circle */

  .contact-cta::before {
      content: "";
      position: absolute;
      width: 230px;
      height: 230px;
      border-radius: 50%;
      background: rgba(11, 107, 156, 0.06);
      right: -75px;
      top: -85px;
  }

  /* Decorative left line */

  .contact-cta::after {
      content: "";
      position: absolute;
      width: 5px;
      height: 75px;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      background: #0b6b9c;
      border-radius: 0 4px 4px 0;
  }

  .contact-cta-content {
      position: relative;
      z-index: 2;
  }

  .contact-cta-label {
      display: inline-block;
      margin-bottom: 8px;
      color: #0b6b9c;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 1.4px;
      text-transform: uppercase;
  }

  .contact-cta h2 {
      margin: 0 0 8px;
      color: #102838;
      font-size: 30px;
      line-height: 1.25;
      font-weight: 700;
  }

  .contact-cta p {
      margin: 0;
      color: #68737c;
      font-size: 14px;
      line-height: 1.7;
  }

  .contact-cta-button {
      position: relative;
      z-index: 2;
      flex-shrink: 0;
  }

  .contact-cta-button a {
      display: inline-flex;
      align-items: center;
      gap: 11px;
      padding: 14px 23px;
      background: #0b6b9c;
      color: #fff;
      text-decoration: none;
      border-radius: 6px;
      font-size: 14px;
      font-weight: 700;
      box-shadow: 0 8px 20px rgba(11,107,156,.18);
      transition: all .25s ease;
  }

  .contact-cta-button a:hover {
      background: #102838;
      transform: translateY(-2px);
      box-shadow: 0 10px 25px rgba(16,40,56,.18);
  }

  .contact-cta-button svg {
      width: 19px;
      height: 19px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
  }

  .contact-cta-phone {
      display: block;
      margin-top: 7px;
      text-align: center;
      color: #7b878e;
      font-size: 11px;
  }


  /* =========================================================
    MOBILE
  ========================================================= */

  @media (max-width: 900px) {

      .contact-cta {
          margin: 55px 20px;
          padding: 35px 35px;
          flex-direction: column;
          align-items: flex-start;
          gap: 25px;
      }

      .contact-cta-button {
          width: 100%;
      }

      .contact-cta-button a {
          justify-content: center;
      }

      .contact-cta-phone {
          text-align: center;
      }
  }


  @media (max-width: 600px) {

      .contact-cta {
          margin: 45px 15px;
          padding: 30px 24px;
          border-radius: 10px;
      }

      .contact-cta::after {
          height: 55px;
      }

      .contact-cta h2 {
          font-size: 24px;
      }

      .contact-cta p {
          font-size: 13px;
      }

      .contact-cta-button a {
          width: 100%;
          box-sizing: border-box;
          padding: 13px 18px;
      }
  }

  /* =========================================================
    CONTACT PAGE - PREMIUM GET IN TOUCH DESIGN
  ========================================================= */

  .contact-style-page {
      background: #fff;
      color: #1d2935;
      font-family: inherit;
  }

  /* =========================================================
    WELCOME
  ========================================================= */

  .contact-welcome {
      padding: 55px 20px 35px;
      text-align: center;
  }

  .contact-welcome small {
      display: block;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.5px;
      color: #0b6b9c;
      margin-bottom: 10px;
      text-transform: uppercase;
  }

  .contact-welcome h1 {
      margin: 0;
      font-size: 42px;
      line-height: 1.2;
      font-weight: 700;
      color: #102838;
  }

  .contact-welcome p {
      margin: 14px auto 0;
      max-width: 680px;
      color: #68737c;
      font-size: 15px;
      line-height: 1.8;
  }


  /* =========================================================
    MAIN
  ========================================================= */

  .contact-main {
      padding: 30px 20px 75px;
  }

  .contact-container {
      max-width: 1560px;
      margin: 0 auto;
  }


  /* =========================================================
    MAIN GRID
  ========================================================= */

  .contact-grid {
      display: grid;
      grid-template-columns: 0.9fr 1.1fr;
      gap: 55px;
      align-items: stretch;
  }


  /* =========================================================
    LEFT CONTACT AREA
  ========================================================= */

  .contact-info {
      position: relative;
      padding: 38px 35px;
      border-radius: 12px;
      background: linear-gradient(
          145deg,
          #f4f9fb 0%,
          #eef5f8 100%
      );
      border: 1px solid #e2ebef;
      overflow: hidden;
  }

  /* Decorative circle */

  .contact-info::after {
      content: "";
      position: absolute;
      width: 210px;
      height: 210px;
      border-radius: 50%;
      background: rgba(11,107,156,.055);
      right: -90px;
      bottom: -90px;
      pointer-events: none;
  }


  /* ---------- Heading ---------- */

  .contact-label {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin-bottom: 12px;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.3px;
      text-transform: uppercase;
      color: #0b6b9c;
  }

  .contact-label::before {
      content: "";
      width: 25px;
      height: 2px;
      background: #0b6b9c;
      display: inline-block;
  }

  .contact-info h2 {
      position: relative;
      z-index: 1;
      margin: 0 0 30px;
      font-size: 34px;
      line-height: 1.2;
      color: #102838;
      font-weight: 700;
  }


  /* =========================================================
    CONTACT CARDS
  ========================================================= */

  .contact-details {
      position: relative;
      z-index: 2;
      display: flex;
      flex-direction: column;
      gap: 14px;
  }

  .contact-card {
      display: flex;
      align-items: flex-start;
      gap: 15px;
      padding: 17px 16px;
      background: #fff;
      border: 1px solid #e2eaee;
      border-radius: 8px;
      transition: all .25s ease;
  }

  .contact-card:hover {
      transform: translateY(-3px);
      border-color: #c7dce5;
      box-shadow: 0 8px 22px rgba(16,40,56,.08);
  }


  /* ---------- ICON ---------- */

  .contact-card-icon {
      flex: 0 0 43px;
      width: 43px;
      height: 43px;
      border-radius: 7px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #eaf4f8;
      color: #0b6b9c;
  }

  .contact-card-icon svg {
      width: 21px;
      height: 21px;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
  }


  /* ---------- TEXT ---------- */

  .contact-card-content {
      min-width: 0;
  }

  .contact-card-content strong {
      display: block;
      margin-bottom: 5px;
      font-size: 14px;
      font-weight: 700;
      color: #18303e;
  }

  .contact-card-content p {
      margin: 0;
      color: #68737c;
      font-size: 14px;
      line-height: 1.65;
  }

  .contact-card-content a {
      display: block;
      color: #68737c;
      text-decoration: none;
      font-size: 14px;
      line-height: 1.75;
      transition: color .2s ease;
  }

  .contact-card-content a:hover {
      color: #0b6b9c;
  }


  /* =========================================================
    FORM BOX
  ========================================================= */

  .contact-form-box {
      background: #fff;
      padding: 38px 40px;
      border-radius: 12px;
      border: 1px solid #e3e9ec;
      box-shadow: 0 12px 35px rgba(16,40,56,.07);
  }

  .contact-form-title {
      margin: 0 0 7px;
      font-size: 30px;
      line-height: 1.25;
      color: #102838;
      font-weight: 700;
  }

  .contact-form-subtitle {
      margin: 0 0 28px;
      color: #78838b;
      font-size: 14px;
      line-height: 1.7;
  }

  .contact-form {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 18px;
  }

  .contact-field {
      display: flex;
      flex-direction: column;
  }

  .contact-field.full {
      grid-column: 1 / -1;
  }

  .contact-field label {
      margin-bottom: 8px;
      font-size: 13px;
      font-weight: 700;
      color: #334653;
  }

  .contact-field input,
  .contact-field textarea {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #dce3e7;
      background: #fafcfd;
      border-radius: 6px;
      padding: 13px 14px;
      font-family: inherit;
      font-size: 14px;
      color: #253744;
      outline: none;
      transition: all .2s ease;
  }

  .contact-field input {
      height: 48px;
  }

  .contact-field textarea {
      min-height: 125px;
      resize: vertical;
  }

  .contact-field input::placeholder,
  .contact-field textarea::placeholder {
      color: #a1aab0;
  }

  .contact-field input:focus,
  .contact-field textarea:focus {
      background: #fff;
      border-color: #0b6b9c;
      box-shadow: 0 0 0 3px rgba(11,107,156,.08);
  }


  /* =========================================================
    SUBMIT
  ========================================================= */

  .contact-submit {
      grid-column: 1 / -1;
      margin-top: 5px;
  }

  .contact-submit button {
      border: 0;
      background: #0b6b9c;
      color: #fff;
      padding: 14px 31px;
      font-family: inherit;
      font-size: 14px;
      font-weight: 700;
      cursor: pointer;
      border-radius: 5px;
      transition: all .25s ease;
  }

  .contact-submit button:hover {
      background: #102838;
      transform: translateY(-1px);
      box-shadow: 0 7px 18px rgba(16,40,56,.15);
  }


  /* =========================================================
    MAP
  ========================================================= */

  .contact-map-section {
      margin-top: 70px;
  }

  .contact-section-heading {
      text-align: center;
      margin-bottom: 25px;
  }

  .contact-section-heading small {
      display: block;
      color: #0b6b9c;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.3px;
      text-transform: uppercase;
      margin-bottom: 8px;
  }

  .contact-section-heading h2 {
      margin: 0;
      font-size: 31px;
      color: #102838;
  }

  .contact-map {
      width: 100%;
      height: 420px;
      border: 0;
      display: block;
      border-radius: 8px;
  }


 

  @media (max-width: 900px) {

      .contact-grid {
          grid-template-columns: 1fr;
          gap: 30px;
      }

      .contact-info {
          padding: 32px 28px;
      }

      .contact-form-box {
          padding: 32px;
      }

      .contact-welcome h1 {
          font-size: 35px;
      }
  }


  /* =========================================================
    MOBILE
  ========================================================= */

  @media (max-width: 600px) {

      .contact-welcome {
          padding: 38px 18px 25px;
      }

      .contact-welcome h1 {
          font-size: 29px;
      }

      .contact-welcome p {
          font-size: 14px;
      }

      .contact-main {
          padding: 15px 15px 50px;
      }

      .contact-info {
          padding: 28px 18px;
          border-radius: 9px;
      }

      .contact-info h2 {
          font-size: 27px;
          margin-bottom: 23px;
      }

      .contact-card {
          padding: 14px 12px;
          gap: 12px;
      }

      .contact-card-icon {
          flex-basis: 39px;
          width: 39px;
          height: 39px;
      }

      .contact-card-content p,
      .contact-card-content a {
          font-size: 13px;
      }

      .contact-form-box {
          padding: 25px 18px;
          border-radius: 9px;
      }

      .contact-form-title {
          font-size: 26px;
      }

      .contact-form {
          grid-template-columns: 1fr;
      }

      .contact-field.full,
      .contact-submit {
          grid-column: auto;
      }

      .contact-map-section {
          margin-top: 50px;
      }

      .contact-map {
          height: 320px;
          border-radius: 6px;
      }

      .contact-section-heading h2 {
          font-size: 27px;
      }

      .contact-cta {
          margin-top: 45px;
          padding: 38px 20px;
      }

      .contact-cta h2 {
          font-size: 25px;
      }
  }
  /* =========================================================
    BREADCRUMB
  ========================================================= */

  .contact-breadcrumb {
      background: #f7f9fa;
      border-bottom: 1px solid #e8edef;
      padding: 14px 20px;
  }

  .contact-breadcrumb .contact-container {
      max-width: 1180px;
      margin: 0 auto;
      display: flex;
      align-items: center;
      gap: 9px;
      font-size: 13px;
  }

  .contact-breadcrumb a {
      color: #0b6b9c;
      text-decoration: none;
      font-weight: 600;
  }

  .contact-breadcrumb a:hover {
      color: #102838;
  }

  .contact-breadcrumb span {
      color: #8a959c;
  }

  .contact-breadcrumb span:last-child {
      color: #59666e;
      font-weight: 500;
  }

  @media (max-width: 600px) {

      .contact-breadcrumb {
          padding: 12px 15px;
      }

      .contact-breadcrumb .contact-container {
          font-size: 12px;
          gap: 7px;
      }
  }
  /* =========================================================
    BREADCRUMB
  ========================================================= */

  .contact-breadcrumb {
      background: #f7f9fa;
      border-bottom: 1px solid #e8edef;
      padding: 14px 20px;
  }

  .contact-breadcrumb .contact-container {
      max-width: 1180px;
      margin: 0 auto;

      display: flex !important;
      flex-direction: row !important;
      align-items: center !important;
      justify-content: flex-start !important;

      gap: 8px;
      font-size: 13px;
      line-height: 20px;
  }

  .contact-breadcrumb a {
      display: inline-block !important;
      color: #0b6b9c;
      text-decoration: none;
      font-weight: 600;
      margin: 0 !important;
      padding: 0 !important;
  }

  .contact-breadcrumb span {
      display: inline-block !important;
      margin: 0 !important;
      padding: 0 !important;
      line-height: 20px;
  }

  .contact-breadcrumb span:last-child {
      color: #59666e;
      font-weight: 500;
  }

  @media (max-width: 600px) {

      .contact-breadcrumb {
          padding: 12px 15px;
      }

      .contact-breadcrumb .contact-container {
          display: flex !important;
          flex-direction: row !important;
          align-items: center !important;
          gap: 7px;
          font-size: 12px;
      }
  }