
:root {
    --transition: all 0.2s ease;
    --bs-primary: #286aca;
    --bs-blue: #286aca;
    --main-blue: #406DA8;
    --secondary-blue: #37567F;
}

html, body {
    height: 100% !important;
    min-height: 100% !important;

}

body {
    display: flex !important;
    flex-direction: column !important;
}

#container {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 0 auto !important;
    width: 100% !important;
}
#content {
    font-size: 1rem;
}

main {
    flex: 1 0 auto !important;
}

footer {
    flex-shrink: 0 !important;
}

h1, .h1 {
    font-size: 3.25rem;
    font-weight: 700;
    letter-spacing: -.3px; 
    margin-bottom: 2rem;
}
h2, .h2 {
    font-size: 2.5rem;
    font-weight: 700;
    letter-spacing: -.5px;
    margin-bottom: 1.5rem;
    margin-top: 2.5rem;
}
h3, .h3 {
  font-weight: 700;
  font-size: 1.75rem;
  margin-bottom: 1rem;
  margin-top: 1.5rem;
}
h4, .h4 {
  margin-bottom: 1.25rem;
}
h5, .h5 {
  font-weight: 600;

}
@media (max-width: 768px) {
  h1, .h1 {font-size: 2.75rem;}
}
legend {
  padding: 1rem 0 .75rem 0;
  margin-bottom: 1rem;
  border-bottom: 1px solid #e5e5e5;
  font-weight: 500;
}
label, small, .small  {
  font-size: .75rem;
  font-weight: normal;
}
button, .btn, input[type=text], input[type=password], .form-select, .form-control {
  border-radius: 1rem;
}
/* Chrome border line */
button:focus {
  outline: none !important;
}
.form-control-lg, .form-select-lg {
  font-size: .875rem;
  padding: .75rem 1rem;
}
.form-control::placeholder {
  color: var(--bs-gray-500);
  opacity: 1; /* важно для Firefox */
}
.form-control:disabled, .form-control[readonly] {
  color: var(--bs-gray-500);
  opacity: 1;
} 
.form-select {
  color: var(--bs-gray-500);
}
.form-select option:not([value=""]) {
  color: var(--bs-body-color);
}
.form-select:has(option:checked:not([value=""])) {
  color: var(--bs-body-color);
}
/* container */

/* content */
header {
  position: sticky;
  top: 0;
  z-index: 1050;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--bs-border-color);
  padding: 1.5rem 0;
}
#top .icon {
  width: 1rem;
  height: 1rem;
}
#top text-end {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
.phone-link:hover {color: var(--bs-gray-700)!important;}
/* Социальные иконки */
.social-link {
  display: inline-flex;
  align-items: center;
  margin-right: .75rem;
  text-decoration: none;
  transition: var(--transition);
}

.social-whatsapp::before, .social-telegram::before {
  content: "";
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
}
#information-contact .social-whatsapp::before, #information-contact .social-telegram::before {
  width: 1.25rem;
  height: 1.25rem; 
}
#information-contact .social-whatsapp {
  color: #25D366!important;
}
#information-contact .social-whatsapp span {
  color: var(--bs-primary);
}
#information-contact .social-telegram {
  color: #0088CE!important;
}
#information-contact .social-link span {
  margin-left: .5rem;
  font-size: 1rem;
  color: var(--bs-body-color);
}
#information-contact .social-whatsapp span, #information-contact .social-telegram span {
  color: var(--bs-primary);
}
#information-contact .fa-phone {
  color: var(--bs-gray);
    font-size: 1.125rem;
}
#information-contact .social-link:hover span {
  color: var(--bs-primary);
}
#information-contact .social-link {
  margin-right: 1.5rem;
}
#information-contact .social-whatsapp {
  margin-right: 0;
}

/* WhatsApp иконка */
.social-whatsapp {
  color: var(--bs-gray-600);
}
.social-whatsapp:hover {
  color: #25D366!important;
}
.social-whatsapp::before {
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z"/></svg>');
}

/* Telegram иконка */
.social-telegram {
  color: var(--bs-gray-600);
}
.social-telegram:hover {
  color: var(--bs-primary)!important;
}
.social-telegram::before {
  -webkit-mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>');
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>');
}

/* Социальные иконки в футере с ::before */

@media (min-width: 448px) and (max-width: 768px) {
  .footer-contacts {
      display: flex;
      gap: .5rem;
  }
}
.footer-contacts .social-link::before {
  margin-right: 0.5rem;
}

.footer-contacts .social-link {
  margin-bottom: 0.5rem;
  display: flex;
}
.footer-phone {
  display: flex;
  align-items: baseline;
  margin-bottom: .5rem;
  color: var(--bs-gray-600);
  transition: var(--transition);
}
.footer-phone i {
  margin-right: 0.5rem;
}
#alert {
  z-index: 9999;
  position: fixed;
  top: 3rem;
  left: 50%;
  width: 20rem;
  margin-left: -10rem;
}
#alert div {
  border-radius: 1rem;
}
#alert i {
  padding-right: .5rem;
}
@media (min-width: 992px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
@media (min-width: 1140px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
@media (min-width: 1320px) {
  #alert {
    width: 600px;
    margin-left: -300px;
  }
}
#alert .alert {
  margin-bottom: 15px;
}
#alert .alert-primary {
  box-shadow: 0 0 0 5px rgb(var(--bs-primary-rgb), 0.1);
}
#alert .alert-secondary {
  box-shadow: 0 0 0 5px rgb(var(--bs-secondary-rgb), 0.1);
}
#alert .alert-success {
  box-shadow: 0 0 0 5px rgb(var(--bs-success-rgb), 0.1);
}
#alert .alert-warning {
  box-shadow: 0 0 0 5px rgb(var(--bs-warning-rgb), 0.1);
}
#alert .alert-danger {
  box-shadow: 0 0 0 5px rgb(var(--bs-danger-rgb), 0.1);
}
#alert .alert-info {
  box-shadow: 0 0 0 5px rgb(var(--bs-info-rgb), 0.1);
}
#alert .alert-light {
  box-shadow: 0 0 0 5px rgb(var(--bs-light-rgb), 0.1);
}
#alert .alert-dark {
  box-shadow: 0 0 0 5px rgb(var(--bs-dark-rgb), 0.1);
}
/* top */
#top {
  background-color: #f3f4f6;
  border-bottom: 1px solid var(--bs-border-color);
  position: relative;
  font-size: .8rem;
  color: var(--bs-gray-600);
}
#top ul.list-inline {
  margin-bottom: 0;
}
#top .text-end .list-inline-item:first-child {
  margin-right: 1.25rem;
}
#top .list-inline-item:not(:last-child) {
  margin-right: 1rem;
}

