@font-face {
  font-family: "Raleway";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src:  url("../fonts/raleway/raleway-800.woff2") format("woff2"),
    url("../fonts/raleway/raleway-800.woff1") format("woff");
}

@font-face {
  font-family: "Rubik";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src:  url("../fonts/rubik/rubik-400.woff2") format("woff2"),
    url("../fonts/rubik/rubik-400.woff") format("woff");
}

@font-face {
  font-family: "Rubik";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src:  url("../fonts/rubik/rubik-700.woff2") format("woff2"),
    url("../fonts/rubik/rubik-700.woff") format("woff");
}

* {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  object-fit: contain;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

ul,
li {
  margin: 0;
  padding: 0;
}

ul li,
ol li {
  list-style: none;
  text-decoration: none;
}

a {
  text-decoration: none;
}

.visually-hidden {
  position: absolute;
  clip: rect(0 0 0 0);
  width: 1px;
  height: 1px;
  margin: -1px;
}

.page {
  height: 100%;
}

.page__body {
  margin: 0;
  padding: 0;
  min-height: 100%;
  min-width: 1160px;
  display: flex;
  flex-direction: column;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  color: #000000;
  background-color: #ffffff;
}

.link,
.button {
  position: relative;
  z-index: 1;
  display: inline-block;

  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 18px;
  line-height: 21px;
  text-align: cetner;
  text-transform: uppercase;
  color: #000000;
  border: none;
  background-color: transparent;
  letter-spacing: 0.2em;
}

.link::before,
.button::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 8px;
  background-color: #ffe17f;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.link:focus-visible,
.button:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.link:hover::before,
.button:hover::before {
  height: 100%;
}

.link:focus,
.button:focus {
  border: none;
  outline: none;
}

.link:hover:focus-visible,
.button:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.link:active::before,
.button:active::before {
  background-color: #ffcc33;
}

.main-content {
  flex-grow: 1;
}

.page-header {
  z-index: 1;
  position: relative;
  width: 1160px;
  margin: 0 auto;
  padding: 0 61px;
  margin-bottom: 18px;
  padding-top: 13px;
  display: flex;
  flex-direction: column;
  background-image: linear-gradient(180deg, #ffffff 35px, #ffe17f 1px);
}

.page-header__container--catalog {
  margin-bottom: 0;
  padding-bottom: 23px;
}

.page-header__link {
  width: 145px;
  display: inline-block;
}

.page-header__link:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff ;
}

.page-header__logo {
  display: inline-block;
  margin-right: auto;
  width: 145px;
  margin-bottom: 23px;
}

.page-header__logo:hover {
  opacity: 0.6;
}

.page-header__logo:focus {
  outline: none;
  border: none;
}

.page-header__logo:active {
  opacity: 0.3;
}

.user-menu {
  display: flex;
  align-items: center;
  margin-bottom: 39px;
}

.user-menu__link,
.site-login__link {
  font-family: inherit;
  font-weight: inherit;
  color: #000000;
}

.user-menu__item:nth-child(1) .user-menu__link {
  padding-left: 23px;
  background-image: url("../img/icons/compare.svg");
  background-repeat: no-repeat;
  background-position: left center;
}

.user-menu__item:nth-child(2) .user-menu__link {
  padding-left: 44px;
  background-image: url("../img/icons/shopping-card.svg");
  background-repeat: no-repeat;
  background-position: left center;
}

.user-menu__link {
  padding-top: 12px;
  padding-bottom: 12px;
}

.user-menu__link:hover {
  opacity: 0.6;
}

.user-menu__link:focus {
  border: none;
  outline: none;
}

.user-menu__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.user-menu__link:active {
  opacity: 0.3;
}

.site-login__list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.site-login__item:nth-child(1) {
  max-width: 146px;
}

.site-login__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
  border: none;
  outline: none;
  overflow: auto  ;
}

.site-login__item:not(:last-child) {
  margin-right: 27px;
}

.site-login__item:nth-child(1) .site-login__link {
  background-image: url("../img/icons/profile.svg");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 28px;
}

.site-login__link {
  padding-top: 12px;
  padding-bottom: 12px;
}

.site-login__item:nth-child(1):hover {
  opacity: 0.6;
}

.site-login__item:nth-child(1):active {
  opacity: 0.3;
}

.logout {
  color: rgba(0, 0, 0, 0.3);
}

.search-form {
  width: 517px;
  display: flex;
  margin-right: 26px;
}

.search-form__input {
  flex-grow: 1;
  background-color: transparent;
  background-image: url("../img/icons/search.svg");
  background-repeat: no-repeat;
  background-position: 16px center;
  border: 2px solid #000000;
  border-radius: 50px 0 0 50px;
  padding: 8px 0 8px 48px;
  margin: 0;
  color: #000000;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
}

