/*
Theme Name: CastBikes
Author: CastBikes 
Version: 1.0.0
Author URI: https://www.castbikes.be
Text Domain: castbikes
*/

/* DEFAULT */
html,
body {
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: var(--wp--preset--font-size--body);
}

figure {
  margin-bottom: 0;
}

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

.wp-block-button a {
  transition: all 0.3s ease-in-out;
}

.wp-block-button.is-style-white:hover a {
  background-color: var(--wp--preset--color--primary) !important;
  color: var(--wp--preset--color--white) !important;
}

p a {
  text-decoration: none !important;
  color: var(--wp--preset--color--primary);
}

.show-on-mobile {
  display: none;
}

/* HEADER */
header {
  border-bottom: 1px var(--wp--preset--color--black) solid;
}

.mobile-hamburger {
  display: none;
}

#mobile-menu {
  display: none;
}

#hamburger-btn {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 28px;
  height: 22px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 9999;
}

#hamburger-btn span {
  display: block;
  width: 100%;
  height: 3px;
  background: #222;
  border-radius: 3px;
  transition: 0.3s;
}

#hamburger-btn.active span:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}

#hamburger-btn.active span:nth-child(2) {
  opacity: 0;
}

#hamburger-btn.active span:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}

.mobile-menu-collapsed {
  overflow: hidden;
  transition: max-height 0.35s ease;
}

.mobile-menu-expanded {
  transition: max-height 0.35s ease;
}

.logo {
  width: 125px;
  height: 76px;
}

.logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header-container {
  max-width: 1440px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 16px;
}

.header-menu,
.header-menu .menu-right {
  display: flex;
  gap: 10px;
}

.header-menu .menu-right .search,
.header-menu .menu-right .socials {
  padding: 16px;
}

.header-menu .menu-right .socials {
  display: flex;
  gap: 25px;
}

.header-menu .menu-right .divider {
  width: 1px;
  height: 100%;
  background-color: var(--wp--preset--color--black);
}

.header-menu .menu-right div {
  margin: auto;
}

.header-menu .main-menu ul {
  padding-left: 0;
  display: flex;
  list-style: none;
  margin: 0;
  gap: 10px;
}

.header-menu .main-menu ul li {
  padding: 16px;
}

.header-menu .main-menu ul li a {
  text-decoration: none;
  color: var(--wp--preset--color--black);
  font-weight: 700;
}

.header-menu .main-menu ul li a:hover {
  color: var(--wp--preset--color--primary);
}

.cart {
  position: relative;
}

.cart:hover svg path {
  stroke: var(--wp--preset--color--primary);
}

.cart .cart-count {
  position: absolute;
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--primary);
  border-radius: 9999px;
  font-size: 10px;
  font-weight: 500;
  font-family: var(--wp--preset--font-family--montserrat);
  width: 15px;
  height: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 2px;
  right: -6px;
}

.cart .cart-count.hidden {
  display: none;
}

.cart:hover .cart-count {
  background-color: var(--wp--preset--color--black);
}

.search input[type="search"] {
  border: 1px solid #ccc;
  padding: 6px 10px;
  outline: none;
}

.search button {
  background: none;
  border: none;
  cursor: pointer;
}

/* SEARCH WRAPPER */
.search {
  position: relative;
}

/* ICON BUTTON */
.search-toggle {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

/* HIDDEN INPUT */
.search-form {
  position: absolute;
  right: 0;
  top: 100%;
  background: white;
  border: 1px solid #ddd;
  padding: 8px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: 0.25s ease;
  z-index: 999;
}

/* INPUT STYLE */
.search-form input[type="search"] {
  border: none;
  outline: none;
  font-size: 14px;
  width: 180px;
}

/* ACTIVE STATE */
.search.active .search-form {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.woocommerce-no-products-found .woocommerce-info {
  border: unset !important;
}

.woocommerce-no-products-found .woocommerce-info::before {
  content: unset !important;
}

/* FOOTER */

footer {
  position: relative;
  z-index: 1;
}

.footer {
  background-color: var(--wp--preset--color--beige);
}

.footer .container {
  max-width: 1440px;
  margin: auto;
  display: flex;
  justify-content: space-between;
  gap: 30px;
  padding: 40px 32px;
}

.footer h6 {
  margin: 0;
  margin-bottom: 15px;
  font-size: 16px;
}

.footer p {
  margin: 0;
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 500;
}

.footer .footer-first-block {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer .footer-first-block div:first-of-type div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.footer .footer-info ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.footer .footer-info ul li,
.footer .footer-info ul li a {
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 500;
  text-decoration: unset;
  color: var(--wp--preset--color--black);
}

.footer .footer-contact div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.footer .footer-contact a {
  text-decoration: none;
  color: var(--wp--preset--color--black);
  font-weight: 500;
}

.footer-open table {
  border-collapse: collapse;
}

.footer-open table tr {
  display: block;
  padding-bottom: 4px;
}

.footer-open table tr td {
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 500;
  padding: 0;
}

.footer-open table tr td:first-of-type {
  width: 35px;
}

footer .footer-copyright {
  padding: 10px 80px;
  background-color: var(--wp--preset--color--primary);
  display: flex;
  gap: 50px;
  justify-content: center;
  align-items: center;
}

footer .footer-copyright p {
  color: var(--wp--preset--color--white);
  font-size: 12px;
  font-weight: 600;
}

.footer .footer-copyright .copyright {
  display: flex;
  align-items: center;
}

footer .footer-socials {
  display: flex;
  align-items: center;
  gap: 15px;
}

/* HOME */
.home-carrousel {
  position: relative;
}

.home-carrousel .slick-prev {
  display: none !important;
}

.home-carrousel .slick-next {
  position: absolute;
  left: 47%;
  top: 50%;
  right: unset;
  transform: translate(-50%, -50%);
  width: 55px;
  height: 55px;
  background-color: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--primary) !important;
  border-radius: 99999px;
  transition: all 0.3s ease-in-out;
  border: solid 1px var(--wp--preset--color--white);
}

.home-carrousel .slick-next:hover {
  background-color: transparent !important;
}

.home-carrousel .slick-next::before {
  content: unset;
}

.home-carrousel .slick-next::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="24" viewBox="0 0 15 24" fill="none"><path d="M14.5168 12L3.01683 23.5L0.333496 20.8167L9.15016 12L0.333496 3.18333L3.01683 0.5L14.5168 12Z" fill="%23EB5C1E"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto;
  width: 100%;
  height: 100%;
  display: block;
}

.home-carrousel .slick-track {
  height: 600px;
}

.home-carrousel .slick-list {
  margin: 0 !important;
  max-width: unset !important;
}

.home-carrousel .wp-block-columns {
  height: 100%;
  margin-bottom: 0;
}

.home-carrousel .wp-block-columns .wp-block-column:first-of-type {
  display: flex;
  align-items: center;
  z-index: 1;
  width: 35%;
}

.home-carrousel .wp-block-columns .wp-block-column:last-of-type {
  width: 65%;
}

.home-carrousel .wp-block-columns .wp-block-group {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.home-carrousel .wp-block-columns .wp-block-group h2 {
  line-height: 0.8;
}

.home-carrousel .wp-block-columns figure {
  height: 100%;
  position: relative;
  margin-right: 1px;
}

.home-carrousel .slick-current figure {
  margin-right: -10px;
}

.home-carrousel .wp-block-columns img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.home-carrousel .wp-block-columns figure::after {
  content: "";
  position: absolute;
  top: 0%;
  left: -10%;
  width: 70%;
  height: 100%;
  background-color: var(--wp--preset--color--black);
  mask: radial-gradient(
    ellipse 1175px 1058px at 100% 50%,
    transparent 50%,
    black 50%
  );
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: cover;
  mask: radial-gradient(
    ellipse 1175px 1058px at 100% 50%,
    transparent 50%,
    black 50%
  );
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: cover;
}

.home-carrousel .slick-track {
  margin-right: -10px;
}

.home-carrousel .slick-dots {
  width: unset;
  bottom: unset;
  top: 50%;
  transform: translate(0, -50%);
  right: calc(50% - 720px) !important;
  display: flex;
  flex-direction: column;
}

.home-carrousel .slick-dots li {
  width: unset;
  margin: 0;
}

.home-carrousel .slick-dots li button::before {
  content: unset;
}

.home-carrousel .slick-dots li button {
  background-color: var(--wp--preset--color--white);
  border-radius: 999999px;
  width: 15px;
  height: 15px;
}

.home-carrousel .slick-dots .slick-active button {
  background-color: var(--wp--preset--color--primary);
}

.logo-slider .wp-block-gallery {
  display: flex;
  justify-content: space-between;
}

.logo-slider .wp-block-gallery figure {
  align-items: center;
  justify-content: center;
}

.logo-slider .wp-block-gallery figure a {
  justify-content: center;
  align-items: center;
}

.logo-slider img {
  width: 150px !important;
  object-fit: contain !important;
}

.about-us {
  height: 450px;
}

.about-us img {
  width: 100%;
  object-fit: cover;
  height: 100%;
}

.about-us h2 {
  text-align: right;
  line-height: 0.8;
}

.about-us .wp-block-columns {
  margin: 0 !important;
  justify-content: space-between;
  width: 100%;
  gap: 120px;
  align-items: center !important;
  height: 450px;
}

.about-us .wp-block-columns .wp-block-column {
  height: 450px;
}

.about-us .wp-block-columns .wp-block-column figure {
  height: 100%;
}

.about-us .wp-block-columns .wp-block-column figure::after {
  content: "";
  position: absolute;
  top: -5%;
  right: 29%;
  width: 41%;
  height: 110%;
  background-color: var(--wp--preset--color--white);
  mask: radial-gradient(
    ellipse 1175px 1058px at 0% 50%,
    transparent 50%,
    black 50%
  );
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: cover;
  mask: radial-gradient(
    ellipse 1175px 1058px at 0% 50%,
    transparent 50%,
    black 50%
  );
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: cover;
}

.about-us .wp-block-columns .wp-block-column:last-of-type {
  text-align: right;
  display: flex;
  flex-direction: column;
  gap: 50px;
  justify-content: center;
}

.about-us .wp-block-columns .wp-block-buttons {
  justify-content: end;
}

.home-banner {
  padding: 0 16px;
}

.popular-products ul li:hover {
  box-shadow: 6px 6px 0 0 var(--wp--preset--color--primary);
}

.popular-products ul li .wc-block-components-product-image,
.popular-products ul li .wc-block-components-product-image a,
.popular-products ul li .wc-block-components-product-image a img {
  height: 300px;
  background-color: var(--wp--preset--color--white);
}

.popular-products ul li .wc-block-components-product-image a img {
  object-fit: contain !important;
}

.popular-products
  .wc-block-components-product-sale-badge.alignright.wc-block-components-product-sale-badge--align-right {
  top: 23px;
  right: 10px;
}

.popular-products
  ul
  li
  .wc-block-components-product-image
  .wc-block-components-product-sale-badge__text {
  border-radius: 10px !important;
  border: unset;
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  padding: 10px 15px;
  font-family: var(--wp--preset--font-family--helvetica);
  font-size: 12px;
}

.wc-block-components-product-price del {
  color: var(--wp--preset--color--black);
}

.wc-block-components-product-price del span bdi {
  color: var(--wp--preset--color--black);
}

.popular-products
  ul
  li
  .wc-block-components-product-image
  .wc-block-components-product-sale-badge {
  border: unset !important;
  padding: 0 !important;
}

.wc-block-product-template {
  grid-template-columns: repeat(auto-fill, 300px) !important;
  justify-content: space-between;
}

.wc-block-product-template li {
  max-width: 300px !important;
  background-color: var(--wp--preset--color--beige);
  border-radius: 20px;
}

.wc-block-product-template li .wc-block-components-product-image,
.wc-block-product-template li .wc-block-components-product-image a,
.wc-block-product-template li .wc-block-components-product-image a img {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}

.wc-block-product-template li .taxonomy-product_brand a {
  text-decoration: none;
}

.wc-block-product-template li h2 a {
  line-height: normal;
}

.test-model .wp-block-column {
  position: relative;
}

.test-model figure {
  position: absolute;
  top: -15%;
  right: 11%;
  transform: scale(1.1);
}

.test-model figure img {
  object-fit: cover;
}

.reviews .review-container {
  position: relative;
}

.reviews .review-container .heart-icon {
  position: absolute;
  right: -50px;
  top: -50px;
}

.reviews .review-container h4 {
  position: relative;
  padding-bottom: 12px;
  margin-bottom: 20px;
}

.reviews .review-container h4::after {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--wp--preset--color--primary);
  width: 70px;
  height: 2px;
  bottom: 0;
  left: 0;
}

.reviews .review-container p:last-of-type {
  margin-top: 20px;
}

.image-slider .slick-slide {
  width: 350px !important;
  height: 350px !important;
  margin: 0 10px !important;
  transform: translate(0, 14%);
}

.image-slider .slick-center {
  width: 450px !important;
  height: 450px !important;
  transform: unset;
}

.image-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.image-slider .slick-next::before {
  content: unset;
}

.image-slider .slick-next::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="24" viewBox="0 0 15 24" fill="none"><path d="M14.5168 12L3.01683 23.5L0.333496 20.8167L9.15016 12L0.333496 3.18333L3.01683 0.5L14.5168 12Z" fill="%23EB5C1E"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
  margin-left: 26px;
}