#top .list-inline-item > a, #top .list-inline-item .dropdown > a {
  font-size: 1em;
  color: var(--bs-gray-600);
  line-height: 40px;
  vertical-align: middle;
}
#top .text-end {
  align-content: center;
}
#top .text-end ul {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
/* logo */
#logo {
  text-align: center;
  width: 182px;
  padding: 0;
}
#logo img {
  max-width: 182px;
}

/* Hero */
#hero {
  background: #08192e;
  position: relative;
  height: 62vh;
  width: calc(100% - 4rem);
  display: flex;
  align-items: center;
  border-radius: 3rem;
  margin: 0 auto;
}
#hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(/image/catalog/hero.png);
  background-size: cover;
  opacity: 0.8;
  border-radius: 3rem;
  z-index: 1;
}
@media (max-width: 576px) {
  #hero  {
  width: calc(100% - 2rem);
  }
}
.hero-content {
  position: relative;
  z-index: 10;
  max-width: 1280px;
  width: 100%;
  padding: 0 2rem;
}
.hero-title {
  font-weight: bold;
  letter-spacing: -0.025em;
  margin-bottom: 1.5rem;
  color: #fff;
  line-height: 1;
  max-width: 36rem;
}
.hero-buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
    padding-top: 1rem;
}
@media (max-width: 768px) {
  .hero-content {padding: 0 1.5rem;}
  .hero-title {font-size: 2.5rem; }
  .hero-buttons {gap: .5rem; padding-top: .5rem;}
}
#hero-tagline {
    text-align: center;
    padding: 5rem 1.5rem;
    margin: 0 auto;
    font-size: 2.5rem;
    font-weight: 700;
    letter-spacing: -.5px;
    margin-bottom: 1.5rem;
    color: var(--bs-body-color);
    line-height: 1.25;
    max-width: 20em;
}

@media (min-width: 768px) {
  #logo {
    text-align: left;
  }
}
@media (max-width: 768px) {
  #logo {
    width: 100%;
  }
}

.header-container {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
.header-buttons {
  display: flex;
  gap: 2.5rem;
}
.header-search {
  flex: 0 0 auto;
  width: 33%;
}
.header-search .form-control {
  padding: 0.67rem 1rem;
}
@media (min-width: 1200px) {
  .header-search {
    width: 38%;
  }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .header-search {
    width: 25%;
  }
}
@media (max-width: 448px) {
  .header-search {
    width: calc(100% - 44px - 2rem);
  }
  #logo {
    width: 44px;
    overflow: hidden;
  }
}


/* search */
#search {
  margin-bottom: 10px;
}
#search .form-control-lg {
  height: 40px;
  font-size: 12px;
  line-height: 20px;
  padding: 0 10px;
}
#search .btn-lg {
  font-size: 15px;
  line-height: 18px;
  padding: 0.57rem 35px;
  text-shadow: 0 1px 0 #FFF;
}
.header-info {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
/* cart */
.header-cart {
  border-radius: 2rem;
  font-size: 1.015625rem;
  line-height: 18px;
  padding: 1rem 2rem;
  border-radius: 1rem;;
  border: 1px solid var(--bs-gray-300);
  color: var(--bs-black);
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  background-color: var(--bs-body-bg);
  display: flex;
  align-items: center;
  gap: .25rem;
}
.header-cart:hover {
  border: 1px solid var(--bs-gray-400);
  background-color: var(--bs-gray-100);
}
.header-cart > i{
  margin-right: .25rem;
}
.header-cart.filled {
  color: var(--bs-primary);
  background-color: var(--bs-body-bg);

}
@media (max-width: 992px) {
  .header-cart.filled {
    color: var(--bs-body-color);
  }
}
.header-cart.filled:hover {
  background-color: var(--bs-tertiary-bg);
  border-color: var(--bs-primary);
}
#cart {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.header-login {
  display: flex;
  align-items: center;
  justify-content: flex-end; 
  justify-content: center;
}
.header-login a {
  color: var(--bs-gray);
}
.header-login a:hover {
  color: var(--bs-gray-700);
}
.header-login .fa-user {
  margin-right: .25rem;
}
.header-login .fa-caret-down {
  margin-left: .125rem;
}
.header-login .dropdown-menu {
    border-radius: 1rem;
    box-shadow: 0 8px 26px #6c757d14;
    border-color: var(--bs-gray-200);
}
.header-login .dropdown-menu a {
    padding: .675rem 1.25rem;
    font-size: .875rem;
}
.header-login .dropdown-menu a:active {
  background-color: var(--bs-gray-200);
}

.header-loginurl {
  display: flex;
  align-items: center;
  gap: .625rem;
  color: var(--bs-gray);
  font-size: 1rem;
}

