/*::::::::::::::::::::::::::::::Custom revome after ::::::::::::::::::::::::::::::::::*/
.block_content {
  display: block;
  flex: 1 0 auto;
}

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  max-width: 1440px;
}
.container-embed {
  margin-top: 30px;
  margin-bottom: 100px;
} 


.catalog-group {
  display: flex;
  flex-wrap: wrap; 
  justify-content: flex-start; 
  gap: 16px;
}

.catalog-group-item {
  border-radius: 10px;
  overflow: hidden; 
  position: relative; 
  flex: 0 1 calc(33.333% - 16px); 
  height: 190px; 
  box-sizing: border-box; 
}

@media (max-width: 1024px) { 
  .catalog-group-item {
      flex: 0 1 calc(50% - 16px);
  }
}

@media (max-width: 768px) { 
  .catalog-group-item {
      flex: 0 1 100%;
  }
  .catalog h1 {
    line-height: 40px;
  }
}

.catalog-group-item_image {
  width: 100%; 
  height: 100%; 
  object-fit: cover; 
}

.catalog-group-item_link {
  display: block;
  background-size: cover;
  background-position: center;
  border-radius: 15px;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  color: #fff;
  height: 190px;
  filter: grayscale(100%)
}

.catalog-group-item_link:hover {
  color: var(--accent);
  filter: grayscale(10%)
}

.catalog-group-item_title {
  padding: 5px;
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 999;
  font-weight: 700;
  text-transform: uppercase;
  text-shadow: #000 1px 0 10px
}

.invalid {
  border: 1px solid red;
}
input[name="form_input"] {
  display: none;
}

/* .no-scroll {
  overflow: hidden;
  overflow-y: scroll !important;
  position: fixed; 
  height: 100vh;
  width: 100vw;
  top: 0; 
  left: 0; 
  padding-right: 15px; 
} */

.no-scroll {
  overflow: hidden;
  /* height: 100%; */
  overflow-y: scroll !important;
  width: 100%;
  /* top: 0;  */
  /* left: 0; */
}

.txt--bld60 {
  color: #1E232D;
  font-size: 60px;
  font-weight: 700;
  line-height: 125%;
  text-transform: uppercase;
  margin-top: 0px;
  margin-bottom: 60px;
}
.txt--bld40 {
  color: #1E232D;
  font-size: 40px;
  font-weight: 700;
  line-height: 125%;
  text-transform: uppercase;
  margin-top: 0px;
  margin-bottom: 60px;
}

.txt--bld36 {
  color: #1E232D;
  font-size: 36px;
  font-weight: 700;
  line-height: 125%;
  text-transform: uppercase;
  margin: 0px;
}

@media only screen and (max-width:980px) {
  .txt--bld60 {
    font-size: 30px;
  }
  .txt--bld40 {
    font-size: 20px;
  }
  .txt--bld36 {
    font-size: 24px;
  }
  .container-embed {
    margin-top: 10px;
  }
}

.modal-basket__basket-product-list {
  flex: 1; /* Allow this section to grow and fill available space */
  overflow-y: auto; /* Enable vertical scrolling */
}
.modal-basket__section {
  display: none;
}
.modal-basket__basket-item {
  display: none;
}

.modal-basket__section.show-section {
  display: block
}

.modal-basket__basket-item.show-section {
  display: block
}
.modal-basket__body {
  padding: 80px 0;
}
.modal-basket__buttons {
  margin-top: 30px;
}


.fade-in {
  -webkit-animation: .2s both fadeIn;
  animation: .2s both fadeIn
}
.active {
  display: block
}

/*::::::::::::::::::::::::::::::Breadcrumbs ::::::::::::::::::::::::::::::::::*/

.container-breadcrumbs {
  overflow-x: auto; 
  white-space: nowrap;
  padding: 20px 0;
  margin: 150px 0 0 0;
}

.breadcrumbs {
  display: flex;
  list-style-type: none;
  padding: 0;
  font-size: 16px;
}

.breadcrumbs li {
  margin-right: 10px
}
.breadcrumbs li:not(:last-child)::after {
  content: ' / ';
  margin-left: 10px;
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
  .container-breadcrumbs {
    margin: 50px 0 0 0;
  }
}
/*::::::::::::::::::::::::::::::Contact page ::::::::::::::::::::::::::::::::::*/

.contacts {
  background-color: var(--dark-background);
  color: var(--normal);
  padding-top: 100px
}

.contacts-line {
  width: 100%;
  height: 1px;
  background-color: var(--normal);
  position: fixed
}

.contacts-cols {
  display: flex;
  width: 100%;
  justify-content: space-between
}

#contacts-form {
  display: flex;
  flex-direction: column;
  max-width: 430px;
  margin-top: 56px
}

#contacts-form input[type=tel],
#contacts-form input[type=text] {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid var(--normal);
  padding: 8px 0;
  /* color: var(--normal); */
  color: var(--dark-background);
  margin-bottom: 15px;
  outline: 0
}

.contacts-right {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  width: calc(100% / 2)
}

.contacts-right-item_caption {
  font-size: 32px;
  text-transform: uppercase
}

.contacts-right-item_descr {
  font-size: 20px;
  max-width: 254px;
  display: flex;
  gap: 20px;
  margin-top: 22px;
  align-items: center
}

.contacts-right-item_descr img {
  width: 25px;
  height: 25px
}

#contacts-form span {
  color: #767676;
  font-size: 16px
}

.contacts-form-link {
  text-decoration: underline
}

#contacts-btn {
  margin-top: 60px;
  max-width: 180px;
  color: var(--normal);
  text-transform: uppercase
}

.contacts-map {
  width: 100%;
  margin-top: 150px
}

@media (max-width:1180px) {
  #contacts-form {
      max-width: 400px
  }
  .contacts-right-item_caption {
      font-size: 28px
  }
  .contacts-right-item_descr {
      max-width: 220px
  }
  #contacts-btn {
      margin-top: 40px
  }
  .contacts-map {
      margin-top: 100px
  }
  #contacts-form input[type=tel],
  #contacts-form input[type=text] {
      border-radius: 0
  }
}

@media (max-width:980px) {
  .contacts {
      padding-top: 20px
  }
  .contacts-line {
      display: none
  }
  .contacts-cols {
      flex-direction: column-reverse
  }
  .contacts-right {
      grid-template-columns: 1fr;
      grid-template-rows: repeat(4, 1fr);
      width: 100%;
      justify-content: center;
      align-items: center;
      margin-top: 50px;
      gap: 45px
  }
  .contacts-right-item_caption {
      text-align: center
  }
  .contacts-right-item_descr {
      max-width: 100%;
      gap: 10px;
      margin-top: 18px;
      justify-content: center
  }
  .contacts-right-item_descr p {
      font-size: 20px
  }
  .contacts-right-item_descr p>a {
      font-size: 20px
  }
  #contacts-form {
      margin-top: 80px
  }
  #contacts-btn {
      max-width: 100%
  }
}

.delivery-info {
  display: grid;
  grid-template-columns: 60% 40%;
  grid-template-rows: auto auto;
  grid-gap: 10px;
  margin-top: 50px
}

.delivery-info-conditions {
  padding: 35px;
  border: 1px solid #e7e7e7;
  border-radius: 20px
}

.delivery-info-conditions-caption {
  font-size: 30px;
  font-weight: 700
}

.delivery-info-conditions-descr {
  margin-top: 50px
}

.delivery-info-conditions_flex {
  display: flex;
  justify-content: space-between;
  padding: 0 40px
}

.grid-full {
  grid-column: 1/-1;
  margin-top: 5px
}

.delivery-item {
  display: flex;
  flex-direction: column;
  max-width: 210px
}

.delivery-item-badge {
  width: 50px;
  height: 50px;
  background-color: var(--dark-background);
  color: var(--normal);
  border-radius: 50%;
  font-size: 30px;
  display: flex;
  justify-content: center;
  align-items: center
}

.delivery-item-caption {
  margin-top: 10px;
  font-weight: 700
}

.delivery-item-descr {
  margin-top: 10px;
  font-size: 16px
}

.delivery-map {
  margin: 70px 0;
  text-align: center;
  padding: 0 10%;
  position: relative;
  height: 600px;
  width: 80%
}

.map {
  position: absolute;
  z-index: 5
}

.mobile-map {
  display: none
}

.map-dist {
  transition: all .5s ease-out
}

.map-dist:hover {
  fill: var(--accent)
}

.tooltip {
  display: none;
  position: absolute;
  max-width: 220px;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 4px;
  padding: 4px 8px;
  z-index: 10;
  box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
  transition: all .5s ease-out;
  font-size: 14px
}

@media (max-width:980px) {
  .delivery-info {
      display: flex;
      flex-direction: column;
      margin: 20px 0;
      gap: 20px;
      align-items: center;
      justify-content: center;
      width: 100%
  }
  .delivery-info-conditions {
      border: none;
      padding: 0
  }
  .delivery-info-conditions_flex {
      flex-direction: column;
      justify-content: space-around;
      text-align: center;
      padding: 0;
      gap: 25px
  }
  .delivery-info-conditions-caption {
      font-size: 25px
  }
  .delivery-info-conditions-descr {
      margin-top: 15px
  }
  .delivery-item {
      max-width: 100%;
      align-items: center;
      justify-content: center
  }
  .delivery-item-caption {
      font-size: 18px
  }
  .delivery-map {
      height: calc(100%);
      width: 100%
  }
  .map {
      display: none
  }
  .mobile-map {
      display: block;
      width: 100%
  }
}

@font-face {
  font-family: 'Noah';
  src: url('../fonts/Noah-Bold.ttf') format('truetype'),
      url('../fonts/Noah-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'Noah';
  src: url('../fonts/Noah-Regular.otf') format('opentype'),
      url('../fonts/Noah-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Noah';
  src: url('../fonts/Noah-BoldItalic.otf') format('opentype'),
      url('../fonts/Noah-BoldItalic.ttf') format('truetype');
  font-weight: 700;
  font-style: italic;
}

@font-face {
  font-family: 'Noah';
  src: url('../fonts/Noah-RegularItalic.otf') format('opentype'),
      url('../fonts/Noah-RegularItalic.ttf') format('truetype');
  font-weight: 400;
  font-style: italic;
}
/* @font-face {
  font-family: Noah;
  src: url(../fonts/Noah-Bold.ttf) format('ttf'), url(../fonts/Noah-Bold.otf) format('otf');
  font-weight: 700;
  font-style: normal
}

@font-face {
  font-family: Noah;
  src: url(../fonts/Noah-Regular.otf) format('otf'), url(../fonts/Noah-Regular.ttf) format('ttf');
  font-weight: 400;
  font-style: normal
}

@font-face {
  font-family: Noah;
  src: url(../fonts/Noah-BoldItalic.otf) format('otf'), url(../fonts/Noah-BoldItalic.ttf) format('ttf');
  font-weight: 700;
  font-style: italic
}

@font-face {
  font-family: Noah;
  src: url(../fonts/Noah-RegularItalic.otf) format('otf'), url(../fonts/Noah-RegularItalic.ttf) format('ttf');
  font-weight: 400;
  font-style: italic
} */

:root {
  --background-color: #ffffff;
  --dark-background: #1f1f1f;
  --accent: #3975ef;
  --hover: #767676;
  --normal: #e7e7e7;
  --primary-font: "Noah", sans-serif;
  --white:#ffffff;
  --black:#000000;
}

button {
  background-color: var(--accent);
  border: none;
  border-radius: 4px;
  padding: 0 9px;
  height: 44px;
  border: 1px solid var(--accent);
  color: var(--normal);
  cursor: pointer;
}

button:hover {
  background-color: transparent;
  color: var(--accent)
}

a:hover {
  opacity: .8
}

/* header {
  background-color: var(--dark-background);
  color: var(--normal);
  position: sticky;
  top: 0;
  height: 99px;
  width: 100%;
  z-index: 99
} */

header {
  background-color: var(--white);
  /* color: var(--black); */
  position: fixed;
  top: 0;
  height: 99px;
  width: 100%;
  z-index: 99;
}


.header-mobile {
  display: none
}

.logo a:hover {
  opacity: 1
}

h1 {
  /* margin-top: 30px;
  margin-bottom: 10px; */
  font-size: 40px;
  font-weight: 700;
  line-height: 125%;
  letter-spacing: 0;
  text-transform: uppercase
}

/* .container {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 1440px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px
} */



.header-items {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%
}

.nav-menu {
  text-transform: uppercase
}

.nav-menu ul {
  list-style-type: none;
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  font-weight: 700;
  font-size: 16px
}

.recall {
  display: flex;
  gap: 25px;
  align-items: center;
  justify-content: space-between
}

.recall-block {
  font-size: 16px;
  margin-left: 15px
}

#recall-button {
  font-size: 16px;
  font-weight: 700;
  border: 1px solid var(--accent)
}

.location-trigger {
  display: flex;
  gap: 9px
}

.nav-icons {
  display: flex;
  gap: 20px;
  position: relative;
}

.icon {
  position: relative;
  width: 42px;
  height: 42px;
  background: var(--normal);
  border-radius: 50%;
  display: block;
  cursor: pointer
}


.icon:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 22px;
  background: no-repeat center/contain url(../icons/callback.svg);
  transform: translate(-50%, -50%)
}

.cart-badge {
  position: absolute;
  top: -5px;
  right: -5px;
  width: 20px;
  height: 20px;
  background-color: var(--accent);
  color: white;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 12px;
}

.cart-icon.has-items .cart-badge {
  display: flex;
}

.cart-icon:not(.has-items) .cart-badge {
  display: none;
}

.search-icon:before {
  background: no-repeat center/contain url(../icons/search.svg)
}

.cart-icon::before {
  background: no-repeat center/contain url(../icons/cart.svg)
}

.icon:hover {
  border: 1px solid var(--normal);
  background: transparent;
}

/* .icon-callback:hover:before {
  background: no-repeat center/contain url(../icons/callback-hover.svg)
}

.search-icon:hover:before {
  background: no-repeat center/contain url(../icons/search-hover.svg)
}

.cart-icon:hover:before {
  background: no-repeat center/contain url(../icons/cart-hover.svg)
} */

/* .searchbox {
  position: absolute;
  top: 29px; 
  right: 60px; 
  width: 450px; 
  outline: none;
  display: none;
} */

