/*

 Version:      1.0
*/
/* ========= БАЗОВАЯ ТИПОГРАФИКА ========= */

/* Только для recently viewed */




/* Если карточек меньше 5, они не растягиваются */
.related-products.recent-viewed-products .products-grid:has(.custom-product-card:nth-child(n+1):nth-child(-n+2)) .custom-product-card {
    flex: 0 0 calc(20% - 6px);
    max-width: calc(20% - 6px);
}

/* Мобилка не трогаем */
@media (max-width: 768px) {
	.login-image { min-height: 400px !important;}
    .related-products.recent-viewed-products .custom-product-card {
        flex: 1 1 calc(50% - 3px) !important;
        max-width: calc(50% - 3px) !important;
    }
}


/* FORM RESET */
.mc-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}

/* EMAIL */
.mc-form input[type="email"] {
  width: 100%;
  padding: 12px 14px;
  font-size: 10px;
  text-transform: uppercase;
  border: 1px solid #ccc;
  background: #fff;
  color: #000;
  outline: none;
  box-sizing: border-box;
}

/* GENDER WRAPPER */
.mc-gender {
  display: flex !important;
  flex-wrap: nowrap !important; /* КЛЮЧ */
  gap: 16px;
  align-items: center;
  width: 100%;
	margin: 10px 0;
}

/* EACH OPTION */
.mc-gender label {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  text-transform: uppercase;
  white-space: nowrap; /* НЕ ЛОМАЕМ СТРОКУ */
  flex: 0 0 auto !important; /* НЕ РАСТИ */
}

/* RADIO FIX */
.mc-gender input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 12px;
  height: 12px;
  border: 1px solid #000;
  background: #fff;
  margin: 0;
  padding: 0;
  flex: 0 0 12px !important; /* НЕ РАСТИ */
  box-sizing: border-box;
}

/* CHECKED STATE */
.mc-gender input[type="radio"]:checked {
  background: #000;
}

/* BUTTON */
.mc-form button {
  padding: 12px 14px;
  font-size: 10px;
  text-transform: uppercase;
  background: #fff;
  color: #000;
  border: 1px solid #000;
  cursor: pointer;
  width: 100%;
}


.trp-language-item { padding: 0 !important}
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Infant:ital,wght@0,300..700;1,300..700&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap'); 

@import url('https://fonts.googleapis.com/css2?family=Antic+Didone&display=swap'); 
#reviews-popup-open { display: none !important;}
.custom-single-product video {
                   /* авто-пропорции */
    object-fit: cover;             /* масштабирование с обрезкой */
    object-position: center center; /* центрирование по горизонтали и вертикали */
    
}
#popup_form input[type="submit"] { background: #A19789 !important}
.woocommerce-account #page { display: flex; flex-direction: column; width: 100%;}
.mc4wp-response { color: #111 !important}
.wc-block-product-template__responsive { margin-left: 0 !important}
.wc-block-product-template h2{ font-size: 18px !important; }
.wc-block-product-template .wp-block-button__link { font-size: 11px !important; text-transform: uppercase; width: 100% !important; border-radius: 5px !important}
.gray { color: #878787 !important}
.e-n-tab-title::before, .e-n-tab-title::after { display: none !important}
html, body {
    overflow-x: hidden;
}
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf { display: none !important}
.custom-single-product img {
    max-width: 100%;
    height: auto;
}
.amount { font-size: 13px;}
.product-columns {
    flex-wrap: wrap;
    width: 100%;
    box-sizing: border-box; /* важно, чтобы padding не добавлялся к ширине */
}
.custom-product-card .add-to-cart { display: none !important}
#popup_form input {text-align: center;}
body {
  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  color: #111;
  background: #F8F8F4; 
	
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4 {
  font-family: "Antic Didone", serif;
  font-weight: 300;
  line-height: 1.2;
  margin: 0.5em 0;
  letter-spacing: 0.5px;
}
h5, h6 {
  font-family: "Inter", sans-serif;
  font-weight: 300;
  line-height: 1.3;
  margin: 0.5em 0;
  letter-spacing: 0.3px;
}

/* Списки */
ul, ol {
  margin: 1em 0 1em 1.5em;
  padding: 0;
}
ul li, ol li {
  margin: 0.5em 0;
}
.cky-consent-container .cky-consent-bar { border-radius: 0 !important}
/* Ссылки */
a {
  color: #111;
  text-decoration: none;
  transition: color 0.3s ease;
}
a:hover {
  color: #14294D;
}



.masonry-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 330px 450px; /* фиксированная высота рядов */
    gap: 2px;
}

/* Позиционирование картинок */
.masonry-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.masonry-wrapper img:nth-child(1) { grid-column: 1 / 2; grid-row: 1 / 3; }
.masonry-wrapper img:nth-child(2) { grid-column: 2 / 3; grid-row: 1 / 2; }
.masonry-wrapper img:nth-child(3) { grid-column: 3 / 4; grid-row: 1 / 2; }
.masonry-wrapper img:nth-child(4) { grid-column: 4 / 5; grid-row: 1 / 3; }
.masonry-wrapper img:nth-child(5) { grid-column: 2 / 3; grid-row: 2 / 3; }
.masonry-wrapper img:nth-child(6) { grid-column: 3 / 4; grid-row: 2 / 3; }

/* Адаптив для мобилок */
@media (max-width: 768px) {
	.related-products h2 { font-size: 15px !important}
    .masonry-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 480px 500px; /* фиксированная высота рядов */
    gap: 2px;
}
    .masonry-wrapper {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
    }
    .masonry-wrapper img {
        grid-column: auto !important;
        grid-row: auto !important;
        height: 330px; /* фиксированная высота для мобилки */
    }
}




/* ========= ФОРМЫ ========= */
input, textarea, select {
  width: 100%;
  padding: 12px 14px;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  font-weight: 400;
 
  color: #111;
  border: 1px solid #ccc;
  border-radius: 0px;
  background: #f9f9f9;
  transition: border-color 0.3s ease, background 0.3s ease;
  box-sizing: border-box;
}

input:focus, textarea:focus, select:focus {
  border-color: #A19789;
  outline: none;
  background: #fff;
}
.gt_selector{ padding: 10px; max-width: 110px;}
textarea {
  resize: vertical;
  min-height: 120px;
}

select {
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23111' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 16px;
  padding-right: 35px;
}

/* ========= КНОПКИ ========= */
button, .btn, input[type="submit"] {
  display: inline-block;
  position: relative;
  overflow: hidden;
  z-index: 1;
  padding: 14px 28px;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 500;
  color: #111;
  background: #A19789;
  border: none;
  border-radius: 0px;
  cursor: pointer;
  transition: color 0.3s ease;
}



.checkout #place_order { color: #111 !important;}
.btn::after,
input[type="submit"]::after, .add-to-cart::after {
    content: '';
    display: block;
    position: absolute;
    top: 7px;         /* отступ сверху, подкорректируй по вкусу */
    right: 7px;       /* отступ справа */
    width: 7px;      /* ширина стрелки */
    height: 7px;     /* высота стрелки */
    background-image: url('/wp-content/uploads/2025/09/arrowbtn.svg');
    background-size: contain;
    background-repeat: no-repeat;
    pointer-events: none;  /* чтобы не мешала клику */
}

/* Чтобы кнопки были родителем для абсолютного позиционирования */
button, .btn, input[type="submit"], .add-to-cart {
    position: relative;
}


/* Псевдоэлемент для hover-эффекта */
button::before, .btn::before, input[type="submit"]::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: #111;
  z-index: -1;
  transition: left 0.4s ease;
}

button:hover::before, .btn:hover::before, input[type="submit"]:hover::before {
  left: 0;
}

button:hover, .btn:hover, input[type="submit"]:hover {
  color: #fff;
}

/* ========= ТАБЛИЦЫ ========= */
table {
  width: 100%;
  border-collapse: collapse;
  margin: 1em 0;
}
table th, table td {
  padding: 12px;
  border: 1px solid #ddd;
  text-align: left;
  font-size: 14px;
}
table th {
  background: #f5f5f5;
  font-weight: 500;
}


/* Body text */
body {
  font-family: "Inter", sans-serif;
  font-weight: 300; /* light */
  font-size: 16px;
  line-height: 1.6;
  color: #111;
  letter-spacing: 0.2px;
}

/* Заголовки */
h1, h2, h3, h4 {
   font-family: "Antic Didone", serif;
  font-weight: 400; /* light */
  line-height: 1.2;
  letter-spacing: 0.5px;
  margin: 0.5em 0;
}

h5, h6 {
  font-family: "Inter", sans-serif;
  font-weight: 300;
  line-height: 1.3;
  letter-spacing: 0.3px;
  margin: 0.5em 0;
}

/* Адаптивные размеры через clamp */
h1 {
  font-size: clamp(24px, 5vw, 55px);
}
h2 {
  font-size: clamp(22px, 4vw, 45px);
}
h3 {
  font-size: clamp(18px, 3vw, 27px);
}
h4 {
  font-size: clamp(18px, 2.5vw, 24px);
}
h5 {
  font-size: clamp(18px, 2.5vw, 25px);
}
h6 {
  font-size: clamp(16px, 2vw, 18px);
}