@media (max-width: 768px) {
  #cart .dropdown-menu li {
    min-width: 100%;
  }
}
/* menu */
#menu {
  background-color: var(--bs-primary);;
  background-image: linear-gradient(to bottom, #23a1d1, #1f90bb);
  background-repeat: repeat-x;
  border: 1px solid #1f90bb;
  border-color: #1f90bb #1f90bb #145e7a;
  min-height: 40px;
  border-radius: 4px;
  padding: 0 1rem;
  margin-bottom: 20px;
}
#menu .navbar-nav > li > a {
  color: #fff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  padding: 10px 15px 10px 15px;
  background-color: transparent;
}
#menu .navbar-nav > li > a:hover {
  background-color: rgba(0, 0, 0, 0.1);
}
#menu .dropdown-menu {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
#menu .dropdown-inner {
  display: flex;
  flex-direction: column;
}
#menu .dropdown-inner ul {
  width: 100%;
  min-width: 200px;
}
@media (min-width: 960px) {
  #menu .dropdown:hover .dropdown-menu {
    display: block;
  }
  #menu .dropdown-inner {
    flex-direction: row;
  }
  #menu .nav-item + .nav-item + .nav-item .dropdown-column-3 {
    left: -200px;
  }
  #menu .nav-item + .nav-item + .nav-item .dropdown-column-4 {
    left: -400px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-2 {
    left: -200px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-3 {
    left: -400px;
  }
  #menu .nav-item + .nav-item + .nav-item + .nav-item .dropdown-column-4 {
    left: -600px;
  }
}
#category {
  float: left;
  font-size: 16px;
  font-weight: 700;
  line-height: 40px;
  color: #fff;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
}
#menu .navbar-toggler i {
  color: #fff;
  border-color: #fff;
  font-size: 0.9em;
}
/* default boostrap changes */
div.required .col-form-label:before, div.required .form-label:before {
  content: "* ";
  color: #F00;
  font-weight: bold;
}
.form-switch-lg {
  font-size: 1.5rem;
  line-height: 1.5;
}
.nav-tabs {
  margin-bottom: 15px;
}
.form-check .form-check-input {
  margin-top: 0.685rem;
}
#shipping-addresses .form-check-input {
  margin-top: .375rem;
}
@media (min-width: 960px) {
  .col-form-label {
    text-align: right;
  }
}
#shopping-cart > h1 {
  display: inline-flex;
  align-items: baseline;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 1.5rem;
}
.cart-clean {
 font-size: .875rem;
 font-weight: 600;
 letter-spacing: 0;
}
/* footer */
footer {
    background: #f3f4f6;
    margin-top: 1.5rem;
    border-top: 1px solid var(--bs-border-color);
    padding: 2.5rem 0 1.5rem 0;
}
footer hr {
  border-top: none;
  border-bottom: 1px solid #666;
}
footer a {
    color: var(--bs-gray-600);
    text-decoration: none;
    font-size: 0.875rem;
    transition: var(--transition);
}

footer a:hover {
  color: var(--bs-primary);
}
footer h5 {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bs-body-color);
    margin-bottom: 1rem;
}
footer li {
    margin-bottom: 0.5rem;
}
.footer-bottom {
    border-top: 1px solid var(--bs-border-color);
    padding-top: 1.5rem;
    margin-top: 2rem;
}

.footer-copyright {
  font-size: 0.75rem;
  color: var(--text-light);
  margin-bottom: 0;
  line-height: 1.7;
  color: var(--bs-gray-600);
}
.footer-copyright a {
  font-size: 0.75rem;
  color: var(--bs-gray-700);
  border-bottom: 1px solid var(--bs-gray-400);
}
.footer-shop-info {
  color: var(--bs-gray-600);
  font-size: .75rem;
}
.footer-shop-info p {max-width: 15em;}
.footer-shop-info h5 {
  font-size: 1.5rem;
  letter-spacing: -.5px;
  font-weight: 700;
  margin-bottom: .875rem;
  color: var(--bs-gray-600);
}
.disclaimer-section {
    border-top: 1px solid var(--bs-border-color);
    margin-top: 4rem;
}
.disclaimer-text {
  text-align: center;
  color: var(--bs-gray-500);
  font-size: .875rem;
  line-height: 1.6;
  max-width: 70em;
  margin: 2rem auto 1rem auto;
  padding: 0 1rem;
  font-style: italic;
}

