/* ==========================================================================
   ЧАСТЬ 1: СТИЛИ СТРАНИЦЫ "ГДЕ КУПИТЬ" (КАРТА ПАРТНЁРОВ)
   ========================================================================== */

.wher_to_buy_page_over_map {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-top: 1px solid #E3E3E3;
  padding: 46px 0 0 0;
}

.wher_to_buy_page_over_map_left_felx {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 37px;
     -moz-column-gap: 37px;
          column-gap: 37px;
}

.wher_to_buy_page_under_map {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 97px;
     -moz-column-gap: 97px;
          column-gap: 97px;
  padding: 34px 0 32px 0;
}

.wher_to_buy_page_under_map_each {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  max-width: 346px;
  width: 100%;
  -webkit-column-gap: 27px;
     -moz-column-gap: 27px;
          column-gap: 27px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.wher_to_buy_page_under_map_each_logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 74px;
  height: 74px;
  padding: 0 11px;
  border: 1px solid #979797;
}

.wher_to_buy_page_under_map_each p {
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.6000000238418579px;
  text-align: left;
}

.addreses_all {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 32px;
  border-top: 1px solid #E3E3E3;
  padding: 31px 0 53px 0;
}

.addreses_list {
  padding: 0 35px;
}

.addreses_list_top_bottom {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 31px;
     -moz-column-gap: 31px;
          column-gap: 31px;
}

.addreses_list_top_bottom_each {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 390px;
  width: 100%;
  border-left: 1px solid #E3E3E3;
}

.addreses_list_top_bottom_each:hover {
  -webkit-box-shadow: 0px 7px 23px 0px #2038592B;
          box-shadow: 0px 7px 23px 0px #2038592B;
  -webkit-transition: 300ms ease-in-out;
  -o-transition: 300ms ease-in-out;
  transition: 300ms ease-in-out;
}

.addreses_list_top_bottom_each_top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border-bottom: 1px solid #E3E3E3;
}

.addreses_list_top_bottom_each_top_logo_part p {
  font-family: "Gothman_Bold";
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: 14px;
  letter-spacing: 1.5px;
  text-align: left;
  margin-left: 8px;
  margin-right: 5px;
  -webkit-transition: all 300ms ease-out;
  -o-transition: all 300ms ease-out;
  transition: all 300ms ease-out;
}

.description_description p {
  font-family: "Gothman_Bold";
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 23px;
}

.addreses_list_top_bottom_each_top_inner {
  padding: 39px 50px 15.5px 46px;
}

.addreses_list_top_bottom_each_top_logo_part {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 25px;
}

.adress_adress address {
  font-family: "Gothman_Bold";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: 0px;
  text-align: left;
  margin-bottom: 20px;
}

.phone_phone a {
  font-family: "Gothman_Bold";
  font-style: normal;
  font-weight: bold;
  font-size: 12px;
  line-height: 14px;
  color: #2E2E2E;
}

.phone_phone a:hover {
  color: #9CE7D9;
}

.addreses_list_top_bottom_each_bottom_inner {
  padding: 28.5px 50px 42px 46px;
}

.mail_mail {
  font-style: normal;
  font-weight: normal;
  font-size: 14px;
  color: #4785ff;
  margin-top: 5px;
}

.addreses_list_top_bottom_each_top_logo_part:hover p {
  color: turquoise;
  -webkit-transition: all 300ms ease-in;
  -o-transition: all 300ms ease-in;
  transition: all 300ms ease-in;
}

button {
  margin: 10px;
}

#shops li:hover {
  cursor: pointer;
}

#cityShop {
  margin: 0px;
  position: relative;
}

#map {
  width: 100%;
  height: 500px;
  margin: 30px 0;
  overflow: hidden;
}

.where_info_icon {
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
  margin-bottom: 15px;
}

.where_info_icon .icon_block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.where_info_icon .where_info_item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.where_info_icon .where_info_item img {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  max-width: 74px;
  min-width: 74px;
}

