/* =========================================================
   CYPRIANUS – SHOPTET GLOBAL STYLES
   v13 – reviews + card polish
   ========================================================= */

:root{
  --cy-green:#304236;
  --cy-green-dark:#26372d;
  --cy-cream:#f7f4ee;
  --cy-paper:#fffdf9;
  --cy-gold:#dfbd86;
  --cy-border:#ded9cd;
  --cy-text:#4f5a52;
  --cy-muted:#737b76;
}

/* =========================================================
   TYPOGRAPHY
   ========================================================= */

.type-product h1,
.type-detail h1,
.type-category h1,
.category-title,
.homepage-group-title,
.extended-banner-title{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:var(--cy-green)!important;
  letter-spacing:-.025em!important;
}

.type-product h1,
.type-detail h1{line-height:1.12!important}

.extended-banner-title{line-height:1.02!important}
.homepage-group-title{line-height:1.15!important}

/* =========================================================
   PRODUCT IMAGES
   ========================================================= */

.products-block .p .image,
.products-block .product .image,
.products .p .image,
.products .product .image{
  border-radius:18px!important;
  overflow:hidden!important;
}

.products-block .p .image img,
.products-block .product .image img,
.products .p .image img,
.products .product .image img{
  border-radius:18px!important;
}

.p-detail .p-image,
.p-detail .p-image-wrapper,
.p-detail-inner .p-image,
.p-detail-inner .p-image-wrapper{
  border-radius:22px!important;
  overflow:hidden!important;
}

.p-detail .p-image img,
.p-detail .p-image-wrapper img,
.p-detail-inner .p-image img,
.p-detail-inner .p-image-wrapper img{
  border-radius:22px!important;
}

.p-detail .p-thumbnails a,
.p-detail .p-thumbnails img,
.p-detail-inner .p-thumbnails a,
.p-detail-inner .p-thumbnails img{
  border-radius:10px!important;
}

/* =========================================================
   PRODUCT DETAIL – DESCRIPTION
   JS v11 also normalizes the actual Bootstrap column chain.
   ========================================================= */

.type-product .p-detail-tabs-wrapper,
.type-detail .p-detail-tabs-wrapper{
  margin-top:0!important;
  padding-top:26px!important;
}

.type-product .p-detail-tabs-wrapper > .row,
.type-detail .p-detail-tabs-wrapper > .row{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

.type-product .p-detail-tabs-wrapper > .row > .shp-tabs-row,
.type-detail .p-detail-tabs-wrapper > .row > .shp-tabs-row{
  display:none!important;
}

.type-product .p-detail-tabs-wrapper .tab-content,
.type-detail .p-detail-tabs-wrapper .tab-content,
.type-product #description,
.type-detail #description,
.type-product #description .description-inner,
.type-detail #description .description-inner,
.type-product #description .basic-description,
.type-detail #description .basic-description{
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-top:0!important;
}

.type-product #description .descr-text,
.type-detail #description .descr-text{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
  float:none!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Our designed product-description blocks */
.type-product #description #cy-bath-milk,
.type-detail #description #cy-bath-milk,
.type-product #description .basic-description > div,
.type-detail #description .basic-description > div{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Native Shoptet "Podrobný popis" heading */
.type-product #description h2[data-cy-detail-heading],
.type-product #description h3[data-cy-detail-heading],
.type-product #description h4[data-cy-detail-heading],
.type-detail #description h2[data-cy-detail-heading],
.type-detail #description h3[data-cy-detail-heading],
.type-detail #description h4[data-cy-detail-heading]{
  display:none!important;
}

/* =========================================================
   TRUST BLOCK
   ========================================================= */

#cyT{
  margin:18px 0 22px;
  width:100%;
  border:1px solid var(--cy-border);
  border-radius:16px;
  overflow:hidden;
  background:var(--cy-paper);
  color:var(--cy-green);
  font:14px Arial,sans-serif;
}

#cyT *{box-sizing:border-box}

#cyT .top{
  display:grid;
  grid-template-columns:125px 1fr;
  background:var(--cy-green);
  color:#fff;
}

#cyT .seal{
  display:flex;
  align-items:center;
  justify-content:center;
  border-right:1px solid #ffffff26;
}

#cyT .badge{
  display:flex;
  width:74px;
  height:74px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  border:2px solid var(--cy-gold);
  border-radius:50%;
  color:var(--cy-gold);
}

#cyT .badge b{font:400 30px/1 Georgia,serif}

#cyT .badge span{
  margin-top:2px;
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
}

#cyT .copy{padding:24px 26px}

#cyT .k{
  display:block;
  margin-bottom:6px;
  color:var(--cy-gold);
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}

#cyT h3{
  margin:0 0 7px;
  color:#fff;
  font:400 23px/1.2 Georgia,"Times New Roman",serif;
}

#cyT p{
  margin:0;
  color:#ffffffc9;
  line-height:1.55;
}

#cyT .pay,
#cyT .rating{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 16px;
}

#cyT .pay{background:#f8f4ec}
#cyT .safe{font-weight:700}

#cyT .logos{
  display:flex;
  align-items:center;
  gap:11px;
}

#cyT .logos img{
  display:block!important;
  width:auto!important;
  height:21px!important;
  max-width:65px!important;
  margin:0!important;
  object-fit:contain!important;
}

#cyT .logos img:nth-child(3){
  height:15px!important;
  max-width:45px!important;
}

#cyT .logos img:nth-child(4){
  height:21px!important;
  max-width:38px!important;
}

#cyT .rating{
  display:none;
  border-top:1px solid var(--cy-border);
  background:#fff;
}

#cyT .stars{
  color:#e0aa50;
  font-size:19px;
  line-height:1;
  letter-spacing:1px;
}

#cyT .score{
  margin-left:7px;
  color:var(--cy-green);
  font-weight:700;
}

#cyT .count{
  color:var(--cy-muted);
  font-size:12px;
}

@media(max-width:600px){
  #cyT .top{grid-template-columns:95px 1fr}
  #cyT .badge{width:62px;height:62px}
  #cyT .copy{padding:19px 16px}
  #cyT h3{font-size:20px}
}

/* =========================================================
   COOKIE PANEL
   ========================================================= */

.siteCookies.siteCookies--bottom{
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 20px 20px!important;
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
}

.siteCookies.siteCookies--bottom .siteCookies__form{
  width:100%!important;
  max-width:920px!important;
  margin:0!important;
  padding:20px 22px!important;
  box-sizing:border-box!important;
  background:var(--cy-cream)!important;
  border:1px solid #e4ded3!important;
  border-radius:22px!important;
  box-shadow:0 10px 32px rgba(48,66,54,.12)!important;
}

.siteCookies__text{
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:14px!important;
  line-height:1.55!important;
  color:var(--cy-text)!important;
}

.siteCookies__text:before{
  content:"Vaše súkromie";
  display:block;
  font:400 22px/1.2 Georgia,"Times New Roman",serif!important;
  color:var(--cy-green)!important;
  margin-bottom:7px;
}

.siteCookies__button,
.siteCookies .btn-success{
  background:var(--cy-green)!important;
  border-color:var(--cy-green)!important;
  color:#fff!important;
  border-radius:999px!important;
  box-shadow:none!important;
}

.siteCookies__button:hover,
.siteCookies .btn-success:hover{
  background:var(--cy-green-dark)!important;
  border-color:var(--cy-green-dark)!important;
  color:#fff!important;
}

.siteCookies__link,
.siteCookies .btn-default{
  background:transparent!important;
  border:1px solid #ccd5cd!important;
  color:var(--cy-green)!important;
  border-radius:999px!important;
  box-shadow:none!important;
}

@media(max-width:767px){
  .siteCookies.siteCookies--bottom{
    padding:0 12px 12px!important;
  }

  .siteCookies.siteCookies--bottom .siteCookies__form{
    max-width:none!important;
    border-radius:18px!important;
  }
}

/* =========================================================
   FOOTER
   ========================================================= */

.copyright .shoptet,
.copyright a[href*="shoptet"],
.copyright a[href*="shoptak"],
.footer-bottom a[href*="shoptet"],
.footer-bottom a[href*="shoptak"],
.footer-bottom .signature,
.footer-bottom .template-author,
#footer a[href*="shoptet"],
#footer a[href*="shoptak"],
footer a[href*="shoptet"],
footer a[href*="shoptak"]{
  display:none!important;
}

.cyprianus-custom-footer{
  margin:0!important;
  padding:8px 15px 10px!important;
  text-align:center;
  color:#444;
  font-family:inherit;
}

.cyprianus-custom-footer img{
  display:inline-block;
  max-width:55px!important;
  height:auto!important;
  margin:0 0 5px!important;
}

.cyprianus-custom-footer-wordmark{
  display:none;
  margin:0 0 5px;
  font:400 24px/1.15 Georgia,"Times New Roman",serif;
  color:var(--cy-green);
}

.cyprianus-custom-footer-copy{
  margin:0!important;
  font-size:14px!important;
  font-weight:600;
  line-height:1.3;
}

.cyprianus-custom-footer-small{
  margin:3px 0 0!important;
  color:#777;
  font-size:12px!important;
  line-height:1.3;
}

/* =========================================================
   V12 – PRODUCT CARDS
   Scoped to Shoptet product listing blocks only.
   ========================================================= */

.products-block .p.cy-product-card{
  position:relative;
  height:100%;
  padding:0 0 18px!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
}

.products-block .p.cy-product-card .image{
  display:block!important;
  position:relative;
  overflow:hidden!important;
  margin:0 0 14px!important;
  padding:0!important;
  border-radius:18px!important;
  background:#f7f4ee!important;
}

.products-block .p.cy-product-card .image img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  margin:0!important;
  border-radius:18px!important;
  transition:transform .35s ease!important;
}

@media(hover:hover){
  .products-block .p.cy-product-card .image:hover img{
    transform:scale(1.02)!important;
  }
}

.products-block .p.cy-product-card .p-in,
.products-block .p.cy-product-card .p-in-in,
.products-block .p.cy-product-card .p-bottom{
  padding-left:4px!important;
  padding-right:4px!important;
}

.products-block .p.cy-product-card .name{
  display:block!important;
  margin:0!important;
  color:#304236!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1.28!important;
  letter-spacing:-.015em!important;
  text-decoration:none!important;
}

.products-block .p.cy-product-card .ratings-wrapper{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:6px 10px!important;
  min-height:22px!important;
  margin-top:7px!important;
}

.products-block .p.cy-product-card .availability{
  margin:0!important;
  color:#58705d!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.3!important;
}

.products-block .p.cy-product-card .availability-amount{
  display:none!important;
}

.products-block .p.cy-product-card .p-bottom{
  margin-top:10px!important;
}

.products-block .p.cy-product-card .prices{
  display:block!important;
  width:100%!important;
  margin:0 0 11px!important;
  text-align:left!important;
}

.products-block .p.cy-product-card .price-final,
.products-block .p.cy-product-card .price-final strong{
  color:#1f2d24!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
  line-height:1.2!important;
}

.products-block .p.cy-product-card .price-measure,
.products-block .p.cy-product-card .p-desc,
.products-block .p.cy-product-card .p-code{
  display:none!important;
}

/* Hide visible quantity steppers in listing cards, but keep Shoptet hidden amount inputs. */
.products-block .p.cy-product-card .p-tools .quantity,
.products-block .p.cy-product-card .p-tools .quantity-form,
.products-block .p.cy-product-card .p-tools .increase,
.products-block .p.cy-product-card .p-tools .decrease,
.products-block .p.cy-product-card .p-tools input[type="number"]{
  display:none!important;
}

.products-block .p.cy-product-card .p-tools,
.products-block .p.cy-product-card .p-tools form{
  width:100%!important;
  margin:0!important;
}

.products-block .p.cy-product-card .btn-cart,
.products-block .p.cy-product-card .add-to-cart-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:44px!important;
  padding:11px 16px!important;
  margin:0!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
}

.products-block .p.cy-product-card .btn-cart:hover,
.products-block .p.cy-product-card .add-to-cart-button:hover{
  background:#26372d!important;
  border-color:#26372d!important;
  color:#fff!important;
}

/* Cleaner, smaller badges. JS limits the visible count to two. */
.products-block .p.cy-product-card .flags{
  top:10px!important;
  left:10px!important;
  gap:5px!important;
}

.products-block .p.cy-product-card .flag{
  min-height:auto!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  border:1px solid rgba(48,66,54,.12)!important;
  background:#f7f4ee!important;
  color:#304236!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
}

.products-block .p.cy-product-card .flag.flag-action{
  background:#304236!important;
  border-color:#304236!important;
  color:#fff!important;
}

.products-block .p.cy-product-card .cy-extra-flag{
  display:none!important;
}

@media(max-width:767px){
  .products-block .p.cy-product-card .name{font-size:16px!important}
  .products-block .p.cy-product-card .btn-cart,
  .products-block .p.cy-product-card .add-to-cart-button{min-height:42px!important}
}

/* =========================================================
   V12 – CATEGORY SIDEBAR / FILTERS
   JS only marks the category sidebar and hides non-filter widgets.
   ========================================================= */

.type-category .cy-category-sidebar .cy-sidebar-hidden{
  display:none!important;
}

.type-category .cy-category-sidebar{
  color:#304236!important;
}

.type-category .cy-category-sidebar .box,
.type-category .cy-category-sidebar .filters-wrapper,
.type-category .cy-category-sidebar form{
  border-color:#e6e1d8!important;
}

.type-category .cy-category-sidebar .pageElement__heading,
.type-category .cy-category-sidebar .pageElement__subHeading,
.type-category .cy-category-sidebar h3,
.type-category .cy-category-sidebar h4{
  color:#304236!important;
}

.type-category .cy-category-sidebar .pageElement__heading{
  margin-bottom:14px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:21px!important;
  font-weight:400!important;
  line-height:1.2!important;
}

.type-category .cy-category-sidebar .pageElement__subHeading,
.type-category .cy-category-sidebar h4{
  margin-top:18px!important;
  margin-bottom:10px!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.type-category .cy-category-sidebar label,
.type-category .cy-category-sidebar a{
  color:#4f5a52!important;
  font-size:13px!important;
  line-height:1.45!important;
}

.type-category .cy-category-sidebar input[type="checkbox"],
.type-category .cy-category-sidebar input[type="radio"]{
  accent-color:#304236!important;
}

.type-category .cy-category-sidebar .filter-section,
.type-category .cy-category-sidebar .box-filters,
.type-category .cy-category-sidebar .filters-unveil-button-wrapper{
  border-radius:16px!important;
}

/* Give the product area more visual priority without touching Shoptet filtering logic. */
.type-category .products-block{
  row-gap:28px!important;
}

/* =========================================================
   V12 – HOMEPAGE REVIEWS
   Built from Shoptet's current latest-rating data; source stays in DOM.
   ========================================================= */

.cy-home-hidden-widget{
  display:none!important;
}

.cy-reviews{
  max-width:1240px;
  margin:56px auto 64px;
  padding:0 20px;
  color:#304236;
}

.cy-reviews__head{
  max-width:680px;
  margin:0 auto 26px;
  text-align:center;
}

.cy-reviews__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-reviews__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-reviews__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}

.cy-review-card{
  display:flex;
  min-height:240px;
  flex-direction:column;
  padding:24px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236!important;
  text-decoration:none!important;
  transition:transform .2s ease,border-color .2s ease;
}

@media(hover:hover){
  .cy-review-card:hover{
    transform:translateY(-2px);
    border-color:#d7cebf;
  }
}

.cy-review-card__stars{
  margin-bottom:16px;
  color:#b78c48;
  font-size:16px;
  letter-spacing:2px;
}

.cy-review-card__text{
  display:-webkit-box;
  overflow:hidden;
  margin:0 0 22px;
  color:#304236;
  font:400 18px/1.5 Georgia,"Times New Roman",serif;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:5;
}

.cy-review-card__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ded8cc;
}

.cy-review-card__author{
  display:block;
  margin-bottom:4px;
  color:#304236;
  font-size:13px;
  font-weight:700;
}

.cy-review-card__product,
.cy-review-card__date{
  display:block;
  color:#798078;
  font-size:11.5px;
  line-height:1.45;
}

@media(max-width:900px){
  .cy-reviews__grid{grid-template-columns:1fr}
  .cy-review-card{min-height:0}
}

/* =========================================================
   V12 – NEWSLETTER
   Keeps Shoptet's native form and validation intact.
   ========================================================= */

#footer .cy-newsletter{
  margin:0 0 30px!important;
  padding:30px 32px!important;
  border:1px solid #e6e1d8!important;
  border-radius:24px!important;
  background:#f7f4ee!important;
  color:#304236!important;
}

#footer .cy-newsletter:before{
  content:"NOVINKY Z CYPRIANUS";
  display:block;
  margin-bottom:7px;
  color:#a17e47;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

#footer .cy-newsletter .cy-newsletter-title,
#footer .cy-newsletter h2,
#footer .cy-newsletter h3{
  margin:0 0 8px!important;
  color:#304236!important;
  font:400 28px/1.2 Georgia,"Times New Roman",serif!important;
}

#footer .cy-newsletter .cy-newsletter-copy{
  max-width:600px;
  margin:0 0 20px!important;
  color:#667169!important;
  font-size:13px!important;
  line-height:1.6!important;
}

#footer .cy-newsletter input[type="email"],
#footer .cy-newsletter input[type="text"]{
  min-height:46px!important;
  border:1px solid #d8d5cd!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:none!important;
}

#footer .cy-newsletter button,
#footer .cy-newsletter .btn{
  min-height:46px!important;
  padding-left:22px!important;
  padding-right:22px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
}

#footer .cy-newsletter button:hover,
#footer .cy-newsletter .btn:hover{
  background:#26372d!important;
  border-color:#26372d!important;
  color:#fff!important;
}

#footer .cy-newsletter .consents,
#footer .cy-newsletter .form-group,
#footer .cy-newsletter small{
  color:#7a817c!important;
}

@media(max-width:767px){
  #footer .cy-newsletter{
    padding:24px 20px!important;
    border-radius:20px!important;
  }
  #footer .cy-newsletter .cy-newsletter-title,
  #footer .cy-newsletter h2,
  #footer .cy-newsletter h3{font-size:24px!important}
}


/* =========================================================
   V13 – PRODUCT CARD CTA + RHYTHM
   ========================================================= */
.products-block .p.cy-product-card .p-tools .btn,
.products-block .p.cy-product-card .p-tools button,
.products-block .p.cy-product-card .p-tools a.btn,
.products-block .p.cy-product-card .p-tools .btn-cart,
.products-block .p.cy-product-card .p-tools .add-to-cart-button{
  color:#fff!important;
  background:#304236!important;
  border-color:#304236!important;
  text-decoration:none!important;
}
.products-block .p.cy-product-card .p-tools .btn:hover,
.products-block .p.cy-product-card .p-tools button:hover,
.products-block .p.cy-product-card .p-tools a.btn:hover{
  color:#fff!important;
  background:#26372d!important;
  border-color:#26372d!important;
}
.products-block .p.cy-product-card .name{min-height:46px!important}
.products-block .p.cy-product-card .p-bottom{padding-bottom:0!important}

/* V13 – refined custom homepage reviews */
.cy-reviews{max-width:1160px;margin:54px auto 62px}
.cy-reviews__grid{gap:18px}
.cy-review-card{min-height:255px;padding:26px;background:#f7f4ee}
.cy-review-card__text{font-size:17px;line-height:1.55}


/* =========================================================
   V14 – HOMEPAGE PRODUCT CARD IMAGE SCALE
   Only homepage product sliders/listings; category grid remains unchanged.
   ========================================================= */

body.type-index .products-block .p.cy-product-card .image,
body.in-index .products-block .p.cy-product-card .image{
  width:100%!important;
  max-width:none!important;
}

body.type-index .products-block .p.cy-product-card .image > a,
body.in-index .products-block .p.cy-product-card .image > a{
  display:block!important;
  width:100%!important;
  max-width:none!important;
}

body.type-index .products-block .p.cy-product-card .image img,
body.in-index .products-block .p.cy-product-card .image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  aspect-ratio:1 / 1!important;
  object-fit:cover!important;
}

/* =========================================================
   V14 – PRODUCT RATINGS
   More breathing room + Cyprianus gold.
   ========================================================= */

.products-block .p.cy-product-card .ratings-wrapper{
  margin:10px 0 9px!important;
  min-height:20px!important;
  line-height:1!important;
}

.products-block .p.cy-product-card .ratings-wrapper,
.products-block .p.cy-product-card .ratings-wrapper a,
.products-block .p.cy-product-card .ratings-wrapper span,
.products-block .p.cy-product-card .ratings-wrapper i{
  color:#b78c48!important;
}

.products-block .p.cy-product-card .ratings-wrapper svg{
  color:#b78c48!important;
  fill:#b78c48!important;
}

.products-block .p.cy-product-card .ratings-wrapper .rating-count,
.products-block .p.cy-product-card .ratings-wrapper .rating-label,
.products-block .p.cy-product-card .ratings-wrapper .count{
  color:#7a817c!important;
  font-size:11.5px!important;
}

.products-block .p.cy-product-card .name{
  margin-top:0!important;
}

/* =========================================================
   V14 – NATIVE HOMEPAGE REVIEWS
   Keep Shoptet carousel functionality, only give it Cyprianus styling.
   ========================================================= */

.cy-native-reviews{
  max-width:1240px!important;
  margin:56px auto 64px!important;
  padding:0 20px!important;
  color:#304236!important;
}

.cy-native-reviews-header{
  max-width:680px;
  margin:0 auto 26px;
  text-align:center;
}

.cy-native-reviews-header__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-native-reviews-header__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-native-review-card{
  min-height:190px!important;
  padding:24px!important;
  border:1px solid #e6e1d8!important;
  border-radius:22px!important;
  background:#f7f4ee!important;
  box-shadow:none!important;
}

.cy-native-review-card,
.cy-native-review-card a{
  color:#304236!important;
}

.cy-native-review-card .stars,
.cy-native-review-card .star-list,
.cy-native-review-card .rating,
.cy-native-review-card [class*="star"]{
  color:#b78c48!important;
}

.cy-native-review-card svg{
  color:#b78c48!important;
  fill:#b78c48!important;
}

.cy-native-reviews .slick-arrow,
.cy-native-reviews .swiper-button-next,
.cy-native-reviews .swiper-button-prev{
  color:#304236!important;
}

@media(max-width:767px){
  .cy-native-reviews{
    margin:40px auto 48px!important;
    padding:0 12px!important;
  }

  .cy-native-reviews-header__title{
    font-size:28px;
  }

  .cy-native-review-card{
    min-height:0!important;
    padding:20px!important;
  }
}


/* =========================================================
   V15 – LUSH-INSPIRED PRODUCT CARDS, CYPRIANUS LANGUAGE
   Full-bleed image, calmer card, gold rating, outlined CTA.
   ========================================================= */

.products-block .p.cy-product-card{
  display:flex!important;
  height:100%!important;
  flex-direction:column!important;
  padding:10px 10px 16px!important;
  overflow:hidden!important;
  border:1px solid #ebe5da!important;
  border-radius:22px!important;
  background:#fffdf9!important;
  box-shadow:none!important;
}

.products-block .p.cy-product-card .image{
  width:100%!important;
  max-width:none!important;
  margin:0 0 16px!important;
  border-radius:16px!important;
  background:#f4f0e9!important;
}

.products-block .p.cy-product-card .image > a{
  display:block!important;
  width:100%!important;
  max-width:none!important;
}

.products-block .p.cy-product-card .image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  aspect-ratio:1 / 1!important;
  object-fit:cover!important;
  border-radius:16px!important;
}

.products-block .p.cy-product-card .p-in{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  padding:0 10px!important;
}

.products-block .p.cy-product-card .p-in-in{
  padding:0!important;
}

.products-block .p.cy-product-card .name{
  min-height:0!important;
  margin:0!important;
  color:#304236!important;
  font:400 18px/1.3 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.012em!important;
}

.products-block .p.cy-product-card .stars-wrapper{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:22px!important;
  margin:11px 0 12px!important;
  color:#b78c48!important;
  line-height:1!important;
}

.products-block .p.cy-product-card .stars-wrapper *,
.products-block .p.cy-product-card .stars-wrapper *::before,
.products-block .p.cy-product-card .stars-wrapper *::after{
  color:#b78c48!important;
  border-color:#b78c48!important;
}

.products-block .p.cy-product-card .stars-wrapper .sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.products-block .p.cy-product-card .cy-rating-meta{
  color:#746f65!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

.products-block .p.cy-product-card .availability{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:2px 0 14px!important;
  color:#58705d!important;
  font-size:11.5px!important;
  font-weight:600!important;
}

.products-block .p.cy-product-card .availability::before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#718b75;
}

.products-block .p.cy-product-card .p-bottom{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  margin-top:auto!important;
  padding:0!important;
}

.products-block .p.cy-product-card .prices{
  margin:0 0 16px!important;
}

.products-block .p.cy-product-card .price-final,
.products-block .p.cy-product-card .price-final strong{
  color:#203027!important;
  font-size:17px!important;
  font-weight:700!important;
}

.products-block .p.cy-product-card .p-tools{
  margin-top:auto!important;
}

.products-block .p.cy-product-card .p-tools .btn,
.products-block .p.cy-product-card .p-tools button,
.products-block .p.cy-product-card .p-tools a.btn,
.products-block .p.cy-product-card .p-tools .btn-cart,
.products-block .p.cy-product-card .p-tools .add-to-cart-button{
  display:flex!important;
  width:100%!important;
  min-height:46px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:11px 18px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#fffdf9!important;
  color:#304236!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
  text-decoration:none!important;
  transition:background .18s ease,color .18s ease!important;
}

@media(hover:hover){
  .products-block .p.cy-product-card .p-tools .btn:hover,
  .products-block .p.cy-product-card .p-tools button:hover,
  .products-block .p.cy-product-card .p-tools a.btn:hover,
  .products-block .p.cy-product-card .p-tools .btn-cart:hover,
  .products-block .p.cy-product-card .p-tools .add-to-cart-button:hover{
    background:#304236!important;
    color:#fff!important;
  }
}

.products-block .p.cy-product-card .flags{
  top:18px!important;
  left:18px!important;
}

@media(max-width:767px){
  .products-block .p.cy-product-card{
    padding:8px 8px 14px!important;
    border-radius:18px!important;
  }

  .products-block .p.cy-product-card .image,
  .products-block .p.cy-product-card .image img{
    border-radius:14px!important;
  }

  .products-block .p.cy-product-card .p-in{
    padding:0 8px!important;
  }

  .products-block .p.cy-product-card .name{
    font-size:16px!important;
  }

  .products-block .p.cy-product-card .stars-wrapper{
    margin:9px 0 10px!important;
  }
}

/* =========================================================
   V15 – HOMEPAGE REVIEWS
   Explicitly built from latest Shoptet product-review links.
   ========================================================= */

.cy-reviews-v15{
  max-width:1240px;
  margin:56px auto 66px;
  padding:0 24px;
}

.cy-reviews-v15__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-reviews-v15__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-reviews-v15__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-reviews-v15__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.cy-review-v15{
  display:flex;
  min-height:230px;
  flex-direction:column;
  padding:26px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236!important;
  text-decoration:none!important;
}

.cy-review-v15__stars{
  margin-bottom:16px;
  color:#b78c48;
  font-size:17px;
  letter-spacing:2px;
}

.cy-review-v15__text{
  margin:0 0 24px;
  color:#304236;
  font:400 17px/1.55 Georgia,"Times New Roman",serif;
}

.cy-review-v15__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
}

.cy-review-v15__author{
  display:block;
  margin-bottom:5px;
  color:#304236;
  font-size:13px;
  font-weight:700;
}

.cy-review-v15__product,
.cy-review-v15__date{
  display:block;
  color:#7a817c;
  font-size:11.5px;
  line-height:1.45;
}

.cy-native-review-hidden,
.cy-native-review-heading-hidden{
  display:none!important;
}

@media(max-width:900px){
  .cy-reviews-v15{
    margin:42px auto 50px;
    padding:0 16px;
  }

  .cy-reviews-v15__grid{
    display:flex;
    gap:14px;
    overflow-x:auto;
    padding:0 0 4px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }

  .cy-reviews-v15__grid::-webkit-scrollbar{display:none}

  .cy-review-v15{
    min-width:82vw;
    min-height:0;
    scroll-snap-align:start;
  }

  .cy-reviews-v15__title{
    font-size:29px;
  }
}

/* =========================================================
   V15 – NEWSLETTER REBUILD
   Same native Shoptet form; only layout is reorganized.
   ========================================================= */

#footer .cy-newsletter.cy-newsletter-v15{
  display:grid!important;
  max-width:1320px!important;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr)!important;
  gap:48px!important;
  align-items:center!important;
  margin:0 auto 36px!important;
  padding:34px 38px!important;
}

#footer .cy-newsletter.cy-newsletter-v15::before{
  content:none!important;
  display:none!important;
}

#footer .cy-newsletter-v15 .cy-newsletter-intro{
  min-width:0;
}

#footer .cy-newsletter-v15 .cy-newsletter-kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

#footer .cy-newsletter-v15 .cy-newsletter-title{
  margin:0 0 8px!important;
  color:#304236!important;
  font:400 30px/1.18 Georgia,"Times New Roman",serif!important;
}

#footer .cy-newsletter-v15 .cy-newsletter-copy{
  max-width:520px!important;
  margin:0!important;
  color:#667169!important;
  font-size:13px!important;
  line-height:1.6!important;
}

#footer .cy-newsletter-v15 .cy-newsletter-formwrap{
  min-width:0;
}

#footer .cy-newsletter-v15 form{
  width:100%!important;
  margin:0!important;
}

#footer .cy-newsletter-v15 .cy-newsletter-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}

#footer .cy-newsletter-v15 .cy-newsletter-email-group{
  margin:0!important;
}

#footer .cy-newsletter-v15 input[type="email"]{
  width:100%!important;
  min-height:48px!important;
  padding-left:18px!important;
  padding-right:18px!important;
}

#footer .cy-newsletter-v15 .cy-newsletter-submit,
#footer .cy-newsletter-v15 .cy-newsletter-submit.btn,
#footer .cy-newsletter-v15 button[type="submit"],
#footer .cy-newsletter-v15 input[type="submit"]{
  min-width:150px!important;
  min-height:48px!important;
  margin:0!important;
  padding:11px 22px!important;
}

#footer .cy-newsletter-v15 .consents,
#footer .cy-newsletter-v15 .form-consents,
#footer .cy-newsletter-v15 .consent,
#footer .cy-newsletter-v15 small{
  display:block!important;
  margin-top:10px!important;
  text-align:right!important;
  line-height:1.45!important;
}