.image-slider .slick-prev::before {
  content: unset;
}

.image-slider .slick-prev::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="24" viewBox="0 0 15 24" fill="none"><path d="M14.5168 12L3.01683 23.5L0.333496 20.8167L9.15016 12L0.333496 3.18333L3.01683 0.5L14.5168 12Z" fill="%23EB5C1E"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
  margin-left: -26px;
  transform: rotate(180deg);
}

/* LEASING */
.text-intro .wp-block-group:first-of-type {
  position: relative;
}

.text-intro .wp-block-group:first-of-type::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  background-color: var(--wp--preset--color--black);
  width: 200px;
  height: 2px;
  display: block;
}

.leasing-voorbeeld {
  position: relative;
}

.leasing-voorbeeld::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  background-color: var(--wp--preset--color--black);
  width: 200px;
  height: 2px;
  display: block;
}

.leasing-colums-container {
  width: 100% !important;
}

.wp-block-column:has(.berekening-group) {
  display: flex;
}

.wp-block-group:has(.berekening-group) {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.berekening-group {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  flex: 1;
}

.leasing-partners-logos {
  column-gap: 40px !important;
  row-gap: 10px !important;
  justify-content: center !important;
}

.leasing-partners-logos.wp-block-gallery.has-nested-images
  figure.wp-block-image {
  flex-grow: unset !important;
}

.leasing-partners-logos img {
  width: 160px !important;
  height: 77px !important;
  object-fit: contain;
}

/* CONTACT */
.contact-container .icon-container {
  width: unset !important;
}

.contact-container .contact-info svg {
  width: 33px;
  height: 41px;
}

.contact-container .wp-block-columns {
  justify-content: space-between;
  gap: 20px;
}

.wpforms-form button {
  height: unset !important;
  padding: 16px !important;
  background-color: var(--wp--preset--color--primary) !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
  font-size: 16px !important;
  border-radius: 10px !important;
}

.wpforms-form input {
  height: 50px !important;
}

.wpforms-form input,
.wpforms-form textarea {
  padding: 20px !important;
  border-radius: 10px !important;
}

.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder {
  color: #858585 !important;
  font-size: 16px !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
  font-weight: 500 !important;
}

.wpforms-form label span {
  display: none !important;
}

.wpforms-form label {
  font-family: var(--wp--preset--font-family--helvetica) !important;
  font-size: 20px !important;
}

/* OVER ONS */
.about-intro {
  position: relative;
}

.about-intro::after {
  content: "";
  display: block;
  position: absolute;
  width: 200px;
  height: 3px;
  background-color: var(--wp--preset--color--primary);
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.ons-team .wp-block-columns {
  justify-content: space-between;
}

.ons-team img {
  height: 500px;
  box-shadow: 9px 9px 0px 0px var(--wp--preset--color--primary);
  object-fit: cover;
}

.onze-winkel .wp-block-columns {
  justify-content: space-between;
}

.onze-winkel img {
  height: 500px;
  box-shadow: -9px 9px 0px 0px var(--wp--preset--color--primary);
  object-fit: cover;
}

/* NIEUWS */
.post-item {
  height: 100% !important;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.post-item h2 {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--helvetica);
  font-size: 20px;
}

.post-item .content-group {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.post-header {
  max-width: 1440px;
  margin: auto;
  padding: 80px 0;
}

.post-header img {
  width: 100%;
  height: 500px;
  border-radius: 20px;
  object-fit: cover;
  object-position: top;
}

.post-header h1 {
  width: 1200px;
  margin: auto;
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--black);
  font-size: 32px;
  text-align: center;
  padding: 30px 0;
}

.post-header .date-and-cat {
  font-size: 14px;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  text-align: center;
  font-weight: 500;
}

.post-header .date-and-cat span {
  color: var(--wp--preset--color--primary);
}

.content-container {
  max-width: 900px;
  margin: auto;
  padding: 40px 0 80px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.content-container img {
  width: 100%;
  height: 600px;
  border-radius: 20px;
  object-fit: cover;
}

.content-container a {
  text-decoration: none !important;
}

/* SHOP */
.shop-container {
  max-width: 1440px;
  padding: 40px 0;
  margin: auto !important;
}

.wc-block-product-filters__overlay-content {
  padding: 0 11px;
}

.wc-block-product-filters__overlay form {
  padding: 10px 0;
  margin-bottom: 20px;
}

.wc-block-product-filters__overlay-content > div {
  margin-bottom: 40px;
}

.wc-block-product-filters__overlay .wp-block-search__inside-wrapper {
  height: 50px !important;
  padding: 0 16px !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 10px !important;
  border: 1px solid #dadada;
  background-color: var(--wp--preset--color--white);
}

.wc-block-product-filters__overlay .wp-block-search__inside-wrapper::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"><path d="M16.6 18L10.3 11.7C9.8 12.1 9.225 12.4167 8.575 12.65C7.925 12.8833 7.23333 13 6.5 13C4.68333 13 3.14583 12.3708 1.8875 11.1125C0.629167 9.85417 0 8.31667 0 6.5C0 4.68333 0.629167 3.14583 1.8875 1.8875C3.14583 0.629167 4.68333 0 6.5 0C8.31667 0 9.85417 0.629167 11.1125 1.8875C12.3708 3.14583 13 4.68333 13 6.5C13 7.23333 12.8833 7.925 12.65 8.575C12.4167 9.225 12.1 9.8 11.7 10.3L18 16.6L16.6 18ZM6.5 11C7.75 11 8.8125 10.5625 9.6875 9.6875C10.5625 8.8125 11 7.75 11 6.5C11 5.25 10.5625 4.1875 9.6875 3.3125C8.8125 2.4375 7.75 2 6.5 2C5.25 2 4.1875 2.4375 3.3125 3.3125C2.4375 4.1875 2 5.25 2 6.5C2 7.75 2.4375 8.8125 3.3125 9.6875C4.1875 10.5625 5.25 11 6.5 11Z" fill="%23222222"/></svg>');
  background-repeat: no-repeat;
  display: block;
  width: 18px;
  height: 18px;
}

.wc-block-product-filters__overlay .wp-block-search__inside-wrapper input {
  padding: unset !important;
  border: unset !important;
  height: 100% !important;
  display: flex;
  align-items: center;
}

.wc-block-product-filters__overlay
  .wp-block-search__inside-wrapper
  input::placeholder {
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black) !important;
}

.wc-block-product-filters__overlay
  .wp-block-search__inside-wrapper
  input:focus-visible {
  outline: unset !important;
}

.wc-block-product-filters__overlay h5 {
  padding-bottom: 15px;
  border-bottom: 3px solid var(--wp--preset--color--primary);
  margin-bottom: 20px !important;
}

.wc-block-product-filter-checkbox-list__items
  .wc-block-product-filter-checkbox-list__text {
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black);
}

.wc-block-product-filter-checkbox-list__items::-webkit-scrollbar {
  width: 5px;
  height: 40px;
}

.wc-block-product-filter-checkbox-list__items::-webkit-scrollbar-track {
  background: transparent;
}

.wc-block-product-filter-checkbox-list__items::-webkit-scrollbar-thumb {
  background-color: var(--wp--preset--color--primary);
  border-radius: 6px;
}

.wc-block-product-filter-checkbox-list__items {
  scrollbar-width: thin;
  scrollbar-color: var(--wp--preset--color--primary) transparent;
}

.wc-block-product-filter-checkbox-list__input-wrapper input {
  margin: 0 !important;
}

