@charset "UTF-8";
/* Таблицы стилей Scss */
/* Адрес цветовой схемы: https://colorscheme.ru/#3P61Tn0uBw0w0 */
/* Основной Цвет */
/* Вторичный Цвет A */
/* Вторичный Цвет B */
/* Дополнительный Цвет */
@font-face {
  font-family: Roboto;
  src: url("/fonts/Roboto/Roboto-Black.ttf") format("truetype");
  font-weight: 900; }
@font-face {
  font-family: Roboto;
  src: url("/fonts/Roboto/Roboto-Bold.ttf") format("truetype");
  font-weight: 700; }
@font-face {
  font-family: Roboto;
  src: url("/fonts/Roboto/Roboto-Medium.ttf") format("truetype");
  font-weight: 600; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-Bold.ttf") format("truetype");
  font-weight: 700; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-Regular.ttf") format("truetype");
  font-weight: 400; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-Light.ttf") format("truetype");
  font-weight: 100; }
@font-face {
  font-family: RobotoCondensed;
  src: url("/fonts/Roboto_Condensed/RobotoCondensed-LightItalic.ttf") format("truetype");
  font-weight: 100;
  font-style: italic; }
@font-face {
  font-family: Montserrat;
  src: url(/fonts/Montserrat/Montserrat-VariableFont_wght.ttf); }
@font-face {
  font-family: Montserrat;
  src: url(/fonts/Montserrat/Montserrat-Italic-VariableFont_wght.ttf);
  font-style: italic; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-Medium.ttf);
  font-weight: 500; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-MediumItalic.ttf);
  font-weight: 500;
  font-style: italic; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-Bold.ttf);
  font-weight: 700; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-BoldItalic.ttf);
  font-weight: 700;
  font-style: italic; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-Black.ttf);
  font-weight: 900; }
