@media (min-width: 1200px) {
  .locations {
    position: relative;
    background-repeat: no-repeat;
    background-position: right top;
    background-position: calc(100% - ((100vw - 1024px) / 2)) top;
    background-size: auto 503px; } }

@media (min-width: 1850px) {
  .locations {
    background-size: 1153px auto;
    background-position: calc(75% - 0px) -33px;
    background-position: calc(100% - ((100vw - 1664px) / 2)) -3px; } }

.locations .container {
  padding-bottom: 108px; }
  @media (min-width: 1200px) {
    .locations .container {
      display: flex;
      flex-wrap: wrap;
      padding-bottom: 230px; } }
  @media (min-width: 1850px) {
    .locations .container {
      padding-bottom: 270px; } }

.locations .locations-bg-image {
  display: none; }
  @media (min-width: 1200px) {
    .locations .locations-bg-image {
      display: block;
      top: 0;
      position: absolute;
      z-index: -1;
      right: calc((100vw - 1024px) / 2);
      width: auto;
      height: 503px; } }
  @media (min-width: 1850px) {
    .locations .locations-bg-image {
      top: 0;
      position: absolute;
      z-index: -1;
      right: calc((100vw - 1665px) / 2);
      width: 1153px;
      height: auto; } }

.locations_header {
  width: 100%; }
  @media (min-width: 1200px) {
    .locations_header {
      display: flex;
      margin-bottom: 80px; } }
  @media (min-width: 1850px) {
    .locations_header {
      margin-bottom: 100px; } }
  @media (min-width: 1200px) {
    .locations_header_text {
      width: 425px;
      min-width: 425px; } }
  @media (min-width: 1850px) {
    .locations_header_text {
      width: 668px;
      min-width: 668px; } }
  .locations_header_title {
    margin-bottom: 22px; }
    @media (min-width: 1200px) {
      .locations_header_title {
        margin-bottom: 36px; } }
    .locations_header_title,
    .locations_header_title * {
      color: var(--real-black);
      font-family: var(--font-secondary);
      font-style: normal;
      font-weight: 200;
      text-align: left;
      font-size: 35px;
      line-height: 1;
      letter-spacing: 1.75px; }
      @media (min-width: 1200px) {
        .locations_header_title,
        .locations_header_title * {
          font-size: 45px;
          line-height: 1;
          letter-spacing: 2.5px; } }
      @media (min-width: 1850px) {
        .locations_header_title,
        .locations_header_title * {
          font-size: 63px;
          line-height: 1;
          letter-spacing: 3.15px; } }
  .locations_header_description {
    margin-bottom: 30px; }
    @media (min-width: 1200px) {
      .locations_header_description {
        margin-bottom: 0; } }
    .locations_header_description,
    .locations_header_description * {
      color: var(--real-black);
      font-size: 14px;
      line-height: 1.35;
      font-style: normal;
      font-weight: 400;
      text-align: left; }
      @media (min-width: 1200px) {
        .locations_header_description,
        .locations_header_description * {
          font-size: 16px; } }
      @media (min-width: 1850px) {
        .locations_header_description,
        .locations_header_description * {
          font-size: 18px; } }
      .locations_header_description + *,
      .locations_header_description * + * {
        margin-top: 20px; }
        @media (min-width: 1850px) {
          .locations_header_description + *,
          .locations_header_description * + * {
            margin-top: 28px; } }
    .locations_header_description strong {
      font-weight: 600; }
  .locations_header_media {
    position: relative;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: contain;
    height: 203px;
    display: flex;
    flex-direction: column;
    align-items: center; }
    @media (min-width: 1200px) {
      .locations_header_media {
        background: none;
        width: calc(100% - 425px);
        height: auto; } }
    .locations_header_media_text {
      color: var(--real-black);
      font-family: var(--font-secondary);
      font-size: 24px;
      line-height: 1;
      font-style: normal;
      font-weight: 200;
      text-align: center;
      text-transform: uppercase;
      margin: auto auto auto 0; }
      @media (min-width: 1200px) {
        .locations_header_media_text {
          font-size: 25px;
          margin: auto auto 0; } }
      @media (min-width: 1200px) {
        .locations_header_media_text {
          font-size: 35px;
          margin: auto;
          padding-right: 85px; } }
      .locations_header_media_text strong {
        display: block;
        font-size: 35px;
        line-height: 1;
        font-weight: 400;
        background: linear-gradient(90deg, #E2231A 8.26%, #861E35 100.15%);
        background-clip: text;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
        @media (min-width: 1200px) {
          .locations_header_media_text strong {
            font-size: 82px; } }
        @media (min-width: 1200px) {
          .locations_header_media_text strong {
            font-size: 92px; } }
    .locations_header_media .locations_header_media-bg-image {
      position: absolute;
      top: 0;
      left: 50%;
      z-index: -1;
      height: 203px;
      transform: translateX(-50%);
      object-fit: contain; }
      @media (min-width: 1200px) {
        .locations_header_media .locations_header_media-bg-image {
          display: none; } }

.locations_map {
  width: 100%;
  position: relative;
  margin-bottom: 29px; }
  @media (min-width: 1200px) {
    .locations_map {
      margin-top: 20px;
      margin-bottom: 75px; } }
  .locations_map_bg {
    position: relative;
    z-index: 0; }
  .locations_map_image {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1; }
    .locations_map_image.active {
      display: block; }

@media (min-width: 1200px) {
  .locations_content {
    display: flex; } }

@media (min-width: 1200px) {
  .locations_accordions {
    width: 484px;
    min-width: 484px;
    margin-right: 77px;
    order: -1; } }

@media (min-width: 1850px) {
  .locations_accordions {
    width: 598px;
    min-width: 598px;
    margin-right: 139px; } }

.locations_accordion {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--border-line);
  margin-bottom: 20px; }
  .locations_accordion_title {
    padding-top: 19px;
    padding-bottom: 19px;
    position: relative;
    z-index: 1; }
    @media (min-width: 1200px) {
      .locations_accordion_title {
        background-image: url("../../assets/images/ico-locations-accordion.svg");
        background-position: calc(100% - 6px) center;
        background-repeat: no-repeat;
        background-size: 51px auto;
        cursor: pointer;
        padding-top: 11px;
        padding-bottom: 11px; } }
    @media (min-width: 1850px) {
      .locations_accordion_title {
        padding-top: 20px;
        padding-bottom: 20px;
        background-size: 64px auto; } }
    .locations_accordion_title,
    .locations_accordion_title * {
      color: var(--black);
      font-family: var(--font-secondary);
      font-size: 26px;
      line-height: 1;
      font-style: normal;
      font-weight: 200;
      text-align: left;
      letter-spacing: 0.26px; }
      @media (min-width: 1200px) {
        .locations_accordion_title,
        .locations_accordion_title * {
          font-size: 30px;
          line-height: 1;
          letter-spacing: 0.3px;
          font-family: var(--font-primary);
          font-weight: 100400; } }
      @media (min-width: 1850px) {
        .locations_accordion_title,
        .locations_accordion_title * {
          font-size: 40px;
          line-height: 1;
          letter-spacing: 0.4px; } }
  .locations_accordion_list {
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
    list-style: none;
    columns: 2; }
    .locations_accordion_list_item {
      margin-bottom: 9px; }
      .locations_accordion_list_item,
      .locations_accordion_list_item * {
        color: var(--black-lighter);
        font-size: 14px;
        line-height: 1.5;
        font-style: normal;
        font-weight: 400;
        text-align: left;
        text-decoration: none; }
        @media (min-width: 1200px) {
          .locations_accordion_list_item,
          .locations_accordion_list_item * {
            font-size: 16px; } }
        @media (min-width: 1850px) {
          .locations_accordion_list_item,
          .locations_accordion_list_item * {
            font-size: 20px; } }
        .locations_accordion_list_item.active, .locations_accordion_list_item.active *,
        .locations_accordion_list_item *.active,
        .locations_accordion_list_item *.active * {
          color: var(--red);
          font-weight: 700; }
  @media (min-width: 1200px) {
    .locations_accordion.active .locations_accordion_title {
      background-image: url("../../assets/images/ico-locations-accordion-active.svg");
      margin-bottom: 20px; } }
  .locations_accordion.active .locations_accordion_list {
    max-height: 10000px;
    transition: max-height 1s ease-in-out; }
