/* Product module only. Newsreader / Manrope and the accepted Yuanze palette. */
body :is(.pxv2-page,.pfv2-page)[data-product-materials] {--pm-ink:#103d33;--pm-muted:#4c675e;--pm-line:#103d3329;}
body :is(.pxv2-page,.pfv2-page)[data-product-materials] :is(.px-shell,.pfv2-shell){width:min(calc(100% - 96px),1440px)}
body [data-product-materials] :is(.px-hero-grid,.pfv2-hero){grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;padding-block:38px 40px;align-items:center}
body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:clamp(64px,6vw,90px)!important;line-height:1.02;letter-spacing:-.035em;max-width:11ch}
body [data-product-materials] :is(.px-editorial-accent,.pfv2-editorial){font-size:clamp(26px,2.3vw,36px);line-height:1.18;color:#987238;margin-block:20px}
body [data-product-materials] :is(.px-lede,.pfv2-lede){font:400 18px/1.7 var(--font-sans);color:var(--pm-muted);max-width:48ch}
body [data-product-materials] :is(.px-kicker,.pfv2-eyebrow){font-size:13px;line-height:1.5;letter-spacing:.07em}
body [data-product-materials] :is(.px-hero-visual,.pfv2-hero-visual){padding:0;background:transparent;border:0;box-shadow:none;min-width:0}
body [data-product-materials] .px-hero-visual figure{padding:0;background:transparent;overflow:visible}
body [data-product-materials] [data-product-gallery] img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-fit:contain;transition:transform .45s ease;transform-origin:center}
body [data-product-materials] .pfv2-hero-visual .pfv2-image{aspect-ratio:4/3}
body [data-product-materials] .pm-detail-view img{transform:scale(1.32)}
body [data-product-materials] .pm-image-viewport{overflow:hidden;aspect-ratio:4/3;background:#eee8dc}
body [data-product-materials] .pfv2-related img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;margin-bottom:20px}
body [data-product-materials] :is(.px-hero-visual,.pfv2-hero-visual) figcaption{position:static;font:400 13px/1.6 var(--font-sans);padding:0;margin:12px 0;color:var(--pm-muted);max-width:68ch}
.pm-gallery-controls{display:flex;gap:20px;border-top:1px solid var(--pm-line);padding-top:4px;flex-wrap:wrap}
body [data-product-materials] .pm-gallery-controls button{border:0;border-radius:0;box-shadow:none;background:transparent;color:var(--pm-muted);font:500 14px/1.5 var(--font-sans);min-height:44px;padding:10px 0;position:relative;cursor:pointer}
body [data-product-materials] .pm-gallery-controls button[aria-pressed=true]{color:var(--pm-ink)}
.pm-gallery-controls button[aria-pressed=true]::after{content:'';height:2px;background:#ad8540;position:absolute;bottom:0;left:0;right:0}
body [data-product-materials] .pm-product-facts{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;padding:18px 0;margin:24px 0 0;border-top:1px solid var(--pm-line);border-bottom:1px solid var(--pm-line)}
body [data-product-materials] .pm-product-facts div{display:block;border:0;padding:0}
body [data-product-materials] .pm-product-facts dt{font:500 12px/1.5 var(--font-sans);color:var(--pm-muted);text-transform:none;letter-spacing:0;margin-bottom:6px}
body [data-product-materials] .pm-product-facts dd{font:500 15px/1.5 var(--font-sans);color:var(--pm-ink);margin:0}
.pm-chapter-nav{display:flex;flex-wrap:wrap;gap:18px 32px;border-top:1px solid var(--pm-line);border-bottom:1px solid var(--pm-line);padding-block:14px}
body [data-product-materials] .pm-chapter-nav a{font:500 15px/1.5 var(--font-sans);min-height:44px;display:flex;align-items:center;gap:24px}
body [data-product-materials] .pm-chapter-nav span{color:#a47d3d}
body [data-product-materials] :is(.px-section,.pfv2-section){padding-block:84px;scroll-margin-top:110px}
body [data-product-materials] :is(.px-section-head,.pfv2-section-head){gap:60px;margin-bottom:42px}
body [data-product-materials] h2{font-size:clamp(40px,4vw,56px);line-height:1.1}
body [data-product-materials] :is(.px-section-head,.pfv2-section-head)>p{font-size:18px;line-height:1.7}
body [data-product-materials] :is(.px-selector button,.px-formula-selector button){font-size:24px;line-height:1.3;padding:18px 22px}
body [data-product-materials] .px-formula-stage{grid-template-columns:1fr;padding:32px;background:#164538}
body [data-product-materials] .px-formula-stage>figure{display:none}
body [data-product-materials] .px-formula-copy dl div{display:grid;grid-template-columns:minmax(130px,.45fr) minmax(0,1fr);gap:24px;padding-block:18px;border-bottom:1px solid #f8f4ea33}
body [data-product-materials] .px-formula-copy dd{font-size:18px;line-height:1.65}
body [data-product-materials] .pxv2-texture-chapter{background:#f3eee4;color:var(--pm-ink);margin-top:48px;padding-block:60px}
body [data-product-materials] .pxv2-texture-chapter>.px-shell{width:100%}
body [data-product-materials] :is(.px-texture-media,.px-packaging-stage){height:auto;min-height:0;aspect-ratio:auto;padding:0;display:grid;isolation:isolate;overflow:visible}
body [data-product-materials] :is(.px-texture-media,.px-packaging-stage)>figure{position:relative;inset:auto;width:auto;display:none;height:auto;opacity:1;visibility:visible;transform:none}
body [data-product-materials] :is(.px-texture-media,.px-packaging-stage)>figure.is-active{display:block}
body [data-product-materials] :is(.px-texture-media,.px-packaging-stage) img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain!important;max-height:480px}
body [data-product-materials] :is(.px-texture-caption,.px-packaging-caption){position:static;inset:auto;min-height:0;height:auto;padding:20px 0;background:transparent;display:block}
body [data-product-materials] :is(.px-texture-caption,.px-packaging-caption) p{font:400 28px/1.25 var(--font-display);margin:0 0 10px}
body [data-product-materials] :is(.px-texture-caption,.px-packaging-caption) p{color:var(--pm-ink)!important}
body [data-product-materials] :is(.px-texture-caption,.px-packaging-caption) span{font:400 17px/1.65 var(--font-sans);color:var(--pm-muted)}
body [data-product-materials] .px-texture-stage>.px-selector{margin-top:24px}
body [data-product-materials] .px-packaging-layout{gap:56px}
body [data-product-materials] .px-packaging-selector button{padding:20px 24px;min-height:100px}
body [data-product-materials] .px-packaging-selector strong{font:400 26px/1.3 var(--font-display);text-transform:none}
body [data-product-materials] .px-packaging-selector small{font:400 16px/1.65 var(--font-sans);max-width:46ch}
body [data-product-materials] .px-packaging-selector button[aria-pressed=true]{background:#ede8dc;border-left:3px solid #ad8540;color:var(--pm-ink);padding-left:21px}
body [data-product-materials] .px-packaging-selector button[aria-pressed=true] small{color:var(--pm-muted)}
body [data-product-materials] :is(.pm-sensory-note,.pm-format-note){font:400 13px/1.6 var(--font-sans);margin-top:12px;color:var(--pm-muted)}
body [data-product-materials] .px-related-grid figure{height:auto;aspect-ratio:auto;margin-bottom:16px}
body [data-product-materials] .px-related-grid figure img{aspect-ratio:4/3;object-fit:contain;height:auto}
body [data-product-materials] .px-related-grid figcaption{display:none}
body [data-product-materials] .px-related-grid>a>span{display:block;font-size:13px;line-height:1.6;margin-bottom:10px}
body [data-product-materials] .px-related-grid h3{font-size:32px}
body [data-product-materials] :is(a,button,summary):focus-visible{outline:2px solid #a07b3d;outline-offset:5px}
body #products-hub-v2.products-hub-v2 .hub-hero-worlds img{aspect-ratio:4/3;object-fit:contain;background:#ebe6dc}
body #products-hub-v2.products-hub-v2 .hub-hero-worlds a{min-width:0}
body #products-hub-v2.products-hub-v2 .hub-hero-reference{font-size:13px;line-height:1.6}
body #products-hub-v2.products-hub-v2 .hub-product-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.hub-product-index a{display:grid;grid-template-columns:88px 1fr;gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid #103d3329;font:400 22px/1.3 var(--font-display)}
.hub-product-index img{width:88px;height:66px;object-fit:contain;background:#f1ebdf}
.hub-product-index small{display:block;font:400 13px/1.6 var(--font-sans);color:#4c675e;margin-top:6px}
body #products-hub-v2.products-hub-v2 .series-product-card>p{font-size:15px!important;line-height:1.65;color:#4c675e;margin-top:8px}
body #products-hub-v2.products-hub-v2 .series-product-card h3{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:20px}
body #products-hub-v2.products-hub-v2 .series-product-card figure img{object-fit:contain}
/* Series pages: an ivory product introduction inside the shared width system. */
body[data-page^="products-series-"] #products-hub-v2.products-hub-v2 #hub-hero {
  background:var(--hub-ivory); color:var(--hub-green); padding-block:64px 48px;
}
body #products-hub-v2.products-hub-v2 .series-hero {
  display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(32px,4vw,64px); align-items:center;
}
body #products-hub-v2.products-hub-v2 .series-hero>* { min-width:0; }
body #products-hub-v2.products-hub-v2 .series-hero h1 { line-height:1.05; margin-bottom:24px; }
body #products-hub-v2.products-hub-v2 .series-hero .hub-kicker { color:#806b40; font-size:13px; letter-spacing:.08em; margin-bottom:18px; }
body #products-hub-v2.products-hub-v2 .series-hero>div>p:not(.hub-kicker) {
  max-width:42ch; margin-bottom:28px; color:#4c675e; text-wrap:balance;
  font:400 var(--yz-reading-body)/var(--yz-reading-leading) var(--font-sans);
}
.products-hub-v2 .series-hero figure { margin:0; }
.products-hub-v2 .series-product-name { white-space:nowrap; }
.products-hub-v2 .series-hero img { width:100%; height:auto; aspect-ratio:4/3; object-fit:contain; }
body #products-hub-v2.products-hub-v2 .series-hero figcaption { font:400 14px/1.65 var(--font-sans); color:#4c675e; margin-top:12px; }
.products-hub-v2 .series-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px 28px; }
body #products-hub-v2.products-hub-v2 .series-hero-actions a { font:500 16px/1.5 var(--font-sans); min-height:48px; }
body #products-hub-v2.products-hub-v2 .series-hero-actions .hub-link { gap:16px; color:var(--hub-green); }
body #products-hub-v2.products-hub-v2 .series-hero-actions .hub-link span { color:#806b40; }
body #products-hub-v2.products-hub-v2 .series-hero-actions .series-brief-link {
  display:inline-flex; align-items:center; gap:24px; padding:14px 20px;
  background:var(--hub-green); color:var(--hub-ivory); border:1px solid var(--hub-green);
}
body #products-hub-v2.products-hub-v2 .series-brief-link:hover { background:#164d40; }
body #products-hub-v2.products-hub-v2 #series-products { scroll-margin-top:calc(var(--yz-header-height,122px) + 24px); }
@media(max-width:1100px) {
  body[data-page^="products-series-"] #products-hub-v2.products-hub-v2 #hub-hero { padding-block:48px 40px; }
}
@media(max-width:850px) {
  body #products-hub-v2.products-hub-v2 .series-hero { grid-template-columns:1fr; gap:32px; }
  body #products-hub-v2.products-hub-v2 .series-hero figure { order:0; }
}
@media(max-width:560px) {
  body[data-page^="products-series-"] #products-hub-v2.products-hub-v2 #hub-hero { padding-block:36px; }
  .products-hub-v2 .series-hero-actions { gap:16px 24px; }
}
@media(max-width:1100px){body [data-product-materials] :is(.px-hero-grid,.pfv2-hero){gap:36px;grid-template-columns:1fr 1fr}body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:64px}body [data-product-materials] :is(.px-section-head,.pfv2-section-head){gap:36px}.hub-product-index a{grid-template-columns:70px 1fr;font-size:22px}.hub-product-index img{width:70px;height:53px}}
@media(max-width:850px){body :is(.pxv2-page,.pfv2-page)[data-product-materials] :is(.px-shell,.pfv2-shell){width:calc(100% - 48px)}body [data-product-materials] :is(.px-hero-grid,.pfv2-hero){grid-template-columns:1fr;gap:28px;padding-top:24px}body [data-product-materials] :is(.px-hero-visual,.pfv2-hero-visual){order:-1}body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:64px;max-width:none}body [data-product-materials] :is(.px-section,.pfv2-section){padding-block:60px}body [data-product-materials] .px-formula-stage{padding:24px}body [data-product-materials] .px-formula-copy dl div{grid-template-columns:1fr;gap:8px}body [data-product-materials] .px-packaging-layout{gap:28px}body [data-product-materials] :is(.px-section-head,.pfv2-section-head){grid-template-columns:1fr;gap:20px}body #products-hub-v2.products-hub-v2 .series-product-cards{grid-template-columns:repeat(2,minmax(0,1fr))}body #products-hub-v2.products-hub-v2 .series-hero{grid-template-columns:1fr;gap:32px}body #products-hub-v2.products-hub-v2 .series-hero figure{order:0}}
@media(max-width:560px){body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:52px}body [data-product-materials] :is(.px-editorial-accent,.pfv2-editorial){font-size:28px}body [data-product-materials] h2{font-size:38px}body [data-product-materials] .pm-product-facts{gap:18px}body [data-product-materials] .pm-chapter-nav{gap:4px 24px}body [data-product-materials] .pm-chapter-nav a{font-size:14px;gap:12px}body [data-product-materials] .pxv2-texture-chapter{padding-block:36px}body [data-product-materials] .pm-gallery-controls{gap:18px}body #products-hub-v2.products-hub-v2 .hub-product-index{grid-template-columns:1fr}body #products-hub-v2.products-hub-v2 .series-product-cards{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body [data-product-materials] *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1100px){body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:64px!important}}
@media(max-width:560px){body [data-product-materials] :is(.px-hero,.pfv2-hero) h1{font-size:52px!important}}

/* Readable supporting copy on the mapped product templates' light surfaces. */
body .pxv2-page[data-product-materials] { --px-gold:#76613c; }
body .pxv2-page[data-product-materials] .px-section:not(.pxv2-proof):not(.px-final-cta) .px-section-head>p,
body .pxv2-page[data-product-materials] :is(.px-direction-stage,.px-formula-stage) dt,
body .pxv2-page[data-product-materials] :is(.px-starting-grid,.px-packaging-selector) button small { color:var(--pm-muted); }
body .pxv2-page[data-product-materials] :is(.pxv2-proof,.px-final-cta) .px-kicker { color:#cfb681; }
body [data-product-materials] .pm-chapter-nav span { color:#76613c; }
body [data-product-materials] .pm-product-facts dt { font-size:14px; line-height:1.55; }
body .pxv2-page[data-product-materials] .px-starting-grid button small { font-size:16px; line-height:1.65; }
@media(max-width:430px) {
  body .pxv2-page[data-product-materials] :is(dt,.px-related-grid>a>span,.px-hero-texture span,figure figcaption) { font-size:14px!important; line-height:1.6; }
  body .pxv2-page[data-product-materials] .px-brief-summary span { font-size:16px!important; line-height:1.6; }
  body .pxv2-page[data-product-materials] .px-stage-label { font-size:26px!important; line-height:1.25; }
}