@font-face {
  font-family: Montserrat-Alternates;
  src: url(/fonts/Montserrat-Alternates/MontserratAlternates-BlackItalic.ttf);
  font-weight: 900;
  font-style: italic; }
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html, body {
  font-family: 'RobotoCondensed', sans-serif;
  font-size: 18px;
  font-weight: 300;
  color: #212223;
  scroll-behavior: smooth;
  background: #fff; }

h1,
h2,
h3,
h4 {
  font-family: Montserrat, sans-serif;
  color: #0f5562;
  text-align: center;
  font-weight: 500; }

h1 a, h2 a, h3 a, h4 a {
  color: inherit;
  text-decoration: inherit;
  position: relative;
  transition: .3s; }
  h1 a::after, h2 a::after, h3 a::after, h4 a::after {
    content: "";
    height: 0px;
    width: 0px;
    position: absolute;
    left: calc(100% + 10px);
    top: 50%;
    transform: translateY(-50%);
    background: url("/images/next.svg") center/cover no-repeat;
    transition: inherit; }
  h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover {
    color: #2d8696; }
    h1 a:hover::after, h2 a:hover::after, h3 a:hover::after, h4 a:hover::after {
      width: 20px;
      height: 20px; }

main {
  min-height: calc(100vh - 510px); }

input, select, textarea, button, a {
  font-family: inherit;
  font-size: inherit;
  background: none; }

.cartList {
  display: flex;
  flex-direction: column;
  margin-top: 1rem; }
  .cartList div {
    display: grid;
    grid-template-columns: 2fr 15fr 1fr 2fr 1fr 5fr 5fr;
    align-items: center; }
    .cartList div img {
      max-height: 2rem; }
    .cartList div span {
      text-align: right;
      padding-right: .5rem; }
      .cartList div span:nth-of-type(1) {
        text-align: center; }
      .cartList div span:nth-of-type(2) {
        text-align: left; }
      .cartList div span.right-padding {
        padding-right: 2rem; }
    .cartList div button {
      border: 1px solid #212223;
      background: transparent;
      color: #212223;
      margin: 0 .5rem;
      display: inline-block;
      width: 1.5rem;
      height: 1.5rem;
      cursor: pointer;
      user-select: none; }
      .cartList div button:hover {
        background: #7cbecb; }
      .cartList div button:active {
        background: #fff; }
    .cartList div:nth-of-type(odd) {
      background-color: #edeeee; }
    .cartList div:first-of-type {
      font-weight: 700;
      background-color: #7cbecb;
      padding: .2rem 0;
      grid-template-columns: 2fr 15fr 4fr 5fr 5fr; }
    .cartList div.total {
      font-weight: 700;
      background: none;
      border-top: 3px double #212223;
      grid-template-columns: 2fr 15fr 1fr 2fr 1fr 10fr; }
      .cartList div.total span {
        text-align: right; }

.finally {
  display: flex;
  justify-content: space-between;
  padding: 2rem 0; }
  .finally button {
    padding: 1rem 2rem;
    transition: .5s;
    font-size: inherit; }
  .finally #clearAll {
    background-color: #212223;
    color: #f9db97;
    border: 1px solid #9e7416; }
    .finally #clearAll:hover {
      background-color: #9e7416; }
  .finally #submitCart {
    background-color: #2d8696;
    color: #fff;
    border: 1px solid #fff; }
    .finally #submitCart:hover {
      background-color: #7cbecb;
      color: #f4bd44; }
  .finally #execCart {
    background-color: #f4bd44;
    color: #f9db97;
    border: 1px solid #9e7416; }
    .finally #execCart:hover {
      background-color: #f9db97;
      color: #fff; }

@media (max-width: 768px) {
  .cartList div {
    grid-template-columns: 2fr 10fr 1fr 2fr 1fr 5fr 5fr; }
    .cartList div span {
      font-size: 1rem !important; }
    .cartList div:first-of-type {
      grid-template-columns: 2fr 10fr 4fr 5fr 5fr; }
    .cartList div.total {
      grid-template-columns: 2fr 10fr 1fr 2fr 1fr 10fr; } }
input[type=checkbox] {
  position: relative;
  width: 1.3em;
  height: 0.5em;
  vertical-align: middle; }
  input[type=checkbox]::before {
    content: "";
    position: absolute;
    top: -25%;
    left: 0%;
    width: 100%;
    height: 110%;
    background: #edeeee;
    border: 1px solid #667;
    border-radius: 1rem;
    z-index: 1; }
  input[type=checkbox]::after {
    content: "";
    position: absolute;
    top: -75%;
    left: -5%;
    width: 1em;
    height: 1em;
    background: #a0aeae;
    border: 1px solid #667;
    border-radius: 50%;
    z-index: 2;
    transition: .3s; }
  input[type=checkbox]:checked::after {
    left: 0.3em;
    background: #f4bd44;
    border: 1px solid #9e7416; }
  input[type=checkbox]:focus, input[type=checkbox]:focus-visible {
    border: none;
    outline: none; }

.container, dialog {
  width: 100%;
  max-width: 1300px;
  margin: auto;
  padding: 0 20px; }

dialog {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transform-origin: top right;
  border: none;
  background: rgba(124, 190, 203, 0.3);
  backdrop-filter: blur(3px);
  border-radius: 1rem;
  padding: 1rem;
  box-shadow: 0 0 15px -5px #6677;
  max-height: 90vh;
  overflow-y: auto;
  z-index: 9999; }
  dialog::backdrop {
    background: rgba(15, 85, 98, 0.3);
    backdrop-filter: blur(5px); }
  dialog > form, dialog > div {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 1rem;
    padding: 1rem; }
  dialog .close {
    position: absolute;
    top: 0;
    right: 0;
    width: 2rem;
    height: 2rem;
    text-align: center;
    line-height: 2rem;
    font-family: Roboto;
    font-size: 1.5rem;
    font-weight: 900;
    border: none;
    outline: none;
    color: #fff;
    background-color: #212223;
    border-radius: 1rem;
    cursor: pointer;
    transition: .3s; }
    dialog .close:hover {
      background-color: #f4bd44; }
  dialog[open] {
    animation: expand 0.25s cubic-bezier(1, 0, 0, 1.5) 1 both alternate; }

@keyframes expand {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0); }
  100% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1); } }
.flex {
  display: flex; }

.between {
  justify-content: space-between; }

.right {
  text-align: right; }

.right-side {
  display: block;
  width: fit-content;
  margin-left: auto; }

.left {
  float: left;
  margin: 0 20px 20px 0; }

.grow {
  flex-grow: 1;
  flex-basis: 100%; }

a:not(.button, .logo) {
  color: inherit;
  text-decoration: none;
  transition: .5s;
  position: relative; }
  a:not(.button, .logo)::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    height: 1px;
    width: 0;
    background-color: #667;
    transition: .3s; }
  a:not(.button, .logo):hover {
    color: #667; }
    a:not(.button, .logo):hover::after {
      width: 100%;
      left: 0;
      right: auto;
      background-color: #667; }

#countdown {
  position: absolute;
  top: 10px;
  right: 3rem;
  width: max-content;
  color: #2d8696;
  background: rgba(255, 255, 255, 0.8);
  font-weight: 700;
  z-index: 1001; }

#cart_cont {
  display: block;
  width: fit-content;
  padding: 0 .5rem;
  position: sticky;
  float: right;
  right: clamp(0.5rem, calc((100% - 1300px) / 2 - 4.5rem), 100%);
  top: -1px;
  z-index: 1003;
  border-radius: .5rem;
  transform-origin: left top;
  transition: .5s; }
  #cart_cont::after {
    height: 0; }
  #cart_cont::before {
    content: 'Показать корзину';
    position: absolute;
    top: 50%;
    right: 95%;
    width: max-content;
    background: rgba(237, 238, 238, 0.8);
    padding: .5rem;
    color: #2d8696;
    transform-origin: right;
    transform: translateY(-50%) scaleX(0);
    transition: .5s; }
  #cart_cont:hover::before {
    transform: translateY(-50%) scaleX(1); }
  #cart_cont svg {
    display: block;
    height: 5rem;
    width: 4rem; }
    #cart_cont svg #cart_count, #cart_cont svg #cart_sum {
      fill: #f4bd44;
      font-weight: 600; }
  #cart_cont.is-pinned {
    background: none;
    right: clamp(0px, calc((100% - 1300px) / 2 - 75px), 100%); }
    #cart_cont.is-pinned:hover {
      transform: scale(1); }
    #cart_cont.is-pinned svg {
      height: 70px;
      width: 66px; }
      #cart_cont.is-pinned svg path {
        fill: #fff; }