.wc-block-product-filter-checkbox-list__input-wrapper::before {
  display: none !important;
}

.wc-block-product-filters__overlay input.as-radio[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid var(--wp--preset--color--black);
  border-radius: 50%;
  position: relative;
  cursor: pointer;
  outline: none;
  background-color: #fff;
  vertical-align: middle;
  transition: all 0.2s ease;
}

.wc-block-product-filters__overlay input.as-radio[type="checkbox"]:checked {
  border-color: var(--wp--preset--color--primary);
}

.wc-block-product-filters__overlay
  input.as-radio[type="checkbox"]:checked::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  background-color: var(--wp--preset--color--primary);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.wc-block-product-filter-checkbox-list__input-wrapper svg {
  display: none !important;
}

.wc-block-product-filters__overlay input.as-radio[type="checkbox"]:hover {
  border-color: var(--wp--preset--color--primary);
}

.wc-block-product-filter-checkbox-list__label {
  gap: 20px !important;
  height: 35px;
}

.wc-block-product-filter-price-slider__content {
  grid-template-areas:
    "left-input dash right-input"
    "price-slider price-slider price-slider" !important;
}

.wc-block-product-filter-price-slider__content::before {
  content: "-";
  grid-area: dash;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black);
  font-size: 28px;
  line-height: 0;
}

.wc-block-product-filter-price-slider .text input[type="text"] {
  border: 2px solid var(--wp--preset--color--primary) !important;
  text-align: center;
  height: 60px;
  max-width: 70px !important;
  padding: 0 16px !important;
  color: var(--wp--preset--color--black) !important;
  font-size: 16px !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
}

.range-bar {
  background-color: #d9d9d9 !important;
}

.top-filters-container {
  margin-left: calc(20% + 50px);
  display: flex;
  flex-direction: column-reverse;
}

.shop-container {
  gap: 20px;
}

.top-filters-container .dropdowns-container {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 40px;
}

.custom-select-wrapper {
  position: relative;
}

button.custom-select-trigger {
  background-color: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat) !important;
  font-size: 16px !important;
  border: none !important;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  gap: 15px;
  align-items: center;
  padding: 0;
}

.custom-select-options {
  position: absolute;
  top: 150%;
  left: 0;
  background: var(--wp--preset--color--white);
  border: 1px solid #eee;
  border-radius: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  display: none;
  flex-direction: column;
  z-index: 50;
  padding: 20px;
  gap: 15px;
}

.custom-select-option {
  border: none;
  background: transparent;
  text-align: left;
  width: 100%;
  cursor: pointer;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  padding: 0;
  line-height: 1;
}

.custom-select-option:hover,
.custom-select-option.active {
  color: var(--wp--preset--color--primary);
}

.custom-select-wrapper.open .custom-select-options {
  display: flex;
}

form.form-wppp-select.products-per-page {
  display: none;
}

.custom-select-trigger svg {
  transition: transform 0.3s ease;
  transform-origin: center;
}

.custom-select-wrapper.open .custom-select-trigger svg {
  transform: rotate(180deg);
}

.woocommerce-result-count {
  font-size: 16px;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
}

.woocommerce-result-count span.num {
  color: var(--wp--preset--color--primary);
}

.shop-products .products {
  background-color: var(--wp--preset--color--beige);
  border-radius: 28px;
  padding: 50px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 40px !important;
  margin-bottom: 40px !important;
}

.shop-products .products::before {
  content: none !important;
}

.shop-products .products li {
  margin: 0 !important;
  width: calc((100% / 3) - ((40px / 3) * 2)) !important;
  display: flex;
  align-items: stretch;
}

.shop-products .products li .product-card:hover {
  box-shadow: 9px 9px 0px 0px var(--wp--preset--color--primary);
}

.shop-products .products li .product-card {
  padding: 20px;
  background-color: var(--wp--preset--color--white);
  border-radius: 20px;
  width: 100%;
}

.shop-products .products li .product-card a {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}

.shop-products .products li .product-card img {
  margin-bottom: 20px;
  object-fit: contain;
  object-position: center;
  width: 100% !important;
  height: 230px !important;
  margin-bottom: 0 !important;
}

.shop-products .products li .product-card .prod-details-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  flex: 1;
}

.shop-products .products li .product-card h2 {
  color: var(--wp--preset--color--black);
  font-size: 20px !important;
  font-family: var(--wp--preset--font-family--helvetica);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  margin-bottom: 0 !important;
}

.shop-products .products li .product-card .product-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  align-self: stretch;
}

.shop-products .products li .product-card .product-bottom .product-brand {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.shop-products .products li .product-card .product-bottom .price {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 0 !important;
}

.shop-products
  .products
  li
  .product-card
  .product-bottom
  .price:has(.screen-reader-text) {
  display: flex;
  flex-direction: column;
}

.shop-products .products li .product-card .product-bottom .price del {
  color: var(--wp--preset--color--black) !important;
  opacity: 1 !important;
}

.shop-products .products li .product-card .product-bottom .price del span {
  color: var(--wp--preset--color--black) !important;
  font-weight: 600 !important;
}

.shop-products
  .products
  li
  .product-card
  .product-bottom
  .price:has(.screen-reader-text)
  ins {
  text-decoration: none !important;
  color: var(--wp--preset--color--primary) !important;
}

.woocommerce-pagination .page-numbers {
  border: none !important;
  margin: unset !important;
  display: flex !important;
  gap: 10px;
  justify-content: center;
  align-items: center;
}

.woocommerce-pagination .page-numbers li {
  border: none !important;
}

.woocommerce-pagination .page-numbers li span,
.woocommerce-pagination .page-numbers li a {
  color: var(--wp--preset--color--black) !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
  font-size: 16px !important;
  padding: 0 !important;
  min-width: unset !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  color: var(--wp--preset--color--white) !important;
  background-color: var(--wp--preset--color--primary);
  padding: 5px !important;
  border-radius: 999999px;
  width: 20px;
  height: 21px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
  color: var(--wp--preset--color--black);
  background-color: var(--wp--preset--color--white);
}

.woocommerce nav.woocommerce-pagination ul li .prev.page-numbers {
  transform: rotate(180deg);
}

.sale-banner {
  position: absolute;
  top: 20px;
  right: 20px;
  background-color: var(--wp--preset--color--primary);
  padding: 10px 15px;
  border-radius: 10px;
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--white);
  font-size: 12px;
  text-transform: uppercase;
}

.wc-block-product-filter-checkbox-list__show-more {
  display: none !important;
}

/* SINGLE PRODUCT */
.single-product .woocommerce-breadcrumb,
.single-product #sidebar {
  display: none !important;
}

.custom-product-page {
  display: flex;
  gap: 64px;
  max-width: 1440px;
  margin: auto;
  padding: 100px 0;
}

.custom-product-page .right-col {
  flex: 1;
}

.custom-product-page .slick-slider {
  max-width: 580px;
}

.custom-product-page .product-summary {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.custom-product-page .product-detail-divider {
  width: 100%;
  height: 2px;
  background-color: #d9d9d9;
}

.custom-product-page .product-header {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.custom-product-page .brand {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 14px;
}

.custom-product-page .product_title {
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--black);
  font-size: 30px;
  line-height: 0.8;
}

.custom-product-page .product-price,
.custom-product-page .product-price p {
  display: flex;
  gap: 15px;
  align-items: center;
}

.custom-product-page .product-price .woocommerce-Price-amount.amount {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 20px;
}

.custom-product-page .product-price del .woocommerce-Price-amount {
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black) !important;
  font-size: 14px !important;
}

.custom-product-page .product-price ins {
  text-decoration: none !important;
}

.custom-product-page .product-price ins .woocommerce-Price-amount {
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--primary);
  font-size: 20px;
}

.custom-product-page .product-price .sale-label {
  padding: 10px;
  background-color: var(--wp--preset--color--primary);
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  border-radius: 10px;
}

.custom-product-page .product-short-description p {
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black);
}

.custom-product-page .product-size-stock {
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 50%;
}

.custom-product-page .product-size-stock .stock-status {
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  color: var(--wp--preset--color--primary);
}

.custom-product-page .product-size {
  display: flex;
  gap: 30px;
  align-items: center;
  justify-content: space-between;
}

.custom-product-page .product-size strong,
.custom-product-page .product-amount strong {
  font-family: var(--wp--preset--font-family--helvetica);
  font-size: 20px;
}

.custom-product-page .product-size p {
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  border-radius: 10px;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 0.8;
}

.stock.in-stock {
  display: none;
}

.custom-product-page .product-amount {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
}

.custom-product-page .product-amount .quantity-selector {
  display: flex;
  gap: 15px;
}

.custom-product-page .product-amount .quantity-selector button {
  color: #858585;
  background-color: var(--wp--preset--color--white);
  width: 32px;
  height: 32px;
  border: 1px solid #858585;
  border-radius: 5px;
  font-size: 22px;
  font-family: var(--wp--preset--font-family--montserrat);
}

.custom-product-page .product-amount .quantity-selector input {
  width: 60px;
  font-size: 16px;
  padding: 0;
  text-align: center;
  color: #858585;
  background-color: var(--wp--preset--color--white);
  border: 1px solid #858585;
  border-radius: 5px;
  font-family: var(--wp--preset--font-family--montserrat);
}

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

.custom-product-page form.cart button {
  color: var(--wp--preset--color--white) !important;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  line-height: 0.8;
  background-color: var(--wp--preset--color--primary) !important;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  border: 1px solid var(--wp--preset--color--primary);
  width: 100%;
}

.custom-product-page form.cart button:hover {
  background-color: var(--wp--preset--color--white) !important;
  color: var(--wp--preset--color--primary) !important;
}

.custom-product-page form.cart div.quantity {
  display: none !important;
}

.product-meta p {
  color: var(--wp--preset--color--black);
  font-size: 14px;
  font-family: var(--wp--preset--font-family--montserrat);
}

.product-meta p.product-sku span {
  font-weight: 500;
}

.product-meta p.product-categories span {
  color: var(--wp--preset--color--primary);
}

.custom-tabs .wc-tabs {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  gap: 50px;
}