.saren-checkout { color: #111 !important}
.header--sticked div[data-id="b8ad7fb"]{ background: rgba(255,255,255,.3) !important; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);}
.checkout #top-bar, .header--sticked #top-bar {display: none !important; }
.woocommerce-breadcrumb { text-transform: uppercase; font-size: 10px !important; opacity
    : .7;
}
.saren--woocommerce--mail, .saren--woocommerce--phone { width: 100% !important; }
.cuw-offer-title { background: #8dbd9d !important}
.checkout #menu-header-sex-1, .checkout .menu_header, .checkout .cart_and_account  { display: none !important;}
.variant-select { padding: 10px 20px !important; border-radius: 0px !important }
.woocommerce-additional-fields { margin-top: 20px;}
.woocommerce ul#shipping_method { margin-bottom: 0; display: flex; gap: 15px; margin-top: 10px;}
.woocommerce .saren--checkout--wrapper ul#shipping_method li label { margin: 0;}
.woocommerce-checkout-review-order .checkout-coupon { border: 1px solid #d1d1d14f !important; border-radius: 0px !important}
.woocommerce-checkout-review-order .order-summary>div { border-bottom: 1px solid #d1d1d14f !important;}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { background: #A19789 !important; border-radius: 0px !important; text-transform: uppercase; font-weight: 500 !important; color: #222 !important; width: 100%;}
#payment-method-message, .woocommerce-cart-form__contents { margin-bottom: 30px !important; box-sizing: border-box; }
#add_payment_method .wc-proceed-to-checkout, .woocommerce-cart .wc-proceed-to-checkout, .woocommerce-checkout .wc-proceed-to-checkout { margin-top: 30px;}
p.woocommerce-mini-cart__buttons.buttons a::after { background: #A19789 !important}
.mini--cart--item--title { font-size: 13px; text-transform: uppercase;}
.text-h3 { width: 100% !important; display: block; text-align: left !important;}
.pr_categories, .categories--wall { height: auto !important; max-height: 100% !important; flex-direction: column !important; justify-content: flex-start !important; flex-wrap: nowrap !important}
body .count--style--square .saren--cart--button .cart--count::after, body .count--style--round .saren--cart--button .cart--count::after { width: 1rem !important; height: 1rem !important;}
body .saren--cart--button .cart--count { position: absolute; top: -6px; right: -14px; font-size: 9px !important; text-transform: uppercase; }
.wpcf7-email { color: #222 !important}
.stamp img {
    /* Уменьшаем насыщенность */
    filter: saturate(30%) brightness(95%);
    /* Альтернатива, почти полностью серый: */
    /* filter: grayscale(70%); */
}
.glsr-review-avatar img { border-radius: 0px;}
.glsr-tag-value { display: flex; align-items: center;}
.footer-menu *, .Cormorant, .Cormorant * {  font-family: "Antic Didone", serif !important;}

body .woocommerce-error, body .woocommerce-info, body .woocommerce-message { border-radius: 0px !important; background: #ffffff50 !important; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 9999; font-size: 12px; text-transform: uppercase; padding: 15px 20px; list-style: none;}
.page-numbers.current { background: #fff;}
.nav-links { display: flex; align-items: center; gap: 10px; flex-direction: row; justify-content: center; }
.page-numbers { padding: 3px 8px; border-radius: 0px; background: #f4f4f3;}
.post-thumbnail { margin-bottom: 50px !important}
.entry-meta { opacity: .5 !important;}
h1, h2, h3, h4, h5, h6 { line-height: 115% !important;}
.gender_form input { height: auto !important; width: auto !important}
.mini-cart-empty a { padding: 15px 20px; border-radius: 0px; background: #fff; font-size: 12px; text-transform: uppercase; text-align: center;}
#bwg_load_0 { margin-top: 20px !important;}
.gender_form { font-size: 11px !important; text-transform: uppercase}
#bwg_container1_0 #bwg_container2_0 .tablenav-pages_0 a, #bwg_container1_0 #bwg_container2_0 .tablenav-pages_0 input.bwg_current_page {text-transform: uppercase; font-size: 12px; border-radius: 0px !important; padding: 8px 18px !important; }
.glsr_fbc3382c-terms-1 { font-size: 12px !important; text-transform: uppercase;}
body input, body textarea {  font-size: 14px !important; border-radius: 0px !important}
 input[type="submit"] { font-size: 12px !important; text-transform: uppercase; border-radius: 0px !important}
.horizontal-scroll {
 
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch; /* ключ для инерции на iOS */
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -ms-overflow-style: none; /* скрыть скролл в IE/Edge */
}
.horizontal-scroll::-webkit-scrollbar {
  display: none;
}

.horizontal-scroll > * {
  scroll-snap-align: start;
  flex: 0 0 auto;
}



body .cky-consent-container { width: 270px; }
.cky-consent-container .cky-consent-bar { box-shadow: none !important; padding: 12px !important;}
.cky-title { font-size: 14px !important; line-height: 110% !important; margin: 0 0 10px !important; font-weight: 300 !important; }
.cky-notice-des *, .cky-preference-content-wrapper *, .cky-accordion-header-des *, .cky-gpc-wrapper .cky-gpc-desc * { font-size: 12px !important;  line-height: 110% !important;}
.cky-btn { font-size: 12px !important; padding: 3px !important; border-radius: 0px !important}




.checkout--accordion--title { display: none !important}
#bwg_container1_0 #bwg_container2_0 .bwg_mosaic_thumb_spun_0 {border-radius: 0px !important }

.checkout--accordion--field:has(.woocommerce-shipping-fields), .checkout--accordion--field:has(.woocommerce-billing-fields) { width: 100% !important}
.saren--checkout--wrapper .woocommerce-billing-fields { margin-right: 0 !important}
.checkout-type-simple .checkout--accordion--field { margin-bottom: 0 !important}

#ajax-add-to-cart-popup {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background: #fff;
    color: #000;
    padding: 10px 20px;
    border-radius: 0px;
    z-index: 9999;
    font-size: 12px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
    overflow: visible; /* чтобы крестик был вне попапа */
}

#ajax-add-to-cart-close {
    position: absolute;
    top: -8px;
    right: -8px;
    width: 18px;
    height: 18px;
    background: #000;
    color: #fff;
    border-radius: 50%;
    text-align: center;
    line-height: 18px;
    cursor: pointer;
    font-weight: bold;
    font-size: 12px;
}

.archive .woo-products-archive .saren--products-grid { display: flex !important; flex-wrap: wrap; gap: 5px !important}
.archive .saren--products-grid .saren--single--product {max-width: 24.5% !important;}

.main-navigation ul, .grid--posts--wrapper { gap: 10px !important}
.pw-route-protection.desktop-align-right { justify-content: flex-start !important; margin-bottom: 40px;}
#RouteWidget label { position: relative !important; top: auto; left: auto; transform: none;}
.woocommerce .saren--checkout--wrapper ul#shipping_method li label { display: inline-block !important; width: 100% !important}
.saren--mini--cart .saren-view-cart { display: none !important}
.checkout-button { background: #8DBC9C !important; color: #fff !important; padding: 15px 35px !important; margin-top: 50px !important; box-sizing: border-box; font-weight: 800 !important;}
.cuw-offers, .cuw-offer, .cuw-container { border-radius: 0px !important;}
.cuw-button {background: #5F7265 !important; color: #fff !important; border-radius: 0px !important; text-transform: uppercase; font-weight: 300 !important; font-size: 11px !important}
.cuw-button span {font-weight: 300 !important }
#home_slider .product--image--hover { opacity: 1 !important; }
#home_slider .saren--product--image img { opacity: 0;}

.cky-btn-revisit-wrapper { display: none !important}


@media only screen and (max-width: 550px) {
	
	.order-summary-right .pe-wrapper.saren--checkout--wrapper div.order--col { margin-left: 0 !important}
	.archive .saren--products-grid .saren--single--product {max-width: 100% !important;}
.archive .woo-products-archive .saren--products-grid {columns: 1 !important; gap: 5px !important;}
	
	h1 {font-size: 24px !important}
	span.saren--lightbox--prev, span.saren--lightbox--next {bottom: 100px !important }

/*	.product--image--hover { opacity: 1 !important; }
	.saren--product--image img { opacity: 0;} */
	.single-post .entry-meta, .single-post .has-post-thumbnail .entry-content { width: 100% !important; padding: 0 !important}
	.single-post .entry-meta { opacity: .35;}
	.single-post .has-post-thumbnail .entry-title { font-size: 30px;}
	.single-product .saren--products-grid { display: flex !important; flex-wrap: wrap;}
	/*.saren--single--product { max-width: 48%;}*/
	
	.site-branding>div.mobile-logo { width: 90px !important}
	.woocommerce-products-header__title {font-size: 35px !important}
}

/*.saren-variation-radio-buttons .selected {
	background: #171717 !important; color: #fff !important; text-decoration: none !important;
}*/
.checkout--accordion--field .saren--accordion--button { padding: 17px 35px !important}
.wc_payment_methods li, .saren--accordion--button {
    cursor: pointer;
}
.woocommerce-terms-and-conditions {
    
    
                max-height: 200px !important;
                overflow-y: scroll !important;
                overflow-x: hidden !important;
                box-sizing: border-box !important;
}
.saren--mini--cart .cart_list {
                    max-height: 500px !important;

    
             
                overflow-y: scroll !important;
                overflow-x: hidden !important;
                box-sizing: border-box !important;
}
.woocommerce-terms-and-conditions::-webkit-scrollbar {
    display: block !important;
    background: #eee;
    width: 12px !important;
}
.saren--mini--cart .cart_list::-webkit-scrollbar {
    display: block !important;
    background: #111;
    width: 7px !important;
}

.woocommerce-terms-and-conditions::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 0px;
}
.saren--mini--cart .cart_list::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 0px;
}
.woocommerce-terms-and-conditions h1, .woocommerce-terms-and-conditions h2, .woocommerce-terms-and-conditions h3 {font-size: 30px !important}
.saren--product-quick-action {display: none !important }

body #popup_form input[type="email"] { color: #222 !important; font-size: 10px !important}
.mc-form input[type="email"] {font-size: 10px !important }
#popup_form input[type="checkbox"] { height: auto !important; margin: 0 !important; padding: 0 !important}
#popup_form .mc4wp-checkbox {opacity: 0; position: relative; z-index: -1; margin-top: -35px;}
.mc4wp-checkbox { margin-top: 20px; opacity: .5;}
.wpcf7-submit { cursor: pointer;}
#popup_form .wpcf7-spinner { display: none;}
body .cc-yv368 .cc-1kr6o .cc-18ov6 { bottom: 10px !important; right: 10px !important;}
body .cky-box-bottom-left { left: 10px !important; bottom: 10px !important}
.gender_form {display: flex; flex-direction: row; gap: 15px; align-items: center; }
.gender_form label {display: flex; flex-direction: row; gap: 7px; align-items: center; }

.gender_form p { margin: 0; padding: 0;} 
.mc4wp-success p { color: #536d5a !important}




.custom-products-grid {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap:5px; /* расстояние между карточками */
  padding:0 20px;
}

@media(max-width:1024px){.custom-products-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:768px){.custom-products-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.custom-products-grid{grid-template-columns:1fr;}}

.custom-product-card {
  position: relative;
  min-height:500px;
  overflow:hidden;
  margin:0;
  background:#fff;
  border-radius:0px;
}


.product-slider-wrapper {
  position: relative;
  width:100%;
  height:100%;
}

.product-slider-wrapper img {
  width:100%;
  height:100%;
  object-fit:cover;
  position:absolute;
  top:0;
  left:0;
  transition: opacity 0.3s ease, transform 0.3s ease;
}


.hover-image { opacity:0; z-index:2; }
.custom-product-card:hover .hover-image { opacity:1; }
.add-to-cart {
  position: absolute;
  bottom: 40px;
  left: 10px;
  right: 10px;
  padding: 10px 20px;
  font-size: 12px;
  text-transform: uppercase;
  color: #111;
  background: #fff;
  border-radius: 0px;
  z-index: 10;
  opacity: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
.custom-product-card:hover .add-to-cart {
  opacity: 1;
  bottom: 60px;
}
.add-to-cart::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: #111;
  z-index: -1;
  transition: left 0.4s ease;
}
.add-to-cart:hover::before { left: 0; }
.add-to-cart:hover { color: #fff; }


.product-info {
  position:absolute;
  bottom:10px;
  left:10px;
  right:10px;
  display:flex;
  justify-content:space-between;
  font-size:11px;
  text-transform:uppercase;
  padding:5px 8px;
  border-radius:0px;
  z-index:4;
}

.slider-arrows {
  position:absolute;
  top:10px;
  right:10px;
  display:flex;
  gap:5px;
  z-index:5;
}
.slider-arrows span {
  cursor:pointer;
  font-size:14px;
  padding:2px 6px;
  border-radius:0px;
  transition:background 0.2s;
}
.slider-arrows span:hover { background:rgba(255,255,255,1); }






/* --- Стили cf-popup --- */
.woocommerce-result-count { display: none;}
#cf-clear-all { padding: 5px !important; margin: 10px auto 0; display: block; text-align: center; cursor: pointer;}
.cf-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); backdrop-filter: blur(10px); z-index: 9999; opacity: 0; transition: opacity 0.3s; overflow-y: auto; }
.cf-overlay.active { display: flex; opacity: 1; justify-content: center; align-items: center; }
.cf-panel { max-height: 80vh; overflow-y: auto; overflow: visible; background: #fff; border-radius: 0px; width: 95%; max-width: 470px; padding: 30px; position: relative; box-sizing: border-box; transform: translateY(-30px); transition: transform 0.3s; margin: 0; }
.cf-overlay.active .cf-panel { transform: translateY(0); }

@media (max-width: 768px) { .cf-overlay.active { align-items: flex-start; } .cf-panel { margin-top: 60px; max-height: calc(100% - 80px); } }
.cf-close{position:absolute;top:-10px;right:-10px;font-size:16px !important;color:#fff;background:#000;border:none;border-radius:50%;width:26px !important;height:26px !important;cursor:pointer;text-align:center;line-height:100%;display:flex;justify-content:center;align-items:center;}
.cf-btn{padding:8px 16px;background:#fff;color:#111;border:none;border-radius:0px;cursor:pointer;font-weight:600;font-size:12px;text-transform:uppercase;}
.cf-tabs{margin:20px 0 40px;}
.cf-tab-label{display:inline-block;padding:6px 12px;margin-right:4px;background:#eee;border-radius:0px 0px 0 0;cursor:pointer;font-weight:400;font-size:12px;text-transform:uppercase;color:#111;}
.cf-tab-label.active{background:#F8F8F4;border-bottom:1px solid #fff;font-weight:500;color:#111;}
.cf-tab-content{display:none;border-top:none;padding:10px;border-radius:0 0 0px 0px;background:#F8F8F4;}
.cf-subcats{list-style:none;padding-left:0;display:flex;flex-direction:column;gap:5px; padding: 0; margin: 0;}
.cf-subcats li{margin-bottom:5px;padding:10px 20px;border-radius:0px;background:#fff;display:flex;justify-content:flex-start;align-items:center;width:100%; box-sizing: border-box; margin: 0;}
.cf-subcats li label{font-size:12px;text-transform:uppercase;display:flex;align-items:center;flex-direction:row;gap:3px;}
.cf-price-inputs{margin-top:20px;display:flex;justify-content:space-between;align-items:center;}
.cf-price-inputs input{width:45%;padding:4px;box-sizing:border-box;min-height:45px;padding:10px 20px;text-align:center; background: #F8F8F4;}
#cf-price-slider{margin:15px 0;padding:0 10px;}
.noUi-target{background:#eee;border-radius:0px;}
.noUi-connect{background:#eeeeee !important;}
.noUi-tooltip{font-size:8px;padding:0 6px !important;}
.noUi-handle:after,.noUi-handle:before{display:none !important;padding:5px !important;}
.noUi-horizontal .noUi-handle{width:20px !important;height:20px !important;border-radius:50%;background:#000;top:-6px;}
.cf-apply-btn{background:#152336 !important;border-radius:0px !important;text-transform:uppercase;margin-top:15px;width:100%;font-size:12px;padding:15px 30px !important;transition:all ease .4s;cursor:pointer; box-sizing: border-box; color: #fff; text-align: center;}
.cf-apply-btn:hover{background:#222 !important;}
	body .noUi-horizontal{height:10px !important; box-shadow:none !important;}
body .noUi-handle{box-shadow:none !important;}




.custom-products-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 0;
    margin: 0;
    list-style: none;
    align-items: stretch; /* растягиваем все li по высоте строки */
}

.custom-products-grid li {
    flex: 0 0 calc(25% - 5px); /* 5 элементов в ряд с учетом gap */
    box-sizing: border-box;
    display: flex;            /* чтобы вложенные элементы можно было растянуть */
    flex-direction: column;   /* контент внутри идет вертикально */
}



/* Галерея */
.custom-swiper {
  width: 100%;
  padding-bottom: 10px;
}
.reviews-button-popup img { height: 18px;}
.product-title-price .title { max-width: 80%;}
.lightbox-trigger { font-weight: 300 !important}
.custom-swiper .swiper-slide {
	margin-right: 5px !important;
  width: auto;
  max-height: 85vh;
  border-radius: 0px;
  overflow: hidden;
}
.custom-swiper img {
  height: 50vh;
  object-fit: contain;
  display: block;
}

/* Аккордеон */
.custom-tabs {
  border-top: 1px solid rgba(0,0,0,0.1);
}
.tab-item {
  border-bottom: 1px solid rgba(0,0,0,0.1);
}
.tab-title {
  padding: 12px 0;
  font-size: 16px;
  display: flex;
  justify-content: space-between;
  cursor: pointer;
}
.tab-title .icon {
  font-weight: bold;
}
.tab-content {
  display: none;
  padding: 10px 0 15px;
  font-size: 14px;
}

/* Related products */
.related-products {
  margin-top: 30px;
	padding: 20px;
}
.related-products .products-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.related-products .products-grid li {
  flex: 1 1 calc(20% - 5px);
  box-sizing: border-box;
}
@media(max-width:900px){
  .related-products .products-grid li { flex:1 1 calc(33.333% - 10px); }
}



.add-to-cart-wrapper {
    display: flex !important;
    align-items: stretch;
    gap: 0 !important;
    margin-top: 15px;
}

.quantity-selector {
	max-width: 130px;
    display: flex;
    align-items: stretch;
    background: #000;
    color: #fff;
    border-radius: 0px;
    overflow: hidden;
}
.swiper-button-next:after, .swiper-button-prev:after { font-size: 13px !important;}
.quantity-selector input,
.quantity-selector button {
    height: 45px; /* общая высота */
    border: none;
    margin: 0;
    padding: 0 12px;
    background: #000;
    color: #fff;
    text-align: center;
    font-size: 16px;
    appearance: none; /* прячем стрелки браузера */
}

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

.quantity-selector input:focus {
    outline: none;
}

.qty-decrease,
.qty-increase {
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 40px;
}

.custom-add-to-cart {
	min-height: 45px;
    flex: 1; /* занимает оставшееся место */
    background: #8DBC9C;
    color: #111;
    border: none;
    border-radius: 0 !important;
    cursor: pointer;
    font-size: 12px;
    padding: 0 20px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    transition: background 0.3s;
}

.custom-add-to-cart:hover {
    background: #7ca88b;  color: #fff; 
}

/* Убираем псевдоэлементы темы для quantity */
.quantity-selector button::before,
.quantity-selector button::after {
    content: none !important;
}


#vegan { max-width: 110px; }
.product-columns { justify-content: space-between; }
.tab-content h2 { display: none;}
.product-left { margin-top: -100px; position: relative; z-index: 1;  max-height: 650px; width: 35%; max-width: 35%; margin-left: 10%; flex: 0 0 35%}
.swiper { z-index: 0; position: relative;}
.free-shipping { margin-top: 50px !important;}
.add-to-cart-wrapper { margin-top: 70px !important;}

#vegan {display: none; }
.product-cat-skincare #vegan {display: block; }
.readreviews { font-size: 12px; }
.readreviews img { max-height: 15px;}
.product-left .woocommerce-breadcrumb { opacity: 0;}
.product-right { margin-top: 30px;}





body * { box-sizing: border-box;}



.woocommerce-message {
    background: #e0f7e9;
    color: #1a7f37;
}

.woocommerce-error {
    background: #fdecea;
    color: #c0392b;
}

.woocommerce-info {
    background: #f4f4f4;
    color: #333;
}
/* Основной контейнер */
.custom-cart-page {
    width: 100%;
    padding: 0 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

/* Пустая корзина центр */
.custom-empty-cart {
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: #fff;
}
.single-product #crisp-chatbox-button { display: none !important;}
/* Карточки и правая колонка */
.cart-left,
.cart-right {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.cart-left .cart-item {
    display: flex;
    background: #fff;
    border-radius: 0px;
    padding: 10px;
    position: relative;
}

#coupon-form input[type="text"] {border-radius: 4px 0 0 4px !important; background: #fff;}
#coupon-form button { background: transparent; border: 1px solid #ccc; border-radius: 0px; border-left: 0 !important}
#floating-variation-select { max-width: 200px;}
#floating-bar { justify-content: center !important}
#floating-bar input, #floating-bar select { border-radius: 0 !important}
.added_to_cart { padding: 10px 20px;}
/* Адаптив для телефонов */
@media (max-width: 768px) {
	#floating-variation-select, #floating-add-to-cart { width: 50% !important;}
	.added_to_cart { display: none;}
	#floating-bar { justify-content: center !important; flex-direction: row !important; flex-wrap: nowrap !important;}
	.related-products h2 { font-size: 16px;}
	.custom-swiper .swiper-slide { margin-right: 0 !important}
	.wp-video, .swiper-slide { width: 100% !important; box-sizing: border-box;}
    .custom-cart-page {
        padding: 0 10px;
        flex-direction: column;
        gap: 15px;
    }

    .cart-left,
    .cart-right {
        flex: 1 1 100%;
    }

    .cart-left .cart-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .cart-left .item-image {
        flex: 1 1 100%;
        height: auto;
        margin-right: 0;
        margin-bottom: 10px;
    }

    .cart-left .item-details {
        flex: 1 1 100%;
        justify-content: center;
    }

    .item-quantity {
        justify-content: center;
    }

    .cart-right {
        width: 100%;
        padding: 15px;
    }
}

/* Основная стилизация чекбокса с текстом */
.woocommerce-form__label.checkbox {
    display: flex;
    align-items: flex-start; /* выравниваем по верхнему краю, можно center если нужно */
    gap: 10px; /* расстояние между чекбоксом и текстом */
    font-size: 14px;
    line-height: 1.4;
    color: #111; /* цвет текста */
}

.woocommerce-form__input-checkbox {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin: 0;
    cursor: pointer;
    accent-color: #111; /* цвет галочки для современных браузеров */
}
.custom-filters-bar { display: flex !important; justify-content: space-between; align-items: bottom; margin-bottom: 20px !important;}
.woocommerce-terms-and-conditions-checkbox-text {
    display: inline-block;
    color: #111; /* цвет текста */
}

.woocommerce-terms-and-conditions-link {
    color: #0071a1; /* цвет ссылки */
    text-decoration: underline;
}

/* Адаптив для мобильных: немного увеличиваем чекбокс и делаем текст удобочитаемым */
@media (max-width:768px){
    .woocommerce-form__label.checkbox {
        font-size: 16px;
        gap: 12px;
    }
    .woocommerce-form__input-checkbox {
        width: 20px;
        height: 20px;
    }
}
.headerimg, .headerimg a { width: 100%; }
.carlstone-subcategories { padding: 0; margin: 0; list-style: none; font-size; 12px !important; }
.carlstone-subcategories li a { text-transform: uppercase; font-size; 12px !important; }
#menu { display: none;}
/* Single Post Styles - Carlstone Premium */

/* Основной контейнер */
.single-post .site-main {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    color: #000;
}

/* Featured image с радиусом */
.single-post .site-main img {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
    border-radius: 0px;
    margin-bottom: 20px;
}

/* Дата/мета поста с полупрозрачным фоном */
.single-post .post-meta {
    display: inline-block;
    background: rgba(0, 0, 0, 0.05);
    padding: 4px 8px;
    border-radius: 0px;
    font-size: 12px;
    text-transform: uppercase;
    color: #555;
    margin-bottom: 20px;
}

/* Контент поста */
.single-post .site-main .entry-content {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 40px;
}

/* Навигация prev/next */
.single-post .post-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    font-size: 12px;
    text-transform: uppercase;
    color: #555;
}

.single-post .post-navigation a {
    text-decoration: none;
    color: #555;
}

/* Комментарии */
.single-post .comments-area {
    margin-top: 60px;
}

/* Мобильная адаптация */
@media (max-width: 768px) {
    .single-post .site-main {
        padding: 10px;
    }
    .single-post .post-navigation {
        flex-direction: column;
        gap: 10px;
    }
}
.woocommerce-checkout .hide_for_checkout { display: none !important;}
.account-menu-toggle, .account-login-link, .cart-label, #button_menu { text-transform: uppercase; font-size: 12px !important; font-weight: 300 !important; font-family: "Inter", sans-serif !important;}
.woocommerce-checkout #button_menu > h2 { text-align; right !important;  }
.cart-toggle {margin-bottom: 5px;}

/* ===============================
   WooCommerce My Account Styles
   =============================== */

/* Основной контейнер */
.woocommerce-account {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* между навигацией и контентом */
    
    background-color: #f9f9f9;
    color: #000;
    
}
.toggle-form { font-weight: 300;}
/* Левая колонка - табы */
.woocommerce-MyAccount-navigation {
    flex: 0 0 220px;
    background-color: #fff;
    border-radius: 0px;
    padding: 20px;
    
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.woocommerce-MyAccount-navigation li {
    margin-bottom: 10px;
}

.woocommerce-MyAccount-navigation a {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    color: #000;
    border-radius: 0px;
    transition: all 0.3s ease;
    font-weight: 500;
}

.woocommerce-MyAccount-navigation a:hover,
.woocommerce-MyAccount-navigation a:focus {
    background-color: #f0f0f0;
}

.woocommerce-MyAccount-navigation .is-active a {
    background-color: #000;
    color: #fff;
}

/* Правая колонка - контент */
.woocommerce-MyAccount-content {
    flex: 1;
    background-color: #fff;
    border-radius: 0px;
    padding: 25px;
    
    min-width: 300px;
}

/* Контентные блоки */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-weight: 600;
}

.woocommerce-MyAccount-content p {
    margin-bottom: 15px;
    line-height: 1.6;
}

/* Формы */
.woocommerce-MyAccount-content form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.woocommerce-MyAccount-content input,
.woocommerce-MyAccount-content select,
.woocommerce-MyAccount-content textarea {
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 0px;
    font-size: 14px;
    width: 100%;
    background-color: #fff;
    transition: border-color 0.2s ease;
}

.woocommerce-MyAccount-content input:focus,
.woocommerce-MyAccount-content select:focus,
.woocommerce-MyAccount-content textarea:focus {
    border-color: #000;
    outline: none;
}

/* Кнопки */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 0px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s ease;
    display: inline-block;
}

.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content button:hover {
    background-color: #333;
}

/* Таблицы заказов */
.woocommerce-MyAccount-content table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.woocommerce-MyAccount-content th,
.woocommerce-MyAccount-content td {
    text-align: left;
    padding: 10px;
    border-bottom: 1px solid #eee;
}

/* ===============================
   Адаптивная логика
   =============================== */
@media (max-width: 768px) {
    .woocommerce-account {
        flex-direction: column;
        padding: 10px;
        gap: 10px;
    }

    /* Навигация горизонтально сверху */
    .woocommerce-MyAccount-navigation {
        flex: 1 1 100%;
        padding: 10px 0;
        background-color: transparent;
        box-shadow: none;
        border-radius: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .woocommerce-MyAccount-navigation ul {
        display: flex;
        gap: 10px;
        padding: 0 10px;
    }

    .woocommerce-MyAccount-navigation li {
        margin-bottom: 0;
    }

    .woocommerce-MyAccount-navigation a {
        white-space: nowrap;
        padding: 8px 12px;
        background-color: #fff;
        box-shadow: 0 1px 3px rgba(0,0,0,0.05);
        border-radius: 0px;
    }

    .woocommerce-MyAccount-navigation .is-active a {
        background-color: #000;
        color: #fff;
    }

    /* Контент под навигацией */
    .woocommerce-MyAccount-content {
        flex: 1 1 100%;
        padding: 15px 10px;
    }
}
/* Применяем стили только для страниц аккаунта */
body.my-account-page .entry-content .woocommerce {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 20px;
    background-color: #f9f9f9;
    color: #000;
    font-family: "Arial", sans-serif;
}

/* Левая колонка - табы */
body.my-account-page .entry-content .woocommerce-MyAccount-navigation {
    flex: 0 0 220px;
    background-color: #fff;
    border-radius: 0px;
    padding: 20px;
    
}

/* Правая колонка - контент */
body.my-account-page .entry-content .woocommerce-MyAccount-content {
    flex: 1;
    background-color: #fff;
    border-radius: 0px;
    padding: 25px;
    max-width: 100% !important;
    min-width: 300px;
}

/* Контентные блоки */
body.my-account-page .entry-content .woocommerce-MyAccount-content h2,
body.my-account-page .entry-content .woocommerce-MyAccount-content h3 {
    margin-top: 0;
    margin-bottom: 15px;
    font-weight: 600;
}

body.my-account-page .entry-content .woocommerce-MyAccount-content p {
    margin-bottom: 15px;
    line-height: 1.6;
}

/* Формы */
body.my-account-page .entry-content .woocommerce-MyAccount-content form {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

body.my-account-page .entry-content .woocommerce-MyAccount-content input,
body.my-account-page .entry-content .woocommerce-MyAccount-content select,
body.my-account-page .entry-content .woocommerce-MyAccount-content textarea {
    padding: 10px 12px;
    border: 1px solid #ddd;
    border-radius: 0px;
    font-size: 14px;
    width: 100%;
    background-color: #fff;
    transition: border-color 0.2s ease;
}

body.my-account-page .entry-content .woocommerce-MyAccount-content input:focus,
body.my-account-page .entry-content .woocommerce-MyAccount-content select:focus,
body.my-account-page .entry-content .woocommerce-MyAccount-content textarea:focus {
    border-color: #000;
    outline: none;
}

/* Кнопки */
body.my-account-page .entry-content .woocommerce-MyAccount-content .button,
body.my-account-page .entry-content .woocommerce-MyAccount-content button {
    background-color: #000;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 0px;
    cursor: pointer;
    font-weight: 600;
    transition: all 0.3s ease;
    display: inline-block;
}

body.my-account-page .entry-content .woocommerce-MyAccount-content .button:hover,
body.my-account-page .entry-content .woocommerce-MyAccount-content button:hover {
    background-color: #333;
}

/* Таблицы заказов */
body.my-account-page .entry-content .woocommerce-MyAccount-content table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

body.my-account-page .entry-content .woocommerce-MyAccount-content th,
body.my-account-page .entry-content .woocommerce-MyAccount-content td {
    text-align: left;
    padding: 10px;
    border-bottom: 1px solid #eee;
}

/* =========================
   Адаптив для мобилок
   ========================= */
@media (max-width: 768px) {
    body.my-account-page .entry-content .woocommerce {
        flex-direction: column;
        gap: 10px;
        padding: 10px;
    }

    /* Навигация горизонтально сверху с скроллом */
    body.my-account-page .entry-content .woocommerce-MyAccount-navigation {
        flex: 1 1 100%;
        padding: 10px 0;
        background-color: transparent;
        box-shadow: none !important;
        border-radius: 0;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-width: 100%;
    }

    body.my-account-page .entry-content .woocommerce-MyAccount-navigation ul {
        display: flex;
        gap: 10px;
        padding: 0 10px;
        max-width: 100%;
    }

    body.my-account-page .entry-content .woocommerce-MyAccount-navigation li {
        margin-bottom: 0;
        flex: 0 0 auto;
    }

    body.my-account-page .entry-content .woocommerce-MyAccount-navigation a {
        white-space: nowrap;
        padding: 8px 12px;
        background-color: #fff;
        box-shadow: 0 1px 3px rgba(0,0,0,0.05);
        border-radius: 0px;
        flex: 0 0 auto;
    }

    body.my-account-page .entry-content .woocommerce-MyAccount-navigation .is-active a {
        background-color: #000;
        color: #fff;
    }

    /* Контент под навигацией */
    body.my-account-page .entry-content .woocommerce-MyAccount-content {
        flex: 1 1 100%;
        padding: 15px 10px;
    }
}
.disclamer * { font-size: 13px !important}
.return-to-shop a { padding: 15px 20px; border-radius: 0px; background: #fff; font-size: 12px; text-transform: uppercase; display: block; margin: 20vh auto; width: auto; max-width: 200px; text-align: center;}
.ywgc_have_code .woocommerce-error,
.ywgc_have_code .woocommerce-info,
.ywgc_have_code .woocommerce-message {
    position: fixed !important;
    padding: 15px 20px !important;
    bottom: 10px !important;
    left: 50%;
    transform: translateX(-50%);
    max-width: 90%;
	width: 500px;
    z-index: 9999;
}
.checkout-right h2 { font-size: 13px; text-transform: uppercase; opacity: .5;   font-family: "Inter", sans-serif;}
.checkout-item { padding: 15px; border: 1px solid #ffffff20; border-radius: 0px;}
.checkout-item img {border-radius: 0px; }
.checkout-totals p { font-size: 12px; text-transform: uppercase; border-bottom: 1px solid #ffffff20; padding: 0 0 12px ;}
.item-left { font-size: 12px; text-transform: uppercase; }
.custom-checkout-page {
    display:flex;
    gap:20px;
   
}

/* Левая колонка — растягивается по контенту, без внутреннего скролла */
.checkout-left {
    flex:1 1 60%;
}

/* Правая колонка фикс */
.checkout-right {
    flex:0 0 35%;
	width: 35vw;
    background:#111;
    color:#fff;
    border-radius:0px;
    padding:20px;
    position:fixed;
    top:120px;
    right:20px;
    bottom:20px;
    display:flex;
    flex-direction:column;
    gap:20px;
    overflow-y:auto;
}

/* ---------- WC Checkout: Floating labels / custom wrapper ---------- */
/* Scope to checkout page to reduce side effects */
.woocommerce-checkout .wc-custom-field {
  margin-bottom: 1rem;
  position: relative;
  clear: both;
}

/* Control holds input/select/textarea + label */
.woocommerce-checkout .wc-custom-field__control {
  position: relative;
}

/* Inputs, selects, textarea */
.woocommerce-checkout .wc-custom-field__control input.wc-custom-input,
.woocommerce-checkout .wc-custom-field__control textarea.wc-custom-input,
.woocommerce-checkout .wc-custom-field__control select.wc-custom-input {
  box-sizing: border-box;
  width: 100%;
  height: 50px;                /* required height */
  padding: 25px 14px 12px;     /* top enough space so label can sit */
  border-radius: 0px;
  border: 1px solid rgba(0,0,0,0.12);
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease;
  font-size: 14px;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.variant-select { height: auto !important}
.select2-container--default .select2-selection--single { padding: 10px; min-height: 50px; font-size: 12px; text-transform: uppercase;}
.select2-search__field { height: 40px; padding: 12px 20px;}
.select2-selection__arrow { top: 12px !important; right: 12px !important}
#billing_country_field label { text-transform: uppercase; font-size: 12px; opacity: .6;}
/* Textarea needs different height behavior */
.woocommerce-checkout .wc-custom-field__control textarea.wc-custom-input {
  height: auto;
  min-height: 100px;
  padding: 20px 14px 12px;
}

/* Remove native select arrow conflict by keeping appearance but leave styling minimal */
.woocommerce-checkout .wc-custom-field__control select.wc-custom-input {
  padding-right: 36px; /* make space for arrow */
}

/* Floating label */
.woocommerce-checkout .wc-custom-field__label {
  position: absolute;
  left: 12px;
  top: 50%;
	text-transform: uppercase;
  transform: translateY(-50%);
  pointer-events: none;
  font-size: 12px;
  opacity: 0.65;
  transition: transform .18s ease, top .18s ease, color .18s ease, opacity .18s ease, font-size .18s ease;
  color: rgba(0,0,0,0.6);
  background: transparent;
  padding: 0 4px;
  line-height: 1;
}
.checkout-left { padding: 20px;}
/* When field focused or has value -> lift label up */
.woocommerce-checkout .wc-custom-field.focus .wc-custom-field__label,
.woocommerce-checkout .wc-custom-field.filled .wc-custom-field__label,
.woocommerce-checkout .wc-custom-field input:focus + .wc-custom-field__label,
.woocommerce-checkout .wc-custom-field textarea:focus + .wc-custom-field__label,
.woocommerce-checkout .wc-custom-field select:focus + .wc-custom-field__label {
  top: 6px;
  transform: none;
  
  font-size: 10px;
  
}

/* Focused input border */
.woocommerce-checkout .wc-custom-field.focus .wc-custom-field__control input.wc-custom-input,
.woocommerce-checkout .wc-custom-field.focus .wc-custom-field__control textarea.wc-custom-input,
.woocommerce-checkout .wc-custom-field.focus .wc-custom-field__control select.wc-custom-input,
.woocommerce-checkout .wc-custom-field input:focus,
.woocommerce-checkout .wc-custom-field textarea:focus,
.woocommerce-checkout .wc-custom-field select:focus {
  border-color: rgba(13,110,253,0.8);
  box-shadow: 0 0 0 3px rgba(13,110,253,0.06);
}

/* Error state (server-side detection adds 'woocommerce-invalid' to wrapper in our PHP) */
.woocommerce-checkout .wc-custom-field.woocommerce-invalid .wc-custom-field__control input.wc-custom-input,
.woocommerce-checkout .wc-custom-field.woocommerce-invalid .wc-custom-field__control textarea.wc-custom-input,
.woocommerce-checkout .wc-custom-field.woocommerce-invalid .wc-custom-field__control select.wc-custom-input {
  border-color: #d32f2f;
  box-shadow: 0 0 0 3px rgba(211,47,47,0.06);
}

/* Error label color */
.woocommerce-checkout .wc-custom-field.woocommerce-invalid .wc-custom-field__label {
  color: #d32f2f;
  opacity: 1;
}

/* Description under field */
.woocommerce-checkout .wc-field-description {
  margin-top: 6px;
  font-size: 12px;
  color: rgba(0,0,0,0.6);
}

/* Required asterisk small */
.woocommerce-checkout .wc-required-asterisk {
  display: inline-block;
  margin-left: 4px;
  color: #d32f2f;
  font-weight: 600;
  font-size: 11px;
}

/* Keep layout compatibility with WooCommerce form-row classes */
.woocommerce-checkout .form-row {
  width: 100%;
}
/* Стили блока выбора доставки */
.shipping-methods-block ul.woocommerce-shipping-methods {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 10px;
}

.shipping-methods-block ul.woocommerce-shipping-methods li {
    position: relative;
}

.shipping-methods-block ul.woocommerce-shipping-methods input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.shipping-methods-block ul.woocommerce-shipping-methods label {
    display: block;
    border: 1px solid #ddd;
    border-radius: 0px;
    padding: 12px 15px;
    cursor: pointer;
    background: #fff;
    transition: all 0.2s ease;
}

/* Активный метод доставки */
.shipping-methods-block ul.woocommerce-shipping-methods input[type="radio"]:checked + label {
    border-color: #000;
    background: #fafafa;
    font-weight: 600;
}

/* If your theme uses floating grid classes like .form-row-first / last — preserve them */

.woocommerce-checkout .checkout_coupon p { margin-right: 0 !important;}
.woocommerce-checkout .form-row-first { float: left; width: 48%; margin-right: 4%; box-sizing: border-box; }
.woocommerce-checkout .form-row-last  { float: right; width: 48%; box-sizing: border-box; }

/* Clean up when screen is small */
@media (max-width: 600px) {
	.single-product .custom-product-card {min-height: 450px !important}
	. related-products h2 { font-size: 16px !important}
	.custom-product-card .add-to-cart {display: none !important }
	.slider-arrows span { font-size: 10px;}
	.custom-products-grid li {
		flex: 0 0 calc(50% - 5px) !important;}
  .woocommerce-checkout .form-row-first,
  .woocommerce-checkout .form-row-last { float: none; width: 100%; margin: 0 0 1rem 0; }
}

/* Accessibility: ensure label text remains readable on high-contrast */
.woocommerce-checkout .wc-custom-field__label { color: rgba(0,0,0,0.7); }

/* Prevent interfering with other elements (scoped to .woocommerce-checkout) */


.related-products h2 { font-size: 24px;}
/* Стили товаров */
.checkout-items { display:flex; flex-direction:column; gap:10px; }
.checkout-item { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.item-left { display:flex; align-items:center; gap:10px; }

/* Купон */
#checkout-coupon-form { display:flex !important; gap: 0px; margin-top:10px; }
#checkout-coupon-form input { height: 45px; flex:1; padding:10px; border-radius: 0px !important; border:none; background: transparent; border: 1px solid #ffffff30; color: #fff; border-right: none !important}
#checkout-coupon-form button { height: 45px; border-radius: 0px; color:#fff; background: transparent; border: 1px solid #ffffff30; border-left: none !important}
.custom-checkout-page h3 { display: none;}
/* Totals */
.checkout-totals { display:flex; flex-direction:column; gap:5px; margin-top:10px; font-size:16px; }

/* Фикс уведомлений снизу */
#wc-notices-container {
    position:fixed;
    bottom:20px;
    left:50%;
    transform:translateX(-50%);
    z-index:9999;
}
#wc-notices-container .woocommerce-message,
#wc-notices-container .woocommerce-error {
    margin-bottom:10px;
    padding:10px 20px;
    border-radius:0px;
    min-width:300px;
}
.woocommerce-message { background:#1e7e34; color:#fff; }
.woocommerce-error { background:#c82333; color:#fff; }
.close { cursor:pointer; float:right; font-weight:bold; }

@media (max-width:768px){
	#primary { max-width: 100%; }
	.checkout-right {
		width: 100%; position: relative;} 
    .custom-checkout-page { flex-direction:column; padding:0 10px; }
    .checkout-left, .checkout-right {
        flex:1 1 100%;
        width:100%;
        position:relative;
        top:auto;
        right:auto;
        bottom:auto;
    }
}
	

.item-quantity input[type=number], .qty {
	padding: 5px; text-align: center;  background: transparent; border: none !important;} 
/* Chrome, Safari, Edge */
.item-quantity input[type=number]::-webkit-outer-spin-button,
.item-quantity input[type=number]::-webkit-inner-spin-button, 
.qty::-webkit-inner-spin-button,
qty::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0; 
}

/* Firefox */
.item-quantity input[type=number], 
.qty{
    -moz-appearance: textfield;
}

    /* Попап фон */
    #reviews-popup {
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0,0,0,0.65);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
        backdrop-filter: blur(8px); 
        -webkit-backdrop-filter: blur(8px);
    }
    #reviews-popup.show {
        opacity: 1;
        pointer-events: auto;
    }

    /* Контент попапа */
    .popup-content {
    background: #fff;
    padding: 20px;
    max-width: 500px;
    width: 90%;
    max-height: 80vh;
    border-radius: 0px;
    position: relative;
    overflow: visible; /* важно, чтобы кнопка не обрезалась */
    display: flex;
    flex-direction: column;
}

#reviews-popup-close {
    position: absolute;
    top: -15px;
    right: -15px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    font-size: 14px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    z-index: 99999; /* чтобы всегда быть поверх всего */
}

    /* Плавающая кнопка справа по центру */
    #reviews-popup-open {
		max-width: 85px;
        position: fixed;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        padding: 12px 6px;
        background: #000;
        color: #fff;
        border-radius: 0px;
        cursor: pointer;
        z-index: 9999;
        writing-mode: vertical-rl;
        text-orientation: mixed;
        font-size: 12px;
        text-transform: uppercase;
    }
		form.glsr-form .glsr-star-rating--stars[class*=" s"]>span { font-size: 14px;}
		.glsr-toggle label { font-size: 12px; text-transform: uppercase;}
    /* Tabs */
    .reviews-tabs { display: flex; margin-bottom: 20px; border-bottom: 1px solid #ddd;  font-size: 15px; text-transform: uppercase;}
    .reviews-tab { flex: 1; padding: 8px 0; text-align: center; cursor: pointer; font-weight: bold; font-size: 13px; }
    .reviews-tab.active { border-bottom: 1px solid #000; }
.tab-title { text-transform: uppercase !important; font-size: 12px;}
    /* Контент табов с внутренним скроллом */
    .reviews-tab-content {
        display: none;
        overflow-y: auto; /* вертикальный скролл */
        max-height: calc(80vh - 80px); /* вычитаем место под табы и паддинги */
    }
    .reviews-tab-content.active { display: block; }

    /* Кастомные скроллы */
    .reviews-tab-content::-webkit-scrollbar { width: 6px; }
    .reviews-tab-content::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.3); border-radius: 0px; }
		#reviews-popup .glsr-review-date { display: none; }
		#reviews-popup * { text-align: left !important}
		.glsr-review-title h4 { display: none; }
		.glsr-review-author span { text-transform: uppercase; font-size: 13px; color: #00000050;}
		.glsr-review-avatar img { width: 25px !important; height: 25px !important; border-radius: 0px !important}
		.glsr-review { padding: 35px 15px; background: #fff; border-radius: 0px;}
		#reviews-popup .glsr-reviews, #reviews-popup .glsr-reviews-wrap { gap: 5px !important;}
		#reviews-popup .glsr-stars { font-size: 11px; }
		.glsr-label { margin-bottom: 10px !important; text-transform: uppercase; font-size: 12px;}
		#reviews-popup .glsr-button { width: 100% !important; border-radius: 0px !important; text-transform: uppercase !important; font-size: 13px !important; background: #516357 !important; text-align: center !important;  padding: 17px 25px; justify-content: center;}
		#reviews-popup .wp-block-button { width: 100%; }
		#reviews-popup .glsr-form input, #reviews-popup .glsr-form textarea { border-radius: 0px;}
  
.orderby { width: 160px;}
.cf-btn, .reviews-tab { font-weight: 300 !important;}
.logo_popup { display: block; margin: 20px auto 40px; max-width: 90px;}
.custom-cart-page { padding: 40px 20px !important;}
.woocommerce-form-coupon-toggle { display: none;}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order:hover { color: #fff !important;}
.popup-text h3 { margin: 0;}

    /* Попап фон */
    #welcome-popup {
        position: fixed;
        top: 0; left: 0;
        width: 100%; height: 100%;
        background: rgba(0,0,0,0.65);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.3s ease;
		backdrop-filter: blur(8px); 
		-webkit-backdrop-filter: blur(8px);
		
    }

    #welcome-popup.show {
        opacity: 1;
        pointer-events: auto;
    }
		.popup-content .wpcf7-email {border-color: #2d3830 !important }
    #welcome-popup .popup-content {
        background: #F4F2EE;
		/* background-image: url('https://carlstoneofficial.com/wp-content/uploads/2025/08/aW1hZ2U9L2dhbGxlcnktcGhvdG9zL1ZHS1V6T01DY2Q2TS1vSTByaE1xSWdNT3lyTWpoaEFXLmpwZyZ3aWR0aD01ODY-min.jpg') !important; */ 
		background-size: cover !important; background-repeat: no-repeat !important;
        padding: 30px;
        max-width: 400px;
        width: 90%;
        border-radius: 0px;
        text-align: center;
        position: relative;
    }

    /* Кнопка закрытия */
    #popup-close {
        position: absolute;
        top: -15px;
        right: -15px;
        background: #000;
        color: #fff;
        border: none;
        border-radius: 50%;
        width: 30px;
        height: 30px;
        font-size: 14px;
        line-height: 1;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    /* Плавающая кнопка */
    #popup-open {
        display: none;
        position: fixed;
        bottom: 10px;
        left: 10px;
        padding: 6px 12px;
        background: #000;
        color: #fff;
        border-radius: 0px;
        cursor: pointer;
        z-index: 9999;
        text-align: center;
		font-size: 11px;
		text-transform: uppercase;
    }
		.popup-text { margin-bottom: 20px;}
    .popup-text h3 {
        font-size: 35px !important;
        line-height: 110% !important; text-transform: uppercase;
    }
		 .popup-text span {font-size: 14px; text-transform: uppercase;  line-height: 20px; opacity: .6; }
    .popup-content p.popup_description {
        opacity: 0.6; font-size: 14px; margin-bottom: 0;
    }
.cf-panel h3 { font-size: 14px !important; opacity: .6; text-transform: uppercase;}
.shop-title { opacity: .3; font-weight: 300; font-size: 22px;}
 .premium-cart-wrapper {
            position: relative;
            display: inline-block;
        }

        .cart-toggle {
            cursor: pointer;
            text-align: center;
        }

        .cart-label {
            font-weight: 700;
            font-size: 14px;
            display: block;
        }

        .cart-subtext {
            font-size: 12px;
            color: #777;
            display: block;
        }

        .cart-overlay {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.4);
            backdrop-filter: blur(10px);
            opacity: 0;
            visibility: hidden;
            transition: all .3s ease;
            z-index: 999;
        }

        .cart-popup {
            position: fixed;
            top: 20px;
            right: 20px;
            background: #f1f1f1;
            padding: 40px 20px;
            border-radius: 0px;
            width: 40vw;
            max-width: 90%;
			max-height: 90vh;
			overflow: auto;
            z-index: 9999999;
            opacity: 0;
            visibility: hidden;
            transform: scale(0.95);
            transition: all .3s ease;
            box-shadow: 0 10px 30px rgba(0,0,0,0.2);
        }

        .cart-popup .cart-close {
            position: absolute;
            top: 10px;
            right: 12px;
			padding: 5px !important; display: flex; align-items: center; justify-content: center; 
			height: 30px; width: 30px;
            background: none;
            border: none;
            font-size: 18px;
            cursor: pointer;
        }

        .cart-open .cart-overlay,
        .cart-open .cart-popup {
            opacity: 1;
            visibility: visible;
            transform: scale(1);
        }
.popup_cat li a { font-size: 14px !important; }
.tab-title .icon, .product-title-price .title { font-weight: 100 !important}
 .custom-swiper-wrapper { position: relative; }
        .custom-swiper-wrapper img { border-radius: 0px; cursor: pointer; transition: transform 0.3s; }
      
        .lightbox-trigger { position: absolute; top: 12px; left: 12px; background: rgba(255,255,255,0.5); backdrop-filter: blur(10px); color: #111; border: 1px soild #f1f1f1; padding: 8px 12px; border-radius: 50%; cursor: pointer; font-size: 18px; z-index: 10; transition: background 0.3s; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center;}
        .lightbox-trigger:hover { background: rgba(0,0,0,0.8); }
        .custom-lightbox { display: none; position: fixed; top:0; left:0; width:100vw; height:100vh; background: rgba(0,0,0,0.6); backdrop-filter: blur(10px); justify-content: center; align-items: center; z-index: 9999; padding: 60px; box-sizing: border-box; }
        .lightbox-close { position: absolute; top: 20px; right: 20px; font-size: 18px; color: #fff; font-weight: 100; background: none; border: none; cursor: pointer; transition: transform 0.2s, opacity 0.2s; padding: 10px !important}
        .lightbox-close:hover { transform: scale(1.2); opacity: 0.8; }
        .lightbox-swiper-container { width: 100%; max-width: 900px; max-height: 80vh; padding: 0 20px; box-sizing: border-box; }
        .lightbox-swiper img { width: auto; max-width: 100%; max-height: 80vh; border-radius: 0px; box-shadow: 0 10px 30px rgba(0,0,0,0.6); margin: auto; display: block; }
        .swiper-button-next, .swiper-button-prev { color: #fff; width: 36px !important; height: 36px !important; border-radius: 50%; background: rgba(0,0,0,0.25); display: flex; align-items: center; justify-content: center; top: 50%; transform: translateY(-50%); color: #fff; }
        .swiper-button-next { right: 20px; } .swiper-button-prev { left: 20px; }
        .swiper-button-next:hover, .swiper-button-prev:hover { background: rgba(0,0,0,0.5); }

        /* safety: скрываем лишние кнопки add-to-cart вне single_variation_wrap (если сторонний код вставил дубли) */
        .product-variations > .single_add_to_cart_button { display: none !important; }

.lightbox-swiper img { box-shadow: none !important}
/* Адаптив для таблиц на мобилках */
@media (max-width: 767px) {
	
    table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch; /* плавный скролл iOS */
    }

   

    table tr {
        display: block;
        border: 1px solid #eee;
       
        
    }

    table td {
        display: flex;
        justify-content: space-between;
        padding: 8px 10px;
        border: none;
        border-bottom: 1px solid #f1f1f1;
        font-size: 14px;
    }

    table td:last-child {
        border-bottom: none;
    }

    table td::before {
        content: attr(data-title); /* берём название колонки */
        font-weight: 600;
        color: #555;
        margin-right: 10px;
    }
}
.page-id-7597 { padding: 0 !important}
.points_log, .wps_wpr_each_section, .wps_wpr_membership_with_img { box-shadow: none !important; border: none !important;}

@media (max-width: 768px) {
    .size-guide {
        width: 100%;
        table-layout: fixed; /* ключевой момент */
        border-collapse: collapse;
        overflow-x: auto;
    }

    .size-guide th,
    .size-guide td {
        width: calc(100% / 7); /* если у тебя 7 колонок */
        text-align: center;
        padding: 6px;
        border: 1px solid #ddd;
        font-size: 12px;
        word-break: break-word;
    }

    .size-guide thead {
        display: table-header-group; /* чтобы заголовки были видны */
    }
}



#ajax-add-to-cart-popup {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background: #fff;
    color: #000;
    padding: 16px 20px;
    border-radius: 0px;
    z-index: 9999;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    max-width: 320px;
    box-sizing: border-box;
}

#ajax-add-to-cart-popup #ajax-add-to-cart-progress {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 2px; /* можно сделать 1px или чуть толще */
    background: #ddd;
    overflow: hidden;
    border-radius: 0;
}

#ajax-add-to-cart-popup #ajax-add-to-cart-progress div {
    width: 100%;
    height: 100%;
    background: #2d3830;
    transition: width 5s linear;
}
/* Сброс таблицы вариаций и стилей темы */
.variations_form table.variations,
.variations_form table.variations th,
.variations_form table.variations td {
    all: unset; /* сброс всего */
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
}

/* Выровнять селекты */
.variations_form .variations select {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 0px;
    background: #fff;
    font-size: 14px;
}

/* Сброс стиля reset вариаций */
.variations_form .reset_variations {
    display: inline-block;
    margin-top: 4px;
    font-size: 12px;
}

/* Контейнер для кнопки и quantity */
.single_variation_wrap {
    margin-top: 12px;
    display: flex;
    align-items: center;
    gap: 0; /* слитно */
}

/* Стили quantity с плюс/минус */
.quantity {
	
    display: flex;
    align-items: center;
    background: #000;
    color: #fff;
    border-radius: 0px;
    overflow: hidden;
    margin: 0;
}

.quantity input[type=number] {
    width: 40px;
    
    border: none;
    text-align: center;
    background: #000;
    color: #fff;
    font-size: 14px;
}

.quantity button {
	padding: 8px 20px;
    background: #000;
    color: #fff;
    border: none;
    width: auto;
	padding: 18px;
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
}

.quantity button:focus,
.quantity input:focus {
    outline: none;
}
.orderby { background: #fff !important; border: none !important; font-weight: 300; padding: 10px 16px;}
.variations_form { flex-direction: column}
/* Стили для кнопки Add to cart (подогнать края) */
.single_add_to_cart_button {
    border-radius: 0;
    margin: 0;
}
.woocommerce-variation-add-to-cart, .cart {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    width: 100%;
	margin-top: 75px;
	margin-bottom: 10px;
}

.woocommerce-variation-add-to-cart .quantity, .cart .quantity {
   flex: 0 0 auto; /* растягиваем input на максимум */
    margin: 0;      /* убираем гапы */
}

.woocommerce-variation-add-to-cart button.single_add_to_cart_button, .cart button.single_add_to_cart_button{
     flex: 1 1 auto; /* кнопка по содержимому */ 
	text-align: right;
}
.variations tbody{
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.variations tbody tr {
    display: flex;           /* содержимое каждой вариации */
    flex-direction: column;
    flex: 1 1 calc(50% - 15px); /* две колонки с учетом gap */
    min-width: 200px;        /* чтобы не было сжатия */
}
.variations tbody tr label { text-transform: uppercase; opacity: .6; font-size: 12px;}
.order-summary-right table.woocommerce-checkout-review-order-table,
.order-summary-right table.woocommerce-checkout-review-order-table th,
.order-summary-right table.woocommerce-checkout-review-order-table td {
    background: none;
    color: inherit;
    font: inherit;
    border: none;
    padding: 0;
    margin: 0;
    text-transform: none;
}

/* Минимализм и твои стили */
.order-summary-right table.woocommerce-checkout-review-order-table {
    width: 100%;
    border-collapse: collapse;
}
/* Сброс темы */
.shipping-methods-left ul.woocommerce-shipping-methods,
.shipping-methods-left ul.woocommerce-shipping-methods li {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Скрываем дефолтные радио */
.shipping-methods-left input[type="radio"].shipping_method {
    display: none;
}

/* Стиль кнопки */
.shipping-methods-left label {
    display: inline-block;
    padding: 8px 16px;
    margin-bottom: 8px;
    border: 1px solid #ccc; /* серый бордер */
    border-radius: 0;
    background: #f5f5f5; /* серый фон */
    font-size: 12px;
    text-transform: uppercase;
    color: #000; /* черный текст */
    cursor: pointer;
    transition: all 0.2s;
    min-width: 150px; /* чтобы кнопки одинаковой ширины */
}

/* Активная кнопка */
.shipping-methods-left input[type="radio"].shipping_method:checked + label {
    border-color: #000; /* черный бордер */
    background: #fff; /* белый фон */
    color: #000;
}

/* При наведении */
.shipping-methods-left label:hover {
    border-color: #888;
}

.order-summary-right table.woocommerce-checkout-review-order-table th,
.order-summary-right table.woocommerce-checkout-review-order-table td {
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    font-size: 12px;
    text-transform: uppercase;
    color: #fff;
}

.order-summary-right table.woocommerce-checkout-review-order-table th {
    font-weight: 600;
    text-align: left;
}

.order-summary-right table.woocommerce-checkout-review-order-table td {
    font-weight: 400;
}


/* Основной контейнер */
.woocommerce-order {
    max-width: 900px;
    margin: 0 auto;
    padding: 30px;
    font-family: 'Arial', sans-serif;
    color: #111; /* темный текст */
    background: #fff; /* белый фон */
    border-radius: 0;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

/* Заголовки */
.woocommerce-order h1,
.woocommerce-order h2 {
    font-size: 26px;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 25px;
    color: #111;
}

/* Order summary блок */
.order-summary-right,
.woocommerce-order .order-details {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 20px;
    background: transparent !important;
    border-radius: 0px;
    border: 1px solid rgba(0,0,0,0.05);
}

/* Таблица товаров и тоталсы */
.order-summary-right table,
.woocommerce-order .order-details table {
    width: 100%;
    border-collapse: collapse;
}

.order-summary-right table th,
.order-summary-right table td,
.woocommerce-order .order-details table th,
.woocommerce-order .order-details table td {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    font-size: 12px;
    text-transform: uppercase;
    color: #111;
    text-align: left;
}

/* Тоталсы */
.order-summary-right .order-total,
.woocommerce-order .order-details .order-total {
    font-weight: 700;
    border-top: 1px solid rgba(0,0,0,0.05);
}

/* Shipping / Billing info блоки */
.woocommerce-order .woocommerce-customer-details {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}

.woocommerce-order .woocommerce-customer-details .address {
    flex: 1 1 300px;
}

/* Адаптив */
@media (max-width: 768px) {
    .order-summary-right,
    .woocommerce-order .order-details {
        padding: 15px;
    }

    .order-summary-right table th,
    .order-summary-right table td {
        font-size: 11px;
        padding: 6px 8px;
    }

    .woocommerce-order .woocommerce-customer-details {
        flex-direction: column;
    }
}
/* Общий контейнер */
.woocommerce-thankyou-order-details,
.woocommerce-customer-details {
    background: #fff;
	margin: 0; margin-left: 0;
    padding: 30px 25px;
    border-radius: 0px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.05);
    margin-bottom: 30px;
    font-family: 'Georgia', serif;
    color: #111;
}

/* Заголовки */
.woocommerce-column__title {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    border-bottom: 1px solid rgba(0,0,0,0.1);
    padding-bottom: 8px;
    margin-bottom: 20px;
}

/* Список деталей заказа */
.woocommerce-thankyou-order-details li {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    padding: 6px 0;
}

.woocommerce-thankyou-order-details li:last-child {
    border-bottom: none;
}

/* Акцент на значения */
.woocommerce-thankyou-order-details li strong {
    font-weight: 500;
    text-transform: none;
    color: #111;
}

/* Billing address */
.woocommerce-customer-details address {
    font-size: 12px;
    line-height: 1.5;
    text-transform: uppercase;
    color: #111;
}

.woocommerce-customer-details--phone,
.woocommerce-customer-details--email {
    font-size: 12px;
    text-transform: uppercase;
    color: #111;
}

/* Мобильная адаптивность */
@media (max-width: 768px) {
    .woocommerce-thankyou-order-details li {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}
/* ------------------------------
   Адаптивные таблицы на мобиле
------------------------------ */
@media (max-width: 768px) {

    /* Order Details — карточки */
    table.order-details,
    .woocommerce ul.woocommerce-order-overview,
    .woocommerce ul.woocommerce-customer-details {
        display: block;
        width: 100%;
    }

    table.order-details tr,
    .woocommerce ul.woocommerce-order-overview li,
    .woocommerce ul.woocommerce-customer-details address p {
        display: flex;
        flex-direction: column;
        padding: 12px;
        margin-bottom: 12px;
        border-radius: 0px;
        background: #fff;
    }

    table.order-details thead {
        display: none;
    }

    table.order-details td::before {
        content: attr(data-label);
        font-weight: bold;
        display: block;
        margin-bottom: 4px;
    }

    /* Variations Table */
    table.variations {
        display: block;
        width: 100%;
    }

    table.variations tbody,
    table.variations tr {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 12px;
    }

    /* ------------------------------
       Все остальные таблицы — обычные с прокруткой
    ------------------------------ */
    table.size-guide,
    table:not(.order-details):not(.variations) {
        display: table;        /* сохраняем семантику */
        width: 100%;
        table-layout: auto;
        border-collapse: collapse;
        overflow-x: auto;
    }

    table.size-guide th,
    table.size-guide td,
    table:not(.order-details):not(.variations) th,
    table:not(.order-details):not(.variations) td {
        display: table-cell;   /* НЕ flex */
        padding: 6px;
        text-align: center;
        border: 1px solid #ddd;
        font-size: 12px;
        word-break: break-word;
    }

    .table-wrapper {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
 /* Или конкретно для Size Guide */
    .size-guide {
        all: unset;        /* сброс темы только для этой таблицы, если нужно */
        display: table;
        width: 100%;
        table-layout: auto;
        border-collapse: collapse;
        overflow-x: auto;
    }

    .size-guide th,
    .size-guide td {
        display: table-cell; /* НЕ flex */
        padding: 6px;
        text-align: center;
        border: 1px solid #ddd;
        font-size: 12px;
        word-break: break-word;
    }
}
}

.checkout-right .order-summary-right, .checkout-right .woocommerce-order .order-details { background: transparent !important}
/* Сброс стандартных стилей WooCommerce для мобильного */
.wc_payment_methods.payment_methods.methods {
    list-style: none;
    padding: 0;
    margin: 0;
}

.wc_payment_methods.payment_methods.methods li {
    display: flex;
    flex-direction: column;
    margin-bottom: 10px;
    border: 1px solid rgba(255,255,255,0.4);
    border-radius: 0;
    background: #f5f5f5;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 12px;
}

.wc_payment_methods.payment_methods.methods li.active {
    background: #ffffff;
    border-color: #ffffff;
}

.wc_payment_methods.payment_methods.methods li label {
    display: block;
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    color: #000000;
    margin-bottom: 5px;
    cursor: pointer;
}
.product-title-price { align-items: flex-start !important}
.product-title-price h1 { margin-top: 0 !important}
.wc_payment_methods.payment_methods.methods li .payment_box {
    display: none;
    margin-top: 5px;
    font-size: 12px;
    color: #555;
}

/* Показываем описание активного метода */
.wc_payment_methods.payment_methods.methods li.active .payment_box {
    display: block;
}

/* Скрываем реальные радио кнопки */
.wc_payment_methods.payment_methods.methods input[type="radio"] {
    display: none;
}

/* Для мобильного — flex для label + description */
@media (max-width: 768px) {
    .wc_payment_methods.payment_methods.methods li {
        flex-direction: column;
        padding: 10px;
    }
}

.gglobe { width: 16px !important; height: 16px !important}
.checkout-right .woocommerce-remove-coupon { color: #fff !important; opacity: .5;}

/* Базовые стили стрелок */
.product-slider-wrapper .slider-arrows {
    opacity: 0;
    transition: opacity 0.5s ease;
    
}

/* Десктоп: показываем только при наведении на слайд */
@media (min-width: 768px) {
    .product-slider-wrapper:hover .slider-arrows {
        opacity: 1;
    }
}

/* Мобильные: показываем на пару секунд и исчезают */
@media (max-width: 767px) {
    .product-slider-wrapper .slider-arrows {
        animation: showArrowsMobile 1.5s ease forwards;
    }

    @keyframes showArrowsMobile {
        0% { opacity: 0; }
      
        100% { opacity: .5; } /* плавно скрываем */
    }
}

/*mobile*/
@media(max-width:600px){
	.cart-popup .product-title, .cart-popup .amount { font-size: 14px !important}
	.product-info { padding: 0;}
	.product-title, .amount { font-size: 9px !important; line-height: 110% !important}
	.cf-tab-label { font-size: 10px !important; padding: 4px 10px !important;}
	/* Related products */
.related-products {
	padding: 10px;
}
	.mini-cart-items { padding: 0 !important}
	.cart-popup {padding: 50px 15px 15px; }
	.popup_cat li a { font-size: 12px !important}
	.product-title-price .title { font-size: 23px !important; font-weight: 100 !important;}
	#top-bar { font-size: 9px !important}
	.woocommerce table tr, .woocommerce ul.woocommerce-order-overview li, .woocommerce ul.woocommerce-customer-details address p, table tr { background: transparent !important}
	.shop_attributes tbody { display: flex; flex-direction: column; }
		.shop_attributes tbody tr { flex: 1; }
	.order-summary-right table tr{ display: flex;}
	.order-summary-right table.woocommerce-checkout-review-order-table th, .product-name { flex: 1;}
		.order-summary-right table td::before { display: none; }
	.order-summary-right table tr { border: none ; text-align: left;}
	.cart-item { padding: 10px !important;}
	.quantity button { padding: 6px 13px !important}
	.quantity input[type=number] { width: 45px; font-size: 11px !important}
	#carlstone-post-grid { grid-template-columns: repeat(1,1fr) !important; padding: 0 !important;}
	.custom-lightbox { padding: 10px !important;}
	.cf-panel h3 { font-size: 12px !important;}
	.cf-panel { padding: 20px;}
	.custom-shop-wrapper { padding: 0 10px !important;}
	.custom-product-card{ width: 100%; min-height: 300px; flex: 0 0 100% !important;}
	.logo_popup { display: block; margin: 10px auto 20px; max-width: 70px;}

	.cart-popup { width: 90% !important;}
	.custom-cart-page { padding: 40px 10px !important;}
	.item-image { height: auto !important; flex: 0 0 auto !important; margin: 0;}
	.custom-cart-page .item-image img { width: 120px; height: 120px;}
	.checkout-left { padding: 0;}
	#primary { max-width: 100% !important}
	.woocommerce-checkout {padding: 0px; }
	.carlstone-horizontal-products-wrapper {
    overflow-x: auto;
}
.carlstone-horizontal-products-wrapper::-webkit-scrollbar {
    display: none;
}
	.woocommerce { max-width: 100vw;}
	.product-right, .related-products { margin-top: 40px !important; padding: 10px;}
	
	.custom-single-product { padding: 0px !important}
	.product-columns { flex-direction: column; }
	.product-left { margin: 0px 10px 10px 50px !important;margin-left: 10px !important; }
	.product-left, .product-right { width: auto !important; max-width: 100% !important; flex: 0 0 100% !important; }
  .related-products .products-grid li { flex:1 1 100%; }
	.custom-swiper .swiper-slide, .custom-swiper .swiper-slide img { max-height: 70vh !important; }
	.custom-swiper img { height: 70vh;}
}