.top-bar {
  position: sticky;
  height: 70px;
  width: 100%;
  top: -1px;
  padding: 0 max(3vw, calc(50vw - 650px));
  font-size: 1rem;
  background: linear-gradient(#3c54a5, #14286b);
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
  z-index: 1000; }
  .top-bar .top-bar__affiliate {
    flex-grow: 1;
    display: flex;
    flex-wrap: wrap;
    transform-origin: right;
    transition: .3s; }
    .top-bar .top-bar__affiliate span {
      flex-basis: max-content;
      margin-right: 1rem; }
    .top-bar .top-bar__affiliate a {
      display: flex;
      flex-wrap: wrap; }
  .top-bar.is-pinned .top-bar__affiliate {
    transform: scale(0);
    flex-grow: 0; }
  .top-bar.is-pinned .top-bar__menu {
    padding-right: clamp(0px, calc(1vw - (100% - 1300px) / 2), 6rem); }
    .top-bar.is-pinned .top-bar__menu .button {
      width: max-content; }
  .top-bar #top-bar__toggler, .top-bar .top-bar__burger {
    display: none; }
  .top-bar .top-bar__menu {
    flex-grow: 5;
    flex-basis: 110%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    transition: .3s; }
    .top-bar .top-bar__menu a {
      margin-right: 2vw; }
  .top-bar a {
    color: #fff; }
    .top-bar a::after {
      background-color: #fff; }
    .top-bar a:hover {
      color: #f9db97; }
      .top-bar a:hover::after {
        background-color: #f9db97; }

.logo {
  display: block;
  height: 70px;
  width: fit-content;
  padding: 2px 0 0 max(3vw, calc(50vw - 650px));
  position: sticky;
  top: -1px;
  z-index: 1001; }
  .logo svg {
    height: 100%; }
    .logo svg .st0 {
      transition: .3s; }
  .logo.is-pinned svg .st0 {
    fill: #fff; }

.button {
  background: linear-gradient(#b79854, #b79854);
  border: none;
  outline: none;
  padding: .5em 1em;
  color: #fff;
  border-radius: 1em;
  text-decoration: none;
  font-size: inherit;
  cursor: pointer;
  transition: .3s; }
  .button:hover {
    background: linear-gradient(#f4bd44, #b79854);
    box-shadow: inset 0.1em 0.1em 0.15em #f9db97, inset -0.1em -0.1em 0.15em #9e7416;
    padding: .4em 1.1em .6em .9em; }

.header {
  height: calc(100vh - 140px );
  width: 100%;
  padding: calc(20px + 3vh) 2vw 0;
  background: url("/images/bg15.png") center bottom/cover no-repeat;
  display: grid;
  grid-template-columns: 3fr 2fr;
  grid-template-rows: 2fr 2fr 1fr;
  grid-template-areas: "img tit" "img pr" "img ."; }
  .header .header__title {
    text-align: right;
    justify-self: end;
    align-self: center;
    color: #667;
    font-size: 4.5vh;
    line-height: 120%;
    text-shadow: 0 0 0.3vw #fff;
    grid-area: tit; }
  .header .header__img {
    display: block;
    justify-self: flex-start;
    align-self: flex-start;
    max-width: 100%;
    max-height: 90%;
    grid-area: img;
    transform: rotate(-15deg);
    transform-origin: top left; }
  .header .header__products {
    grid-area: pr;
    justify-self: end;
    align-self: flex-start;
    width: fit-content;
    height: fit-content;
    padding: 1vh 2vw;
    font-size: 2rem;
    text-align: center;
    border-radius: 2vw; }
    .header .header__products:hover {
      padding: .9vh 2.1vw 1.1vh 1.9vw; }

main > section {
  width: 100%;
  max-width: 1300px;
  padding: 20px;
  margin: 0 auto; }
  main > section h1, main > section h2, main > section h3, main > section h4 {
    margin: 2.5rem auto 1.5rem; }
  main > section h2 {
    border-bottom: 1px solid #2d8696;
    width: max-content; }
  main > section p {
    margin-bottom: .3rem; }
  main > section ul, main > section ol {
    margin-left: 2rem; }
    main > section ul::first-line, main > section ol::first-line {
      margin-left: 1rem; }

.advantages__title {
  font-size: 2rem;
  width: fit-content; }

.advantages__list {
  background: #fff;
  padding: 3vh 3vw;
  margin-left: 0;
  box-shadow: 0.5rem 1rem 2rem #6677; }
  .advantages__list li {
    font-size: 1.5rem;
    margin: 2rem 0 2rem 3rem; }
    .advantages__list li::marker {
      content: '✔ ';
      color: #7cbecb;
      font-size: 3rem; }
  .advantages__list .button {
    display: block;
    width: fit-content;
    margin: auto; }

.blue {
  width: 100% !important;
  max-width: 100% !important;
  background: #889ad2;
  padding: 10vh 20vw; }

.image-style-side {
  float: left;
  max-width: 50%;
  margin: 0 1rem 1rem 0; }
  .image-style-side img {
    width: 100%; }

.news > h2 {
  width: fit-content !important; }

.news__container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem; }
  .news__container .news__item {
    flex-basis: 24%;
    width: 100%;
    padding: .5rem 1rem;
    border-radius: .3rem;
    border: 1px solid #edeeee;
    transition: .3s; }
    .news__container .news__item:hover {
      transform: scale(1.01);
      box-shadow: 1px 2px 7px -2px #6677; }
    .news__container .news__item a {
      text-decoration: none;
      color: #212223;
      height: 100%;
      transition: .3s;
      display: grid;
      grid-template-columns: 1fr 2fr;
      grid-template-rows: 1.5rem 1fr;
      grid-template-areas: "nimg ntit" "nimg ntxt";
      gap: 10px; }
      .news__container .news__item a::after {
        background: none; }
      .news__container .news__item a .news__item-title {
        text-align: left;
        width: max-content;
        margin: 0;
        border-bottom: 1px solid #2d8696;
        grid-area: ntit; }
      .news__container .news__item a .news__item-image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        grid-area: nimg; }
      .news__container .news__item a .news__item-text {
        grid-area: ntxt; }

.news__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly; }
  .news__list .news__item {
    width: 100%;
    max-height: 30vh;
    margin: 10px;
    border: 1px solid #edeeee;
    border-radius: 20px;
    padding: 20px;
    flex: 1 1 calc(50% - 20px);
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-template-rows: 4rem 1rem 1fr 40px;
    grid-template-areas: "nii nit" "nii nid" "nii nim" "nib nim";
    gap: 5px 20px; }
    .news__list .news__item .news__item-title {
      grid-area: nit;
      text-align: left;
      font-size: 1.2rem;
      line-height: 100%;
      margin: 0 !important;
      overflow: hidden; }
    .news__list .news__item .news__item-date {
      grid-area: nid;
      color: #667;
      font-style: italic;
      text-align: right; }
    .news__list .news__item .news__item-image {
      grid-area: nii;
      width: 100%;
      max-height: 100%;
      object-fit: cover; }
    .news__list .news__item .news__item-message {
      grid-area: nim;
      font-size: 1rem;
      overflow: hidden; }
    .news__list .news__item .button {
      grid-area: nib;
      text-align: center; }
  .news__list .news__full img {
    float: right;
    margin-left: 1rem;
    max-width: 50%; }
  .news__list .news__full > p {
    font-style: italic;
    color: #667;
    border-bottom: 1px solid #edeeee;
    margin-bottom: 10px; }
  .news__list > a {
    text-align: right;
    display: block;
    width: fit-content;
    margin: 1rem 0 1rem auto; }

.blog {
  text-align: center; }
  .blog .blog__container {
    display: flex;
    justify-content: space-between; }
    .blog .blog__container .blog__item {
      flex-basis: 32%;
      padding: 1rem;
      border: 1px solid #edeeee;
      border-radius: 1rem;
      transition: .3s; }
      .blog .blog__container .blog__item .blog__item-image {
        width: 100%; }
      .blog .blog__container .blog__item:hover {
        transform: scale(1.01);
        box-shadow: 1px 2px 7px -2px #6677; }

.blog__list .blog__full p, .blog__list .blog__full li {
  text-align: left; }
.blog__list .blog__item {
  border-bottom: 1px solid #edeeee;
  margin-bottom: 2rem;
  padding-bottom: 1rem; }
.blog__list .button {
  display: block;
  width: fit-content;
  margin: 2rem auto 0; }
.blog__list .blog__publish {
  text-align: right !important;
  font-style: italic;
  color: #667; }

.additional {
  background: #edeeee;
  display: flex;
  justify-content: space-between; }
  .additional .additional__item {
    flex-basis: 24%;
    display: grid;
    grid-template-columns: 3rem 1fr;
    grid-template-rows: 1rem 1rem;
    grid-template-areas: "img tit" "img desc";
    gap: 5px 10px; }
    .additional .additional__item img {
      grid-area: img;
      height: 100%;
      display: block;
      margin-left: auto; }
    .additional .additional__item p:first-of-type {
      grid-area: tit;
      font-weight: 700; }
    .additional .additional__item p:last-of-type {
      grid-area: desc;
      font-style: italic; }

.oneclick {
  margin: 1rem 0;
  background: linear-gradient(#356771, #356771); }
  .oneclick:hover {
    background: linear-gradient(#2d8696, #356771);
    box-shadow: inset 0.1em 0.1em 0.15em #7cbecb, inset -0.1em -0.1em 0.15em #0f5562;
    padding: .4em 1.1em .6em .9em; }

#prodList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: .5rem;
  overflow: hidden; }
  #prodList article {
    position: relative;
    border: 1px solid #edeeee;
    border-radius: 1rem;
    padding: .5rem;
    text-align: center;
    transition: .25s; }
    #prodList article a {
      display: inline-block;
      text-decoration: none;
      color: #212223;
      height: 100%;
      transition: .5s; }
      #prodList article a::after {
        background: none; }
      #prodList article a:hover {
        color: #2d8696; }
    #prodList article img {
      width: 100%;
      max-height: 25rem;
      object-fit: scale-down;
      transition: .25s; }
    #prodList article h3 {
      height: 3em; }
    #prodList article p span {
      font-size: 1.2rem;
      font-weight: 700; }
    #prodList article .price {
      color: #f4bd44; }
    #prodList article .tocart, #prodList article .oneclick, #prodList article .short_desc {
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%) scale(0);
      width: max-content;
      transition: .25s; }
    #prodList article .short_desc {
      background: linear-gradient(#fffe, #fff4);
      overflow: hidden;
      width: 100%;
      height: 100%;
      padding: 1rem;
      font-weight: 600;
      color: #212223; }
    #prodList article:hover {
      box-shadow: 1px 2px 10px -3px #6677;
      transform: scale(1.005); }
      #prodList article:hover .tocart {
        bottom: 30%;
        transform: translateX(-50%) scale(1); }
      #prodList article:hover .oneclick {
        bottom: 18%;
        transform: translateX(-50%) scale(1); }
      #prodList article:hover .short_desc {
        transform: translateX(-50%) scale(1); }
      #prodList article:hover img {
        transform: scale(1.05); }
    #prodList article .isnew, #prodList article .istop {
      display: block;
      font-size: 1rem;
      font-weight: 700;
      background: #f4bd44;
      color: #fff;
      text-align: center;
      transform: rotate(-45deg);
      position: absolute;
      top: .9rem;
      left: -.1rem;
      width: fit-content;
      height: 2rem;
      line-height: 2rem;
      z-index: 1;
      filter: drop-shadow(0 3px 3px #6677); }
      #prodList article .isnew::before, #prodList article .isnew::after, #prodList article .istop::before, #prodList article .istop::after {
        content: " ";
        position: absolute;
        width: 0;
        height: 0;
        top: 0;
        border: 1rem solid transparent;
        border-bottom: 1rem solid #f4bd44; }
      #prodList article .isnew::before, #prodList article .istop::before {
        left: -2rem;
        border-right: 1rem solid #f4bd44; }
      #prodList article .isnew::after, #prodList article .istop::after {
        right: -2rem;
        border-left: 1rem solid #f4bd44; }
    #prodList article .istop {
      background: #2d8696;
      letter-spacing: .8rem;
      left: auto;
      right: -.1rem;
      transform: rotate(45deg); }
      #prodList article .istop::before {
        border-right-color: #2d8696;
        border-bottom-color: #2d8696; }
      #prodList article .istop::after {
        border-bottom-color: #2d8696;
        border-left-color: #2d8696; }
  #prodList.grid {
    grid-template-columns: 1fr; }
    #prodList.grid article a {
      display: grid;
      grid-template-columns: 1fr 5fr 2fr 3fr 2.5fr;
      align-items: center; }
      #prodList.grid article a img {
        height: auto; }
    #prodList.grid article h3 {
      height: fit-content; }
    #prodList.grid article .tocart {
      display: block;
      position: static;
      transform: none; }