.custom-tabs .wc-tabs li a {
  color: var(--wp--preset--color--black);
  text-decoration: none;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.custom-tabs .wc-tabs li {
  padding-bottom: 15px;
  position: relative;
}

.custom-tabs .wc-tabs li:hover::after,
.custom-tabs .wc-tabs li.active::after {
  content: "";
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 3px;
  background-color: var(--wp--preset--color--primary);
  border-radius: 3px;
}

.custom-tabs .wc-tab {
  padding-top: 40px;
}

.custom-tabs .wc-tab h2 {
  color: var(--wp--preset--color--black);
  font-size: 18px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
  margin-bottom: 24px;
}

.custom-tabs .wc-tab p {
  color: var(--wp--preset--color--black);
  font-size: 18px;
  font-family: var(--wp--preset--font-family--montserrat);
}

.custom-tabs .wc-tab tr,
.custom-tabs .wc-tab tbody,
.custom-tabs .wc-tab table,
.custom-tabs .wc-tab th,
.custom-tabs .wc-tab td {
  border: unset !important;
  border-collapse: collapse !important;
}

.custom-tabs .wc-tab th {
  padding: 0 4px !important;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black);
  font-size: 18px;
  font-weight: unset !important;
  text-align: left;
}

.custom-tabs .wc-tab td {
  padding: 0 4px !important;
}

.woocommerce table.shop_attributes tr:nth-child(even) td,
.woocommerce table.shop_attributes tr:nth-child(even) th {
  background: var(--wp--preset--color--beige) !important;
}

.custom-tabs .wc-tab td p {
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--primary);
  font-size: 18px;
  font-weight: unset;
  font-style: normal;
}

.custom-product-page .small-slider .slick-list {
  max-width: 420px;
  margin: auto;
}

.custom-product-page .small-slider .slick-track .slick-slide {
  width: 90px !important;
  height: 90px;
  margin: 0 10px;
}

.custom-product-page .small-slider .slick-track .slick-slide img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 50%;
}

.custom-product-page .small-slider .slick-track .slick-slide.slick-current img {
  opacity: 100%;
}

.custom-product-page .small-slider .slick-next::before {
  content: unset;
}

.custom-product-page .small-slider .slick-next {
  right: 50px;
}

.custom-product-page .small-slider .slick-next::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="24" viewBox="0 0 15 24" fill="none"><path d="M14.5168 12L3.01683 23.5L0.333496 20.8167L9.15016 12L0.333496 3.18333L3.01683 0.5L14.5168 12Z" fill="%23EB5C1E"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
}

.custom-product-page .small-slider .slick-prev::before {
  content: unset;
}

.custom-product-page .small-slider .slick-prev {
  left: 50px;
}

.custom-product-page .small-slider .slick-prev::after {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="15" height="24" viewBox="0 0 15 24" fill="none"><path d="M14.5168 12L3.01683 23.5L0.333496 20.8167L9.15016 12L0.333496 3.18333L3.01683 0.5L14.5168 12Z" fill="%23EB5C1E"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 100%;
  display: block;
  transform: rotate(180deg);
}

.out-of-stock-mail-btn {
  color: var(--wp--preset--color--white) !important;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  line-height: 0.8;
  background-color: var(--wp--preset--color--primary) !important;
  padding: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  border: 1px solid var(--wp--preset--color--primary);
  transition: all 0.3s ease-in-out;
  text-decoration: none;
}

.out-of-stock-mail-btn:hover {
  color: var(--wp--preset--color--primary) !important;
  background-color: var(--wp--preset--color--white) !important;
}

.product-divider {
  max-width: 1080px;
  margin: 40px auto;
  background-color: #d9d9d9;
  height: 3px;
  border-radius: 3px;
}

.related-products-wrapper {
  padding: 20px 0;
  max-width: 1440px;
  margin: auto;
}

.related-products-wrapper section {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.related-products-wrapper h2 {
  color: var(--wp--preset--color--black);
  font-size: 30px;
  text-align: center;
}

.related-products-wrapper ul.products {
  background-color: var(--wp--preset--color--beige);
  border-radius: 28px;
  padding: 40px !important;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
}

.related-products-wrapper ul.products::before,
.related-products-wrapper ul.products::after {
  content: none !important;
}

.related-products-wrapper .products li .product-card .prod-details-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
  flex: 1;
}

.related-products-wrapper .products li {
  margin: 0 !important;
  width: 300px;
  display: flex;
}

.related-products-wrapper .products li .product-card:hover {
  box-shadow: 9px 9px 0px 0px var(--wp--preset--color--primary);
}

.related-products-wrapper .products li .product-card {
  padding: 20px;
  background-color: var(--wp--preset--color--white);
  border-radius: 20px;
}

.related-products-wrapper .products li .product-card a {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: space-between;
  width: 100%;
  height: 100%;
}

.related-products-wrapper .products li .product-card img {
  margin-bottom: 20px;
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 230px !important;
  margin-bottom: 0 !important;
}

.related-products-wrapper .products li .product-card h2 {
  color: var(--wp--preset--color--black);
  font-size: 20px !important;
  font-family: var(--wp--preset--font-family--helvetica);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 !important;
  margin-bottom: 0 !important;
  text-align: left;
}

.related-products-wrapper .products li .product-card .product-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  align-self: stretch;
}

.related-products-wrapper
  .products
  li
  .product-card
  .product-bottom
  .product-brand {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.related-products-wrapper .products li .product-card .product-bottom .price {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 0 !important;
}

.related-products-wrapper
  .products
  li
  .product-card
  .product-bottom
  .price:has(.screen-reader-text) {
  display: flex;
  flex-direction: column;
}

.related-products-wrapper
  .products
  li
  .product-card
  .product-bottom
  .price
  del {
  color: var(--wp--preset--color--black) !important;
  opacity: 1 !important;
}

.related-products-wrapper
  .products
  li
  .product-card
  .product-bottom
  .price
  del
  span {
  color: var(--wp--preset--color--black) !important;
  font-weight: 600 !important;
}

.related-products-wrapper
  .products
  li
  .product-card
  .product-bottom
  .price:has(.screen-reader-text)
  ins {
  text-decoration: none !important;
  color: var(--wp--preset--color--primary) !important;
}

/* CART */
.custom-cart-wrapper,
.custom-empty-cart-wrapper {
  max-width: 1440px;
  margin: 80px auto;
}

.custom-cart-wrapper .cart-container,
.custom-empty-cart-wrapper .cart-container {
  padding: 80px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 5px 4px 0 rgba(0, 0, 0, 0.25);
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.custom-empty-cart-wrapper .cart-container {
  gap: 80px;
}

.custom-cart-wrapper .cart-header {
  display: flex;
  justify-content: space-between;
}

.custom-cart-wrapper .cart-header a,
.custom-empty-cart-wrapper .continue-shopping-button {
  display: flex;
  gap: 25px;
  color: var(--wp--preset--color--black);
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
  padding: 15px 20px;
  border-radius: 10px;
  align-items: center;
  border: 1px solid var(--wp--preset--color--black);
  text-decoration: none;
}

.custom-empty-cart-wrapper .continue-shopping-button {
  width: fit-content;
}

.custom-cart-wrapper .cart-header a:hover,
.custom-empty-cart-wrapper .continue-shopping-button:hover {
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--black);
}

.custom-cart-wrapper .cart-header a:hover path,
.custom-empty-cart-wrapper .continue-shopping-button:hover path {
  fill: var(--wp--preset--color--white);
}

.custom-empty-cart-wrapper .cart-empty-text {
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--black);
}

.custom-cart-wrapper .shop_table.custom-cart-table {
  margin-bottom: 50px !important;
  border: unset;
  border-collapse: collapse;
}

.custom-cart-wrapper .shop_table.custom-cart-table thead tr th {
  border-bottom: 1px solid #858585;
  color: #858585;
  font-family: var(--wp--preset--font-family--helvetica);
  font-size: 14px;
  text-transform: uppercase;
  height: 50px;
  padding: 0;
}

.custom-cart-wrapper .shop_table.custom-cart-table thead tr th.col-product {
  width: 640px;
}

.custom-cart-wrapper .shop_table.custom-cart-table thead tr th.col-remove {
  width: 50px;
}

.custom-cart-wrapper .shop_table.custom-cart-table thead tr th.col-price,
.custom-cart-wrapper .shop_table.custom-cart-table thead tr th.col-qty {
  width: 225px;
}

.custom-cart-wrapper .shop_table.custom-cart-table td {
  border-top: unset !important;
  padding: 0;
}

.custom-cart-wrapper .shop_table.custom-cart-table .product-info {
  display: flex;
  gap: 20px;
  align-items: center;
}

.custom-cart-wrapper .shop_table.custom-cart-table .product-info img {
  width: 100px;
  height: 100px;
  object-fit: contain;
}

.custom-cart-wrapper .shop_table.custom-cart-table .product-info .name {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.custom-cart-wrapper
  .shop_table.custom-cart-table
  .woocommerce-Price-amount.amount {
  color: var(--wp--preset--color--primary);
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
}

.custom-cart-wrapper .shop_table.custom-cart-table .remove a {
  position: relative;
  font-size: 0;
  left: 50%;
}

.custom-cart-wrapper .shop_table.custom-cart-table .remove a::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M15 5L5 15M5 5L15 15" stroke="%23222222" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-position: center;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
}

.custom-cart-wrapper .shop_table.custom-cart-table .quantity a {
  text-decoration: none;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
  font-size: 16px;
}

.custom-cart-wrapper .shop_table.custom-cart-table .quantity input {
  border: none !important;
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}

.custom-cart-wrapper .shop_table.custom-cart-table .qty-control {
  display: flex;
  align-items: center;
}

.custom-cart-wrapper
  .shop_table.custom-cart-table
  .quantity
  input::-webkit-inner-spin-button,
.custom-cart-wrapper
  .shop_table.custom-cart-table
  .quantity
  input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.woocommerce-cart-form__coupon.coupon {
  display: flex;
  gap: 22px;
  align-items: center;
  justify-content: end;
}

.woocommerce-cart-form__coupon.coupon input {
  background-color: #f0f0f0;
  padding: 20px;
  border-radius: 10px;
  color: #858585;
  font-size: 14px;
  font-family: var(--wp--preset--font-family--montserrat);
  border: none;
  width: 300px;
}

.woocommerce-cart-form__coupon.coupon button {
  background-color: var(--wp--preset--color--primary);
  padding: 20px;
  border-radius: 10px;
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--montserrat);
  font-family: 14px;
  border: solid 1px var(--wp--preset--color--primary);
}

.woocommerce-cart-form__coupon.coupon button:hover {
  color: var(--wp--preset--color--primary);
  background-color: var(--wp--preset--color--white);
}

.custom-cart-summary .summary-row.coupon a.woocommerce-remove-coupon {
  display: none !important;
}