/* Benefits */
.benefits-section { padding:4rem 0; background:#f9fafb; margin: 6rem auto 0 auto; border-top: 1px solid var(--bs-border-color); border-bottom: 1px solid var(--bs-border-color); }
.benefits-grid { display:grid; grid-template-columns:1fr; gap:2rem; row-gap: 3rem;}
.benefit-item { text-align:center; }
.benefit-icon { display:inline-flex; align-items:center; justify-content:center; width:4rem; height:4rem; background:var(--bs-body-bg); border-radius:50%; border: 1px solid var(--bs-border-color);margin-bottom:1.5rem; }
.benefit-icon svg { width:1.75rem; height:1.75rem; color:var(--bs-body-color);}
.benefit-title { font-size:1.125rem; margin-bottom:.5rem; }
.benefit-description { font-size:.875rem; color:#666; }

/* Иконки преимуществ с CSS */
.benefit-icon.icon-synthetic::before,
.benefit-icon.icon-ready::before,
.benefit-icon.icon-components::before,
.benefit-icon.icon-storage::before {
  content: "";
  width: 1.75rem;
  height: 1.75rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.benefit-icon.icon-synthetic::before {
  background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.54492 0.0341797C9.78301 0.0351573 9.98715 0.203941 10.0332 0.4375C10.3958 2.2832 11.4893 4.06665 12.9443 5.25195C14.5766 6.58148 15.4426 8.20625 15.4434 9.95801L15.4404 10.1797C15.4047 11.2851 15.0676 12.3608 14.4648 13.2861C13.8218 14.2732 12.9045 15.0455 11.8281 15.5029C10.7515 15.9604 9.5642 16.0822 8.41895 15.8525C7.27393 15.6228 6.22273 15.0522 5.39844 14.2148C5.20486 14.018 5.20757 13.7015 5.4043 13.5078C5.60109 13.3142 5.91763 13.3169 6.11133 13.5137C6.79671 14.2099 7.66889 14.6821 8.61621 14.8721C9.56343 15.062 10.545 14.9618 11.4365 14.583C12.3283 14.2041 13.0911 13.5627 13.627 12.7402C14.1627 11.9177 14.4474 10.9506 14.4434 9.96191V9.95996C14.4433 8.57069 13.7663 7.21076 12.3135 6.02734C11.1144 5.05064 10.1371 3.71768 9.54102 2.25293C9.3506 2.72208 9.12305 3.17627 8.85742 3.6084C8.7127 3.8433 8.40503 3.91698 8.16992 3.77246C7.93473 3.62784 7.86128 3.31921 8.00586 3.08398C8.50568 2.2708 8.8602 1.37343 9.05273 0.433594L9.07812 0.349609C9.1528 0.161284 9.3365 0.0333541 9.54492 0.0341797ZM4.14258 1.8252C4.38144 1.82521 4.58663 1.99418 4.63281 2.22852C4.83352 3.25029 5.43443 4.23383 6.22852 4.89355C7.1973 5.69825 7.72845 6.6947 7.72852 7.78418C7.72852 9.78906 6.13078 11.4658 4.14258 11.4658C2.15438 11.4658 0.556641 9.78905 0.556641 7.78418C0.556702 6.70656 1.07685 5.6919 2.06055 4.89062C2.85645 4.24214 3.45101 3.25351 3.65234 2.22852L3.67676 2.14453C3.75015 1.95492 3.93338 1.82521 4.14258 1.8252ZM4.14355 3.83594C3.78866 4.54277 3.28932 5.17899 2.69141 5.66602C1.90088 6.30995 1.5567 7.05529 1.55664 7.78418C1.55664 9.2669 2.73633 10.4658 4.14258 10.4658C5.54884 10.4658 6.72852 9.26691 6.72852 7.78418C6.72845 7.05143 6.37989 6.31932 5.58984 5.66309C5.00034 5.17342 4.50001 4.54064 4.14355 3.83594Z" fill="currentColor"/></svg>');
}

.benefit-icon.icon-ready::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M10.854 6.146a.5.5 0 0 1 0 .708l-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 1 1 .708-.708L7.5 8.793l2.646-2.647a.5.5 0 0 1 .708 0"/><path d="M3 0h10a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2v-1h1v1a1 1 0 0 0 1 1h10a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v1H1V2a2 2 0 0 1 2-2"/><path d="M1 5v-.5a.5.5 0 0 1 1 0V5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0V8h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1zm0 3v-.5a.5.5 0 0 1 1 0v.5h.5a.5.5 0 0 1 0 1h-2a.5.5 0 0 1 0-1z"/></svg>');
}

.benefit-icon.icon-components::before {
  background-image: url('data:image/svg+xml;utf8,<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><g clip-path="url(%23clip0_114_11)"><path d="M10 0C11.1046 0 12 0.89543 12 2C12 3.10457 11.1046 4 10 4C9.95365 4 9.90787 3.99529 9.8623 3.99219L9.24805 5.83594C9.99575 6.26808 10.5 7.07431 10.5 8C10.5 8.50948 10.3467 8.98274 10.085 9.37793L12.1211 11.4141C12.5163 11.1523 12.9904 11 13.5 11C14.8807 11 16 12.1193 16 13.5C16 14.8807 14.8807 16 13.5 16C12.1193 16 11 14.8807 11 13.5C11 12.9904 11.1523 12.5163 11.4141 12.1211L9.37793 10.085C8.98274 10.3467 8.50948 10.5 8 10.5C7.40072 10.5 6.85154 10.2881 6.4209 9.93652L4.71094 11.3359C4.89447 11.6838 5 12.0793 5 12.5C5 13.8807 3.88071 15 2.5 15C1.11929 15 0 13.8807 0 12.5C0 11.1193 1.11929 10 2.5 10C3.09879 10 3.64765 10.2114 4.07812 10.5625L5.78809 9.16309C5.60494 8.8155 5.5 8.42019 5.5 8C5.5 6.61929 6.61929 5.5 8 5.5C8.10116 5.5 8.20081 5.50688 8.29883 5.51855L8.91309 3.67676C8.36415 3.3202 8 2.70334 8 2C8 0.89543 8.89543 0 10 0ZM13.5 12C13.4446 12 13.3898 12.0029 13.3359 12.0088C13.3251 12.01 13.3145 12.0122 13.3037 12.0137C12.6324 12.1015 12.1015 12.6324 12.0137 13.3037C12.0122 13.3145 12.01 13.3251 12.0088 13.3359C12.0029 13.3898 12 13.4446 12 13.5C12 14.3284 12.6716 15 13.5 15C14.3284 15 15 14.3284 15 13.5C15 12.6716 14.3284 12 13.5 12ZM2.5 11C1.67157 11 1 11.6716 1 12.5C1 13.3284 1.67157 14 2.5 14C3.32843 14 4 13.3284 4 12.5C4 12.4515 3.99691 12.4037 3.99219 12.3564C3.98896 12.3225 3.98396 12.2891 3.97852 12.2559C3.97702 12.2471 3.97626 12.2382 3.97461 12.2295C3.87205 11.6668 3.45639 11.2141 2.91406 11.0586C2.90951 11.0573 2.90496 11.056 2.90039 11.0547C2.84562 11.0395 2.78951 11.0284 2.73242 11.0195C2.71812 11.0173 2.70389 11.0145 2.68945 11.0127C2.62737 11.0049 2.56421 11 2.5 11ZM7.96973 6.50098H7.9707C7.96222 6.50114 7.95376 6.50165 7.94531 6.50195C7.85312 6.50526 7.76301 6.51594 7.67578 6.53516C7.67116 6.53617 7.66672 6.538 7.66211 6.53906C7.52337 6.57102 7.39157 6.62099 7.27051 6.68848C7.26515 6.69146 7.2602 6.69519 7.25488 6.69824C7.18106 6.74059 7.11115 6.78892 7.0459 6.84277L7.03418 6.85254C7.01619 6.86768 6.99967 6.88444 6.98242 6.90039C6.96669 6.91495 6.94966 6.92814 6.93457 6.94336C6.91736 6.9607 6.9021 6.97989 6.88574 6.99805C6.83788 7.05124 6.7919 7.10636 6.75195 7.16602C6.74075 7.18274 6.73124 7.20059 6.7207 7.21777C6.70585 7.24201 6.69025 7.26589 6.67676 7.29102C6.56342 7.50197 6.5 7.74368 6.5 8C6.5 8.04779 6.50227 8.09502 6.50684 8.1416C6.50776 8.15143 6.50963 8.16113 6.51074 8.1709C6.51459 8.20341 6.51849 8.23574 6.52441 8.26758C6.62577 8.83024 7.04075 9.28256 7.58203 9.43945C7.58915 9.44154 7.59635 9.44332 7.60352 9.44531C7.65555 9.45955 7.70856 9.47088 7.7627 9.47949C7.77857 9.48206 7.7945 9.48427 7.81055 9.48633C7.87267 9.49417 7.93575 9.5 8 9.5C8.05514 9.5 8.10948 9.49603 8.16309 9.49023C8.17391 9.48901 8.18456 9.48681 8.19531 9.48535C8.86732 9.39785 9.39785 8.86732 9.48535 8.19531C9.48681 8.18456 9.48901 8.17391 9.49023 8.16309C9.49603 8.10948 9.5 8.05514 9.5 8C9.5 7.94184 9.4957 7.88456 9.48926 7.82812C9.48794 7.81661 9.48498 7.80537 9.4834 7.79395C9.47713 7.74837 9.47023 7.70335 9.45996 7.65918C9.45735 7.648 9.45403 7.63705 9.45117 7.62598C9.44044 7.58421 9.42822 7.54321 9.41406 7.50293C9.40987 7.49105 9.40487 7.47952 9.40039 7.46777C9.38637 7.43091 9.37127 7.39478 9.35449 7.35938C9.34754 7.34475 9.34139 7.32979 9.33398 7.31543C9.08513 6.83147 8.58164 6.5 8 6.5C7.98988 6.5 7.9798 6.50078 7.96973 6.50098ZM10 1C9.44772 1 9 1.44772 9 2C9 2.55228 9.44772 3 10 3C10.185 3 10.3572 2.94794 10.5059 2.86035C10.5124 2.85649 10.5189 2.85264 10.5254 2.84863C10.6141 2.79358 10.6934 2.72567 10.7607 2.64648C10.7667 2.63943 10.7725 2.63222 10.7783 2.625C10.8079 2.58818 10.8351 2.54962 10.8594 2.50879C10.8634 2.50201 10.8672 2.49516 10.8711 2.48828C10.8955 2.44485 10.9168 2.39968 10.9346 2.35254C10.9381 2.3432 10.9411 2.33369 10.9443 2.32422C10.9502 2.3071 10.956 2.28998 10.9609 2.27246C10.9673 2.2499 10.9737 2.22728 10.9785 2.2041C10.9798 2.19792 10.9813 2.19177 10.9824 2.18555C10.9858 2.16752 10.9878 2.14922 10.9902 2.13086C10.9958 2.08798 11 2.04441 11 2C11 1.44772 10.5523 1 10 1Z" fill="black"/></g><defs><clipPath id="clip0_114_11"><rect width="16" height="16" fill="white"/></clipPath></defs></svg>');
}

.benefit-icon.icon-storage::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"><path d="M8.515 1.019A7 7 0 0 0 8 1V0a8 8 0 0 1 .589.022zm2.004.45a7 7 0 0 0-.985-.299l.219-.976q.576.129 1.126.342zm1.37.71a7 7 0 0 0-.439-.27l.493-.87a8 8 0 0 1 .979.654l-.615.789a7 7 0 0 0-.418-.302zm1.834 1.79a7 7 0 0 0-.653-.796l.724-.69q.406.429.747.91zm.744 1.352a7 7 0 0 0-.214-.468l.893-.45a8 8 0 0 1 .45 1.088l-.95.313a7 7 0 0 0-.179-.483m.53 2.507a7 7 0 0 0-.1-1.025l.985-.17q.1.58.116 1.17zm-.131 1.538q.05-.254.081-.51l.993.123a8 8 0 0 1-.23 1.155l-.964-.267q.069-.247.12-.501m-.952 2.379q.276-.436.486-.908l.914.405q-.24.54-.555 1.038zm-.964 1.205q.183-.183.35-.378l.758.653a8 8 0 0 1-.401.432z"/><path d="M8 1a7 7 0 1 0 4.95 11.95l.707.707A8.001 8.001 0 1 1 8 0z"/><path d="M7.5 3a.5.5 0 0 1 .5.5v5.21l3.248 1.856a.5.5 0 0 1-.496.868l-3.5-2A.5.5 0 0 1 7 9V3.5a.5.5 0 0 1 .5-.5"/></svg>');
}

@media (min-width:576px) { 
    .benefits-grid { grid-template-columns: repeat(2, 1fr); row-gap: 4rem; gap: 4rem;} 
    .benefits-section {padding: 6rem 0;}
}
@media (min-width:1140px) { 
    .benefits-grid { grid-template-columns: repeat(4, 1fr); padding: 0 1rem; gap: 2rem;} 
}

/* Home bottom content */
.botcontent-section {
    padding: 6rem 0 3rem 0;
    background: var(--bs-body-bg);
}
.botcontent-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 4rem;
    align-items: center;
}