.hits {
  padding: 5rem 20px; }

article.single {
  display: grid;
  grid-template-columns: 3fr 1fr 1fr;
  grid-template-rows: 3rem 8rem 8rem 1fr auto;
  grid-template-areas: 'img price price' 'img tocart tocart' 'img one one' 'img warn warn' 'desc desc desc'; }
  article.single img {
    grid-area: img;
    max-height: 30rem;
    max-width: 100%;
    height: 100%; }
  article.single .description img {
    width: auto;
    max-width: 100%;
    max-height: none; }
  article.single > p span {
    font-size: 1.5em; }
  article.single .pprice {
    grid-area: price;
    text-align: right;
    font-size: 1.2rem; }
    article.single .pprice .price {
      color: #f4bd44;
      font-weight: 700; }
  article.single .oneclick {
    grid-area: one;
    font-size: 1.5rem; }
  article.single .tocart {
    grid-area: tocart;
    font-size: 1.5rem;
    margin: 1rem 0; }
  article.single .warning {
    grid-area: warn;
    padding: 1rem;
    background-color: #edeeee;
    color: #0f5562;
    align-self: flex-end;
    border-radius: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-style: italic; }
  article.single .description {
    grid-area: desc;
    margin: 1rem 0; }
    article.single .description ul {
      list-style-type: '➤ ';
      margin-left: 1.3rem; }
    article.single .description p {
      margin: .5rem 0; }