.cart-collaterals {
  background-color: var(--wp--preset--color--beige);
  border-radius: 20px;
  padding: 50px;
  width: unset !important;
}

.cart-collaterals .cart-summary-section {
  display: flex;
  justify-content: space-between;
}

.cart-collaterals .cart-summary-section .update-note {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.cart-collaterals .cart-summary-section .shipping-methods {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cart-collaterals .cart-summary-section .shipping-methods li {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.cart-collaterals .cart-summary-section .custom-shipping-section {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.cart-collaterals .cart-summary-section .custom-shipping-section h3 {
  font-size: 32px;
  line-height: 0.8;
}

.custom-cart-summary {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 400px;
}

.custom-cart-summary .price-table {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.custom-cart-summary .price-table .cart-divider {
  background-color: #d9d9d9;
  height: 1px;
  width: 100%;
  border-radius: 1px;
}

.custom-cart-summary .price-table .summary-row,
.custom-cart-summary .price-table .summary-total {
  display: flex;
  justify-content: space-between;
}

.custom-cart-summary .price-table .summary-row span:first-of-type,
.custom-cart-summary .price-table .summary-total span:first-of-type {
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
}

.custom-cart-summary .price-table .summary-row span:last-of-type,
.custom-cart-summary .price-table .summary-total span:last-of-type {
  color: var(--wp--preset--color--primary);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
}

.custom-cart-summary .checkout-button {
  background-color: var(--wp--preset--color--primary);
  padding: 10px 20px;
  border-radius: 10px;
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  border: 1px solid var(--wp--preset--color--primary);
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 12px;
}

.custom-cart-summary .checkout-button:hover {
  color: var(--wp--preset--color--primary);
  background-color: var(--wp--preset--color--white);
}

.cart-collaterals .cart-summary-section .shipping-methods .label-text {
  display: flex;
  gap: 10px;
  align-items: center;
}

.cart-collaterals .cart-summary-section .shipping-methods input {
  margin: 0 !important;
}

.shipping-method input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.shipping-method label {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
}

.shipping-method .label-text {
  position: relative;
}

.shipping-method .label-text::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid var(--wp--preset--color--black);
  background: transparent;
  transition: 0.2s;
}

.shipping-method input[type="radio"]:checked + .label-text::before {
  content: "";
  border: none;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30' fill='none'><circle cx='15' cy='15' r='15' fill='%23EB5C1E'/><path d='M22.6673 10.9345L13.5007 20.1012L9.33398 15.9345' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  border: 1px solid var(--wp--preset--color--primary);
}

.woocommerce-message {
  border: none !important;
  background-color: #98d593;
  border-radius: 20px 0 20px 20px;
  max-width: 650px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 25px);
  z-index: 1;
  margin-bottom: 0;
}

.woocommerce-message:focus-visible {
  outline: unset !important;
}

.woocommerce-message::before,
.woocommerce-message::after {
  display: none;
}

.woocommerce-message .my-custom-success {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  gap: 10px;
}

.woocommerce-message .popup-heading {
  color: #4d6d4a;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
}

.woocommerce-message .popup-content {
  color: #4d6d4a;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  text-align: center;
}

.woocommerce-message .my-success-close {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 30px;
  height: 30px;
  border: none;
  background-color: #4d6d4a;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  padding: 0;
  cursor: pointer;
}

.woocommerce-message .my-success-close svg path {
  fill: var(--wp--preset--color--white);
}

.woocommerce-error {
  border: none !important;
  background-color: #e57878;
  border-radius: 20px 0 20px 20px;
  max-width: 650px;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 25px);
  z-index: 1;
  margin-bottom: 0;
}

.woocommerce-error:focus-visible {
  outline: unset !important;
}

.woocommerce-error::before,
.woocommerce-error::after {
  display: none;
}

.woocommerce-error .my-custom-error {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  gap: 10px;
}

.woocommerce-error .popup-heading {
  color: #6e3838;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  font-weight: 600;
}

.woocommerce-error .popup-content {
  color: #6e3838;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  text-align: center;
}

.woocommerce-error .my-error-close {
  position: absolute;
  top: -15px;
  right: -15px;
  width: 30px;
  height: 30px;
  border: none;
  background-color: #6e3838;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  padding: 0;
  cursor: pointer;
}

.woocommerce-error .my-error-close svg path {
  fill: var(--wp--preset--color--white);
}

/* CHECKOUT */
#payment button#place_order {
  display: none !important;
}

.wc-checkout-wrapper {
  max-width: 1440px;
  margin: 80px auto;
  padding: 80px;
  border-radius: 28px;
  background: var(--wp--preset--color--white);
  box-shadow: 0 5px 4px 0 rgba(0, 0, 0, 0.25);
  font-family: var(--wp--preset--font-family--montserrat);
  border-radius: 18px;
}

.woocommerce-form-coupon-toggle {
  display: none;
}

.checkout-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}

.checkout-header h1 {
  font-family: var(--wp--preset--font-family--helvetica);
}

.select2-selection.select2-selection--single {
  border: none !important;
  background-color: #f0f0f0 !important;
  color: #858585 !important;
  height: 50px !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  display: flex;
  align-items: center;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
}

.select2-search.select2-search--dropdown {
  display: none !important;
}

.select2-dropdown.select2-dropdown--below {
  border-bottom-left-radius: 10px !important;
  border-bottom-right-radius: 10px !important;
  border-color: #f0f0f0 !important;
  background-color: var(--wp--preset--color--white) !important;
}

.select2-container--default
  .select2-results__option--highlighted[aria-selected],
.select2-container--default
  .select2-results__option--highlighted[data-selected] {
  background-color: var(--wp--preset--color--primary) !important;
  color: var(--wp--preset--color--white) !important;
}

.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--default .select2-results__option[data-selected="true"] {
  background-color: var(--wp--preset--color--primary) !important;
  color: var(--wp--preset--color--white) !important;
}

.billing-same-toggle {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  font-size: 16px;
  color: var(--wp--preset--color--primary);
}

.billing-same-toggle input {
  display: none;
}

.billing-same-toggle span {
  position: relative;
  padding-left: 46px;
}

/* Box */
.billing-same-toggle span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border: 2px solid var(--wp--preset--color--black);
  border-radius: 6px;
}

/* Checkmark */
.billing-same-toggle span::after {
  content: url('data:image/svg+xml,<svg fill="%23EB5C1E" viewBox="0 0 1920 1920" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"><path d="M1827.701 303.065 698.835 1431.801 92.299 825.266 0 917.564 698.835 1616.4 1919.869 395.234z" fill-rule="evenodd"></path></g></svg>');
  position: absolute;
  left: 7px;
  top: 57%;
  transform: translateY(-50%);
  font-size: 14px;
  color: var(--wp--preset--color--primary);
  opacity: 0;
  width: 20px;
}

/* Checked */
.billing-same-toggle input:checked + span::after {
  opacity: 1;
}

.billing-same-toggle input:checked + span::before {
  border-color: var(--wp--preset--color--primary);
}

.order-product {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 12px 0;
}

/* Image */
.thumb-wrap {
  position: relative;
  width: 64px;
  height: 64px;
  background: #f5f5f5;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.thumb-wrap img {
  max-width: 48px;
  max-height: 48px;
}

/* Quantity badge */
.qty-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  background: var(--wp--preset--color--primary);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Right side layout */
.product-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
}

/* Name */
.product-name {
  font-size: 14px;
  color: #333;
  margin-bottom: 4px;
}

/* Price */
.product-price {
  font-weight: 600;
  text-align: right;
}

.coupon-toggle {
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
}

.coupon-toggle:hover {
  text-decoration: underline;
}

.coupon-form {
  display: flex;
  gap: 8px;
}

.coupon-form input {
  flex: 1;
  height: 44px;
  border-radius: 8px;
  border: 1px solid #ddd;
  padding: 0 12px;
  flex: 1;
  max-width: unset !important;
}

.coupon-form button {
  height: 44px;
  padding: 0 16px;
  border-radius: 8px;
  border: none;
  background: var(--wp--preset--color--primary);
  color: #fff;
  cursor: pointer;
}

/* ============================================================
   BACK TO CART BUTTON
   Was: .checkout-outer-container .wp-block-button__link.wp-element-button
   ============================================================ */
.wc-checkout-wrapper .back-to-cart {
  padding: 15px 20px;
  border-radius: 10px;
  border: 1px solid var(--wp--preset--color--black);
  background-color: var(--wp--preset--color--white);
  color: var(--wp--preset--color--black);
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  transition:
    background-color 0.2s,
    color 0.2s;
}

.wc-checkout-wrapper .back-to-cart svg {
  display: none;
}

.wc-checkout-wrapper .back-to-cart::before {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M7.825 11L20 11V13L7.825 13L13.425 18.6L12 20L4 12L12 4L13.425 5.4L7.825 11Z" fill="%23222222"/></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.wc-checkout-wrapper .back-to-cart:hover {
  background-color: var(--wp--preset--color--black);
  color: var(--wp--preset--color--white);
}

.wc-checkout-wrapper .back-to-cart:hover::before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M7.825 11L20 11V13L7.825 13L13.425 18.6L12 20L4 12L12 4L13.425 5.4L7.825 11Z" fill="%23ffffff"/></svg>');
}

/* ============================================================
   MAIN FORM
   Was: .wc-block-components-form.wc-block-checkout__form
   ============================================================ */
.wc-checkout-wrapper form.checkout {
  display: flex;
  flex-direction: column;
  gap: 0;
}

/* ============================================================
   TWO-COLUMN LAYOUT
   Was: .wc-block-components-sidebar-layout.wc-block-checkout
   ============================================================ */
.wc-checkout-columns {
  display: flex;
  gap: 50px;
  flex-wrap: nowrap;
}

.wc-checkout-columns > .wc-checkout-left {
  max-width: 700px;
  width: 100%;
  padding: 0 !important;
}

.wc-checkout-columns > .wc-checkout-right {
  flex: 1;
  padding: 0 !important;
}

/* ============================================================
   SHARED CARD
   ============================================================ */
.wc-checkout-card {
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  margin-bottom: 64px;
  box-shadow: none;
}

/* ============================================================
   EXPRESS CHECKOUT
   Was: .wc-block-components-express-payment__content etc.
   ============================================================ */