.search-form__input:focus {
  outline: none;
}

.search-form__input:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.search-form__input::placeholder {
  color: #000000;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  opacity: 0.3;
}

.search-form__input:disabled {
  opacity: 0.3;
}

.search-form__button {
  width: 158px;
  cursor: pointer;
  background-color: transparent;
  border: 2px solid #000000;
  border-left: none;
  border-radius: 0 50px 50px 0;
  margin: 0;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  color: #000000;
}

.search-form__button:hover {
  background-color: #000000;
  color: #ffffff;
}

.search-form__button:focus {
  outline: none;
}

.search-form__button:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.search-form__button:active {
  background-color: #000000;
  color: rgba(255, 255, 255, 0.3);
}

.search-form__button:disabled {
  opacity: 0.3;
}

.user-menu__list {
  display: flex;
  align-items: center;
  margin-left: auto;
  flex-wrap: wrap;
  width: 242px;
  justify-content: space-between;
}

.page-header__site-navigation {
  display: flex;
  align-items: baseline;
}

.site-navigation__product-catalog {
  position: relative;
  width: 293px;
  margin-right: auto;
  padding: 2px 0;
  height: 51px;
  display: flex;
  align-items: center;
  margin-top: -15px;
  background: transparent;
  border: none;
}

.site-navigation__product-catalog::after {
  content: url("../img/icons/black-plus-icon.svg");
  position: absolute;
  right: 0;
  opacity: 0.3;
}

.site-navigation__product-catalog:focus::after {
  content: url("../img/icons/minus-icon.svg");
}

.site-navigation__product-catalog:hover::after {
  opacity: 1;
}

.site-navigation__product-catalog:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
  border: none;
  outline: none;
}

.popover {
  margin: 0;
  position: absolute;
  display: none;
}

.popover--open {
  display: block;
}

.popover-product-catalog {
  left: 0;
  top: 190px;
  width: 100%;
  z-index: -1;
  padding: 33px 60px 60px 58px;
  background-color: #ffe17f;
}

.popover-product-catalog .popover__list {
  display: grid;
  grid-template-columns: repeat(3, max-content);
  column-gap: 61px;
  row-gap: 10px;
}

.popover-product-catalog .popover__item:last-child {
  grid-row: 3 / 4;
}

.popover-product-catalog .popover__item:hover {
  opacity: 0.6;
}

.popover-product-catalog .popover__item:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.popover-product-catalog .popover__item:active {
  opacity: 0.3;
}

.popover-basket {
  right: -15px;
  top: 125px;
  background-color: #000000;
  width: 320px;
  padding-bottom: 20px;
}

.popover-basket::after {
  content: "";
  width: 14px;
  height: 6px;
  background-image: url("../img/icons/angular.svg");
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -6px;
}

.popover-basket .popover__product-name {
  margin: 0;
  width: min-content;
  line-height: 20px;
  color: #ffffff;
}

.popover-basket .popover__list {
  width: 100%;
  position: relative;
}

.popover-basket .popover__item {
  display: flex;
  padding: 20px;
  width: 100%;
  border-bottom: 1px solid #1a1a1a;
}

.popover-basket .popover__item--close {
  display: none;
}

.popover-basket .popover__link {
  display: flex;
}

.popover-basket .popover__link:hover {
  opacity: 0.6;
}

.popover-basket .popover__link:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.popover-basket .popover__link:active {
  opacity: 0.3;
}

.popover-basket .popover__image {
  margin-right: 23px;
}

.popover-basket .popover__close-button {
  width: 10px;
  height: 10px;
  margin-left: auto;
  align-self: flex-start;
  background-color: transparent;
  border: none;
  background-image: url("../img/icons/close-button.svg");
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
}

.popover-basket .popover__close-button:hover {
  opacity: 0.6;
}

.popover-basket .popover__close-button:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.popover-basket .popover__close-button:active {
  opacity: 0.3;
}

.popover-basket .popover__info {
  background-color: #1a1a1a;
  display: flex;
  padding: 12px 20px;
  align-items: center;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 20px;
}

.popover-basket .popover__products-quantity,
.popover-basket .popover__sum {
  color: #ffffff;
  line-height: 20px;
}

.popover-basket .popover__button {
  padding: 15px 25px;
  background-color: #ffffff;
  color: #000000;
  font-weight: 800;
  font-size: 16px;
  line-height: 21px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  border: none;
  width: 280px;
  cursor: pointer;
  margin-left: 20px;
  display: block;
  text-align: center;
}

.popover-basket .popover__button:hover {
  background-color: #ffe17f;
}