.botcontent-title {
    font-size: 2.25rem;
    margin-bottom: 1.5rem;
}

.botcontent-text {
    color: #374151;
    line-height: 1.75;
}

.botcontent-text p {
    margin-bottom: 1rem;
    font-size: 1rem;
}

.botcontent-image {
    border-radius: 3rem;
    overflow: hidden;
    display: flex;
}

.botcontent-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-height: 30rem;
    max-width: 30rem;
    border-radius: 3rem;
    margin: 0 auto;
}

@media (min-width:986px) { 
    .botcontent-content { max-width: 34em;}
    .botcontent-grid { grid-template-columns: repeat(2, 1fr); gap: 6rem;} 
}

@media (min-width:1140px) {
  .botcontent-grid {padding: 0 3rem;}
}
@media (min-width:1320px) {
  .botcontent-grid {padding: 0 6rem;}
}

/* breadcrumb */
.breadcrumb {
  margin: 1.5rem 0;
  padding: .5rem 0;
}
.breadcrumb i {
  font-size: 15px;
}
.breadcrumb > li.breadcrumb-item {
  text-shadow: 0 1px 0 #FFF;
  padding: 0 20px;
  position: relative;
  white-space: nowrap;
}
.breadcrumb > li.breadcrumb-item:first-child {
  padding-left: 0;
}
.breadcrumb > li.breadcrumb-item > a {
  text-decoration: none;
  color: var(--bs-gray);
}
.breadcrumb > li.breadcrumb-item:after {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  right: -5px;
  width: .5rem;
  height: .5rem;
  border-right: 1px solid var(--bs-gray-400);
  border-bottom: 1px solid var(--bs-gray-400);
  transform: rotate(-45deg);
}
.breadcrumb > li.breadcrumb-item:last-child:after {display: none;}
.breadcrumb > li.breadcrumb-item + li:before {
  content: "";
  padding: 0;
}