.searchbox {
  position: absolute;
  right: 45px;
  width: 450px;
  outline: none;
  display: none;
}

.searchbox.show {
  display: block
}

.searchbox-offers {
  display: none;
  width: 96%;
  height: min-content;
  background-color: white;
  flex-direction: column;
  gap: 10px;
  border-radius: 0px 0px 16px 16px;
  padding: 44px 22px 22px 22px;
  margin-top: -20px;
  margin-left: 10px;
  box-shadow: -1px 6px 8px 0px rgba(34, 60, 80, 0.2);
  color: black;
}

.searchbox-offers.show {
  display: flex;
}

.searchbox-offers-btn {
  justify-self: center;
  align-self: center;
  margin-top: 20px;
  border: 1px solid var(--accent);
  color: var(--accent);
  border-radius: 4px;
  padding: 10px 25px;
}

.searchbox-offers>p {
  display: block;
  font-size: 14px;
  line-height: 21px;
  letter-spacing: 2%;
}



.searchbox input[type=search] {
  position: relative;
  width: 100%;
  height: 45px;
  border: 1px solid #E7E7E7;
  border-radius: 60px;
  padding: 0 54px 0 23px;
  font-size: 14px;
  color: var(--hover);
  letter-spacing: 0.28px;
  z-index: 20;
  outline: none;
}

.searchbox button {
  position: absolute;
  top: 2px;
  right: 40px;
  width: 36px;
  height: 36px;
  background: no-repeat center/contain url(../icons/search.svg);
  background-size: 15px;
  border: 0;
  background-color: var(--normal);
  cursor: pointer;
  padding: 0;
  border-radius: 50%;
  z-index: 30;
  outline: 0
}

.hidden {
  display: none
}

.search-close {
  position: absolute;
  top: 8px;
  right: 10px;
  width: 24px;
  height: 24px;
  background: no-repeat center url(../icons/search-close.svg);
  z-index: 30;
  cursor: pointer
}

.main {
  padding-top: 100px
}

.footer-container {
  position: relative;
  width: 100%;
  /* height: 100%; */
  max-width: 1440px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px
}

footer {
  background-color: var(--dark-background);
  padding: 65px;
}

.footer-callback-form_caption {
  text-transform: uppercase;
  margin-top: 56px;
  color: var(--normal)
}

.footer-callback-form {
  display: flex;
  flex-direction: column;
  max-width: 300px;
  margin-top: 15px
}

.footer-callback-form input[type=email] {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid var(--normal);
  padding: 8px 0;
  color: var(--normal);
  margin-bottom: 15px;
  outline: 0
}

.footer-callback-form span {
  color: #767676;
  font-size: 16px
}

#footer-callback-btn {
  max-width: 160px;
  margin-top: 30px;
  color: var(--normal);
  text-transform: uppercase
}

.footer-cols {
  display: flex;
  width: 100%;
  justify-content: space-between
}

.footer-menu {
  display: flex;
  justify-content: space-around;
  width: calc(100% / 1.5);
  color: var(--normal)
}

.footer-menu-item_group {
  display: flex;
  flex-direction: column;
  gap: 25px
}

.footer-menu-item_caption {
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 20px
}

.footer-menu-item ul {
  list-style-type: none;
  padding: 0;
  margin-top: 15px
}

.footer-menu-item li {
  margin-top: 7px
}

.footer-contact-item {
  display: flex;
  gap: 15px;
  margin-top: 12px;
  align-items: center
}

.footer-contact-item img {
  width: 20px;
  height: 20px
}

.copyright {
  color: var(--normal);
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin-top: 50px
}

.offer {
  margin-top: 30px;
  color: var(--normal)
}

.footer-showmore {
  display: block;
  text-decoration: underline;
  margin-top: 7px
}

.footer-menu-item p {
  margin-top: 5px
}

.mob-footer {
  z-index: 10000;
}

.tabbar {
  display: none
}

.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 20px;
  min-width: 510px;
  min-height: 310px;
  box-shadow: 0 0 10px rgba(0, 0, 0, .25);
  z-index: 9999;
  display: none;
  transition: all 1s ease-out;
  border-radius: 4px
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9998;
  display: none;
  transition: all 1s ease-out;
}

.popup.show {
  display: flex;
  flex-direction: column
}

.overlay.show {
  display: block
}

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

.popup-caption {
  text-transform: uppercase;
  color: #424242;
  font-weight: 700;
  font-size: 22px
}

.popup-descr {
  color: #757575;
  margin-top: 6px;
  /* max-width: 400px */
}

.popup-form {
  display: flex;
  flex-direction: column;
  /* align-items: left; */
  justify-content: center;
  /* max-width: 400px; */
  margin: 20px 0;
}

.closebutton {
  cursor: pointer
}

.closebutton:hover {
  opacity: .8
}

.popup-form input {
  border: none;
  border-bottom: 1px solid #757575;
  outline: 0;
  padding: 5px 5px
}

.popup-form input::placeholder {
  font-weight: 16px
}

.popup-form span {
  color: #757575;
  font-size: 16px
}

.popup-form a {
  font-weight: 700
}

#popup-callback-btn {
  width: 180px;
  margin:15px auto;
}

@media (max-width:1180px) {
  * {
      font-size: 14px
  }
  .recall {
      gap: 12px;
      justify-content: space-around
  }
  .location-trigger {
      gap: 5px
  }
  .location-trigger img {
      width: 14px
  }
  
  .recall-block {
      margin-left: 0
  }
  #recall-button {
      font-size: 12px;
      height: 36px
  }
  footer {
      padding: 45px 0
  }
}

@media (max-width:980px) {
  header {
      display: none
  }
  h1 {
      font-size: 30px;
      margin-top: 30px
  }
  .header-mobile {
      display: block;
      position: fixed;
      top: 0;
      left: 0;
      height: 50px;
      width: 100%;
      color: var(--black);
      background-color: var(--white);
      border-bottom: 1px solid var(--normal); 
      z-index: 99;
      padding-top: 10px
  }
  .mobile-wrapper {
      height: 100%;
      max-width: 980px;
      margin-right: auto;
      margin-left: auto;
      padding-right: 15px;
      padding-left: 15px
  }
  .header-mobile-group {
      display: flex;
      height: 100%;
      justify-content: space-between;
      align-items: center
  }
  #k_form-search {
      position: relative;
      display: block;
      width: calc(100% / 1.7);
      height: 45px;
      border-radius: 4px;
      padding-bottom: 8px
  }
  .mobile-search input {
      /* width: 100%;
      height: 100%;
      border-radius: 6px;
      padding: 0 10px;
      outline: 0; */

      width: 100%;
      height: 100%;
      border: 1px solid var(--normal);
      border-radius: 6px;
      padding: 0 10px;
      outline: none;
  }
  #mobile-search-submit {
      position: absolute;
      right: 0;
      z-index: 99;
      top: 2px;
      right: 5px;
      width: 36px;
      height: 36px;
      background: no-repeat center/contain url(../icons/search.svg);
      background-size: 15px;
      border: 0;
      background-color: transparent;
      cursor: pointer;
      padding: 0;
      outline: 0
  }
  .main {
      padding-top: 10px
  }
  footer {
      padding-bottom: 100px
  }
  .footer-cols {
      flex-direction: column;
      gap: 50px
  }
  .footer-callback-form {
      max-width: 100%
  }
  .footer-callback-form input[type=email] {
      border-radius: 0
  }
  #footer-callback-btn {
      max-width: 100%
  }
  .footer-menu {
      width: 100%;
      flex-direction: column;
      gap: 35px
  }
  .footer-menu-item_caption {
      margin-bottom: 10px
  }
  .footer-menu-item ul {
      margin-top: 5px
  }
  .footer-menu li {
      font-size: 18px
  }
  .tabbar {
      display: flex;
      position: fixed;
      bottom: 0;
      width: 100%;
      height: 70px;
      padding: 6px 10px;
      justify-content: space-around;
      background-color: var(--background-color);
      border-radius: 13px 13px 0 0;
      border: 1px solid #e7e7e7;
      z-index: 99;
      align-items: center
  }
  .tabbar-item {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center
  }
  .tabbar-item img {
      width: 22px;
      height: 22px
  }
  .tabbar-item p {
      margin-top: 5px;
      font-size: 12px
  }
  .tabbar-logo {
      width: 80px;
      height: 40px
  }
  .tabbar-logo img {
      width: 100%;
      height: 100%
  }
  .tabbar-active img {
      opacity: .75
  }
}




.nf-h1 {
  color: var(--accent);
  margin-top: 145px;
  font-size: 65px
}
.nf-h1-error {
  color: red;
  margin-top: 145px;
  font-size: 65px
}

.nf-descr {
  text-transform: uppercase;
  font-weight: 700;
  margin: 30px 0;
}

.nf-descr-min {
  margin-top: 40px;
  max-width: 700px
}

.nf-button-group {
  /* margin: 62px 0 150px 0; */
  display: flex;
  width: 50%;
  gap: 15px;
  justify-content: left;
  /* align-items: center */
}

.nf-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
  border: 1px solid var(--accent);
  border-radius: 8px;
  padding: 16px 60px 16px 86px;
  text-transform: uppercase;
  font-size: 18px
}

.nf-button_accent {
  background-color: var(--accent);
  color: var(--normal)
}

.wires {
  position: absolute;
  right: 15%;
  top: 7%;
  transform: rotate(18deg)
}

@media (max-width:1300px) {
  .wires {
      right: 10%;
      top: 8%
  }
  .nf-button-group {
      width: 70%
  }
  .nf-button {
      font-size: 16px
  }
}

@media (max-width:1200px) {
  .wires {
      right: 5%;
      top: 6%
  }
  .nf-h1 {
      font-size: 50px
  }
  .nf-h1-error {
    font-size: 50px
}
}

@media (max-width:980px) {
  .wires {
      display: none
  }
  .nf-button-group {
      /* margin-bottom: 100px; */
      width: 100%;
      flex-direction: column;
  }
  .nf-button {
      padding: 8px 40px 8px 46px
  }
  .nf-h1 {
      font-size: 36px
  }
  .nf-h1-error {
    font-size: 36px
  }
}

@media (max-width:680px) {
  .nf-h1 {
      font-size: 30px
  }
  .nf-h1-error {
    font-size: 30px
  }
  .nf-button {
      gap: 5px;
      padding: 8px 10px 8px 16px
  }
}

@media (max-width:480px) {
  .nf-button {
      gap: 5px;
      padding: 8px 5px 8px 10px
  }
  .nf-h1 {
      font-size: 28px;
      line-height: 35px;
      margin-top: 100px
  }
  .nf-h1-error {
    font-size: 28px;
    line-height: 35px;
    margin-top: 100px
  }
}

*,
::after,
::before {
  box-sizing: border-box
}

* {
  margin: 0
}

input,
textarea {
  font-size: 16px
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  font-family: var(--primary-font);
  font-size: 18px;
  display: flex;
  min-height: 100vh;
  flex-direction: column;
}

canvas,
img,
picture,
svg,
video {
  display: block;
  max-width: 100%
}

button,
input,
select,
textarea {
  font: inherit
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  overflow-wrap: break-word
}

a {
  text-decoration: none;
  color: inherit
}

#__next,
#root {
  isolation: isolate
}

.vacancy {
  padding: 0 0;
}

.vacancy-item-buttons {
  display: flex;
  gap: 20px;
  align-items: center
}

#apply {
  text-transform: uppercase
}

.vacancy-item-buttons {
  margin-top: 15px
}

.vacancy-item-buttons .toggle-more {
  text-transform: uppercase;
  font-weight: 700
}

.vacancy-item-buttons .toggle-more:hover {
  color: var(--dark-background)
}

.vacancy-group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 100px
}

.vacancy-item {
  width: calc(100% / 2.05);
  border: 1px solid var(--normal);
  border-radius: 23px;
  padding: 40px 20px
}

.vacancy-item-caption {
  display: flex;
  justify-content: space-between;
  align-items: flex-start
}

.vacancy-item-caption_title {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase
}

.vacancy-item_salary {
  text-align: right;
  font-size: 14px;
  color: #969696
}

.num {
  font-size: 20px;
  font-weight: 700;
  color: #000
}

.salary-item-location {
  font-size: 14px;
  color: #969696
}

.salary-item-location div {
  display: flex;
  gap: 8px;
  align-items: center
}

.vacancy-item-descr {
  margin-top: 20px
}

.vacancy-item_fixed {
  display: flex;
  flex-direction: column;
  width: calc(100% / 2.05);
  padding: 40px 20px;
  justify-content: center;
  align-items: center;
  text-transform: uppercase
}

.vacancy-item_fixed div {
  max-width: 300px;
  text-align: center;
  font-weight: 700;
  font-size: 20px;
  margin-bottom: 40px
}

.vacancy-item_fixed a {
  display: flex;
  font-size: 30px;
  color: var(--accent);
  text-decoration: underline;
  gap: 5px;
  justify-content: center;
  align-items: center;
  font-weight: 700
}

.vacancy-options {
  margin-top: 100px
}

.vacancy-options_title {
  font-size: 40px;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center
}

.vacancy-options_values {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 50px;
  margin-top: 80px
}

.vacancy-options_item {
  display: flex;
  flex-direction: column;
  gap: 15px;
  justify-content: flex-start
}

.vacancy-options_item img {
  width: 50px;
  height: 50px
}

.vacancy-options-item_caption {
  font-size: 20px;
  font-weight: 700;
  text-transform: uppercase
}

.vacancy-img {
  width: 100%;
  height: auto;
  margin-top: 80px
}

.recall-close {
  cursor: pointer
}

.recall-close:hover {
  opacity: .8
}

.file-input-container {
  display: flex;
  flex-direction: column;
  margin: 10px 0;
  align-items: flex-start;
  justify-content: center;
}

.file-input {
  display: none;
}

.file-input-label {
  margin: 10px 0;
  display: flex;
  align-items: center;
  cursor: pointer;
  text-decoration: underline;
  color: #757575;
  font-weight: 700;
}

.file-input-label img {
  margin-right: 5px;
}

.file-info-container {
  display: flex;
  align-items: center;
}

.file-name {
  margin: 10px 0;
  display: flex;
  align-items: center;
  cursor: pointer;
  color: #757575;
  font-weight: 700;
  display: none; /* Initially hidden */
}