@media(max-width:767px){
  #footer .cy-newsletter.cy-newsletter-v15{
    display:block!important;
    margin:0 16px 32px!important;
    padding:28px 22px 24px!important;
    border-radius:22px!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-intro{
    margin-bottom:24px!important;
    text-align:center!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-kicker{
    margin-bottom:7px!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-title{
    font-size:29px!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-copy{
    max-width:360px!important;
    margin:0 auto!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-actions{
    display:block!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-email-group{
    width:100%!important;
    margin-bottom:12px!important;
  }

  #footer .cy-newsletter-v15 .cy-newsletter-submit,
  #footer .cy-newsletter-v15 .cy-newsletter-submit.btn,
  #footer .cy-newsletter-v15 button[type="submit"],
  #footer .cy-newsletter-v15 input[type="submit"]{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    justify-content:center!important;
  }

  #footer .cy-newsletter-v15 .consents,
  #footer .cy-newsletter-v15 .form-consents,
  #footer .cy-newsletter-v15 .consent,
  #footer .cy-newsletter-v15 small{
    margin-top:14px!important;
    text-align:center!important;
  }
}


/* =========================================================
   V16 – PRODUCT CARDS
   Editorial / Lush-inspired structure, Cyprianus visual language.
   ========================================================= */

.products-block .p.cy-product-card{
  display:flex!important;
  height:100%!important;
  flex-direction:column!important;
  padding:9px 9px 16px!important;
  overflow:hidden!important;
  border:1px solid #e8e2d7!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.products-block .p.cy-product-card .image{
  width:100%!important;
  max-width:none!important;
  margin:0 0 16px!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:16px!important;
  background:#f6f3ed!important;
}

.products-block .p.cy-product-card .image > a{
  display:block!important;
  width:100%!important;
  max-width:none!important;
}

.products-block .p.cy-product-card .image img{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  object-fit:cover!important;
  margin:0!important;
  border-radius:16px!important;
}

.products-block .p.cy-product-card .p-in{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  padding:0 10px!important;
}

.products-block .p.cy-product-card .p-in-in{
  padding:0!important;
}

.products-block .p.cy-product-card .name{
  min-height:0!important;
  margin:0 0 7px!important;
  color:#304236!important;
  font:400 18px/1.28 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.012em!important;
  text-decoration:none!important;
}

.products-block .p.cy-product-card .p-desc{
  display:-webkit-box!important;
  overflow:hidden!important;
  margin:0 0 11px!important;
  padding:0!important;
  color:#626b64!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
}

.products-block .p.cy-product-card .stars-wrapper{
  display:none!important;
}

.products-block .p.cy-product-card .cy-card-rating-v16{
  display:flex!important;
  min-height:21px!important;
  align-items:center!important;
  gap:8px!important;
  margin:0 0 12px!important;
  line-height:1!important;
}

.products-block .p.cy-product-card .cy-card-rating-v16__stars{
  color:#b78c48!important;
  font-size:15px!important;
  letter-spacing:1.5px!important;
}

.products-block .p.cy-product-card .cy-card-rating-v16__meta{
  color:#6f756f!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:600!important;
}

.products-block .p.cy-product-card .cy-card-rating-v16.is-empty{
  visibility:hidden!important;
}

.products-block .p.cy-product-card .availability{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0 0 13px!important;
  color:#58705d!important;
  font-size:11.5px!important;
  font-weight:600!important;
  line-height:1.2!important;
}

.products-block .p.cy-product-card .availability::before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#78937d;
}

.products-block .p.cy-product-card .availability-amount{
  display:none!important;
}

.products-block .p.cy-product-card .p-bottom{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  margin-top:auto!important;
  padding:0!important;
}

.products-block .p.cy-product-card .prices{
  margin:0 0 13px!important;
  text-align:left!important;
}

.products-block .p.cy-product-card .price-final,
.products-block .p.cy-product-card .price-final strong{
  color:#203027!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:17px!important;
  font-weight:700!important;
  line-height:1.2!important;
}

.products-block .p.cy-product-card .cy-card-service-v16{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:7px 13px!important;
  margin:0 0 14px!important;
  color:#737a75!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:10.8px!important;
  line-height:1.3!important;
}

.products-block .p.cy-product-card .cy-card-service-v16__item{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
}

.products-block .p.cy-product-card .cy-card-service-v16__item + .cy-card-service-v16__item::before{
  content:"";
  width:1px;
  height:13px;
  margin-right:6px;
  background:#d8d5cd;
}

.products-block .p.cy-product-card .cy-card-service-v16 svg{
  width:15px!important;
  height:15px!important;
  flex:0 0 15px!important;
  stroke:#68716a!important;
}

.products-block .p.cy-product-card .p-tools{
  margin-top:auto!important;
}

.products-block .p.cy-product-card .p-tools .btn,
.products-block .p.cy-product-card .p-tools button,
.products-block .p.cy-product-card .p-tools a.btn,
.products-block .p.cy-product-card .p-tools .btn-cart,
.products-block .p.cy-product-card .p-tools .add-to-cart-button{
  display:flex!important;
  width:100%!important;
  min-height:46px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  margin:0!important;
  padding:11px 18px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#304236!important;
  box-shadow:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  text-decoration:none!important;
  transition:background .18s ease,color .18s ease!important;
}

.products-block .p.cy-product-card .cy-cart-icon-v16{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  pointer-events:none!important;
}

.products-block .p.cy-product-card .cy-cart-icon-v16 svg{
  width:18px!important;
  height:18px!important;
  stroke:currentColor!important;
}

@media(hover:hover){
  .products-block .p.cy-product-card .p-tools .btn:hover,
  .products-block .p.cy-product-card .p-tools button:hover,
  .products-block .p.cy-product-card .p-tools a.btn:hover,
  .products-block .p.cy-product-card .p-tools .btn-cart:hover,
  .products-block .p.cy-product-card .p-tools .add-to-cart-button:hover{
    background:#304236!important;
    color:#fff!important;
  }
}

.products-block .p.cy-product-card .flags{
  top:18px!important;
  left:18px!important;
}

@media(max-width:767px){
  .products-block .p.cy-product-card{
    padding:8px 8px 14px!important;
    border-radius:18px!important;
  }

  .products-block .p.cy-product-card .image,
  .products-block .p.cy-product-card .image img{
    border-radius:14px!important;
  }

  .products-block .p.cy-product-card .p-in{
    padding:0 8px!important;
  }

  .products-block .p.cy-product-card .name{
    font-size:16px!important;
  }

  .products-block .p.cy-product-card .p-desc{
    font-size:12px!important;
  }

  .products-block .p.cy-product-card .cy-card-service-v16{
    display:block!important;
    margin-bottom:13px!important;
  }

  .products-block .p.cy-product-card .cy-card-service-v16__item{
    display:flex!important;
    margin-top:5px!important;
  }

  .products-block .p.cy-product-card .cy-card-service-v16__item + .cy-card-service-v16__item::before{
    display:none!important;
  }
}

/* =========================================================
   V16 – CUSTOMER REVIEW CAROUSEL
   All currently available latest reviews, with functional arrows + swipe.
   ========================================================= */

.cy-reviews-v16{
  max-width:1240px;
  margin:56px auto 66px;
  padding:0 24px;
  color:#304236;
}

.cy-reviews-v16__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-reviews-v16__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-reviews-v16__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-reviews-v16__carousel{
  position:relative;
}

.cy-reviews-v16__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}

.cy-reviews-v16__viewport::-webkit-scrollbar{
  display:none;
}

.cy-reviews-v16__track{
  display:flex;
  gap:18px;
}

.cy-review-v16{
  display:flex;
  min-width:calc((100% - 36px) / 3);
  min-height:230px;
  flex:0 0 calc((100% - 36px) / 3);
  flex-direction:column;
  padding:26px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236!important;
  text-decoration:none!important;
  scroll-snap-align:start;
}

.cy-review-v16__stars{
  margin-bottom:16px;
  color:#b78c48;
  font-size:17px;
  letter-spacing:2px;
}

.cy-review-v16__text{
  margin:0 0 24px;
  color:#304236;
  font:400 17px/1.55 Georgia,"Times New Roman",serif;
}

.cy-review-v16__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
}

.cy-review-v16__author{
  display:block;
  margin-bottom:5px;
  color:#304236;
  font-size:13px;
  font-weight:700;
}

.cy-review-v16__product,
.cy-review-v16__date{
  display:block;
  color:#7a817c;
  font-size:11.5px;
  line-height:1.45;
}

.cy-reviews-v16__arrow{
  position:absolute;
  top:50%;
  z-index:3;
  display:flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  transform:translateY(-50%);
  border:1px solid #ddd7cc;
  border-radius:50%;
  background:#fff;
  color:#304236;
  box-shadow:0 7px 22px rgba(48,66,54,.08);
  cursor:pointer;
}

.cy-reviews-v16__arrow--prev{left:-21px}
.cy-reviews-v16__arrow--next{right:-21px}

.cy-reviews-v16__arrow[disabled]{
  opacity:.3;
  cursor:default;
}

.cy-reviews-v16__arrow svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}

.cy-old-review-section-v16{
  display:none!important;
}

@media(max-width:900px){
  .cy-reviews-v16{
    margin:42px auto 50px;
    padding:0 16px;
  }

  .cy-reviews-v16__title{
    font-size:29px;
  }

  .cy-review-v16{
    min-width:84vw;
    flex-basis:84vw;
    min-height:0;
    padding:22px;
  }

  .cy-reviews-v16__arrow{
    display:none;
  }
}

/* =========================================================
   V16 – NEWSLETTER
   Centered, balanced, fully responsive.
   ========================================================= */

#footer .cy-newsletter.cy-newsletter-v15.cy-newsletter-v16{
  display:block!important;
  width:calc(100% - 48px)!important;
  max-width:1280px!important;
  margin:0 auto 36px!important;
  padding:34px 38px 30px!important;
  text-align:center!important;
  box-sizing:border-box!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-intro{
  max-width:650px!important;
  margin:0 auto 24px!important;
  text-align:center!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-kicker{
  margin-bottom:8px!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-title{
  font-size:31px!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-copy{
  max-width:570px!important;
  margin:0 auto!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-formwrap{
  width:100%!important;
  max-width:760px!important;
  margin:0 auto!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  width:100%!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-email-group{
  width:100%!important;
  margin:0!important;
}

#footer .cy-newsletter-v16 input[type="email"]{
  width:100%!important;
  box-sizing:border-box!important;
}

#footer .cy-newsletter-v16 .cy-newsletter-submit,
#footer .cy-newsletter-v16 .cy-newsletter-submit.btn,
#footer .cy-newsletter-v16 button[type="submit"],
#footer .cy-newsletter-v16 input[type="submit"]{
  min-width:150px!important;
  margin:0!important;
}

#footer .cy-newsletter-v16 .consents,
#footer .cy-newsletter-v16 .form-consents,
#footer .cy-newsletter-v16 .consent,
#footer .cy-newsletter-v16 small{
  width:100%!important;
  margin-top:11px!important;
  text-align:center!important;
}

@media(max-width:767px){
  #footer .cy-newsletter.cy-newsletter-v15.cy-newsletter-v16{
    width:calc(100% - 28px)!important;
    margin:0 14px 32px!important;
    padding:28px 18px 24px!important;
    border-radius:22px!important;
  }

  #footer .cy-newsletter-v16 .cy-newsletter-intro{
    margin-bottom:22px!important;
  }

  #footer .cy-newsletter-v16 .cy-newsletter-title{
    font-size:28px!important;
  }

  #footer .cy-newsletter-v16 .cy-newsletter-copy{
    max-width:330px!important;
  }

  #footer .cy-newsletter-v16 .cy-newsletter-actions{
    display:block!important;
  }

  #footer .cy-newsletter-v16 .cy-newsletter-email-group{
    margin:0 0 12px!important;
  }

  #footer .cy-newsletter-v16 input[type="email"],
  #footer .cy-newsletter-v16 .cy-newsletter-submit,
  #footer .cy-newsletter-v16 .cy-newsletter-submit.btn,
  #footer .cy-newsletter-v16 button[type="submit"],
  #footer .cy-newsletter-v16 input[type="submit"]{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  #footer .cy-newsletter-v16 .consents,
  #footer .cy-newsletter-v16 .form-consents,
  #footer .cy-newsletter-v16 .consent,
  #footer .cy-newsletter-v16 small{
    margin-top:14px!important;
    padding:0 4px!important;
    text-align:center!important;
  }
}


/* =========================================================
   V17 – PRODUCT CARD FINISH
   One rounded white card only; no outer Shoptet rectangle or stray lines.
   ========================================================= */

.products-block .product{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.products-block .product::before,
.products-block .product::after{
  content:none!important;
  display:none!important;
}

.products-block .p.cy-product-card{
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid #e8e2d7!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 8px 26px rgba(48,66,54,.045)!important;
}

.products-block .p.cy-product-card .image{
  box-sizing:border-box!important;
}

.products-block .p.cy-product-card .p-tools,
.products-block .p.cy-product-card .p-tools form{
  position:relative!important;
  overflow:visible!important;
  border:0!important;
  box-shadow:none!important;
}

.products-block .p.cy-product-card .p-tools::before,
.products-block .p.cy-product-card .p-tools::after,
.products-block .p.cy-product-card .p-tools form::before,
.products-block .p.cy-product-card .p-tools form::after,
.products-block .p.cy-product-card .p-tools .btn::before,
.products-block .p.cy-product-card .p-tools .btn::after,
.products-block .p.cy-product-card .p-tools button::before,
.products-block .p.cy-product-card .p-tools button::after,
.products-block .p.cy-product-card .p-tools a::before,
.products-block .p.cy-product-card .p-tools a::after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
}

/* Remove the old native/card rating implementations completely. */
.products-block .p.cy-product-card .stars-wrapper,
.products-block .p.cy-product-card .cy-card-rating-v16,
.products-block .p.cy-product-card .cy-rating-meta,
.products-block .p.cy-product-card .cy-hide-native-rating-v17{
  display:none!important;
}

.products-block .p.cy-product-card .cy-card-rating-v17{
  display:flex!important;
  min-height:22px!important;
  align-items:center!important;
  gap:8px!important;
  margin:4px 0 13px!important;
  line-height:1!important;
}

.products-block .p.cy-product-card .cy-card-rating-v17__stars{
  color:#b78c48!important;
  font-size:15px!important;
  letter-spacing:1.4px!important;
}

.products-block .p.cy-product-card .cy-card-rating-v17__meta{
  color:#6f756f!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:600!important;
}

.products-block .p.cy-product-card .cy-card-rating-v17.is-empty{
  visibility:hidden!important;
}

/* =========================================================
   V17 – NATIVE SHOPTET REVIEW CAROUSEL
   Keep its own arrow/swipe mechanics. Only restyle it.
   ========================================================= */

.cy-reviews,
.cy-reviews-v15,
.cy-reviews-v16{
  display:none!important;
}

.cy-native-reviews-v17{
  display:block!important;
  max-width:1240px!important;
  margin:54px auto 66px!important;
  padding:0 26px!important;
  overflow:visible!important;
}

.cy-native-reviews-v17__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-native-reviews-v17__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-native-reviews-v17__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-native-reviews-v17 .cy-native-review-card-v17{
  box-sizing:border-box!important;
  min-height:230px!important;
  padding:25px!important;
  border:1px solid #e6e1d8!important;
  border-radius:22px!important;
  background:#f7f4ee!important;
  color:#304236!important;
  box-shadow:none!important;
}

.cy-native-reviews-v17 .cy-native-review-card-v17,
.cy-native-reviews-v17 .cy-native-review-card-v17 a{
  color:#304236!important;
  text-decoration:none!important;
}

.cy-native-reviews-v17 .cy-native-review-card-v17 [class*="star"],
.cy-native-reviews-v17 .cy-native-review-card-v17 .stars,
.cy-native-reviews-v17 .cy-native-review-card-v17 .star-list{
  color:#b78c48!important;
}

.cy-native-reviews-v17 .cy-native-review-card-v17 svg[class*="star"],
.cy-native-reviews-v17 .cy-native-review-card-v17 [class*="star"] svg{
  fill:#b78c48!important;
  color:#b78c48!important;
}

.cy-native-reviews-v17 button,
.cy-native-reviews-v17 .slick-arrow,
.cy-native-reviews-v17 .swiper-button-next,
.cy-native-reviews-v17 .swiper-button-prev{
  z-index:8!important;
  cursor:pointer!important;
}

.cy-native-reviews-v17 .slick-arrow,
.cy-native-reviews-v17 .swiper-button-next,
.cy-native-reviews-v17 .swiper-button-prev{
  color:#304236!important;
}

@media(max-width:900px){
  .cy-native-reviews-v17{
    margin:42px auto 48px!important;
    padding:0 16px!important;
  }

  .cy-native-reviews-v17__title{
    font-size:29px;
  }

  .cy-native-reviews-v17 .cy-native-review-card-v17{
    min-height:0!important;
  }
}

/* =========================================================
   V17 – NEWSLETTER DESKTOP
   Balanced horizontal layout. Mobile from v16 stays stacked.
   ========================================================= */

@media(min-width:768px){
  #footer .cy-newsletter.cy-newsletter-v15.cy-newsletter-v16.cy-newsletter-v17{
    display:grid!important;
    width:calc(100% - 48px)!important;
    max-width:1280px!important;
    grid-template-columns:minmax(300px,.85fr) minmax(460px,1.15fr)!important;
    gap:54px!important;
    align-items:center!important;
    margin:0 auto 36px!important;
    padding:30px 38px!important;
    text-align:left!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-intro{
    max-width:520px!important;
    margin:0!important;
    text-align:left!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-title{
    font-size:30px!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-copy{
    margin:0!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-formwrap{
    width:100%!important;
    max-width:620px!important;
    margin:0!important;
    justify-self:end!important;
  }

  #footer .cy-newsletter-v17 form{
    width:100%!important;
    margin:0!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-actions-v17{
    display:grid!important;
    width:100%!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:10px!important;
    align-items:center!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-email-v17{
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-submit-v17{
    min-width:145px!important;
    min-height:48px!important;
    margin:0!important;
  }

  #footer .cy-newsletter-v17 .consents,
  #footer .cy-newsletter-v17 .form-consents,
  #footer .cy-newsletter-v17 .consent,
  #footer .cy-newsletter-v17 small{
    margin-top:10px!important;
    text-align:center!important;
  }
}

@media(max-width:767px){
  #footer .cy-newsletter.cy-newsletter-v17{
    width:calc(100% - 28px)!important;
    margin-left:14px!important;
    margin-right:14px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-actions-v17{
    display:block!important;
    width:100%!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-email-v17,
  #footer .cy-newsletter-v17 .cy-newsletter-submit-v17{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  #footer .cy-newsletter-v17 .cy-newsletter-email-v17{
    margin:0 0 12px!important;
  }
}


/* =========================================================
   V18 – HOMEPAGE SHOP REVIEWS
   Keep only the store-review carousel as homepage social proof.
   Product ratings remain on product cards and product detail.
   ========================================================= */

.cy-shop-reviews-v18{
  position:relative!important;
  max-width:1240px!important;
  margin:0 auto 66px!important;
  padding:0 26px!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

.cy-shop-reviews-v18-head{
  max-width:700px;
  margin:54px auto 28px;
  text-align:center;
}

.cy-shop-reviews-v18-head__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-shop-reviews-v18-head__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-shop-review-card-v18{
  box-sizing:border-box!important;
  min-height:220px!important;
  padding:26px!important;
  border:1px solid #e6e1d8!important;
  border-radius:22px!important;
  background:#f7f4ee!important;
  color:#304236!important;
  box-shadow:none!important;
}

.cy-shop-review-card-v18::before,
.cy-shop-review-card-v18::after{
  box-shadow:none!important;
}

.cy-shop-review-card-v18,
.cy-shop-review-card-v18 a{
  color:#304236!important;
  text-decoration:none!important;
}

.cy-shop-review-stars-v18{
  display:block!important;
  margin:0 0 16px!important;
  color:#b78c48!important;
  font-size:17px!important;
  line-height:1!important;
  letter-spacing:2px!important;
}

.cy-shop-review-text-v18{
  color:#304236!important;
  font:400 17px/1.55 Georgia,"Times New Roman",serif!important;
}

.cy-shop-review-author-v18{
  color:#304236!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
}

.cy-shop-reviews-v18 button,
.cy-shop-reviews-v18 .slick-arrow,
.cy-shop-reviews-v18 .swiper-button-next,
.cy-shop-reviews-v18 .swiper-button-prev,
.cy-shop-reviews-v18 [class*="arrow"],
.cy-shop-reviews-v18 [class*="next"],
.cy-shop-reviews-v18 [class*="prev"]{
  z-index:20!important;
  cursor:pointer!important;
  color:#304236!important;
  pointer-events:auto!important;
}

.cy-shop-reviews-v18 .slick-arrow,
.cy-shop-reviews-v18 .swiper-button-next,
.cy-shop-reviews-v18 .swiper-button-prev{
  opacity:1!important;
}

@media(max-width:900px){
  .cy-shop-reviews-v18{
    margin-bottom:48px!important;
    padding:0 16px!important;
  }

  .cy-shop-reviews-v18-head{
    margin-top:42px;
    margin-bottom:24px;
  }

  .cy-shop-reviews-v18-head__title{
    font-size:29px;
  }

  .cy-shop-review-card-v18{
    min-height:0!important;
    padding:22px!important;
  }
}


/* =========================================================
   V19 – CYPRIANUS SHOP REVIEW CAROUSEL
   Custom presentation built from the native Shoptet shop-review data.
   ========================================================= */

.cy-shop-reviews-v19{
  max-width:1240px;
  margin:54px auto 68px;
  padding:0 34px;
  color:#304236;
  box-sizing:border-box;
}

.cy-shop-reviews-v19__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-shop-reviews-v19__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-shop-reviews-v19__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-shop-reviews-v19__carousel{
  position:relative;
}

.cy-shop-reviews-v19__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}

.cy-shop-reviews-v19__viewport::-webkit-scrollbar{
  display:none;
}

.cy-shop-reviews-v19__track{
  display:flex;
  gap:18px;
}

.cy-shop-review-v19{
  display:flex;
  min-width:calc((100% - 36px) / 3);
  min-height:230px;
  flex:0 0 calc((100% - 36px) / 3);
  flex-direction:column;
  box-sizing:border-box;
  padding:26px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236;
  text-decoration:none;
  scroll-snap-align:start;
}

.cy-shop-review-v19__stars{
  margin-bottom:18px;
  color:#b78c48;
  font-size:17px;
  line-height:1;
  letter-spacing:2px;
}

.cy-shop-review-v19__text{
  margin:0 0 24px;
  color:#304236;
  font:400 17px/1.55 Georgia,"Times New Roman",serif;
}

.cy-shop-review-v19__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
}

.cy-shop-review-v19__author{
  display:block;
  color:#304236;
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:700;
}

.cy-shop-reviews-v19__arrow{
  position:absolute;
  top:50%;
  z-index:5;
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  transform:translateY(-50%);
  border:1px solid #ddd7cc;
  border-radius:50%;
  background:#fff;
  color:#304236;
  box-shadow:0 8px 24px rgba(48,66,54,.10);
  cursor:pointer;
}

.cy-shop-reviews-v19__arrow--prev{left:-22px}
.cy-shop-reviews-v19__arrow--next{right:-22px}

.cy-shop-reviews-v19__arrow svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}

.cy-shop-reviews-v19__arrow[disabled]{
  opacity:.28;
  cursor:default;
}

.cy-shop-reviews-native-hidden-v19{
  display:none!important;
}

@media(max-width:900px){
  .cy-shop-reviews-v19{
    margin:42px auto 50px;
    padding:0 16px;
  }

  .cy-shop-reviews-v19__title{
    font-size:29px;
  }

  .cy-shop-review-v19{
    min-width:84vw;
    min-height:0;
    flex-basis:84vw;
    padding:22px;
  }

  .cy-shop-reviews-v19__arrow{
    display:none;
  }
}


/* =========================================================
   V20 – STORE REVIEWS FROM SHOPTET RATING DATA
   Own visual carousel; native review widget is used only as fallback/source.
   ========================================================= */

.cy-shop-reviews-v18-head,
.cy-native-reviews-v17__head,
.cy-shop-reviews-v19,
.cy-shop-reviews-v20-native-hidden{
  display:none!important;
}

.cy-shop-reviews-v20{
  max-width:1240px;
  margin:54px auto 68px;
  padding:0 34px;
  color:#304236;
  box-sizing:border-box;
}

.cy-shop-reviews-v20__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-shop-reviews-v20__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-shop-reviews-v20__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-shop-reviews-v20__carousel{
  position:relative;
}

.cy-shop-reviews-v20__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}

.cy-shop-reviews-v20__viewport::-webkit-scrollbar{
  display:none;
}

.cy-shop-reviews-v20__track{
  display:flex;
  gap:18px;
}

.cy-shop-review-v20{
  display:flex;
  min-width:calc((100% - 36px) / 3);
  min-height:230px;
  flex:0 0 calc((100% - 36px) / 3);
  flex-direction:column;
  box-sizing:border-box;
  padding:26px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236;
  scroll-snap-align:start;
}

.cy-shop-review-v20__stars{
  margin-bottom:18px;
  color:#b78c48;
  font-size:17px;
  line-height:1;
  letter-spacing:2px;
}

.cy-shop-review-v20__text{
  margin:0 0 24px;
  color:#304236;
  font:400 17px/1.55 Georgia,"Times New Roman",serif;
}

.cy-shop-review-v20__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
}

.cy-shop-review-v20__author{
  display:block;
  color:#304236;
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:700;
}

.cy-shop-review-v20__date{
  display:block;
  margin-top:4px;
  color:#7a817c;
  font-family:Arial,Helvetica,sans-serif;
  font-size:11.5px;
  line-height:1.4;
}

.cy-shop-reviews-v20__arrow{
  position:absolute;
  top:50%;
  z-index:6;
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  transform:translateY(-50%);
  border:1px solid #ddd7cc;
  border-radius:50%;
  background:#fff;
  color:#304236;
  box-shadow:0 8px 24px rgba(48,66,54,.10);
  cursor:pointer;
}

.cy-shop-reviews-v20__arrow--prev{left:-22px}
.cy-shop-reviews-v20__arrow--next{right:-22px}

.cy-shop-reviews-v20__arrow svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}

.cy-shop-reviews-v20__arrow[disabled]{
  opacity:.28;
  cursor:default;
}

@media(max-width:900px){
  .cy-shop-reviews-v20{
    margin:42px auto 50px;
    padding:0 16px;
  }

  .cy-shop-reviews-v20__title{
    font-size:29px;
  }

  .cy-shop-review-v20{
    min-width:84vw;
    min-height:0;
    flex-basis:84vw;
    padding:22px;
  }

  .cy-shop-reviews-v20__arrow{
    display:none;
  }
}


/* =========================================================
   V21 – STORE REVIEW CAROUSEL
   Reliable XHR data source; old native widget stays visible until data loads.
   ========================================================= */

.cy-shop-reviews-v21{
  max-width:1240px;
  margin:54px auto 68px;
  padding:0 34px;
  box-sizing:border-box;
  color:#304236;
}

.cy-shop-reviews-v21__head{
  max-width:700px;
  margin:0 auto 28px;
  text-align:center;
}

.cy-shop-reviews-v21__kicker{
  display:block;
  margin-bottom:8px;
  color:#a17e47;
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.cy-shop-reviews-v21__title{
  margin:0;
  color:#304236;
  font:400 34px/1.15 Georgia,"Times New Roman",serif;
  letter-spacing:-.02em;
}

.cy-shop-reviews-v21__carousel{
  position:relative;
}

.cy-shop-reviews-v21__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}

.cy-shop-reviews-v21__viewport::-webkit-scrollbar{
  display:none;
}

.cy-shop-reviews-v21__track{
  display:flex;
  gap:18px;
}

.cy-shop-review-v21{
  display:flex;
  min-width:calc((100% - 36px)/3);
  min-height:230px;
  flex:0 0 calc((100% - 36px)/3);
  flex-direction:column;
  box-sizing:border-box;
  padding:26px;
  border:1px solid #e6e1d8;
  border-radius:22px;
  background:#f7f4ee;
  color:#304236;
  scroll-snap-align:start;
}

.cy-shop-review-v21__stars{
  margin-bottom:18px;
  color:#b78c48;
  font-size:17px;
  line-height:1;
  letter-spacing:2px;
}

.cy-shop-review-v21__text{
  margin:0 0 24px;
  color:#304236;
  font:400 17px/1.55 Georgia,"Times New Roman",serif;
}

.cy-shop-review-v21__meta{
  margin-top:auto;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
}

.cy-shop-review-v21__author{
  display:block;
  color:#304236;
  font-family:Arial,Helvetica,sans-serif;
  font-size:13px;
  font-weight:700;
}

.cy-shop-review-v21__date{
  display:block;
  margin-top:4px;
  color:#7a817c;
  font-family:Arial,Helvetica,sans-serif;
  font-size:11.5px;
}

.cy-shop-reviews-v21__arrow{
  position:absolute;
  top:50%;
  z-index:6;
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  transform:translateY(-50%);
  border:1px solid #ddd7cc;
  border-radius:50%;
  background:#fff;
  color:#304236;
  box-shadow:0 8px 24px rgba(48,66,54,.10);
  cursor:pointer;
}

.cy-shop-reviews-v21__arrow--prev{left:-22px}
.cy-shop-reviews-v21__arrow--next{right:-22px}

.cy-shop-reviews-v21__arrow svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}

.cy-shop-reviews-v21__arrow[disabled]{
  opacity:.28;
  cursor:default;
}

.cy-shop-review-source-hidden-v21{
  display:none!important;
}

@media(max-width:900px){
  .cy-shop-reviews-v21{
    margin:42px auto 50px;
    padding:0 16px;
  }

  .cy-shop-reviews-v21__title{
    font-size:29px;
  }

  .cy-shop-review-v21{
    min-width:84vw;
    min-height:0;
    flex-basis:84vw;
    padding:22px;
  }

  .cy-shop-reviews-v21__arrow{
    display:none;
  }
}


/* =========================================================
   V22 – GLOBAL SYSTEM POLISH
   Header + product buy box + cart + footer.
   Previous product-card/category/homepage work is intentionally untouched.
   ========================================================= */

/* ---------- shared controls ---------- */
body.cy-v22 .btn,
body.cy-v22 button{
  -webkit-tap-highlight-color:transparent;
}

/* =========================================================
   V22 – HEADER
   ========================================================= */

#header.cy-header-v22{
  position:relative;
  z-index:100;
  background:#fff!important;
  border-bottom:1px solid #ece8df!important;
  box-shadow:0 8px 28px rgba(48,66,54,.035)!important;
}

#header.cy-header-v22 .container{
  max-width:1380px!important;
}

#header.cy-header-v22 .top-navigation-bar{
  min-height:34px!important;
  background:#f7f4ee!important;
  border:0!important;
  color:#667169!important;
  font-size:11.5px!important;
}

#header.cy-header-v22 .top-navigation-bar a{
  color:#5f6b62!important;
  text-decoration:none!important;
}

#header.cy-header-v22 .top-navigation-bar a:hover{
  color:#304236!important;
}

#header.cy-header-v22 .header-top,
#header.cy-header-v22 .header-bottom{
  background:#fff!important;
}

#header.cy-header-v22 .header-top{
  padding-top:14px!important;
  padding-bottom:14px!important;
}

#header.cy-header-v22 .site-name,
#header.cy-header-v22 .site-name a{
  display:flex!important;
  align-items:center!important;
}

#header.cy-header-v22 .site-name img{
  max-height:64px!important;
  width:auto!important;
  object-fit:contain!important;
}

#header.cy-header-v22 .search,
#header.cy-header-v22 .search-form{
  border:0!important;
  box-shadow:none!important;
}

#header.cy-header-v22 .search input[type="search"],
#header.cy-header-v22 .search input[type="text"],
#header.cy-header-v22 .search-form input[type="search"],
#header.cy-header-v22 .search-form input[type="text"]{
  min-height:46px!important;
  padding-left:18px!important;
  padding-right:48px!important;
  border:1px solid #ddd9cf!important;
  border-radius:999px!important;
  background:#faf9f6!important;
  color:#304236!important;
  box-shadow:none!important;
  font-size:13px!important;
}

#header.cy-header-v22 .search button,
#header.cy-header-v22 .search-form button{
  border:0!important;
  background:transparent!important;
  color:#304236!important;
  box-shadow:none!important;
}

#header.cy-header-v22 .navigation-in{
  min-height:48px!important;
  border-top:1px solid #f0ede6!important;
  background:#fff!important;
}

#header.cy-header-v22 .navigation-in > ul{
  justify-content:center!important;
  gap:2px!important;
}

#header.cy-header-v22 .navigation-in > ul > li > a{
  padding:15px 16px!important;
  color:#304236!important;
  font-size:12.5px!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
}

#header.cy-header-v22 .navigation-in > ul > li > a:hover,
#header.cy-header-v22 .navigation-in > ul > li.active > a{
  color:#9d7b45!important;
  background:transparent!important;
}

#header.cy-header-v22 .navigation-in ul ul{
  padding:10px!important;
  border:1px solid #e7e2d8!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 18px 50px rgba(48,66,54,.10)!important;
}

#header.cy-header-v22 .navigation-in ul ul a{
  padding:9px 12px!important;
  border-radius:10px!important;
  color:#4f5a52!important;
  font-size:12.5px!important;
}

#header.cy-header-v22 .navigation-in ul ul a:hover{
  background:#f7f4ee!important;
  color:#304236!important;
}

