

/* Start:/contacts/style.css?17592341424808*/
.contacts-map {
      width: 100%;
      padding: 50px 0 170px 0;
    }

    .contacts-map__flex {
      display: flex;
      gap: 32px;
      align-items: stretch; /* make children equal height */
      align-content: stretch;
      width: 100%;
    }

    .map {
      width: 36%;
      position: relative;
      display: flex;
      align-items: stretch;
    }
    .map svg {
      /* default inline svg behaviour kept; we'll explicitly size the svg element via CSS selector when wrapped */
      display: block;
    }

    /* Fixed viewport for map image */
    .map {
      position: relative;
    }
    .map__viewport {
      width: 100%;
      height: 100%;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
    }

   
    .map__inner {
      transition: transform 0.45s cubic-bezier(.22,.9,.15,1);
      will-change: transform;
      transform-origin: top left;
      /* Ensure svg inside will scale to natural size; user can change as needed */
      display: inline-block;
      position: relative;
    }
    /* Force the actual svg to desired card dimensions */
    .map__inner svg {
      width: 411px !important;
      height: 237px !important;
      max-width: none !important;
      max-height: none !important;
      display: block;
    }
    .regions {
      width: 61%;
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    /* New region card style to match mockup */
    .region {
      border-radius: 24px;
      padding: 28px 30px;
      margin: 0;
      cursor: pointer;
      transition: box-shadow 0.25s, transform 0.15s, border 0.15s, background 0.15s;
      background: #ffffff;
      box-shadow: 0 18px 30px rgba(16,24,40,0.08);
      display: block;
      border: 1px solid rgba(0,0,0,0.04);
    }

    .region:hover {
      transform: translateY(-2px);
    }

    /* Make title blue on hover or when active */
    .region:hover .region__title,
    .region.active .region__title {
      color: #0044FF;
    }

    /* Active (selected) card */
    .region.active {
      border: 2px solid #0044FF;
      box-shadow: 0 8px 20px rgba(4,68,255,0.08);
    }

    /* Content layout inside card: title + two columns */
    .region__title {
      font-family: 'GetVoIP Grotesque', sans-serif;
      font-weight: 700;
      font-size: 32px;
      letter-spacing: 0.02em;
      margin-bottom: 8px;
      color: #0b1630;
      transition: color 0.18s ease-in-out;
    }

    .region__cols {
      display: flex;
      gap: 24px;
      align-items: flex-start;
    }

    .region__col {
      flex: 1 1 50%;
      color: #5b6b7b;
      font-size: 14px;
      line-height: 1.6;
    }

    .region__col--right {
      text-align: right;
    }

    .region__contact {
      display: block;
      margin-bottom: 8px;
    }

    svg .highlight {
      fill: #0044FF !important;
    }
    svg path {
      transition: fill 0.3s;
      fill: #DBD5DE;
      stroke: #DBD5DE;
    }
    .contacts-header { width: 100%; margin-bottom: 18px; }
    .contacts-title { font-size: 74px; margin: 0 0 80px 0; font-weight: 800; color: #212121; line-height: 80px; }

    /* Responsive: on small screens stack header, selected region, map and regions vertically */
    @media (max-width: 1200px) {
        .map {
            width: 50%;
        }
        .regions {
            width: 50%;
        }
    }
    @media (max-width: 1024px) {
         .contacts-title { font-size: 48px; margin: 0 0 44px 0; font-weight: 800; color: #212121; line-height: 52px; }
         .contacts-map { padding: 30px 0 110px 0; }
    }
    @media (max-width: 768px) {
        .contacts-title { font-size: 38px; margin: 0 0 40px 0; font-weight: 800; color: #212121; line-height: 49px; }

      .contacts-map__flex {
        display: block; /* stack */
      }
      .contacts-map {
        padding: 0px 0 130px 0;
      }

      .contacts-title {
        margin-top: -40px;
      }
      .map, .regions {
        width: 100% !important;
      }
      .map__viewport {
        height: auto; /* allow map area to size naturally */
        padding: 10px 0;
      }
      .map__inner svg {
        /* keep svg size but allow it to remain centered */
        width: 100% !important;
        height: auto !important;
        max-width: 411px;
      }
      .mobile-selected-region {
        display: block !important;
        margin-bottom: 18px;
      }
      /* make region cards full-width and visually stand out on mobile */
      .regions { gap: 12px; }
      .region { border-radius: 12px; padding: 18px; }
      .region__title { font-size: 20px; margin-bottom: 10px; }
    }
/* End */
/* /contacts/style.css?17592341424808 */