.file-size {
  margin-left: 10px;
  font-style: italic;
  color: gray;
  display: none; /* Initially hidden */
}

.file-delete {
  margin-left: 10px;
  cursor: pointer;
  display: none; /* Initially hidden */
}

.file-delete img {
  width: 20px;
  height: 20px;
}

#file-error {
  margin-top: 5px; /* Add some margin to separate error message from file info */
}
@media (max-width:980px) {
  .vacancy {
      padding: 20px 0
  }
  .vacancy-group {
      margin-top: 30px;
      flex-direction: column
  }
  .vacancy-item {
      width: 100%
  }
  .vacancy-item_fixed {
      width: 100%
  }
  .vacancy-item_fixed span {
      font-size: 24px
  }
  .vacancy-options {
      margin-top: 50px
  }
  .vacancy-options_title {
      font-size: 35px;
      text-align: center
  }
  .vacancy-options_values {
      grid-template-columns: repeat(1, 1fr);
      grid-template-rows: repeat(4, 1fr)
  }
  .vacancy-options_item {
      justify-content: center;
      align-items: center;
      text-align: center
  }
}

@media (max-width:540px) {
  .vacancy-recall {
      width: calc(100%)
  }
  .popup {
      min-width: 90%;
      display: none
  }
  .popup-caption {
      font-size: 16px
  }
  .popup-form {
      max-width: 100%
  }
  .popup-form span {
      font-size: 12px
  }
  .popup-descr {
      max-width: 300px
  }
  #popup-callback-btn {
      width: 206px;
      margin-left: calc(100% / 5)
  }
}


/*::::::::::::::::::::::::::::::Basket Card ::::::::::::::::::::::::::::::::::*/
.cart {
  position: fixed;
  width: 600px;
  height: 100vh;
  right: 0;
  top: 0;
  background-color: var(--background-color);
  z-index: 9999;
  transform: translateX(100%);
  transition: all 0.4s ease-out;
}

.cart.show {
  transform: translateX(0)
}

.cart-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: black;
  opacity: 0.7;
  z-index: 9998; 
  display: none;
}

.cart-overlay.show {
  display: block
}

.cart-wrapper {
  display: flex;
  flex-direction: column;
  padding: 35px;
  color: #000;
  height: 100vh; /* Full height of the viewport */
}

.modal-basket__close {
  position: absolute; /* Position absolutely within the modal */
  top: 20px; /* Distance from the top */
  right: 50px; /* Distance from the right */
}

.cart-close {
  cursor: pointer
}

.cart-title {
  font-size: 40px;
  text-transform: uppercase;
  font-weight: 700
}

.cart-empty {
  width: 450px;
  overflow-y: auto; 
  box-sizing: border-box; /
}

.cart-empty_caption {
  margin-top: 20px;
  font-weight: 700;
  font-size: 20px;
  text-transform: uppercase
}

.cart-empty_descr {
  margin: 20px 0;
  width: 100%
}

.bloc-cart-send {
  /* position: sticky; */
  bottom: 0; /* Align to the bottom of the container */
  background-color: white; /* Background color to cover any content below */
  /* padding: 20px; */
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
}

.cart-form {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%
}

.cart-form input[type=tel],
.cart-form input[type=name],
.cart-form input[type=email],
.cart-form textarea {
  padding: 10px 15px;
  border: none;
  /* border: 1px solid #4c4c4c; */
  border-bottom: 1px solid var(--hover);
  border-radius: 4px;
  outline: 0;
  box-shadow: none
}

.cart-form input[type=file] {
  display: none
}

.cart-form .file-input-label {
  color: #000;
  /* align-self: flex-end */
}

.cart-form span {
  color: #767676
}

.cart-full {
  width: 500px;
  display: flex;
  flex-direction: column;
  height: 100%; /* Full height of the parent */
}

.cart-full-products-list {
  width: 100%;
  display: flex;
  flex-direction: column;
  border-top: 1px solid #676767;
  margin-top: 10px;
  flex-grow: 1; /* Allow this section to grow and fill available space */
  overflow-y: auto; /* Enable vertical scrolling for products */
  max-height: 600px; /* Set a maximum height for the list */
}

.cart-full-product {
  display: flex;
  margin: 20px 10px;
  padding-bottom: 15px;
  border-bottom: 1px solid #676767;
  justify-content: space-between;
  gap: 20px
}

.cart-product-item {
  width: 50%
}

.cart-product_img {
  overflow: hidden;
  border-radius: 4px;
  max-width: 100px;
  max-height: 100px
}

.cart-product_img img {
  width: 100%;
  height: 100%
}

.cart-product-item_sum {
  font-size: 14px;
  color: #9b9ea1
}

.cart-product-item_counter {
  display: flex
}

.counter {
  display: flex;
  height: 30px;
  justify-content: center;
  align-items: center;
}

.cart-product-item_counter {
  display: flex;
  align-items: center;
  gap: 13px;
}
.counter-input {
  max-width: 30px;
  height: 20px;
  background-color:var(--white);
  border: none;
  outline: none;
  font-size: 12px;
  text-align: center;
}

.counter-controls {
  width: 30px;
  height: 20px;
  text-align: center;
  font-size: 12px;
  text-align: center;
  background-color:var(--normal);
  cursor: pointer;
}

.counter-controls-left {
  border-radius: 4px 0 0 4px;
  background-color: #e7e7e7;
  background-image: url('../icons/minus.svg');
  background-repeat: no-repeat;
  background-position: center;
}

.counter-controls-right {
  border-radius: 0 4px 4px 0;
  background: no-repeat center url('../icons/plus.svg');
  background-color: #e7e7e7;
  background-repeat: no-repeat;
  background-position: center;
}

.cart-product_price {
  display: flex;
  flex-direction: column;
  text-align: right;
  font-weight: 700;
  width: 25%

}

button.del {
  background-color: var(--background-color);
  border: 1px solid #ababab;
  color: #ababab;
  height: 20px;
  width: 70px;
  font-size: 12px;
  cursor: pointer
}

button.mobile-del {
  display: none;
}

button.del:hover {
  background-color: var(--normal)
}

.cart-form_send {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* margin-top: 80px; */
  font-weight: 700;
  color: #000;
  width: 100%
}

.cart-form_send span {
  font-weight: 400
}

/* #cart-create-order {
  width: 50%;
  text-transform: uppercase;
  font-weight: 400
} */

.submit_title {
  justify-content: center; 
  display: flex; 
  align-items: center; 
  margin: 0 auto; 
  width: 100%; 
  padding: 10px 0;
}

.submit-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.submit-button button {
  width: 100%;
  text-transform: uppercase;
  font-weight: 400;
  margin-top: 10px;
}

/* cart */
@media (max-width: 980px) {
  .cart {
      width: 100%;
      margin-top: 80px;
      border: 1px solid var(--normal);
      border-radius: 10px;
      transform: translateX(0);
      display: none;
  }

  .cart.show {
      display: block;
  }

  .cart-wrapper {
      padding: 25px 15px;
      align-items: flex-start;
      display: flex;
      flex-direction: column; /* Ensure the layout is in a column */
      height: 100vh; /* Full height for scrolling */
  }

  .cart-title {
      font-size: 20px;
  }

  .cart-empty {
      width: 100%;
      max-height: 600px;
      margin: 10px 0; 
  }

  .cart-empty_caption {
      text-align: center;
      font-size: 18px;
  }

  .cart-empty_descr {
      /* padding: 15px; */
      font-size: 14px;
      line-height: 18px;
  }

  .cart-form input[type='tel'], 
  .cart-form textarea {
      border: none;
      border-radius: 0;
      border-bottom: 1px solid black;
      padding: 8px 0;
  }

  .cart-full {
      width: 100%;
      flex: 1; /* Allow this section to grow and fill available space */
      overflow-y: auto; /* Enable vertical scrolling */
  }

  .cart-full-products-list {
      width: 100%;
      display: flex;
      flex-direction: column; /* Stack products vertically */
      border-top: 1px solid #676767;
      margin-top: 10px;
      overflow-y: auto; /* Enable vertical scrolling for products */
      max-height: 300px; /* Set a max height for scrolling */
  }

  .cart-full-product {
      margin: 10px 0;
      position: relative;
      display: flex; /* Keep the product layout as flex */
      justify-content: space-between; /* Space out product elements */
      align-items: center; /* Align items vertically */
      width: 100%;
  }

  .cart-product-item {
      display: flex; /* Use flex to align items */
      flex-direction: column; /* Stack items vertically */
      justify-content: space-between; /* Space between items */
      width: 50%; /* Adjust width as needed */
  }

  .cart-product-item_sum {
      margin-bottom: 5px; /* Space between sum and price */
  }

  .cart-product_price {
    display: flex;
    flex-direction: column;
    text-align: left;
    font-weight: 700;
    margin-top: 5px; /* Space above price */
    font-size: 14px; /* Adjust font size if necessary */
  }

  button.del {
      display: none;
  }

  button.mobile-del {
      position: absolute;
      right: 5px;
      top: 0;
      border: none;
      display: block;
      text-align: right;
      width: 12px;
      height: 12px;
      background: url('../icons/closepopup.svg') center no-repeat;
  }

  .cart-product-item_counter {
      display: flex;
      align-items: center; /* Align counter controls vertically */
      gap: 10px; /* Space between counter and delete button */
  }



.cart-form_send {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}

.cart-form_send span {
    font-weight: 700;
}

.submit-button {
  flex-direction: column;
}

}

@media (max-width: 375px) {
  .cart-empty {
      max-height: 420px;
  }
  .cart-full-products-list {
        max-height: 250px;
  }
}

/* HEADER INDEX PAGE */

.main-page-header {
  background-color: transparent; /* Start with a transparent background */
  color: var(--white);
  transition: background-color 0.3s ease; /* Smooth transition for background color */
  z-index: 97;
}

.main-page-header-scrolled {
  border-bottom: 1px solid var(--normal); /* Adjust the border style as needed */
}

.general-header {
  background-color: var(--white);
  color: var(--black);
  border-bottom: 1px solid var(--normal);
}


.main-header-banner-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; /* Place the image behind the content */
}

.main-header-banner-image picture {
  width: 100%;
  height: 100%; /* Cover the entire area */
}

.main-header-banner-image img {
  width: 100%;
  height: 100%; /* Cover the entire area */
  object-fit: cover; /* Maintain aspect ratio */
}

/* Main Header Banner */
.main-header-banner {
  /* position: relative; 
  height: 70vh;  */
  overflow: hidden; 
  display: flex; 
  flex-direction: column; /* Stack children vertically */
  justify-content: center; /* Center content vertically */
  align-items: center; /* Center content horizontally */
}

/* Main Header Content */
.main-header-content {
  color: var(--normal); /* Use your variable for normal color */
  max-width: 60%; /* Limit width of content */
  z-index: 2; /* Ensure it is above the image */
  margin-top: 100px;
}

.main-header-content h1 {
  margin-top: 0;
  font-size: 80px;
  line-height: 80px;
  font-weight: 600;
}

.main-header-content_caption p {
  font-weight: 700;
  font-size: 36px;
  line-height: 80px;
}

.main-header-content_links {
  font-weight: 600;
  font-size: 26px;
  line-height: 80px;
  display: flex; /* Use flexbox for layout */
  flex-wrap: wrap; /* Allow items to wrap to the next line */
}
.main-header-content_links_title {
  margin-right: 10px;
}
.main-header-content_links_items {
  margin-right: 10px;
}

.main-header-content_links_items:not(:last-child)::after {
  content: "/"; /* Add a "/" after each item except the last one */
  margin-left: 10px; /* Space after the "/" */
}

.main-header-content_links_items a {
  text-decoration: underline;
}

/* Advantages Section */
.main-header-content_advantages {
  display: flex; /* Use flexbox for layout */
  justify-content: space-between; /* Space items evenly */
  color: var(--normal);
  /* align-items: center; */
  border-top: 1px solid var(--normal);
  margin-top: 30px; /* Space above the advantages */
  padding-top: 20px; /* Padding for spacing */
  width: 100%; /* Full width */
  z-index: 1; /* Ensure it appears above the image */
}

.main-header-content-advantage p:first-child {
  font-size: 60px; /* Font size for the first child */
  line-height: 80px; /* Line height */
  font-weight: 700; /* Font weight */
}

/* Main Header Banner Image */

.s-main-catalog-bloc .container-embed {
  margin-bottom: 30px;
}

.banner-size {
  height: 100vh; /* Full viewport height */
  /*width: 100vw;*/ /* Full viewport width */
  display: flex;
  justify-content: center;
  align-items: center;
}

.main-header-banner {
  height: 100%; /* Full height of the parent */
  width: 100%; /* Full width of the parent */
  position: relative; /* For absolute positioning of the image */
}

.main-header-banner-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; /* Place the image behind the content */
}

.main-header-banner-image img {
  width: 100%;
  height: 100%; /* Cover the entire area */
  object-fit: cover; /* Maintain aspect ratio */
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
.main-header-banner {
    padding: 30px 0; /* Adjust padding for smaller screens */
}

.main-header-content {
    max-width: 100%; /* Full width for mobile */
    height: auto; /* Adjust height for mobile */
}

.main-header-content h1 {
    font-size: 32px; /* Further decrease font size for smaller screens */
    line-height: 40px;
}

.main-header-content_caption p {
    font-size: 20px; /* Further decrease font size for smaller screens */
    line-height: 30px;
}

.main-header-content_links {
    font-size: 16px; /* Further decrease font size for smaller screens */
    line-height: 30px;
}

.main-header-content-advantage p:first-child {
    font-size: 32px; /* Further decrease font size for smaller screens */
    line-height: 40px;
}
}


/* MAIN PAGE CONTENT */
.main-subtitle {
  font-size: 60px;
  line-height: 80px;
  font-weight: 700;
  text-transform: uppercase;
}

.main-group-nav {
  display: flex;
  margin-top: 30px;
  align-items: center;
  justify-content: space-between;
  gap: 13px;
  margin-bottom: 50px;
}

.main-group-nav_divider {
  height: 1px;
  background-color: #646464;
  flex-shrink: 1;
  flex-grow: 1;
}
.main-group-nav_link {
  color: var(--accent);
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 700;
  flex-basis: content;
  flex-shrink: 0;
  flex-grow: 0;
  cursor: pointer;
}