.popover-basket .popover__button:focus-visible {
  border: 0;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.popover-basket .popover__button:active {
  color: rgba(0, 0, 0, 0.3);
}

.page-header__list {
  width: 592px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.popover__link {
  color: #000000;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 18px;
}

.page-header__list .site-navigation__item {
  margin-left: 45px;
}

.page-header__list .site-navigation__link {
  padding: 2px 0;
}

.page-header__list .site-navigation__link:hover {
  opacity: 0.6;
}

.page-header__list .site-navigation__link:focus {
  outline: none;
  border: none;
}

.page-header__list .site-navigation__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.page-header__list .site-navigation__link:active {
  opacity: 0.3;
}

.main-content__container {
  width: 1160px;
  margin: 0 auto;
}

.products-slider {
  background-image: linear-gradient(180deg, #ffe17f 137px, #ffffff 1px);
  position: relative;
}

.products-slider__list {
  padding: 0;
  margin: 0;
  position: relative;
}

.products-slider__item {
  display: none;
  position: relative;
  z-index: 0;
}

.products-slider__item--active {
  display: flex;
  justify-content: space-between;
}

.products-slider__item:nth-child(1)::after {
  content: "01";
  color: #ffffff;
  position: absolute;
  font-size: 180px;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  right: 49px;
  top: 70px;
  z-index: -1;
}

.products-slider__item:nth-child(2)::after {
  content: "02";
  color: #ffffff;
  position: absolute;
  font-size: 180px;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  right: 49px;
  top: 61px;
  z-index: -1;
}

.products-slider__item:nth-child(3)::after {
  content: "03";
  color: #ffffff;
  position: absolute;
  font-size: 180px;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  right: 49px;
  top: 61px;
  z-index: -1;
}

.products-slider {
  margin-top: -18px;
  position: relative;
  margin-bottom: 62px;
}

.products-slider__gallery {
  position: relative;
  width: 560px;
  margin-top: -12px;
}

.products-slider__post-btn,
.products-slider__pre-btn {
  position: absolute;
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.products-slider__pre-btn {
  left: 25px;
  bottom: 294px;
}

.products-slider__post-btn {
  right: -5px;
  bottom: 296px;
  transform: rotate(180deg);
}

.products-slider__post-btn:hover,
.products-slider__pre-btn:hover {
  opacity: 0.6;
}

.products-slider__post-btn:focus,
.products-slider__pre-btn:focus {
  outline: none;
  border: none;
}

.products-slider__post-btn:focus-visible,
.products-slider__pre-btn:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.products-slider__post-btn:active,
.products-slider__pre-btn:active {
  opacity: 0.3;
}

.products-slider__card {
  position: relative;
  width: 560px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 71px;
}

.products-slider__description {
  padding: 0;
  margin: 0;
  margin-bottom: 29px;
}

.products-slider__text {
  margin: 0;
  margin-bottom: 46px;
}

.products-slider__link {
  align-self: flex-start;
  padding: 14px 40px 14px 40px;
  margin-bottom: 49px;
}

.products-slider__link:focus {
  outline: none;
  border: none;
}

.products-slider__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.products-slider__info {
  display: flex;
  margin: 0;
  padding: 0;
}

.products-slider__info-wrapper:not(:last-child) {
  margin-right: 20px;
}

.products-slider__info-text {
  margin: 0;
  margin-top: 15px;
  font-size: 16px;
}

.products-slider__buttons-list {
  position: absolute;
  right: 0;
  bottom: 179px;
  display: flex;
}

.product-slider__button {
  margin-left: 20px;
}

.product-slider__button:focus-visible {
  outline: none;
  border: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.services {
  background-image: linear-gradient(180deg, white 105px, #f0f0f0 1px);
  margin-bottom: 70px;
}

.services__wrapper {
  display: flex;
  align-items: center;
  padding-bottom: 72px;
  width: 1160px;
  margin: 0 auto;
}

.services__list {
  align-self: center;
}

.services__slider {
  display: flex;
  flex-direction: column;
  width: 287px;
  margin-right: 115px;
  border-right: 7px solid black;
}

.services__button {
  width: 153px;
  padding: 10px 18px;
  cursor: pointer;
  margin-bottom: 35px;
}

.services__button:first-child {
  margin-top: 65px;
}

.services__button:last-child {
  margin-bottom: 65px;
}

.services__button:focus {
  border: none;
  outline: none;
}

.services__button:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.services__button--active {
  color: #ffe17f;
  background-color: #000000;
  width: 100%;
  text-align: left;
}

.services__button--active::before {
  content: none;
}

.services__button--active:hover {
  color: rgba(255, 225, 127, 0.5);
}

.services__button--active:active {
  color: rgba(255, 225, 127, 0.3);
}

.services__text {
  margin: 0;
  margin-top: 34px;
}

.services__item {
  min-width: 694px;
  max-width: 729px;
  height: 188px;
  display: none;
  text-align: left;
  position: relative;
  top: 5px;
}

.services__item:nth-child(1) {
  background-image: url("../img/icons/delivery.svg");
  background-repeat: no-repeat;
  background-position: right center;
}

.services__item:nth-child(2) {
  background-image: url("../img/icons/guarantee.svg");
  background-repeat: no-repeat;
  background-position: right center;
}

.services__item:nth-child(3) {
  background-image: url("../img/icons/credit.svg");
  background-repeat: no-repeat;
  background-position: right center;
}

.services__text {
  max-width: 479px;
}

.services__item--active {
  display: block;
}

.delivery-info {
  display: flex;
  align-items: center;
  margin-bottom: 70px;
  background-color: #f0f0f0;
  padding-right: 40px;
}

.delivery-info__image-wrapper {
  min-width: 125px;
  height: 100px;
  background-color: #ffe17f;
  display: flex;
  justify-content: center;
  align-items: center;
}

.delivery-info__text {
  flex-grow: 1;
  text-align: center;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 20px;
  line-height: 24px;
  color: #000000;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  margin-left: -40px;
}

.delivery-info__icon {
  opacity: 0.3;
}

.delivery-info:hover .delivery-info__image-wrapper {
  background-color: #ffc700;
}

.delivery-info:hover .delivery-info__icon {
  opacity: 1;
}

.delivery-info:focus {
  border: none;
  outline: none;
}

.delivery-info:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.delivery-info:active {
  opacity: 0.3;
}

.additional-info {
  display: flex;
  margin-bottom: 70px;
  flex-wrap: wrap;
}

.site-info,
.contacts {
  position: relative;
}

.site-info::before,
.contacts::before {
  content: '';
  background-color: #000000;
  width: 84px;
  height: 7px;
  position: absolute;
  top: 0;
  left: 0;
}

.site-info {
  max-width: 520px;
  margin-right: auto;
}

.contacts {
  width: 532px;
}

.site-info__title,
.contacts__title {
  margin: 48px 0;
}

.site-info__text,
.contacts__text {
  margin: 0;
  margin-bottom: 30px;
}

.site-info__link {
  padding: 10px 25px;
}

.contacts__link {
  padding: 10px 35px;
}

.newsletter-subscribe__header {
  padding-top: 61px;
  margin-bottom: 138px;
  display: flex;
  align-items: flex-start;
}

.newsletter-subscribe__title {
  margin-right: auto;
}

.newsletter-subscribe__text {
  width: 560px;
  margin: 0;
  align-self: flex-end;
}

.newsletter-subscribe__body {
  display: flex;
  padding-bottom: 56px;
}

.newsletter-subscribe__form {
  min-width: 810px;
  display: flex;
}

.newsletter-subscribe__input {
  background: transparent;
  border: none;
  border-bottom: 3px solid #c4c4c4;
  padding: 11px 0 11px 16px;
  flex-grow: 1;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
}

.newsletter-subscribe__input::placeholder {
  color: #444444;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  opacity: 0.5;
}

.newsletter-subscribe__input:focus {
  outline: none;
  background-color: #dcdcdc;
}

.newsletter-subscribe__btn {
  background: transparent;
  border: 3px solid #cecece;
  font-size: 18px;
  line-height: 21px;
  padding: 18px 39px;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  cursor: pointer;
  width: 253px;
  color: #000000;
}

.newsletter-subscribe__btn:hover {
  background-color: #000000;
  color: #ffffff;
  border: 3px solid #000000;
}

.newsletter-subscribe__btn:focus {
  outline: none;
}

.newsletter-subscribe__btn:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.newsletter-subscribe__btn:active {
  color: rgba(255, 255, 255, 0.6);
  border: 3px solid #cecece;
}

.newsletter-subscribe__span {
  margin-left: auto;
  align-self: center;
  padding-left: 32px;
  background-image: url("../img/icons/tick-big.svg");
  background-repeat: no-repeat;
  background-position: left center;
}

.page-footer__container {
  width: 1160px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  padding: 62px 0;
  position: relative;
}

.page-footer__container::before {
  content: '';
  width: 80px;
  height: 7px;
  background-color: #ffc700;
  position: absolute;
  bottom: 90px;
  left: 0;
}

.page-footer__logo {
  display: block;
  width: 145px;
  margin-right: auto;
  margin-bottom: 35px;
  cursor: pointer;
}

.page-footer__logo:hover {
  opacity: 0.6;
}

.page-footer__logo:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
  border: none;
  outline: none;
}

.page-footer__logo:active {
  opacity: 0.3;
}

.page-footer__body {
  display: flex;
  align-items: flex-start;
  margin-bottom: 47px;
}

.page-footer__adress {
  width: 240px;
  margin: 0;
  margin-right: 112px;
}

.page-footer__list {
  display: flex;
  flex-wrap: wrap;
  width: 592px;
  flex-direction: wrap;
}

.page-footer__list .site-navigation__item:not(:last-child) {
  margin-right: 32px;
}

.page-footer__list .site-navigation__link {
  padding-bottom: 4px;
}

.page-footer__list .site-navigation__link:hover {
  color: #ffc700;
  border-bottom: 2px solid #ffc700;
}

.page-footer__list .site-navigation__link:focus {
  outline: none;
}

.page-footer__list .site-navigation__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.page-footer__list .site-navigation__link:active {
  opacity: 0.3;
}

.page-footer__tel {
  margin-left: auto;
  align-self: center;
  margin-bottom: 9px;
}

.page-footer__tel:hover {
  color: #ffc700;
}

.page-footer__tel:focus {
  outline: none;
}

.page-footer__tel:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.page-footer__tel:active {
  opacity: 0.3;
}

.page-footer__footer {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}

.social-links {
  width: 150px;
  display: flex;
  flex-wrap: wrap;
}

.social-links__item {
  margin-bottom: 15px;
  display: inline-block;
  width: 40px;
  height: 40px;
}

.social-links__item:not(:nth-child(3n)) {
  margin-right: 15px;
}

.page-footer__link {
  margin-left: 390px;
}

.page-footer__link:hover .page-footer__icon {
  fill: #ffffff;
}

.page-footer__link:focus {
  border: none;
  outline: none;
}

.page-footer__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.page-footer__link:active .page-footer__icon {
  fill-opacity: 0.3;
}

.products-catalog {
  display: flex;
  flex-direction: column;
}

.products-catalog__header {
  display: flex;
  flex-direction: column;
}

.products-catalog__header-container {
  width: 1160px;
  padding: 35px 21px 29px 60px;
  margin: 0 auto;
}

.products-catalog__title {
  margin-bottom: 10px;
}

.products-catalog__list {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}

.products-catalog__item:not(:last-child) {
  padding-right: 36px;
  position: relative;
}

.products-catalog__item:not(:last-child)::after {
  content: url("../img/icons/next-arrow.svg");
  position: absolute;
  width: 4px;
  height: 7px;
  right: 16px;
  top: -1px;
}

.products-catalog__body {
  display: flex;
}

.products-filter__price,
.products-filter__color,
.products-filter__bluetooth {
  margin: 0;
  padding: 0;
  border: none;
}

.products-filter {
  display: flex;
  flex-direction: column;
  width: 320px;
  padding: 25px 60px 0 58px;
}

.products-filter__color {
  display: flex;
  flex-direction: column;
  margin-bottom: 33px;
}

.products-filter__bluetooth {
  display: flex;
  flex-direction: column;
  margin-bottom: 33px;
}

.products-filter__bluetooth-label:not(:last-child) {
  margin-bottom: 20px;
}

.bluetooth-title {
  margin-bottom: 20px;
}

.catalog {
  flex-grow: 1;
}

.catalog__header {
  width: 100%;
  padding: 20px 46px 20px 40px;
  display: flex;
  align-items: center;
}

.catalog__title {
  margin-right: 197px;
  max-width: 155px;
}

.catalog__wrapper {
  margin-left: auto;
}

.catalog__sorting-button {
  background-color: transparent;
  border: none;
  cursor: pointer;
}

.sort-icon {
  opacity: 0.2;
}

.catalog__sorting-button:hover .sort-icon {
  opacity: 0.5;
}

.catalog__sorting-button:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__sorting-button:active .sort-icon {
  opacity: 1;
}

.sort-down {
  transform: rotate(180deg);
  padding-top: 3px;
}

.catalog__body {
  width: 100%;
  padding: 70px 40px 78px 40px;
}

.catalog__list {
  display: grid;
  grid-template-columns: repeat(2, 360px);
  gap: 44px 40px;
  margin-bottom: 41px;
}

.catalog__link {
  display: flex;
  flex-direction: column;
}

.catalog__link:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__description-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.catalog__product-name {
  max-width: 226px;
}

.catalog__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.page-selector {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}

.title,
.products-slider__description {
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 50px;
  line-height: 50px;
  color: #000000;
}

.text {
  font-family: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: #444444;
}

.site-navigation__product-catalog,
.site-navigation__link {
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 18px;
  line-height: 21px;
  color: #000000;
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

.page-footer__list .site-navigation__link {
  color: #ffffff;
}

.main-goods {
  margin-bottom: 80px;
}

.main-goods__list {
  display: grid;
  grid-template-columns: repeat(6, 160px);
  gap: 40px;
}

.main-goods__item {
  width: 160px;
}

.products-slider__info-title {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 36px;
  line-height: 30px;
  color: #000000;
}

.product-slider__button {
  padding: 0;
  border: 2px solid #000000;
  background-color: #ffffff;
  width: 12px;
  height: 12px;
  cursor: pointer;
  border-radius: 50%;
}

.product-slider__button--active {
  background-color: #000000;
}

.product-slider__button:hover,
.product-slider__button--active:hover {
  opacity: 0.6;
}

.product-slider__button:active,
.product-slider__button--active:active {
  opacity: 0.3;
}

.main-goods__item {
  width: 164px;
}

.main-goods__image-wrapper {
  width: 160px;
  height: 160px;
  background-color: #ffe17f;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 32px;
}

.main-goods__image-wrapper--selfie-monopodes {
  align-items: flex-end;
}

.main-goods__link {
  display: block;
}

.main-goods__link:hover .main-goods__image-wrapper {
  background-color: #ffc700;
}

.main-goods__link:focus {
  outline: none;
  border: none;
}

.main-goods__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.main-goods__link:active {
  opacity: 0.3;
}

.main-goods__title {
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: inherit;
  line-height: 24px;
  color: #000000;
}

.site-info__list {
  margin: 0;
  margin-bottom: 30px;
}

.site-info__item {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 20px;
  color: #000000;
  padding-left: 38px;
  position: relative;
}

.site-info__item:not(:last-child) {
  margin-bottom: 19px;
}

.site-info__item::before {
  content: "";
  width: 8px;
  height: 8px;
  background-color: #ffc700;
  border-radius: 50%;
  position: absolute;
  left: 4px;
  top: 50%;
  margin-top: -4px;
}

.contacts__name {
  display: block;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 30px;
  color: #444444;
  margin: 0;
  margin-bottom: 15px;
}

.tel {
  font-family: inherit;
  line-height: inherit;
  font-weight: inherit;
  color: #444444;
  text-decoration: underline;
}

.tel:hover {
  opacity: 0.6;
}

.tel:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.tel:active {
  opacity: 0.3;
}

.newsletter-subscribe {
  background-color: #f0f0f0;
}


.page-footer {
  background-color: #444444;
}

.page-footer__adress {
  font-family: inherit;
  font-weight: inherit;
  font-size: 16px;
  line-height: 20px;
  color: #ffffff;
}

.page-footer__tel {
  color: #ffffff;
  font-size: 16px;
  line-height: 20px;
}

.social-links {
  display: flex;
  align-items: center;
}

.social-links__item {
  display: inline-block;
  position: relative;
}

.social-links__link {
  display: block;
}

.social-links__link:hover .social-links__icon-circle {
  fill: #ffc700;
  fill-opacity: 1;
}

.social-links__link:focus {
  outline: none;
  border: none;
}

.social-links__link:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.social-links__link:active .social-links__icon-letter {
  opacity: 0.3;
}

.main-content-catalog {
  background-color: #f0f0f0;
}

.products-catalog__header {
  background-color: #ffffff;
}

.products-catalog__link {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 19px;
  color: #000000;
  text-decoration: none;
}

.products-catalog__link:hover {
  opacity: 0.6;
}

.products-catalog__link:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.products-catalog__link:active {
  opacity: 0.3;
}

.products-filter__main-title,
.catalog__title {
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 16px;
  line-height: 19px;
  color: #000000;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.products-filter__main-title {
  margin-bottom: 60px;
}

.products-filter__title {
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 20px;
  width: 100%;
  padding: 0;
  padding-top: 12px;
  border-top: 2px solid #000000;
}

.price-title {
  margin-bottom: 30px;
}

.range {
  margin-bottom: 35px;
}

.range__scale {
  position: relative;
  width: 100%;
  height: 2px;
  background-color: #dcdcdc;
  margin-bottom: 10px;
}

.range__bar {
  position: absolute;
  height: 2px;
  background-color: #000000;
}

.range__toggle {
  width: 18px;
  height: 18px;
  border: 2px solid #000000;
  background-color: #ebebeb;
  border-radius: 50%;
  position: absolute;
  cursor: pointer;
}

.range__toggle:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.range__toggle:hover {
  opacity: 0.6;
}

.range__toggle:active {
  opacity: 1;
  background-color: #000000;
}

.toggle-min {
  left: -9px;
  top: -8px;
}

.toggle-max {
  right: -9px;
  top: -8px;
}

.range__wrapper-inputs {
  display: flex;
  width: 171px;
  justify-content: space-between;
  margin-left: -13px;
}

.products-filter__range-label {
  display: flex;
  align-items: center;
}

.range__input {
  appearance: textfield;
  background-color: transparent;
  border: none;
  width: 50px;
  font-size: 15px;
  line-height: 18px;
  color: rgba(0, 0, 0, 0.3);
}

.range__input::-webkit-outer-spin-button,
.range__input::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}

.range__span {
  font-size: 15px;
  line-height: 18px;
  color: #000000;
  opacity: 0.3;
  margin-right: 4px;
}

.products-filter__checkbox-text,
.products-filter__radio-text {
  padding-left: 16px;
  cursor: pointer;
}

.control {
  display: flex;
  align-items: center;
}

.control__mark {
  min-width: 20px;
  height: 20px;
  border: 2px solid black;
  border-radius: 3px;
  cursor: pointer;
  position: relative;
}

.products-filter__checkbox:checked + .control__mark {
  background-image: url("../img/icons/check-mark.svg");
  background-position: center center;
  background-repeat: no-repeat;
}

.products-filter__radio:checked + .control__mark-range::after {
  content: "";
  width: 8px;
  height: 8px;
  position: absolute;
  top: 25%;
  left: 25%;
  background-color: #000000;
  border-radius: 50%;
}

.products-filter__checkbox:disabled + .control__mark,
.products-filter__radio:disabled + .control__mark-range {
  opacity: 0.1;
}

.products-filter__checkbox:disabled ~ .products-filter__checkbox-text,
.products-filter__radio:disabled ~  .products-filter__radio-text{
  opacity: 0.1;
}

.control:hover {
  opacity: 0.6;
}

.control:active {
  opacity: 0.3;
}

.control__mark-range {
  border-radius: 50%;
}

.color-title {
  margin-bottom: 20px;
}

.products-filter__label:not(:last-child) {
  margin-bottom: 17px;
}

.products-filter__checkbox-text,
.products-filter__radio-text {
  font-family: "Rubik", "Arial", sans-serif ;
  font-weight: 400;
  font-size: 16px;
  line-height: 19px;
  color: #000000;
}

.products-filter__button {
  width: 220px;
  padding: 10px 0;
  cursor: pointer;
}

.catalog__body {
  background-color: #ffffff;
}

.catalog__item {
  position: relative;
}

.catalog__image {
  background-color: #f0f0f0;
  margin-bottom: 32px;
}

.catalog__image-info {
  width: 360px;
  height: 380px;
  position: absolute;
  background-color: rgba(240, 240, 240, 0.8);
  top: 0;
  display: none;
  justify-content: center;
  align-items: center;
}

.catalog__image-link {
  padding: 0 40px;
  padding-top: 2px;
}

.catalog__item:focus-visible {
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__item:hover .catalog__image-info {
  display: flex;
}

.catalog__item:active .catalog__image-link::before {
  background-color: #ffc700;
}

.catalog__item:hover .catalog__product-name {
  opacity: 0.6;
}

.catalog__item:active .catalog__product-name {
  opacity: 0.3;
}

.catalog__item:active .catalog__price {
  opacity: 0.3;
}

.catalog__product-name {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 20px;
  color: #000000;
}

.catalog__select {
  background-color: transparent;
  border: none;
  padding: 5px 20px 5px 0;
  font-size: 18px;
  line-height: 30px;
  max-width: 160px;
}

.catalog__select:hover {
  opacity: 0.6;
}

.catalog__select:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__select:active {
  opacity: 0.3;
}

.catalog__price {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 21px;
  color: #444444;
}

.catalog__button {
  border: 3px solid #e5e5e5;
  text-align: center;
  background-color: #ffffff;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 16px;
  line-height: 19px;
  letter-spacing: 0.2em;
  color: #000000;
  cursor: pointer;
  text-transform: uppercase;
  margin-bottom: 40px;
  width: 100%;
  padding: 18px 0;
}

.catalog__button:hover {
  color: #000000;
  border: 3px solid #000000;
}

.catalog__button:focus-visible {
  outline: none;
  border: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__button:active {
  opacity: 0.3;
}

.catalog__footer {
  background-color: #ebebeb;
}

.catalog__pre-button,
.catalog__post-button {
  font-size: 18px;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  line-height: 21px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #000000;
  background-color: transparent;
  border: none;
  cursor: pointer;
  padding: 25px;
}

.catalog__pre-button:hover,
.catalog__post-button:hover {
  background-color: #dcdcdc;
}

.catalog__pre-button:focus-visible,
.catalog__post-button:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.catalog__pre-button:active,
.catalog__post-button:active {
  color: rgba(0, 0, 0, 0.3);
}

.page-selector__link {
  font-size: 16px;
  line-height: 20px;
  color: rgba(68, 68, 68, 0.3);
  padding: 10px 15px;
}

.page-selector__link:hover {
  color: rgba(68, 68, 68, 1);
}

.page-selector__link:focus-visible {
  border: 0;
  outline: 0;
  box-shadow: 0 0 0 2px #af4fff;
}

.page-selector__link:active {
  opacity: 0.1;
}

.modal-container {
  display: flex;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: rgba(240, 240, 240, 0.9);
  z-index: 999;
}

.modal--close {
  display: none;
}

.modal {
  position: relative;
  margin: auto;
  background-color: #ffffff;
  padding: 72px 80px;
}

.modal-delivery-form {
  width: 920px;
  border: 10px solid #000000;
}

.modal__close-button {
  background-color: transparent;
  border: none;
  width: 26px;
  height: 26px;
  background-image: url("../img/icons/modal-close-btn.svg");
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: 84px;
  right: 80px;
  cursor: pointer;
}

.modal__close-button:hover {
  opacity: 0.6;
}

.modal__close-button:focus {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.modal__close-button:active {
  opacity: 0.3;
}

.modal__title {
  color: #000000;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 800;
  font-size: 50px;
  line-height: 50px;
  margin-bottom: 42px;
}

.modal__form {
  display: flex;
  flex-direction: column;
}

.modal__upper-inputs {
  margin-bottom: 42px;
  display: flex;
}

.modal__lower-inputs {
  margin-bottom: 42px;
  display: flex;
  align-items: flex-end;
}

.modal__label {
  display: flex;
  flex-direction: column;
}

.modal__label:not(:last-child) {
  margin-right: 42px;
}

.modal__button {
  align-self: flex-start;
  width: 200px;
  padding: 10px 5px;
}

.modal__label-title {
  margin-bottom: 14px;
  color: #000000;
  font-family: "Raleway", "Arial", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 20px;
  letter-spacing: -0.02em;
}

.modal__input {
  border: none;
  background-color: #f0f0f0;
  color: #000000;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
}

.modal__input:focus {
  box-shadow: 0 0 0 2px #af4fff;
  border: none;
  outline: none;
}

.modal__input:hover {
  background-color: #dcdcdc;
}

.modal__input:disabled {
  opacity: 0.3;
}

.modal__upper-inputs .modal__input {
  width: 360px;
}

.product-name-input {
  width: 540px;
}

.modal__input:not(.quantity-input) {
  padding: 20px;
  padding-right: 45px;
}

.modal__input::placeholder {
  color: rgba(0, 0, 0, 0.3);
}

.modal__input-span {
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: #000000;
}

.error {
  box-shadow: 0 0 0 2px #ff3d3d;
}

.error-span {
  color: #ff3d3d;
  box-shadow: none;
  font-size: 14px;
  line-height: 20px;
}

.error {
  display: block;
}

.modal__label-title {
  display: flex;
  align-items: center;
}

.modal__info {
  background-color: transparent;
  width: 26px;
  height: 26px;
  border: none;
  background-image: url("../img/icons/info-button.svg");
  background-repeat: no-repeat;
  background-position: center center;
  margin-left: 8px;
}

.modal__info:focus {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.modal__info:hover + .popover-info {
  display: block;
}

.modal__info:focus + .popover-info {
  display: block;
}

.modal__quantity-wrapper {
  display: flex;
  flex-direction: column;
}

.modal__quantity-input {
  display: flex;
  background-color: #f0f0f0;
}

.quantity-input {
  width: 60px;
  height: 60px;
  text-align: center;
  appearance: textfield;
  margin-right: 2px;
}

.quantity-input::-webkit-outer-spin-button,
.quantity-input::-webkit-inner-spin-button {
  appearance: none;
  margin: 0;
}

.modal__minus-btn,
.modal__plus-btn {
  width: 60px;
  height: 60px;
  border: none;
}

.modal__minus-btn:hover,
.modal__plus-btn:hover {
  opacity: 0.6;
}

.modal__minus-btn:focus-visible,
.modal__plus-btn:focus-visible {
  border: none;
  outline: none;
  box-shadow: 0 0 0 2px #af4fff;
}

.modal__minus-btn:active,
.modal__plus-btn:active {
  opacity: 0.3;
}

.modal__minus-btn {
  background-image: url("../img/icons/minus.svg");
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
  margin-right: 2px;
}

.modal__plus-btn {
  background-image: url("../img/icons/plus.svg");
  background-repeat: no-repeat;
  background-position: center center;
  cursor: pointer;
}

.name-input {
  background-image: url("../img/icons/person-icon.svg");
  background-repeat: no-repeat;
  background-position: right 21px center;
}

.email-input {
  background-image: url("../img/icons/email.svg");
  background-repeat: no-repeat;
  background-position: right 21px center;
}

.popover-info {
  width: 200px;
  height: 160px;
  padding: 19px;
  padding-bottom: 0;
  background-color: #000000;
  color: #ffffff;
  right: 62.5px;
  bottom: 55px;
}

.popover-info .popover__text {
  margin: 0;
  font-family: "Rubik", "Arial", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
}

.popover-info::after {
  content: "";
  background-image: url("../img/icons/angular.svg");
  position: absolute;
  width: 14px;
  height: 6px;
  top: -6px;
  right: 40px;
}