.cart-quantity {
    display: flex;
    justify-content: space-around;
    gap: 1rem;
}
.cart-quantity input[type="text"]:disabled {
    cursor: default;
    background-color: var(--bs-body-bg);
}
.total-widget {
    border: 1px solid var(--bs-border-color);
    border-radius: 1.5rem;
    padding: 2rem;
    margin-left: 6rem;
}
.total-widget > div {
    font-size: 1.25rem;
    font-weight: 500;
}
#checkout-confirm {
    font-size: .875rem;
}
#checkout-confirm tfoot > tr:last-child {
  border: 1px solid var(--bs-body-bg);
  vertical-align: baseline;
}
#checkout-confirm tfoot > tr:last-child > td:last-child {
  font-size: 1.5rem;
   font-weight: 700;
}
.checkout-sticky {
  height: fit-content;
  position: sticky;
  top: 8rem;
}
.checkout-agreement {
    margin-top: 1rem;
    font-size: .75rem;
    color: var(--bs-gray);
    margin-left: 6rem;
}
#input-register + label, #input-guest + label, #shipping-methods-list label, #payment-methods-list label {
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: space-around;
    border-radius: 1rem;   
    font-size: .875rem;
    line-height: 1.35;
    border: var(--bs-border-width) solid var(--bs-border-color);
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    text-align: center;
    cursor: pointer;
    transition: border-color 0.1s ease, background-color 0.1s ease;
}
#input-register:checked + label, #input-guest:checked + label, #shipping-methods-list input:checked + label, #payment-methods-list  input:checked + label {
  border: 3px solid var(--bs-primary) !important;
  font-weight: bold;
  background-color: var(--bs-tertiary-bg);
  cursor: default;
}
#input-register + label:hover, #input-guest + label:hover, #shipping-methods-list input + label:hover, #payment-methods-list input + label:hover {
  background-color: var(--bs-tertiary-bg);
}

#shipping-methods-list input[type="radio"], #payment-methods-list input[type="radio"] {
  display: none;
}
#shipping-methods-list .form-check, #payment-methods-list .form-check {
  padding-left: 0;
}
#shipping-methods-list label, #payment-methods-list label {
  justify-content: flex-start;
  padding: 0.5rem 1.5rem 0 3.5rem;
  margin-bottom: .5rem;
  position: relative;
}
#shipping-methods-list label::before, #payment-methods-list label::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 1.5rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  border: 2px solid var(--bs-border-color);
  background-color: var(--bs-body-bg);
  transform: translateY(-50%);
}
#shipping-methods-list input:checked + label::before, #payment-methods-list input:checked + label::before{
  border-color: var(--bs-primary);
  border: 1px solid var(--bs-primary);
}
#shipping-methods-list input + label::after, #payment-methods-list input + label::after{
  width: 0;
  height: 0;
  content: "";
  position: absolute;
  top: 50%;
  left: 2rem;
  border-radius: 50%;
  transform: translateY(-50%);
  transition: var(--transition);
}
#shipping-methods-list input:checked + label::after, #payment-methods-list input:checked + label::after {
  left: 1.75rem;  
  width: 0.5rem;
  height: 0.5rem;
  background-color: var(--bs-primary);
}
#shipping-methods-list input:focus-visible + label, #payment-methods-list input:focus-visible + label, #input-register:focus-visible + label, #input-guest:focus-visible + label {
  outline: 2px solid var(--bs-primary);
  outline-offset: 2px;
}
#toggle-comment {
  border-bottom: 1px dashed var(--bs-primary);
  text-decoration: none !important;
  font-size: 1.5rem;
  font-weight: 500;
}

