
/* V7.6 five official categories and simple product lists */
.v76-category-explain{margin-top:clamp(26px,3vw,46px);max-width:860px;border-top:1px solid #d9e3d7;padding-top:22px}
.v76-category-explain h2{font-size:clamp(22px,2.6vw,32px);margin:0 0 12px}
.v76-category-explain p{font-size:clamp(15px,1.4vw,17px);line-height:1.75;color:#42584a}
.v76-empty-state{border:1px solid #e0e8dd;background:white;padding:clamp(18px,3vw,32px);border-radius:18px;max-width:760px}
.v76-empty-state p{margin:0 0 16px;line-height:1.7}
.v5-category.v5-cat-weight .v5-category-art{background:linear-gradient(125deg,#ede5ef,#eadced)}
.v5-category.v5-cat-daily .v5-category-art{background:linear-gradient(125deg,#edf0d8,#dce9cf)}
.v5-products-grid[data-count="1"]{display:grid;grid-template-columns:minmax(0,1fr)}
.v5-products-grid[data-count="1"]>.v5-product-card{display:grid;grid-template-columns:minmax(180px,32%) 1fr;max-width:900px;align-items:stretch;width:100%}
.v5-products-grid[data-count="1"]>.v5-product-card>.v5-product-art{height:100%;min-height:230px}
@media(max-width:589px){.v5-products-grid[data-count="1"]>.v5-product-card{display:flex;flex-direction:column}}
@media (min-width:1120px) {
 .v5-products-grid[data-count="8"]{grid-template-columns:repeat(4,minmax(0,1fr));}
}

/* Weight category cards V7.6.9 */
.wl-weight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}.wl-weight-card{background:#fff;border:1px solid #e0e8dd;border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:12px}.wl-weight-image{height:235px;border-radius:14px;background:#f8f5f0;display:flex;align-items:center;justify-content:center;overflow:hidden}.wl-weight-image img{width:100%;height:100%;object-fit:contain;padding:14px}.wl-weight-card h3{font-size:19px;margin:0;line-height:1.3}.wl-weight-card p{margin:0 0 8px;color:#526052}.wl-weight-card .v5-btn{margin-top:auto;text-align:center}@media(max-width:850px){.wl-weight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.wl-weight-grid{grid-template-columns:1fr}}

/* Catalog reconciliation V7.7.1 */
.wl-product-no-photo,.wl-weight-flavour{display:flex;align-items:center;justify-content:center;min-height:150px;padding:22px;color:#32543e;font-weight:700;text-align:center;font-size:18px;line-height:1.35;background:linear-gradient(145deg,#f5f8f0,#eaf1e7);border-radius:14px}.v5-product-art:has(.wl-product-no-photo){display:flex;align-items:center;justify-content:center}.wl-weight-image .wl-weight-flavour{width:100%;height:100%;font-size:23px}.v5-product-art img{object-fit:contain!important}.wl-weight-card img{object-fit:contain!important}

/* Weight category: heading and introduction stay together above product grid */
.wl-weight-section-head{display:block!important;}
.wl-weight-section-head>div,.wl-weight-section-head>p{width:100%;max-width:920px;}
.wl-weight-section-head h2{font-size:clamp(28px,3vw,42px);line-height:1.15;overflow-wrap:normal;}
.wl-weight-section-head>p{margin-top:14px;}

/* WITHLOVE V160 combined stylesheet boundary */
/* WITHLOVE V7.6 image presentation normalization; does not edit product photos. */
/* Product tiles use one consistent visual space, with no clipping of packaging. */
.v5-product-art img,
.v5-product-art.v59-with-img img {
  display:block;
  width:100%;
  height:235px;
  max-height:235px;
  object-fit:contain;
  object-position:center;
}
/* The hero photographs remain entirely visible regardless of aspect ratio. */
body[data-v71="product"] .lp-hero-photo img {
  display:block;
  width:100%;
  height:clamp(280px,34vw,440px);
  min-height:0;
  max-height:440px;
  object-fit:contain;
  object-position:center;
}
body[data-v71="product"] .lp-mobile-product-img img {
  display:block;
  width:100%;
  height:290px;
  max-height:290px;
  object-fit:contain;
  object-position:center;
}
/* Related items, including packaging with different source aspect ratios. */
.lp-related-img img {width:100%;height:190px;max-height:190px;object-fit:contain;object-position:center}
@media (max-width:760px){
  body[data-v71="product"] .lp-mobile-product-img img {height:245px;max-height:245px}
  .v5-product-art img,.v5-product-art.v59-with-img img {height:215px;max-height:215px}
}

.wl-buying-guide-link{display:inline-block;margin-top:14px;font-size:14px;font-weight:650;text-decoration:underline;text-underline-offset:3px}

/* WITHLOVE V160 combined stylesheet boundary */
/* V7.7.9 - product layout rebuilt, intentionally loaded last */
body[data-v71="product"] .v67-feature-layout:has(> .lp-feature-row):not(:has(> .v67-feature-visual)) {display:block;width:100%;max-width:none}
body[data-v71="product"] .v67-feature-layout:not(:has(> .v67-feature-visual)) > .lp-feature-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px;width:100%}
body[data-v71="product"] .v67-feature-layout .lp-feature-row > article {min-height:0!important;max-width:none!important;margin:0;align-self:stretch}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px;align-items:stretch}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row > article {min-height:0!important;height:auto!important;margin:0;padding:22px 24px;box-sizing:border-box}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row > article h3 {margin:0 0 10px;line-height:1.3}
body[data-v71="product"] .lp-related {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px;align-items:stretch}
body[data-v71="product"] .lp-related:has(> :only-child) {grid-template-columns:minmax(0,420px)!important}
body[data-v71="product"] .lp-related > .lp-related-card {height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;flex-direction:column;gap:0!important;padding:0!important;align-self:stretch;overflow:hidden;border-radius:17px}
body[data-v71="product"] .lp-related-card .lp-related-img {height:172px!important;min-height:0!important;width:100%;padding:12px;background:#f8faf6;box-sizing:border-box}
body[data-v71="product"] .lp-related-card .lp-related-img img {width:100%;height:100%;object-fit:contain}
body[data-v71="product"] .lp-related-card > span {padding:15px 18px 5px!important;flex:none!important;line-height:1.4}
body[data-v71="product"] .lp-related-card > p {margin:0!important;padding:0 18px 17px!important;font-size:13px;line-height:1.5}
body[data-v71="product"] .lp-related-card > b {display:none}
body[data-v71="product"] .v763-faq {max-width:100%;box-sizing:border-box;margin:24px auto 0;padding:clamp(18px,2vw,28px)}
body[data-v71="product"] .v763-faq article {max-width:none}
@media(max-width:1050px){body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row {grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-v71="product"] .lp-related {grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){body[data-v71="product"] .v67-feature-layout:not(:has(> .v67-feature-visual)) > .lp-feature-row,body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row,body[data-v71="product"] .lp-related {grid-template-columns:1fr!important}body[data-v71="product"] .lp-related-card .lp-related-img {height:200px!important}}

/* V8.0.3: FAQ lives inside the page container; keep the block aligned */
body[data-v71="product"] .lp-section > .wrap > .v763-faq{width:100%;max-width:100%;margin:26px 0 0;border:1px solid #dce7dd;border-radius:18px;padding:clamp(18px,2vw,27px);box-sizing:border-box}
body[data-v71="product"] .lp-section > .wrap > .v763-faq h2{font-size:clamp(23px,2.25vw,30px);line-height:1.2;margin:0 0 14px}
@media(max-width:760px){body[data-v71="product"] .lp-section > .wrap > .v763-faq{padding:18px;margin-top:20px}}


/* V8.0.24: compact and continuous product detail flow, UA/RU/EN.
   One source of truth for product spacing. Replaces the V8.0.23 spacing rules. */
body[data-v71="product"] .lp-top{
  padding-top:clamp(16px,2vw,26px)!important;
  padding-bottom:clamp(20px,2.2vw,30px)!important;
}
body[data-v71="product"] .lp-grid{gap:clamp(16px,2.6vw,30px)!important;align-items:start!important}
body[data-v71="product"] section.lp-section{
  padding-block:clamp(16px,1.7vw,24px)!important;
}
/* Related white sections should read as one continuous article, not disconnected panels. */
body[data-v71="product"] section.lp-section.lp-white + section.lp-section.lp-white{
  padding-top:8px!important;
}
body[data-v71="product"] section.lp-section.lp-white:has(+ section.lp-section.lp-white){
  padding-bottom:8px!important;
}
body[data-v71="product"] .lp-section-head{margin-bottom:12px!important;max-width:850px}
body[data-v71="product"] .lp-section-head h2{
  margin:0!important;
  font-size:clamp(28px,2.75vw,39px)!important;
  line-height:1.13!important;
  letter-spacing:-.035em;
}
body[data-v71="product"] .lp-section-head .lp-eyebrow{display:block;margin:0 0 7px!important}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row{
  gap:14px!important;
}
/* Two informational cards should not leave an empty third column. */
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row:has(> article:nth-child(2):last-child){
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row:has(> article:only-child){
  grid-template-columns:1fr!important;
}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row > article{
  padding:18px 20px!important;
  border-radius:16px!important;
  min-height:0!important;
}
body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row > article h3{
  margin:0 0 8px!important;
  font-size:clamp(19px,1.7vw,22px)!important;
  line-height:1.3!important;
}
body[data-v71="product"] .v71-benefit-card p{line-height:1.6!important}
body[data-v71="product"] .v71-checkout{border-radius:16px!important}
body[data-v71="product"] .v71-password-tip{padding:18px 20px!important;border-radius:16px!important}
body[data-v71="product"] .lp-related{gap:14px!important}
body[data-v71="product"] .lp-related-card .lp-related-img{height:160px!important;padding:10px!important}
body[data-v71="product"] .lp-related-card > span{padding:12px 16px 4px!important}
body[data-v71="product"] .lp-related-card > p{padding:0 16px 14px!important}
body[data-v71="product"] .lp-section > .wrap > .v763-faq{margin-top:16px!important;padding:16px 18px!important}
body[data-v71="product"] .lp-section > .wrap > .v763-faq h2{margin-bottom:12px!important}
body[data-v71="product"] .lp-convert{padding-block:clamp(28px,3vw,42px)!important}
body[data-v71="product"] .lp-convert-grid{gap:clamp(18px,3vw,34px)!important}
@media(max-width:760px){
  body[data-v71="product"] .lp-top{padding:14px 0 18px!important}
  body[data-v71="product"] .lp-grid{gap:16px!important}
  body[data-v71="product"] section.lp-section{padding-block:16px!important}
  body[data-v71="product"] section.lp-section.lp-white + section.lp-section.lp-white{padding-top:8px!important}
  body[data-v71="product"] section.lp-section.lp-white:has(+ section.lp-section.lp-white){padding-bottom:8px!important}
  body[data-v71="product"] .lp-section-head{margin-bottom:10px!important}
  body[data-v71="product"] .lp-section-head h2{font-size:clamp(26px,7vw,33px)!important;line-height:1.18!important}
  body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row,
  body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row:has(> article:nth-child(2):last-child){
    grid-template-columns:1fr!important;gap:10px!important;
  }
  body[data-v71="product"] section.lp-section > .wrap > .lp-feature-row > article{padding:16px!important}
  body[data-v71="product"] .lp-related-card .lp-related-img{height:166px!important}
  body[data-v71="product"] .lp-section > .wrap > .v763-faq{margin-top:12px!important;padding:15px!important}
  body[data-v71="product"] .lp-convert{padding-block:24px!important}
}

/* Cosmetics use a separate editorial template: match its spacing to product pages. */
body[data-v71="product"] .wl78-product{padding-block:clamp(24px,3vw,42px)!important}
body[data-v71="product"] .wl78-hero > *{min-width:0!important}
body[data-v71="product"] .wl78-photo{min-width:0!important;max-width:100%!important;width:100%!important;box-sizing:border-box!important}
body[data-v71="product"] .wl78-photo img{min-width:0!important;max-width:100%!important;width:100%!important;height:auto!important}
body[data-v71="product"] .wl78-copy{margin:24px auto 16px!important;line-height:1.72!important}
body[data-v71="product"] .wl78-features{margin:24px 0!important;gap:14px!important}
body[data-v71="product"] .wl78-feature{padding:18px 20px!important}
body[data-v71="product"] .wl78-bottom{padding:20px 22px!important}
body[data-v71="product"] .wl78-related{margin-top:14px!important}
body[data-v71="product"] .wl78-note{margin:14px 0!important}
body[data-v71="product"] .wl-beauty-editorial{
  margin:clamp(18px,2.5vw,30px) auto!important;
  padding:clamp(18px,2.2vw,28px)!important;
}
body[data-v71="product"] .wl-beauty-editorial .wl-beauty-story-heading{margin-bottom:15px!important}
body[data-v71="product"] .wl-beauty-story{padding:clamp(16px,1.7vw,21px)!important}
@media(max-width:760px){
  body[data-v71="product"] .wl78-product{padding:18px 16px 30px!important}
  body[data-v71="product"] .wl78-hero{gap:15px!important}
  body[data-v71="product"] .wl78-copy{margin:18px auto 12px!important}
  body[data-v71="product"] .wl78-features{margin:18px 0!important;gap:10px!important}
  body[data-v71="product"] .wl78-feature{padding:16px!important}
  body[data-v71="product"] .wl78-photo{min-height:215px!important}
  body[data-v71="product"] .wl-beauty-editorial{margin:18px auto!important;padding:16px!important}
}

/* V8.0.26: shorter, readable editorial content replacing repetitive benefit/FAQ cards */
body[data-v71="product"] .v67-feature-layout:has(> .wl826-product-story):not(:has(> .v67-feature-visual)){
 display:block!important; width:100%; max-width:none;
}
body[data-v71="product"] .wl826-product-story { max-width:80ch; min-width:0; }
body[data-v71="product"] .wl826-product-story p{
 margin:0 0 13px; font-size:clamp(15px,1.25vw,17px); line-height:1.7; color:#415b4d;
}
body[data-v71="product"] .wl826-product-story p:last-child{margin-bottom:0}
body[data-v71="product"] .wl826-product-note{
 font-size:15px; line-height:1.65; margin:15px 0 0;
 padding:12px 16px; border-left:3px solid #9bbb8b;
 background:#f4f8f1; color:#3c5849; max-width:75ch;
}
@media(max-width:760px){
 body[data-v71="product"] .wl826-product-story p{font-size:15px;line-height:1.64;margin-bottom:10px}
 body[data-v71="product"] .wl826-product-note{padding:10px 13px;margin-top:12px}
}