/*::::::: MAIN CATALOG CARD LIST :::::::*/
.main-catalog-card {
  display: flex; /* Use flexbox for layout */
  flex-wrap: wrap; /* Allow items to wrap to the next line */
  justify-content: space-around; /* Space items evenly */
  gap: 20px; /* Add gap between items */
}

/* Individual Image Links */
.main-img-links {
  flex-basis: calc(33.33% - 20px); /* Adjust width for three items per row */
  height: 250px;
}

/* Image Link Styling */
.main-img-link {
  display: block;
  border-radius: 7px;
  position: relative; /* Position relative for absolute positioning of span */
  overflow: hidden; /* Hide any overflow */
}

/* Image Styling */
.main-img-link img {
  width: 100%; /* Take up full width */
  height: 100%; /* Take up full height */
  object-fit: cover; /* Maintain aspect ratio */
}

/* Caption Styling */
.main-img-link span {
  position: absolute; /* Position absolute for bottom left alignment */
  bottom: 0; /* Align to the bottom */
  left: 0;
  color: var(--normal);
  padding: 30px; /* Padding for spacing */
  text-align: left; /* Left align text */
  font-size: 30px;
  font-weight: 700;
  text-transform: uppercase;
  width: 100%; /* Ensure span takes up full width */
  word-wrap: break-word; /* Allow text to wrap */
}

/* Media Query for Mobile Devices and Tablets */
@media (max-width: 768px) {
    .main-catalog-card {
        overflow-x: auto; /* Allow horizontal scrolling without a scrollbar */
        flex-wrap: nowrap; /* Prevent wrapping, keep items in a single row */
        /* padding-left: 10px;  */
        padding-right: 10px; 
        gap: 20px; 
    }

    .main-img-links {
        flex-basis: auto; /* Allow items to take their natural width on mobile/tablet */
        min-width: calc(80% - 20px); /* Full width minus gap space for one card at a time */
        height: 250px; /* Allow height to adjust based on content on mobile/tablet */
    }

    .main-img-link {
        height: auto; /* Allow height to adjust based on content on mobile/tablet */
    }

    .main-img-link span {
        font-size: 24px; /* Adjust font size for mobile/tablet if needed */
    }
}
  /* Hide scrollbar in WebKit browsers (Chrome, Safari) */
  .main-catalog-card::-webkit-scrollbar {
    display: none; /* Hide scrollbar */
  }


/*::::: block main catalog small ::::::::::*/
/* Main Small Links */
.main-small-links {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
  gap: 10px;
  padding-bottom: 100px;
}

.main-small-links_caption {
  color: var(--accent);
  font-size: 30px;
  font-weight: 700;
  line-height: 24px;
  cursor: pointer;
}

.main-small-links_list {
  list-style-type: none;
  padding: 0;
  margin-top: 10px;
}

.main-small-links_list li {
  font-weight: 700;
  font-size: 20px;
  line-height: 24px;
}

/* Media Query for Mobile Devices and Tablets */
@media (max-width: 768px) {
    .main-small-links {
        flex-direction: row; /* Keep items in a row */
        flex-wrap: wrap; /* Allow wrapping for responsiveness */
        justify-content: space-between; /* Space between groups */
        padding-bottom: 50px; /* Reduce padding for mobile */
    }

    .main-small-links_group {
        flex-basis: calc(50% - 10px); /* Two columns with space between */
        margin-bottom: 20px; /* Add spacing between groups on mobile */
    }

    .main-small-links_caption {
        font-size: 24px; /* Reduce font size for mobile */
        line-height: 20px; /* Adjust line height for mobile */
    }

    .main-small-links_list {
        margin-top: 5px; /* Reduce margin for mobile */
    }

    .main-small-links_list li {
        font-size: 18px; /* Reduce font size for mobile */
        line-height: 20px; /* Adjust line height for mobile */
    }
}

/*:::: Main Feedback :::::*/
/* Main Form Section */
.main-form-section {
  background-color: #F4F4F4;
  padding: 58px 0 47px 0;
}

.main-form-block {
  display: flex;
  flex-direction: row;
  gap: calc(100% / 10);
  justify-content: space-between;
  align-items: flex-start;
}

.main-form-block > div {
  flex-shrink: 1;
  flex-grow: 1;
}

.main-form-block_title {
  border-left: 4px solid var(--accent);
  padding: 0 18px;
  font-size: 35px;
  line-height: 43px;
  font-weight: 700;
  text-transform: uppercase;
}

.main-form-block_descr {
  margin-top: 22px;
  font-size: 20px;
}

.main-form {
  display: flex;
  flex-direction: column;
  margin-right: 40px;
  flex-basis: 450px;
  flex-shrink: 0;
  flex-grow: 0;
}

.main-form input[type='text'],
.main-form input[type='tel'] {
  border: none;
  border-bottom: 1px solid black;
  padding: 8px 0;
  background-color: transparent;
  outline: none;
}

.main-form label {
  color: #767676;
  font-size: 16px;
  margin-top: 15px;
}

.main-form input[type="checkbox"] {
  margin-right: 15px;
}

#main-form-send {
  margin-top: 40px;
  width: 45%;
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
  .main-form-section {
      padding: 30px 0; /* Reduce padding for mobile */
  }

  .main-form-block {
      flex-direction: column; /* Stack blocks vertically for mobile */
      align-items: center; /* Center align items for mobile */
  }

  .main-form-block > div {
      flex-basis: 100%; /* Take full width for mobile */
      margin-bottom: 20px; /* Add spacing between blocks for mobile */
  }

  .main-form-block_title {
      font-size: 24px; /* Reduce font size for mobile */
      line-height: 30px; /* Adjust line height for mobile */
      padding: 0 10px; /* Reduce padding for mobile */
  }

  .main-form-block_descr {
      font-size: 18px; /* Reduce font size for mobile */
      margin-top: 10px; /* Reduce margin for mobile */
  }

  .main-form {
      margin-right: 0; /* Remove margin for mobile */
      flex-basis: 100%; /* Take full width for mobile */
  }

  .main-form input[type='text'],
  .main-form input[type='tel'] {
      padding: 6px 0; /* Reduce padding for mobile */
  }

  .main-form label {
      font-size: 14px; /* Reduce font size for mobile */
      margin-top: 10px; /* Reduce margin for mobile */
  }

  #main-form-send {
      width: 100%; /* Take full width for mobile */
      margin-top: 20px; /* Reduce margin for mobile */
  }
}

/*::: special offer ::: */

/* Main Special Offer Card */
.main-special-offer-card {
  display: flex;
  flex-direction: column; /* Stack items vertically */
  align-items: center;
}

/* Special Offer Main Image Links */
.special-offer-main-img-links {
  display: flex; /* Use flexbox for layout */
  flex-wrap: wrap; /* Allow wrapping for larger screens */
  justify-content: space-around; /* Start from the left */
  width: 100%; /* Ensure it takes up the full width */
  gap: 20px; /* Add gap between items */
}

/* Individual Image Links */
.special-offer-main-img-link {
  display: block;
  flex-basis: calc(33.33% - 20px); /* Adjust width for three columns on desktop */
  height: 250px; /* Set a fixed height for consistency */
  overflow: hidden;
  border-radius: 7px;
  position: relative;
  transition: all 0.3s ease-in-out;
}

/* Image Styling */
.special-offer-main-img-link img {
  width: 100%; /* Take up full width */
  height: 100%; /* Take up full height */
  object-fit: cover; /* Maintain aspect ratio */
}

/* Caption Styling */
.special-offer-main-img-link span {
  position: absolute; /* Position absolute for bottom left alignment */
  bottom: 0; /* Align to the bottom */
  left: 0;
  color: var(--normal);
  padding: 30px; /* Padding for spacing */
  text-align: left; /* Left align text */
  font-size: 30px;
  font-weight: 700;
  text-transform: uppercase;
  width: 100%; /* Ensure span takes up full width */
}

/* Media Query for Tablet and Mobile Devices */
@media (max-width: 768px) {
    .special-offer-main-img-links {
        overflow-x: auto; /* Allow horizontal scrolling without showing a scrollbar */
        flex-wrap: nowrap; /* Prevent wrapping to keep items in a single row */
        gap: 20px; /* Adjust gap for mobile view */
    }

    .special-offer-main-img-link {
        min-width: calc(80% - 20px); /* Full width on mobile, minus gap space */
        height: 250px; /* Allow height to adjust based on content on mobile/tablet */
    }
}

/* Hide scrollbar in WebKit browsers (Chrome, Safari) */
.special-offer-main-img-links::-webkit-scrollbar {
    display: none; /* Hide scrollbar */
}


/*::::::: compagny and partner bloc ::::::::::::::*/

/* Company Section */
.company {
  background-color: var(--dark-background);
  color: var(--normal);
  padding: 50px 0;
}

.company-wrapper {
  width: 100%;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  align-items: flex-start;
  margin: 40px 0;
}

.company_title {
  flex-basis: 400px;
  flex-grow: 0;
  flex-shrink: 0;
  font-size: 65px;
  font-weight: 700;
  text-transform: uppercase;
}

.company-advantages {
  margin-top: 120px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 50px;
  align-items: flex-start;
}

.company-advantages_item {
  display: flex;
  flex-direction: column;
}

.company-advantages_title {
  font-size: 20px;
  text-transform: uppercase;
  line-height: 25px;
  font-weight: 700;
}

.company-advantages_divider {
  background-color: white;
  height: 1px;
  width: 80%;
  margin-top: 15px;
}

.company-advantages_descr {
  margin-top: 15px;
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
  .company {
      padding: 30px 0; /* Reduce padding for mobile */
  }

  .company-wrapper {
      flex-direction: column; /* Stack elements vertically for mobile */
      margin: 20px 0; /* Adjust margin for mobile */
  }

  .company_title {
      font-size: 30px; /* Reduce font size for mobile */
      text-align: center; /* Center title for mobile */
      margin-bottom: 20px; /* Add space below title */
      flex-basis: 50px;
  }

  .company-advantages {
      flex-direction: column; /* Stack advantages vertically for mobile */
      margin-top: 40px; /* Adjust margin for mobile */
      gap: 20px; /* Space between advantages */
  }

  .company-advantages_item {
      align-items: flex-start; /* Center align items in advantages */
  }

  .company-advantages_title {
      font-size: 18px; /* Reduce font size for mobile */
  }

  .company-advantages_descr {
      font-size: 14px; /* Reduce font size for mobile */
  }
}

/*:::::::::::::::::::: SLIDER :::::::::::::::::::::::*/
.slider {
  margin: 40px 0;
  width: 100%;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: stretch; 
}

.slider-wrapper {
  display: flex;
  gap: 10px;
  transition: transform 0.5s ease-in-out;
}

.slide {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start; 
}

.slider-prev, .slider-next {
  cursor: pointer;
  border: none;
  background-color: transparent;
  color: black;
  font-size: 40px;
  padding: 0;
}

.slider-prev:hover, .slider-next:hover {
  opacity: 0.7;
}

.slider-prev img, .slider-next img {
  width: 50px;
  height: 50px;
}

.slider-prev img {
  transform: rotateY(180deg);
}

/*:::::::::::: Partners - Slider :::::::::::::::::*/
.partners {
  background-color: var(--dark-background);
  color: var(--normal);
  padding: 50px 0;
}
.controls-partners {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  color: var(--normal);
}

.partners-caption_title {
  line-height: 80px;
  font-weight: 700;
  font-size: 65px;
  text-transform: uppercase;
}

.partners-caption {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.partners-slider .slide {
  width: calc((100% - 50px) / 6);
}

/* Responsive Styles */
@media (max-width: 767px) {
  .slider {
      margin: 20px 0; /* Reduce margin for mobile */
  }

  .partners-caption_title {
      line-height: 50px; /* Adjust line height for mobile */
      font-size: 30px; /* Reduce font size for mobile */
  }

  .slider-prev, .slider-next {
      font-size: 30px; /* Reduce button font size for mobile */
  }

  .slider-prev img, .slider-next img {
      width: 30px; /* Reduce icon size for mobile */
      height: 30px;
  }

  .partners-slider .slide {
      width: calc((100% - 30px) / 3); /* Show 3 slides at a time on mobile */
  }

  .slider-wrapper {
      gap: 5px; /* Reduce gap between slides for mobile */
  }
}

@media (max-width: 480px) {
  .partners-caption_title {
      font-size: 24px; /* Further reduce font size for smaller screens */
  }

  .slider-prev, .slider-next {
      font-size: 24px; /* Further reduce button font size for smaller screens */
  }

  .slider-prev img, .slider-next img {
      width: 25px; /* Further reduce icon size for smaller screens */
      height: 25px;
  }

  .partners-slider .slide {
      width: calc((100% - 20px) / 2); /* Show 2 slides at a time on very small screens */
  }
}

/*::::::::::::::: main-news ::::::::::::::::::::::*/

.main-news-wrapper {
  display: flex;
  flex-wrap: wrap; 
  gap: 20px; 
}

.main-news-item {
  flex: 1 1 calc(25% - 16px); 
  box-sizing: border-box; 
  margin-bottom: 20px; 
  display: flex; 
  flex-direction: column; 
  justify-content: space-between;
}

.main-news_date {
  font-weight: 300;
  font-size: 16px;
  color: #767676;
}

.main-news_title {
  font-weight: 400;
  line-height: 21px;
  font-size: 16px;
}

.main-news_link {
  display: flex;
  font-size: 14px;
  line-height: 18px;
  align-items: center;
  gap: 3px;
  color: var(--accent);
  margin-top: auto; /* Push the link to the bottom of the item */
}

.main-news_link img {
  width: 15px;
  height: 15px;
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
  .main-news-wrapper {
    display: flex; 
    overflow-x: auto; 
    flex-wrap: nowrap; 
    gap: 20px;
    scroll-snap-type: x mandatory; 
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; 
    -ms-overflow-style: none; 
  }

  .main-news-wrapper::-webkit-scrollbar {
    display: none; /* Hide scrollbar for Chrome, Safari, and Opera */
  }

  .main-news-item {
    min-width: calc(80% - 20px); 
    scroll-snap-align: start; 
    margin-bottom: 0; 
    height: auto;   
    display: flex; 
    flex-direction: column; 
    justify-content: space-between; 
  }
  .main-news_date {
      font-size: 14px;
  }

  .main-news_title {
      font-size: 14px; 
  }

  .main-news_link {
    font-size: 12px; 
  }
}

/*::::::::::::::::::: main-articles :::::::::::::::::::::::*/
/* Main Articles Wrapper */
.main-articles-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr); 
  grid-template-rows: repeat(2, 1fr); 
  width: 100%;
  gap: 46px 10px;
  margin-top: 46px; 
}