@media (max-width: 1400px) {
  .total-widget, .checkout-agreement {
      margin-left: 2rem;
  }  
}
@media (max-width: 1200px) {
  .total-widget, .checkout-agreement {
      margin-left: 2rem;
  }  
}
@media (max-width: 991px) {
  .total-widget, .checkout-agreement {
      margin-left: 0;
  }  
  .total-widget {
    margin-top: 1rem;
  }
}
.btn-checkout {
  border-radius: 2rem;
  font-size: 1.015625rem !important;
  font-weight: 500;
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
  padding-left: 2rem;
  padding-right: 2rem;
}
.btn-addtocart {
  width: 100%;
  background-color: var(--main-blue);
  border-color: var(--main-blue);
}
.btn-addtocart:hover {
  background-color: var(--secondary-blue);
  border-color: var(--secondary-blue);
}
.btn-addtocart:active {
  background-color:var(--bs-primary)!important;
  border-color: var(--bs-primary)!important;
}
.btn-primary {
  --bs-btn-bg: var(--bs-primary);;
  --bs-btn-border-color: var(--bs-primary);;
  --bs-btn-hover-bg: #0b5ed7;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-disabled-bg: var(--bs-primary);;
  --bs-btn-disabled-border-color: var(--bs-primary);;
}
.btn-outline-primary {
  --bs-btn-color: var(--bs-primary);;
  --bs-btn-border-color: var(--bs-primary);;
  --bs-btn-hover-bg: var(--bs-primary);;
  --bs-btn-hover-border-color: var(--bs-primary);;
  --bs-btn-focus-shadow-rgb: 34, 154, 200;
  --bs-btn-active-bg: var(--bs-primary);;
  --bs-btn-active-border-color: var(--bs-primary);;
  --bs-btn-disabled-color: var(--bs-primary);;
  --bs-btn-disabled-border-color: var(--bs-primary);;
}



.btn-cart-remove {
  color: var(--bs-danger);
  font-size: 1rem;
}
.btn-cart-remove:hover {
  color: var(--bs-pink);
  background-color: #f3f4f6;
  border-color: #f3f4f6;
}
.btn-cart-remove:active {
  color:  var(--bs-danger)!important;
  background-color: var(--bs-danger-bg-subtle)!important;
  border-color: var(--bs-danger-bg-subtle)!important;
}
.btn-cart-back {
  margin: 0 0 .5rem 0;
  font-size: 2rem;
  padding: 0 .5rem;
}
/* product list */
.price {
    color: var(--bs-black);
}
.price-new {
  font-weight: 600;
}
.price-old {
  color: #dc512c;
  text-decoration: line-through;
}
/* blog */
.blog-thumb {
  border: 1px solid #ddd;
  margin-bottom: 15px;
}
.blog-thumb h4 {
  font-weight: bold;
}
.blog-thumb .image {
  text-align: center;
  margin-bottom: 15px;
}
.blog-thumb .image a:hover {
  opacity: 0.8;
}
.blog-thumb .description {
  padding: 15px;
}
/* Theme Custom CSS */
#cookie {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 150px;
  z-index: 9999;
  opacity: 0.95;
  color: #ecf0f1;
  background: #343a40;
}
#cookie div {
  font-size: 16px;
  color: #FFFFFF;
}

/* Product thumb */

.product-thumb {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.product-thumb .image {
  border-radius: 1.5rem;
  height: 20rem;        /* фиксированная высота блока */
  display: flex;
  overflow: hidden;
  background: #f3f4f6;
}

.product-thumb .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;   /* заполнение всего блока с сохранением пропорций */
  display: block;      /* убирает лишние пробелы под img */
}

.product-thumb .image:hover a {
  transition: var(--transition);
  transform: scale(1.02);
}

.product-thumb .description {
  padding: 1rem .25rem;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.product-thumb .description h4 {
  font-size: 1.125rem;
  letter-spacing: 0;
  font-weight: 600;
  margin-bottom: 0;
  flex: 1 1 auto;
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  line-height: 1.4em;
}

.product-thumb .description h4 a {
  color: var(--bs-primary);
  text-decoration: none;
}

.product-thumb .description h4 a:hover {
  color: var(--bs-link-hover-color);
}

.product-thumb .price {
  font-size: 1.25rem;
  font-weight: 600;
  margin-top: 0.5rem;
}

.product-thumb .content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

.product-thumb .button {
  display: flex;
  position: absolute;
  width: 100%;
  bottom: 0;
}

.product-thumb .button button {
  width: 33.33%;
  border: none;
  border-top: 1px solid var(--bs-border-color);
  background-color: #f3f4f6;
  color: var(--bs-gray-600);
  line-height: 38px;
  text-align: center;
}

.product-thumb .button button:hover {
  color: var(--bs-gray-600);
  background-color: #ddd;
  text-decoration: none;
  cursor: pointer;
}

.product-thumb .button button + button {
  border-left: 1px solid var(--bs-border-color);
}

@media (min-width: 960px) {
  .product-list .product-thumb {
    display: flex;
  }
  .product-list .product-thumb .image {
    flex-direction: column;
    margin-bottom: 0px;
  }
  .product-list .product-thumb .content {
    flex-direction: column;
    flex: 75%;
    position: relative;
  }
  .product-list .product-thumb .button {
    border-left: 1px solid #ddd;
    width: calc(100% -  15px);
    margin-left: 15px;
  }
}
.product-quantity-controls {
    background-color: #f3f4f6;
    display: inline-flex;
    width: 100%;
}
.product-quantity-controls > .btn-group {
  width: 100%;
}
.btn-qty-decrease, .btn-qty-increase {
  width: 6rem;
}
.btn-qty-display:disabled {
    background-color: #f3f4f6;
    border: 1px solid #f3f4f6;
    color: var(--bs-black);
    opacity: 1;
    font-weight: 500;
    width: 100%;
}





.product-info {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

#product-info .row {
  margin-bottom: 6rem;
}

#product-info .list-unstyled {
  color: var(--bs-gray);
  font-size: .825rem;
  display: flex;
  flex-direction: column;
  gap: .25rem;
}

.price-block .price-new {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -.5px;
}

.price-block .price-old {
  font-size: 1.5rem;
}

.product-title {
  font-size: 1.125rem;
  letter-spacing: 0;
  margin-bottom: 0;
  font-weight: 600;
}

.product-price {
  font-size: 1.25rem;
  font-weight: 600;
  margin-top: 0.5rem;
}

.price:has(> .price-new:only-child) .price-new {
  color: var(--bs-body-color);
}

.price-new {
  color: var(--bs-danger);
}

.price-old {
  text-decoration: line-through;
  color: var(--bs-body-color);
}

