:root { --product-accent:#255af6; --product-text:#232323; --product-muted:#555; --product-line:#dedede; --product-soft:#f7f7f7; --product-bg:#fff; }
html { scroll-behavior:smooth; }
body.product-editorial-page { margin:0; background:var(--product-bg); color:var(--product-text); font-family:Inter,Arial,sans-serif; font-size:16px; line-height:1.55; }
.product-editorial-page main { padding-top:76px; }
.product-editorial-page *, .product-editorial-page *::before, .product-editorial-page *::after { box-sizing:border-box; }
.product-wrap { width:min(1120px,calc(100% - 48px)); margin:0 auto; }
.product-skip { position:fixed; left:16px; top:-100px; z-index:100; background:#fff; color:var(--product-accent); padding:12px 16px; }
.product-skip:focus { top:16px; }
.product-site-header { border-bottom:1px solid var(--product-line); background:#fff; }
.product-header-inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.product-brand { display:flex; align-items:center; gap:20px; color:var(--product-text); text-decoration:none; }
.product-brand strong { font-size:26px; letter-spacing:.16em; line-height:1; }
.product-brand span { border-left:1px solid var(--product-line); padding-left:20px; font-size:14px; }
.product-header-nav { display:flex; align-items:center; gap:28px; }
.product-header-nav a { color:var(--product-accent); font-size:14px; text-decoration:none; padding:10px 0; border-bottom:2px solid transparent; }
.product-header-nav a:hover, .product-header-nav a:focus-visible { border-color:var(--product-accent); }
.product-breadcrumb { display:flex; gap:12px; align-items:center; padding:24px 0 12px; color:var(--product-muted); font-size:14px; }
.product-breadcrumb a { color:var(--product-text); text-decoration:none; }
.product-breadcrumb a:hover { text-decoration:underline; }
.product-hero { display:grid; grid-template-columns:minmax(0,.95fr) minmax(380px,1.05fr); grid-template-areas:"copy gallery" "detail gallery"; column-gap:64px; row-gap:28px; padding:0 0 48px; align-items:start; }
.product-hero-copy { grid-area:copy; padding-top:8px; }
.product-eyebrow { margin:0 0 14px; color:var(--product-muted); font-size:14px; }
.product-hero h1 { margin:0; font-size:clamp(52px,6vw,72px); font-weight:600; line-height:1; letter-spacing:-.055em; }
.product-name { margin:12px 0 0; font-size:30px; font-weight:400; line-height:1.2; letter-spacing:-.035em; }
.product-formulation-title { margin:26px 0 8px; color:var(--product-text); font-size:16px; font-weight:600; line-height:1.4; }
.product-description { max-width:520px; margin:0; color:var(--product-muted); line-height:1.58; }
.product-gallery { grid-area:gallery; display:block; margin:0; min-width:0; }
.product-image-stage { position:relative; min-height:370px; aspect-ratio:1.3; display:grid; place-items:center; overflow:hidden; border:1px solid var(--product-line); border-radius:6px; background:#fff; }
.product-gallery-main { appearance:none; width:100%; height:100%; display:grid; place-items:center; border:0; padding:28px; background:transparent; cursor:zoom-in; }
.product-gallery-main img { width:100%; height:100%; max-height:330px; object-fit:contain; display:block; }
.product-image-index { position:absolute; bottom:12px; left:16px; color:var(--product-muted); font-size:14px; font-variant-numeric:tabular-nums; }
.product-gallery-bottom { margin-top:12px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.product-thumbs { display:flex; flex-wrap:wrap; gap:8px; }
.product-gallery-thumb { appearance:none; width:52px; height:52px; display:grid; place-items:center; padding:4px; border:1px solid var(--product-line); border-radius:4px; background:#fff; cursor:pointer; }
.product-gallery-thumb[aria-pressed="true"] { border:2px solid var(--product-accent); }
.product-gallery-thumb img { width:100%; height:100%; object-fit:contain; display:block; }
.product-gallery-thumb:hover { border-color:var(--product-accent); }
.product-image-download { color:var(--product-accent); font-size:14px; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.product-no-img { min-height:370px; display:grid; place-items:center; border:1px solid var(--product-line); color:var(--product-muted); }
.product-hero-detail { grid-area:detail; }
.product-price { margin:0 0 14px; font-size:20px; font-weight:600; }
.product-price span { margin-right:8px; color:var(--product-muted); font-size:14px; font-weight:400; }
.product-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; }
.button.product-wa-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 22px; border-radius:5px; background:var(--product-accent); color:#fff; font-weight:600; text-decoration:none; }
.product-pdf-btn { display:inline-flex; align-items:center; gap:8px; color:var(--product-accent); font-size:15px; text-decoration:underline; text-underline-offset:4px; }
.product-pdf-btn--fallback { color:var(--product-accent); }
.product-comparator-actions { display:flex; justify-content:flex-end; align-items:center; margin-top:12px; font-size:14px; }
.product-comparator-actions>span { width:100%; color:var(--product-muted); }
.product-comparator-actions a { color:var(--product-accent); text-underline-offset:3px; }
.product-comparator-actions a:last-child { display:inline-flex; align-items:center; gap:7px; padding:4px 0; border:0; background:transparent; font-weight:500; text-decoration:none; }
.product-comparator-actions a:last-child>span { font-size:22px; line-height:1; }
.product-comparator-actions a:last-child:hover { text-decoration:underline; }
.product-micro-specs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:28px 0 0; padding-top:18px; border-top:1px solid var(--product-line); }
.product-micro-specs div { min-width:0; padding-right:22px; }
.product-micro-specs div+div { padding-left:22px; border-left:1px solid var(--product-line); }
.product-micro-specs dt { color:var(--product-muted); font-size:14px; }
.product-micro-specs dd { margin:4px 0 0; font-weight:600; }
.product-section-nav { position:sticky; top:0; z-index:10; border-top:1px solid var(--product-line); border-bottom:1px solid var(--product-line); background:rgba(255,255,255,.97); }
.product-section-nav-inner { min-height:112px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; padding:8px 0; }
.product-section-nav a { display:flex; align-items:center; min-height:48px; padding:8px 22px; color:var(--product-accent); font-size:16px; font-weight:500; text-decoration:none; }
.product-section-nav a:nth-child(3n+2), .product-section-nav a:nth-child(3n+3) { border-left:1px solid var(--product-line); }
.product-section-nav a:nth-child(n+4) { border-top:1px solid var(--product-line); }
.product-section-nav a:hover { text-decoration:underline; }
.product-data-section { display:grid; grid-template-columns:220px minmax(0,1fr); gap:40px; padding:44px 0; border-bottom:1px solid var(--product-line); scroll-margin-top:65px; }
.product-section-id { display:block; margin-bottom:14px; color:var(--product-muted); font-size:14px; font-variant-numeric:tabular-nums; }
.product-section-heading { margin:0; max-width:250px; color:var(--product-text); font-size:28px; font-weight:600; line-height:1.2; letter-spacing:-.025em; }
.product-section-body { min-width:0; color:var(--product-muted); }
.product-section-body>p:first-child { margin-top:0; }
.product-section-body h2, .product-section-body h3 { font-size:18px; color:var(--product-text); margin:28px 0 10px; }
.product-content-block { display:grid; grid-template-columns:minmax(150px,.42fr) minmax(0,1fr); column-gap:24px; padding:20px 0; border-top:1px solid var(--product-line); }
.product-content-block:first-child { padding-top:0; border-top:0; }
.product-content-block>h3 { grid-column:1; margin:0; line-height:1.35; }
.product-content-block>h3~* { grid-column:2; }
.product-section-body p { margin:0 0 14px; line-height:1.65; }
.product-section-body p:empty { display:none; }
.product-section-body ul, .product-section-body ol { margin:0 0 10px; padding:0; list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:24px; }
.product-section-body li { margin:0; padding:11px 0; border-bottom:1px solid var(--product-line); }
.product-section-body .w-embed { overflow-x:auto; }
.product-section-body table { width:100%; border-collapse:collapse; margin:16px 0; color:var(--product-text); font-size:15px; border:1px solid var(--product-line); }
.product-section-body th, .product-section-body td { padding:14px 16px; border-bottom:1px solid var(--product-line); border-right:1px solid var(--product-line); text-align:left; vertical-align:top; }
.product-section-body th { background:var(--product-soft); color:var(--product-muted); font-size:14px; font-weight:500; }
.product-section-body tr:last-child>* { border-bottom:0; }
.product-status-symbol { display:inline-block; min-width:1.25em; margin-right:5px; font-weight:700; }
.product-status-symbol--recommended { color:#16803c; }
.product-status-symbol--evaluate { color:#255af6; }
.product-status-symbol--not-recommended { color:#c62828; }
.product-more { margin:20px 0; border-top:1px solid var(--product-line); border-bottom:1px solid var(--product-line); }
.product-more summary { padding:16px 0; color:var(--product-text); font-weight:600; cursor:pointer; }
.product-more>div { padding:0 0 14px; }
.product-pending { color:var(--product-muted); font-style:italic; }
.product-site-footer { padding:32px 0; }
.product-footer-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.product-footer-brand { font-size:20px; letter-spacing:.16em; }
.product-footer-inner p { max-width:620px; margin:0; color:var(--product-muted); font-size:14px; text-align:right; }
.product-lightbox[hidden] { display:none; }
.product-lightbox { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:24px; background:rgba(0,0,0,.76); }
.product-lightbox-dialog { position:relative; max-width:min(1000px,92vw); max-height:90vh; }
.product-lightbox-image { max-width:100%; max-height:88vh; object-fit:contain; background:#fff; }
.product-lightbox-close { position:absolute; top:10px; right:10px; width:44px; height:44px; border:0; border-radius:50%; background:#fff; color:var(--product-text); font-size:20px; cursor:pointer; }
.product-gallery-main:focus-visible, .product-gallery-thumb:focus-visible, .product-lightbox-close:focus-visible, .product-editorial-page a:focus-visible { outline:3px solid var(--product-accent); outline-offset:3px; }
@media(max-width:800px) {
  .product-editorial-page main { padding-top:64px; }
  .product-wrap { width:calc(100% - 40px); }
  .product-header-inner { min-height:64px; }
  .product-brand strong { font-size:22px; }
  .product-brand span { display:none; }
  .product-header-nav { gap:14px; }
  .product-header-nav a:first-child { display:none; }
  .product-hero { grid-template-columns:1fr; grid-template-areas:"copy" "gallery" "detail"; row-gap:24px; padding-bottom:32px; }
  .product-hero h1 { font-size:48px; }
  .product-name { font-size:28px; }
  .product-image-stage { width:100%; min-height:0; aspect-ratio:1.35; }
  .product-gallery-main { padding:20px; }
  .product-gallery-main img { max-height:265px; }
  .product-section-nav-inner { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
  .product-data-section { grid-template-columns:1fr; gap:24px; padding:36px 0; }
  .product-content-block { grid-template-columns:1fr; gap:12px; padding:18px 0; }
  .product-content-block>h3, .product-content-block>h3~* { grid-column:1; }
  .product-section-heading { max-width:none; font-size:26px; }
  .product-footer-inner { align-items:flex-start; flex-direction:column; }
  .product-footer-inner p { text-align:left; }
}
@media(max-width:420px) {
  .product-wrap { width:calc(100% - 32px); }
  .product-header-nav a:nth-child(2) { font-size:0; }
  .product-header-nav a:nth-child(2) span { font-size:16px; }
  .product-breadcrumb { gap:8px; overflow:hidden; }
  .product-hero h1 { font-size:44px; }
  .product-actions { display:grid; gap:16px; }
  .product-micro-specs { display:grid; grid-template-columns:1fr; gap:14px; }
  .product-micro-specs div { padding:0 12px 0 0; }
  .product-micro-specs div+div { padding:12px 0 0; border-left:0; border-top:1px solid var(--product-line); }
  .product-section-nav-inner { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
  .product-section-nav a { min-height:54px; padding:8px 7px; font-size:12px; line-height:1.2; }
  .product-gallery-bottom { align-items:flex-start; flex-direction:column; }
}
@media(max-width:380px) {
  .product-section-body ul, .product-section-body ol { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