.main-article-item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%; 
  gap: 10px;
}

.main-article_title {
  font-weight: 700;
  font-size: 16px;
  line-height: 21px;
}

.main-article_descr {
  font-weight: 300;
  font-size: 16px;
  line-height: 21px;
}

.main-article_link {
  font-weight: 400;
  font-size: 16px;
  line-height: 21px;
  color: var(--accent);
  margin-top: auto; /* Push the link to the bottom of the item */
}

/* Media Query for Mobile Devices */
@media (max-width: 767px) {
  .main-articles-wrapper {
      grid-template-columns: repeat(1, 1fr); 
      grid-template-rows: auto; 
      gap: 20px 10px; 
      margin-top: 30px; 
  }

  .main-article_title {
      font-size: 18px; 
      line-height: 24px; 
  }

  .main-article_descr {
      font-size: 14px; 
      line-height: 20px; 
  }

  .main-article_link {
      font-size: 14px; 
      line-height: 20px; 
  }
}


/*:::::::::::::::::::::::: CATEGORY STYLES ::::::::::::::::::::::*/
.category {
  padding-top: 100px;
}

.category-content {
  display: flex;
  gap: 22px;
  margin-top: 60px;
}

aside {
  display: flex;
  flex-direction: column;
  width: 320px;
}

.category-content-aside_menu {
  display: flex;
  flex-direction: column;
  border: 1px solid #D6E2FF;
  border-radius: 10px;
  background-color: #F0F2F766;
}

.category-aside-link {
  padding: 15px 20px;
  border-bottom: 1px solid #D6E2FF;
  text-transform: uppercase;
  line-height: 20px;
  font-size: 20px;
  font-weight: 700;
}

.category-aside-link.active {
  color:var(--accent);
}

.category-content-aside_menu .category-aside-link:last-child {
  border-bottom: none;
}

.category-content-aside {
  display: flex;
  flex-direction: column;
  margin-top: 46px;
  position: relative;
  width: 100%;
  background-color:#F0F2F7;
  padding: 85px 24px 24px 17px;
  border-radius: 6px;
}

.category-content-aside_img {
  position: absolute;
  top: -22px;
  left: 35%;
  outline: none;
  width: 82px;
  height: 82px;
}

.category-content-aside_img img {
  width: 100%;
  height: 100%;
}

.category-content-aside_caption {
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
}

.category-content-aside-form {
  display: flex;
  flex-direction: column;
}


.category-content-aside-form input[type='text'], 
.category-content-aside-form input[type='tel'] {
  border: none;
  background-color: transparent;
  margin-top: 20px;
  border-bottom: 1px solid black;
  outline: none;
}

.category-content-aside-form input[type='checkbox'] {
  margin-top: 20px;
}

.checkbox-wrapper {
  color: #767676;
  font-size: 14px;
  font-weight: 700;
}

.chbox-link {
  text-decoration: underline;
}

#category-aside_btn {
  margin-top: 28px;
}

#category-aside_btn:hover {
  background-color: transparent;
  color: var(--accent);
}

#category-aside_btn_mob {
  margin-top: 28px;
}

#category-aside_btn_mob:hover {
  background-color: transparent;
  color: var(--accent);
}

main {
  width: 100%;   
}

.category-content-mobile_menu {
  display: none;
}

.category-main-title {
  color: #1E232D;
  /* font-size: 60px; */
  font-size: 45px;
  font-weight: 700;
  line-height: 125%;
  text-transform: uppercase;
  margin-top: 0px;
}

.category-main-filters_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 44px;
  gap: 50px;
}

/* filters */

.category-filter-section {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.filter-btn {
  /* width: 135px; */
  width: auto;
  height: 40px;
  border: none;
  border-radius: 8px;
  background-color: #E7E7E7;
  color: #1E232D;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  gap: 5px;
  overflow: hidden;  /* Обрезка текста, выходящего за границы */
  text-overflow: ellipsis;  /* Добавление многоточия при обрезке текста */
  white-space: nowrap;  /* Запрет на перенос текста */
}

.filter-btn:hover {
  border: 1px solid var(--accent);
}

.filter-btn .arrow-down {
  margin-left: 5px;
  border: solid #767676;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(45deg); 
}


.filter-btn.active {
  background-color: #3b82f6;
  color: #fff;
}

.all-filters {
  background-color: #4b5563;
  color: #fff;
}

/* .dropdown {
  position: relative;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  z-index: 1;
  padding: 10px;
}

.dropdown-content label {
  display: flex;
  align-items: center;
  padding: 5px 0;
  cursor: pointer;
}

.dropdown-content label input {
  margin-right: 10px;
}

.dropdown-content label:hover {
  background-color: #f1f1f1;
  border-radius: 5px;
}

.dropdown-content.show {
  display: block;
} */

.dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  background-color: #f9f9f9;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  z-index: 1;
  padding: 10px;
}


.custom-checkbox input[type="checkbox"] {
  margin-right: 10px;
}

.dropdown-content label {
  display: flex;
  align-items: center;
  padding: 5px 0;
  cursor: pointer;
}

.filter-btn {
  width: 200px; 
  /* min-width: 200px; */
  max-width: 220px;
  height: 40px; /* Set a fixed height */
  padding: 10px; /* Add padding for better appearance */
  font-size: 16px; /* Set font size */
  border: none; /* Remove border */
  border-radius: 5px; /* Rounded corners */
  cursor: pointer; /* Pointer cursor on hover */
}

.show {
  display: block; /* Show dropdown when active */
}



.filter-showmore {
  /* width: 135px; */
  width: 200px;
  max-width: 220px;
  height: 40px;
  border: none;
  border-radius: 8px;
  background-color: #767676;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.filter-showmore:hover {
  background-color: #767676;
  color: #ffffff;
  opacity: 0.7;
}

/* sort */
.category-switchview-section {
  display: flex;
  gap: 20px;
}

.switch_block,
.switch_list {
  width: 46px;
  height: 46px;
  border: 1px solid #767676;
  border-radius: 5px;
  cursor: pointer;
}

.switch_block {
  background: url('../icons/sort-block.svg') center no-repeat;
}

.switch_block.active {
  background: url('../icons/sort-block-active.svg') center no-repeat;
  background-color: var(--accent); /* Цвет фона */
  border: 1px solid var(--accent);
}

.switch_list {
  background: url('../icons/sort-list.svg') center no-repeat;
}

.switch_list.active {
  background: url('../icons/sort-list-active.svg') center no-repeat;
  background-color: var(--accent); /* Цвет фона */
  border: 1px solid var(--accent);
}

/* tags, sort */

.category-main-tags_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 40px;
  gap: 50px;
}

.category-tag-section {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.category-main-tag {
  border: 1px solid #767676;
  border-radius: 10px;
  padding: 3px 30px;
  color: #767676;
  font-size: 16px;
}

.category-sort-section {
  color:#1E232D;
}


#sort-select, #sort-select-mobile {
  background: transparent;
  border: none;
  color: gray;
  padding: 5px;
  font-size: 18px; 
  outline: none; 
  cursor: pointer;
}

#sort-select, #sort-select-mobile option {
  color: gray; /* Цвет текста для опций */
}

#sort-select, #sort-select-mobile:focus {
  outline: none;
}

.mobile-filter-sort {
  display: none;
}

/* Listing - Block */
.category-main-listing_block {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
  gap: 15px;
}

.product-item-card_block {
  flex: 1 1 calc(33.33% - 15px); 
  max-width: calc(33.33% - 15px); 
  display: flex; /* Enable flex for inner alignment */
  flex-direction: column; /* Stack children vertically */
  border: 1px solid #e7e7e7; /* Optional: Add a border for visibility */
  border-radius: 10px; /* Optional: Rounded corners */
  overflow: hidden; /* Prevent overflow */
}

/* Image Container */
.product-item-card-img {
  width: 100%; /* Take full width of the parent */
  height: 260px; /* Set a fixed height for the image container */
  overflow: hidden; /* Hide any overflow */
  display: flex; /* Use flex to center the image */
  justify-content: center; /* Center the image horizontally */
  align-items: center; /* Center the image vertically */
}

/* Image Styling */
.product-item-card-img img {
  width: 100%; /* Take full width of the parent */
  height: auto; /* Maintain aspect ratio */
  max-height: 100%; /* Ensure it doesn't exceed container height */
  object-fit: cover; /* Maintain aspect ratio and cover the entire area */
}

/* Details Section */
.product-item-card-details {
  padding: 15px; /* Add some padding to the details section */
  flex-grow: 1; /* Allow this section to grow and fill available space */
}

/* Paragraphs in Details Section */
.product-item-card-details p {
  margin: 5px 0; 
}

/* Price Wrapper Section */
.product-item-card_price-wrapper {
    display: flex;
    justify-content: space-between; /* Align items within this section */
    align-items: center; /* Center align items vertically */
    padding: 15px; /* Add padding for spacing around price wrapper */
}

/* Media Query for Mobile Devices */
@media (max-width: 768px) {
    .product-item-card_block {
        flex: 1 1 calc(50% - 15px); /* Calculate width to fit two items per row on mobile */
        max-width: calc(50% - 15px); /* Ensure max-width to prevent overflow on mobile */
    }
    .product-item-card-img {
        height: auto; /* Allow image height to adjust based on content on mobile */
    }
    .add-to-cart_btn {
      width: 35px !important;
      height: 35px !important;
    }
    .product-item-card-details {
        padding: 10px; /* Reduce padding for mobile */
    }
    .product-item-card-title {
        font-size: 16px; /* Adjust font size for mobile */
    }
    .product-item-card-details p {
        font-size: 14px; /* Adjust font size for mobile */
    }
}

.list-center {
    width: 100%;
    text-align: center;
}

#listing-showmore, #showmore-result, #showmore-special-offer {
    background-color: transparent;
    width: 430px;
    margin: 40px auto;
    border: 1px solid #767676;
    color: #1E232D;
    font-weight: bold;
}

#listing-showmore, #showmore-result, #showmore-special-offer:hover{
    opacity: .7;
}


/* Listing - List */
.mobile-list-product {
  display: none;
}

.category-main-listing_list {
  margin-top: 40px;
}

/* Product Item Card List */
.product-item-card_list {
  display: flex; /* Use flexbox for layout */
  gap: 40px; /* Space between items */
  justify-content: flex-start; /* Align items to the start */
  align-items: flex-start; /* Align items at the start vertically */
  padding: 20px 0;
  padding-left: 40px;
  border-top: 1px solid #E7E7E7;
}

/* Image Container */
.product-card_list-img {
  width: 210px; /* Fixed width for consistency */
  height: 150px; /* Fixed height for images */
  outline: none;
  border-radius: 9px;
  overflow: hidden; /* Hide overflow */
}

/* Image Styling */
.product-card_list-img > img {
  width: 100%; /* Take full width of the parent */
  height: auto; /* Maintain aspect ratio */
}

/* Details Section */
.product-card_list-details {
  flex-grow: 1; /* Allow this section to grow and fill available space */
}

/* Caption Styling */
.product-card_list-caption {
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 700;
}

/* Character Section */
.product-card_list-chars {
  margin-top: 30px;
  font-size: 14px;
  color: #767676;
  display: flex;
  width: 100%;
}

/* Column Layout for Characters */
.product-card_list-col {
    flex-grow: 1; /* Allow columns to grow equally */
    margin-right: 20px; /* Space between columns (optional) */
}

.product-card_list-chars a {
    color: #1E232D;
}

.product-card__wrap-item {
  display: flex;
  flex-direction: column;
}

/* Price Wrapper Section */
.product-card_list-price {
    min-width: 180px; /* Minimum width for price section */
    text-align: right; /* Align text to the right */
    color: #222222;
    font-size: 18px;
}

/* Price Styling */
.product-card_list-price p:last-child {
    font-weight: 700;
    text-transform: uppercase;
    line-height: 25px;
    font-size: 20px;
}

/* Button Styling */
#product-card_list-btn {
    margin-top: 25px;
    width: auto; /* Adjust width as needed, or use a specific value if desired */
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
}

#product-card_list-btn span {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 18px;
    line-height: 23px;
}

#product-card_list-btn img {
    width: 22px;
    height: 22px;
}

#product-card_list-btn:hover {
    background-color: var(--accent);
    color: white;
    opacity: .7; /* Change opacity on hover */
}

/* Media Query for Mobile Devices */
@media (max-width: 768px) {
    .product-item-card_list {
        flex-direction: column; /* Stack items vertically on mobile */
        padding-left:0; /* Remove left padding on mobile for better fit */
        gap:20px; /* Adjust gap for mobile view */
    }
    
    .product-card_list-img {
        height:auto; /* Allow image height to adjust based on content on mobile */
        max-height:auto; 
        width:auto; 
        margin-bottom :10px ;/* Space between image and details on mobile */ 
    }

    .product-card_list-details {
        padding-left :0 ;/* Remove left padding on mobile for better fit */ 
        padding-right :0 ;/* Remove right padding on mobile for better fit */ 
        margin-bottom :10px ;/* Space between details and price on mobile */ 
   }
}

/* text block */
.category-textblock {
  margin-top: 80px;
}

.category-textblock h2 {
  margin-bottom: 20px;
}

.category-textblock img {
  float: right;
  margin: 15px;
}

.category-textblock_showmore {
  display: block;
  margin-top: 20px;
  font-weight: 700;
  text-decoration: underline;
}

.mobile-form-afterlisting {
  display: none;
}

.mobile-filters {
  display: none;
}