.contacts {
  display: flex; }
  .contacts h4 {
    margin-top: 0 !important; }

.contacts__left {
  flex-basis: 50%;
  width: 100%; }
  .contacts__left h4 {
    text-align: left; }
  .contacts__left a {
    display: block;
    width: max-content;
    color: #212223;
    font-size: 2rem;
    margin: 2rem 0; }
    .contacts__left a img {
      height: 2rem;
      filter: grayscale(100%) hue-rotate(0);
      transform: translateY(20%);
      transition: .5s; }
    .contacts__left a::after {
      background-color: #edeeee; }
    .contacts__left a:hover {
      color: #2d8696; }
      .contacts__left a:hover img {
        filter: grayscale(0) hue-rotate(-45deg);
        transform: translateY(10%); }
      .contacts__left a:hover::after {
        background-color: #2d8696; }

.feedback {
  display: flex;
  flex-direction: column;
  width: 100%;
  flex-basis: 50%;
  margin: auto;
  padding: 2rem;
  background: #f8f8f8;
  border-radius: 1rem; }
  .feedback .float_placeholder {
    position: relative;
    margin-bottom: 2rem; }
    .feedback .float_placeholder label {
      position: absolute;
      left: 1rem;
      top: 1.5rem;
      transform: translateY(-1rem);
      transition: .3s;
      z-index: 1; }
    .feedback .float_placeholder input, .feedback .float_placeholder textarea {
      padding: .5rem 1rem;
      border: 1px solid #a0aeae;
      border-radius: 1rem;
      outline-color: #2d8696;
      background: rgba(255, 255, 255, 0.3);
      font-size: 1rem;
      width: 100%; }
      .feedback .float_placeholder input:focus + label, .feedback .float_placeholder input:not(:placeholder-shown) + label, .feedback .float_placeholder textarea:focus + label, .feedback .float_placeholder textarea:not(:placeholder-shown) + label {
        transform: translateY(-3rem); }
  .feedback textarea {
    resize: none; }
  .feedback .chk_lbl {
    margin-bottom: 1rem; }

footer {
  background-color: #212223;
  color: #edeeee;
  padding: 3rem 0;
  font-size: .8rem;
  font-weight: 300; }
  footer h3, footer h4 {
    color: #edeeee;
    text-align: left;
    margin-bottom: 1rem;
    font-size: 1rem;
    font-weight: 600; }
  footer .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    footer .container article {
      flex-basis: 25%; }
      footer .container article p {
        margin: .3rem 0;
        text-align: left; }
      footer .container article img {
        width: 4rem;
        margin: .1rem;
        transform: scale(1);
        transition: .25s; }
        footer .container article img:hover {
          transform: scale(1.1); }
        footer .container article img.developer {
          width: 1rem;
          vertical-align: middle;
          filter: grayscale(1); }
    footer .container article:last-of-type {
      flex-basis: 100%;
      margin-top: 2rem;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
  footer a {
    color: #edeeee; }
    footer a::after {
      background-color: #edeeee; }
    footer a:hover {
      color: #7cbecb !important; }
      footer a:hover::after {
        background-color: #7cbecb !important; }
      footer a:hover img.developer {
        filter: grayscale(0);
        transform: translateY(-0.5rem) scale(1.5); }

#goup {
  display: none;
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  background-color: #6677;
  color: #fff;
  border-radius: 1.5rem;
  font-size: 1.5rem;
  font-weight: 900;
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  text-decoration: none; }

#wait {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.5);
  z-index: 199999; }

.forms {
  min-width: 20rem;
  width: min(1260px, calc(100% - 40px)); }

form {
  padding: 2rem 0 1rem;
  width: 100%; }
  form nav#sign a {
    text-decoration: none;
    color: #667; }
    form nav#sign a.active {
      color: #212223;
      border-bottom: 1px dashed; }
    form nav#sign a:hover {
      color: #f4bd44; }
  form section {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between; }
    form section .lbl {
      margin: .7rem 0 .3rem; }
      form section .lbl label {
        display: block;
        font-style: italic;
        width: 100%;
        margin-bottom: .05rem; }
        form section .lbl label span {
          color: #f4bd44; }
      form section .lbl input {
        display: block;
        width: 100%;
        border: none;
        outline: none;
        font-size: inherit;
        font-weight: 400;
        border-bottom: 1px solid #667;
        padding: .5rem 0; }
        form section .lbl input::placeholder {
          color: #a0aeae; }
        form section .lbl input:focus {
          border-bottom-color: #2d8696; }
    form section a {
      color: #3c54a5;
      display: block;
      width: fit-content;
      margin: 1rem 0;
      text-decoration: none;
      border-bottom: 1px dashed transparent;
      transition: .5s; }
      form section a:hover, form section a:focus, form section a:focus-visible {
        color: #889ad2;
        border-bottom: 1px dashed;
        outline: none; }
    form section .suggestion {
      display: none;
      position: absolute;
      padding: 0 1rem;
      background-color: #fff;
      border: 1px solid #2d8696; }
    form section .chk_lbl a {
      display: inline-block; }
    form section button {
      margin: 1rem auto;
      padding: .5rem 2rem;
      font-size: 1.5rem;
      font-weight: 700;
      border: none;
      outline: none;
      background-color: #2d8696;
      color: #fff;
      transition: .5s; }
      form section button:hover {
        background-color: #60bacb;
        color: #f4bd44; }
    form section .half {
      flex-basis: 49%; }

#form_msg {
  display: none;
  position: fixed;
  padding: .5rem 1rem;
  width: max-content;
  max-width: 98%;
  background-color: #f4bd44;
  color: #fff;
  box-shadow: 1px 1px 3px #6677;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); }

#page404 {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  height: 100%;
  padding-bottom: 50px;
  text-align: center; }
  #page404 img {
    height: 100%;
    margin: 1rem auto; }

#sponsor {
  position: fixed;
  bottom: 1rem;
  right: clamp(0.5rem, calc((100% - 1300px) / 2 - 4.5rem), 100%);
  width: 5rem;
  height: 5rem;
  z-index: 10; }
  #sponsor svg {
    width: 100%;
    height: 100%; }
  #sponsor #tooltip {
    position: absolute;
    width: 17rem;
    height: 4rem;
    min-height: fit-content;
    top: -4.5rem;
    right: 0;
    text-align: right;
    font-weight: 400;
    color: #14286b;
    background-color: rgba(255, 255, 255, 0.5);
    border-radius: .25rem;
    padding: .3rem .5rem;
    filter: drop-shadow(0px 0px 2px #889ad2);
    backdrop-filter: blur(2px);
    display: none;
    transform-origin: bottom right; }
    #sponsor #tooltip::after {
      content: '';
      position: absolute;
      border-right: 10px solid transparent;
      border-top: 10px solid rgba(255, 255, 255, 0.5);
      border-left: 10px solid transparent;
      top: 4.3rem;
      right: 2rem;
      width: 1px;
      height: 13px; }
  #sponsor aside {
    display: flex;
    flex-direction: column;
    width: 4rem;
    height: auto;
    position: absolute;
    bottom: 5rem;
    left: .5rem;
    transform: scale(0);
    transform-origin: bottom center;
    transition: .5s; }
    #sponsor aside svg {
      transform: scale(0.8);
      transition: .25s; }
      #sponsor aside svg:hover {
        transform: scale(1); }
    #sponsor aside a {
      position: relative;
      background: rgba(237, 238, 238, 0.8);
      border-radius: 50%;
      padding: 5px; }
      #sponsor aside a::after {
        height: 0; }
      #sponsor aside a::before {
        content: '';
        position: absolute;
        right: 4.1rem;
        top: 1rem;
        width: max-content;
        border: 1px solid #edeeee;
        background-color: rgba(237, 238, 238, 0.8);
        color: #3c54a5;
        font-weight: 500;
        transform-origin: right;
        transform: scaleX(0);
        transition: .25s; }
      #sponsor aside a:hover::before {
        padding: .5rem; }
    #sponsor aside a#wa:hover::before {
      content: 'WhatsApp'; }
    #sponsor aside a#tg:hover::before {
      content: 'Telegram'; }
    #sponsor aside a#ph:hover::before {
      content: 'Позвонить'; }
    #sponsor aside a#mail:hover::before {
      content: 'Написать e-mail'; }
    #sponsor aside a:hover::before {
      transform: scaleX(1); }
  #sponsor:hover aside {
    transform: scale(1); }
  #sponsor:hover #tooltip {
    display: none;
    transform: scale(0); }

