.elementor-320 .elementor-element.elementor-element-3a3df8c{--display:flex;--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-320 .elementor-element.elementor-element-3701002{width:100%;max-width:100%;padding:30px 0px 0px 0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-320 .elementor-element.elementor-element-e096422{padding:0px 0px 0px 0px;text-align:center;}.elementor-320 .elementor-element.elementor-element-e096422 .elementor-heading-title{color:var( --e-global-color-b7dd605 );}.elementor-320 .elementor-element.elementor-element-0122c8d{--display:flex;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-320 .elementor-element.elementor-element-3a3df8c{--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-320 .elementor-element.elementor-element-3701002{padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-320 .elementor-element.elementor-element-3a3df8c{--margin-top:055px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-e548bb1 */.ems-sites-page {
    --ems-blue: #0198cf;
    --ems-blue-dark: #016b91;
    --ems-navy: #123545;
    --ems-text: #2f3b43;
    --ems-muted: #5f6f78;
    --ems-soft-blue: #eef8fc;
    --ems-border: #dcebf1;
    --ems-white: #ffffff;

    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: inherit;
    color: var(--ems-text);
    line-height: 1.7;
  }

  .ems-sites-page * {
    box-sizing: border-box;
  }

  .ems-sites-page p {
    margin-top: 0;
    color: var(--ems-text);
  }

  .ems-sites-page h2,
  .ems-sites-page h3 {
    color: var(--ems-navy);
    line-height: 1.25;
    margin-top: 0;
    font-weight: 700;
  }

  .ems-sites-intro {
    text-align: center;
    margin-bottom: 50px;
  }

  .ems-sites-intro p {
    font-size: 18px;
    max-width: 900px;
    margin: 0 auto 18px;
  }

  .ems-sites-section {
    margin-bottom: 50px;
  }

  .ems-sites-section h2 {
    font-size: clamp(28px, 3vw, 36px);
    margin-bottom: 18px;
    text-align: center;
  }

  .ems-sites-section > p {
    font-size: 17px;
    text-align: center;
    max-width: 900px;
    margin: 0 auto 25px;
  }

  .ems-location-links {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin-top: 30px;
  }

  .ems-location-pill {
    display: inline-block;
    background: var(--ems-blue);
    color: var(--ems-white);
    border: 2px solid var(--ems-blue);
    border-radius: 999px;
    padding: 11px 22px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.2s ease;
  }

  .ems-location-links a {
    text-decoration: none;
  }

  .ems-location-links a:hover .ems-location-pill,
  .ems-location-links a:focus .ems-location-pill {
    background: var(--ems-blue-dark);
    border-color: var(--ems-blue-dark);
    color: var(--ems-white);
    transform: translateY(-1px);
  }

  .ems-sites-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 28px;
    margin-bottom: 60px;
  }

  .ems-site-card {
    background: var(--ems-white);
    border: 1px solid var(--ems-border);
    border-radius: 18px;
    padding: 30px;
    box-shadow: 0 10px 28px rgba(1, 107, 145, 0.08);
    border-top: 5px solid var(--ems-blue);
  }

  .ems-site-card h3 {
    font-size: 24px;
    margin-bottom: 10px;
  }

  .ems-site-card .ems-site-location {
    color: var(--ems-blue-dark);
    font-weight: 700;
    margin-bottom: 15px;
  }

  .ems-site-card ul {
    padding-left: 20px;
    margin: 15px 0 0;
  }

  .ems-site-card li {
    margin-bottom: 7px;
  }

  .ems-site-card li::marker {
    color: var(--ems-blue);
  }

  .ems-highlight-panel {
    background: var(--ems-soft-blue);
    border: 1px solid var(--ems-border);
    border-radius: 22px;
    padding: 40px 30px;
    margin-bottom: 50px;
  }

  .ems-highlight-panel h2 {
    font-size: clamp(28px, 3vw, 36px);
    margin-bottom: 25px;
    text-align: center;
  }

  .ems-benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 25px;
  }

  .ems-benefit-item {
    background: var(--ems-white);
    border-radius: 14px;
    padding: 22px;
    border: 1px solid var(--ems-border);
  }

  .ems-benefit-item h3 {
    font-size: 21px;
    margin-bottom: 10px;
  }

  .ems-benefit-item p {
    margin-bottom: 0;
  }

  .ems-cta-panel {
    background: linear-gradient(135deg, var(--ems-blue) 0%, var(--ems-blue-dark) 100%);
    color: var(--ems-white);
    border-radius: 22px;
    padding: 45px 30px;
    text-align: center;
  }

  .ems-cta-panel h2,
  .ems-cta-panel p {
    color: var(--ems-white);
  }

  .ems-cta-panel h2 {
    font-size: clamp(30px, 3vw, 38px);
    margin-bottom: 20px;
  }

  .ems-cta-panel p {
    font-size: 18px;
    max-width: 850px;
    margin: 0 auto 22px;
  }

  .ems-button-row {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 28px;
  }

  .ems-btn {
    display: inline-block;
    padding: 14px 28px;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 700;
    line-height: 1.2;
    transition: all 0.2s ease;
  }

  .ems-btn-primary {
    background: var(--ems-white);
    color: var(--ems-blue-dark);
    border: 2px solid var(--ems-white);
  }

  .ems-btn-primary:hover,
  .ems-btn-primary:focus {
    background: var(--ems-soft-blue);
    color: var(--ems-blue-dark);
  }

  .ems-btn-secondary {
    background: transparent;
    color: var(--ems-white);
    border: 2px solid var(--ems-white);
  }

  .ems-btn-secondary:hover,
  .ems-btn-secondary:focus {
    background: var(--ems-white);
    color: var(--ems-blue-dark);
  }

  @media (max-width: 700px) {
    .ems-sites-page {
      padding: 30px 16px;
    }

    .ems-site-card,
    .ems-highlight-panel,
    .ems-cta-panel {
      padding: 26px 20px;
    }

    .ems-sites-grid {
      grid-template-columns: 1fr;
    }

    .ems-btn {
      width: 100%;
      max-width: 320px;
    }
  }/* End custom CSS */