.express-checkout {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.express-checkout .wc-express-btn-wrap {
  display: flex;
  height: 122px;
  padding: 0 200px;
  justify-content: center;
  align-items: center;
  border-radius: 28px;
  border: 1px solid #858585;
  margin: 30px 0;
}

.express-checkout p.label {
  color: var(--wp--preset--color--black);
  text-align: center;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 20px;
  font-weight: 600;
  padding: 10px 16px;
  background-color: var(--wp--preset--color--white);
  margin: 0;
  align-self: center;
  transform: translateY(40%);
  position: relative;
  z-index: 1;
}

.express-checkout .express-divider {
  margin: 64px 0 0;
  color: #858585;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 20px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 12px;
}

.express-checkout .express-divider::before,
.express-checkout .express-divider::after {
  content: "";
  flex: 1;
  height: 2px;
  background-color: #858585;
}

/* ============================================================
   SECTION HEADINGS
   Was: h2.wc-block-components-title.wc-block-components-checkout-step__title
   ============================================================ */
.wc-checkout-card h2,
.wc-checkout-card h3 {
  font-size: 32px;
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--primary);
  margin: 0 0 18px;
  font-weight: 700;
}

/* Section description
   Was: p.wc-block-components-checkout-step__description */
.wc-checkout-card > p {
  font-size: 16px;
  color: var(--wp--preset--color--black);
  font-family: var(--wp--preset--font-family--montserrat);
  margin: -6px 0 16px;
}

/* ============================================================
   FORM FIELDS
   Was: .wc-block-components-form.wc-block-checkout__form input
   ============================================================ */
.wc-checkout-wrapper .form-row input[type="text"],
.wc-checkout-wrapper .form-row input[type="email"],
.wc-checkout-wrapper .form-row input[type="tel"],
.wc-checkout-wrapper .form-row input[type="password"],
.wc-checkout-wrapper .form-row select,
.wc-checkout-wrapper .form-row textarea {
  background-color: #f0f0f0 !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
  line-height: 0.8 !important;
  height: 50px !important;
  border: none !important;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 14px;
  color: var(--wp--preset--color--black);
  width: 100%;
  box-sizing: border-box;
  outline: none;
  transition: outline 0.2s;
}

.wc-checkout-wrapper .form-row select {
  height: unset !important;
  line-height: 20px !important;
}

.wc-checkout-wrapper .form-row textarea {
  height: auto !important;
  line-height: 1.5 !important;
  padding: 16px !important;
  border-radius: 18px !important;
  border: 1px solid #f0f0f0 !important;
}

.wc-checkout-wrapper .form-row input::placeholder,
.wc-checkout-wrapper .form-row textarea::placeholder {
  color: #858585;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 14px;
}

/* Floating labels */
.wc-checkout-wrapper .form-row label {
  font-size: 10px;
  font-family: var(--wp--preset--font-family--montserrat) !important;
  color: #858585;
  display: block;
  margin-bottom: 4px;
  line-height: 0.8;
}

/* Focus states */
.wc-checkout-wrapper .form-row input:focus-visible,
.wc-checkout-wrapper .form-row select:focus-visible {
  outline: var(--wp--preset--color--primary) auto 1px;
}

/* Address two-col grid */
.address-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 14px;
}

/* Address-2 toggle link */
.wc-checkout-wrapper .form-row a.add-extra-fields {
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--primary);
  font-size: 16px;
  text-decoration: none;
}

/* Hide state/province field */
.wc-checkout-wrapper .form-row.state-field {
  display: none;
}

/* Field ordering */
.wc-checkout-wrapper #billing_first_name_field,
.wc-checkout-wrapper #shipping_first_name_field {
  order: 1;
}
.wc-checkout-wrapper #billing_last_name_field,
.wc-checkout-wrapper #shipping_last_name_field {
  order: 2;
}
.wc-checkout-wrapper #billing_address_1_field,
.wc-checkout-wrapper #shipping_address_1_field {
  order: 3;
}
.wc-checkout-wrapper #billing_address_2_field,
.wc-checkout-wrapper #shipping_address_2_field {
  order: 6;
}
.wc-checkout-wrapper #billing_postcode_field,
.wc-checkout-wrapper #shipping_postcode_field {
  order: 7;
}
.wc-checkout-wrapper #billing_city_field,
.wc-checkout-wrapper #shipping_city_field {
  order: 8;
}
.wc-checkout-wrapper #billing_country_field,
.wc-checkout-wrapper #shipping_country_field {
  order: 9;
}
.wc-checkout-wrapper #billing_phone_field,
.wc-checkout-wrapper #shipping_phone_field {
  order: 9;
}

/* ============================================================
   SHIPPING OPTIONS
   Was: .wc-block-components-radio-control etc.
   ============================================================ */
.shipping-methods-list {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.shipping-methods-list li {
  border-radius: 10px !important;
  padding: 16px 16px 16px 54px !important;
  border: 1px solid #e5e7eb;
  position: relative;
  cursor: pointer;
}

.shipping-methods-list li:has(input:checked) {
  box-shadow: inset 0 0 0 1px var(--wp--preset--color--primary) !important;
  border-color: transparent;
}

.shipping-methods-list input[type="radio"] {
  width: 28px !important;
  height: 28px !important;
  background-color: var(--wp--preset--color--white) !important;
  border: solid 1px var(--wp--preset--color--primary) !important;
  padding: unset !important;
  border-radius: 100% !important;
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
  accent-color: var(--wp--preset--color--primary);
}

/* ============================================================
   PAYMENT OPTIONS
   Was: .wc-block-components-radio-control (payment)
   ============================================================ */
.payment-methods-list {
  display: flex;
  flex-direction: column;
  row-gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.payment-methods-list li {
  border-radius: 10px !important;
  border: 1px solid #e5e7eb;
  overflow: hidden;
}

.payment-methods-list li:has(input:checked) {
  box-shadow: inset 0 0 0 1px var(--wp--preset--color--primary);
  border-color: transparent;
}

.payment-method-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 16px 16px 54px;
  position: relative;
  cursor: pointer;
}

.payment-method-left input[type="radio"] {
  width: 28px !important;
  height: 28px !important;
  background-color: var(--wp--preset--color--white) !important;
  border: solid 1px var(--wp--preset--color--primary) !important;
  padding: unset !important;
  border-radius: 100% !important;
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
  accent-color: var(--wp--preset--color--primary);
}

.payment-box {
  padding: 16px;
  border-top: 1px solid #f0f0f0;
  background: #f0f0f0;
  border-radius: 0 0 10px 10px;
  display: none;
}

.payment-box.active {
  display: block;
}

/* ============================================================
   ORDER NOTES / TEXTAREA
   Was: .wc-block-components-textarea
   ============================================================ */
.wc-checkout-notes textarea,
.wc-checkout-wrapper textarea#order_comments {
  border-radius: 18px !important;
  border: 1px solid #f0f0f0 !important;
  padding: 16px !important;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  color: #858585;
  background-color: var(--wp--preset--color--white) !important;
  height: auto !important;
  line-height: 1.5 !important;
  width: 100%;
  box-sizing: border-box;
}

.wc-checkout-notes textarea::placeholder {
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  color: #858585;
}

/* Notes toggle label
   Was: .wc-block-components-checkbox label span */
.wc-checkout-notes label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--primary);
  cursor: pointer;
  margin-bottom: 10px;
}

/* Notes checkbox
   Was: .wc-block-components-checkbox__input */
.wc-checkout-notes input[type="checkbox"] {
  width: 30px !important;
  height: 30px !important;
  border-radius: 5px !important;
  border: 1px solid var(--wp--preset--color--primary) !important;
  background-color: var(--wp--preset--color--white) !important;
  padding: 0 !important;
  accent-color: var(--wp--preset--color--primary);
  flex-shrink: 0;
}

/* ============================================================
   TERMS
   Was: .wc-block-checkout__terms span
   ============================================================ */
.wc-checkout-terms,
.wc-checkout-wrapper .woocommerce-terms-and-conditions-wrapper {
  font-family: var(--wp--preset--font-family--montserrat) !important;
  color: var(--wp--preset--color--black) !important;
  font-size: 16px !important;
}

.wc-checkout-terms a,
.wc-checkout-wrapper .woocommerce-terms-and-conditions-wrapper a {
  color: var(--wp--preset--color--primary);
}

/* ============================================================
   PLACE ORDER BUTTON
   ============================================================ */
#place_order {
  display: block;
  width: 100%;
  padding: 15px 20px;
  border-radius: 10px;
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  border: none;
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-weight: 600;
  cursor: pointer;
  transition:
    filter 0.2s,
    transform 0.1s;
  letter-spacing: 0.02em;
}

#place_order:hover {
  filter: brightness(0.88);
}
#place_order:active {
  transform: scale(0.99);
}

/* ============================================================
   ORDER SUMMARY CARD (right column)
   Was: .wp-block-woocommerce-checkout-order-summary-block
   ============================================================ */
.wc-checkout-right .wc-checkout-card {
  border: none !important;
  border-radius: 18px !important;
  background-color: #f0f0f0;
  padding: 0;
  overflow: hidden;
  margin-bottom: 0;
  position: sticky;
  top: 20px;
}

/* Summary title
   Was: .wc-block-components-checkout-order-summary__title */
.order-summary-title {
  font-size: 32px;
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--primary);
  margin: 0;
  padding: 40px 40px 0;
}

/* Products list
   Was: cart items wrapper / .wc-block-components-order-summary__content */
.order-products {
  display: flex;
  flex-direction: column;
  gap: 50px;
  padding: 64px 40px 40px;
}

/* Individual product row
   Was: .wc-block-components-order-summary-item */
.order-product {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 100px;
}

/* Thumbnail
   Was: .wc-block-components-order-summary-item__image */
.order-product .thumb-wrap img {
  width: 60px !important;
  height: 60px !important;
  background-color: var(--wp--preset--color--white);
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px !important;
  object-fit: contain;
}

/* Quantity badge
   Was: .wc-block-components-order-summary-item__quantity */
.order-product .qty-badge {
  background-color: var(--wp--preset--color--primary) !important;
  border: none !important;
  border-radius: 100% !important;
  box-shadow: none !important;
  color: var(--wp--preset--color--white) !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
  font-size: 20px !important;
  width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  transform: translate(40%, -40%) !important;
}

/* Product name
   Was: .wc-block-components-product-name */
.order-product .product-name {
  font-size: 16px !important;
  color: var(--wp--preset--color--black) !important;
  text-align: end;
  font-family: var(--wp--preset--font-family--montserrat);
  flex: 1;
}