.where_info_icon .where_info_item span {
  font-family: 'TrajanPro3_400';
  text-transform: none;
  font-size: 18px;
  color: #363636;
  line-height: 24px;
  letter-spacing: 0.6px;
}

#cityShop ul li {
  width: 33%;
  border-left: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin: 15px 0;
  float: left;
  height: 250px;
}

#cityShop ul {
  list-style: none;
  display: inline-block;
  width: 100%;
}

#cityShop .map_name {
  font-family: "Gothman_Medium";
  font-size: 20px;
  line-height: 23px;
  padding: 20px 50px;
  margin-right: 30px;
  height: 100px;
}

#cityShop ul li:hover {
  background: -webkit-gradient(linear, right top, left top, from(#EAD4FF), to(#D9F3F0));
  background: -webkit-linear-gradient(right, #EAD4FF, #D9F3F0);
  background: -o-linear-gradient(right, #EAD4FF, #D9F3F0);
  background: linear-gradient(to left, #EAD4FF, #D9F3F0);
}

#cityShop .map_icon {
  margin: 20px 0px 0px 50px;
}

#cityShop .map_address {
  margin: 0 0px 0px 50px;
}

#cityShop .map_phone {
  margin: 0px 0px 0px 50px;
}

#cityShop .map_link {
  margin: 0px 0px 30px 50px;
  text-decoration: underline;
  display: block;
}

#cityShop select {
  padding: 10px 0;
  background: #fff;
  border: none;
  border-bottom-color: currentcolor;
  border-bottom-style: none;
  border-bottom-width: medium;
  border-bottom: 2px solid;
  text-transform: uppercase;
  font-family: "Gothman_Medium";
}

.city_block .map_icon img {
  width: 30px;
}

.delivery_desc {
  width: 85%;
}

.map_block {
  margin: 15px 10px;
}

.map_block li {
  list-style: none;
}

.map_block .map_name {
  font-size: 20px;
  font-family: "Gothman_Medium";
  width: 280px;
  line-height: 24px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.map_block .map_address {
  margin-bottom: 15px;
}

/* Стили для карты окситерапии с префиксом _oxy */
#cityShop_oxy { margin: 0px; position: relative; }
#map_oxy { width: 100%; height: 500px; margin: 30px 0; overflow: hidden; }
#cityShop_oxy ul { list-style: none; display: inline-block; width: 100%; }
#cityShop_oxy ul li { width: 33%; border-left: 1px solid #ddd; border-bottom: 1px solid #ddd; margin: 15px 0; float: left; height: 250px; padding: 15px; }
#cityShop_oxy ul li:hover { background: -webkit-gradient(linear, right top, left top, from(#EAD4FF), to(#D9F3F0)); background: -webkit-linear-gradient(right, #EAD4FF, #D9F3F0); background: -o-linear-gradient(right, #EAD4FF, #D9F3F0); background: linear-gradient(to left, #EAD4FF, #D9F3F0); }
#cityShop_oxy .map_name { font-family: "Gothman_Medium"; font-size: 20px; line-height: 23px; padding: 20px 50px; margin-right: 30px; height: auto; }
#cityShop_oxy .map_icon { margin: 20px 0px 0px 50px; }
#cityShop_oxy .map_address { margin: 0 0px 0px 50px; }
#cityShop_oxy .map_phone { margin: 0px 0px 0px 50px; }
#cityShop_oxy .map_link { margin: 0px 0px 30px 50px; text-decoration: underline; display: block; }
#cityShop_oxy select { padding: 10px 0; background: #fff; border: none; border-bottom: 2px solid; text-transform: uppercase; font-family: "Gothman_Medium"; }

/* Медиа-запросы для страницы "Где купить" */
@media (max-width: 1023px) {
  .where_info_icon {
    border-bottom: 1px solid #ddd;
    margin-bottom: 15px;
    padding: 0 20px 30px 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .where_info_icon .icon_block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    row-gap: 20px;
  }
  .where_info_icon .where_info_item {
    width: 100%;
  }
  .where_info_icon .where_info_item span {
    font-size: 14px;
  }
  #cityShop ul {
    list-style: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 20px 0 20px;
  }
  #cityShop ul li {
    width: 100%;
    border-left: 0px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin: 15px 0;
    float: none;
    padding: 0 15px;
  }
  #cityShop .map_name {
    font-family: "Gothman_Medium";
    font-size: 20px;
    line-height: 23px;
    padding: 0;
    border-bottom: 0px solid #ddd;
    margin-right: 0px;
    height: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  #cityShop .map_address {
    margin: 15px 0px 0px 0px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  #cityShop .map_phone {
    margin: 0px 0px 0px 0px;
  }
  #cityShop .map_link {
    margin: 0px 0px 0px 0px;
  }
  #cityShop .map_icon {
    margin: 15px 0px 0px 0px;
  }

  /* Адаптив для карты _oxy */
  #cityShop_oxy ul { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 20px 0 20px; }
  #cityShop_oxy ul li { width: 100%; border-left: 0px solid #ddd; border-bottom: 1px solid #ddd; margin: 15px 0; float: none; padding: 20px 15px; height: auto; }
  #cityShop_oxy .map_name { padding: 0; border-bottom: 0px solid #ddd; margin-right: 0px; height: auto; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; }
  #cityShop_oxy .map_address { margin: 15px 0px 0px 0px; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; }
  #cityShop_oxy .map_phone { margin: 0px 0px 0px 0px; }
  #cityShop_oxy .map_link { margin: 0px 0px 0px 0px; }
  #cityShop_oxy .map_icon { margin: 15px 0px 0px 0px; }
}