#cookie {
  position: fixed;
  bottom: 1rem;
  width: max-content;
  max-width: 100%;
  left: 1vw;
  padding: 1rem 2rem;
  background-color: #212223;
  color: #fff;
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap; }
  #cookie p {
    flex-basis: 80%; }
  #cookie a {
    color: #fff; }
  #cookie button {
    background-color: #fff;
    color: #212223;
    font-weight: 700;
    padding: .2rem 1rem; }

.cart {
  height: 50px; }
  .cart img {
    height: 100%;
    border-radius: 50%; }
  .cart a {
    margin-right: 0 !important; }

@media screen and (pointer: coarse) {
  html {
    font-size: min(2.5vh, 18px) !important; }

  #cart_cont.is-pinned {
    right: 15vw;
    height: 14vh; }
    #cart_cont.is-pinned svg {
      padding-top: 2vh;
      height: 12vh;
      width: calc(12vh * 1.055); }

  .logo {
    height: 14vh; }

  .top-bar {
    height: 15vh; }
    .top-bar .top-bar__affiliate {
      flex-direction: column;
      flex-basis: calc(100% - 70px);
      font-size: 1.1rem; }
      .top-bar .top-bar__affiliate a {
        flex-direction: column; }
    .top-bar .top-bar__menu {
      height: 0;
      transform: scale(0);
      transform-origin: top right;
      position: fixed;
      top: calc(15vh - 1px);
      right: 0;
      width: 100%;
      flex-grow: 0;
      padding: 10vw;
      flex-direction: column;
      justify-content: space-evenly;
      background-color: #14286b;
      overflow: hidden;
      transition: .3s; }
      .top-bar .top-bar__menu > * {
        font-size: 1.5rem;
        margin-bottom: 1rem;
        display: block;
        transform: translateX(100vw);
        transform-origin: bottom left; }
      .top-bar .top-bar__menu .top-bar__item, .top-bar .top-bar__menu .sign {
        transition: .3s ease-in .2s; }
    .top-bar #top-bar__toggler {
      display: block;
      position: fixed;
      opacity: 0;
      z-index: -1; }
    .top-bar .top-bar__burger {
      display: block !important;
      position: relative;
      flex-shrink: 0;
      width: 25px;
      height: 5px;
      background-color: #fff;
      transition: .3s; }
      .top-bar .top-bar__burger::before {
        content: "";
        width: 100%;
        height: 5px;
        position: absolute;
        top: -10px;
        left: 0;
        background-color: #fff;
        transition: .3s; }
      .top-bar .top-bar__burger::after {
        content: "";
        width: 100%;
        height: 5px;
        position: absolute;
        top: 10px;
        left: 0;
        background-color: #fff;
        transition: .3s; }
    .top-bar #top-bar__toggler:checked ~ .top-bar__menu {
      height: calc(100vh - 15vh);
      transform: scale(1); }
      .top-bar #top-bar__toggler:checked ~ .top-bar__menu > * {
        transform: translateX(0); }
    .top-bar #top-bar__toggler:checked ~ .top-bar__burger {
      height: 0; }
      .top-bar #top-bar__toggler:checked ~ .top-bar__burger::before {
        transform: rotate(45deg);
        top: 0; }
      .top-bar #top-bar__toggler:checked ~ .top-bar__burger::after {
        transform: rotate(-45deg);
        top: 0; }

  .header {
    height: 75vh; }

  #prodList article {
    border-width: 3px; }
    #prodList article a .tocart, #prodList article a .oneclick {
      position: static;
      transform: none; }
    #prodList article a .short_desc {
      display: none; }
    #prodList article a:hover .tocart {
      transform: none !important; } }