/* CATEGORY - ADAPTIVE*/
@media (max-width:979px) {
  .category {
      padding-top: 40px;
  }
  .category-content {
    margin-top: 10px;
  }

  aside {
      display: none;
  }

  .category-main-title {
      margin-top: 10px;
      font-size: 30px;
      line-height: 44px;
  }

  #category-main-title {
    font-size: 30px;
  }

  .category-content-mobile_menu {
      display: flex;
      overflow-x: auto;
      white-space: nowrap;
      gap: 4px;
  }

  .category-mobile-link {
      padding: 4px 9px;
      background-color: #D9D9D9;
      border-radius: 30px;
      margin: 20px 0;
  }

  .category-main-filters_wrapper {
      margin-top: 18px;
  }

  .filter-btn, .filter-showmore  {
      width: 120px;
      height: 35px;
      font-size: 16px;
  }

  .switch_block, .switch_list {
      width: 35px;
      height: 35px;
  }

  .category-main-tags_wrapper {
      margin-top: 20px;
  }

  .category-mobile-link.active {
      background-color: #B5CEFF;
  }

  /* .category-main-listing_block > .product-item-card_block {
      width: 250px;
  } */

  .product-item-card_list {
      padding-left: 0;
      gap: 20px;
  }

  .product-card_list-chars {
      gap: 30px;
      margin-top: 10px;
  }

  .product-card_list-price {
      min-width: 140px;
  }

  .product-card_list-price p:last-child {
      font-size: 18px;
  }

  #product-card_list-btn span {
      font-size: 16px;
  }

  .category-textblock {
      margin-top: 40px;
  }

  .category-textblock h2 {
      font-size: 24px;
  }
}

@media (max-width:860px) {
  .category-sort-section {
      text-align: right;
  }

  .product-item-card_list {
      gap: 5px;
  }
}

@media (max-width:768px) {
  .category-main-title {
      margin-top: 0;
  }

  .category-main-filters_wrapper {
      display: none;
  }

  .category-main-tags_wrapper {
      display: none;
  }

  .mobile-filter-sort {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: 30px;
  }

  .mobile-switchview {
      width: 34px;
      height: 34px;
      background: url('../icons/sort-list.svg') center no-repeat;
      background-color: #E7E7E7;
      border: 1px solid #E7E7E7;
  }

  .mobile-switchview.block_list {
    background: url('../icons/sort-block.svg') center no-repeat;
    background-color: #E7E7E7;
    background-blend-mode: multiply;
    border: 1px solid #E7E7E7;
  }

  .mobile-filtersblock {
    width: 34px;
    height: 34px;
    background: url('../icons/filters-showmore-black.svg') center no-repeat;
  }

  .category-main-listing_list {
    margin-top: 22px;
  }

  .product-item-card_list {
    display: none;
  }

  /* .product-item-card_block {
    display: none;
  } */

    /* MOBILE FILTERS */
  .mobile-filters {
      display: none;
      position: absolute;
      /* top: -85px; */
      top: 0;
      left: 0;
      width: 100%;
      height:100vh;
      padding: 20px 10px;
      z-index: 9999;
      background: #fff;
      overflow: scroll;
      padding-bottom: 50px;
  }

  .mobile-filters.show {
      display: block;
  }

  .mobile-filters-caption {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-template-rows: 1fr 1fr;
      grid-auto-flow: row;
      justify-items: end;
      align-items: center;
      row-gap: 25px;
      padding: 10px;
      background-color: #fff;
      z-index: 9999;
  }

  .mobile-filters-caption img {
      grid-column: span 2;
  }

  .mobile-filters-caption_title {
      justify-self: start;
      font-size: 20px;
      line-height: 25px;
      font-weight: 700;
  }

  .mobile-filters-caption_reset {
      font-size: 12px;
      color: var(--accent);
      line-height: 15px;
      font-weight: 700;
      cursor: pointer;
  }

  .mobile-filters-caption_divider {
      position: fixed;
      height: 1px;
      width: 95%;
      background-color: #767676;
      top: 102px;
      margin-bottom: 20px;
  }

  .mobile-filters-price {
      margin-top: 92px;
      display: flex;
      place-content: center space-between;
      font-size: 14px;
  }

  .price-switch {
      position: relative;
      display: inline-block;
      width: 40px;
      height: 22px;
  }

  .price-switch input {
      display: none;
  }

  .price-slider {
      position: absolute;
      cursor: pointer;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: #d8dadd;
      -webkit-transition: .4s;
      transition: .4s;
      border-radius: 34px;
  }

  .price-slider:before {
      position: absolute;
      content: "";
      height: 16px;
      width: 16px;
      left: 4px;
      bottom: 3px;
      background-color: white;
      -webkit-transition: .4s;
      transition: .4s;
      border-radius: 50%;
  }

  .price-switch input:checked+.price-slider {
      background-color: var(--accent);
  }

  .price-switch input:focus+.price-slider {
      box-shadow: 0 0 1px var(--accent);
  }

  .price-switch input:checked+.price-slider:before {
      -webkit-transform: translateX(16px);
      -ms-transform: translateX(16px);
      transform: translateX(16px);
  }

  .dropdown-mobile-filter {
      margin-top: 30px;
      color: #98A0B4;
  }

  .dropdown-mobile-filter_caption {
      font-weight: 700;
      font-size: 14px;
      line-height: 17px;
  }

  .mobile-filter-showmore {
      margin-top: 10px;
      background-color: transparent;
      display: flex;
      width: 100%;
      justify-content: space-between;
      align-items: center;
      border: 1px solid #98A0B4;
  }

  .mobile-filter-showmore p {
      font-size: 14px;
  }

  .mobile-filter-showmore .arrow-down {
      margin-left: 5px;
      border: solid black;
      border-width: 0 2px 2px 0;
      display: inline-block;
      padding: 3px;
      transform: rotate(45deg);
      transition: all 0.5s ease-in;
  }

  .mobile-filter-showmore.active {
      border: none;
      margin-top: 0px;
      padding-top: 0px;
  }

  .mobile-filter-showmore.active .arrow-down {
      transform: rotate(225deg);
  }

  .filters-container.active {
      border: 1px solid #98A0B4;
      border-radius: 4px;
      margin-top: 10px;
  }

  .mobile-filters-dropdown_content {
      display: none;
  }

  .mobile-filters-dropdown_content.active {
      display: flex;
      flex-direction: column;
      gap:16px;
      padding: 10px;
      max-height: 250px;
      overflow: scroll;
      scrollbar-color: var(--accent) grey;
  }

  .mobile-filters-dropdown_content.active input {
      display: none;
  }

  .mobile-filters-dropdown_content.active label {
      display: flex;
      gap: 10px;
      align-items: center;
      color: black;
  }

  /* custom checkbox */

  .chbox-icon {
      position: relative;
      width: 20px;
      height: 20px;
      border: 1px solid #D0D5DD;
      border-radius: 5px;
  }

  .chbox-icon::before {
      content: '';
      position: absolute;
      display: none;
      width: 100%;
      height: 100%;
      background-color: var(--accent);
      border-radius: 5px;
  }

  label input:checked ~ .chbox-icon::before {
      display: block;
  }

  /* end custom checkbox */

  .filters-container a {
      display: none;
  }

  .filters-container.active a {
      display: block;
      color: var(--accent);
      padding: 15px 10px;
      font-weight: 700;
      font-size: 14px;
  }

  .mobile-filters-showall_btn {
      display: flex;
      width: 100%;
      justify-content: center;
  }

  .mobile-filters-showall_btn button {
      width: 225px;
      margin: 45px auto;
      text-transform: uppercase;
      font-weight: 700;
      font-size: 18px;
  }



  /* product - listview */

  .mobile-list-product {
      display: flex;
      border-top: 1px solid #E7E7E7;
      padding: 15px 0;
      gap: 10px;
      position: relative;
  }

  .mobile-list-product_img {
      width: 100px;
      height: 100px;
      border-radius: 5px;
      overflow: hidden;
  }

  .mobile-list-product_img img {
      width: 100%;
      height: 100%;
  }

  .mobile-list-product-item_caption {
      font-size: 16px;
      line-height: 24px;
      font-weight: 600;
  }

  .mobile-list-product-item_quantity {
      color: #9B9EA1;
      font-size: 14px;
      line-height: 24px;
  }

  /* .mobile-list-product-item_price {
      margin-top: 20px;
      color: #9B9EA1;
      font-size: 10px;
  } */

  .mobile-list-product-item_price {
      font-size: 18px;
      font-weight: 700;
      line-height: 16px;
      color: #000000;
      margin-top: 10px;
  }
  
  .mobile-list-product-item_price .product-item-list_price_property {
    font-size: 15px;
    color: #767676;
    font-weight: 500;
  }

  .mobile-list-product-item_price .product-item-list_price_value {
    font-size: 16px;
  }

  #mobile-list-item_delete {
      position: absolute;
      top: 10px;
      right: 0;
      width: 15px;
      height: 15px;
      border: none;
      background: url('../icons/closepopup.svg') center no-repeat;
  }

  #mobile-list-item_add-to-cart {
      position: absolute;
      bottom: 15px;
      right: 0;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      padding: 15px;
      background: url('../icons/product-item-cart-icon.svg') center no-repeat;
      background-color: var(--accent);

  }

  .mobile-list-product:last-child {
      border-bottom: 1px solid #E7E7E7;
  }


  .product-item-card-title {
      font-size: 12px;
      line-height: 18px;
  }

  .product-item-card_block p {
      font-size: 10px;
      line-height: 14px;
      color: #222222;
  }

  .product-item-card_divider {
      margin-top: 18px;
  }

  .product-item-card_price-wrapper {
      padding: 10px !important;
      align-items: flex-end;
  }

  .product-item-card_price > p:first-child {
      margin: 0;
  }

  .product-item-card_price > p:nth-child(2) {
      font-size: 12px;
      line-height: 12px;
      margin: 0;
  }

  #listing-showmore {
      width: 300px;
  }


  /* ASIDE FORM */ 
  .mobile-form-afterlisting {
      display: block;
      margin: 30px auto;
      max-width: 400px;
  }

  /* TEXTBLOCK */
  .category-textblock h2 {
      font-size: 25px;
  }

  .category-textblock p {
      font-size: 18px;
  }

  .category-textblock img {
      float:none;
      margin: 0 auto;

  }
}





/*::::::::::::::::::::PRODUCT PAGE::::::::::::::::*/
/* .product-page {
  padding-top: 100px; 
} */

.product-page-title {
  font-size: 50px;
  font-weight: 700;
  line-height: 125%;
  color: #1E232D;
  text-transform: uppercase;
}

.product-card {
  margin-top: 60px;
  display: flex;
  height: 500px;
  justify-content: space-between;
  align-items: flex-start;
}

.product-card-info {
  display: flex;
  gap: 30px;
  width: 60%;
  align-items: center;
  justify-content: space-between;
}

.product-card-info_img {
  border-radius: 16px;
  width: calc(100% / 1.7);
  height: 500px;
  overflow: hidden;
}

.product-card-info_img img {
  width: 100%;
  height: 100%;
}

.product-card-info_chars {
  width: calc(100% / 1.7);
}

.product-card-info_chars > div:first-child {
  font-weight: 700;
  font-size: 20px;
  line-height: 25px;
  text-transform: uppercase;
  margin-bottom: 15px;
}

.characteristics {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 0;
  border-bottom: 1px solid var(--normal);
}

.product-card-price {
  padding: 40px 20px;
  display: flex;
  width: 33%;
  flex-direction: column;
  border: 1px solid var(--normal);
  border-radius: 16px;
  box-shadow: 2px 2px 13px 4px rgba(0, 0, 0, 0.05);
}

.product-card-price_wrap {
  display: flex;
  width: 100%;
  gap: calc(100% / 4);
  align-items: flex-start;
}

.amount-sum {
  font-weight: 700;
  font-size: 28px;
}

.amount {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 115px;
  height: 36px;
  border: 1px solid var(--normal);
  border-radius: 5px;
}

.amount-controls {
  width: 33%;
  text-align: center;
  height: 100%;
  cursor: pointer;
}

.amount-controls-left {
  background: no-repeat center url('../icons/minus.svg');
}

.amount-controls-right {
  background: no-repeat center url('../icons/plus.svg');
}

.amount-input {
  width: 33%;
  height: 100%;
  border: none;
  outline: none;
  text-align: center;
}

/* Hide the number input spin buttons */
.amount-input::-webkit-inner-spin-button,
.amount-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.product-card-price_wrap > div {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.product-card-price_wrap > div p {
  font-size: 16px;
  margin: 0; /* Avoid margin collapse */
}

.product-card-buttons {
  width: 100%;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-transform: uppercase;
}

.product-card-buttons a {
  width: 100%;
  text-align: center;
  padding: 12px 0; 
  border-radius: 5px;
  color: var(--accent);
  font-weight: 700;
}

#add-to-cart-btn {
  background-color: var(--accent);
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

#add-to-cart-btn img {
  width: 22px;
  height: 22px;
}

#add-to-cart-btn:hover {
  background-color: var(--accent);
  opacity: 0.7;
}

.product-tab-block {
  margin-top: 80px;
}

.product-tab-btns {
  display: flex;
  gap: 30px;
  margin-left: 20px;
}

.product-tab-btns button {
  background: none;
  border: none;
  border-radius: 0;
  color: #767676;
  text-transform: uppercase;
  font-weight: 700;
  cursor: pointer;
}

.product-tab_btn.active {
  color: black;
  border-bottom: 2px solid var(--accent);
}

.product-tab-content {
  display: none; /* Hide all tab contents by default */
  border: 1px solid #E7E7E7;
  border-radius: 10px;
  padding: 35px 20px;
  min-height: 460px;
}

.product-tab-content.active {
  display: block; /* Show the active tab content */
}

.product-tab_title {
  font-size: 40px;
  font-weight: 700;
  line-height: 50px;
  margin-bottom: 30px;
}

.product-tab_subtitle {
  font-size: 25px;
  font-weight: 700;
}

.product-tab_text {
  margin-top: 15px;
  font-size: 18px;
  line-height: 23px;
}

/* Preferences */
.product-preferences {
  margin-top: 80px;
}

.product-preferences_title,
.product-similar_title {
  font-size: 40px;
  line-height: 50px;
  font-weight: 700;
  text-transform: uppercase;
}

.product-preferences-wrapper {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
}

.product-preference-item {
  position: relative;
  padding: 0 25px;
  padding-bottom: 20px;
  background-color: #F0F2F7;
  width: calc(100% / 3.2);
  border-radius: 10px;
}