/* ==========================================================================
   ЧАСТЬ 2: СТИЛИ МЕДИЦИНСКОЙ СТРАНИЦЫ (БЛОКИ, ПРЕИМУЩЕСТВА, EMAIL)
   ========================================================================== */

.medical .wrapper, .new_partner_page_section .wrapper {   
    margin: 30px auto;
    padding: 0 10px;
}

.product_oxy {
    display: grid;
    grid-template-columns: 2fr 3fr;
}

.product_oxy_block:nth-child(2) {
    padding: 10px 30px;
}

.product_oxy_block img {
    margin-top:16px;
    width: 100%;
}

.medical .wrapper h1 {
font-family: "Gothman_Medium";
  font-size: 35px;
  line-height: 42px;
  letter-spacing: 0.276316px;
  text-transform: uppercase;
  color: #020202;
  margin: 0 0 8px 0;
}

.medical .wrapper ul {
    margin-left: 24px;
}

.product_effect_list .product_effect_list_each ul {
  display: flex;
  width: 100%;
  flex-direction: row;
  list-style: none;
  column-gap: 33px;
  row-gap: 20px;
  flex-wrap: wrap;
}

.product_effect_list .product_effect_list_each ul li {
  display: flex;
  width: 100%;
  max-width: 340px;
  flex-direction: row;
  column-gap: 8px;
  align-items: flex-start;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.466667px;
  color: #020202;
}

.product_effect_list .product_effect_list_each ul li::before {
  content: "";
  display: block;
  position: relative;
  top: 6px;
  width: 100%;
  max-width: 5px;
  min-width: 5px;
  height: 5px;
  background: url("/theme_files_new/img/dot_black.png") 0 0 no-repeat;
}

.product_effects {
    margin: 40px 0;
}

.product_effects h3 {
   font-family: "Gothman_Medium";
  font-size: 25px;
  line-height: 30px;
  letter-spacing: 0.276316px;
  text-transform: uppercase;
  color: #020202;
  margin: 0 0 20px 0;
}

.blocks.tripple {   
    margin: 30px auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 30px;
}

.blocks.tripple .block {
    border-width: 4px;
    border-style: solid;
    border-color: rgba(164, 148, 238, .4);
    border-radius: 20px;
    padding: 20px;
    font-size: 14px;
}