@media screen and (max-width: 1025px) {
  html {
    font-size: 2vh !important; }

  .header {
    grid-template-columns: 3fr 4fr;
    grid-template-rows: repeat(3, 1fr); }
    .header .header__title {
      font-size: 7vw;
      line-height: 6vw;
      align-self: flex-start; }
    .header .header__products {
      align-self: center; }
    .header .header__img {
      max-height: 50%;
      align-self: flex-start; }

  .logo {
    padding: 1vh 4vw;
    height: 13vh; }

  main > section {
    padding: 4vw; }

  .blue {
    padding: 10vh 4vw !important; }

  .news .news__item {
    max-height: min(300px, 70vh); }
  .news .news__item-title {
    font-size: 1.3rem; }
  .news .news__item-date {
    font-size: 1rem; }

  .news__container {
    flex-direction: column; }
    .news__container .news__item {
      margin: 1rem 0; }

  .contacts__left a {
    font-size: 1.5rem;
    margin: 1rem 0; }

  #page404 {
    height: 100%; }
    #page404 img {
      width: 90%;
      height: auto; }

  footer .container {
    flex-direction: column; }
    footer .container article h3 {
      font-size: 1.5rem;
      margin-top: 2rem; }
    footer .container article p {
      font-size: 1rem;
      margin-bottom: .75rem; } }