#header.cy-header-v22 .cart-count,
#header.cy-header-v22 .header-cart-count{
  background:#304236!important;
  color:#fff!important;
}

#header.cy-header-v22 .login,
#header.cy-header-v22 .cart,
#header.cy-header-v22 .header-cart,
#header.cy-header-v22 .header-login{
  color:#304236!important;
}

.cy-header-note-v22{
  display:flex;
  min-height:31px;
  align-items:center;
  justify-content:center;
  gap:26px;
  padding:7px 18px;
  border-bottom:1px solid #eee9e0;
  background:#fff;
  color:#68736b;
  font-size:11px;
  line-height:1.3;
  text-align:center;
}

.cy-header-note-v22 span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
}

.cy-header-note-v22 span::before{
  content:"";
  width:4px;
  height:4px;
  border-radius:50%;
  background:#b78c48;
}

@media(max-width:767px){
  #header.cy-header-v22{
    box-shadow:0 5px 20px rgba(48,66,54,.045)!important;
  }

  #header.cy-header-v22 .top-navigation-bar,
  #header.cy-header-v22 .navigation-in{
    display:none!important;
  }

  #header.cy-header-v22 .header-top{
    min-height:74px!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }

  #header.cy-header-v22 .site-name img{
    max-height:52px!important;
  }

  .cy-header-note-v22{
    min-height:28px;
    padding:6px 12px;
    font-size:10px;
  }

  .cy-header-note-v22 span:nth-child(n+2){
    display:none;
  }
}

/* =========================================================
   V22 – PRODUCT DETAIL BUY BOX
   ========================================================= */

body.cy-product-v22 .p-detail-inner,
body.cy-product-v22 .p-detail{
  align-items:flex-start!important;
}

body.cy-product-v22 .cy-buybox-v22{
  box-sizing:border-box!important;
  padding:28px 28px 24px!important;
  border:1px solid #e5dfd4!important;
  border-radius:24px!important;
  background:#f7f4ee!important;
  box-shadow:0 14px 40px rgba(48,66,54,.055)!important;
}

body.cy-product-v22 .cy-buybox-v22 h1,
body.cy-product-v22 .cy-buybox-v22 .p-detail-name,
body.cy-product-v22 .cy-buybox-v22 .p-name{
  margin-top:0!important;
  margin-bottom:12px!important;
  color:#304236!important;
  font:400 34px/1.12 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.025em!important;
}

body.cy-product-v22 .cy-buybox-v22 .stars-wrapper,
body.cy-product-v22 .cy-buybox-v22 .rating-wrapper,
body.cy-product-v22 .cy-buybox-v22 [class*="rating"]{
  margin-bottom:13px!important;
}

body.cy-product-v22 .cy-buybox-v22 .stars-wrapper,
body.cy-product-v22 .cy-buybox-v22 .stars-wrapper *,
body.cy-product-v22 .cy-buybox-v22 [class*="star"]{
  color:#b78c48!important;
}

body.cy-product-v22 .cy-buybox-v22 .price-final,
body.cy-product-v22 .cy-buybox-v22 .price-final-holder,
body.cy-product-v22 .cy-buybox-v22 .p-final-price-wrapper{
  color:#223228!important;
}

body.cy-product-v22 .cy-buybox-v22 .price-final,
body.cy-product-v22 .cy-buybox-v22 .price-final strong{
  font-size:30px!important;
  font-weight:700!important;
  line-height:1.1!important;
}

body.cy-product-v22 .cy-buybox-v22 .availability-value,
body.cy-product-v22 .cy-buybox-v22 .availability{
  color:#58705d!important;
  font-size:12.5px!important;
  font-weight:700!important;
}

body.cy-product-v22 .cy-buybox-v22 .availability-value::before,
body.cy-product-v22 .cy-buybox-v22 .availability::before{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:7px;
  border-radius:50%;
  background:#718b75;
  vertical-align:1px;
}

body.cy-product-v22 .cy-buybox-v22 .p-to-cart-block,
body.cy-product-v22 .cy-buybox-v22 .add-to-cart{
  display:grid!important;
  grid-template-columns:auto minmax(180px,1fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  margin-top:18px!important;
}

body.cy-product-v22 .cy-buybox-v22 .quantity,
body.cy-product-v22 .cy-buybox-v22 .amount{
  min-height:50px!important;
  overflow:hidden!important;
  border:1px solid #d8d3c8!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:none!important;
}

body.cy-product-v22 .cy-buybox-v22 .quantity input,
body.cy-product-v22 .cy-buybox-v22 .amount input{
  min-height:48px!important;
  border:0!important;
  background:#fff!important;
  box-shadow:none!important;
}

body.cy-product-v22 .cy-buybox-v22 .quantity button,
body.cy-product-v22 .cy-buybox-v22 .amount button{
  border:0!important;
  background:#fff!important;
  color:#304236!important;
}

body.cy-product-v22 .cy-buybox-v22 .add-to-cart-button,
body.cy-product-v22 .cy-buybox-v22 .btn-cart,
body.cy-product-v22 .cy-buybox-v22 button[type="submit"]{
  min-height:50px!important;
  padding:12px 22px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
}

body.cy-product-v22 .cy-buybox-v22 .add-to-cart-button:hover,
body.cy-product-v22 .cy-buybox-v22 .btn-cart:hover,
body.cy-product-v22 .cy-buybox-v22 button[type="submit"]:hover{
  background:#26372d!important;
  border-color:#26372d!important;
}

body.cy-product-v22 .cy-buybox-v22 a[href*="dopr"],
body.cy-product-v22 .cy-buybox-v22 a[href*="shipping"],
body.cy-product-v22 .cy-buybox-v22 .delivery-time{
  color:#304236!important;
  font-size:12px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

body.cy-product-v22 .cy-detail-tech-v22{
  display:none!important;
}

body.cy-product-v22 .cy-detail-brand-v22{
  display:block!important;
  margin:4px 0 16px!important;
  color:#7b827d!important;
  font-size:11.5px!important;
}

.cy-buybox-trust-v22{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #ddd7cc;
  color:#68736b;
  font-size:11.5px;
}

.cy-buybox-trust-v22 span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.cy-buybox-trust-v22 span::before{
  content:"✓";
  color:#a17e47;
  font-weight:700;
}

@media(max-width:767px){
  body.cy-product-v22 .cy-buybox-v22{
    padding:22px 18px 20px!important;
    border-radius:20px!important;
  }

  body.cy-product-v22 .cy-buybox-v22 h1,
  body.cy-product-v22 .cy-buybox-v22 .p-detail-name,
  body.cy-product-v22 .cy-buybox-v22 .p-name{
    font-size:28px!important;
  }

  body.cy-product-v22 .cy-buybox-v22 .p-to-cart-block,
  body.cy-product-v22 .cy-buybox-v22 .add-to-cart{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   V22 – CART
   ========================================================= */

body.cy-cart-v22 #content{
  max-width:1380px!important;
}

body.cy-cart-v22 #content > h1,
body.cy-cart-v22 .content-inner > h1{
  margin-bottom:10px!important;
  color:#304236!important;
  font:400 38px/1.15 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.025em!important;
}

.cy-cart-intro-v22{
  max-width:760px;
  margin:0 0 28px;
  color:#69736c;
  font-size:13px;
  line-height:1.6;
}

.cy-cart-trust-v22{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:0 0 28px;
}

.cy-cart-trust-v22 span{
  display:flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border:1px solid #e4dfd5;
  border-radius:16px;
  background:#f7f4ee;
  color:#304236;
  font-size:11.5px;
  font-weight:600;
  text-align:center;
}

body.cy-cart-v22 .cart-table,
body.cy-cart-v22 .cart-content,
body.cy-cart-v22 .cart-items{
  border:0!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
}

body.cy-cart-v22 .cart-table{
  overflow:hidden!important;
  border:1px solid #e7e2d8!important;
}

body.cy-cart-v22 .cart-table tr,
body.cy-cart-v22 .cart-item{
  border-color:#eeeae2!important;
}

body.cy-cart-v22 .cart-table img,
body.cy-cart-v22 .cart-item img{
  border-radius:14px!important;
}

body.cy-cart-v22 .cart-table a,
body.cy-cart-v22 .cart-item a{
  color:#304236!important;
}

body.cy-cart-v22 .cart-table .product-name,
body.cy-cart-v22 .cart-item .product-name{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:16px!important;
  font-weight:400!important;
}

body.cy-cart-v22 .cart-table .quantity,
body.cy-cart-v22 .cart-item .quantity{
  overflow:hidden!important;
  border:1px solid #d9d4c9!important;
  border-radius:999px!important;
  background:#fff!important;
}

body.cy-cart-v22 .cart-table .quantity input,
body.cy-cart-v22 .cart-item .quantity input,
body.cy-cart-v22 .cart-table .quantity button,
body.cy-cart-v22 .cart-item .quantity button{
  border:0!important;
  background:#fff!important;
  box-shadow:none!important;
}

body.cy-cart-v22 .cart-summary,
body.cy-cart-v22 .cart-summary-inner,
body.cy-cart-v22 .order-summary{
  border:1px solid #e4dfd5!important;
  border-radius:22px!important;
  background:#f7f4ee!important;
  box-shadow:none!important;
}

body.cy-cart-v22 .cart-summary-inner,
body.cy-cart-v22 .order-summary{
  padding:24px!important;
}

body.cy-cart-v22 .cart-summary .price,
body.cy-cart-v22 .cart-summary .price-final,
body.cy-cart-v22 .order-summary .price{
  color:#223228!important;
  font-weight:700!important;
}

body.cy-cart-v22 .next-step .btn,
body.cy-cart-v22 .next-step button,
body.cy-cart-v22 .checkout-box .btn-primary{
  min-height:50px!important;
  padding:12px 24px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
}

body.cy-cart-v22 .next-step .btn:hover,
body.cy-cart-v22 .next-step button:hover,
body.cy-cart-v22 .checkout-box .btn-primary:hover{
  background:#26372d!important;
  border-color:#26372d!important;
}

body.cy-cart-v22 .previous-step .btn,
body.cy-cart-v22 .previous-step a,
body.cy-cart-v22 .btn-back{
  min-height:46px!important;
  border:1px solid #cfd6cf!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#304236!important;
  box-shadow:none!important;
}

/* Empty cart */
body.cy-cart-empty-v22 #content,
body.cy-cart-empty-v22 .content-inner{
  text-align:center!important;
}

body.cy-cart-empty-v22 #content > h1,
body.cy-cart-empty-v22 .content-inner > h1{
  margin-top:30px!important;
}

body.cy-cart-empty-v22 .cart-empty,
body.cy-cart-empty-v22 .empty-cart{
  max-width:760px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.cy-cart-empty-v22 #content a:not(.btn),
body.cy-cart-empty-v22 .content-inner a:not(.btn){
  color:#304236!important;
}

@media(max-width:767px){
  .cy-cart-trust-v22{
    grid-template-columns:1fr!important;
    gap:8px;
  }

  body.cy-cart-v22 #content > h1,
  body.cy-cart-v22 .content-inner > h1{
    font-size:31px!important;
  }

  body.cy-cart-v22 .cart-summary-inner,
  body.cy-cart-v22 .order-summary{
    padding:20px!important;
  }
}

/* =========================================================
   V22 – FOOTER
   ========================================================= */

#footer.cy-footer-v22{
  margin-top:40px!important;
  padding-top:42px!important;
  border-top:1px solid #ebe7de!important;
  background:#fff!important;
  color:#5f6a62!important;
}

#footer.cy-footer-v22 .container{
  max-width:1380px!important;
}

#footer.cy-footer-v22 .footer-rows,
#footer.cy-footer-v22 .footer-row,
#footer.cy-footer-v22 .custom-footer{
  border:0!important;
  background:transparent!important;
}

#footer.cy-footer-v22 .footer-row{
  gap:24px!important;
}

#footer.cy-footer-v22 .footer-column,
#footer.cy-footer-v22 .footer-block,
#footer.cy-footer-v22 .box{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

#footer.cy-footer-v22 h2,
#footer.cy-footer-v22 h3,
#footer.cy-footer-v22 h4,
#footer.cy-footer-v22 .box-heading{
  margin:0 0 14px!important;
  color:#304236!important;
  font:400 20px/1.2 Georgia,"Times New Roman",serif!important;
}

#footer.cy-footer-v22 ul{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

#footer.cy-footer-v22 li{
  margin:0 0 9px!important;
}

#footer.cy-footer-v22 a{
  color:#667169!important;
  text-decoration:none!important;
  font-size:12.5px!important;
}

#footer.cy-footer-v22 a:hover{
  color:#304236!important;
}

#footer.cy-footer-v22 .contact-box,
#footer.cy-footer-v22 .box-contact,
#footer.cy-footer-v22 [class*="contact"]{
  color:#304236!important;
}

#footer.cy-footer-v22 .payments,
#footer.cy-footer-v22 [class*="payment"]{
  padding:16px!important;
  border:1px solid #e6e1d8!important;
  border-radius:16px!important;
  background:#faf9f6!important;
}

#footer.cy-footer-v22 .payments img,
#footer.cy-footer-v22 [class*="payment"] img{
  max-height:26px!important;
  width:auto!important;
  object-fit:contain!important;
}

#footer.cy-footer-v22 .cy-footer-search-hidden-v22{
  display:none!important;
}

#footer.cy-footer-v22 .footer-bottom{
  margin-top:30px!important;
  padding-top:20px!important;
  padding-bottom:20px!important;
  border-top:1px solid #ece8df!important;
  background:#fff!important;
}

#footer.cy-footer-v22 .cyprianus-custom-footer{
  padding-top:12px!important;
  padding-bottom:4px!important;
}

#footer.cy-footer-v22 .cyprianus-custom-footer img{
  max-width:62px!important;
}

#footer.cy-footer-v22 .cyprianus-custom-footer-copy{
  color:#304236!important;
  font-size:12.5px!important;
}

#footer.cy-footer-v22 .cyprianus-custom-footer-small{
  color:#879087!important;
  font-size:11px!important;
}

@media(max-width:767px){
  #footer.cy-footer-v22{
    padding-top:32px!important;
  }

  #footer.cy-footer-v22 .footer-row{
    display:block!important;
  }

  #footer.cy-footer-v22 .footer-column,
  #footer.cy-footer-v22 .footer-block,
  #footer.cy-footer-v22 .box{
    margin-bottom:26px!important;
    text-align:center!important;
  }

  #footer.cy-footer-v22 h2,
  #footer.cy-footer-v22 h3,
  #footer.cy-footer-v22 h4,
  #footer.cy-footer-v22 .box-heading{
    font-size:19px!important;
  }
}


/* =========================================================
   V23 – HEADER SAFE ROLLBACK
   Restore native Shoptet header/navigation. Other V22 work stays active.
   ========================================================= */

#header:not(.cy-header-v22){
  /* Intentionally no visual override: use the proven native header/navigation. */
}



/* =========================================================
   V26 – SAFE PRODUCT DETAIL REDESIGN
   Built from stable V23.
   IMPORTANT: no native Shoptet columns or gallery nodes are moved.
   ========================================================= */