/* Product price
   Was: .wc-block-components-order-summary-item__individual-prices */
.order-product .product-price {
  font-size: 20px;
  font-family: var(--wp--preset--font-family--helvetica);
  color: var(--wp--preset--color--primary);
  white-space: nowrap;
}

/* ============================================================
   COUPON ROW
   Was: .wp-block-woocommerce-checkout-order-summary-coupon-form-block
   ============================================================ */
.coupon-row {
  padding: 40px;
  position: relative;
  display: flex;
  gap: 8px;
}

.coupon-row::before,
.coupon-row::after {
  content: "";
  width: 100%;
  height: 5px;
  position: absolute;
  left: 0;
  background-color: var(--wp--preset--color--white);
}

.coupon-row::before {
  top: 0;
}
.coupon-row::after {
  bottom: 0;
}

/* Coupon input
   Was: #wc-block-components-totals-coupon__input-coupon */
.coupon-row input[type="text"] {
  border: none !important;
  border-radius: 10px !important;
  padding: 20px !important;
  background-color: var(--wp--preset--color--white);
  font-size: 16px !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
  color: var(--wp--preset--color--black) !important;
  height: auto !important;
  line-height: normal !important;
  flex: 1;
  max-width: unset;
}

.coupon-row input[type="text"]:focus-visible {
  outline: none !important;
}

.coupon-row input[type="text"]::placeholder {
  color: #858585 !important;
  font-size: 14px !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
}

/* Coupon apply button
   Was: .wc-block-components-totals-coupon__button */
.coupon-row button {
  padding: 16px !important;
  border-radius: 10px !important;
  background-color: var(--wp--preset--color--primary);
  border: none;
  cursor: pointer;
  font-size: 16px !important;
  font-family: var(--wp--preset--font-family--montserrat) !important;
  color: var(--wp--preset--color--white) !important;
  opacity: 1 !important;
  transition: filter 0.2s;
  height: auto;
}

.coupon-row button:hover {
  filter: brightness(0.88);
}

/* ============================================================
   ORDER TOTALS
   Was: .wp-block-woocommerce-checkout-order-summary-totals-block
   ============================================================ */
.order-totals-wrap {
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.order-totals {
  width: 100%;
  border-collapse: collapse;
}

.order-totals tr td {
  padding: 0;
  vertical-align: middle;
}

/* Row labels
   Was: .wc-block-components-totals-item__label */
.order-totals tr td:first-child {
  font-size: 16px !important;
  color: var(--wp--preset--color--black) !important;
  font-family: var(--wp--preset--font-family--montserrat);
}

/* Row values
   Was: .wc-block-formatted-money-amount */
.order-totals tr td:last-child {
  font-size: 20px !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
  color: var(--wp--preset--color--black) !important;
  text-align: right;
}

/* Discount row
   Was: .wc-block-components-totals-item.wc-block-components-totals-discount */
.order-totals .discount td:first-child,
.order-totals .discount td:last-child {
  color: var(--wp--preset--color--primary) !important;
}

/* Total row
   Was: .wc-block-components-totals-footer-item */
.order-totals .total-row td:first-child {
  font-size: 24px !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
  color: var(--wp--preset--color--black) !important;
}

.order-totals .total-row td:last-child {
  font-size: 32px !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
  color: var(--wp--preset--color--primary) !important;
}

.woocommerce-checkout-review-order {
  padding: 40px;
}

.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th {
  font-size: 16px !important;
}

.woocommerce table.shop_table tfoot tr.woocommerce-shipping-totals.shipping th {
  font-size: 0 !important;
}

.woocommerce
  table.shop_table
  tfoot
  tr.woocommerce-shipping-totals.shipping
  th
  span {
  font-size: 16px !important;
}

.wc-checkout-right .woocommerce-checkout-review-order-table tr.order-total th,
.wc-checkout-right .woocommerce-checkout-review-order-table tr.order-total td {
  font-size: 24px !important;
  font-family: var(--wp--preset--font-family--helvetica) !important;
}

/* Hide the default WC table structure */
.wc-checkout-right .woocommerce-checkout-review-order-table {
  border: none !important;
  width: 100%;
  margin: 0 !important;
}

.wc-checkout-right .woocommerce-checkout-review-order-table thead {
  display: none;
}

.wc-checkout-right .woocommerce-checkout-review-order-table tbody,
.wc-checkout-right .woocommerce-checkout-review-order-table tfoot {
  display: block;
}

/* Hide product rows — already shown above in your custom order-products block */
.wc-checkout-right .woocommerce-checkout-review-order-table .cart_item {
  display: none;
}

/* Each totals row becomes a clean flex row */
.wc-checkout-right .woocommerce-checkout-review-order-table tr {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 6px 0;
  border: none;
  background: transparent;
}

.wc-checkout-right .woocommerce-checkout-review-order-table th {
  font-weight: 400 !important;
}

.wc-checkout-right .woocommerce-checkout-review-order-table td,
.wc-checkout-right .woocommerce-checkout-review-order-table th {
  border: none !important;
  padding: 0;
  background: transparent;
  font-size: 0.95rem;
}

/* Coupon row — orange text */
.wc-checkout-right .woocommerce-checkout-review-order-table tr.cart-discount th,
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.cart-discount
  td {
  color: var(--wp--preset--color--primary);
}

/* Hide the [Verwijderen] remove coupon link in the summary */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.cart-discount
  .woocommerce-remove-coupon {
  display: none;
}

/* Divider above total */
.wc-checkout-right .woocommerce-checkout-review-order-table tr.order-total {
  margin-top: 8px;
  padding-top: 12px;
}

/* Bold total label */
.wc-checkout-right .woocommerce-checkout-review-order-table tr.order-total th {
  font-weight: 700 !important;
  font-size: 1rem;
}

/* Bold + orange + larger total amount */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.order-total
  td
  .woocommerce-Price-amount {
  font-weight: 700;
  color: var(--wp--preset--color--primary);
}

/* Show shipping row in right summary */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals {
  display: flex;
}

/* Hide ALL the shipping method list/inputs/labels — only keep the price */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  td {
  font-size: 0.95rem;
}

.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  ul#shipping_method {
  display: none;
}

/* Show only the selected method name via a data attribute trick — 
   we'll inject it with JS instead */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  td::before {
  content: attr(data-chosen-method);
  display: block;
}

.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  td {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  td
  .injected-shipping-label {
  font-size: 0.95rem;
}

/* Hide the UL just in case JS hasn't run yet */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  ul {
  display: none;
}

/* Hide the default "Verzending" text in the th */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  th {
  white-space: nowrap;
  font-size: 0; /* hides the raw text node without affecting child elements */
}

.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  th
  .injected-shipping-label {
  font-weight: normal;
  top: 6px;
  position: relative;
}

/* Hide the UL in case JS hasn't run yet */
.wc-checkout-right
  .woocommerce-checkout-review-order-table
  tr.woocommerce-shipping-totals
  ul {
  display: none;
}

/* ============================================================
   WC NOTICES
   ============================================================ */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  padding: 12px 16px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-size: 13px;
  font-family: var(--wp--preset--font-family--montserrat);
}

.woocommerce-error {
  background: var(--wp--preset--color--beige);
  border-left: 4px solid var(--wp--preset--color--primary);
  color: var(--wp--preset--color--black);
}
.woocommerce-message {
  background: var(--wp--preset--color--beige);
  border-left: 4px solid var(--wp--preset--color--primary);
  color: var(--wp--preset--color--black);
}
.woocommerce-info {
  background: var(--wp--preset--color--beige);
  border-left: 4px solid var(--wp--preset--color--black);
  color: var(--wp--preset--color--black);
}

/* Card-style payment methods */
.wc_payment_methods {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.wc_payment_method {
  border: 1px solid #e0e0e0;
  border-radius: 18px;
  padding: 16px;
  background: #fff;
  display: flex;
  align-items: center;
}

/* Highlight selected payment method with primary color */
.wc_payment_method:has(input[type="radio"]:checked) {
  border-color: var(--wp--preset--color--primary);
}

.wc_payment_method label {
  display: flex !important;
  align-items: center;
  width: 100%;
  cursor: pointer;
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  position: relative;
}

.woocommerce-checkout #payment ul.payment_methods li img {
  height: 40px !important;
  width: auto;
  margin: 0 !important;
  margin-left: auto !important;
  justify-self: flex-end;
}

/* Hide native radio button */
#payment .payment_methods > .wc_payment_method > input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

#payment .payment_methods > .wc_payment_method > label {
  position: relative;
  display: flex;
  align-items: center;
}

/* Unchecked: just the orange ring */
#payment .payment_methods > .wc_payment_method > label::before {
  content: "" !important;
  flex-shrink: 0;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  border: 1px solid var(--wp--preset--color--primary) !important;
  background-color: transparent !important;
  margin-right: 12px !important;
  box-sizing: border-box;
  transition: box-shadow 0.15s ease;
}

/* Checked: orange ring + filled orange center (~22px fill inside 28px circle) */
#payment
  .payment_methods
  li.wc_payment_method
  > input[type="radio"]:first-child:checked
  + label::before {
  content: "" !important;
  background-color: var(--wp--preset--color--primary) !important;
  box-shadow: 0 0 0 3px var(--wp--preset--color--white) inset !important;
}

.woocommerce-checkout-payment {
  background-color: unset !important;
}

.wc_payment_methods.payment_methods.methods {
  background-color: unset !important;
  padding: 0 !important;
  border: unset !important;
}

.wc_payment_methods.payment_methods.methods::after,
.wc_payment_methods.payment_methods.methods::before {
  content: unset !important;
}

/* Style the radio button with primary color */
.wc_payment_method input[type="radio"] {
  accent-color: var(--wp--preset--color--primary);
  width: 18px;
  height: 18px;
  margin-right: 12px;
  flex-shrink: 0;
}

/* Hide the expanded payment box */
.payment_box {
  display: none !important;
}

/* Reorder: Bancontact first, iDEAL second, hide credit cards */
.wc_payment_methods {
  display: flex;
  flex-direction: column;
}

/* Terms & conditions wrapper - card style */
.woocommerce-terms-and-conditions-wrapper .form-row {
  margin: 0;
}

.woocommerce-terms-and-conditions-wrapper
  .woocommerce-form__label-for-checkbox {
  display: flex !important;
  font-size: 16px !important;
  gap: 16px;
  padding: 14px 0;
  background: #fff;
  cursor: pointer;
  color: var(--wp--preset--color--black) !important;
  line-height: 1 !important;
}