@media screen and (max-width: 768px) {
  html {
    font-size: min(2.5vh, 16px) !important; }

  dialog {
    max-width: calc(100% - 20px); }

  main > section > div > img {
    width: 100%;
    float: none; }

  .blue {
    padding: 10vh 4vw !important; }

  form section {
    flex-direction: column; }

  #prodList {
    grid-template-columns: 1fr; }

  h1, h2, h3, h4 {
    max-width: 100%; }

  .header .header__products {
    font-size: 1.2rem !important; }

  article.single {
    grid-template-columns: 1fr;
    grid-template-areas: "img" "price" "tocart" "one" "warn" "desc";
    grid-template-rows: 50vh 3rem 8rem 8rem auto auto; }
    article.single .pprice {
      font-size: 2rem; }

  .news__list .news__full img {
    float: none;
    margin-left: 0;
    max-width: 100%; }

  .blog__container {
    flex-direction: column; }
    .blog__container .blog__item {
      flex-basis: 100% !important;
      margin-bottom: 1rem; }

  .additional {
    flex-direction: column; }
    .additional .additional__item {
      margin: 1rem 0; }

  .contacts {
    flex-direction: column; }

  footer .container article h3 {
    font-size: 1.5rem; }
  footer .container article p {
    font-size: 1rem; }

  #sponsor #tooltip {
    width: 70vw;
    height: 6rem;
    top: -6.5rem; }
    #sponsor #tooltip::after {
      top: 6rem; } }
@media screen and (max-height: 768px) and (orientation: landscape) and (hover: none) {
  html {
    font-size: 3vh !important; }

  main > section {
    padding: 4vw; }

  .header .header__title {
    font-size: 5vw;
    line-height: 4vw; }
  .header .header__img {
    max-height: 50vh; }

  .top-bar {
    font-size: .85rem; }
    .top-bar .top-bar__affiliate {
      flex-direction: row;
      flex-basis: 80%;
      flex-grow: 0; }
      .top-bar .top-bar__affiliate a {
        flex-direction: row; }
    .top-bar .top-bar__menu {
      padding: 1vh 3vw; }
    .top-bar .top-bar__item, .top-bar .sign {
      margin: 2vh 0 !important;
      font-size: 1rem; }

  article.single {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "img price" "img tocart" "img one" "img warn" "desc desc";
    grid-template-rows: 3rem 10rem 10rem 20rem 5fr; } }
@media print {
  nav, header, footer, #sponsor {
    display: none; } }
