/* VartoModa Professional v4.1 polish layer */
:root{
  --vm-bg:#fffaf7;--vm-paper:#fff;--vm-paper-2:#fff4f8;--vm-ink:#160d16;--vm-muted:#776a75;
  --vm-plum:#351023;--vm-plum-2:#5b1638;--vm-rose:#c93d6c;--vm-coral:#ef8b67;--vm-gold:#d99a3a;
  --vm-line:rgba(91,22,56,.13);--vm-shadow:0 26px 80px rgba(53,16,35,.13);--vm-shadow-soft:0 16px 42px rgba(53,16,35,.09);
}
body{background:radial-gradient(circle at 8% -10%,rgba(201,61,108,.13),transparent 34vw),radial-gradient(circle at 92% 0%,rgba(239,139,103,.12),transparent 34vw),linear-gradient(180deg,#fffaf7 0%,#fff 48%,#fff8fb 100%)}
.pro-header{box-shadow:0 10px 40px rgba(53,16,35,.05)}.brand-text{display:grid;line-height:1.05}.brand-text small{color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:0;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-nav{border:1px solid rgba(91,22,56,.1);box-shadow:0 12px 36px rgba(53,16,35,.07)}
.lux-hero{padding:clamp(58px,8vw,116px) 0 clamp(42px,6vw,80px);overflow:hidden}.lux-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.52fr);gap:clamp(36px,6vw,86px);align-items:center}.lux-copy h1{margin:0;max-width:900px;font-size:clamp(3rem,7.2vw,6.6rem);line-height:.88;letter-spacing:-.085em}.lux-lead{margin:24px 0 0;max-width:680px;color:var(--ink-soft);font-size:clamp(1.08rem,2vw,1.32rem)}.editorial-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px;max-width:720px}.editorial-proof div{padding:16px;border:1px solid var(--vm-line);border-radius:20px;background:rgba(255,255,255,.78);box-shadow:var(--vm-shadow-soft)}.editorial-proof strong{display:block;color:var(--vm-plum);font-size:1.05rem}.editorial-proof span{color:var(--vm-muted);font-size:.86rem;font-weight:750}.hero-showcase{position:relative}.showcase-label,.showcase-mini{position:relative;z-index:2;margin-bottom:12px;padding:14px 16px;border:1px solid var(--vm-line);border-radius:18px;background:rgba(255,255,255,.86);box-shadow:var(--vm-shadow-soft);display:flex;align-items:center;justify-content:space-between;gap:16px}.showcase-label span,.showcase-mini span{color:var(--vm-muted);font-weight:850}.showcase-label strong{color:var(--vm-rose)}.showcase-mini{margin:14px 0 0;display:grid}.showcase-mini strong{color:var(--vm-plum)}
.editorial-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.editorial-strip div{padding:20px;border:1px solid var(--vm-line);border-radius:24px;background:#fff;box-shadow:var(--vm-shadow-soft)}.editorial-strip span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#fff0f5;color:var(--vm-rose);font-weight:950}.editorial-strip strong{display:block;margin:14px 0 6px;font-size:1.05rem}.editorial-strip p{margin:0;color:var(--vm-muted);font-size:.92rem}.curated-section{padding-top:clamp(52px,6vw,90px)}.pro-grid .product-card{border-color:var(--vm-line)}.pro-product-card{background:linear-gradient(180deg,#fff,#fff9fb);box-shadow:0 18px 50px rgba(53,16,35,.08)}.pro-product-card .product-image{height:285px}.pro-product-card.large .product-image{height:390px}.card-proof{margin-top:16px;padding:13px;border:1px solid rgba(201,61,108,.14);border-radius:16px;background:#fff6f9;display:grid;gap:2px}.card-proof span{color:var(--vm-muted);font-size:.75rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.card-proof strong{color:var(--vm-plum);font-size:.9rem}.split-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.55fr);gap:30px;align-items:end;margin-bottom:28px}.split-head h2{margin:0;font-size:clamp(2rem,4vw,3.4rem);line-height:.98;letter-spacing:-.06em}.split-head p{color:var(--vm-muted)}.pro-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pro-category-tile{min-height:250px;background:linear-gradient(145deg,#fff,#fff1f6);position:relative;overflow:hidden}.pro-category-tile:after{content:"";position:absolute;right:-35px;bottom:-35px;width:120px;height:120px;border-radius:50%;background:rgba(201,61,108,.08)}.pro-category-tile small{color:var(--vm-rose);font-weight:950}.method-board{display:grid;grid-template-columns:1fr 1fr;gap:24px}.premium-method,.premium-cta{min-height:380px}.premium-cta{display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#351023,#771d48 62%,#c93d6c)}
.reviews-intro{padding-bottom:34px}.intro-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:end}.intro-grid h1{max-width:950px}.intro-card{padding:24px;border:1px solid var(--vm-line);border-radius:26px;background:#fff;box-shadow:var(--vm-shadow-soft)}.intro-card strong{display:block;font-size:3rem;line-height:.9;color:var(--vm-plum);letter-spacing:-.07em}.intro-card span{display:block;margin-top:8px;color:var(--vm-muted);font-weight:800}.pro-filter{background:linear-gradient(180deg,#fff,#fff8fb);border-color:var(--vm-line);box-shadow:var(--vm-shadow-soft)}.filter-title{display:grid;margin-bottom:18px}.filter-title strong{font-size:1.18rem}.filter-title span{color:var(--vm-muted);font-size:.88rem}.featured-toggle{display:flex;align-items:center;gap:9px;margin:16px 0 0;padding:12px 13px;border:1px solid var(--line);border-radius:16px;background:#fff}.featured-toggle input{width:auto;accent-color:var(--vm-rose)}.pro-toolbar{border:1px solid var(--vm-line);box-shadow:var(--vm-shadow-soft)}.comparison-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}.comparison-strip a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:14px;border:1px solid var(--vm-line);border-radius:18px;background:#fff;box-shadow:var(--vm-shadow-soft)}.comparison-strip span{color:var(--vm-rose);font-weight:950}.comparison-strip strong{font-size:.92rem}.comparison-strip em{font-style:normal;color:var(--vm-gold);font-weight:950}.pro-review-row{box-shadow:0 18px 48px rgba(53,16,35,.08)}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.decision-grid div{padding:12px;border:1px solid rgba(91,22,56,.1);border-radius:16px;background:#fff8fb}.decision-grid span{display:block;color:var(--vm-muted);font-size:.74rem;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.decision-grid strong{font-size:.9rem;color:var(--vm-plum)}
.pro-detail-hero{padding-top:46px}.pro-detail-card{background:linear-gradient(145deg,#fff,#fff6fa);box-shadow:var(--vm-shadow-soft)}.pro-gallery{display:grid;gap:12px}.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-thumbs img{height:150px;width:100%;object-fit:cover;border-radius:18px}.article-nav{position:sticky;top:86px;z-index:5;margin:18px 0;padding:10px;border:1px solid var(--vm-line);border-radius:999px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);display:flex;flex-wrap:wrap;gap:8px;box-shadow:var(--vm-shadow-soft)}.article-nav a{padding:9px 13px;border-radius:999px;color:var(--vm-plum);font-weight:900;background:#fff4f8}.verdict-block{background:linear-gradient(145deg,#351023,#771d48);color:#fff}.verdict-block .eyebrow,.verdict-block p{color:#f7dbe6}.verdict-block h2{color:#fff}.spec-list-wide{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.pro-buy-card{top:92px}.sticky-buy{position:sticky;top:92px}.full-cta{width:100%;margin-top:10px}.check-list-public{display:grid;gap:9px;padding:0;margin:0;list-style:none}.check-list-public li{padding-left:28px;position:relative;color:var(--vm-muted);font-weight:800}.check-list-public li:before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:950}.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:26px;align-items:start}.pro-text-page,.guide-side{border:1px solid var(--vm-line);border-radius:28px;background:#fff;box-shadow:var(--vm-shadow-soft);padding:clamp(24px,4vw,42px)}.guide-side{position:sticky;top:96px;background:linear-gradient(145deg,#fff7fa,#fff)}.guide-side strong{display:block;font-size:1.45rem;color:var(--vm-plum)}.guide-side span{display:block;margin:12px 0;color:var(--vm-rose);font-weight:950}
@media(max-width:1050px){.lux-hero-grid,.method-board,.split-head,.intro-grid,.guide-layout{grid-template-columns:1fr}.editorial-strip,.pro-category-grid{grid-template-columns:repeat(2,1fr)}.comparison-strip{grid-template-columns:1fr}.article-nav{position:static;border-radius:22px}.pro-buy-card,.sticky-buy,.guide-side{position:static}.spec-list-wide{grid-template-columns:1fr}}
@media(max-width:760px){.lux-copy h1{font-size:clamp(2.45rem,14vw,4rem)}.editorial-proof,.editorial-strip,.pro-category-grid,.decision-grid{grid-template-columns:1fr}.hero-showcase .product-card.large .product-image{height:310px}.brand-text small{display:none}.site-nav.open{box-shadow:0 24px 60px rgba(53,16,35,.18)}.gallery-thumbs{grid-template-columns:1fr}.gallery-thumbs img{height:210px}}

/* v4.6.2: Product card image fix — show the complete main product photo, do not crop clothing/product shots. */
.product-card .product-image,
.review-row .product-image {
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(circle at 50% 30%, rgba(255,255,255,.96), rgba(255,246,250,.82) 58%, rgba(246,232,239,.92));
}

.product-card .product-image img,
.review-row .product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  padding: 14px;
  transform: none !important;
}

.product-card.large .product-image img,
.pro-product-card.large .product-image img {
  padding: 18px;
}

.product-card:hover .product-image img,
.review-row:hover .product-image img {
  transform: none !important;
}

/* Admin preview/list image should also show the full product instead of cropping it. */
.preview-image {
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg,#fff7fb,#f6e8ef);
}
.preview-image img {
  width: 100%;
  height: 100%;
  object-fit: contain !important;
  object-position: center center;
  padding: 12px;
}
.product-thumb {
  object-fit: contain !important;
  padding: 4px;
  background: #fff7fb;
}

/* v4.6.3: Product detail page main/gallery images must show the full product image. */
.detail-gallery,
.pro-gallery {
  background: linear-gradient(135deg, #fff7fa, #f6efe9) !important;
}
.detail-gallery > img,
.pro-gallery > img {
  width: 100% !important;
  height: clamp(340px, 52vw, 620px) !important;
  max-height: none !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block !important;
  padding: 18px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, #fff7fa, #f6efe9) !important;
}
.gallery-thumbs img {
  object-fit: contain !important;
  object-position: center center !important;
  background: #fff7fa !important;
  padding: 10px !important;
  box-sizing: border-box !important;
}
@media (max-width: 760px) {
  .detail-gallery > img,
  .pro-gallery > img {
    height: 360px !important;
    padding: 12px !important;
  }
}


/* v4.6.4 contact page backend UI */
.contact-section{padding-top:clamp(32px,5vw,70px)}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;align-items:start}.contact-form{padding:30px;border:1px solid var(--vm-line);border-radius:30px;background:#fff;box-shadow:var(--vm-shadow-soft);display:grid;gap:18px}.contact-form label{display:grid;gap:8px;font-weight:950;color:var(--vm-plum)}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--vm-line);border-radius:16px;background:#fff;padding:14px 15px;color:var(--vm-ink);outline:0}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--vm-rose);box-shadow:0 0 0 4px rgba(201,61,108,.12)}.contact-form textarea{resize:vertical}.hp-field{position:absolute;left:-10000px;opacity:0;pointer-events:none}.notice{padding:14px 16px;border-radius:16px;font-weight:900}.notice.success{background:#dcfce7;color:#166534}.notice.error{background:#fee2e2;color:#991b1b}.contact-side{display:grid;gap:14px;position:sticky;top:96px}.mini-panel{padding:22px;border:1px solid var(--vm-line);border-radius:24px;background:#fff;box-shadow:var(--vm-shadow-soft)}.mini-panel span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#fff0f5;color:var(--vm-rose);font-weight:950}.mini-panel strong{display:block;margin:10px 0 6px;color:var(--vm-plum);font-size:1.05rem}.mini-panel p{margin:0;color:var(--vm-muted)}.mini-panel.muted{background:#fff8fb}.card-head.simple{margin-bottom:0}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.contact-side{position:static}}


/* v4.6.5: Dynamic product image background.
   Containers use a manual color from product specs when present, otherwise /js/image-bg.js tries to sample the edge/background color of the image. */
.product-card .product-image,
.review-row .product-image,
.detail-gallery,
.pro-gallery,
.preview-image,
.product-thumb {
  background: var(--product-image-bg, linear-gradient(135deg, #fff7fa, #f6efe9)) !important;
  transition: background .22s ease, background-color .22s ease;
}
.detail-gallery > img,
.pro-gallery > img,
.gallery-thumbs img {
  background: var(--product-image-bg, linear-gradient(135deg, #fff7fa, #f6efe9)) !important;
}
.product-card .product-image img,
.review-row .product-image img,
.detail-gallery > img,
.pro-gallery > img,
.gallery-thumbs img,
.preview-image img {
  mix-blend-mode: normal;
}

/* v4.6.6: Product detail gallery - show all photos and make thumbnails interactive. */
.detail-gallery,
.pro-gallery {
  overflow: hidden;
}
.gallery-thumbs {
  display: flex !important;
  grid-template-columns: none !important;
  gap: 14px;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: 2px 4px 8px;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}
.gallery-thumbs::-webkit-scrollbar {
  height: 8px;
}
.gallery-thumbs::-webkit-scrollbar-thumb {
  background: rgba(91,22,56,.22);
  border-radius: 999px;
}
.gallery-thumb {
  flex: 0 0 clamp(120px, 18vw, 170px);
  height: 126px;
  border: 1px solid var(--vm-line);
  border-radius: 18px;
  background: var(--product-image-bg, #fff7fa);
  padding: 8px;
  cursor: pointer;
  overflow: hidden;
  scroll-snap-align: start;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.gallery-thumb:hover,
.gallery-thumb:focus-visible {
  border-color: rgba(201,61,108,.55);
  box-shadow: 0 12px 28px rgba(53,16,35,.11);
  transform: translateY(-1px);
  outline: none;
}
.gallery-thumb.active {
  border-color: var(--vm-rose);
  box-shadow: 0 0 0 3px rgba(201,61,108,.14), 0 16px 34px rgba(53,16,35,.12);
}
.gallery-thumb img,
.gallery-thumbs .gallery-thumb img {
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 12px !important;
  background: transparent !important;
  display: block !important;
}
@media (max-width: 760px) {
  .gallery-thumbs {
    display: flex !important;
  }
  .gallery-thumb {
    flex-basis: 132px;
    height: 118px;
  }
}

/* v4.6.7: Ukrainian product cards use the same complete structure as the English cards. */
.pro-product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.pro-product-card .product-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
}
.pro-product-card .card-proof {
  margin-top: 18px;
}
.pro-product-card .card-line {
  margin-top: auto;
}
.pro-product-card .card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
