body {
  font-family: 'PT Sans', sans-serif; }

textarea {
  height: 200px; }

@media (max-width: 768px) {
  .h1, h1 {
    font-size: 1.5rem; } }

.advantages {
  margin-bottom: 30px; }
  .advantages .media {
    border-left: 1px solid #ed1b24; }
    .advantages .media:first-child {
      border-left: none; }
    @media only screen and (max-width: 576px) {
      .advantages .media {
        border-left: none;
        margin-bottom: 1rem; } }
    .advantages .media img {
      max-width: 60px; }
    .advantages .media .caption {
      line-height: 1.2; }

.alert-block {
  margin-bottom: 30px; }
  .alert-block .alert-era {
    background-color: #FFDB00; }

.carousel {
  margin-bottom: 30px;
  overflow: hidden; }
  .carousel .carousel-item {
    height: 460px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover; }
    @media only screen and (max-width: 768px) {
      .carousel .carousel-item {
        height: 385px; } }
    @media only screen and (max-width: 576px) {
      .carousel .carousel-item {
        height: 192px; } }
  .carousel .carousel-indicators li {
    background-color: rgba(237, 27, 36, 0.5); }
  .carousel .carousel-indicators .active {
    background-color: #ed1b24; }
  .carousel .carousel-control-next-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ed1b24' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"); }
  .carousel .carousel-control-prev-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ed1b24' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"); }

.cart-link {
  display: inline-block;
  background: #ed1b24;
  color: #fff;
  padding: 10px;
  margin-bottom: 0.5rem;
  -webkit-border-radius: 10px 0 0 10px;
  -moz-border-radius: 10px 0 0 10px;
  -ms-border-radius: 10px 0 0 10px;
  border-radius: 10px 0 0 10px;
  -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3); }
  .cart-link:hover {
    color: #fff;
    text-decoration: none; }
  .cart-link .header {
    display: block;
    text-align: right;
    line-height: 1; }
    .cart-link .header .caption {
      font-size: 20px;
      font-weight: 700;
      text-decoration: underline;
      margin-left: 0.5rem; }
  .cart-link .info span {
    font-weight: 700; }
  .cart-link .info i {
    font-size: 13px; }

.content img {
  max-width: 100%; }

@media only screen and (max-width: 768px) {
  .content iframe {
    width: 100%;
    height: 49.4vw; } }

div.cookie-disclaimer {
  position: fixed;
  display: flex;
  justify-content: center;
  left: 0;
  right: 0;
  bottom: 2rem;
  z-index: 333; }
  div.cookie-disclaimer:not(.shown) {
    display: none; }
  div.cookie-disclaimer div.body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 1.5rem;
    border: 1px solid white;
    border-radius: 2.5rem;
    background-color: #141414;
    max-width: 1200px;
    padding: 1rem 1rem 1rem 1.5rem; }
    @media (max-width: 768px) {
      div.cookie-disclaimer div.body {
        width: 98vw;
        flex-direction: column;
        row-gap: 1rem; } }
  div.cookie-disclaimer div.disclaimer {
    font-size: 0.875rem;
    color: white; }
    div.cookie-disclaimer div.disclaimer p {
      margin-bottom: 0; }
    div.cookie-disclaimer div.disclaimer a {
      color: #ed1b24; }
  div.cookie-disclaimer a.close {
    display: block;
    justify-content: center;
    align-items: center;
    background-color: #ed1b24;
    border-radius: 14px;
    color: white;
    font-size: 0.875rem;
    padding: 0.5rem 1.25rem;
    flex-shrink: 0;
    text-decoration: none;
    font-weight: 400 !important;
    opacity: 1 !important; }

.dialog .address,
.dialog .error,
.dialog .success,
.dialog i {
  display: none; }

.dialog.has-errors .error, .dialog.was-failed .error, .dialog.was-successed .success, .dialog.has-all-error .all {
  display: block !important; }

.dialog.in-sending i {
  display: inline-block !important; }

.footer {
  margin-top: 30px;
  padding: 30px 0;
  background: #ed1b24;
  color: #fff; }
  .footer a, .footer a:hover {
    color: #fff; }
  .footer .name {
    font-size: 36px;
    line-height: 1; }
  .footer .phone {
    font-weight: 700;
    font-size: 36px;
    line-height: 1; }
  @media only screen and (max-width: 768px) {
    .footer .menu {
      margin-top: 1.5rem;
      margin-bottom: 1.5rem; } }
  .footer .menu a {
    font-size: 18px;
    line-height: 1.1;
    text-decoration: underline; }

form .submit {
  height: 38px;
  line-height: 38px; }
  form .submit i {
    display: none;
    margin-left: 0.25em; }

.form-check-input.is-invalid ~ .invalid-feedback {
  display: block; }

.gallery {
  margin-top: 1.5rem; }
  .gallery .photo {
    margin-top: 15px;
    margin-bottom: 15px; }
    .gallery .photo a {
      display: block;
      border: 1px solid #ccc;
      padding: 10px; }
      .gallery .photo a span {
        display: block;
        height: 265px;
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain; }
  .gallery img {
    max-width: 100%; }

@media only screen and (max-width: 768px) {
  .good {
    flex-direction: column; } }

.good .image {
  display: inline-block;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  text-decoration: none;
  margin-right: 1rem; }
  @media only screen and (max-width: 768px) {
    .good .image {
      margin-left: auto;
      margin-right: auto; } }
  .good .image span {
    display: inline-block;
    position: absolute; }
    .good .image span.bg-danger {
      text-align: center;
      color: #fff;
      font-weight: 700;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      border-radius: 50%; }
    .good .image span.nova {
      background: url(../images/nova.png) no-repeat center/contain; }

.good a.image {
  width: 145px;
  height: 175px; }
  .good a.image span {
    right: 5px; }
    .good a.image span.bg-danger {
      width: 45px;
      height: 45px;
      top: 5px;
      line-height: 45px;
      font-size: 16px; }
    .good a.image span.nova {
      bottom: 5px;
      width: 60px;
      height: 60px; }

.good div.image span {
  right: 10px; }
  .good div.image span.bg-danger {
    top: 10px;
    width: 78px;
    height: 78px;
    line-height: 78px;
    font-size: 28px; }
  .good div.image span.nova {
    bottom: 10px;
    width: 100px;
    height: 100px; }

.good .price {
  font-size: 20px; }

.good .qty-caption {
  padding-right: 0;
  height: 38px;
  line-height: 38px; }

.head {
  padding: 15px 0; }
  .head .logo a {
    display: block;
    max-width: 380px; }
    .head .logo a img {
      max-width: 100%; }
  .head .address, .head .name {
    font-size: 20px; }
  .head .phone {
    font-weight: 700;
    font-size: 36px;
    line-height: 1; }
  .head .phone {
    font-weight: 700;
    font-size: 36px;
    line-height: 1; }
  .head .ask-us {
    color: #ed1b24;
    font-size: 20px;
    text-decoration: underline; }
  .head .distributor {
    margin-top: 10px;
    line-height: 1.1;
    font-size: 13px; }
    @media only screen and (max-width: 1024px) {
      .head .distributor {
        font-size: 11.5px; } }
  .head .container {
    position: relative;
    height: 190px; }
  .head .search {
    position: absolute;
    right: 14px;
    bottom: -8px;
    width: 636px;
    text-align: right; }
    @media only screen and (max-width: 1024px) {
      .head .search {
        width: 532px; } }
    .head .search input {
      width: 416px; }

.main-menu {
  background: #ed1b24;
  margin-bottom: 30px;
  text-align: center;
  color: #fff; }
  .main-menu a {
    color: #fff; }
    .main-menu a .active {
      color: #ffc926;
      font-weight: 700; }
  .main-menu span {
    margin-left: 0.5rem;
    margin-right: 0.5rem; }
  .main-menu .container {
    height: 60px;
    line-height: 60px;
    font-size: 24px; }
    @media only screen and (max-width: 1024px) {
      .main-menu .container {
        font-size: 20px; } }

#map {
  height: 400px; }

.mobile-search {
  padding-top: 0.25rem;
  padding-bottom: 0.75rem; }
  .mobile-search form {
    display: flex; }
    .mobile-search form input {
      flex: 0 0 74%;
      margin-right: 1%; }
    .mobile-search form button {
      flex: 0 0 25%; }

.footer .mobile-search {
  padding-top: 1rem; }

.mobile-head {
  position: relative;
  height: 50px;
  border-bottom: 5px solid #fff; }
  .mobile-head a {
    display: block;
    position: absolute;
    top: 0;
    height: 45px;
    line-height: 45px; }
    .mobile-head a.logo {
      left: 5px;
      width: 122px;
      background: url(/media/images/logo.1.png) no-repeat left center/auto 100%; }
      .mobile-head a.logo img {
        max-height: 100%; }
    .mobile-head a.icon {
      width: 45px;
      text-align: center;
      font-size: 24px; }
    .mobile-head a.cart {
      right: 45px;
      color: #ed1b24; }
    .mobile-head a.hamburger {
      right: 0;
      color: #fff;
      background-color: #ed1b24; }
    .mobile-head a.phone {
      left: 127px;
      right: 90px;
      text-align: center;
      white-space: nowrap;
      color: #ed1b24;
      font-size: 20px; }

.mobile-menu {
  position: absolute;
  right: 0;
  top: 50px;
  margin: 0;
  padding: 1px 0 0;
  width: 264px;
  list-style: none;
  z-index: 3; }
  .mobile-menu li {
    margin-top: -1px;
    padding: 6px;
    border: 1px solid #ed1b24;
    overflow: hidden;
    z-index: 4; }
    .mobile-menu li.group {
      background-color: #fbebec; }
    .mobile-menu li.subgroup {
      background-color: #ded4d5; }
    .mobile-menu li a {
      display: block;
      height: 45px;
      line-height: 45px;
      text-transform: uppercase;
      text-align: center;
      text-decoration: none;
      font-weight: 700;
      color: #ed1b24;
      z-index: 5; }
      .mobile-menu li a span {
        display: inline-block;
        line-height: 20px;
        z-index: 6; }

.transitable {
  position: relative;
  background: #fff;
  z-index: 10;
  -moz-transition: all 0.5s;
  -o-transition: all 0.5s;
  -webkit-transition: all 0.5s;
  transition: all 0.5s; }

.mobile-open .transitable {
  -moz-transform: translate3d(-270px, 0, 0);
  -ms-transform: translate3d(-270px, 0, 0);
  -webkit-transform: translate3d(-270px, 0, 0);
  transform: translate3d(-270px, 0, 0); }

.mobile-close .transitable {
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

div.not-available {
  display: flex;
  flex-direction: column;
  row-gap: 0.5rem;
  margin-top: 2rem;
  margin-bottom: 2rem; }
  div.not-available div.line {
    display: flex;
    align-items: baseline;
    column-gap: 1rem; }
    div.not-available div.line:first-of-type span {
      display: block;
      padding: 0 0.25rem;
      font-size: 1.125rem;
      font-weight: bold;
      background-color: #ff0000;
      color: #ffffff; }
    div.not-available div.line:first-of-type a {
      text-decoration: underline; }
  div.not-available div.list {
    display: flex;
    flex-direction: column;
    row-gap: 0.5rem; }

.content .offers {
  margin-bottom: 30px; }
  @media only screen and (max-width: 576px) {
    .content .offers {
      margin-bottom: 0; } }
  .content .offers .offer {
    margin-bottom: 2rem; }

.offers a {
  display: block; }
  .offers a.header {
    background: #ed1b24;
    color: white;
    height: 42px;
    line-height: 42px;
    text-align: center;
    font-size: 20px; }
  .offers a.image img {
    max-width: 100%; }

.pagination {
  flex-wrap: wrap; }

.sendlist {
  display: block;
  position: relative;
  width: 100%;
  margin: 30px 0 15px;
  color: white;
  line-height: 1.2;
  text-shadow: 0px 0px 2px #000;
  text-align: center; }
  .sendlist:hover {
    text-decoration: none;
    color: white; }
  .sendlist img {
    max-width: 100%; }
  .sendlist span {
    display: block;
    position: absolute; }
  .sendlist .cover {
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.25); }
  .sendlist .top {
    top: 15px;
    left: 15px;
    right: 15px;
    font-size: 22px; }
  .sendlist .bottom {
    bottom: 20px;
    left: 15px;
    right: 15px;
    font-size: 18px; }

.side-links a {
  display: block;
  margin-bottom: 1rem;
  text-align: center; }
  .side-links a img {
    vertical-align: top;
    max-width: 100%; }

.sidemenu a {
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.1;
  color: #591d29; }
  .sidemenu a:hover {
    text-decoration: underline; }

.sidemenu .list-group-item.subgroup {
  padding-left: 2rem; }

.sidemenu .list-group-item.active {
  background-color: #591d29;
  border-color: #591d29; }

.top-news {
  margin-bottom: 30px; }
