/* Same accepted palette and reading scale; catalogs browse many products, detail pages explain one. */
body.site-fluid .catalog-summary{padding-block:28px 44px}
.catalog-summary .breadcrumbs{margin-bottom:28px;flex-wrap:wrap;color:#627061}
.catalog-summary-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.65fr);gap:var(--layout-gap);align-items:center}
body.site-fluid .catalog-summary h1{font-size:clamp(40px,3.5vw,76px);font-weight:400;letter-spacing:-.04em;line-height:1.1;margin:14px 0 20px}
.catalog-summary p:not(.eyebrow){max-width:52ch;color:#455c4c}
.catalog-summary-media{display:block;aspect-ratio:16/10;background:#e9e6de;border-radius:16px;overflow:hidden}
.catalog-summary-media img{width:100%;height:100%;object-fit:contain}
body.site-fluid .catalog-range{padding-block:20px 56px;min-height:0}
.product-tools{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;margin-bottom:22px}
.product-tools label{display:flex;flex-direction:column;gap:8px;font-size:var(--text-small);min-width:0}
.product-tools :is(input,select){width:100%;border:1px solid #b8c3af;background:#faf9f3;border-radius:8px;padding:14px 16px;font-size:var(--text-ui);color:#20342b;min-width:0}
.product-range-summary{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:24px;color:#455c4c;font-size:var(--text-small)}
body.site-fluid .product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;align-items:stretch}
.product-tile{min-width:0;display:flex;flex-direction:column;border:1px solid #d2d2c6;background:#f8f6ef;border-radius:16px;overflow:hidden}
.product-tile-media{display:block;position:relative;aspect-ratio:8/5;background:#faf9f6;isolation:isolate;overflow:hidden;border-radius:inherit}
.product-tile-media img{display:block;width:100%;height:100%;object-fit:contain;border-radius:inherit}
/* Preserve the accepted 8:5 card. The complete subject stays in front; only a
   duplicate of the same photograph is enlarged/softened behind it. This removes
   baked-in flat canvas bars without stretching or cutting the actual product. */
.product-tile-media--framed .product-tile-photo{position:absolute;z-index:1;max-width:none;width:var(--pc-fw,100%);height:var(--pc-fh,100%);left:var(--pc-fl,0%);top:var(--pc-ft,0%);object-fit:fill;clip-path:var(--pc-clip,inset(0));border-radius:0}
.product-tile-media--framed .product-tile-backdrop{position:absolute;z-index:0;max-width:none;width:var(--pc-bw,100%);height:var(--pc-bh,100%);left:var(--pc-bl,0%);top:var(--pc-bt,0%);object-fit:fill;filter:blur(14px);transform:scale(1.12);transform-origin:var(--pc-box,50%) var(--pc-boy,50%);border-radius:0;pointer-events:none}
.product-tile-media--render{background:#e9e6de}
.product-tile-media--render img{mix-blend-mode:multiply}
.product-video-label{position:static;color:#455c4c;padding:14px 22px 0;font-size:var(--text-small);line-height:1.5;min-height:1.5em;margin:0}
.product-tile-body{display:flex;flex-direction:column;flex:1;padding:22px}
.product-tile-body .micro{color:#735a30;letter-spacing:.02em;line-height:1.5;margin-bottom:12px;overflow-wrap:anywhere}
body.site-fluid .product-tile :is(h2,h3){font-size:clamp(25px,1.7vw,32px);font-weight:500;line-height:1.25;letter-spacing:-.02em;margin:0 0 14px;max-width:none}
.product-tile :is(h2,h3) a:hover{text-decoration:underline;text-underline-offset:5px}
.product-tile-description{color:#455c4c;font-size:var(--text-small);line-height:1.65;margin-bottom:20px}
.product-tile-kind{font-size:var(--text-small);line-height:1.5;color:#52634f;margin-bottom:18px}
/* Identical content slots are used by static, filtered and related-product cards. */
body.site-fluid .product-tile-body>.micro{height:1.5em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.site-fluid .product-tile-body>:is(h2,h3){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;min-height:2.5em;max-height:2.5em;overflow:hidden}
body.site-fluid .product-tile-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;min-height:4.95em;max-height:4.95em;overflow:hidden}
body.site-fluid .product-tile-kind{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;min-height:3em;max-height:3em;overflow:hidden}
.product-tile-actions{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:14px;border-top:1px solid #d4dbcc}
body.site-fluid .product-tile-actions :is(a,.text-link){font-size:var(--text-small);line-height:1.5;gap:12px}
.product-tile-video{color:#455c4c;text-decoration:underline;text-underline-offset:4px}
.catalog-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin-top:36px;font-size:var(--text-ui)}
.catalog-pagination :is(a,button){display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:10px 16px;border:1px solid #b8c3af;border-radius:7px;background:transparent;color:#20342b;font:inherit}
.catalog-pagination [aria-current=page]{background:#20342b;color:#f4f3eb;border-color:#20342b}
.catalog-pagination button:disabled{opacity:.45}
.catalog-scope-links{display:flex;gap:20px 36px;flex-wrap:wrap;margin-top:34px;padding-top:24px;border-top:1px solid #cbd1c4}
body.site-fluid .product-grid.product-example-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
/* Full width is retained; useful content determines the height of product-body sections. */
body.site-fluid:is(.page-product,.page-stem-product,.page-stem) main>.section{min-height:0;display:block;padding-block:48px}
body.site-fluid.page-product .inner-hero{padding-bottom:42px}
body.site-fluid.page-product .inner-hero-grid{min-height:0;padding-block:25px}
body.site-fluid:is(.page-product,.page-stem-product) .section-heading{margin-bottom:30px}
body.site-fluid:is(.page-product,.page-stem-product) .page-jumps{padding-block:18px}
.product-planning-details{border-top:1px solid #bbc8b5;border-bottom:1px solid #bbc8b5;min-width:0}
.product-planning-details>summary{font-size:var(--title-sub);font-weight:500;line-height:1.5;padding:22px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}
.product-planning-details>summary::-webkit-details-marker{display:none}
.product-planning-details>summary span{font-size:1.3em;line-height:1}
.product-planning-details[open]>summary span{transform:rotate(45deg)}
.product-planning-details .planning-rows>div{padding-block:20px}
.stem-reference-disclosure>summary{display:flex;justify-content:space-between;gap:24px;padding:22px 0;border-top:1px solid #bbc8b5;border-bottom:1px solid #bbc8b5;list-style:none;cursor:pointer;font-size:var(--title-sub);font-weight:500}
.stem-reference-disclosure>summary::-webkit-details-marker{display:none}
.stem-reference-disclosure[open]>summary{margin-bottom:32px}
.stem-reference-disclosure[open]>summary span{transform:rotate(45deg)}
body.site-fluid .stem-related .product-tile:nth-child(n+4){display:none}
body.site-fluid .product-overview .evidence-note{padding:28px}
body.site-fluid .product-overview .evidence-note li{padding-block:14px}
body.site-fluid .product-questions .evidence-heading h2{margin-bottom:18px}
body.site-fluid .product-questions .answer-list summary{padding-block:20px}
body.site-fluid .stem-products-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 24px}
body.site-fluid .stem-card-body{padding:22px}
body.site-fluid .stem-card-body h3{font-size:clamp(25px,1.7vw,32px)}
body.site-fluid .stem-card-action{font-size:var(--text-small);margin-bottom:20px}
body.site-fluid .stem-card-links .text-link{font-size:var(--text-small)}
@media(min-width:1680px){body.site-fluid :is(.product-grid,.stem-products-grid){grid-template-columns:repeat(4,minmax(0,1fr))}body.site-fluid .stem-related .product-tile:nth-child(n+4){display:flex}}
@media(max-width:1099px){body.site-fluid :is(.product-grid,.stem-products-grid){grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-summary-grid{grid-template-columns:1fr .6fr;gap:30px}body.site-fluid .stem-related .product-tile:nth-child(n+3){display:none}}
@media(max-width:679px){body.site-fluid :is(.product-grid,.stem-products-grid){grid-template-columns:minmax(0,1fr)}.product-tools{grid-template-columns:1fr;gap:16px}.catalog-summary-grid{grid-template-columns:1fr}.catalog-summary-media{max-height:230px}.product-tile-body{padding:20px}.product-range-summary>span{display:none}body.site-fluid:is(.page-product,.page-stem-product,.page-stem) main>.section{padding-block:36px}}
@media(max-width:679px){body.site-fluid .product-grid.product-example-grid{grid-template-columns:minmax(0,1fr)}}