/* Hide the default checkbox */
.woocommerce-terms-and-conditions-wrapper .woocommerce-form__input-checkbox {
  appearance: none;
  -webkit-appearance: none;
  width: 22px;
  height: 22px;
  min-width: 22px;
  border: 1.5px solid var(--wp--preset--color--primary);
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Checkmark when checked */
.woocommerce-terms-and-conditions-wrapper
  .woocommerce-form__input-checkbox:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 8px;
  height: 13px;
  border: 2px solid var(--wp--preset--color--primary);
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
}

/* Hide the required asterisk */
.woocommerce-terms-and-conditions-wrapper .required {
  display: none;
}

/* Keep the link orange */
.woocommerce-terms-and-conditions-checkbox-text a {
  color: var(--wp--preset--color--primary);
}

/* POLICIES */

.algemene-voorwaarden strong {
  color: var(--wp--preset--color--primary) !important;
}

.algemene-voorwaarden p,
.privacy-policy p {
  margin: 0.85em 0;
}
.algemene-voorwaarden ul,
.privacy-policy ul {
  margin-left: 7px;
  margin-bottom: 20px;
}

.privacy-policy h1,
.privacy-policy h2,
.privacy-policy h3,
.privacy-policy h4,
.privacy-policy h5,
.privacy-policy h6 {
  margin-bottom: 14px;
}

.terugbetaalbeleid .details-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.terugbetaalbeleid details {
  max-width: 400px;
  margin: unset !important;
}

.terugbetaalbeleid details summary {
  padding: 16px;
  background-color: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.terugbetaalbeleid details p {
  background-color: var(--wp--preset--color--beige);
  padding: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  font-size: 16px;
}

.terugbetaalbeleid details > summary {
  list-style: none;
}

.terugbetaalbeleid details > summary::-webkit-details-marker {
  display: none;
}

.terugbetaalbeleid details > summary::before {
  content: "";
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"><path fill="%23ffffff" d="M12 17.414 3.293 8.707l1.414-1.414L12 14.586l7.293-7.293 1.414 1.414L12 17.414z"/></svg>');
  width: 20px;
  height: 20px;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  transform: rotate(-90deg);
}

.terugbetaalbeleid details > summary::before {
  transition: transform 0.3s ease;
}

.terugbetaalbeleid details[open] > summary::before {
  transform: rotate(0deg);
}

.terugbetaalbeleid details > *:not(summary) {
  overflow: hidden;
}

.algemene-voorwaarden em {
  word-break: break-all;
}

.category-grid {
  max-width: 1440px;
  margin: 40px auto;
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: center;
}

.category-grid img {
  transition: transform 0.3s ease-in-out;
}

.category-grid > a {
  width: calc((100% / 3) - (2 * 24px));
}

.category-grid > a:hover img {
  transform: scale(1.2);
}

.category-grid > a:hover > h3 {
  text-decoration: underline;
}

/* MERKEN */
.logo-grid {
  gap: 16px;
}

.woocommerce table.shop_table td,
.woocommerce table.shop_table th {
  padding: 0 !important;
}

/* FOOTER POPUP */
.open-newsletter {
  cursor: pointer;
  text-decoration: underline;
}

.open-newsletter:hover {
  color: var(--wp--preset--color--primary);
}

.newsletter-popup {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  z-index: 9999;
}

.newsletter-popup-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--wp--preset--color--beige);
  padding: 30px;
  width: 90%;
  max-width: 400px;
  border-radius: 10px;
}

.close-newsletter {
  position: absolute;
  top: 10px;
  right: 15px;
  cursor: pointer;
  font-size: 24px;
}

.newsletter-popup .sib_signup_box_inside_1 {
  gap: 12px !important;
}

.newsletter-popup .sib_signup_box_inside_1 p {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.newsletter-popup .sib_signup_box_inside_1 p input[type="submit"] {
  background-color: var(--wp--preset--color--primary);
  border: solid 1px var(--wp--preset--color--primary);
  color: var(--wp--preset--color--white);
  border-radius: 8px;
  padding: 8px 16px;
  font-size: 16px;
  font-family: var(--wp--preset--font-family--montserrat);
  transition:
    background-color 0.3s ease-in-out,
    color 0.3s ease-in-out;
  cursor: pointer;
}

.newsletter-popup .sib_signup_box_inside_1 p input[type="submit"]:hover {
  background-color: transparent;
  color: var(--wp--preset--color--black);
}

.newsletter-popup .sib_loader {
  max-width: 20px !important;
  max-height: 20px !important;
}

/* ===== Base Layout ===== */
.woocommerce-order-received #site-content {
  background: var(--wp--preset--color--beige);
  padding: 40px 20px;
  color: var(--wp--preset--color--black);
}

.woocommerce-order-received .checkout-outer-container {
  max-width: 900px;
  margin: 0 auto;
}

/* ===== Success Notice ===== */
.woocommerce-order-received .woocommerce-notice--success {
  background: #fff;
  border-left: 4px solid var(--wp--preset--color--primary);
  padding: 18px 22px;
  border-radius: 10px;
  margin-bottom: 25px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
  font-weight: 500;
}

/* ===== Order Overview Card ===== */
.woocommerce-order-received .woocommerce-order-overview {
  background: #fff;
  padding: 25px;
  border-radius: 14px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 18px;
  margin-bottom: 30px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.woocommerce-order-received .woocommerce-order-overview::before,
.woocommerce-order-received .woocommerce-order-overview::after {
  content: unset !important;
}

.woocommerce-order-received .woocommerce-order-overview li {
  list-style: none;
  font-size: 14px;
  margin-right: 0 !important;
  opacity: 0.8;
}

.woocommerce-order-received .woocommerce-order-overview strong {
  display: block;
  margin-top: 4px;
  font-size: 16px;
  color: var(--wp--preset--color--black);
}

/* ===== Section Titles ===== */
.woocommerce-order-received .woocommerce-order-details__title,
.woocommerce-order-received .woocommerce-column__title {
  font-size: 22px;
  margin-bottom: 15px;
  color: var(--wp--preset--color--primary);
}

/* ===== Order Details Table ===== */
.woocommerce-order-received .woocommerce-order-details {
  background: #fff;
  padding: 25px;
  border-radius: 14px;
  margin-bottom: 30px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.woocommerce-order-received .woocommerce table.shop_table {
  border: none !important;
}

.woocommerce-order-received .woocommerce table.shop_table thead {
  background-color: var(--wp--preset--color--beige);
  font-size: var(--wp--preset--font-size--body);
}

.woocommerce-order-received .woocommerce table.shop_table thead tr th {
  color: var(--wp--preset--color--primary) !important;
  padding: 6px 0 !important;
}

.woocommerce-order-received .woocommerce table.shop_table tbody tr td {
  border-color: var(--wp--preset--color--black) !important;
  padding: 6px 0 !important;
}

.woocommerce-order-received
  .woocommerce
  table.shop_table
  tbody
  tr
  td.product-name
  a {
  text-decoration: none;
  color: var(--wp--preset--color--black);
}

.woocommerce-order-received .woocommerce table.shop_table tfoot tr th,
.woocommerce-order-received .woocommerce table.shop_table tfoot tr td {
  border-top: 1px solid var(--wp--preset--color--black);
  padding: 6px 0 !important;
  opacity: 1 !important;
}

.woocommerce-order-received .woocommerce table.shop_table tfoot tr th {
  color: var(--wp--preset--color--black) !important;
}

/* Totals styling */
.woocommerce-order-received .shop_table tfoot th {
  font-weight: 500;
  opacity: 0.7;
}

.woocommerce-order-received .shop_table tfoot td {
  font-weight: 600;
}

.woocommerce-order-received .shop_table tfoot tr:last-child td {
  color: var(--wp--preset--color--primary);
  font-size: 18px;
}

/* ===== Customer Details ===== */
.woocommerce-order-received .woocommerce-customer-details {
  background: #fff;
  padding: 25px;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

.woocommerce-order-received .woocommerce-customer-details address {
  font-style: normal;
  line-height: 1.6;
  font-size: 15px;
}

/* ===== Email Styling ===== */
.woocommerce-order-received .woocommerce-customer-details--email {
  margin-top: 10px;
  color: var(--wp--preset--color--primary);
}

/* ===== Price Highlight ===== */
.woocommerce-order-received .woocommerce-Price-amount {
  color: var(--wp--preset--color--primary);
  font-weight: 600;
}

.product-price {
  flex-direction: column;
  align-items: start !important;
}

.product-price > div:first-of-type {
  display: flex;
  gap: 15px;
  flex-direction: row;
  align-items: center;
}

.product-shipping-price {
  display: flex;
  gap: 12px;
}

.product-shipping-price button {
  font-size: 14px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--primary);
  border: 1px solid var(--wp--preset--color--primary);
  line-height: 0.8;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
  font-weight: 600;
  cursor: pointer;
}

.product-shipping-price button:hover {
  color: var(--wp--preset--color--primary);
  background-color: var(--wp--preset--color--white);
}

.shipping-popup {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

.shipping-popup .shipping-popup-inner {
  background-color: var(--wp--preset--color--beige);
  padding: 16px;
  padding-bottom: 32px;
  border-radius: 14px;
  max-width: 600px;
  width: 100%;
  position: relative;
  text-align: center;
}

.shipping-popup .shipping-popup-inner button {
  position: absolute;
  right: 16px;
  top: 16px;
  font-size: 24px;
  font-family: var(--wp--preset--font-family--montserrat);
  color: var(--wp--preset--color--white);
  background-color: var(--wp--preset--color--primary);
  border: 1px solid var(--wp--preset--color--primary);
  line-height: 0.8;
  padding: 4px 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
  font-weight: 600;
  cursor: pointer;
}

.shipping-popup .shipping-popup-inner button:hover {
  color: var(--wp--preset--color--primary);
  background-color: var(--wp--preset--color--white);
}

.shipping-popup .shipping-popup-inner .country {
  margin-top: 20px;
}

.shipping-popup .shipping-popup-inner ul {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}

/* ===== Responsive ===== */
@media (max-width: 600px) {
  .woocommerce-order-overview {
    grid-template-columns: 1fr;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 18px;
  }
}

/* CLASSES */
@media (min-width: 1472px) {
  .boxed-left,
  .home-carrousel .slick-list {
    margin-left: calc(50% - 720px) !important;
  }

  .boxed-right {
    margin-right: calc(50% - 720px) !important;
  }
}