.product-preference-item_caption {
  text-transform: uppercase;
  font-size: 20px;
  line-height: 25px;
  font-weight: 700;
  margin-top: 50px;
}

.product-preference-item_descr {
  font-size: 18px; /* Corrected font-weight */
  line-height: 24px;
  font-weight: 400;
  color: #1E232D;
  letter-spacing: 1px;
  margin-top: 10px;
  max-width: 85%;
}

.product-preference-item_img {
  position: absolute;
  right: 15px;
  top: 15px;
}

/* Products - Similar */
.product-similar {
  margin-top: 80px;
}

.product-item-card-container {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.product-item-card_block {
  border: 1px solid #E7E7E7;
  border-radius: 10px;
  overflow: hidden;
  width: calc(100% / 4.3);
}

.product-item-card-img {
  background-color: #E7E7E7;
  overflow: hidden;
  border-radius: 10px 10px 0 0;
}

.product-item-card-title {
  font-weight: 700;
  font-size: 16px;
  line-height: 18px;
  text-transform: uppercase;
}

.product-item-card_block > p {
  margin-top: 13px;
  color: #222222;
  font-size: 14px;
  line-height: 18px;
}

.product-item-card_divider {
  width: 95%;
  height: 1px;
  background-color: #e7e7e7;
  margin: 0 auto;
}

.product-item-card_price-wrapper {
  display: flex;
  justify-content: space-between;
  padding: 15px;
  align-items: flex-start;
}

.product-item-card_price > p:first-child {
  font-size: 12px;
  line-height: 18px;
  color: #222222;
}

.product-item-card_price > p:nth-child(2) {
  font-size: 16px;
  line-height: 18px;
  color: #1E232D;
  font-weight: 700;
}

.add-to-cart_btn {
  border-radius: 50%;
  width: 56px;
  height: 56px;
  background-color: var(--accent);
  cursor: pointer;
}

.add-to-cart_btn > img {
  width: 26px;
  height: 26px;
  margin: 0 auto;
}

.add-to-cart_btn:hover {
  background-color: var(--accent);
  opacity: 0.7;
}

.similar-slider {
  display: none;
}

.product-similar > .controls {
  display: none;
}



/* MODAL - oneclick */
.oneclick-cart-full-product {
  border: none;
  padding-bottom: 0;
}

.oneclick-popup_form {
  max-width: 100%;
  padding: 0 30px;
}

.oneclick-cart-full-product  .cart-product-item_caption {
  text-transform: uppercase;
  font-weight: 700;
}

.oneclick-cart-full-product .cart-product_img {
  max-width: 154px;
  max-height: 141px;
  width: 100%;

}

.oneclick-popup_form input:nth-child(2) {
  margin-bottom: 15px;
}

.oneclick-send-btn {
  text-transform: uppercase;
  width: 250px; 
  margin: 15px auto;
}



.oneclick-counter {
  display: flex;
  height: 30px;
  justify-content: center;
  align-items: center;
}

.oneclick-counter-input {
  max-width: 30px;
  height: 20px;
  background-color:var(--white);
  border: none;
  outline: none;
  font-size: 12px;
  text-align: center;
}

/* Hide the number input spin buttons */
.oneclick-counter-input::-webkit-inner-spin-button,
.oneclick-counter-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}


.oneclick-counter-controls {
  width: 30px;
  height: 20px;
  text-align: center;
  font-size: 12px;
  text-align: center;
  background-color:var(--normal);
  cursor: pointer;
}

.oneclick-counter-controls-left {
  border-radius: 4px 0 0 4px;
  background-color: #e7e7e7;
  background-image: url('../icons/minus.svg');
  background-repeat: no-repeat;
  background-position: center;
}

.oneclick-counter-controls-right {
  border-radius: 0 4px 4px 0;
  background: no-repeat center url('../icons/plus.svg');
  background-color: #e7e7e7;
  background-repeat: no-repeat;
  background-position: center;
}

.onclick-product-item {
  width: 70%;
}

.oneclick-item-card_price {
  width: 30%;
  margin-top: 70px;
}

.oneclick-item-card_price_property {
  font-weight: 500;
}
.oneclick-item-card_price_value {
  font-weight: 700;
}

.oneclick-bloc-item {
  display: flex;
  gap: 20px;
}

/* Media Query for Mobile Devices */
@media (max-width: 980px) {
  .oneclick-bloc-item {
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }

  .onclick-product-item {
    width: auto;
  }
  
  .oneclick-item-card_price {
    width: auto;
    margin-top: 0px;
  }
}



/* Media Queries */
@media (max-width: 1180px) {
  .product-card-price_wrap {
      justify-content: space-between;
      gap: calc(100% / 5);
  }

  .amount-sum {
      font-size: 20px;
  }
}

@media (max-width: 980px) {
  .product-page-title {
      font-size: 25px;
      line-height: 31px;
      margin-top: 40px;
  }

  .product-card {
      flex-direction: column;
      height: max-content;
      justify-content: center;
      align-items: center;
  }

  .product-card-info {
      width: 100%;
  }

  .product-card-price {
      width: 100%;
      margin-top: 10px;
      padding: 40px 80px;
  }

  .product-tab-block {
      margin-top: 50px;
  }

  .product-tab_title {
      font-size: 25px;
      line-height: 30px;
  }

  .product-tab_subtitle {
      font-size: 20px;
  }

  .product-tab-content {
      min-height: max-content;
  }

  .product-preferences_title, 
  .product-similar_title {
      font-size: 30px;
  }

  .product-preferences-wrapper {
      flex-direction: column;
      gap: 20px;
  }

  .product-preference-item {
      width: 100%;
  }

  .product-item-card-container {
      display: none;
  }

  .similar-slider {
      display: block;
  }

  .product-similar > .controls {
      display: block;
      text-align: right;
  }

  .similar-slider .slide {
      width: calc((100% - 10px) / 3);
  }

  .product-item-card_block {
      width: 100%;
  }
}

@media (max-width: 660px) {
  .product-card-info {
      flex-direction: column;
  }

  .product-card-info_img {
      width: 100%;
      height: 400px;
  }

  .product-card-info_chars {
      width: 100%;
  }

  .product-card-price {
      padding: 9px 13px;
  }

  .amount-sum {
      font-size: 20px;
  }

  .similar-slider .slide {
      width: calc((100% - 10px) / 2);
  }
}



/*::::::::::::::::::::SERVICES PAGE::::::::::::::::*/
.services-page {
  padding-top: 100px;
}

.services-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr); 
  gap: 75px 60px;
  margin-top: 60px;
}

.services-item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 15px;
}

.services-item_icon {
  width: 50px;
  height: 50px;
  overflow: hidden;
}

.services-item_icon img {
  max-width: 100%;
  height: auto;
}

.services-item_caption {
  font-size: 25px;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 15px;
}

.order-service-popup-title {
  font-size: 40px;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 15px;
}

.order-service-popup-descr {
  font-size: 18px;
}

.order-service-popup_form input[type='text'],
.order-service-popup_form input[type='tel']
{
  font-size: 16px;
}

.order-service-btn {
  margin-top: auto;
  padding: 0 30px;
  min-width: 180px;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 700;
}


#order-service-file-input {
  display: none;
}

#order-service-file-label {
  display: flex;
  margin: 15px 0;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  gap: 10px;
  align-items: center;
}

.order-service-popup_form {
  max-width: 100%;
}

.order-service-send-btn {
  margin-top: 15px;
  width: 180px;
  margin: 15px auto;
  text-transform: uppercase;
}

@media (max-width:630px) {
  .services-list {
      grid-template-columns: repeat(1, 1fr);
      margin: 40px 0;
  }

  .services-title {
      display: flex;
      gap: 7px;
      align-items: center;
  }

  .services-item {
      gap: 9px;
  }

  .services-item_icon {
      width: 25px;
      height: 25px;
  }

  .services-item_caption {
      margin-top: 0;
  }

  .order-service-popup-title {
      font-size: 20px;
  }

  .services-item_descr {
      font-size: 16px;
  }

  .order-service-btn {
      margin-top: 15px;
      width: 100%;
  }


  .order-service-popup-descr {
      font-size: 14px;
  }
  
  .order-service-popup_form input[type='text'],
  .order-service-popup_form input[type='tel']
  {
      font-size: 14px;
  }
}


/*::::::::::::::::::::NEWS DETAIL - PAGE ::::::::::::::::*/
.p-news {
  font-size: 18px;
}

.p-news-content {
  display: flex;
  flex-direction: column;
}

.p-news-title {
  font-size: 40px;
  line-height: 50px;
  margin: 44px 0;
}


.p-news-image {
  margin: 30px 0;
  overflow: hidden;
}

.p-news-image img {
  width: 100%; 
  height: 300px; 
  object-fit: cover; 
  border-radius: 8px;
}

.p-news-date {
  color: #757575;
  font-weight: 500;
  margin: 20px 0;
}

/* p-news media query */
@media only screen and (max-width:767px) {
  .p-news-title {
      font-size: 25px;
      line-height: 32px;
      margin: 30px 0;
  }
  .p-news-image img {
    height: 200px; 
    object-fit: cover;
  }

}


/*::::::::::::::::::::: NEWS LISTINGS PAGE ::::::::::::::::::::::::::::*/

/* .news-list {
  display: flex;
  flex-direction: column; 
  width: 100%;
}

.news-list .news-item:last-child {
  border-bottom: 1px solid #B9B6B6; 
}

.news-item {
  display: flex;
  flex-direction: row; 
  justify-content: space-between;
  align-items: stretch; 
  border-top: 1px solid #B9B6B6;
  padding: 25px 0;
  height: 100%; 
}

.news-item_date {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: flex-start;
  margin-right: 185px; 
}

.news-item_date div:first-child {
  font-size: 45px;
  line-height: 56px;
}

.news-item_date div:nth-child(2) {
  margin-top: 5px;
}

.news-item_date div > p:first-child {
  font-size: 18px;
  line-height: 24px;
}

.news-item_date div > p:nth-child(2) {
  font-size: 12px;
  line-height: 16px;
}

.news-item_info {
  display: flex;
  flex-direction: column; 
  justify-content: space-between; 
}

.news-item-caption {
  font-size: 25px;
  font-weight: 700;
  line-height: 33px;
}

.news-item-description {
  margin-top: 20px;
  font-size: 18px;
  line-height: 23px;
  max-width: 560px; 
}

.news-item-link {
  display: block;
  color: var(--accent);
  margin-top: 20px; 
  text-decoration: underline;
}

.news-item_imgwrapper {
  width: 360px; 
  height: auto; 
}

.news-item_imgwrapper img {
  width: 100%; 
  height: 200px; 
}

.btnwrapper {
  display: flex;
  align-items: center;
  justify-content: center; 
}

.news-list-showmore {
  margin: 50px 0; 
  border: 1px solid #767676; 
  background-color: transparent; 
  color: #1E232D; 
  font-size: 18px; 
  font-weight: 700; 
  max-width: 500px; 
  width: 100%; 
  text-align: center;
  cursor: pointer; 
  border-radius: 5px; 
}

.news-item_date-mob {
  display: none;
}

@media (max-width: 767px) {
  
  .news-list {
      margin-top: 20px; 
  }

  .news-item {
      flex-direction: column-reverse; 
      border-top: none; 
      padding-top: 0; 
      border-bottom: 1px solid #B9B6B6; 
      margin-bottom: 15px; 
      align-items: stretch;
      height:auto; 
  }

  .news-item_imgwrapper {
      width:auto ; 
      height:auto ; 
  }

  .news-item-caption {
      margin-top: 20px;
      font-size: 25px;
  }

  .news-item_date-mob {
    display: block;
    margin-top: 10px;
    font-size: 12px;
  }

  .news-item_date {
      display:none ; 
  }

  .news-item-description {
      display:none ; 
  }

  .news-item-link {
      display:none ; 
  }

  .news-list-showmore {
  max-width: none; 
  margin-top: 20px; 
  padding: 5px 10px; 
  font-size: 16px;
  }
} */

.news-list {
  display: flex;
  flex-direction: column; 
  width: 100%;
}

.news-list .news-item:last-child {
  border-bottom: 1px solid #B9B6B6; 
}

.news-item {
  display: flex;
  flex-direction: row; 
  justify-content: space-between;
  align-items: stretch; 
  border-top: 1px solid #B9B6B6;
  padding: 25px 20px; 
  height: 100%;
}

.news-item_date {
  display: flex;
  gap: 10px;
}

.news-item_date div:first-child {
  font-size: 45px;
  line-height: 56px;
}

.news-item_date div:nth-child(2) {
  margin-top: 5px;
}

.news-item_date div > p:first-child {
  font-size: 18px;
  line-height: 24px;
}

.news-item_date div > p:nth-child(2) {
  font-size: 12px;
  line-height: 16px;
}

.news-item_info {
  display: flex;
  flex-direction: column; 
  justify-content: space-between; 
  min-width: 300px; 
  max-width: 600px; 
  /* padding-left: 15px; */
}

.news-item-caption {
  font-size: 25px;
  font-weight: 700;
  line-height: 33px;
}

.news-item-description {
  margin-top: 10px; 
  font-size: 18px;
  line-height: 23px;
}

.news-item-link {
  display: block;
  color: var(--accent);
  margin-top: auto; 
  text-decoration: underline;
}

/* .news-item_imgwrapper {
  width: 360px; 
  height: auto; 
} */

.news-item_imgwrapper {
  width: 400px; /* Fixed width for image wrapper */
  height: 200px; /* Fixed height to ensure uniformity */
}

.news-item_imgwrapper img {
  width: 100%; 
  height: 100%; /* Ensure the image fills the wrapper */
  object-fit: cover;
}

.btnwrapper {
  display: flex;
  align-items: center;
  justify-content: center; 
}

.news-list-showmore {
  margin: 50px auto;
  border: 1px solid #767676; 
  background-color: transparent; 
  color: #1E232D; 
  font-size: 18px; 
  font-weight: 700; 
  max-width: 500px; 
  width: calc(100% - 40px);
  text-align: center;
  cursor: pointer; 
  border-radius: 5px; 
}

/* Mobile Styles */
.news-item_date-mob {
 display:none ; 
}

