/* Product views keep their source proportions; catalogue renders are labelled separately from physical footage. */
body.site-fluid{--stem-media-surface:#e9e6de}
body.site-fluid .stem-products-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(38px,4vw,90px) var(--layout-gap);align-items:stretch}
.stem-product-card{min-width:0;overflow:hidden;background:#f8f6ef;border:1px solid #d2d2c6;border-radius:16px;display:flex;flex-direction:column}
.stem-product-card[hidden]{display:none}
.stem-card-photo{display:block;position:relative;background:var(--stem-media-surface);aspect-ratio:1;overflow:hidden;isolation:isolate;border-radius:14px 14px 0 0;border-bottom:1px solid #d8d6cb}
.stem-card-photo>img{display:block;width:100%;height:100%;object-fit:contain}
.stem-product-image--catalogue{mix-blend-mode:multiply}
.stem-card-meta{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px 22px;margin-bottom:20px}
.stem-card-meta .micro{margin:0;color:#735a30;font-size:var(--text-small);line-height:1.5;letter-spacing:.035em}
.stem-photo-label{position:static;color:#53634e;font-size:var(--text-small);line-height:1.5;letter-spacing:.025em}
.stem-card-body{padding:clamp(24px,2.2vw,50px);display:flex;flex-direction:column;flex:1}
.stem-card-body>.micro{color:#735a30;margin-bottom:15px}
body.site-fluid .stem-card-body h3{font-size:var(--title-card);font-weight:500;line-height:1.25;letter-spacing:-.02em;margin:0 0 20px}
.stem-card-action{font-size:var(--text-body);color:#455c4c;line-height:1.65;margin:0 0 30px}
.stem-card-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px 24px;margin-top:auto;border-top:1px solid #d4dbcc;padding-top:24px}
.stem-card-links .text-link{align-items:center;gap:12px}
body.site-fluid.page-stem .stem-collection-stage{width:100%;aspect-ratio:1.42;background:var(--stem-media-surface);isolation:isolate;overflow:hidden;border-radius:14px;border:1px solid #d2d2c6}
body.site-fluid.page-stem .stem-collection-stage>img{display:block;width:100%;height:100%;object-fit:contain}
body.site-fluid.page-stem .inner-hero-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.stem-collection-heading{margin-bottom:40px}
.stem-detail-hero{padding:32px 0 clamp(60px,5vw,130px);background:#f3f2e9;color:#192e24}
.stem-detail-hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--layout-gap);align-items:center;padding-top:35px}
.stem-detail-copy{min-width:0}
body.site-fluid .stem-detail-copy h1{font-size:clamp(42px,4.2vw,116px);font-weight:400;line-height:1.08;letter-spacing:-.045em;margin:28px 0;max-width:17ch}
.stem-detail-action{font-size:var(--title-card);line-height:1.4;color:#805e28;margin-bottom:24px}
.stem-detail-lead{font-size:var(--text-body);line-height:1.8;color:#455c4c;max-width:43ch}
.stem-detail-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px;margin-top:34px}
.stem-detail-photo{margin:0;min-width:0}
.stem-detail-stage{width:100%;aspect-ratio:1;max-height:72svh;background:var(--stem-media-surface);border:1px solid #d2d2c6;isolation:isolate;overflow:hidden;border-radius:14px}
.stem-detail-stage>img{width:100%;height:100%;object-fit:contain;display:block}
.stem-detail-photo figcaption{margin-top:18px;color:#53664b}
.stem-layout-figure{margin:0;min-width:0}
.stem-layout-image{display:block;aspect-ratio:16/10;background:var(--stem-media-surface);border:1px solid #d2d2c6;border-radius:16px;overflow:hidden;isolation:isolate}
.stem-layout-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom;mix-blend-mode:multiply}
.stem-layout-figure figcaption{margin-top:18px;font-size:var(--text-small);line-height:1.7;color:#53664b}
.stem-layout-notes{margin-top:42px}
.stem-layout-products{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:38px}
.stem-layout-products>a{display:inline-flex;align-items:center;gap:12px;font-size:var(--text-small);line-height:1.6;border-bottom:1px solid #9cab8d;padding-bottom:5px}
body.site-fluid .stem-operation-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:var(--layout-gap);align-items:start}
.stem-operation-video{margin:0;min-width:0}
.stem-video-stage{aspect-ratio:16/9;background:#1b2e24;border-radius:14px;overflow:hidden;display:grid;place-items:center}
.stem-video-stage>video{display:block;width:100%;height:100%;max-height:75svh;object-fit:contain}
.stem-video-stage--portrait{aspect-ratio:4/3}
.stem-operation-video figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 25px;color:#455c4c;margin-top:18px}
.stem-operation-video figcaption a{border-bottom:1px solid #7c8c70}
.stem-operation-steps{list-style:none;padding:0;margin:0}
.stem-operation-steps li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;border-top:1px solid #bac6b0;padding:25px 0}
.stem-step-number{font-size:var(--text-small);color:#70582e;line-height:1.7}
.stem-operation-steps h3{font-size:var(--title-sub);font-weight:500;line-height:1.35;margin:0 0 15px}
.stem-operation-steps p{font-size:var(--text-body);line-height:1.75;color:#455c4c}
.stem-operation .section-note{margin-top:30px;color:#53664b;max-width:80ch}
.stem-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--layout-gap)}
.stem-feature-grid article{border-top:1px solid #b9c5ae;padding-top:24px;min-width:0}
.stem-feature-grid h3{font-size:var(--title-card);font-weight:400;line-height:1.3;margin:24px 0 20px}
.stem-feature-grid p{font-size:var(--text-body);line-height:1.8;color:#455c4c}
.stem-reference-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--layout-gap);align-items:center}
.stem-design-figure{margin:0;min-width:0}
.stem-design-viewport{position:relative;aspect-ratio:1.34;background:#e8e8e8;border-radius:14px;overflow:hidden}
.stem-design-viewport>img{position:absolute;left:0;top:-17%;width:125%;height:auto;max-width:none}
.stem-design-figure figcaption{margin-top:18px;color:#52634d}
.stem-reference-copy{min-width:0}.stem-reference-copy h2{margin:25px 0 32px}
.stem-facts{margin:0}.stem-facts>div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:25px;border-top:1px solid #b8c5ad;padding:22px 0;font-size:var(--text-body);line-height:1.7}
.stem-facts dt{font-weight:500}.stem-facts dd{margin:0;color:#455c4c}
.stem-design-note{border-top:1px solid #b8c5ad;padding-top:22px;color:#455c4c;font-size:var(--text-small);line-height:1.8}
.stem-design-note summary{cursor:pointer;display:flex;gap:22px;justify-content:space-between;list-style:none;font-weight:500}
.stem-design-note p{padding-top:20px}.stem-design-note summary::-webkit-details-marker{display:none}
body.site-fluid .stem-related .stem-card-photo{aspect-ratio:1;max-height:none}
@media(min-width:1101px){body.site-fluid.page-stem-product .stem-detail-hero{min-height:calc(100svh - var(--site-header-space));display:flex;align-items:center}}
@media(max-width:1100px){body.site-fluid .stem-operation-grid,.stem-reference-grid{grid-template-columns:minmax(0,1fr)}.stem-design-figure{max-width:900px;width:100%}.stem-operation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.stem-operation-steps li{grid-template-columns:minmax(0,1fr);gap:10px}.stem-detail-hero-grid{align-items:start}}
@media(max-width:850px){body.site-fluid.page-stem .inner-hero-grid,.stem-detail-hero-grid{grid-template-columns:minmax(0,1fr)}.stem-detail-stage{max-height:none}.stem-detail-hero{padding-bottom:50px}.stem-detail-hero-grid{padding-top:15px}.stem-detail-copy h1{max-width:20ch}.stem-feature-grid{grid-template-columns:minmax(0,1fr);gap:32px}.stem-feature-grid h3{margin-top:16px}.stem-operation-steps{grid-template-columns:minmax(0,1fr);gap:0}.stem-operation-steps li{grid-template-columns:auto minmax(0,1fr);gap:20px}.stem-reference-grid{gap:35px}.stem-detail-actions{gap:18px}}
@media(max-width:700px){body.site-fluid .stem-products-grid{grid-template-columns:minmax(0,1fr);gap:32px}.stem-card-photo{aspect-ratio:1;max-height:none}.stem-photo-label{font-size:var(--text-small)}.stem-card-body{padding:24px}.stem-card-links{flex-direction:column;align-items:flex-start}.stem-facts>div{grid-template-columns:minmax(0,1fr);gap:8px}.stem-video-stage,.stem-video-stage--portrait{aspect-ratio:auto;min-height:0}.stem-video-stage>video{height:auto;max-height:78svh}.stem-operation-video figcaption{flex-direction:column;align-items:flex-start}.stem-detail-hero{padding-top:24px}body.site-fluid .stem-detail-copy h1{font-size:42px}.stem-detail-action{font-size:26px}}
.stem-card-photo:focus-visible{outline:3px solid #96763c;outline-offset:-3px}
@media(prefers-reduced-motion:no-preference){.stem-product-card{transition:border-color .22s}.stem-product-card:hover{border-color:#9ca88d}}