body.cy-product-v26 .cy-native-product-title-v26{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Keep the original Shoptet left/right layout completely intact. */
body.cy-product-v26 .p-detail-inner{
  align-items:flex-start!important;
}

/* Main image */
body.cy-product-v26 .p-image,
body.cy-product-v26 .p-image-wrapper{
  overflow:hidden!important;
  border-radius:22px!important;
}

body.cy-product-v26 .p-image img,
body.cy-product-v26 .p-image-wrapper img{
  border-radius:22px!important;
}

/* Native thumbnails stay where Shoptet expects them. */
body.cy-product-v26 .p-thumbnails{
  gap:9px!important;
  margin-top:12px!important;
}

body.cy-product-v26 .p-thumbnails a{
  overflow:hidden!important;
  border:1px solid #e0dbd1!important;
  border-radius:12px!important;
  background:#fff!important;
}

body.cy-product-v26 .p-thumbnails a.active{
  border-color:#304236!important;
}

body.cy-product-v26 .p-thumbnails img{
  border-radius:11px!important;
}

/* ---------------- BUY BOX ---------------- */

body.cy-product-v26 .cy-buybox-v26{
  position:relative!important;
  box-sizing:border-box!important;
  padding:28px 28px 24px!important;
  border:1px solid #e5dfd4!important;
  border-radius:24px!important;
  background:#fffdf9!important;
  box-shadow:0 15px 42px rgba(48,66,54,.055)!important;
}

/* New visual title; native H1 remains in DOM for document structure. */
.cy-product-title-v26{
  max-width:90%;
  margin:0 0 13px!important;
  color:#304236;
  font:400 35px/1.1 Georgia,"Times New Roman",serif;
  letter-spacing:-.027em;
}

/* Flags */
body.cy-product-v26 .cy-buybox-v26 .flags{
  margin:0 0 9px!important;
}

body.cy-product-v26 .cy-buybox-v26 .flag{
  display:inline-flex!important;
  min-height:auto!important;
  align-items:center!important;
  padding:6px 9px!important;
  border:0!important;
  border-radius:999px!important;
  background:#e4ebe2!important;
  color:#4b6250!important;
  box-shadow:none!important;
  font-size:9.5px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

/* Rating */
body.cy-product-v26 .cy-buybox-v26 .stars-wrapper,
body.cy-product-v26 .cy-buybox-v26 .rating-wrapper{
  margin:0 0 12px!important;
  color:#b78c48!important;
}

body.cy-product-v26 .cy-buybox-v26 .stars-wrapper *,
body.cy-product-v26 .cy-buybox-v26 .rating-wrapper *,
body.cy-product-v26 .cy-buybox-v26 [class*="star"]{
  color:#b78c48!important;
}

body.cy-product-v26 .cy-buybox-v26 .stars-wrapper a,
body.cy-product-v26 .cy-buybox-v26 .rating-wrapper a{
  margin-left:8px!important;
  color:#a17e47!important;
  font-size:11.5px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* Brand */
body.cy-product-v26 .cy-buybox-v26 .cy-detail-brand-v22,
body.cy-product-v26 .cy-buybox-v26 a[href*="/znacka"],
body.cy-product-v26 .cy-buybox-v26 a[href*="/brand"]{
  display:block!important;
  margin:0 0 15px!important;
  color:#858b86!important;
  font-size:11.5px!important;
}

/* Price */
body.cy-product-v26 .cy-buybox-v26 .price-final,
body.cy-product-v26 .cy-buybox-v26 .price-final strong{
  color:#304236!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:36px!important;
  font-weight:700!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
}

/* Availability */
body.cy-product-v26 .cy-buybox-v26 .availability,
body.cy-product-v26 .cy-buybox-v26 .availability-value{
  margin:11px 0 18px!important;
  color:#5b785f!important;
  font-size:12.5px!important;
  font-weight:700!important;
}

body.cy-product-v26 .cy-buybox-v26 .availability::before,
body.cy-product-v26 .cy-buybox-v26 .availability-value::before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-right:7px;
  border-radius:50%;
  background:#78937d;
  vertical-align:1px;
}

/* Hide duplicated native text only; do not touch its column/container. */
body.cy-product-v26 .cy-buybox-v26 .cy-v26-old-delivery,
body.cy-product-v26 .cy-buybox-v26 .cy-v26-old-summary,
body.cy-product-v26 .cy-buybox-v26 .cy-v26-old-detail-link{
  display:none!important;
}

/* Delivery + shop availability */
.cy-buybox-services-v26{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  margin:0 0 20px;
  padding:14px 0;
  border-top:1px solid #e6e1d8;
  border-bottom:1px solid #e6e1d8;
}

.cy-buybox-service-v26{
  display:grid;
  grid-template-columns:30px 1fr;
  gap:10px;
  align-items:center;
  min-width:0;
  padding:0 14px;
}

.cy-buybox-service-v26:first-child{
  padding-left:0;
}

.cy-buybox-service-v26:last-child{
  padding-right:0;
  border-left:1px solid #dfdad0;
}

.cy-buybox-service-v26 svg{
  width:25px;
  height:25px;
  stroke:#53665a;
}

.cy-buybox-service-v26 strong{
  display:block;
  margin-bottom:2px;
  color:#536057;
  font-size:11.5px;
  font-weight:700;
}

.cy-buybox-service-v26 small{
  display:block;
  color:#7b827d;
  font-size:10.5px;
  line-height:1.35;
}

/* Quantity + CTA */
body.cy-product-v26 .cy-buybox-v26 .p-to-cart-block,
body.cy-product-v26 .cy-buybox-v26 .add-to-cart{
  display:grid!important;
  grid-template-columns:130px minmax(180px,1fr)!important;
  gap:10px!important;
  align-items:stretch!important;
  margin:0!important;
}

body.cy-product-v26 .cy-buybox-v26 .quantity,
body.cy-product-v26 .cy-buybox-v26 .amount{
  min-height:50px!important;
  overflow:hidden!important;
  border:1px solid #d8d3c8!important;
  border-radius:999px!important;
  background:#fff!important;
  box-shadow:none!important;
}

body.cy-product-v26 .cy-buybox-v26 .quantity input,
body.cy-product-v26 .cy-buybox-v26 .amount input,
body.cy-product-v26 .cy-buybox-v26 .quantity button,
body.cy-product-v26 .cy-buybox-v26 .amount button{
  min-height:48px!important;
  border:0!important;
  background:#fff!important;
  color:#304236!important;
  box-shadow:none!important;
}

body.cy-product-v26 .cy-buybox-v26 .add-to-cart-button,
body.cy-product-v26 .cy-buybox-v26 .btn-cart,
body.cy-product-v26 .cy-buybox-v26 button[type="submit"]{
  min-height:50px!important;
  padding:12px 20px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:700!important;
}

/* Compact light guarantee */
body.cy-product-v26 .cy-buybox-v26 #cyT{
  margin:16px 0 0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:15px!important;
  background:#edf1eb!important;
  box-shadow:none!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .top{
  display:grid!important;
  grid-template-columns:58px 1fr!important;
  background:transparent!important;
  color:#304236!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .seal{
  border:0!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .badge{
  width:38px!important;
  height:38px!important;
  border:0!important;
  background:#dbe5d8!important;
  color:#304236!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .badge b{
  font-size:20px!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .badge span,
body.cy-product-v26 .cy-buybox-v26 #cyT .k,
body.cy-product-v26 .cy-buybox-v26 #cyT .pay,
body.cy-product-v26 .cy-buybox-v26 #cyT .rating{
  display:none!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT .copy{
  padding:12px 14px 12px 0!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT h3{
  margin:0 0 3px!important;
  color:#304236!important;
  font:400 15px/1.25 Georgia,"Times New Roman",serif!important;
}

body.cy-product-v26 .cy-buybox-v26 #cyT p{
  color:#69756c!important;
  font-size:10.5px!important;
  line-height:1.45!important;
}

body.cy-product-v26 .cy-buybox-v26 .cy-buybox-trust-v22{
  display:none!important;
}

/* Three benefit icons */
.cy-product-benefits-v26{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:18px 0 0;
}

.cy-product-benefit-v26{
  min-width:0;
  text-align:center;
  color:#4f5c53;
}

.cy-product-benefit-v26__icon{
  display:flex;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  margin:0 auto 8px;
  border-radius:50%;
  background:#eef2ec;
  color:#53665a;
}

.cy-product-benefit-v26__icon svg{
  width:24px;
  height:24px;
  stroke:currentColor;
}

.cy-product-benefit-v26 strong{
  display:block;
  color:#536057;
  font-size:10.8px;
  font-weight:600;
  line-height:1.35;
}

/* Ask / share */
body.cy-product-v26 .cy-buybox-v26 .p-detail-info-share,
body.cy-product-v26 .cy-buybox-v26 .social-buttons-wrapper,
body.cy-product-v26 .cy-buybox-v26 [class*="social"]{
  margin-top:18px!important;
}

/* Mobile: native Shoptet stacking remains; only the panel adapts. */
@media(max-width:767px){
  body.cy-product-v26 .cy-buybox-v26{
    padding:22px 18px 20px!important;
    border-radius:20px!important;
  }

  .cy-product-title-v26{
    max-width:none;
    font-size:29px;
  }

  .cy-buybox-services-v26{
    grid-template-columns:1fr;
    gap:12px;
  }

  .cy-buybox-service-v26,
  .cy-buybox-service-v26:first-child,
  .cy-buybox-service-v26:last-child{
    padding:0!important;
    border-left:0!important;
  }

  .cy-buybox-service-v26:last-child{
    padding-top:12px!important;
    border-top:1px solid #e5e0d7!important;
  }

  body.cy-product-v26 .cy-buybox-v26 .p-to-cart-block,
  body.cy-product-v26 .cy-buybox-v26 .add-to-cart{
    grid-template-columns:1fr!important;
  }

  .cy-product-benefit-v26__icon{
    width:42px;
    height:42px;
  }

  .cy-product-benefit-v26 strong{
    font-size:10px;
  }
}

/* =========================================================
   V28 – SAFE ROLLBACK TO STABLE V26
   Restores the last known-good product detail layout.
   ========================================================= */


/* =========================================================
   V29 – PRODUCT DETAIL 1:1 ALIGNMENT
   Built from stable V28/V26. Uses exact Shoptet product selectors only.
   ========================================================= */

/* ---------------- DESKTOP HERO PROPORTIONS ---------------- */

@media(min-width:992px){
  body.cy-product-v29 .p-detail-inner{
    display:flex!important;
    align-items:flex-start!important;
    gap:20px!important;
  }

  body.cy-product-v29 .p-detail-inner > .p-image-wrapper{
    display:grid!important;
    width:calc(56% - 10px)!important;
    max-width:calc(56% - 10px)!important;
    flex:0 0 calc(56% - 10px)!important;
    grid-template-columns:82px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    column-gap:14px!important;
    align-items:start!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body.cy-product-v29 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v29 .p-detail-inner > .p-detail-info,
  body.cy-product-v29 .p-detail-inner > .p-info{
    width:calc(44% - 10px)!important;
    max-width:calc(44% - 10px)!important;
    flex:0 0 calc(44% - 10px)!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
  }

  /* Main image stays native, only gets the right grid cell. */
  body.cy-product-v29 .p-image-wrapper > .p-main-image,
  body.cy-product-v29 .p-image-wrapper > .p-image{
    grid-column:2!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }

  body.cy-product-v29 .p-image-wrapper > .p-main-image img,
  body.cy-product-v29 .p-image-wrapper > .p-image img,
  body.cy-product-v29 .p-image-wrapper .p-detail-image{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    border-radius:22px!important;
    object-fit:cover!important;
  }

  /* Native thumbnails become the left rail. */
  body.cy-product-v29 .p-image-wrapper > .p-thumbnails-wrapper,
  body.cy-product-v29 .p-image-wrapper > .p-thumbnails{
    grid-column:1!important;
    grid-row:1!important;
    width:82px!important;
    max-width:82px!important;
    min-width:82px!important;
    margin:0!important;
    padding:0!important;
  }

  body.cy-product-v29 .p-image-wrapper .p-thumbnails{
    display:flex!important;
    width:82px!important;
    max-width:82px!important;
    max-height:650px!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    margin:0!important;
    padding:0!important;
    scrollbar-width:none!important;
  }

  body.cy-product-v29 .p-image-wrapper .p-thumbnails::-webkit-scrollbar{
    display:none!important;
  }

  body.cy-product-v29 .p-image-wrapper .p-thumbnails a{
    display:block!important;
    width:78px!important;
    height:78px!important;
    min-width:78px!important;
    min-height:78px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid #e1ddd4!important;
    border-radius:13px!important;
    background:#fff!important;
  }

  body.cy-product-v29 .p-image-wrapper .p-thumbnails a.active{
    border-color:#304236!important;
  }

  body.cy-product-v29 .p-image-wrapper .p-thumbnails img{
    width:100%!important;
    height:100%!important;
    margin:0!important;
    object-fit:cover!important;
    border-radius:12px!important;
  }
}

/* ---------------- BUY BOX ---------------- */

body.cy-product-v29 .cy-buybox-v26{
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  flex-direction:column!important;
  align-self:flex-start!important;
  justify-content:flex-start!important;
  box-sizing:border-box!important;
  padding:24px 26px 22px!important;
  border:1px solid #e5dfd4!important;
  border-radius:24px!important;
  background:#fffdf9!important;
  box-shadow:0 14px 40px rgba(48,66,54,.05)!important;
}

body.cy-product-v29 .cy-buybox-v26 > *{
  flex:0 0 auto!important;
}

/* Exact visual sequence */
body.cy-product-v29 .cy29-badges{order:5!important}
body.cy-product-v29 .cy29-title{order:10!important}
body.cy-product-v29 .cy29-rating{order:20!important}
body.cy-product-v29 .cy29-brand{order:30!important}
body.cy-product-v29 .cy29-price{order:40!important}
body.cy-product-v29 .cy29-stock{order:50!important}
body.cy-product-v29 .cy29-services{order:60!important}
body.cy-product-v29 .cy29-cart{order:70!important}
body.cy-product-v29 .cy29-guarantee{order:80!important}
body.cy-product-v29 .cy29-benefits{order:90!important}
body.cy-product-v29 .cy29-actions{order:100!important}

/* Only real Shoptet flags are mirrored here. */
.cy-buybox-flags-v29{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 10px;
}

.cy-buybox-flags-v29 span{
  display:inline-flex;
  align-items:center;
  padding:6px 9px;
  border-radius:999px;
  background:#dfe8de;
  color:#4b6250;
  font-size:9px;
  font-weight:700;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* Title */
body.cy-product-v29 .cy-buybox-v26 .cy-product-title-v26{
  position:static!important;
  display:block!important;
  width:100%!important;
  max-width:92%!important;
  margin:0 0 10px!important;
  padding:0!important;
  color:#304236!important;
  font:400 31px/1.08 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.026em!important;
}

/* Rating */
body.cy-product-v29 .cy29-rating{
  margin:0 0 10px!important;
}

body.cy-product-v29 .cy29-rating,
body.cy-product-v29 .cy29-rating *,
body.cy-product-v29 .cy29-rating *::before{
  color:#b78c48!important;
}

body.cy-product-v29 .cy29-rating a{
  margin-left:8px!important;
  color:#a17e47!important;
  font-size:11px!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* Brand */
body.cy-product-v29 .cy29-brand{
  margin:0 0 14px!important;
  color:#858b86!important;
  font-size:11px!important;
}

/* Price */
body.cy-product-v29 .cy29-price{
  margin:0!important;
}

body.cy-product-v29 .cy29-price .price-final,
body.cy-product-v29 .cy29-price.price-final,
body.cy-product-v29 .cy29-price .price-final strong{
  color:#304236!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:34px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
}

/* Stock */
body.cy-product-v29 .cy29-stock{
  margin:9px 0 15px!important;
  color:#5b785f!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* Services */
body.cy-product-v29 .cy-buybox-services-v26{
  margin:0 0 16px!important;
  padding:12px 0!important;
}

body.cy-product-v29 .cy-buybox-service-v26{
  grid-template-columns:26px 1fr!important;
  gap:8px!important;
  padding:0 12px!important;
}

body.cy-product-v29 .cy-buybox-service-v26:first-child{
  padding-left:0!important;
}

body.cy-product-v29 .cy-buybox-service-v26:last-child{
  padding-right:0!important;
}

body.cy-product-v29 .cy-buybox-service-v26 svg{
  width:23px!important;
  height:23px!important;
}

body.cy-product-v29 .cy-buybox-service-v26 strong{
  font-size:10.8px!important;
}

body.cy-product-v29 .cy-buybox-service-v26 small{
  font-size:9.8px!important;
  line-height:1.3!important;
}

/* Quantity + CTA */
body.cy-product-v29 .cy29-cart{
  margin:0!important;
}

body.cy-product-v29 .cy29-cart.p-to-cart-block,
body.cy-product-v29 .cy29-cart.add-to-cart,
body.cy-product-v29 .cy29-cart .p-to-cart-block,
body.cy-product-v29 .cy29-cart .add-to-cart{
  display:grid!important;
  grid-template-columns:126px minmax(190px,1fr)!important;
  gap:10px!important;
  align-items:stretch!important;
}

body.cy-product-v29 .cy-buybox-v26 .quantity,
body.cy-product-v29 .cy-buybox-v26 .amount,
body.cy-product-v29 .cy-buybox-v26 .add-to-cart-button,
body.cy-product-v29 .cy-buybox-v26 .btn-cart,
body.cy-product-v29 .cy-buybox-v26 button[type="submit"]{
  min-height:48px!important;
}

body.cy-product-v29 .cy-buybox-v26 .add-to-cart-button,
body.cy-product-v29 .cy-buybox-v26 .btn-cart,
body.cy-product-v29 .cy-buybox-v26 button[type="submit"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

.cy-cart-bag-v29{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}

.cy-cart-bag-v29 svg{
  width:18px;
  height:18px;
  stroke:currentColor;
}

/* Guarantee */
body.cy-product-v29 .cy-buybox-v26 #cyT{
  margin:15px 0 0!important;
}

body.cy-product-v29 .cy-buybox-v26 #cyT .top{
  grid-template-columns:54px 1fr!important;
}

body.cy-product-v29 .cy-buybox-v26 #cyT .copy{
  padding:11px 13px 11px 0!important;
}

body.cy-product-v29 .cy-buybox-v26 #cyT h3{
  font-size:14.5px!important;
}

body.cy-product-v29 .cy-buybox-v26 #cyT p{
  font-size:10px!important;
}

/* Benefits */
body.cy-product-v29 .cy-product-benefits-v26{
  gap:10px!important;
  margin:16px 0 0!important;
}

body.cy-product-v29 .cy-product-benefit-v26__icon{
  width:45px!important;
  height:45px!important;
  margin-bottom:7px!important;
}

body.cy-product-v29 .cy-product-benefit-v26 strong{
  font-size:10.3px!important;
  line-height:1.3!important;
}

/* Ask/share row */
body.cy-product-v29 .cy29-actions{
  margin-top:16px!important;
}

/* Avoid the large empty bottom created by native stretch/order. */
body.cy-product-v29 .cy-buybox-v26::after{
  content:none!important;
  display:none!important;
}

/* ---------------- RESPONSIVE ---------------- */

@media(max-width:991px){
  body.cy-product-v29 .p-detail-inner{
    display:block!important;
  }

  body.cy-product-v29 .p-detail-inner > .p-image-wrapper,
  body.cy-product-v29 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v29 .p-detail-inner > .p-detail-info,
  body.cy-product-v29 .p-detail-inner > .p-info{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    float:none!important;
    margin:0!important;
  }

  body.cy-product-v29 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v29 .p-detail-inner > .p-detail-info,
  body.cy-product-v29 .p-detail-inner > .p-info{
    margin-top:18px!important;
  }

  /* On tablet/mobile keep the proven native horizontal thumbnail strip. */
  body.cy-product-v29 .p-image-wrapper{
    display:block!important;
  }
}

@media(max-width:767px){
  body.cy-product-v29 .cy-buybox-v26{
    padding:21px 18px 19px!important;
  }

  body.cy-product-v29 .cy-buybox-v26 .cy-product-title-v26{
    max-width:none!important;
    font-size:28px!important;
  }

  body.cy-product-v29 .cy29-cart.p-to-cart-block,
  body.cy-product-v29 .cy29-cart.add-to-cart,
  body.cy-product-v29 .cy29-cart .p-to-cart-block,
  body.cy-product-v29 .cy29-cart .add-to-cart{
    grid-template-columns:118px minmax(0,1fr)!important;
  }
}

@media(max-width:480px){
  body.cy-product-v29 .cy-buybox-services-v26{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  body.cy-product-v29 .cy-buybox-service-v26,
  body.cy-product-v29 .cy-buybox-service-v26:first-child,
  body.cy-product-v29 .cy-buybox-service-v26:last-child{
    padding:0!important;
    border-left:0!important;
  }

  body.cy-product-v29 .cy-buybox-service-v26:last-child{
    padding-top:10px!important;
    border-top:1px solid #e5e0d7!important;
  }

  body.cy-product-v29 .cy29-cart.p-to-cart-block,
  body.cy-product-v29 .cy29-cart.add-to-cart,
  body.cy-product-v29 .cy29-cart .p-to-cart-block,
  body.cy-product-v29 .cy29-cart .add-to-cart{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V30 – PRODUCT DETAIL FINISHING PASS
   Fine-tuning only. Keeps the working V29 structure intact.
   ========================================================= */

/* --- REAL GAP BETWEEN GALLERY AND BUY BOX --- */
@media(min-width:992px){
  body.cy-product-v30 .p-detail-inner > .p-image-wrapper{
    box-sizing:border-box!important;
    padding-right:10px!important;
  }

  body.cy-product-v30 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v30 .p-detail-inner > .p-detail-info,
  body.cy-product-v30 .p-detail-inner > .p-info{
    box-sizing:border-box!important;
    padding-left:10px!important;
  }

  /* If the template keeps thumbnails under the image, make the gap intentional. */
  body.cy-product-v30 .p-image-wrapper > .p-thumbnails-wrapper,
  body.cy-product-v30 .p-image-wrapper > .p-thumbnails{
    margin-top:14px!important;
  }

  /* If V29 successfully places thumbnails vertically, no top margin is needed. */
  body.cy-product-v30 .p-image-wrapper{
    row-gap:0!important;
  }

  body.cy-product-v30 .p-image-wrapper > .p-thumbnails-wrapper[style*="grid"],
  body.cy-product-v30 .p-image-wrapper > .p-thumbnails[style*="grid"]{
    margin-top:0!important;
  }
}

/* --- INVALID / UNRELATED BADGES --- */
body.cy-product-v30 .cy-buybox-flags-v29:empty{
  display:none!important;
}

/* --- TITLE / RATING / BRAND RHYTHM --- */
body.cy-product-v30 .cy-buybox-v26 .cy-product-title-v26{
  margin-bottom:11px!important;
}

body.cy-product-v30 .cy29-rating{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  min-height:22px!important;
  margin:0 0 11px!important;
  line-height:1!important;
}

body.cy-product-v30 .cy29-rating .stars-wrapper,
body.cy-product-v30 .cy29-rating .rating-wrapper,
body.cy-product-v30 .cy29-rating > *{
  display:inline-flex!important;
  align-items:center!important;
  margin-top:0!important;
  margin-bottom:0!important;
  vertical-align:middle!important;
  line-height:1!important;
}

body.cy-product-v30 .cy29-rating a{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  color:#a17e47!important;
  font-size:11.5px!important;
  line-height:1!important;
  vertical-align:middle!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

body.cy-product-v30 .cy29-rating [class*="star"]{
  line-height:1!important;
}

/* Brand exactly as a quiet metadata line, not a CTA. */
body.cy-product-v30 .cy29-brand{
  display:block!important;
  margin:0 0 16px!important;
  color:#858b86!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1.35!important;
  text-decoration:none!important;
}

body.cy-product-v30 .cy29-brand a,
body.cy-product-v30 .cy29-brand a:visited{
  color:#858b86!important;
  text-decoration:none!important;
  border:0!important;
}

/* --- STORE AVAILABILITY: ONE LINE ONLY --- */
body.cy-product-v30 .cy-buybox-service-v26:last-child small{
  display:none!important;
}

body.cy-product-v30 .cy-buybox-service-v26:last-child{
  align-items:center!important;
}

body.cy-product-v30 .cy-buybox-service-v26:last-child strong{
  margin:0!important;
}

/* --- QUANTITY + CTA MATCH THE REFERENCE --- */
body.cy-product-v30 .cy29-cart.p-to-cart-block,
body.cy-product-v30 .cy29-cart.add-to-cart,
body.cy-product-v30 .cy29-cart .p-to-cart-block,
body.cy-product-v30 .cy29-cart .add-to-cart{
  display:grid!important;
  grid-template-columns:126px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
}

body.cy-product-v30 .cy-buybox-v26 .quantity,
body.cy-product-v30 .cy-buybox-v26 .amount{
  width:100%!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
  border:1px solid #d9d3c7!important;
  border-radius:999px!important;
  box-sizing:border-box!important;
}

body.cy-product-v30 .cy-buybox-v26 .quantity input,
body.cy-product-v30 .cy-buybox-v26 .amount input,
body.cy-product-v30 .cy-buybox-v26 .quantity button,
body.cy-product-v30 .cy-buybox-v26 .amount button{
  height:48px!important;
  min-height:48px!important;
}

body.cy-product-v30 .cy-buybox-v26 .add-to-cart-button,
body.cy-product-v30 .cy-buybox-v26 .btn-cart,
body.cy-product-v30 .cy-buybox-v26 button[type="submit"]{
  width:100%!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 22px!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-sizing:border-box!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.005em!important;
  text-transform:none!important;
}

/* --- GUARANTEE SLIGHTLY TIGHTER --- */
body.cy-product-v30 .cy-buybox-v26 #cyT{
  margin-top:16px!important;
}

/* --- BIGGER 3 BENEFITS, CLOSER TO THE PROPOSAL --- */
body.cy-product-v30 .cy-product-benefits-v26{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px 0 0!important;
  padding:0 4px!important;
}

body.cy-product-v30 .cy-product-benefit-v26__icon{
  width:56px!important;
  height:56px!important;
  margin:0 auto 10px!important;
}

body.cy-product-v30 .cy-product-benefit-v26__icon svg{
  width:28px!important;
  height:28px!important;
}

body.cy-product-v30 .cy-product-benefit-v26 strong{
  max-width:160px!important;
  margin:0 auto!important;
  color:#536057!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.35!important;
}

/* --- REFERENCE DOES NOT USE ASK / SHARE IN THIS BUY BOX --- */
body.cy-product-v30 .cy29-actions,
body.cy-product-v30 .p-detail-info-share,
body.cy-product-v30 .social-buttons-wrapper{
  display:none!important;
}

/* --- MOBILE REMAINS COMPACT --- */
@media(max-width:767px){
  body.cy-product-v30 .cy-product-benefits-v26{
    gap:8px!important;
    padding:0!important;
  }

  body.cy-product-v30 .cy-product-benefit-v26__icon{
    width:48px!important;
    height:48px!important;
  }

  body.cy-product-v30 .cy-product-benefit-v26__icon svg{
    width:24px!important;
    height:24px!important;
  }

  body.cy-product-v30 .cy-product-benefit-v26 strong{
    font-size:10.5px!important;
  }
}


/* =========================================================
   V31 – PRODUCT DETAIL MICRO FINISH
   Gap, quantity background, duplicate "Nehodnotené".
   ========================================================= */

/* More breathing room between main gallery and buy box. */
@media(min-width:992px){
  body.cy-product-v31 .p-detail-inner{
    gap:28px!important;
  }

  body.cy-product-v31 .p-detail-inner > .p-image-wrapper{
    width:calc(56% - 14px)!important;
    max-width:calc(56% - 14px)!important;
    flex-basis:calc(56% - 14px)!important;
    padding-right:0!important;
  }

  body.cy-product-v31 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v31 .p-detail-inner > .p-detail-info,
  body.cy-product-v31 .p-detail-inner > .p-info{
    width:calc(44% - 14px)!important;
    max-width:calc(44% - 14px)!important;
    flex-basis:calc(44% - 14px)!important;
    padding-left:0!important;
  }

  /* Clear vertical separation from the main visual if thumbnails sit underneath. */
  body.cy-product-v31 .p-image-wrapper > .p-thumbnails-wrapper,
  body.cy-product-v31 .p-image-wrapper > .p-thumbnails{
    margin-top:18px!important;
  }

  /* If thumbnails are in the vertical rail, keep their top aligned with image. */
  body.cy-product-v31 .p-image-wrapper{
    column-gap:16px!important;
  }

  body.cy-product-v31 .p-image-wrapper > .p-thumbnails-wrapper{
    align-self:start!important;
  }
}

/* Quantity uses the same surface as the buy box: border only, no white insert. */
body.cy-product-v31 .cy-buybox-v26 .quantity,
body.cy-product-v31 .cy-buybox-v26 .amount{
  background:#fffdf9!important;
  border-color:#d8d2c6!important;
}

body.cy-product-v31 .cy-buybox-v26 .quantity input,
body.cy-product-v31 .cy-buybox-v26 .amount input,
body.cy-product-v31 .cy-buybox-v26 .quantity button,
body.cy-product-v31 .cy-buybox-v26 .amount button{
  background:#fffdf9!important;
}

/* Duplicate no-rating labels are hidden by JS; this is the safety class. */
body.cy-product-v31 .cy-rating-duplicate-v31{
  display:none!important;
}


/* =========================================================
   V32 – PRODUCT DETAIL SPACING + TITLE + RATING CLEANUP
   Finishing patch over stable V31 only.
   ========================================================= */

/* Proper page gutters + centered hero. */
@media(min-width:992px){
  body.cy-product-v32 .p-detail-inner{
    width:100%!important;
    max-width:1600px!important;
    box-sizing:border-box!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:26px!important;
    padding-right:26px!important;
    gap:30px!important;
  }

  body.cy-product-v32 .p-detail-inner > .p-image-wrapper{
    width:calc(56% - 15px)!important;
    max-width:calc(56% - 15px)!important;
    flex-basis:calc(56% - 15px)!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  body.cy-product-v32 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v32 .p-detail-inner > .p-detail-info,
  body.cy-product-v32 .p-detail-inner > .p-info{
    width:calc(44% - 15px)!important;
    max-width:calc(44% - 15px)!important;
    flex-basis:calc(44% - 15px)!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Main image -> thumbnail separation when thumbnails are below. */
  body.cy-product-v32 .p-image-wrapper > .p-thumbnails-wrapper,
  body.cy-product-v32 .p-image-wrapper > .p-thumbnails{
    margin-top:20px!important;
  }

  /* If the template is using our vertical rail, separation is horizontal instead. */
  body.cy-product-v32 .p-image-wrapper{
    column-gap:18px!important;
  }
}

/* Remove native wrapper spacing around our cloned visual title. */
body.cy-product-v32 .cy29-title{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
  border:0!important;
}

body.cy-product-v32 .cy29-title > *{
  margin-top:0!important;
}

/* Badge and title share exactly the same left edge. */
body.cy-product-v32 .cy-buybox-flags-v29,
body.cy-product-v32 .cy-product-title-v26{
  margin-left:0!important;
  padding-left:0!important;
}

/* Tight editorial relationship: badge -> title. */
body.cy-product-v32 .cy-buybox-flags-v29{
  margin-top:0!important;
  margin-bottom:14px!important;
}

body.cy-product-v32 .cy-buybox-v26 .cy-product-title-v26{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:auto!important;
  margin:0 0 12px!important;
  padding:0!important;
  overflow:visible!important;
  color:#304236!important;
  font:400 31px/1.08 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.026em!important;
  -webkit-line-clamp:unset!important;
}

/* JS creates two balanced visual lines. */
.cy-product-title-v32__line{
  display:block;
  width:100%;
}

.cy-product-title-v32__line + .cy-product-title-v32__line{
  margin-top:0;
}

/* Robust duplicate rating cleanup. */
body.cy-product-v32 .cy-rating-duplicate-v32{
  display:none!important;
}

@media(max-width:991px){
  body.cy-product-v32 .p-detail-inner{
    box-sizing:border-box!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

@media(max-width:767px){
  body.cy-product-v32 .cy-buybox-v26 .cy-product-title-v26{
    font-size:28px!important;
  }
}


/* =========================================================
   V33 – PRODUCT DETAIL TRUE FINISH
   Independent panel gutters + badge/title block + rating duplicate fix.
   ========================================================= */

/* Real visible breathing room around the right card, independent of native columns. */
@media(min-width:992px){
  body.cy-product-v33 .cy-buybox-v26{
    width:calc(100% - 42px)!important;
    max-width:calc(100% - 42px)!important;
    margin-left:20px!important;
    margin-right:22px!important;
    box-sizing:border-box!important;
  }
}

/* Our own badge + title group: both are synthetic elements, safe to group. */
.cy-title-block-v33{
  order:5!important;
  display:block!important;
  width:100%!important;
  margin:18px 0 0!important;
  padding:0!important;
  min-height:0!important;
  height:auto!important;
}

body.cy-product-v33 .cy-title-block-v33 .cy-buybox-flags-v29{
  display:flex!important;
  width:100%!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin:0 0 18px!important;
  padding:0!important;
}

body.cy-product-v33 .cy-title-block-v33 .cy-product-title-v26{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0 0 13px!important;
  padding:0!important;
  position:static!important;
  transform:none!important;
  color:#304236!important;
  font:400 31px/1.17 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.026em!important;
}

/* Slightly more air between the two deliberately balanced lines. */
body.cy-product-v33 .cy-product-title-v32__line{
  display:block!important;
  width:100%!important;
  line-height:1.17!important;
}

body.cy-product-v33 .cy-product-title-v32__line + .cy-product-title-v32__line{
  margin-top:2px!important;
}

/* The old direct-child order classes must not create phantom space
   after badge/title are grouped into the V33 title block. */
body.cy-product-v33 .cy-title-block-v33.cy29-badges,
body.cy-product-v33 .cy-title-block-v33.cy29-title{
  order:5!important;
}

/* Hide only the redundant standalone no-rating link on the right. */
body.cy-product-v33 .cy-hide-no-rating-link-v33{
  display:none!important;
}

/* Rating row remains compact after removal of the duplicate link. */
body.cy-product-v33 .cy29-rating{
  gap:10px!important;
  margin-top:0!important;
  margin-bottom:12px!important;
}

/* Tablet/mobile: panel should use the normal page gutter, not desktop margins. */
@media(max-width:991px){
  body.cy-product-v33 .cy-buybox-v26{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .cy-title-block-v33{
    margin-top:10px!important;
  }
}

@media(max-width:767px){
  body.cy-product-v33 .cy-title-block-v33 .cy-product-title-v26{
    font-size:28px!important;
    line-height:1.17!important;
  }
}


/* =========================================================
   V34 – PRODUCT DETAIL HARD FINISH
   Deterministic synthetic header + deterministic no-rating label.
   ========================================================= */

/* Real visual inset without touching the native flex/grid calculations. */
@media(min-width:992px){
  body.cy-product-v34 .cy-buybox-v26{
    width:calc(100% - 36px)!important;
    max-width:calc(100% - 36px)!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:translateX(18px)!important;
    box-sizing:border-box!important;
  }
}

/* Hide the previous synthetic badge/title implementations. */
body.cy-product-v34 .cy-title-block-v33,
body.cy-product-v34 .cy-buybox-flags-v29:not(.cy-v34-keep),
body.cy-product-v34 .cy-product-title-v26:not(.cy-v34-keep){
  display:none!important;
}

/* One controlled top block. */
.cy-product-head-v34{
  order:1!important;
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:0 0 0!important;
  padding:8px 0 0!important;
  box-sizing:border-box!important;
}

.cy-product-head-v34__badges{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  width:100%;
  margin:0 0 16px;
  padding:0;
}

.cy-product-head-v34__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  padding:6px 10px;
  border-radius:999px;
  background:#dfe8de;
  color:#4b6250;
  font-family:Arial,Helvetica,sans-serif;
  font-size:9.5px;
  font-weight:700;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.cy-product-head-v34__title{
  display:block;
  width:100%;
  margin:0 0 13px;
  padding:0;
  color:#304236;
  font:400 31px/1.18 Georgia,"Times New Roman",serif;
  letter-spacing:-.026em;
}

.cy-product-head-v34__line{
  display:block;
  width:100%;
}

.cy-product-head-v34__line + .cy-product-head-v34__line{
  margin-top:3px;
}

/* Exact one no-rating label. */
body.cy-product-v34 .cy-rating-label-v34{
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
}

body.cy-product-v34 .cy-no-rating-hidden-v34{
  display:none!important;
}

/* Rating row stays on one baseline. */
body.cy-product-v34 .cy29-rating,
body.cy-product-v34 .stars-wrapper,
body.cy-product-v34 .rating-wrapper{
  align-items:center!important;
}

@media(max-width:991px){
  body.cy-product-v34 .cy-buybox-v26{
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
  }

  .cy-product-head-v34{
    padding-top:5px!important;
  }
}

@media(max-width:767px){
  .cy-product-head-v34__title{
    font-size:28px;
    line-height:1.18;
  }
}


/* =========================================================
   V35 – PRODUCT DETAIL FINAL DUPLICATE CLEANUP
   Keep V34 spacing exactly as-is.
   Fix only duplicated badges and duplicated rating label.
   ========================================================= */

/* Keep only our controlled V34 badges.
   Native Shoptet flags inside the buy box caused the duplicated first row. */
body.cy-product-v35 .cy-buybox-v26 .flags,
body.cy-product-v35 .cy-buybox-v26 .flag,
body.cy-product-v35 .cy-buybox-v26 .cy-buybox-flags-v29,
body.cy-product-v35 .cy-buybox-v26 .cy-title-block-v33{
  display:none!important;
}

body.cy-product-v35 .cy-buybox-v26 .cy-product-head-v34__badges{
  display:flex!important;
}

body.cy-product-v35 .cy-buybox-v26 .cy-product-head-v34__badge{
  display:inline-flex!important;
}

/* With badges present, title stays directly beneath them.
   With no badges the V34 position is unchanged. */
body.cy-product-v35 .cy-product-head-v34__badges{
  margin-bottom:14px!important;
}

/* Hide every old Shoptet / previous-patch rating caption.
   V35 inserts one controlled caption only. */
body.cy-product-v35 .cy-rating-label-v34,
body.cy-product-v35 .cy-rating-duplicate-v31,
body.cy-product-v35 .cy-rating-duplicate-v32,
body.cy-product-v35 .cy-hide-no-rating-link-v33,
body.cy-product-v35 .cy-rating-hidden-v35{
  display:none!important;
}

body.cy-product-v35 .cy-rating-single-v35{
  display:inline-flex!important;
  align-items:center!important;
  margin:0 0 0 10px!important;
  padding:0!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
  vertical-align:middle!important;
}

body.cy-product-v35 .cy29-rating,
body.cy-product-v35 .stars-wrapper,
body.cy-product-v35 .rating-wrapper{
  align-items:center!important;
}


/* =========================================================
   V36 – PRODUCT DETAIL FINAL STATIC BADGE + RATING ROW
   Keeps the successful V35 left/right spacing untouched.
   ========================================================= */

/* Badge must NEVER push the title down.
   It sits in the free top area of the card, while title keeps
   exactly the same flow position as on products without badges. */
body.cy-product-v36 .cy-buybox-v26{
  position:relative!important;
}

body.cy-product-v36 .cy-product-head-v34{
  position:static!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:8px 0 0!important;
}

body.cy-product-v36 .cy-product-head-v34__badges{
  position:absolute!important;
  top:27px!important;
  left:26px!important;
  z-index:3!important;
  display:flex!important;
  width:auto!important;
  max-width:calc(100% - 52px)!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}

/* The title occupies the same position whether badge exists or not. */
body.cy-product-v36 .cy-product-head-v34__title{
  display:block!important;
  width:100%!important;
  margin:0 0 13px!important;
  padding:0!important;
}

body.cy-product-v36 .cy-product-head-v34__line{
  display:block!important;
  line-height:1.20!important;
}

body.cy-product-v36 .cy-product-head-v34__line + .cy-product-head-v34__line{
  margin-top:4px!important;
}

/* Hide every previous/native rating implementation.
   V36 renders one controlled row only. */
body.cy-product-v36 .cy-native-rating-v36,
body.cy-product-v36 .cy-rating-hidden-v36,
body.cy-product-v36 .cy-rating-single-v35,
body.cy-product-v36 .cy-rating-label-v34{
  display:none!important;
}

/* One deterministic rating line: stars + one caption. */
.cy-rating-row-v36{
  order:20!important;
  display:flex!important;
  width:100%!important;
  min-height:23px!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:14px!important;
  margin:0 0 13px!important;
  padding:0!important;
  color:#b78c48!important;
  box-sizing:border-box!important;
}

.cy-rating-stars-v36{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  gap:4px!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:1px!important;
  white-space:nowrap!important;
}

.cy-rating-caption-v36,
.cy-rating-caption-v36:visited{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  color:#a97e3a!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.cy-rating-caption-v36[href]:hover{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* On mobile the badge remains static and the title still does not move. */
@media(max-width:991px){
  body.cy-product-v36 .cy-product-head-v34__badges{
    top:24px!important;
    left:18px!important;
    max-width:calc(100% - 36px)!important;
  }
}


/* =========================================================
   V37 – STABLE BADGE CENTER + PERSISTENT RATING
   Keeps the successful V36 spacing/layout untouched.
   ========================================================= */

/* Badge position is calculated by JS so it is geometrically centered
   between the card top edge and the product title. */
body.cy-product-v37 .cy-product-head-v34__badges{
  position:absolute!important;
  z-index:4!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}

/* Hide all previous rating outputs. V37 owns the final row. */
body.cy-product-v37 .cy-rating-row-v36,
body.cy-product-v37 .cy-native-rating-v36,
body.cy-product-v37 .cy-rating-single-v35,
body.cy-product-v37 .cy-rating-label-v34,
body.cy-product-v37 .cy-rating-hidden-v35,
body.cy-product-v37 .cy-rating-hidden-v36,
body.cy-product-v37 .cy-rating-old-v37{
  display:none!important;
}

/* One persistent, aligned rating row. */
.cy-rating-row-v37{
  order:20!important;
  display:flex!important;
  width:100%!important;
  min-height:24px!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:13px!important;
  margin:0 0 13px!important;
  padding:0!important;
  box-sizing:border-box!important;
}

.cy-rating-stars-v37{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:1.5px!important;
  white-space:nowrap!important;
}

.cy-rating-caption-v37,
.cy-rating-caption-v37:visited{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  color:#a97e3a!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.cy-rating-caption-v37[href]:hover{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}


/* =========================================================
   V38 – FINAL RATING + BOTTOM BREATHING ROOM
   Keeps V37 layout/badge positioning unchanged.
   ========================================================= */

/* A little more breathing room below the three benefits. */
body.cy-product-v38 .cy-buybox-v26{
  padding-bottom:34px!important;
}

/* V38 owns the final rating row. Hide all older implementations. */
body.cy-product-v38 .cy-rating-row-v37,
body.cy-product-v38 .cy-rating-row-v36,
body.cy-product-v38 .cy29-rating,
body.cy-product-v38 .stars-wrapper,
body.cy-product-v38 .rating-wrapper,
body.cy-product-v38 .cy-rating-single-v35,
body.cy-product-v38 .cy-rating-label-v34{
  display:none!important;
}

/* One final persistent rating row. */
.cy-rating-final-v38{
  order:20!important;
  display:flex!important;
  width:100%!important;
  min-height:24px!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:14px!important;
  margin:0 0 13px!important;
  padding:0!important;
  box-sizing:border-box!important;
}

.cy-rating-final-v38__stars{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:1.5px!important;
  white-space:nowrap!important;
}

.cy-rating-final-v38__caption,
.cy-rating-final-v38__caption:visited{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  margin:0!important;
  padding:0!important;
  color:#a97e3a!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}

.cy-rating-final-v38__caption[href]:hover{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}


/* =========================================================
   V39 – CLEAN FINAL PRODUCT DETAIL
   One owner. No delayed legacy detail patches.
   ========================================================= */

body.cy-product-v39 .cy-v39-old-head,
body.cy-product-v39 .cy-v39-old-rating,
body.cy-product-v39 .cy-v39-old-delivery,
body.cy-product-v39 .cy-v39-old-summary,
body.cy-product-v39 .cy-v39-hide-actions,
body.cy-product-v39 .cy-title-block-v33,
body.cy-product-v39 .cy-product-head-v34,
body.cy-product-v39 .cy-buybox-flags-v29,
body.cy-product-v39 .cy-product-title-v26,
body.cy-product-v39 .cy-rating-row-v36,
body.cy-product-v39 .cy-rating-row-v37,
body.cy-product-v39 .cy-rating-final-v38{
  display:none!important;
}

body.cy-product-v39 .cy-native-product-title-v39{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

/* Keep the successful V38 geometry. */
@media(min-width:992px){
  body.cy-product-v39 .p-detail-inner{
    display:flex!important;
    width:100%!important;
    max-width:1600px!important;
    align-items:flex-start!important;
    gap:30px!important;
    box-sizing:border-box!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:26px!important;
    padding-right:26px!important;
  }

  body.cy-product-v39 .p-detail-inner > .p-image-wrapper{
    width:calc(56% - 15px)!important;
    max-width:calc(56% - 15px)!important;
    flex:0 0 calc(56% - 15px)!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
  }

  body.cy-product-v39 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-detail-info,
  body.cy-product-v39 .p-detail-inner > .p-info{
    width:calc(44% - 15px)!important;
    max-width:calc(44% - 15px)!important;
    flex:0 0 calc(44% - 15px)!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
  }
}

/* Main image / thumbnails. Do not move DOM nodes. */
body.cy-product-v39 .p-image,
body.cy-product-v39 .p-image-wrapper{
  border-radius:22px!important;
}

body.cy-product-v39 .p-image img,
body.cy-product-v39 .p-image-wrapper img{
  border-radius:22px!important;
}

body.cy-product-v39 .p-thumbnails{
  gap:9px!important;
  margin-top:18px!important;
}

body.cy-product-v39 .p-thumbnails a{
  overflow:hidden!important;
  border:1px solid #e0dbd1!important;
  border-radius:12px!important;
  background:#fff!important;
}

body.cy-product-v39 .p-thumbnails a.active{
  border-color:#304236!important;
}

body.cy-product-v39 .p-thumbnails img{
  border-radius:11px!important;
}

/* Buy box. */
body.cy-product-v39 .cy-buybox-v39{
  position:relative!important;
  display:flex!important;
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  flex-direction:column!important;
  align-self:flex-start!important;
  justify-content:flex-start!important;
  box-sizing:border-box!important;
  padding:24px 26px 44px!important;
  border:1px solid #e5dfd4!important;
  border-radius:24px!important;
  background:#fffdf9!important;
  box-shadow:0 14px 40px rgba(48,66,54,.05)!important;
}

body.cy-product-v39 .cy-buybox-v39 > *{
  flex:0 0 auto!important;
}

/* One fixed header space. Title position never depends on badges. */
.cy-product-head-v39{
  order:10!important;
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:96px 0 0!important;
  box-sizing:border-box!important;
}

.cy-product-head-v39__badges{
  position:absolute!important;
  top:42px!important;
  left:0!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
}

.cy-product-head-v39__badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:#dfe8de!important;
  color:#4b6250!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:9.5px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

.cy-product-head-v39__title{
  display:block!important;
  width:100%!important;
  margin:0 0 13px!important;
  padding:0!important;
  color:#304236!important;
  font:400 31px/1.20 Georgia,"Times New Roman",serif!important;
  letter-spacing:-.026em!important;
}

.cy-product-head-v39__line{
  display:block!important;
  width:100%!important;
}

.cy-product-head-v39__line + .cy-product-head-v39__line{
  margin-top:4px!important;
}

/* Persistent rating – no disappearing/rebuilding. */
.cy-rating-final-v39{
  order:20!important;
  display:flex!important;
  width:100%!important;
  min-height:24px!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:14px!important;
  margin:0 0 13px!important;
  padding:0!important;
  box-sizing:border-box!important;
}

.cy-rating-final-v39__stars{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  color:#b78c48!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:1.5px!important;
  white-space:nowrap!important;
}

.cy-rating-final-v39__caption{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  color:#a97e3a!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1!important;
  white-space:nowrap!important;
}

/* Order / metadata. */
body.cy-product-v39 .cy29-brand{order:30!important}
body.cy-product-v39 .cy29-price{order:40!important}
body.cy-product-v39 .cy29-stock{order:50!important}
body.cy-product-v39 .cy29-services{order:60!important}
body.cy-product-v39 .cy29-cart{order:70!important}
body.cy-product-v39 .cy29-guarantee{order:80!important}
body.cy-product-v39 .cy29-benefits{order:90!important}

body.cy-product-v39 .cy-detail-tech-v22{
  display:none!important;
}

body.cy-product-v39 .cy-detail-brand-v22,
body.cy-product-v39 .cy29-brand{
  display:block!important;
  margin:0 0 16px!important;
  color:#858b86!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:11.5px!important;
  font-weight:400!important;
  line-height:1.35!important;
}

body.cy-product-v39 .cy29-price .price-final,
body.cy-product-v39 .cy29-price.price-final,
body.cy-product-v39 .cy29-price .price-final strong{
  color:#304236!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:34px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.02em!important;
}

body.cy-product-v39 .cy29-stock,
body.cy-product-v39 .availability,
body.cy-product-v39 .availability-value{
  margin:9px 0 15px!important;
  color:#5b785f!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* Services. */
body.cy-product-v39 .cy-buybox-services-v26{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0!important;
  margin:0 0 16px!important;
  padding:12px 0!important;
  border-top:1px solid #e6e1d8!important;
  border-bottom:1px solid #e6e1d8!important;
}

body.cy-product-v39 .cy-buybox-service-v26{
  display:grid!important;
  grid-template-columns:26px 1fr!important;
  gap:8px!important;
  align-items:center!important;
  min-width:0!important;
  padding:0 12px!important;
}

body.cy-product-v39 .cy-buybox-service-v26:first-child{
  padding-left:0!important;
}

body.cy-product-v39 .cy-buybox-service-v26:last-child{
  padding-right:0!important;
  border-left:1px solid #dfdad0!important;
}

body.cy-product-v39 .cy-buybox-service-v26 svg{
  width:23px!important;
  height:23px!important;
  stroke:#53665a!important;
}

body.cy-product-v39 .cy-buybox-service-v26 strong{
  display:block!important;
  margin:0 0 2px!important;
  color:#536057!important;
  font-size:10.8px!important;
  font-weight:700!important;
}

body.cy-product-v39 .cy-buybox-service-v26 small{
  display:block!important;
  color:#7b827d!important;
  font-size:9.8px!important;
  line-height:1.3!important;
}

/* Quantity + CTA. */
body.cy-product-v39 .cy29-cart.p-to-cart-block,
body.cy-product-v39 .cy29-cart.add-to-cart,
body.cy-product-v39 .cy29-cart .p-to-cart-block,
body.cy-product-v39 .cy29-cart .add-to-cart{
  display:grid!important;
  grid-template-columns:126px minmax(190px,1fr)!important;
  gap:12px!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
}

body.cy-product-v39 .cy-buybox-v39 .quantity,
body.cy-product-v39 .cy-buybox-v39 .amount{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  overflow:hidden!important;
  margin:0!important;
  border:1px solid #d8d2c6!important;
  border-radius:999px!important;
  background:#fffdf9!important;
  box-shadow:none!important;
}

body.cy-product-v39 .cy-buybox-v39 .quantity input,
body.cy-product-v39 .cy-buybox-v39 .amount input,
body.cy-product-v39 .cy-buybox-v39 .quantity button,
body.cy-product-v39 .cy-buybox-v39 .amount button{
  height:48px!important;
  min-height:48px!important;
  border:0!important;
  background:#fffdf9!important;
  color:#304236!important;
  box-shadow:none!important;
}

body.cy-product-v39 .cy-buybox-v39 .add-to-cart-button,
body.cy-product-v39 .cy-buybox-v39 .btn-cart,
body.cy-product-v39 .cy-buybox-v39 button[type="submit"]{
  display:flex!important;
  width:100%!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  margin:0!important;
  padding:0 22px!important;
  border:1px solid #304236!important;
  border-radius:999px!important;
  background:#304236!important;
  color:#fff!important;
  box-shadow:none!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:13px!important;
  font-weight:700!important;
  line-height:1!important;
  text-transform:none!important;
}

.cy-cart-bag-v39{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

.cy-cart-bag-v39 svg{
  width:18px!important;
  height:18px!important;
  stroke:currentColor!important;
}

/* Guarantee. */
body.cy-product-v39 .cy-buybox-v39 #cyT{
  margin:16px 0 0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:15px!important;
  background:#edf1eb!important;
  box-shadow:none!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .top{
  display:grid!important;
  grid-template-columns:54px 1fr!important;
  background:transparent!important;
  color:#304236!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .seal{
  border:0!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .badge{
  width:38px!important;
  height:38px!important;
  border:0!important;
  background:#dbe5d8!important;
  color:#304236!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .badge b{
  font-size:20px!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .badge span,
body.cy-product-v39 .cy-buybox-v39 #cyT .k,
body.cy-product-v39 .cy-buybox-v39 #cyT .pay,
body.cy-product-v39 .cy-buybox-v39 #cyT .rating{
  display:none!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT .copy{
  padding:11px 13px 11px 0!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT h3{
  margin:0 0 3px!important;
  color:#304236!important;
  font:400 14.5px/1.25 Georgia,"Times New Roman",serif!important;
}

body.cy-product-v39 .cy-buybox-v39 #cyT p{
  color:#69756c!important;
  font-size:10px!important;
  line-height:1.45!important;
}

/* Benefits + clearly visible bottom breathing room. */
body.cy-product-v39 .cy-product-benefits-v26{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin:22px 0 0!important;
  padding:0 4px!important;
}

body.cy-product-v39 .cy-product-benefit-v26{
  min-width:0!important;
  text-align:center!important;
  color:#4f5c53!important;
}

body.cy-product-v39 .cy-product-benefit-v26__icon{
  display:flex!important;
  width:56px!important;
  height:56px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 auto 10px!important;
  border-radius:50%!important;
  background:#eef2ec!important;
  color:#53665a!important;
}

body.cy-product-v39 .cy-product-benefit-v26__icon svg{
  width:28px!important;
  height:28px!important;
  stroke:currentColor!important;
}

body.cy-product-v39 .cy-product-benefit-v26 strong{
  display:block!important;
  max-width:160px!important;
  margin:0 auto!important;
  color:#536057!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.35!important;
}

@media(max-width:991px){
  body.cy-product-v39 .p-detail-inner{
    display:block!important;
    box-sizing:border-box!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }

  body.cy-product-v39 .p-detail-inner > .p-image-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-detail-info,
  body.cy-product-v39 .p-detail-inner > .p-info{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    float:none!important;
    margin:0!important;
  }

  body.cy-product-v39 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-detail-info,
  body.cy-product-v39 .p-detail-inner > .p-info{
    margin-top:18px!important;
  }

  .cy-product-head-v39{
    padding-top:76px!important;
  }

  .cy-product-head-v39__badges{
    top:30px!important;
  }
}

@media(max-width:767px){
  body.cy-product-v39 .cy-buybox-v39{
    padding:21px 18px 38px!important;
  }

  .cy-product-head-v39__title{
    font-size:28px!important;
  }

  body.cy-product-v39 .cy-product-benefits-v26{
    gap:8px!important;
    padding:0!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon{
    width:48px!important;
    height:48px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon svg{
    width:24px!important;
    height:24px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26 strong{
    font-size:10.5px!important;
  }

  body.cy-product-v39 .cy29-cart.p-to-cart-block,
  body.cy-product-v39 .cy29-cart.add-to-cart,
  body.cy-product-v39 .cy29-cart .p-to-cart-block,
  body.cy-product-v39 .cy29-cart .add-to-cart{
    grid-template-columns:118px minmax(0,1fr)!important;
  }
}

@media(max-width:480px){
  body.cy-product-v39 .cy-buybox-services-v26{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26,
  body.cy-product-v39 .cy-buybox-service-v26:first-child,
  body.cy-product-v39 .cy-buybox-service-v26:last-child{
    padding:0!important;
    border-left:0!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26:last-child{
    padding-top:10px!important;
    border-top:1px solid #e5e0d7!important;
  }

  body.cy-product-v39 .cy29-cart.p-to-cart-block,
  body.cy-product-v39 .cy29-cart.add-to-cart,
  body.cy-product-v39 .cy29-cart .p-to-cart-block,
  body.cy-product-v39 .cy29-cart .add-to-cart{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   V40 – PRODUCT DETAIL VERTICAL POSITION FINAL FIX
   CSS-only patch over the clean V39 detail implementation.
   ========================================================= */

/* The V39 controlled content must come BEFORE any untouched native
   Shoptet direct child with its default order:0. This removes the
   invisible space that was pushing the whole card content downward. */
body.cy-product-v40 .cy-product-head-v39{
  order:-100!important;
}

body.cy-product-v40 .cy-rating-final-v39{
  order:-90!important;
}

body.cy-product-v40 .cy29-brand{
  order:-80!important;
}

body.cy-product-v40 .cy29-price{
  order:-70!important;
}

body.cy-product-v40 .cy29-stock{
  order:-60!important;
}

body.cy-product-v40 .cy29-services{
  order:-50!important;
}

body.cy-product-v40 .cy29-cart{
  order:-40!important;
}

body.cy-product-v40 .cy29-guarantee{
  order:-30!important;
}

body.cy-product-v40 .cy29-benefits{
  order:-20!important;
}

/* Keep the approved badge/title composition exactly the same.
   This only defines the vertical reserve explicitly. */
body.cy-product-v40 .cy-product-head-v39{
  padding-top:96px!important;
}

body.cy-product-v40 .cy-product-head-v39__badges{
  top:42px!important;
}

/* Make the requested lower breathing room clearly visible. */
body.cy-product-v40 .cy-buybox-v39{
  padding-bottom:58px!important;
}

@media(max-width:991px){
  body.cy-product-v40 .cy-product-head-v39{
    padding-top:76px!important;
  }

  body.cy-product-v40 .cy-product-head-v39__badges{
    top:30px!important;
  }
}

@media(max-width:767px){
  body.cy-product-v40 .cy-buybox-v39{
    padding-bottom:48px!important;
  }
}


/* =========================================================
   V41 – PRODUCT DETAIL MOVE CONTENT UP
   Keep V40 spacing/bottom/rating unchanged.
   ========================================================= */

/* Reduce only the reserved upper space.
   Everything from the title downward moves higher together. */
body.cy-product-v41 .cy-product-head-v39{
  padding-top:58px!important;
}

/* Badge stays visually centered in the smaller top reserve. */
body.cy-product-v41 .cy-product-head-v39__badges{
  top:17px!important;
}

@media(max-width:991px){
  body.cy-product-v41 .cy-product-head-v39{
    padding-top:54px!important;
  }

  body.cy-product-v41 .cy-product-head-v39__badges{
    top:15px!important;
  }
}


/* =========================================================
   V42 – PRODUCT DETAIL COMPACT TOP RHYTHM
   Move the whole controlled content higher by reducing real
   layout reserve (no transform), so the card also becomes
   naturally shorter and does not leave a beige void below.
   ========================================================= */

/* Same title position whether badges exist or not. */
body.cy-product-v42 .cy-product-head-v39{
  padding-top:34px!important;
}

/* Badges live in the reserved top zone without moving the title. */
body.cy-product-v42 .cy-product-head-v39__badges{
  top:0!important;
}

/* Keep the already-approved bottom breathing room from V40/V41. */
body.cy-product-v42 .cy-buybox-v39{
  padding-bottom:58px!important;
}

@media(max-width:991px){
  body.cy-product-v42 .cy-product-head-v39{
    padding-top:38px!important;
  }

  body.cy-product-v42 .cy-product-head-v39__badges{
    top:2px!important;
  }
}

@media(max-width:767px){
  body.cy-product-v42 .cy-buybox-v39{
    padding-bottom:48px!important;
  }
}


/* =========================================================
   V43 – BADGE CENTER + COMPACT BRAND/PRICE RHYTHM
   CSS-only finishing patch over V42. JS unchanged.
   ========================================================= */

/* Green badges: center the whole group horizontally and lower it
   slightly inside the free upper area. Title position stays unchanged. */
body.cy-product-v42 .cy-product-head-v39__badges{
  left:50%!important;
  right:auto!important;
  top:7px!important;
  transform:translateX(-50%)!important;
  justify-content:center!important;
  width:max-content!important;
  max-width:calc(100% - 40px)!important;
}

/* Use one consistent compact gap:
   rating -> brand = 18 px
   brand  -> price = 18 px
   Everything below the price keeps its existing rhythm. */
body.cy-product-v42 .cy-rating-final-v39{
  margin:0 0 18px!important;
}

body.cy-product-v42 .cy29-brand,
body.cy-product-v42 .cy-detail-brand-v22{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  margin:0 0 18px!important;
  padding:0!important;
  line-height:1.35!important;
}

body.cy-product-v42 .cy29-brand a,
body.cy-product-v42 .cy-detail-brand-v22 a{
  display:inline!important;
  margin:0!important;
  padding:0!important;
}

/* Remove native top/bottom whitespace from the price wrapper only.
   Stock and all following blocks keep their current spacing. */
body.cy-product-v42 .cy29-price{
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
}

body.cy-product-v42 .cy29-price .prices,
body.cy-product-v42 .cy29-price .p-final-price-wrapper,
body.cy-product-v42 .cy29-price .price-final-holder,
body.cy-product-v42 .cy29-price .price-final{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

@media(max-width:991px){
  body.cy-product-v42 .cy-product-head-v39__badges{
    top:8px!important;
    max-width:calc(100% - 32px)!important;
  }
}


/* =========================================================
   V44 – BADGES TRUE CENTER
   Only fixes horizontal centering of NOVINKA / TIP.
   Everything else stays exactly as in V43.
   ========================================================= */

body.cy-product-v42 .cy-product-head-v39__badges{
  left:0!important;
  right:0!important;
  width:100%!important;
  max-width:none!important;
  transform:none!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}


/* =========================================================
   V45 – BADGES CENTER AGAINST THE WHOLE BUY BOX
   Only fixes horizontal reference point of NOVINKA / TIP.
   Everything else stays exactly as in V44.
   ========================================================= */

/* Let the positioned buy box, not the inner title wrapper,
   become the containing block for the absolute badges. */
body.cy-product-v42 .cy-product-head-v39{
  position:static!important;
}

body.cy-product-v42 .cy-product-head-v39__badges{
  left:50%!important;
  right:auto!important;
  top:31px!important;
  width:max-content!important;
  max-width:calc(100% - 52px)!important;
  transform:translateX(-50%)!important;
  justify-content:center!important;
  box-sizing:border-box!important;
}

@media(max-width:991px){
  body.cy-product-v42 .cy-product-head-v39__badges{
    top:29px!important;
    max-width:calc(100% - 36px)!important;
  }
}


/* =========================================================
   V46 – BADGES BACK TO TITLE AXIS
   "Center" means vertically centered in the free space above
   the title, while staying left-aligned with the title.
   Everything else remains exactly as in V45.
   ========================================================= */

body.cy-product-v42 .cy-product-head-v39{
  position:relative!important;
}

body.cy-product-v42 .cy-product-head-v39__badges{
  left:0!important;
  right:auto!important;
  top:9px!important;
  width:auto!important;
  max-width:100%!important;
  transform:none!important;
  justify-content:flex-start!important;
  box-sizing:border-box!important;
}

@media(max-width:991px){
  body.cy-product-v42 .cy-product-head-v39__badges{
    left:0!important;
    top:8px!important;
    transform:none!important;
  }
}


/* =========================================================
   V47 – MOBILE PRODUCT DETAIL
   MOBILE ONLY: max-width 767px.
   Desktop V46 remains untouched.
   Scope ends at the three benefit items – description sections
   such as "Prečo si ju zamilujete?" are NOT modified here.
   ========================================================= */

@media(max-width:767px){

  /* -------------------------------------------------------
     1. MOBILE PRODUCT WRAPPER
     ------------------------------------------------------- */
  body.cy-product-v39 .p-detail-inner{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 14px!important;
    box-sizing:border-box!important;
  }

  body.cy-product-v39 .p-detail-inner > .p-image-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-detail-info,
  body.cy-product-v39 .p-detail-inner > .p-info{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    flex:none!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
  }

  /* -------------------------------------------------------
     2. MAIN IMAGE
     ------------------------------------------------------- */
  body.cy-product-v39 .p-image-wrapper,
  body.cy-product-v39 .p-image,
  body.cy-product-v39 .p-main-image{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border-radius:18px!important;
    background:#f7f3ed!important;
  }

  body.cy-product-v39 .p-image-wrapper .p-image img,
  body.cy-product-v39 .p-image-wrapper .p-main-image img,
  body.cy-product-v39 .p-image-wrapper > a > img,
  body.cy-product-v39 .p-image img{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    aspect-ratio:1 / 1!important;
    object-fit:cover!important;
    margin:0!important;
    border-radius:18px!important;
  }

  /* -------------------------------------------------------
     3. THUMBNAILS – HORIZONTAL STRIP
     ------------------------------------------------------- */
  body.cy-product-v39 .p-thumbnails,
  body.cy-product-v39 .p-thumbnails-wrapper .p-thumbnails{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:7px!important;
    margin:9px 0 15px!important;
    padding:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  body.cy-product-v39 .p-thumbnails::-webkit-scrollbar{
    display:none!important;
  }

  body.cy-product-v39 .p-thumbnails a{
    display:block!important;
    flex:0 0 calc((100% - 28px) / 5)!important;
    width:calc((100% - 28px) / 5)!important;
    max-width:none!important;
    aspect-ratio:1 / 1!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #e0dbd1!important;
    border-radius:10px!important;
    background:#fff!important;
  }

  body.cy-product-v39 .p-thumbnails a.active{
    border:1.5px solid #304236!important;
  }

  body.cy-product-v39 .p-thumbnails img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    margin:0!important;
    border-radius:9px!important;
  }

  /* -------------------------------------------------------
     4. BUY BOX – SAME ELEMENTS, MOBILE EDITORIAL FLOW
     No separate desktop card feeling on phone.
     ------------------------------------------------------- */
  body.cy-product-v39 .p-detail-inner > .p-info-wrapper,
  body.cy-product-v39 .p-detail-inner > .p-detail-info,
  body.cy-product-v39 .p-detail-inner > .p-info{
    margin-top:0!important;
  }

  body.cy-product-v39 .cy-buybox-v39{
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0 6px 22px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    transform:none!important;
  }

  /* -------------------------------------------------------
     5. BADGE + TITLE
     Same style as desktop, naturally stacked on mobile.
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-product-head-v39{
    position:relative!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  body.cy-product-v39 .cy-product-head-v39__badges{
    position:static!important;
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    margin:0 0 8px!important;
    padding:0!important;
    transform:none!important;
  }

  body.cy-product-v39 .cy-product-head-v39__badge{
    padding:5px 9px!important;
    border-radius:999px!important;
    font-size:9px!important;
    letter-spacing:.08em!important;
  }

  body.cy-product-v39 .cy-product-head-v39__title{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 9px!important;
    padding:0!important;
    color:#304236!important;
    font:400 29px/1.06 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.03em!important;
  }

  body.cy-product-v39 .cy-product-head-v39__line{
    display:block!important;
    width:100%!important;
  }

  body.cy-product-v39 .cy-product-head-v39__line + .cy-product-head-v39__line{
    margin-top:2px!important;
  }

  /* -------------------------------------------------------
     6. RATING + BRAND
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-rating-final-v39{
    display:flex!important;
    width:100%!important;
    min-height:20px!important;
    align-items:center!important;
    gap:10px!important;
    margin:0 0 9px!important;
    padding:0!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__stars{
    font-size:16px!important;
    letter-spacing:1px!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__caption{
    font-size:12px!important;
  }

  body.cy-product-v39 .cy-detail-brand-v22,
  body.cy-product-v39 .cy29-brand{
    margin:0 0 13px!important;
    padding:0!important;
    color:#7f8882!important;
    font-size:11.5px!important;
    line-height:1.25!important;
  }

  /* -------------------------------------------------------
     7. PRICE + STOCK
     ------------------------------------------------------- */
  body.cy-product-v39 .cy29-price{
    margin:0!important;
    padding:0!important;
  }

  body.cy-product-v39 .cy29-price .price-final,
  body.cy-product-v39 .cy29-price.price-final,
  body.cy-product-v39 .cy29-price .price-final strong{
    margin:0!important;
    padding:0!important;
    color:#304236!important;
    font-size:38px!important;
    line-height:.98!important;
  }

  body.cy-product-v39 .cy29-stock,
  body.cy-product-v39 .availability,
  body.cy-product-v39 .availability-value{
    margin:7px 0 14px!important;
    color:#5b785f!important;
    font-size:13px!important;
    line-height:1.2!important;
  }

  /* -------------------------------------------------------
     8. DELIVERY + STORE – KEEP TWO COLUMNS ON PHONE
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-buybox-services-v26{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    width:100%!important;
    margin:0 0 14px!important;
    padding:11px 0!important;
    border-top:0!important;
    border-bottom:0!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26,
  body.cy-product-v39 .cy-buybox-service-v26:first-child,
  body.cy-product-v39 .cy-buybox-service-v26:last-child{
    display:grid!important;
    grid-template-columns:28px minmax(0,1fr)!important;
    gap:7px!important;
    align-items:center!important;
    min-width:0!important;
    padding:0 10px!important;
    border-top:0!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26:first-child{
    padding-left:0!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26:last-child{
    padding-right:0!important;
    border-left:1px solid #ded9cf!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 svg{
    width:24px!important;
    height:24px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 strong{
    margin:0 0 2px!important;
    font-size:10.5px!important;
    line-height:1.15!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 small{
    display:block!important;
    font-size:9.5px!important;
    line-height:1.2!important;
  }

  /* -------------------------------------------------------
     9. QUANTITY + CTA – SAME ROW
     ------------------------------------------------------- */
  body.cy-product-v39 .cy29-cart.p-to-cart-block,
  body.cy-product-v39 .cy29-cart.add-to-cart,
  body.cy-product-v39 .cy29-cart .p-to-cart-block,
  body.cy-product-v39 .cy29-cart .add-to-cart{
    display:grid!important;
    grid-template-columns:34% minmax(0,1fr)!important;
    gap:8px!important;
    align-items:stretch!important;
    width:100%!important;
    margin:0!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .quantity,
  body.cy-product-v39 .cy-buybox-v39 .amount{
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    border:1px solid #d8d2c6!important;
    border-radius:999px!important;
    background:#fffdf9!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .quantity input,
  body.cy-product-v39 .cy-buybox-v39 .amount input,
  body.cy-product-v39 .cy-buybox-v39 .quantity button,
  body.cy-product-v39 .cy-buybox-v39 .amount button{
    height:46px!important;
    min-height:46px!important;
    background:#fffdf9!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .add-to-cart-button,
  body.cy-product-v39 .cy-buybox-v39 .btn-cart,
  body.cy-product-v39 .cy-buybox-v39 button[type="submit"]{
    height:48px!important;
    min-height:48px!important;
    padding:0 14px!important;
    border-radius:999px!important;
    font-size:12.5px!important;
    white-space:nowrap!important;
  }

  /* -------------------------------------------------------
     10. GUARANTEE – COMPACT FULL-WIDTH STRIP
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-buybox-v39 #cyT{
    width:100%!important;
    margin:13px 0 0!important;
    border-radius:13px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .top{
    grid-template-columns:50px 1fr!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .badge{
    width:38px!important;
    height:38px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .copy{
    padding:10px 10px 10px 0!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT h3{
    margin:0 0 2px!important;
    font-size:14px!important;
    line-height:1.15!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT p{
    font-size:9.5px!important;
    line-height:1.35!important;
  }

  /* -------------------------------------------------------
     11. THREE BENEFITS – MOBILE REFERENCE
     This is the LAST section touched by V47.
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-product-benefits-v26{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    width:100%!important;
    margin:16px 0 0!important;
    padding:0 0 17px!important;
    border-bottom:1px solid #e4ded4!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26{
    position:relative!important;
    min-width:0!important;
    padding:0 8px!important;
    text-align:center!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26 + .cy-product-benefit-v26{
    border-left:1px solid #e6e0d7!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon{
    width:44px!important;
    height:44px!important;
    margin:0 auto 7px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon svg{
    width:23px!important;
    height:23px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26 strong{
    display:block!important;
    width:100%!important;
    max-width:120px!important;
    margin:0 auto!important;
    color:#536057!important;
    font-size:10px!important;
    font-weight:600!important;
    line-height:1.25!important;
  }

  /* IMPORTANT:
     No selector below this point targets .p-detail-tabs-wrapper,
     #description, .basic-description or the "Prečo si ju zamilujete?"
     section. V47 ends at the three benefits above. */
}


/* =========================================================
   V48 – MOBILE PRODUCT DETAIL REFINEMENT
   MOBILE ONLY. Desktop V46 remains untouched.
   Scope ends at the three benefits.
   ========================================================= */

@media(max-width:767px){

  /* Hide native technical/short-summary content between gallery and our buy box.
     Content remains in DOM; this is visual mobile-only cleanup. */
  body.type-product .cy-mobile-hide-v48,
  body.type-detail .cy-mobile-hide-v48,
  body.cy-product-v39 .cy-detail-tech-v22,
  body.cy-product-v39 .cy-v39-old-summary,
  body.cy-product-v39 .cy-v26-old-summary,
  body.cy-product-v39 .cy-v26-old-detail-link{
    display:none!important;
  }

  /* -------------------------------------------------------
     MAIN IMAGE – SHORTER, LIKE THE APPROVED MOBILE REFERENCE
     ------------------------------------------------------- */
  body.cy-product-v39 .p-image-wrapper .p-image,
  body.cy-product-v39 .p-image-wrapper .p-main-image,
  body.cy-product-v39 .p-image{
    width:100%!important;
    aspect-ratio:4 / 3!important;
    overflow:hidden!important;
    border-radius:18px!important;
  }

  body.cy-product-v39 .p-image-wrapper .p-image img,
  body.cy-product-v39 .p-image-wrapper .p-main-image img,
  body.cy-product-v39 .p-image-wrapper > a > img,
  body.cy-product-v39 .p-image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
    object-position:center center!important;
    border-radius:18px!important;
  }

  /* Slightly tighter gallery-to-content rhythm. */
  body.cy-product-v39 .p-thumbnails,
  body.cy-product-v39 .p-thumbnails-wrapper .p-thumbnails{
    margin-top:8px!important;
    margin-bottom:12px!important;
  }

  /* -------------------------------------------------------
     TYPOGRAPHY – LARGER / MORE READABLE
     ------------------------------------------------------- */

  /* Product badges */
  body.cy-product-v39 .cy-product-head-v39__badges{
    margin-bottom:9px!important;
  }

  body.cy-product-v39 .cy-product-head-v39__badge{
    padding:6px 10px!important;
    font-size:10px!important;
    line-height:1!important;
  }

  /* Dominant product title */
  body.cy-product-v39 .cy-product-head-v39__title{
    margin:0 0 11px!important;
    font-size:34px!important;
    line-height:1.04!important;
    letter-spacing:-.032em!important;
  }

  body.cy-product-v39 .cy-product-head-v39__line + .cy-product-head-v39__line{
    margin-top:3px!important;
  }

  /* Rating */
  body.cy-product-v39 .cy-rating-final-v39{
    gap:11px!important;
    margin-bottom:11px!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__stars{
    font-size:20px!important;
    letter-spacing:1px!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__caption{
    font-size:13.5px!important;
    line-height:1.15!important;
  }

  /* Brand */
  body.cy-product-v39 .cy-detail-brand-v22,
  body.cy-product-v39 .cy29-brand{
    margin-bottom:14px!important;
    font-size:14px!important;
    line-height:1.25!important;
  }

  /* Price */
  body.cy-product-v39 .cy29-price .price-final,
  body.cy-product-v39 .cy29-price.price-final,
  body.cy-product-v39 .cy29-price .price-final strong{
    font-size:43px!important;
    line-height:.98!important;
  }

  /* Stock */
  body.cy-product-v39 .cy29-stock,
  body.cy-product-v39 .availability,
  body.cy-product-v39 .availability-value{
    margin:8px 0 15px!important;
    font-size:15px!important;
    line-height:1.2!important;
  }

  /* -------------------------------------------------------
     DELIVERY / STORE – STRONGER READABILITY
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-buybox-services-v26{
    margin-bottom:15px!important;
    padding:12px 0!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26{
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:8px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 svg{
    width:26px!important;
    height:26px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 strong{
    margin-bottom:3px!important;
    font-size:12.5px!important;
    line-height:1.15!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 small{
    font-size:11px!important;
    line-height:1.2!important;
  }

  /* -------------------------------------------------------
     QUANTITY + CTA – BIGGER LABELS, SAME LAYOUT
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-buybox-v39 .quantity,
  body.cy-product-v39 .cy-buybox-v39 .amount{
    height:50px!important;
    min-height:50px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .quantity input,
  body.cy-product-v39 .cy-buybox-v39 .amount input,
  body.cy-product-v39 .cy-buybox-v39 .quantity button,
  body.cy-product-v39 .cy-buybox-v39 .amount button{
    height:48px!important;
    min-height:48px!important;
    font-size:21px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .add-to-cart-button,
  body.cy-product-v39 .cy-buybox-v39 .btn-cart,
  body.cy-product-v39 .cy-buybox-v39 button[type="submit"]{
    height:50px!important;
    min-height:50px!important;
    font-size:15px!important;
  }

  body.cy-product-v39 .cy-cart-bag-v39 svg{
    width:19px!important;
    height:19px!important;
  }

  /* -------------------------------------------------------
     GUARANTEE – EASIER TO READ
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-buybox-v39 #cyT{
    margin-top:14px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .top{
    grid-template-columns:52px 1fr!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .badge{
    width:40px!important;
    height:40px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT .copy{
    padding:11px 11px 11px 0!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT h3{
    margin-bottom:3px!important;
    font-size:15.5px!important;
    line-height:1.15!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT p{
    font-size:11px!important;
    line-height:1.35!important;
  }

  /* -------------------------------------------------------
     THREE BENEFITS – STRONGER LABELS
     LAST ELEMENTS TOUCHED BY V48
     ------------------------------------------------------- */
  body.cy-product-v39 .cy-product-benefits-v26{
    margin-top:17px!important;
    padding-bottom:18px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26{
    padding-left:7px!important;
    padding-right:7px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon{
    width:48px!important;
    height:48px!important;
    margin-bottom:8px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon svg{
    width:25px!important;
    height:25px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26 strong{
    max-width:128px!important;
    font-size:11.5px!important;
    line-height:1.28!important;
  }

  /* V48 intentionally does not style description/editorial content below. */
}


/* =========================================================
   V49 – MOBILE CLEANUP + 20% TYPOGRAPHY BOOST
   MOBILE ONLY. Desktop V46 remains untouched.
   Scope ends after the three benefits.
   ========================================================= */

@media(max-width:767px){

  /* -------------------------------------------------------
     FORCE-HIDE NATIVE TECHNICAL / SHORT DESCRIPTION CONTENT
     between gallery and the designed buy box.
     ------------------------------------------------------- */
  body.type-product .cy-mobile-hide-v49,
  body.type-detail .cy-mobile-hide-v49,
  body.type-product .p-detail-inner .p-code,
  body.type-detail .p-detail-inner .p-code,
  body.type-product .p-detail-inner .product-code,
  body.type-detail .p-detail-inner .product-code,
  body.type-product .p-detail-inner .p-detail-code,
  body.type-detail .p-detail-inner .p-detail-code,
  body.type-product .p-detail-inner [class*="product-code"],
  body.type-detail .p-detail-inner [class*="product-code"],
  body.type-product .p-detail-inner .p-short-description,
  body.type-detail .p-detail-inner .p-short-description,
  body.type-product .p-detail-inner .short-description,
  body.type-detail .p-detail-inner .short-description,
  body.type-product .p-detail-inner .product-short-description,
  body.type-detail .p-detail-inner .product-short-description,
  body.type-product .p-detail-inner .p-detail-short-description,
  body.type-detail .p-detail-inner .p-detail-short-description,
  body.type-product .p-detail-inner .description-short,
  body.type-detail .p-detail-inner .description-short{
    display:none!important;
  }

  /* -------------------------------------------------------
     +20% TYPE SCALE OVER V48
     Same hierarchy, just easier to read.
     ------------------------------------------------------- */

  body.cy-product-v39 .cy-product-head-v39__badge{
    font-size:12px!important;
  }

  body.cy-product-v39 .cy-product-head-v39__title{
    font-size:41px!important;
    line-height:1.03!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__stars{
    font-size:24px!important;
  }

  body.cy-product-v39 .cy-rating-final-v39__caption{
    font-size:16px!important;
  }

  body.cy-product-v39 .cy-detail-brand-v22,
  body.cy-product-v39 .cy29-brand{
    font-size:17px!important;
  }

  body.cy-product-v39 .cy29-price .price-final,
  body.cy-product-v39 .cy29-price.price-final,
  body.cy-product-v39 .cy29-price .price-final strong{
    font-size:52px!important;
  }

  body.cy-product-v39 .cy29-stock,
  body.cy-product-v39 .availability,
  body.cy-product-v39 .availability-value{
    font-size:18px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 strong{
    font-size:15px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 small{
    font-size:13px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .quantity input,
  body.cy-product-v39 .cy-buybox-v39 .amount input,
  body.cy-product-v39 .cy-buybox-v39 .quantity button,
  body.cy-product-v39 .cy-buybox-v39 .amount button{
    font-size:25px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 .add-to-cart-button,
  body.cy-product-v39 .cy-buybox-v39 .btn-cart,
  body.cy-product-v39 .cy-buybox-v39 button[type="submit"]{
    font-size:18px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT h3{
    font-size:19px!important;
  }

  body.cy-product-v39 .cy-buybox-v39 #cyT p{
    font-size:13px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26 strong{
    font-size:14px!important;
    line-height:1.28!important;
  }

  /* A little more vertical breathing for the larger type. */
  body.cy-product-v39 .cy-product-head-v39__title{
    margin-bottom:13px!important;
  }

  body.cy-product-v39 .cy-rating-final-v39{
    margin-bottom:13px!important;
  }

  body.cy-product-v39 .cy-detail-brand-v22,
  body.cy-product-v39 .cy29-brand{
    margin-bottom:16px!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26{
    grid-template-columns:32px minmax(0,1fr)!important;
  }

  body.cy-product-v39 .cy-buybox-service-v26 svg{
    width:28px!important;
    height:28px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon{
    width:52px!important;
    height:52px!important;
  }

  body.cy-product-v39 .cy-product-benefit-v26__icon svg{
    width:27px!important;
    height:27px!important;
  }

  /* Do not touch "Prečo si ju zamilujete?" or anything below. */
}


/* =========================================================
   V50 – CLEAN MOBILE PRODUCT GALLERY
   MOBILE ONLY. Desktop V46 stays untouched.
   Replaces the visual thumbnail rail only.
   ========================================================= */

@media(max-width:767px){

  /* Native Shoptet thumbnail rail stays in DOM for its gallery logic,
     but is visually removed. */
  body.type-product .p-thumbnails-wrapper,
  body.type-detail .p-thumbnails-wrapper{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    clip:rect(0 0 0 0)!important;
  }

  /* Our clean rail contains ONLY real image thumbnails. */
  .cy-mobile-thumbnails-v50{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    margin:9px 0 14px!important;
    padding:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    box-sizing:border-box!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .cy-mobile-thumbnails-v50::-webkit-scrollbar{
    display:none!important;
  }

  .cy-mobile-thumbnail-v50{
    appearance:none!important;
    -webkit-appearance:none!important;
    display:block!important;
    flex:0 0 calc((100% - 32px) / 5)!important;
    width:calc((100% - 32px) / 5)!important;
    min-width:0!important;
    aspect-ratio:1 / 1!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #ddd8cf!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:none!important;
    cursor:pointer!important;
  }

  .cy-mobile-thumbnail-v50.is-active{
    border:1.5px solid #304236!important;
  }

  .cy-mobile-thumbnail-v50 img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:9px!important;
    object-fit:cover!important;
  }
}


/* =========================================================
   V51 – CLEAN DESKTOP PRODUCT GALLERY
   Desktop/tablet gallery only. Product buy box is untouched.
   Mobile V50 gallery remains unchanged.
   ========================================================= */

@media(min-width:768px){

  /* Hide native Shoptet thumbnail UI only AFTER V51 successfully
     builds the clean rail. Native DOM stays alive for source data. */
  body .p-image-wrapper.cy-desktop-gallery-v51 > .p-thumbnails-wrapper,
  body .p-image-wrapper.cy-desktop-gallery-v51 > .p-thumbnails,
  body .p-image-wrapper.cy-desktop-gallery-v51 .p-thumbnails-wrapper{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
    clip:rect(0 0 0 0)!important;
  }

  .cy-desktop-thumbnails-v51{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
    margin:16px 0 0!important;
    padding:0 8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    box-sizing:border-box!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }

  .cy-desktop-thumbnails-v51::-webkit-scrollbar{
    display:none!important;
  }

  .cy-desktop-thumbnail-v51{
    appearance:none!important;
    -webkit-appearance:none!important;
    display:block!important;
    flex:0 0 84px!important;
    width:84px!important;
    height:84px!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
    border:1px solid #ddd8cf!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
    cursor:pointer!important;
  }

  .cy-desktop-thumbnail-v51.is-active{
    border:1.5px solid #304236!important;
  }

  .cy-desktop-thumbnail-v51 img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:11px!important;
    object-fit:cover!important;
  }
}


/* =========================================================
   V52 – CYPRIANUS PREMIUM CART
   CART PAGE ONLY.
   Product detail / gallery rules are not changed.
   ========================================================= */

body.cy-cart-v52{
  background:#fffdf9!important;
}

body.cy-cart-v52 #content,
body.cy-cart-v52 .content-wrapper,
body.cy-cart-v52 .content-inner,
body.cy-cart-v52 .cy-cart-root-v52{
  background:transparent!important;
}

body.cy-cart-v52 .cy-cart-root-v52{
  width:100%!important;
  max-width:1500px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:28px!important;
  padding-right:28px!important;
  box-sizing:border-box!important;
}

/* Native pieces replaced by the premium V52 equivalents. */
body.cy-cart-v52 .cy-cart-native-hide-v52{
  display:none!important;
}

/* ---------------------------------------------------------
   TRUST STRIP
   --------------------------------------------------------- */
.cy-cart-trust-v52{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:center;
  margin:0 0 28px;
  padding:17px 22px;
  border:1px solid #e5dfd4;
  border-radius:20px;
  background:#f7f4ed;
}

.cy-cart-trust-v52__item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-width:0;
  padding:0 28px;
  color:#304236;
}

.cy-cart-trust-v52__item + .cy-cart-trust-v52__item{
  border-left:1px solid #ddd7cc;
}

.cy-cart-trust-v52__item svg{
  width:30px;
  height:30px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
}

.cy-cart-trust-v52__item strong{
  display:block;
  margin:0 0 3px;
  font:600 14px/1.2 Arial,Helvetica,sans-serif;
}

.cy-cart-trust-v52__item small{
  display:block;
  color:#7d847f;
  font:400 11px/1.3 Arial,Helvetica,sans-serif;
}

/* ---------------------------------------------------------
   STEPS
   --------------------------------------------------------- */
.cy-cart-steps-v52{
  display:grid;
  grid-template-columns:auto 70px auto 70px auto;
  align-items:center;
  justify-content:start;
  margin:0 0 26px;
  color:#969c97;
  font-family:Arial,Helvetica,sans-serif;
}

.cy-cart-step-v52{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  white-space:nowrap;
  font-size:14px;
}

.cy-cart-step-v52__num{
  display:flex;
  width:38px;
  height:38px;
  flex:0 0 38px;
  align-items:center;
  justify-content:center;
  border:1px solid #d8d2c8;
  border-radius:50%;
  background:#f8f5ef;
  color:#6c746e;
}

.cy-cart-step-v52.is-active{
  color:#304236;
  font-weight:700;
}

.cy-cart-step-v52.is-active .cy-cart-step-v52__num{
  border-color:#304236;
  background:#304236;
  color:#fff;
}

.cy-cart-step-v52__line{
  height:1px;
  margin:0 15px;
  background:#d8d2c8;
}

/* ---------------------------------------------------------
   HEADING
   --------------------------------------------------------- */
.cy-cart-heading-v52{
  margin:0 0 20px;
}

.cy-cart-heading-v52 h1{
  margin:0 0 5px;
  color:#304236;
  font:400 38px/1.08 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
}

.cy-cart-heading-v52 p{
  margin:0;
  color:#858c87;
  font:400 14px/1.4 Arial,Helvetica,sans-serif;
}

/* ---------------------------------------------------------
   EXISTING NATIVE 2-COLUMN SHELL – WE KEEP IT FUNCTIONAL
   --------------------------------------------------------- */
.cy-cart-layout-v52{
  display:grid!important;
  grid-template-columns:minmax(0,1.72fr) minmax(360px,.92fr)!important;
  gap:28px!important;
  align-items:start!important;
  width:100%!important;
}

.cy-cart-left-v52,
.cy-cart-right-v52{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
}

.cy-cart-right-v52{
  position:relative;
}

/* ---------------------------------------------------------
   FREE SHIPPING PROGRESS
   --------------------------------------------------------- */
.cy-cart-progress-v52{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:52px minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  margin:0 0 16px;
  padding:16px 18px;
  border:1px solid #dfe5da;
  border-radius:17px;
  background:linear-gradient(90deg,#edf2ea 0%,#f7f5ee 76%,#f3efe5 100%);
}

.cy-cart-progress-v52::after{
  content:"";
  position:absolute;
  right:-35px;
  top:-52px;
  width:170px;
  height:170px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(132,155,126,.16),transparent 68%);
  pointer-events:none;
}

.cy-cart-progress-v52__icon{
  display:flex;
  width:46px;
  height:46px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#dbe6d7;
  color:#304236;
}

.cy-cart-progress-v52__icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
}

.cy-cart-progress-v52__title{
  margin:0 0 8px;
  color:#273a2e;
  font:500 13px/1.35 Arial,Helvetica,sans-serif;
}

.cy-cart-progress-v52__bar{
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:#d7ded2;
}

.cy-cart-progress-v52__bar span{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:#304236;
  transition:width .2s ease;
}

.cy-cart-progress-v52__amount{
  position:relative;
  z-index:1;
  color:#26382d;
  font:600 13px/1.2 Arial,Helvetica,sans-serif;
  white-space:nowrap;
}

/* ---------------------------------------------------------
   CART TABLE -> PRODUCT CARDS
   --------------------------------------------------------- */
body.cy-cart-v52 table.cart-table{
  display:block!important;
  width:100%!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  border-collapse:separate!important;
}

body.cy-cart-v52 table.cart-table thead,
body.cy-cart-v52 table.cart-table tfoot{
  display:none!important;
}

body.cy-cart-v52 table.cart-table tbody{
  display:block!important;
  width:100%!important;
}

body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
  position:relative!important;
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr) 132px 105px 30px!important;
  grid-template-areas:
    "img name qty total remove"
    "img perks perks perks perks"!important;
  gap:12px 18px!important;
  align-items:center!important;
  width:100%!important;
  margin:0 0 16px!important;
  padding:16px!important;
  border:1px solid #e3ded4!important;
  border-radius:18px!important;
  background:#fffdf9!important;
  box-shadow:0 9px 28px rgba(48,66,54,.035)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 > td{
  display:block!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  vertical-align:middle!important;
}

body.cy-cart-v52 .cy-cart-cell-image-v52{grid-area:img}
body.cy-cart-v52 .cy-cart-cell-name-v52{grid-area:name}
body.cy-cart-v52 .cy-cart-cell-qty-v52{grid-area:qty}
body.cy-cart-v52 .cy-cart-cell-total-v52{grid-area:total}
body.cy-cart-v52 .cy-cart-cell-remove-v52{grid-area:remove}
body.cy-cart-v52 .cy-cart-item-benefits-v52{grid-area:perks}

body.cy-cart-v52 .cy-cart-cell-image-v52 img{
  display:block!important;
  width:118px!important;
  height:118px!important;
  max-width:118px!important;
  margin:0!important;
  object-fit:cover!important;
  border-radius:14px!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52 a{
  color:#304236!important;
  font:400 17px/1.22 Georgia,"Times New Roman",serif!important;
  text-decoration:none!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52 small,
body.cy-cart-v52 .cy-cart-cell-name-v52 .variant-name{
  display:block!important;
  margin-top:5px!important;
  color:#818782!important;
  font:400 11px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v52 .cy-cart-cell-unit-v52{
  display:none!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52 .quantity,
body.cy-cart-v52 .cy-cart-cell-qty-v52 .amount{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 38px!important;
  width:132px!important;
  height:42px!important;
  overflow:hidden!important;
  margin:0!important;
  border:1px solid #d8d2c7!important;
  border-radius:999px!important;
  background:#fffdf9!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52 input,
body.cy-cart-v52 .cy-cart-cell-qty-v52 button{
  min-width:0!important;
  height:40px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#26382d!important;
  font-size:17px!important;
}

body.cy-cart-v52 .cy-cart-cell-total-v52{
  color:#16271d!important;
  font:700 19px/1.2 Arial,Helvetica,sans-serif!important;
  text-align:right!important;
  white-space:nowrap!important;
}

body.cy-cart-v52 .cy-cart-cell-remove-v52{
  text-align:right!important;
}

body.cy-cart-v52 .cy-cart-cell-remove-v52 a,
body.cy-cart-v52 .cy-cart-cell-remove-v52 button{
  display:flex!important;
  width:30px!important;
  height:30px!important;
  align-items:center!important;
  justify-content:center!important;
  margin-left:auto!important;
  border:0!important;
  background:transparent!important;
  color:#536057!important;
  font-size:0!important;
  text-decoration:none!important;
}

body.cy-cart-v52 .cy-cart-cell-remove-v52 a::before,
body.cy-cart-v52 .cy-cart-cell-remove-v52 button::before{
  content:"×";
  font:300 28px/1 Arial,Helvetica,sans-serif;
}

.cy-cart-item-benefits-v52{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:0!important;
  padding-top:10px!important;
  border-top:1px solid #ebe6dd!important;
}

.cy-cart-item-benefits-v52 > span{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  padding:0 10px;
  color:#5b665f;
  font:500 10.5px/1.25 Arial,Helvetica,sans-serif;
}

.cy-cart-item-benefits-v52 > span + span{
  border-left:1px solid #e7e1d8;
}

.cy-cart-item-benefits-v52 i{
  display:flex;
  width:30px;
  height:30px;
  flex:0 0 30px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#edf2ec;
  color:#53665a;
  font-style:normal;
  font-size:16px;
}

/* ---------------------------------------------------------
   EXISTING GIFT + COUPON BLOCK
   Functionality remains native.
   --------------------------------------------------------- */
.cy-cart-gift-v52{
  margin:0 0 16px!important;
  padding:18px!important;
  border:1px solid #e3ded4!important;
  border-radius:18px!important;
  background:#fffdf9!important;
  box-shadow:0 9px 26px rgba(48,66,54,.025)!important;
}

.cy-cart-gift-v52 .cy-cart-gift-heading-v52{
  margin:0 0 4px!important;
  color:#304236!important;
  font:400 25px/1.12 Georgia,"Times New Roman",serif!important;
}

.cy-cart-gift-subtitle-v52{
  margin:0 0 15px;
  color:#7f8580;
  font:400 12px/1.4 Arial,Helvetica,sans-serif;
}

.cy-cart-gift-v52 img{
  border-radius:11px!important;
}

.cy-cart-gift-v52 a{
  color:#304236!important;
}

.cy-cart-gift-v52 .cy-cart-coupon-row-v52{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 130px!important;
  gap:10px!important;
  align-items:center!important;
  margin-top:15px!important;
  padding-top:15px!important;
  border-top:1px solid #e8e2d9!important;
}

.cy-cart-gift-v52 .cy-cart-coupon-row-v52 input[type="text"],
.cy-cart-gift-v52 .cy-cart-coupon-row-v52 input[type="search"]{
  width:100%!important;
  height:44px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid #d9d4cb!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
}

.cy-cart-gift-v52 .cy-cart-coupon-row-v52 button,
.cy-cart-gift-v52 .cy-cart-coupon-row-v52 input[type="submit"]{
  height:44px!important;
  margin:0!important;
  border:1px solid #304236!important;
  border-radius:10px!important;
  background:#f5f5ee!important;
  color:#304236!important;
  font-weight:700!important;
}

/* ---------------------------------------------------------
   PREMIUM SUMMARY
   --------------------------------------------------------- */
.cy-cart-summary-card-v52{
  position:sticky;
  top:18px;
  padding:22px;
  border:1px solid #e3ded4;
  border-radius:20px;
  background:#fffdf9;
  box-shadow:0 14px 34px rgba(48,66,54,.045);
}

.cy-cart-summary-card-v52 h2{
  margin:0 0 18px;
  color:#304236;
  font:400 27px/1.1 Georgia,"Times New Roman",serif;
}

.cy-cart-summary-v52__row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  padding:12px 0;
  border-bottom:1px solid #ebe6dd;
  color:#27372d;
  font-family:Arial,Helvetica,sans-serif;
}

.cy-cart-summary-v52__row strong{
  display:block;
  font-size:13px;
}

.cy-cart-summary-v52__row small{
  display:block;
  margin-top:3px;
  color:#888e89;
  font-size:10.5px;
}

.cy-cart-summary-v52__value{
  text-align:right;
  font-size:13px;
  white-space:nowrap;
}

.cy-cart-summary-v52__total{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:end;
  padding:17px 0 12px;
}

.cy-cart-summary-v52__total strong{
  color:#1f3126;
  font:600 16px/1.2 Arial,Helvetica,sans-serif;
}

.cy-cart-summary-v52__total small{
  display:block;
  margin-top:3px;
  color:#8a908b;
  font:400 10.5px/1.3 Arial,Helvetica,sans-serif;
}

.cy-cart-summary-v52__total-value{
  color:#15271c;
  font:700 28px/1 Georgia,"Times New Roman",serif;
}

.cy-cart-summary-v52__cta{
  display:flex;
  width:100%;
  height:52px;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin:5px 0 10px;
  padding:0 15px;
  border:1px solid #304236;
  border-radius:14px;
  background:#304236;
  color:#fff;
  font:700 13px/1 Arial,Helvetica,sans-serif;
  cursor:pointer;
}

.cy-cart-summary-v52__back{
  display:flex;
  width:100%;
  height:44px;
  align-items:center;
  justify-content:center;
  gap:8px;
  box-sizing:border-box;
  border:1px solid #d8d2c7;
  border-radius:14px;
  background:#f7f4ed;
  color:#304236;
  font:600 12px/1 Arial,Helvetica,sans-serif;
  text-decoration:none;
}

.cy-cart-summary-benefits-v52{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #e8e2d8;
}

.cy-cart-summary-benefits-v52 > div{
  min-width:0;
  padding:0 8px;
  text-align:center;
  color:#304236;
  font:500 10.5px/1.25 Arial,Helvetica,sans-serif;
}

.cy-cart-summary-benefits-v52 > div + div{
  border-left:1px solid #e6e0d7;
}

.cy-cart-summary-benefits-v52 i{
  display:block;
  margin:0 0 6px;
  color:#53665a;
  font-style:normal;
  font-size:23px;
}

/* ---------------------------------------------------------
   HELP
   --------------------------------------------------------- */
.cy-cart-help-v52{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:12px;
  margin-top:16px;
  padding:14px 16px;
  border:1px solid #e3ded4;
  border-radius:18px;
  background:#fffdf9;
}

.cy-cart-help-v52__icon{
  display:flex;
  width:50px;
  height:50px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#edf2ec;
  color:#304236;
  font-size:22px;
}

.cy-cart-help-v52 strong{
  display:block;
  margin:0 0 3px;
  color:#304236;
  font:600 13px/1.2 Arial,Helvetica,sans-serif;
}

.cy-cart-help-v52 p{
  margin:0 0 6px;
  color:#7c837e;
  font:400 10.5px/1.35 Arial,Helvetica,sans-serif;
}

.cy-cart-help-v52 a{
  display:inline-block;
  margin-right:13px;
  color:#304236;
  font:500 11px/1.35 Arial,Helvetica,sans-serif;
  text-decoration:none;
}

/* =========================================================
   MOBILE CART
   ========================================================= */
@media(max-width:767px){

  body.cy-cart-v52 .cy-cart-root-v52{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .cy-cart-trust-v52{
    margin-bottom:18px;
    padding:11px 5px;
    border-radius:16px;
  }

  .cy-cart-trust-v52__item{
    display:block;
    padding:0 8px;
    text-align:center;
  }

  .cy-cart-trust-v52__item svg{
    width:26px;
    height:26px;
    margin-bottom:5px;
  }

  .cy-cart-trust-v52__item strong{
    font-size:10px;
    line-height:1.2;
  }

  .cy-cart-trust-v52__item small{
    display:none;
  }

  .cy-cart-steps-v52{
    grid-template-columns:auto 20px auto 20px auto;
    width:100%;
    margin-bottom:20px;
  }

  .cy-cart-step-v52{
    display:block;
    text-align:center;
    white-space:normal;
    font-size:10px;
  }

  .cy-cart-step-v52__num{
    width:34px;
    height:34px;
    margin:0 auto 5px;
  }

  .cy-cart-step-v52__line{
    width:20px;
    margin:0;
  }

  .cy-cart-heading-v52 h1{
    font-size:34px;
  }

  .cy-cart-heading-v52 p{
    font-size:13px;
  }

  .cy-cart-layout-v52{
    display:block!important;
  }

  .cy-cart-progress-v52{
    grid-template-columns:46px minmax(0,1fr);
    gap:10px;
    padding:14px;
  }

  .cy-cart-progress-v52__amount{
    grid-column:2;
    margin-top:-2px;
    font-size:11px;
  }

  body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
    grid-template-columns:104px minmax(0,1fr) 28px!important;
    grid-template-areas:
      "img name remove"
      "img qty total"
      "perks perks perks"!important;
    gap:12px!important;
    padding:14px!important;
    border-radius:16px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-image-v52 img{
    width:104px!important;
    height:104px!important;
    max-width:104px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-name-v52 a{
    font-size:16.5px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-qty-v52 .quantity,
  body.cy-cart-v52 .cy-cart-cell-qty-v52 .amount{
    width:138px!important;
    height:44px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-total-v52{
    font-size:18px!important;
  }

  .cy-cart-item-benefits-v52 > span{
    display:block;
    padding:0 5px;
    text-align:center;
    font-size:9.5px;
  }

  .cy-cart-item-benefits-v52 i{
    margin:0 auto 5px;
  }

  .cy-cart-gift-v52{
    padding:15px!important;
  }

  .cy-cart-gift-v52 .cy-cart-gift-heading-v52{
    font-size:24px!important;
  }

  .cy-cart-gift-v52 .cy-cart-coupon-row-v52{
    grid-template-columns:minmax(0,1fr) 105px!important;
  }

  .cy-cart-right-v52{
    margin-top:16px!important;
  }

  .cy-cart-summary-card-v52{
    position:static;
    padding:18px;
    border-radius:18px;
  }

  .cy-cart-summary-card-v52 h2{
    font-size:26px;
  }

  .cy-cart-summary-v52__total-value{
    font-size:28px;
  }

  .cy-cart-help-v52{
    margin-bottom:20px;
  }
}


/* =========================================================
   V53 – CART REFINEMENT
   Fixes real Shoptet cell mapping, totals and cross-sell.
   CART PAGE ONLY.
   ========================================================= */

body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 > td.cy-cart-cell-extra-v53{
  display:none!important;
}

/* Remove native stock/unit-price fragments from the premium card. */
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 .availability,
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 .p-availability,
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 .stock,
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 .p-stock,
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52 .unit-price{
  display:none!important;
}

/* Product card alignment closer to the approved AI reference. */
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
  grid-template-columns:126px minmax(0,1fr) 142px 108px 28px!important;
  gap:12px 20px!important;
  padding:17px!important;
}

body.cy-cart-v52 .cy-cart-cell-image-v52,
body.cy-cart-v52 .cy-cart-cell-name-v52{
  align-self:start!important;
}

body.cy-cart-v52 .cy-cart-cell-image-v52 a{
  display:block!important;
  width:126px!important;
  height:126px!important;
  overflow:hidden!important;
  border-radius:14px!important;
}

body.cy-cart-v52 .cy-cart-cell-image-v52 img{
  width:126px!important;
  height:126px!important;
  max-width:126px!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52{
  padding-top:3px!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52 a{
  font-size:18px!important;
  line-height:1.22!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52{
  justify-self:end!important;
}

body.cy-cart-v52 .cy-cart-cell-total-v52{
  justify-self:end!important;
  align-self:center!important;
  font-size:20px!important;
}

.cy-cart-item-benefits-v52{
  margin-top:1px!important;
  padding-top:12px!important;
}

.cy-cart-item-benefits-v52 > span{
  justify-content:center!important;
  font-size:11px!important;
}

/* Progress and heading slightly more substantial. */
.cy-cart-progress-v52{
  padding:18px 20px!important;
}

.cy-cart-heading-v52 h1{
  font-size:40px!important;
}

.cy-cart-heading-v52 p{
  font-size:14.5px!important;
}

/* One clean related-product card. */
.cy-cart-upsell-v53{
  margin:0 0 16px;
  padding:19px;
  border:1px solid #e3ded4;
  border-radius:18px;
  background:#fffdf9;
  box-shadow:0 9px 26px rgba(48,66,54,.025);
}

.cy-cart-upsell-v53 h2{
  margin:0 0 4px;
  color:#304236;
  font:400 26px/1.1 Georgia,"Times New Roman",serif;
}

.cy-cart-upsell-v53 > p{
  margin:0 0 15px;
  color:#7d847f;
  font:400 12px/1.4 Arial,Helvetica,sans-serif;
}

.cy-cart-upsell-v53__product{
  display:grid;
  grid-template-columns:86px minmax(0,1fr) 132px;
  gap:14px;
  align-items:center;
}

.cy-cart-upsell-v53__product img{
  display:block;
  width:86px;
  height:86px;
  object-fit:cover;
  border-radius:12px;
}

.cy-cart-upsell-v53__name{
  margin:0 0 4px;
  color:#304236;
  font:400 17px/1.2 Georgia,"Times New Roman",serif;
}

.cy-cart-upsell-v53__desc{
  margin:0 0 5px;
  color:#7b827d;
  font:400 11px/1.3 Arial,Helvetica,sans-serif;
}

.cy-cart-upsell-v53__price{
  color:#17271e;
  font:700 15px/1.2 Arial,Helvetica,sans-serif;
}

.cy-cart-upsell-v53__add{
  height:44px;
  border:1px solid #304236;
  border-radius:11px;
  background:#f4f5ef;
  color:#304236;
  font:700 12px/1 Arial,Helvetica,sans-serif;
  cursor:pointer;
}

/* Gift/coupon block should follow the upsell, compact and clean. */
.cy-cart-gift-v52{
  clear:both!important;
  overflow:hidden!important;
}

.cy-cart-gift-v52 .cy-cart-gift-heading-v52{
  margin-bottom:4px!important;
}

.cy-cart-gift-subtitle-v52{
  margin-bottom:17px!important;
}

/* Summary closer to AI scale / hierarchy. */
.cy-cart-summary-card-v52{
  padding:26px!important;
}

.cy-cart-summary-card-v52 h2{
  margin-bottom:22px!important;
  font-size:30px!important;
}

.cy-cart-summary-v52__row{
  padding:14px 0!important;
}

.cy-cart-summary-v52__row strong{
  font-size:14px!important;
}

.cy-cart-summary-v52__value{
  font-size:14px!important;
}

.cy-cart-summary-v52__total{
  padding:20px 0 15px!important;
}

.cy-cart-summary-v52__total strong{
  font-size:17px!important;
}

.cy-cart-summary-v52__total-value{
  font-size:31px!important;
}

.cy-cart-summary-v52__cta{
  height:55px!important;
  font-size:14px!important;
}

.cy-cart-summary-v52__back{
  height:46px!important;
}

/* Replace emoji-like benefit appearance with restrained editorial symbols. */
.cy-cart-summary-benefits-v52 i{
  color:#53665a!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:24px!important;
}

/* More balanced support block. */
.cy-cart-help-v52{
  padding:16px 18px!important;
}

/* MOBILE */
@media(max-width:767px){

  body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
    grid-template-columns:108px minmax(0,1fr) 28px!important;
    grid-template-areas:
      "img name remove"
      "img qty total"
      "perks perks perks"!important;
    padding:14px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-image-v52 a,
  body.cy-cart-v52 .cy-cart-cell-image-v52 img{
    width:108px!important;
    height:108px!important;
    max-width:108px!important;
  }

  .cy-cart-upsell-v53{
    padding:15px;
  }

  .cy-cart-upsell-v53 h2{
    font-size:24px;
  }

  .cy-cart-upsell-v53__product{
    grid-template-columns:76px minmax(0,1fr);
    gap:12px;
  }

  .cy-cart-upsell-v53__product img{
    width:76px;
    height:76px;
  }

  .cy-cart-upsell-v53__add{
    grid-column:2;
    width:100%;
  }

  .cy-cart-summary-card-v52{
    padding:19px!important;
  }
}


/* =========================================================
   V54 – CART VISUAL MATCH TO APPROVED AI REFERENCE
   CART ONLY. Product detail/gallery remain untouched.
   ========================================================= */

body.cy-cart-v52{
  background:
    radial-gradient(ellipse at 0% 42%, rgba(233,238,233,.55) 0, rgba(233,238,233,0) 19%),
    radial-gradient(ellipse at 100% 18%, rgba(241,233,219,.62) 0, rgba(241,233,219,0) 19%),
    #fffdf9!important;
}

body.cy-cart-v52 .cy-cart-root-v52{
  max-width:1540px!important;
  padding-left:34px!important;
  padding-right:34px!important;
}

/* Trust bar – taller, more editorial, closer to reference. */
.cy-cart-trust-v52{
  min-height:82px!important;
  margin-bottom:32px!important;
  padding:18px 30px!important;
  border-radius:22px!important;
  background:rgba(247,244,237,.96)!important;
}

.cy-cart-trust-v52__item{
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:15px!important;
  padding:0 42px!important;
}

.cy-cart-trust-v52__item svg{
  width:36px!important;
  height:36px!important;
}

.cy-cart-trust-v52__item strong{
  font-size:15px!important;
  line-height:1.18!important;
}

.cy-cart-trust-v52__item small{
  margin-top:4px!important;
  font-size:12px!important;
}

/* Steps – more air and stronger circles. */
.cy-cart-steps-v52{
  grid-template-columns:auto 90px auto 90px auto!important;
  margin-bottom:30px!important;
}

.cy-cart-step-v52{
  gap:13px!important;
  font-size:15px!important;
}

.cy-cart-step-v52__num{
  width:42px!important;
  height:42px!important;
  flex-basis:42px!important;
  font-size:15px!important;
}

.cy-cart-step-v52__line{
  margin:0 18px!important;
}

/* Main title closer to the large AI heading. */
.cy-cart-heading-v52{
  margin-bottom:24px!important;
}

.cy-cart-heading-v52 h1{
  font-size:46px!important;
  line-height:1.04!important;
}

.cy-cart-heading-v52 p{
  margin-top:7px!important;
  font-size:16px!important;
}

/* Main two-column proportions. */
.cy-cart-layout-v52{
  grid-template-columns:minmax(0,1.68fr) minmax(410px,.92fr)!important;
  gap:34px!important;
}

/* Shipping motivator – larger and visually richer. */
.cy-cart-progress-v52{
  min-height:88px!important;
  grid-template-columns:58px minmax(0,1fr) auto!important;
  gap:16px!important;
  margin-bottom:18px!important;
  padding:18px 22px!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 95% 50%,rgba(124,151,120,.13),transparent 24%),
    linear-gradient(90deg,#eef3eb 0%,#f7f5ee 75%,#f3eee3 100%)!important;
}

.cy-cart-progress-v52__icon{
  width:52px!important;
  height:52px!important;
}

.cy-cart-progress-v52__icon svg{
  width:30px!important;
  height:30px!important;
}

.cy-cart-progress-v52__title{
  margin-bottom:10px!important;
  font-size:14.5px!important;
}

.cy-cart-progress-v52__bar{
  height:11px!important;
}

.cy-cart-progress-v52__amount{
  font-size:14px!important;
}

/* Product cards. */
body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
  min-height:168px!important;
  grid-template-columns:132px minmax(0,1fr) 150px 110px 32px!important;
  grid-template-areas:
    "img name qty total remove"
    "img perks perks perks perks"!important;
  gap:14px 20px!important;
  margin-bottom:18px!important;
  padding:18px!important;
  border-radius:20px!important;
  background:#fffdf9!important;
}

body.cy-cart-v52 .cy-cart-cell-image-v52 a,
body.cy-cart-v52 .cy-cart-cell-image-v52 img{
  width:132px!important;
  height:132px!important;
  max-width:132px!important;
  border-radius:15px!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52{
  padding-top:4px!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52 a{
  font-size:19px!important;
  line-height:1.18!important;
}

body.cy-cart-v52 .cy-cart-cell-name-v52 small,
body.cy-cart-v52 .cy-cart-cell-name-v52 .variant-name{
  margin-top:7px!important;
  font-size:12px!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52 .quantity,
body.cy-cart-v52 .cy-cart-cell-qty-v52 .amount{
  grid-template-columns:42px 1fr 42px!important;
  width:148px!important;
  height:48px!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52 input,
body.cy-cart-v52 .cy-cart-cell-qty-v52 button,
body.cy-cart-v52 .cy-cart-cell-qty-v52 a,
body.cy-cart-v52 .cy-cart-cell-qty-v52 .increase,
body.cy-cart-v52 .cy-cart-cell-qty-v52 .decrease{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:46px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#26382d!important;
  box-shadow:none!important;
  text-align:center!important;
  font-size:18px!important;
  line-height:1!important;
}

body.cy-cart-v52 .cy-cart-cell-qty-v52 input{
  width:100%!important;
  min-width:0!important;
  font-weight:600!important;
}

body.cy-cart-v52 .cy-cart-cell-total-v52{
  font-size:21px!important;
}

body.cy-cart-v52 .cy-cart-cell-remove-v52 a::before,
body.cy-cart-v52 .cy-cart-cell-remove-v52 button::before{
  color:#304236!important;
}

/* Benefit row must actually span the entire lower part of card. */
.cy-cart-item-benefits-v52{
  grid-area:perks!important;
  justify-self:stretch!important;
  align-self:end!important;
  width:100%!important;
  min-width:0!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin:4px 0 0!important;
  padding:13px 0 0!important;
}

.cy-cart-item-benefits-v52 > span{
  justify-content:center!important;
  padding:0 14px!important;
  font-size:11.5px!important;
  text-align:center!important;
}

.cy-cart-item-benefits-v52 i{
  width:34px!important;
  height:34px!important;
  flex-basis:34px!important;
}

/* Never show the stray native recommendation stock / button rail. */
body.cy-cart-v52 .cy-cart-native-hide-v52{
  display:none!important;
}

/* Cross-sell – almost 1:1 visual hierarchy from the AI proposal. */
.cy-cart-upsell-v53{
  margin:0 0 18px!important;
  padding:22px!important;
  border-radius:20px!important;
}

.cy-cart-upsell-v53 h2{
  font-size:30px!important;
}

.cy-cart-upsell-v53 > p{
  margin:5px 0 18px!important;
  font-size:13px!important;
}

.cy-cart-upsell-v53__product{
  grid-template-columns:100px minmax(0,1fr) 170px!important;
  gap:16px!important;
}

.cy-cart-upsell-v53__product img{
  width:100px!important;
  height:100px!important;
  border-radius:13px!important;
}

.cy-cart-upsell-v53__name{
  font-size:18px!important;
}

.cy-cart-upsell-v53__desc{
  margin-top:5px!important;
  font-size:12px!important;
}

.cy-cart-upsell-v53__price{
  margin-top:7px!important;
  font-size:17px!important;
}

.cy-cart-upsell-v53__add{
  height:50px!important;
  border-radius:12px!important;
  font-size:13px!important;
}

/* Gift block – selected gift + coupon as deliberate sections. */
.cy-cart-gift-v52{
  margin-bottom:18px!important;
  padding:22px!important;
  border-radius:20px!important;
  overflow:visible!important;
}

.cy-cart-gift-v52 .cy-cart-gift-heading-v52{
  font-size:29px!important;
}

.cy-cart-gift-subtitle-v52{
  margin:5px 0 16px!important;
  font-size:12.5px!important;
}

.cy-cart-native-gift-source-v54{
  display:none!important;
}

.cy-cart-gift-product-v54{
  display:grid;
  grid-template-columns:72px minmax(0,1fr) 110px;
  gap:14px;
  align-items:center;
  padding:12px 0 16px;
  border-bottom:1px solid #e9e3da;
}

.cy-cart-gift-product-v54 img{
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  border-radius:11px!important;
}

.cy-cart-gift-product-v54__copy strong{
  display:block;
  color:#304236;
  font:400 16px/1.22 Georgia,"Times New Roman",serif;
}

.cy-cart-gift-product-v54__copy small{
  display:block;
  margin-top:4px;
  color:#7f8681;
  font:400 11px/1.3 Arial,Helvetica,sans-serif;
}

.cy-cart-gift-product-v54 button{
  height:42px;
  border:1px solid #304236;
  border-radius:10px;
  background:#f5f5ef;
  color:#304236;
  font-weight:700;
}

.cy-cart-coupon-label-v54{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin-top:16px;
}

.cy-cart-coupon-label-v54__icon{
  display:flex;
  width:44px;
  height:44px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#edf1e9;
  color:#304236;
  font:400 25px/1 Georgia,"Times New Roman",serif;
}

.cy-cart-coupon-label-v54 strong{
  display:block;
  color:#304236;
  font:600 13px/1.2 Arial,Helvetica,sans-serif;
}

.cy-cart-coupon-label-v54 small{
  display:block;
  margin-top:3px;
  color:#7e8580;
  font:400 11px/1.3 Arial,Helvetica,sans-serif;
}

.cy-cart-gift-v52 .cy-cart-coupon-row-v52{
  margin-top:12px!important;
  padding-top:0!important;
  border-top:0!important;
}

/* Right summary – larger card, more like AI reference. */
.cy-cart-summary-card-v52{
  top:22px!important;
  padding:28px!important;
  border-radius:22px!important;
}

.cy-cart-summary-card-v52 h2{
  margin-bottom:24px!important;
  font-size:33px!important;
}

.cy-cart-summary-v52__row{
  padding:16px 0!important;
}

.cy-cart-summary-v52__row strong{
  font-size:14.5px!important;
}

.cy-cart-summary-v52__row small{
  margin-top:5px!important;
  font-size:11px!important;
}

.cy-cart-summary-v52__value{
  font-size:14.5px!important;
}

.cy-cart-summary-v52__total{
  padding:22px 0 17px!important;
}

.cy-cart-summary-v52__total strong{
  font-size:18px!important;
}

.cy-cart-summary-v52__total-value{
  font-size:34px!important;
}

.cy-cart-summary-v52__cta{
  height:58px!important;
  border-radius:15px!important;
  font-size:14.5px!important;
}

.cy-cart-summary-v52__back{
  height:48px!important;
  border-radius:14px!important;
  font-size:12.5px!important;
}

/* Exactly the 3 requested benefits. */
.cy-cart-summary-benefits-v52{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin-top:20px!important;
  padding-top:19px!important;
}

.cy-cart-summary-benefits-v52 > div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  min-height:86px!important;
  padding:0 12px!important;
  font-size:11.5px!important;
}

.cy-cart-summary-benefits-v52 i{
  display:flex!important;
  width:38px!important;
  height:38px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
}

.cy-cart-summary-benefits-v52 i svg{
  width:32px!important;
  height:32px!important;
  fill:none!important;
  stroke:#53665a!important;
  stroke-width:1.5!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.cy-cart-summary-benefits-v52 span{
  display:block!important;
}

/* Help card closer to target proportions. */
.cy-cart-help-v52{
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:14px!important;
  margin-top:18px!important;
  padding:17px 18px!important;
  border-radius:18px!important;
}

.cy-cart-help-v52__icon{
  width:54px!important;
  height:54px!important;
  font-size:23px!important;
}

.cy-cart-help-v52 strong{
  font-size:14px!important;
}

.cy-cart-help-v52 p{
  margin-top:4px!important;
  font-size:11px!important;
}

.cy-cart-help-v52 a{
  margin-top:4px!important;
  font-size:11.5px!important;
}

/* ---------------- MOBILE ---------------- */
@media(max-width:767px){

  body.cy-cart-v52 .cy-cart-root-v52{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .cy-cart-trust-v52{
    min-height:0!important;
    padding:12px 4px!important;
  }

  .cy-cart-trust-v52__item{
    padding:0 8px!important;
  }

  .cy-cart-trust-v52__item svg{
    width:28px!important;
    height:28px!important;
  }

  .cy-cart-trust-v52__item strong{
    font-size:10.5px!important;
  }

  .cy-cart-steps-v52{
    grid-template-columns:auto 20px auto 20px auto!important;
  }

  .cy-cart-heading-v52 h1{
    font-size:36px!important;
  }

  .cy-cart-layout-v52{
    display:block!important;
  }

  .cy-cart-progress-v52{
    min-height:0!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    padding:15px!important;
  }

  .cy-cart-progress-v52__amount{
    grid-column:2!important;
  }

  body.cy-cart-v52 table.cart-table tr.cy-cart-item-v52{
    min-height:0!important;
    grid-template-columns:104px minmax(0,1fr) 28px!important;
    grid-template-areas:
      "img name remove"
      "img qty total"
      "perks perks perks"!important;
    padding:14px!important;
  }

  body.cy-cart-v52 .cy-cart-cell-image-v52 a,
  body.cy-cart-v52 .cy-cart-cell-image-v52 img{
    width:104px!important;
    height:104px!important;
    max-width:104px!important;
  }

  .cy-cart-item-benefits-v52 > span{
    display:block!important;
    padding:0 5px!important;
    font-size:9.5px!important;
  }

  .cy-cart-upsell-v53,
  .cy-cart-gift-v52{
    padding:16px!important;
  }

  .cy-cart-upsell-v53 h2,
  .cy-cart-gift-v52 .cy-cart-gift-heading-v52{
    font-size:25px!important;
  }

  .cy-cart-upsell-v53__product{
    grid-template-columns:80px minmax(0,1fr)!important;
  }

  .cy-cart-upsell-v53__product img{
    width:80px!important;
    height:80px!important;
  }

  .cy-cart-upsell-v53__add{
    grid-column:2!important;
    width:100%!important;
  }

  .cy-cart-gift-product-v54{
    grid-template-columns:64px minmax(0,1fr) 90px!important;
  }

  .cy-cart-gift-product-v54 img{
    width:64px!important;
    height:64px!important;
  }

  .cy-cart-gift-v52 .cy-cart-coupon-row-v52{
    grid-template-columns:minmax(0,1fr) 100px!important;
  }

  .cy-cart-summary-card-v52{
    position:static!important;
    padding:20px!important;
  }

  .cy-cart-summary-card-v52 h2{
    font-size:28px!important;
  }

  .cy-cart-summary-benefits-v52 > div{
    min-height:78px!important;
    padding:0 6px!important;
    font-size:10px!important;
  }
}


/* =========================================================
   V55 – PREMIUM CART / 95% AI REFERENCE MATCH
   Sole visual owner on the cart page.
   ========================================================= */

body.cy-cart-v55{
  --cy55-green:#304236;
  --cy55-green-dark:#26372d;
  --cy55-paper:#fffdf9;
  --cy55-cream:#f7f4ee;
  --cy55-soft:#edf2ec;
  --cy55-line:#ded8cd;
  --cy55-muted:#7a827d;
  --cy55-gold:#b8893e;
  background-color:#fffdf9!important;
  background-image:
    radial-gradient(ellipse at 0% 30%,rgba(235,239,232,.82) 0,rgba(235,239,232,0) 19%),
    radial-gradient(ellipse at 100% 18%,rgba(241,234,220,.82) 0,rgba(241,234,220,0) 20%)!important;
}

body.cy-cart-v55 #content,
body.cy-cart-v55 .content-wrapper,
body.cy-cart-v55 .content-inner{
  background:transparent!important;
}

body.cy-cart-v55 .cy-v55-root{
  position:relative!important;
  width:100%!important;
  max-width:1510px!important;
  margin:0 auto!important;
  padding:0 34px 44px!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v55-root::before,
body.cy-cart-v55 .cy-v55-root::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:170px;
  height:300px;
  pointer-events:none;
  opacity:.34;
  background-repeat:no-repeat;
  background-size:contain;
}

body.cy-cart-v55 .cy-v55-root::before{
  left:-75px;
  top:55px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 300'%3E%3Cg fill='none' stroke='%23cfd9cf' stroke-width='2'%3E%3Cpath d='M18 287C55 218 67 151 61 72'/%3E%3Cpath d='M58 212c-35-9-47-35-46-62 30 3 48 23 46 62Z'/%3E%3Cpath d='M62 166c29-13 45-35 48-60-29-1-46 21-48 60Z'/%3E%3Cpath d='M62 115C37 104 26 84 29 60c26 4 38 24 33 55Z'/%3E%3Cpath d='M63 92c22-13 32-31 30-50-22 2-33 18-30 50Z'/%3E%3C/g%3E%3C/svg%3E");
}

body.cy-cart-v55 .cy-v55-root::after{
  right:-70px;
  top:120px;
  transform:scaleX(-1);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 300'%3E%3Cg fill='none' stroke='%23dfd3bd' stroke-width='2'%3E%3Cpath d='M18 287C55 218 67 151 61 72'/%3E%3Cpath d='M58 212c-35-9-47-35-46-62 30 3 48 23 46 62Z'/%3E%3Cpath d='M62 166c29-13 45-35 48-60-29-1-46 21-48 60Z'/%3E%3Cpath d='M62 115C37 104 26 84 29 60c26 4 38 24 33 55Z'/%3E%3Cpath d='M63 92c22-13 32-31 30-50-22 2-33 18-30 50Z'/%3E%3C/g%3E%3C/svg%3E");
}

body.cy-cart-v55 .cy-v55-native-hidden,
body.cy-cart-v55 .cy-v55-native-cell,
body.cy-cart-v55 .cy-v55-native-gift-heading,
body.cy-cart-v55 .cy-v55-native-gift-product,
body.cy-cart-v55 .cy-v55-hide-percent{
  display:none!important;
}

/* ---------- top trust bar ---------- */
body.cy-cart-v55 .cy-v55-trust{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  min-height:82px!important;
  margin:0 0 30px!important;
  padding:16px 28px!important;
  border:1px solid var(--cy55-line)!important;
  border-radius:22px!important;
  background:rgba(248,245,238,.95)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v55-trust > div{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr)!important;
  gap:14px!important;
  align-items:center!important;
  min-width:0!important;
  padding:0 38px!important;
  color:var(--cy55-green)!important;
}

body.cy-cart-v55 .cy-v55-trust > div + div{
  border-left:1px solid #ddd7cc!important;
}

body.cy-cart-v55 .cy-v55-trust i{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:38px!important;
  height:38px!important;
}

body.cy-cart-v55 .cy-v55-trust svg{
  width:34px!important;
  height:34px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.45!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

body.cy-cart-v55 .cy-v55-trust strong{
  display:block!important;
  margin:0 0 3px!important;
  color:var(--cy55-green)!important;
  font:600 15px/1.15 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-trust small{
  display:block!important;
  color:#7c837e!important;
  font:400 12px/1.3 Arial,Helvetica,sans-serif!important;
}

/* ---------- steps ---------- */
body.cy-cart-v55 .cy-v55-steps{
  display:grid!important;
  grid-template-columns:auto 88px auto 88px auto!important;
  align-items:center!important;
  justify-content:start!important;
  margin:0 0 28px!important;
  color:#959b96!important;
  font-family:Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-steps > div{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  white-space:nowrap!important;
  font-size:14px!important;
}

body.cy-cart-v55 .cy-v55-steps b{
  display:flex!important;
  width:40px!important;
  height:40px!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #d8d2c7!important;
  border-radius:50%!important;
  background:#f8f5ef!important;
  color:#68716a!important;
  font:500 14px/1 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-steps .is-active{
  color:var(--cy55-green)!important;
  font-weight:700!important;
}

body.cy-cart-v55 .cy-v55-steps .is-active b{
  border-color:var(--cy55-green)!important;
  background:var(--cy55-green)!important;
  color:#fff!important;
}

body.cy-cart-v55 .cy-v55-steps > i{
  display:block!important;
  height:1px!important;
  margin:0 16px!important;
  background:#d8d2c7!important;
}

/* ---------- heading ---------- */
body.cy-cart-v55 .cy-v55-heading{
  margin:0 0 22px!important;
}

body.cy-cart-v55 .cy-v55-heading h1{
  margin:0!important;
  color:var(--cy55-green)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:44px!important;
  font-weight:400!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
}

body.cy-cart-v55 .cy-v55-heading p{
  margin:7px 0 0!important;
  color:#858c87!important;
  font:400 15px/1.4 Arial,Helvetica,sans-serif!important;
}

/* ---------- two-column layout ---------- */
body.cy-cart-v55 .cy-v55-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.72fr) minmax(405px,.94fr)!important;
  gap:34px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
}

body.cy-cart-v55 .cy-v55-left,
body.cy-cart-v55 .cy-v55-right{
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
}

/* ---------- shipping progress ---------- */
body.cy-cart-v55 .cy-v55-progress{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto!important;
  gap:15px!important;
  align-items:center!important;
  min-height:84px!important;
  margin:0 0 16px!important;
  padding:15px 20px!important;
  border:1px solid #dfe5da!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 95% 50%,rgba(128,153,123,.13),transparent 25%),
    linear-gradient(90deg,#edf2ea 0%,#f7f5ee 74%,#f4eee3 100%)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v55-progress__icon{
  display:flex!important;
  width:48px!important;
  height:48px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#dae6d7!important;
  color:var(--cy55-green)!important;
}

body.cy-cart-v55 .cy-v55-progress__icon svg{
  width:28px!important;
  height:28px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.6!important;
}

body.cy-cart-v55 .cy-v55-progress__title{
  margin:0 0 9px!important;
  color:#26382d!important;
  font:500 13.5px/1.3 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-progress__bar{
  height:10px!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#d6ded2!important;
}

body.cy-cart-v55 .cy-v55-progress__bar span{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:var(--cy55-green)!important;
}

body.cy-cart-v55 .cy-v55-progress__amount{
  position:relative!important;
  z-index:1!important;
  color:#26382d!important;
  font:600 13.5px/1.2 Arial,Helvetica,sans-serif!important;
  white-space:nowrap!important;
}

/* ---------- native table / custom product cards ---------- */
body.cy-cart-v55 table.cart-table{
  display:block!important;
  width:100%!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
}

body.cy-cart-v55 table.cart-table thead,
body.cy-cart-v55 table.cart-table tfoot{
  display:none!important;
}

body.cy-cart-v55 table.cart-table tbody{
  display:block!important;
  width:100%!important;
}

body.cy-cart-v55 table.cart-table tr.cy-v55-native-row{
  display:block!important;
  width:100%!important;
  margin:0 0 16px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

body.cy-cart-v55 table.cart-table tr.cy-v55-native-row > td.cy-v55-card-cell{
  display:block!important;
  width:100%!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

body.cy-cart-v55 .cy-v55-product{
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr) 145px 105px 32px!important;
  grid-template-areas:
    "image info qty price remove"
    "image benefits benefits benefits benefits"!important;
  gap:12px 18px!important;
  align-items:center!important;
  min-height:156px!important;
  padding:16px!important;
  border:1px solid #e4dfd5!important;
  border-radius:18px!important;
  background:rgba(255,253,249,.98)!important;
  box-shadow:0 8px 24px rgba(48,66,54,.03)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v55-product__image{
  grid-area:image!important;
  display:block!important;
  width:118px!important;
  height:118px!important;
  overflow:hidden!important;
  border-radius:14px!important;
}

body.cy-cart-v55 .cy-v55-product__image img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}

body.cy-cart-v55 .cy-v55-product__info{
  grid-area:info!important;
  align-self:start!important;
  padding-top:3px!important;
}

body.cy-cart-v55 .cy-v55-product__name{
  display:block!important;
  color:var(--cy55-green)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:17px!important;
  font-weight:400!important;
  line-height:1.22!important;
  text-decoration:none!important;
}

body.cy-cart-v55 .cy-v55-product__subtitle{
  margin-top:5px!important;
  color:#858b87!important;
  font:400 11px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-product__qty{
  grid-area:qty!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  align-items:center!important;
  width:145px!important;
  height:44px!important;
  overflow:hidden!important;
  border:1px solid #d8d2c7!important;
  border-radius:999px!important;
  background:var(--cy55-paper)!important;
}

body.cy-cart-v55 .cy-v55-product__qty button,
body.cy-cart-v55 .cy-v55-product__qty span{
  display:flex!important;
  width:100%!important;
  height:42px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#17271e!important;
  font:500 18px/1 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-product__qty span{
  font-weight:700!important;
}

body.cy-cart-v55 .cy-v55-product__qty button{
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v55-product__price{
  grid-area:price!important;
  justify-self:end!important;
  color:#17271e!important;
  font:700 20px/1.15 Arial,Helvetica,sans-serif!important;
  white-space:nowrap!important;
}

body.cy-cart-v55 .cy-v55-product__remove{
  grid-area:remove!important;
  display:flex!important;
  width:30px!important;
  height:30px!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:end!important;
  border:0!important;
  background:transparent!important;
  color:#304236!important;
  font:300 28px/1 Arial,Helvetica,sans-serif!important;
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v55-product__benefits{
  grid-area:benefits!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  margin-top:1px!important;
  padding-top:11px!important;
  border-top:1px solid #ebe6dd!important;
}

body.cy-cart-v55 .cy-v55-product-benefit{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:0!important;
  padding:0 10px!important;
  color:#5a665f!important;
  text-align:left!important;
  font:500 10.5px/1.25 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-product-benefit + .cy-v55-product-benefit{
  border-left:1px solid #e7e1d8!important;
}

body.cy-cart-v55 .cy-v55-product-benefit i{
  display:flex!important;
  width:31px!important;
  height:31px!important;
  flex:0 0 31px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#edf2ec!important;
  color:#5a6b60!important;
}

body.cy-cart-v55 .cy-v55-product-benefit svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.55!important;
}

/* ---------- gift + coupon module ---------- */
body.cy-cart-v55 .cy-v55-gift{
  position:relative!important;
  display:block!important;
  clear:both!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:20px!important;
  border:1px solid #e4dfd5!important;
  border-radius:18px!important;
  background:rgba(255,253,249,.98)!important;
  box-shadow:0 8px 24px rgba(48,66,54,.025)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v55-gift-title{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:15px!important;
}

body.cy-cart-v55 .cy-v55-gift-title__icon,
body.cy-cart-v55 .cy-v55-gift-reward__icon{
  display:flex!important;
  width:46px!important;
  height:46px!important;
  flex:0 0 46px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#edf2ec!important;
  color:#53675b!important;
}

body.cy-cart-v55 .cy-v55-gift-title svg,
body.cy-cart-v55 .cy-v55-gift-reward svg{
  width:25px!important;
  height:25px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.5!important;
}

body.cy-cart-v55 .cy-v55-gift-title h2{
  margin:0!important;
  color:var(--cy55-green)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:25px!important;
  font-weight:400!important;
  line-height:1.12!important;
}

body.cy-cart-v55 .cy-v55-gift-title p{
  margin:3px 0 0!important;
  color:#7d847f!important;
  font:400 11.5px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-gift-selected,
body.cy-cart-v55 .cy-v55-gift-reward{
  display:grid!important;
  grid-template-columns:76px minmax(0,1fr) 115px!important;
  gap:14px!important;
  align-items:center!important;
  margin:0 0 16px!important;
  padding:12px 0 17px!important;
  border-bottom:1px solid #e9e3da!important;
}

body.cy-cart-v55 .cy-v55-gift-selected img{
  display:block!important;
  width:76px!important;
  height:76px!important;
  object-fit:cover!important;
  border-radius:11px!important;
}

body.cy-cart-v55 .cy-v55-gift-selected strong,
body.cy-cart-v55 .cy-v55-gift-reward strong{
  display:block!important;
  color:var(--cy55-green)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.2!important;
}

body.cy-cart-v55 .cy-v55-gift-selected small,
body.cy-cart-v55 .cy-v55-gift-reward small{
  display:block!important;
  margin-top:4px!important;
  color:#808782!important;
  font:400 11px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-gift-selected button,
body.cy-cart-v55 .cy-v55-gift-reward button{
  height:42px!important;
  border:1px solid var(--cy55-green)!important;
  border-radius:11px!important;
  background:#f5f5ef!important;
  color:var(--cy55-green)!important;
  font:700 12px/1 Arial,Helvetica,sans-serif!important;
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v55-gift-reward{
  grid-template-columns:50px minmax(0,1fr) 130px!important;
  padding:9px 0 17px!important;
}

body.cy-cart-v55 .cy-v55-gift-reward:not(:has(button)){
  grid-template-columns:50px minmax(0,1fr)!important;
}

body.cy-cart-v55 .cy-v55-coupon-head{
  display:grid!important;
  grid-template-columns:45px minmax(0,1fr)!important;
  gap:11px!important;
  align-items:center!important;
  margin:2px 0 10px!important;
}

body.cy-cart-v55 .cy-v55-coupon-head__icon{
  display:flex!important;
  width:43px!important;
  height:43px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#edf1e9!important;
  color:var(--cy55-green)!important;
  font:400 24px/1 Georgia,"Times New Roman",serif!important;
}

body.cy-cart-v55 .cy-v55-coupon-head strong{
  display:block!important;
  color:var(--cy55-green)!important;
  font:600 13px/1.2 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-coupon-head small{
  display:block!important;
  margin-top:3px!important;
  color:#7e8580!important;
  font:400 11px/1.3 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-coupon-native,
body.cy-cart-v55 .cy-v55-coupon-applied{
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}

body.cy-cart-v55 .cy-v55-coupon-native{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 115px!important;
  gap:10px!important;
  align-items:center!important;
}

body.cy-cart-v55 .cy-v55-coupon-native input[type="text"],
body.cy-cart-v55 .cy-v55-coupon-native input[type="search"]{
  width:100%!important;
  height:44px!important;
  margin:0!important;
  padding:0 14px!important;
  border:1px solid #d8d3ca!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:12px!important;
}

body.cy-cart-v55 .cy-v55-coupon-native button,
body.cy-cart-v55 .cy-v55-coupon-native input[type="submit"]{
  height:44px!important;
  margin:0!important;
  border:1px solid var(--cy55-green)!important;
  border-radius:10px!important;
  background:#f5f5ef!important;
  color:var(--cy55-green)!important;
  font-weight:700!important;
}

body.cy-cart-v55 .cy-v55-coupon-applied{
  color:#304236!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
}

body.cy-cart-v55 .cy-v55-gift .discount-coupon::before,
body.cy-cart-v55 .cy-v55-gift .coupon::before,
body.cy-cart-v55 .cy-v55-gift [class*="discount"]::before{
  content:none!important;
  display:none!important;
}

/* ---------- right summary ---------- */
body.cy-cart-v55 .cy-v55-summary{
  position:sticky!important;
  top:18px!important;
  padding:25px!important;
  border:1px solid #e3ded4!important;
  border-radius:20px!important;
  background:rgba(255,253,249,.97)!important;
  box-shadow:0 14px 34px rgba(48,66,54,.045)!important;
}

body.cy-cart-v55 .cy-v55-summary h2{
  margin:0 0 20px!important;
  color:var(--cy55-green)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:30px!important;
  font-weight:400!important;
  line-height:1.08!important;
}

body.cy-cart-v55 .cy-v55-summary__row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:start!important;
  padding:14px 0!important;
  border-bottom:1px solid #ebe6dd!important;
}

body.cy-cart-v55 .cy-v55-summary__row strong,
body.cy-cart-v55 .cy-v55-summary__total strong{
  display:block!important;
  color:#24372c!important;
  font:700 13.5px/1.25 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-summary__row small,
body.cy-cart-v55 .cy-v55-summary__total small{
  display:block!important;
  margin-top:3px!important;
  color:#8a908b!important;
  font:400 10.5px/1.3 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-summary__row > b{
  color:#293a30!important;
  font:500 13.5px/1.25 Arial,Helvetica,sans-serif!important;
  white-space:nowrap!important;
}

body.cy-cart-v55 .cy-v55-summary__total{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:18px!important;
  align-items:end!important;
  padding:18px 0 14px!important;
}

body.cy-cart-v55 .cy-v55-summary__total > b{
  color:#172a1f!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:29px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
}

body.cy-cart-v55 .cy-v55-summary__cta{
  display:flex!important;
  width:100%!important;
  height:53px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:11px!important;
  margin:4px 0 10px!important;
  border:1px solid var(--cy55-green)!important;
  border-radius:14px!important;
  background:var(--cy55-green)!important;
  color:#fff!important;
  font:700 13px/1 Arial,Helvetica,sans-serif!important;
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v55-summary__back{
  display:flex!important;
  width:100%!important;
  height:44px!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  box-sizing:border-box!important;
  border:1px solid #d8d2c7!important;
  border-radius:14px!important;
  background:#f7f4ed!important;
  color:var(--cy55-green)!important;
  font:600 12px/1 Arial,Helvetica,sans-serif!important;
  text-decoration:none!important;
}

body.cy-cart-v55 .cy-v55-summary__benefits{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  margin-top:18px!important;
  padding-top:16px!important;
  border-top:1px solid #e8e2d8!important;
}

body.cy-cart-v55 .cy-v55-summary__benefits > div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  padding:0 9px!important;
  color:#304236!important;
  text-align:center!important;
  font:500 10.5px/1.25 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-summary__benefits > div + div{
  border-left:1px solid #e7e1d8!important;
}

body.cy-cart-v55 .cy-v55-summary__benefits i{
  display:flex!important;
  width:35px!important;
  height:35px!important;
  align-items:center!important;
  justify-content:center!important;
  color:#53675b!important;
}

body.cy-cart-v55 .cy-v55-summary__benefits svg{
  width:29px!important;
  height:29px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.5!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* ---------- help ---------- */
body.cy-cart-v55 .cy-v55-help{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  gap:12px!important;
  margin-top:15px!important;
  padding:14px 16px!important;
  border:1px solid #e3ded4!important;
  border-radius:18px!important;
  background:rgba(255,253,249,.96)!important;
}

body.cy-cart-v55 .cy-v55-help__icon{
  display:flex!important;
  width:50px!important;
  height:50px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#edf2ec!important;
  color:#304236!important;
  font-size:22px!important;
}

body.cy-cart-v55 .cy-v55-help strong{
  display:block!important;
  color:#304236!important;
  font:700 13px/1.2 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-help p{
  margin:3px 0 5px!important;
  color:#7c837e!important;
  font:400 10.5px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-help__links{
  display:flex!important;
  gap:13px!important;
  flex-wrap:wrap!important;
}

body.cy-cart-v55 .cy-v55-help a{
  color:#304236!important;
  font:500 11px/1.3 Arial,Helvetica,sans-serif!important;
  text-decoration:none!important;
}

/* ---------- tablet ---------- */
@media(max-width:1100px) and (min-width:768px){
  body.cy-cart-v55 .cy-v55-layout{
    grid-template-columns:minmax(0,1.45fr) minmax(330px,.9fr)!important;
    gap:22px!important;
  }

  body.cy-cart-v55 .cy-v55-product{
    grid-template-columns:100px minmax(0,1fr) 125px 92px 28px!important;
    gap:10px 12px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:100px!important;
    height:100px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    width:125px!important;
  }
}

/* ---------- mobile ---------- */
@media(max-width:767px){
  body.cy-cart-v55{
    background-image:none!important;
  }

  body.cy-cart-v55 .cy-v55-root{
    padding:0 14px 28px!important;
  }

  body.cy-cart-v55 .cy-v55-root::before,
  body.cy-cart-v55 .cy-v55-root::after{
    display:none!important;
  }

  body.cy-cart-v55 .cy-v55-trust{
    min-height:0!important;
    margin-bottom:18px!important;
    padding:11px 4px!important;
    border-radius:16px!important;
  }

  body.cy-cart-v55 .cy-v55-trust > div{
    display:block!important;
    padding:0 7px!important;
    text-align:center!important;
  }

  body.cy-cart-v55 .cy-v55-trust i{
    width:29px!important;
    height:29px!important;
    margin:0 auto 5px!important;
  }

  body.cy-cart-v55 .cy-v55-trust svg{
    width:26px!important;
    height:26px!important;
  }

  body.cy-cart-v55 .cy-v55-trust strong{
    font-size:10px!important;
    line-height:1.15!important;
  }

  body.cy-cart-v55 .cy-v55-trust small{
    display:none!important;
  }

  body.cy-cart-v55 .cy-v55-steps{
    grid-template-columns:auto 20px auto 20px auto!important;
    width:100%!important;
    margin-bottom:19px!important;
  }

  body.cy-cart-v55 .cy-v55-steps > div{
    display:block!important;
    text-align:center!important;
    white-space:normal!important;
    font-size:9.5px!important;
  }

  body.cy-cart-v55 .cy-v55-steps b{
    width:33px!important;
    height:33px!important;
    margin:0 auto 5px!important;
    font-size:12px!important;
  }

  body.cy-cart-v55 .cy-v55-steps > i{
    width:20px!important;
    margin:0!important;
  }

  body.cy-cart-v55 .cy-v55-heading{
    margin-bottom:16px!important;
  }

  body.cy-cart-v55 .cy-v55-heading h1{
    font-size:34px!important;
  }

  body.cy-cart-v55 .cy-v55-heading p{
    font-size:13px!important;
  }

  body.cy-cart-v55 .cy-v55-layout{
    display:block!important;
  }

  body.cy-cart-v55 .cy-v55-progress{
    grid-template-columns:45px minmax(0,1fr)!important;
    gap:10px!important;
    min-height:0!important;
    padding:13px!important;
    border-radius:16px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__icon{
    width:43px!important;
    height:43px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__title{
    margin-bottom:7px!important;
    font-size:11.5px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__bar{
    height:8px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__amount{
    grid-column:2!important;
    margin-top:-3px!important;
    font-size:10.5px!important;
  }

  body.cy-cart-v55 .cy-v55-product{
    grid-template-columns:98px minmax(0,1fr) 28px!important;
    grid-template-areas:
      "image info remove"
      "image qty price"
      "benefits benefits benefits"!important;
    gap:10px 11px!important;
    min-height:0!important;
    padding:13px!important;
    border-radius:16px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:98px!important;
    height:98px!important;
    border-radius:12px!important;
  }

  body.cy-cart-v55 .cy-v55-product__name{
    font-size:15.5px!important;
  }

  body.cy-cart-v55 .cy-v55-product__subtitle{
    font-size:10px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    width:137px!important;
    height:42px!important;
    grid-template-columns:39px minmax(0,1fr) 39px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty button,
  body.cy-cart-v55 .cy-v55-product__qty span{
    height:40px!important;
    font-size:17px!important;
  }

  body.cy-cart-v55 .cy-v55-product__price{
    font-size:17px!important;
  }

  body.cy-cart-v55 .cy-v55-product__benefits{
    margin-top:2px!important;
    padding-top:10px!important;
  }

  body.cy-cart-v55 .cy-v55-product-benefit{
    display:block!important;
    padding:0 4px!important;
    text-align:center!important;
    font-size:8.8px!important;
  }

  body.cy-cart-v55 .cy-v55-product-benefit i{
    margin:0 auto 4px!important;
  }

  body.cy-cart-v55 .cy-v55-gift{
    padding:15px!important;
    border-radius:16px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-title h2{
    font-size:23px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-selected,
  body.cy-cart-v55 .cy-v55-gift-reward{
    grid-template-columns:64px minmax(0,1fr) 88px!important;
    gap:10px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-selected img{
    width:64px!important;
    height:64px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-selected strong,
  body.cy-cart-v55 .cy-v55-gift-reward strong{
    font-size:14px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-reward:not(:has(button)){
    grid-template-columns:48px minmax(0,1fr)!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-native{
    grid-template-columns:minmax(0,1fr) 96px!important;
  }

  body.cy-cart-v55 .cy-v55-right{
    margin-top:15px!important;
  }

  body.cy-cart-v55 .cy-v55-summary{
    position:static!important;
    padding:18px!important;
    border-radius:18px!important;
  }

  body.cy-cart-v55 .cy-v55-summary h2{
    font-size:26px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__total > b{
    font-size:28px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__benefits > div{
    padding:0 5px!important;
    font-size:9.5px!important;
  }

  body.cy-cart-v55 .cy-v55-help{
    margin-bottom:18px!important;
  }
}


/* =========================================================
   V56 – CART POLISH / APPROVED REFERENCE ALIGNMENT
   Keeps V55 AJAX renderer, fixes hierarchy and alignment.
   ========================================================= */

/* Right side now starts at the same vertical level as checkout steps. */
body.cy-cart-v55 .cy-v55-layout{
  align-items:start!important;
  grid-template-columns:minmax(0,1.68fr) minmax(410px,.92fr)!important;
  gap:38px!important;
}

body.cy-cart-v55 .cy-v55-left{
  display:block!important;
}

body.cy-cart-v55 .cy-v55-right{
  align-self:start!important;
  margin-top:0!important;
  padding-top:0!important;
}

body.cy-cart-v55 .cy-v55-summary{
  margin-top:0!important;
  top:18px!important;
}

/* Steps and title now sit inside the left column. */
body.cy-cart-v55 .cy-v55-left > .cy-v55-steps{
  margin:2px 0 27px!important;
}

body.cy-cart-v55 .cy-v55-left > .cy-v55-heading{
  margin:0 0 24px!important;
}

body.cy-cart-v55 .cy-v55-left > .cy-v55-heading h1{
  font-size:43px!important;
  line-height:1.04!important;
}

/* Shipping motivator: calmer Cyprianus sage palette. */
body.cy-cart-v55 .cy-v55-progress{
  min-height:82px!important;
  margin:0 0 17px!important;
  padding:15px 20px!important;
  border-color:#dbe3d9!important;
  background:linear-gradient(90deg,#edf3ed 0%,#f2f4ef 60%,#f4f0e7 100%)!important;
}

body.cy-cart-v55 .cy-v55-progress__icon{
  background:#dbe8dc!important;
}

body.cy-cart-v55 .cy-v55-progress__bar{
  background:#d5dfd5!important;
}

body.cy-cart-v55 .cy-v55-progress__bar span{
  background:#34463a!important;
}

body.cy-cart-v55 .cy-v55-progress__title,
body.cy-cart-v55 .cy-v55-progress__amount{
  color:#304236!important;
}

/* Product card: one deliberate top row + benefit row. */
body.cy-cart-v55 .cy-v55-product{
  grid-template-columns:120px minmax(230px,1fr) 146px 108px 30px!important;
  grid-template-areas:
    "image info qty price remove"
    "image benefits benefits benefits benefits"!important;
  grid-template-rows:auto auto!important;
  gap:10px 20px!important;
  align-items:start!important;
  min-height:0!important;
  padding:16px 18px!important;
  border-radius:18px!important;
}

body.cy-cart-v55 .cy-v55-product__image{
  width:120px!important;
  height:120px!important;
  grid-row:1 / 3!important;
}

body.cy-cart-v55 .cy-v55-product__info{
  align-self:start!important;
  min-width:0!important;
  padding:1px 0 0!important;
}

body.cy-cart-v55 .cy-v55-product__name{
  display:-webkit-box!important;
  min-height:48px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#304236!important;
  font-size:19.5px!important;
  line-height:1.22!important;
}

/* Related-product text is intentionally not shown in the basket. */
body.cy-cart-v55 .cy-v55-product__subtitle{
  display:none!important;
}

body.cy-cart-v55 .cy-v55-product__qty,
body.cy-cart-v55 .cy-v55-product__price,
body.cy-cart-v55 .cy-v55-product__remove{
  align-self:start!important;
  margin-top:2px!important;
}

body.cy-cart-v55 .cy-v55-product__qty{
  justify-self:center!important;
  width:146px!important;
  height:46px!important;
  grid-template-columns:42px minmax(0,1fr) 42px!important;
  background:#fffdf9!important;
}

body.cy-cart-v55 .cy-v55-product__qty button,
body.cy-cart-v55 .cy-v55-product__qty span{
  height:44px!important;
  font-size:19px!important;
}

body.cy-cart-v55 .cy-v55-product__qty span{
  color:#304236!important;
  font-weight:700!important;
}

body.cy-cart-v55 .cy-v55-product__price{
  justify-self:end!important;
  padding-top:8px!important;
  color:#17271e!important;
  font-size:20px!important;
  line-height:1!important;
}

body.cy-cart-v55 .cy-v55-product__remove{
  justify-self:end!important;
  width:28px!important;
  height:28px!important;
  margin-top:5px!important;
  overflow:hidden!important;
  color:#304236!important;
  font-size:27px!important;
  line-height:1!important;
  white-space:nowrap!important;
}

body.cy-cart-v55 .cy-v55-product__benefits{
  align-self:end!important;
  margin:5px 0 0!important;
  padding:11px 0 0!important;
}

body.cy-cart-v55 .cy-v55-product-benefit{
  justify-content:center!important;
  font-size:10.5px!important;
}

/* Hide any old native pricing/action labels completely. */
body.cy-cart-v55 .cy-v55-native-cell,
body.cy-cart-v55 .cy-v55-native-cell::before,
body.cy-cart-v55 .cy-v55-native-cell::after{
  display:none!important;
  content:none!important;
}

/* Registration promo no longer floats between products and gift. */
body.cy-cart-v55 .cy-v56-registration-native{
  display:none!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  height:0!important;
  overflow:hidden!important;
}

body.cy-cart-v55 .cy-v56-registration-note{
  margin:10px 0 0!important;
  padding:10px 0 0!important;
  border-top:1px solid #ebe5db!important;
  color:#7c837e!important;
  font:400 11.5px/1.4 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v56-registration-note strong{
  color:#304236!important;
  font-weight:700!important;
}

body.cy-cart-v55 .cy-v56-registration-note a{
  color:#304236!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
}

/* Gift + coupon should follow products tightly, not float far below them. */
body.cy-cart-v55 .cy-v55-gift{
  margin-top:2px!important;
}

body.cy-cart-v55 .cy-v55-coupon-head{
  margin-top:14px!important;
}

/* Summary proportions closer to the AI target. */
body.cy-cart-v55 .cy-v55-summary{
  padding:25px!important;
  border-radius:20px!important;
}

body.cy-cart-v55 .cy-v55-summary h2{
  margin-bottom:21px!important;
  font-size:31px!important;
}

body.cy-cart-v55 .cy-v55-summary__row{
  padding:14px 0!important;
}

body.cy-cart-v55 .cy-v55-summary__total{
  padding:19px 0 14px!important;
}

body.cy-cart-v55 .cy-v55-summary__total > b{
  font-size:31px!important;
}

@media(max-width:1100px) and (min-width:768px){
  body.cy-cart-v55 .cy-v55-layout{
    grid-template-columns:minmax(0,1.45fr) minmax(340px,.9fr)!important;
    gap:24px!important;
  }

  body.cy-cart-v55 .cy-v55-product{
    grid-template-columns:100px minmax(170px,1fr) 125px 88px 26px!important;
    gap:9px 12px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:100px!important;
    height:100px!important;
  }

  body.cy-cart-v55 .cy-v55-product__name{
    min-height:43px!important;
    font-size:17.5px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    width:125px!important;
  }
}

@media(max-width:767px){
  /* On mobile the right summary still naturally follows the left column. */
  body.cy-cart-v55 .cy-v55-left > .cy-v55-steps{
    margin-bottom:18px!important;
  }

  body.cy-cart-v55 .cy-v55-left > .cy-v55-heading{
    margin-bottom:16px!important;
  }

  body.cy-cart-v55 .cy-v55-product{
    grid-template-columns:96px minmax(0,1fr) 26px!important;
    grid-template-areas:
      "image info remove"
      "image qty price"
      "benefits benefits benefits"!important;
    gap:9px 10px!important;
    padding:13px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:96px!important;
    height:96px!important;
    grid-row:auto!important;
  }

  body.cy-cart-v55 .cy-v55-product__name{
    min-height:0!important;
    font-size:16px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    justify-self:start!important;
    width:132px!important;
  }

  body.cy-cart-v55 .cy-v55-product__price{
    align-self:center!important;
    padding-top:0!important;
    font-size:17px!important;
  }

  body.cy-cart-v55 .cy-v55-product__remove{
    margin-top:0!important;
  }

  body.cy-cart-v55 .cy-v56-registration-note{
    font-size:10.5px!important;
  }
}


/* =========================================================
   V57 – CART RENDERER HOTFIX
   No visual rollback: preserves all V56 polish.
   JS fixes nested Shoptet wrapper insertion + safe failure fallback.
   ========================================================= */


/* =========================================================
   V58 – GIFT PROGRESS + HELP LEGIBILITY
   CART ONLY.
   ========================================================= */

body.cy-cart-v55 .cy-v58-native-gift-progress{
  display:none!important;
}

body.cy-cart-v55 .cy-v55-gift{
  margin-top:22px!important;
  margin-bottom:26px!important;
}

body.cy-cart-v55 .cy-v55-gift-title{
  margin-bottom:18px!important;
}

body.cy-cart-v55 .cy-v58-gift-progress{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) auto!important;
  gap:16px!important;
  align-items:center!important;
  margin:2px 0 22px!important;
  padding:17px 19px!important;
  border:1px solid #dfe5da!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 96% 50%,rgba(164,181,156,.13),transparent 28%),
    linear-gradient(90deg,#edf3eb 0%,#f8f6ef 72%,#f2eee3 100%)!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__icon{
  display:flex!important;
  width:52px!important;
  height:52px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#dce8d9!important;
  color:#53685a!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__icon svg{
  width:29px!important;
  height:29px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.55!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__body{
  min-width:0!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__body > strong{
  display:block!important;
  margin:0!important;
  color:#263a2e!important;
  font:600 14.5px/1.3 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__body > strong b{
  font-weight:800!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__body > small{
  display:block!important;
  margin-top:4px!important;
  color:#78817b!important;
  font:400 11.5px/1.35 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__bar{
  width:100%!important;
  height:9px!important;
  overflow:hidden!important;
  margin-top:11px!important;
  border-radius:999px!important;
  background:#d7e0d4!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__bar > span{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:#34463a!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__side{
  min-width:126px!important;
  text-align:right!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__side > b{
  display:block!important;
  color:#304236!important;
  font:700 12px/1.2 Arial,Helvetica,sans-serif!important;
  white-space:nowrap!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__side button{
  min-width:122px!important;
  height:40px!important;
  margin-top:8px!important;
  padding:0 15px!important;
  border:1px solid #304236!important;
  border-radius:11px!important;
  background:#304236!important;
  color:#fff!important;
  font:700 11.5px/1 Arial,Helvetica,sans-serif!important;
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v55-coupon-head{
  margin-top:16px!important;
}

/* Larger, clearly readable support card. */
body.cy-cart-v55 .cy-v55-help{
  grid-template-columns:76px minmax(0,1fr)!important;
  gap:20px!important;
  align-items:center!important;
  margin-top:22px!important;
  padding:25px 28px!important;
  border-radius:22px!important;
  min-height:126px!important;
}

body.cy-cart-v55 .cy-v55-help__icon{
  display:flex!important;
  width:72px!important;
  height:72px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#eaf1e8!important;
  color:#304236!important;
  font-size:31px!important;
}

body.cy-cart-v55 .cy-v55-help > div > strong{
  display:block!important;
  margin:0 0 5px!important;
  color:#304236!important;
  font:700 19px/1.2 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-help > div > p{
  margin:0 0 11px!important;
  color:#79827c!important;
  font:400 14.5px/1.4 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v55-help__links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 25px!important;
  align-items:center!important;
}

body.cy-cart-v55 .cy-v55-help__links a{
  color:#304236!important;
  font:500 14.5px/1.35 Arial,Helvetica,sans-serif!important;
  text-decoration:none!important;
}

@media(max-width:767px){

  body.cy-cart-v55 .cy-v58-gift-progress{
    grid-template-columns:50px minmax(0,1fr)!important;
    gap:12px!important;
    padding:15px!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__icon{
    width:48px!important;
    height:48px!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__side{
    grid-column:2!important;
    min-width:0!important;
    text-align:left!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__side button{
    width:100%!important;
    max-width:220px!important;
  }

  body.cy-cart-v55 .cy-v55-help{
    grid-template-columns:62px minmax(0,1fr)!important;
    gap:15px!important;
    padding:20px!important;
    min-height:0!important;
  }

  body.cy-cart-v55 .cy-v55-help__icon{
    width:60px!important;
    height:60px!important;
    font-size:27px!important;
  }

  body.cy-cart-v55 .cy-v55-help > div > strong{
    font-size:18px!important;
  }

  body.cy-cart-v55 .cy-v55-help > div > p{
    font-size:14px!important;
  }

  body.cy-cart-v55 .cy-v55-help__links{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:5px!important;
  }

  body.cy-cart-v55 .cy-v55-help__links a{
    font-size:14px!important;
  }
}


/* =========================================================
   V59 – V58 SELECTOR HOTFIX + CLEAN BACKGROUND
   ========================================================= */

body.cy-cart-v55 .cy-v55-layout,
body.cy-cart-v55 .cy-v55-left,
body.cy-cart-v55 .cy-v55-right{
  background:transparent!important;
  background-color:transparent!important;
}

body.cy-cart-v55 .cy-v55-right{
  box-shadow:none!important;
}

body.cy-cart-v55 .cy-v55-gift{
  background:#fffdf9!important;
}

/* Defensive SVG sizing – prevents theme/global SVG rules from creating
   the large black blocks seen in V58. */
body.cy-cart-v55 .cy-v58-gift-progress__icon,
body.cy-cart-v55 .cy-v55-gift-title__icon{
  overflow:hidden!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__icon svg,
body.cy-cart-v55 .cy-v55-gift-title__icon svg,
body.cy-cart-v55 .cy-v55-gift-title svg{
  display:block!important;
  width:29px!important;
  height:29px!important;
  max-width:29px!important;
  max-height:29px!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  fill:none!important;
  stroke:currentColor!important;
  overflow:visible!important;
}

body.cy-cart-v55 .cy-v58-gift-progress__icon svg * ,
body.cy-cart-v55 .cy-v55-gift-title svg *{
  fill:none!important;
  stroke:currentColor!important;
}

/* Coupon applied-state remove button stays compact. */
body.cy-cart-v55 .cy-v55-coupon-applied button,
body.cy-cart-v55 .cy-v55-coupon-applied input[type="submit"],
body.cy-cart-v55 .cy-v55-coupon-applied a.remove,
body.cy-cart-v55 .cy-v55-coupon-applied .remove{
  width:32px!important;
  min-width:32px!important;
  max-width:32px!important;
  height:32px!important;
  min-height:32px!important;
  margin-left:8px!important;
  padding:0!important;
  border-radius:7px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:14px!important;
  line-height:1!important;
}

/* Keep the entire cart canvas clean instead of the grey native side panel. */
body.cy-cart-v55 #content,
body.cy-cart-v55 .content-wrapper,
body.cy-cart-v55 .content-inner{
  background-color:transparent!important;
}


/* =========================================================
   V60 – QUANTITY + APPLIED COUPON + WHITE CANVAS FIX
   ========================================================= */

/* Remove the remaining grey / decorative cart-page underlay completely. */
body.cy-cart-v55{
  background:#fff!important;
  background-color:#fff!important;
  background-image:none!important;
}

body.cy-cart-v55 #content,
body.cy-cart-v55 .content-wrapper,
body.cy-cart-v55 .content-inner,
body.cy-cart-v55 .cy-v55-root,
body.cy-cart-v55 .cy-v55-layout,
body.cy-cart-v55 .cy-v55-left,
body.cy-cart-v55 .cy-v55-right,
body.cy-cart-v55 .cy-v55-right-shell{
  background:none!important;
  background-color:transparent!important;
  background-image:none!important;
}

body.cy-cart-v55 .cy-v55-root::before,
body.cy-cart-v55 .cy-v55-root::after,
body.cy-cart-v55 .cy-v55-layout::before,
body.cy-cart-v55 .cy-v55-layout::after,
body.cy-cart-v55 .cy-v55-right::before,
body.cy-cart-v55 .cy-v55-right::after,
body.cy-cart-v55 #content::before,
body.cy-cart-v55 #content::after,
body.cy-cart-v55 .content-wrapper::before,
body.cy-cart-v55 .content-wrapper::after,
body.cy-cart-v55 .content-inner::before,
body.cy-cart-v55 .content-inner::after{
  display:none!important;
  content:none!important;
  background:none!important;
}

/* Applied native coupon stays functional, but is no longer shown. */
body.cy-cart-v55 .cy-v60-native-coupon-applied{
  display:none!important;
}

/* Clean active-coupon card. */
body.cy-cart-v55 .cy-v60-coupon-applied-row{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 34px!important;
  gap:12px!important;
  align-items:center!important;
  margin:2px 0 14px!important;
  padding:12px 13px!important;
  border:1px solid #d9e3d7!important;
  border-radius:13px!important;
  background:#eef3ec!important;
  box-sizing:border-box!important;
}

body.cy-cart-v55 .cy-v60-coupon-applied-row__check{
  display:flex!important;
  width:34px!important;
  height:34px!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  background:#dbe8d8!important;
  color:#304236!important;
  font:700 18px/1 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v60-coupon-applied-row small{
  display:block!important;
  margin:0 0 2px!important;
  color:#78817b!important;
  font:500 10.5px/1.2 Arial,Helvetica,sans-serif!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}

body.cy-cart-v55 .cy-v60-coupon-applied-row strong{
  display:block!important;
  color:#304236!important;
  font:600 13px/1.3 Arial,Helvetica,sans-serif!important;
}

body.cy-cart-v55 .cy-v60-coupon-applied-row button{
  display:flex!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  margin:0!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #cbd6c9!important;
  border-radius:50%!important;
  background:#fffdf9!important;
  color:#304236!important;
  box-shadow:none!important;
  font:500 20px/1 Arial,Helvetica,sans-serif!important;
  cursor:pointer!important;
}

body.cy-cart-v55 .cy-v60-coupon-applied-row button:hover{
  background:#304236!important;
  color:#fff!important;
  border-color:#304236!important;
}

/* Make the custom quantity controls clearly interactive. */
body.cy-cart-v55 .cy-v55-product__qty button{
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
}

body.cy-cart-v55 .cy-v55-product__qty button:active{
  transform:scale(.94)!important;
}

@media(max-width:767px){
  body.cy-cart-v55 .cy-v60-coupon-applied-row{
    grid-template-columns:36px minmax(0,1fr) 32px!important;
    padding:11px!important;
  }
}


/* =========================================================
   V61 – TOP BAR HARMONY + MOBILE CART RECOVERY
   Desktop: ONLY the top trust bar is visually adjusted.
   Mobile: restores cart products/progress and increases small text readability.
   ========================================================= */

/* DESKTOP ONLY – calmer ends + paper tone matching the rest of Cyprianus. */
@media(min-width:768px){
  body.cy-cart-v55 .cy-v55-trust{
    border-color:#e7e1d7!important;
    border-radius:14px!important;
    background:#fbfaf7!important;
    box-shadow:0 1px 0 rgba(48,66,54,.015)!important;
  }

  body.cy-cart-v55 .cy-v55-trust > div + div{
    border-left-color:#e5dfd5!important;
  }
}

/* MOBILE ONLY */
@media(max-width:767px){
  /* Shoptet hides/collapses the table wrapper on mobile. V61 marks the exact
     wrapper in JS and explicitly restores it without touching desktop. */
  body.cy-cart-v55 .cy-v61-cart-anchor{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    transform:none!important;
    clip:auto!important;
    clip-path:none!important;
  }

  body.cy-cart-v55 .cy-v61-cart-anchor > .cy-v55-progress,
  body.cy-cart-v55 .cy-v61-cart-anchor .cy-v55-progress{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
  }

  body.cy-cart-v55 .cy-v61-cart-anchor table.cart-table,
  body.cy-cart-v55 table.cart-table.cy-v61-cart-anchor{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  body.cy-cart-v55 .cy-v61-cart-anchor table.cart-table tbody,
  body.cy-cart-v55 table.cart-table.cy-v61-cart-anchor tbody,
  body.cy-cart-v55 .cy-v61-cart-anchor tr.cy-v55-native-row,
  body.cy-cart-v55 table.cart-table.cy-v61-cart-anchor tr.cy-v55-native-row,
  body.cy-cart-v55 .cy-v61-cart-anchor td.cy-v55-card-cell,
  body.cy-cart-v55 table.cart-table.cy-v61-cart-anchor td.cy-v55-card-cell{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  /* Product cards – compact but fully readable. */
  body.cy-cart-v55 .cy-v55-product{
    display:grid!important;
    grid-template-columns:104px minmax(0,1fr) 30px!important;
    grid-template-areas:
      "image info remove"
      "image qty price"
      "benefits benefits benefits"!important;
    gap:11px 12px!important;
    width:100%!important;
    padding:14px!important;
    border-radius:17px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:104px!important;
    height:104px!important;
  }

  body.cy-cart-v55 .cy-v55-product__name{
    font-size:19px!important;
    line-height:1.22!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    width:142px!important;
    height:45px!important;
    grid-template-columns:41px minmax(0,1fr) 41px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty button,
  body.cy-cart-v55 .cy-v55-product__qty span{
    height:43px!important;
    font-size:20px!important;
  }

  body.cy-cart-v55 .cy-v55-product__price{
    font-size:20px!important;
  }

  body.cy-cart-v55 .cy-v55-product__remove{
    width:30px!important;
    height:30px!important;
    font-size:27px!important;
  }

  body.cy-cart-v55 .cy-v55-product-benefit{
    font-size:10.6px!important;
    line-height:1.25!important;
  }

  /* +20% to the small mobile copy, while leaving the dominant headings alone. */
  body.cy-cart-v55 .cy-v55-trust strong{
    font-size:12px!important;
  }

  body.cy-cart-v55 .cy-v55-steps > div{
    font-size:11.4px!important;
  }

  body.cy-cart-v55 .cy-v55-steps b{
    font-size:14px!important;
  }

  body.cy-cart-v55 .cy-v55-heading p{
    font-size:15.6px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__title{
    font-size:13.8px!important;
    line-height:1.35!important;
  }

  body.cy-cart-v55 .cy-v55-progress__amount{
    font-size:12.6px!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__body > strong{
    font-size:17.4px!important;
    line-height:1.28!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__body > small{
    font-size:13.8px!important;
    line-height:1.38!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__side > b{
    font-size:14.4px!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-head strong,
  body.cy-cart-v55 .cy-v60-coupon-applied-row strong{
    font-size:15.6px!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-head small,
  body.cy-cart-v55 .cy-v60-coupon-applied-row small,
  body.cy-cart-v55 .cy-v56-registration-note{
    font-size:12.6px!important;
    line-height:1.4!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-native input,
  body.cy-cart-v55 .cy-v55-coupon-native button{
    font-size:16px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__row strong,
  body.cy-cart-v55 .cy-v55-summary__row > b{
    font-size:16px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__row small,
  body.cy-cart-v55 .cy-v55-summary__total small{
    font-size:13.2px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__benefits > div{
    font-size:11.4px!important;
    line-height:1.25!important;
  }

  body.cy-cart-v55 .cy-v55-summary__cta,
  body.cy-cart-v55 .cy-v55-summary__back{
    font-size:15px!important;
  }

  body.cy-cart-v55 .cy-v55-help > div > p,
  body.cy-cart-v55 .cy-v55-help__links a{
    font-size:16.8px!important;
  }
}


/* =========================================================
   V62 – MOBILE PRODUCT COMPACTION + READABILITY + QTY SYNC
   Desktop visuals unchanged. Quantity sync fix is JS-only/global.
   ========================================================= */

@media(max-width:767px){
  /* Native Shoptet duplicate threshold rows are redundant on mobile:
     our branded delivery + gift progress already cover them. */
  body.cy-cart-v55 .cy-v62-native-mobile-promo{
    display:none!important;
    margin:0!important;
    padding:0!important;
    height:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  /* Product card – quantity and total sit immediately below the title,
     while the benefit strip moves upward with the compact content block. */
  body.cy-cart-v55 .cy-v55-product{
    grid-template-columns:104px minmax(0,1fr) 30px!important;
    grid-template-areas:
      "image info remove"
      "image qty price"
      "benefits benefits benefits"!important;
    grid-template-rows:auto auto auto!important;
    column-gap:12px!important;
    row-gap:4px!important;
    padding:14px!important;
  }

  body.cy-cart-v55 .cy-v55-product__image{
    width:104px!important;
    height:104px!important;
    grid-row:1 / 3!important;
  }

  body.cy-cart-v55 .cy-v55-product__info{
    padding-top:0!important;
    align-self:start!important;
  }

  body.cy-cart-v55 .cy-v55-product__name{
    min-height:0!important;
    font-size:22px!important; /* +3 px */
    line-height:1.18!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty{
    justify-self:start!important;
    align-self:start!important;
    width:150px!important;
    height:46px!important;
    margin-top:2px!important;
  }

  body.cy-cart-v55 .cy-v55-product__qty button,
  body.cy-cart-v55 .cy-v55-product__qty span{
    height:44px!important;
    font-size:22px!important;
  }

  body.cy-cart-v55 .cy-v55-product__price{
    justify-self:end!important;
    align-self:center!important;
    margin-top:2px!important;
    padding-top:0!important;
    font-size:22px!important;
  }

  body.cy-cart-v55 .cy-v55-product__remove{
    margin-top:0!important;
  }

  body.cy-cart-v55 .cy-v55-product__benefits{
    margin-top:4px!important;
    padding-top:8px!important;
  }

  body.cy-cart-v55 .cy-v55-product-benefit{
    font-size:12.6px!important; /* +2 px */
    line-height:1.28!important;
  }

  body.cy-cart-v55 .cy-v55-product-benefit i{
    margin-bottom:5px!important;
  }

  /* Raise ALL small mobile copy by roughly another 2 px. */
  body.cy-cart-v55 .cy-v55-trust strong{
    font-size:14px!important;
  }

  body.cy-cart-v55 .cy-v55-steps > div{
    font-size:13.4px!important;
  }

  body.cy-cart-v55 .cy-v55-steps b{
    font-size:16px!important;
  }

  body.cy-cart-v55 .cy-v55-heading p{
    font-size:17.6px!important;
  }

  body.cy-cart-v55 .cy-v55-progress__title{
    font-size:15.8px!important;
    line-height:1.35!important;
  }

  body.cy-cart-v55 .cy-v55-progress__amount{
    font-size:14.6px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-title p{
    font-size:15px!important;
    line-height:1.35!important;
  }

  body.cy-cart-v55 .cy-v55-gift-selected strong,
  body.cy-cart-v55 .cy-v55-gift-reward strong{
    font-size:16px!important;
  }

  body.cy-cart-v55 .cy-v55-gift-selected small,
  body.cy-cart-v55 .cy-v55-gift-reward small{
    font-size:14px!important;
    line-height:1.35!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__body > strong{
    font-size:19.4px!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__body > small{
    font-size:15.8px!important;
  }

  body.cy-cart-v55 .cy-v58-gift-progress__side > b{
    font-size:16.4px!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-head strong,
  body.cy-cart-v55 .cy-v60-coupon-applied-row strong{
    font-size:17.6px!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-head small,
  body.cy-cart-v55 .cy-v60-coupon-applied-row small,
  body.cy-cart-v55 .cy-v56-registration-note{
    font-size:14.6px!important;
    line-height:1.42!important;
  }

  body.cy-cart-v55 .cy-v55-coupon-native input,
  body.cy-cart-v55 .cy-v55-coupon-native button{
    font-size:18px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__row strong,
  body.cy-cart-v55 .cy-v55-summary__row > b{
    font-size:18px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__row small,
  body.cy-cart-v55 .cy-v55-summary__total small{
    font-size:15.2px!important;
  }

  body.cy-cart-v55 .cy-v55-summary__benefits > div{
    font-size:13.4px!important;
    line-height:1.3!important;
  }

  body.cy-cart-v55 .cy-v55-summary__cta,
  body.cy-cart-v55 .cy-v55-summary__back{
    font-size:17px!important;
  }

  body.cy-cart-v55 .cy-v55-help > div > strong{
    font-size:20px!important;
  }

  body.cy-cart-v55 .cy-v55-help > div > p,
  body.cy-cart-v55 .cy-v55-help__links a{
    font-size:18.8px!important;
    line-height:1.38!important;
  }
}