@media (max-width: 767px) {

 .news-list {
     margin-top: 20px; 
 }

 .news-item {
     flex-direction: column-reverse; 
     border-top:none ; 
     padding-top :0 ; 
     border-bottom :1px solid #B9B6B6 ; 
     margin-bottom :15px ; 
     align-items:flex-start ;
     height:auto ; 
 }

 .news-item_imgwrapper {
     width:auto ; 
     height:auto ; 
     max-width :100%; /* Ensure it doesn't exceed container width on mobile */
 }

 .news-item-caption {
     margin-top :20px ;
     font-size :25px ;
 }

 .news-item_date-mob {
     display:block ;
     margin-top :10px ;
     font-size :12px ;
 }

 .news-item_date {
     display:none ; 
 }

 .news-item-description {
     display:none ; 
 }

 .news-item-link {
     display:none ; 
 }

 .news-list-showmore {
    max-width:none; 
    margin-top :20px; 
    padding :5px 10px; 
    font-size :16px;
 }
}

/*::::::::::::::::::: ARTICLES DETAIL - PAGE ::::::::::::::::*/
.p-articles {
  font-size: 18px;
}

.p-articles-content {
  display: flex;
  flex-direction: column;
}

.p-articles-title {
  font-size: 40px;
  line-height: 50px;
  margin: 44px 0;
}


.p-articles-image {
  margin: 30px 0;
  overflow: hidden;
}

.p-articles-image img {
  width: 100%; 
  height: 300px; 
  object-fit: cover; 
  border-radius: 8px;
}

.p-articles-date {
  color: #757575;
  font-weight: 500;
  margin: 20px 0;
}

/* p-articles media query */
@media only screen and (max-width:767px) {
  .p-articles-title {
      font-size: 25px;
      line-height: 32px;
      margin: 30px 0;
  }
  .p-articles-image img {
    height: 200px; 
    object-fit: cover;
  }

}


/*:::::::::::: PAGE ARTICLES LISTINGS :::::::::::::*/
.articles-general-tags {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow-x: auto;
  gap: 4px;
  padding-top: 22px;
}

.articles-tag {
  padding: 4px 14px;
  border-radius: 30px;
  background-color: #F2F4F7;
}

.articles-tag.active {
  background-color: #B5CEFF;
}


.articles-tag:hover {
  opacity: 0.8; /* Slightly darken on hover */
}

.articles-general-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 21px;
}

/* .articles-general-list-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 15px;
  margin-bottom: 45px; 
}

.articles-general-list-item a {
  margin-top: auto;
} */

/* .articles-list-item_caption {
  font-size: 16px;
  line-height: 21px;
  color: #1E232D;
  font-weight: 700;
}

.articles-list-item_descr {
  font-size: 16px;
  line-height: 21px;
}

.articles-list_readmore {
  color: var(--accent);
  font-size: 14px;
  font-weight: 700;
  line-height: 18px;
} */

@media (max-width:735px) {
  .articles-general-list {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px;
  }

  /* .articles-general-list-item {
      margin-bottom: 10px;
  } */
}

@media (max-width:545px) {
  .articles-general-list {
      grid-template-columns: repeat(1, 1fr);
  }
}


/* SPECIAL OFFER LISTING PAGE */
.special-offer-main-listing_block {
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
  gap: 15px;
}

.special-offer-content {
  display: flex;
  gap: 22px;
  /* margin-top: 60px; */
}

.stock-special-offer_icon {
  position: absolute;
  margin: 10px;
  background-color: #3975ef;
  border-radius: 20px;
  padding: 5px;
  width: 80px;
  text-align: center;
  color: #ffffff;
  font-size: 14px;
}

.special-offer-tags{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  overflow-x: auto;
  gap: 4px;
  padding-top: 22px;
}

.offer-tag {
  padding: 4px 14px;
  border-radius: 30px;
  background-color: #F2F4F7;
}

.offer-tag.active {
  background-color: #B5CEFF;
}


.offer-tag:hover {
  opacity: 0.8; /* Slightly darken on hover */
}

@media (max-width: 768px) {
  .stock-special-offer_icon {
    width: 50px;
    font-size: 12px;
  }
}


/*::::::::::::::::::::ABOUT PAGE::::::::::::::::*/
.about-descr {
  margin-top: 60px;
  max-width: 100%;
}

.about-image {
  height: 430px; 
  overflow: hidden;
  margin-top: 50px;
}

.about-image img {
  height: 100%; 
  width: 100%; 
  display: block; 
}

.advantages-about {
  background-color: #3975EF;
  color: white;
  padding: 77px 0 150px 0;
  margin-top: 60px;
}

.about-caption {
  display: flex;
  justify-content: space-between;
  align-items:baseline;
}

.advantages-title {
  font-size: 45px;
  text-transform: uppercase;
  font-weight: 700;
}

.about-banner {
  height: 500px;
  margin-bottom: 120px;
  overflow: hidden;
}

.about-banner img {
  height: 100%; 
  width: 100%; 
  display: block; 
}

/*feedback + slider */
.slider {
  margin: 40px 0;
  width: 100%;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: stretch; 
}


.slider-wrapper {
  display: flex;
  gap: 10px;
  transition: transform 0.5s ease-in-out;
}

.slide {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start; 
}

.feedback-slider .slide {
  width: calc((100% - 20px) / 3);
  border: 1px solid var(--accent);
  padding: 27px 22px 36px 22px;
  border-radius: 10px;
}

.feedback-author {
  text-transform: uppercase;
  font-weight: 700;
  font-size: 20px;
}

.feedback-descr {
  margin-top: 13px;
  font-size: 16px;
}

.slider-prev, .slider-next {
  cursor: pointer;
  border: none;
  background-color: transparent;
  color: black;
  font-size: 40px;
  padding: 0;
}

.slider-prev:hover, .slider-next:hover {
  opacity: 0.7;
}

.slider-prev img, .slider-next img {
  width: 50px;
  height: 50px;
}

.slider-prev img {
  transform: rotateY(180deg);
}

/* ABOUT - TEAM */
.about-team {
  margin: 120px 0;
}

.about-title {
  font-size: 45px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 50px;
}

.about-team-gallery {
  display: flex;               /* Set the container to use flexbox */
  flex-wrap: wrap;            /* Allow items to wrap onto multiple lines */
  justify-content: space-between; /* Distribute space evenly between items */
  gap: 20px;                  /* Add space between items */
}

.about-team-gallery_item {
  display: block;
  flex-basis: calc(33.33% - 20px); /* Adjust width for three columns on desktop */
  height: 400px; /* Set a fixed height for consistency */
  overflow: hidden;
  border-radius: 7px;
  position: relative;
  transition: all 0.3s ease-in-out;    /* Include padding and borders in width calculations */
}

.about-team-gallery_item img {
  width: 100%; /* Take up full width */
  height: 100%; /* Take up full height */
  object-fit: cover; /* Maintain aspect ratio */
}

.about-team-gallery_emp {
  position: absolute;
  bottom: 40px;
  left: 30px;
  color: white;
  font-size: 16px;
}

.about-team-gallery_emp>p:nth-child(1) {
  font-weight: 700;
  font-size: 20px;
}

.about-team-description {
  width: 100%;
  /* height: 100%; */
  margin-top: 60px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.about-team-description p {
  flex-basis: 820px;
  flex-grow: 1;
  flex-shrink: 1;
  margin-right: 10px
}
.about-team-link {
  text-decoration: underline;
  text-transform: uppercase;
  color: var(--accent);
  font-weight: 700;
  font-size: 30px;
  line-height: 37px;
  text-align: right;
  flex-shrink: 1;
  flex-grow: 0;
}

/* sertificats */
/* .sertificats-slider {
  margin-bottom: 200px;
} */

.sertificats-slider .slide {
  width: calc((100% - 30px) / 4);
  padding: 0;
  border: none;
}

/* ABOUT PAGE - MEDIA */
@media (max-width: 980px) {
  .about {
      padding-top: 50px;
  }

  .about-descr {
      margin-top: 30px;
  }

  .about-text {
      font-size: 16px;
  }

  .about-image {
      background-position: 85% center;
  }

  .advantages-about { 
      padding: 46px 0 57px 0;
  }

  .advantages-title {
      font-size: 25px;
  }

  .about-title {
    font-size: 25px;
  }

  .vacancy-options_values {
      margin-top: 30px;
  }

  .about-banner {
      height: 320px;
      background-position: 75% center;
      margin-bottom: 60px;
  }

  .about-caption {
      align-items: center;
  }

  .about-team {
      margin: 100px 0;
  }

  .about-team-description p {
      font-size: 16px;
  }

  .about-team-link {
      font-size: 22px;
  }

  .advantages-title {
      font-size: 35px;
  }

  .sertificats-slider {
      margin-bottom: 100px;
  }

}

@media (max-width: 768px) {
  .feedback-slider,
  .slider-wrapper {
      overflow-x: auto;
  }

  .slider-wrapper::-webkit-scrollbar {
    display: none; 
  }

  .feedback-slider .slide,
  .sertificats-slider .slide {
      flex-shrink: 0;
      width: 70%;
      margin-right: 10px;
  }

  .about-team {
      margin: 60px 0;
  }

  .about-caption > .controls {
      display: none;
  }

  .about-team-gallery {
      overflow-x: auto; 
      flex-wrap: nowrap;
      gap: 20px; 
  }

  .about-team-gallery_item {
      min-width: calc(80% - 20px); 
      height: 300px;
  }

  .about-team-gallery::-webkit-scrollbar {
  display: none; 
  }

  .about-team-description {
      margin-top: 20px;
  }

  .about-team-description p {
      font-size: 18px;
  }

  .about-team-link {
      display: none;
  }

}

@media (max-width: 630px) {
  .vacancy-options_item {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      gap: 30px;
  }

  .vacancy-options_item-text {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      text-align: left;
  }
}


/*::::::: MODAL CHOOSE CITY ::::::::::*/
.choose-country-list {
  list-style-type: none;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 25px;
  row-gap: 15px;
  padding: 0;
}

.choose-country-list a:hover {
  color: var(--accent);
}

.choose-country-list a.active {
  color: var(--accent);
  font-weight: 700;
}

.close-choose-country-popup {
  cursor: pointer;
}


/*::::: COOKIES ::::::: */
.cookies-notification {
  position: fixed;
  bottom: 60px;
  /* right: 90px; */
  left: 60px;
  background-color: white;
  width: 520px;
  height: 200px;
  border-radius: 4px;
  padding: 24px;
  z-index: 9999;
  box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.14);
  display: none;
}

.cookies-notification.show {
  display: block;
}

.cookies-caption {
  display: flex;
  justify-content: space-between;
}

.cookies-caption div:first-child {
  font-weight: 700;
  font-size: 20px;
  line-height: 28px;
}

.cookies-descr {
  padding-top: 8px;
  font-size: 16px;
  color:#1E232D;
  line-height: 24px;
}

.cookies-descr a {
  text-decoration: underline;
}

.cookies-close {
  width: 14px;
  height: 14px;
  background: url('../icons/closepopup.svg') no-repeat center;
  cursor: pointer;
}

#cookies-accept {
  position: absolute;
  right: 20px;
  bottom: 20px;
  padding: 8px 16px;
  background-color: #1E232D;
  border: 1px solid #1E232D;
  margin-top: 15px;
  
}

#cookies-accept:hover {
  color: white;
  opacity: 0.7;
}

@media (max-width: 768px) {
  .cookies-notification {
      right: 12px;
      left: 12px;
      width: calc(100% - 24px);
      padding: 15px 20px;
      height: max-content;
  }

  .cookies-caption {
      font-size: 18px;
  }

  .cookies-descr {
      font-size: 16px;
      max-width: 80%;
  }

}

/* @media (max-width:980) {
  .cookies-notification {
      right: 30px;
      bottom: 80px;
      padding: 14px;
  }
} */



/*::::::::::::::::::::::::::::::Basket Card ::::::::::::::::::::::::::::::::::*/
/* Style du modal */
.p_choose-city {
  position: fixed;
  width: 600px;
  height: 100vh;
  left: 0; /* Positionné à gauche */
  top: 0;
  background-color: var(--background-color);
  z-index: 9999;
  transform: translateX(-100%); /* Commence hors de l'écran à gauche */
  transition: transform 0.4s ease-out; /* Transition uniquement sur la transformation */
}

/* Modal visible */
.p_choose-city.show {
  transform: translateX(0); 
}

.p_choose_city-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: black;
  opacity: 0.7;
  z-index: 9998; 
  display: none;
}

.p_choose_city-overlay.show {
  display: block; 
}

.p_choose_city-wrapper {
  display: flex;
  flex-direction: column;
  padding: 50px;
  color: #000;
  height: 100vh; 
}

.p_modal-city__close {
  position: absolute; 
  top: 20px; 
  right: 20px; 
}

.city-title {
  font-size: 40px;
  margin-bottom: 20px;
  color: var(--dark-background);
  font-weight: 700;
  text-transform: uppercase;
}

.city-seach_text {
  font-size: 20px;
  margin-bottom: 20px;
  color: var(--dark-background);
  font-weight: 700;
}


.city-search-input {
  width: 100%;
  padding: 10px 15px;
  border: none;
  border-bottom: 1px solid var(--hover);
  border-radius: 4px;
  outline: 0;
  box-shadow: none;
  margin-bottom: 20px;
}

.p_choose_city-list a:hover {
  color: var(--accent);
}

.p_choose_city-list a.active {
  color: var(--accent);
  font-weight: 700;
}

.p_choose_city-list {
  display: grid; 
  grid-template-columns: repeat(2, 1fr); 
  gap: 10px; 
  list-style-type: none;
  padding: 0;
}

.mobile-location-trigger img {
  width: 14px
}
.mobile-location-trigger {
display: flex;
gap: 9px
}

@media (max-width: 980px) {
  .p_choose-city {
      width: 100%;
      height: auto; 
      margin-top: 80px; 
      border: 1px solid var(--normal);
      border-radius: 10px;
      display: none; 
      position: fixed; 
      left: 0; 
      bottom: 0; 
  }

  .p_choose-city.show {
      display: block; 
  }

  .p_choose_city-wrapper {
      padding: 25px 15px;
      align-items: center;
      display: flex;
      flex-direction: column; 
      height: auto;
  }

  .city-title {
      font-size: 25px;
  }
}