h2 {
    font-size: 30px;
  line-height: 20px;
  letter-spacing: 0.466667px;
  color: #000;
  font-family: "Gothman_Light";
  margin: 0 0 40px 0;
  padding: 0;
}
.product_oxy h2 {
    font-size: 14px;
    color:#737B7D;
    margin: 10px 0 30px 0;
}

.blocks.tripple .block h2 {
    font-size: 22px;
    line-height: 22px;
}

.product_oxy_block p {
    margin-bottom: 20px;
}

.product_images {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 30px;
    align-items: center;
}

.product_images img {
    width: 100%;
}

.product_effects {
    background: linear-gradient(180deg, #EBE4FF 0%, #F9F3FF 100%);
    padding: 30px 20px;
    margin: 40px -10px;
}

.medical.preim {
    width: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(#EBE4FF), to(#F9F3FF)), #EBE4FF;
    background: -webkit-linear-gradient(top, #EBE4FF 0%, #F9F3FF 100%), #EBE4FF;
    background: -o-linear-gradient(top, #EBE4FF 0%, #F9F3FF 100%), #EBE4FF;
    background: linear-gradient(180deg, #EBE4FF 0%, #F9F3FF 100%), #EBE4FF;
    padding: 20px 10px;
    margin: 30px auto;
}
@property --angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 222.71deg;
}

.medical.mail .sendemail {
    background:
        linear-gradient(var(--angle), #93A2FF 0.48%, #FF4492 33.93%, #FFD088 96.31%, #FFD595 96.31%),
        linear-gradient(var(--angle), #CED5FF 0%, #FFCBE1 34.53%, #FFD595 96.31%, #FFD595 96.31%),
        #6D9DEB;
    margin: 30px auto;
    border-radius: 30px;
    color: #fff;
    display: flex;
    padding: 40px;
    transition: --angle 0.8s ease;
}

.medical.mail .sendemail:hover {
    --angle: 402.71deg; /* исходный угол + 180° */
}

/*.medical.mail .sendemail {
    background: linear-gradient(222.71deg, #93A2FF 0.48%, #FF4492 33.93%, #FFD088 96.31%, #FFD595 96.31%), linear-gradient(222.71deg, #CED5FF 0%, #FFCBE1 34.53%, #FFD595 96.31%, #FFD595 96.31%), linear-gradient(0deg, #6D9DEB, #6D9DEB);
    margin: 30px auto;
    border-radius: 30px;
    color: #fff;
    display: flex;
    padding: 40px;
}
.medical.mail .sendemail:hover {

}*/

.medical.mail .sendemail a, 
.medical.mail .sendemail h3 {
    color: #fff;
    font-size: 30px;
}

.medical.mail .sendemail h3 {
    margin-top: 32px;
}

.medical.mail a:hover {
    text-decoration: none;
}

.medical.mail .sendemail .iconmail {
    display: block;
    padding: 10px;
    margin: 0 auto;
}

/* Медиа-запросы для медицинской страницы */
@media (max-width: 1023px) {
    .product_oxy {
        grid-template-columns: 1fr;
    }
    .product_images {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap:20px;
    }
    .product_effect_list .product_effect_list_each ul {
        flex-direction: row !important;
    }
    .product_effect_list .product_effect_list_each ul li {
    max-width: 300px;
    }
    .product_oxy_block img {
        max-width: 600px;
        margin: 10px auto;
        display:block;
    }
    .product_effects {
        padding: 10px 30px;
    }
}

@media (max-width: 768px) {
    .blocks.tripple {
        grid-template-columns: 1fr;
    }
    .medical.mail .sendemail {
        flex-wrap: wrap;
    }
    .medical.mail .sendemail h3 {
        text-align: center;
        margin-top: 20px;
    }
    .product_images {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }

    .product_images img {
        max-width: 600px;
        margin: 10px auto;
        display:block;
    }
    .product_oxy_block:nth-child(2) {
    padding: 10px;
    }
    .product_effects {
    padding: 30px 20px;
    }
}