.product-card:hover,
.product-image {
  border-radius: 1.5rem;
  padding: 2rem;
  height: 20rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: var(--transition);
  background: #f3f4f6;
}
.product-image-gallery {
  position: sticky;
  top: 8rem;
}
.product-cart-actions.active {
    width: 62%;
    margin: 0 auto;
}
.product-main {
  padding-left: 2rem;
}
.product-description {
  margin-top: 3rem;
  line-height: 1.75;
  font-size: 1rem;
}

@media (max-width: 575px) {
  .product-main {margin-top: 2rem; padding-left: calc(var(--bs-gutter-x) * .5);}
}

#main-product-image {border-radius: 1rem;}
.thumbnails-gallery{display:flex;flex-wrap:wrap;gap: .5rem;}
.thumbnail-item{display:inline-block;border:2px solid transparent; border-radius: 1rem; transition:border-color .2s ease;text-decoration:none}
.thumbnail-item:hover{border-color: var(--bs-primary-border-subtle);}
.thumbnail-item.active{border-color:var(--bs-primary)!important;}
.thumbnail-item img{display:block;max-width: 4rem;height:auto; border-radius: 1rem;}
.main-image img{width:100%;height:auto;max-width:540px}
.about-image {float: right; max-width: 32rem; border-radius: 3rem; margin: 1rem 0 4rem 4rem;}
@media (max-width: 968px) {
  .about-image {margin: 0 auto 2rem auto; float: none; display: block; max-height: 20rem; object-fit: cover; width: 100%;}
}

/* ========================================
   MOBILE HEADER & MENU STYLES
   ======================================== */

/* Бургер кнопка */
.hamburger {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 3rem;
  height: 3rem;
  padding: .75rem;
  border: 1px solid var(--bs-gray-300);
  border-radius: 0.5rem;
  background: var(--bs-body-bg);
  cursor: pointer;
  transition: all 0.3s ease;
}

.hamburger:hover {
  border-color: var(--bs-gray-400);
  background: var(--bs-gray-100);
}

.hamburger span {
  width: 100%;
  height: 2px;
  background: var(--bs-body-color);
  transition: all 0.3s ease;
  display: block;
}

.hamburger[aria-expanded="true"] span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.hamburger[aria-expanded="true"] span:nth-child(2) {
  opacity: 0;
}

.hamburger[aria-expanded="true"] span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Мобильное меню - выезжает слева */
.mobile-menu {
  visibility: hidden;
  pointer-events: none;
}

.mobile-menu.show,
.mobile-menu.collapsing {
  visibility: visible;
  pointer-events: auto;
}

.mobile-menu-overlay {
  position: fixed;
  top: 4.875rem;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
  opacity: 0;
  z-index: 1040;
}

.mobile-menu.show .mobile-menu-overlay {
  opacity: 1;
  transition: opacity 0.3s ease;
}

.mobile-menu.collapsing .mobile-menu-overlay {
  opacity: 0;
  transition: opacity 0.3s ease;
}

.mobile-menu-content {
  position: fixed;
  top: 4.875rem;
  left: 0;
  width: 85%;
  max-width: 380px;
  height: calc(100vh - 4.875rem);
  background: var(--bs-body-bg);
  box-shadow: 4px 0 20px rgba(0, 0, 0, 0.15);
  overflow-y: auto;
  padding: 1.5rem 1rem 3rem 1rem;
  z-index: 1041;
  transform: translateX(-100%);
}
@media (min-width: 768px) and (max-width: 992px) {
  .mobile-menu-content, .mobile-menu-overlay { top: 7.5rem;}
  .mobile-menu-content { height: calc(100vh - 7.5rem);}
}

.mobile-menu.show .mobile-menu-content {
  transform: translateX(0);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-menu.collapsing .mobile-menu-content {
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Секции меню */
.mobile-menu-search,
.mobile-menu-nav,
.mobile-menu-account {
  margin-bottom: 1.5rem;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid var(--bs-border-color);
}

.mobile-nav-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mobile-nav-list li {
  margin-bottom: 0.5rem;
}

.mobile-nav-list a,
.mobile-social-link {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  color: var(--bs-body-color);
  text-decoration: none;
  border-radius: 0.5rem;
  transition: all 0.2s ease;
}

.mobile-nav-list a:hover,
.mobile-social-link:hover {
  background: var(--bs-gray-100);
  color: var(--bs-primary);
}

.mobile-social-link {
  border: 1px solid var(--bs-border-color);
}

.mobile-social-link:hover {
  border-color: var(--bs-primary);
  background: var(--bs-primary-bg-subtle);
}

.mobile-nav-list a i,
.mobile-social-link i {
  width: 20px;
  text-align: center;
}

.mobile-menu-contacts {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

/* Мобильные адаптации */
@media (max-width: 991px) {
  header {
    padding: 1rem 0;
  }
  
  .header-container {
    gap: 1rem;
  }
  
  #logo {
    flex: 1;
    text-align: center;
    width: auto;
  }
  
  #logo img {
    max-width: 164px;
  }
  
  .header-buttons {
    gap: 0;
  }
  
  .header-cart {
    padding: 0.75rem;
    position: relative;
    min-width: 48px;
    border-radius: 0.5rem;
  }
  
  .header-cart i {
    margin: 0;
    font-size: 1.25rem;
  }
  
  #menu {
    display: none;
  }
}

/* Корзина - бейдж */
.cart-badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background: var(--bs-danger);
  color: white;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1;
}

/* Скрываем мобильное меню на десктопе */
@media (min-width: 992px) {
  .hamburger,
  .mobile-menu {
    display: none !important;
  }
}

#column-right {
  margin-top:5.875rem;
  position: sticky;
  top: 2rem;
}
#column-right > div {
  position: sticky;
  top: 8rem;
}

.contnt-pl {
  padding-right: 8rem;
}
@media (max-width: 1200px) {
  .contnt-pl {
  padding-right: 4rem;
  }
}
@media (max-width: 992px) {
  .contnt-pl {
  padding-right: 2rem;
}
}
@media (max-width: 576px) {
  .contnt-pl {
  padding-right: 0;
}
}