/* Scoped product presentation; original homepage and real factory videos are unchanged. */
.product-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.product-showcase-card{min-width:0;border:1px solid #e1e6dd;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 28px rgba(24,43,29,.04)}
.product-visual{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--preview-bg,#f3eee5);cursor:pointer;isolation:isolate;touch-action:pan-y}
.product-visual>img{display:block;width:100%;height:100%;object-fit:cover;transition:opacity .35s}
.product-visual.preview-active>img{opacity:0}
.pouch-preview-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
.preview-category{position:absolute;top:15px;left:15px;z-index:2;font-size:.62rem;font-weight:700;letter-spacing:.09em;background:rgba(255,255,255,.86);padding:6px 9px;border-radius:20px;color:#284737}
.preview-trigger,.preview-close{position:absolute;z-index:3;bottom:17px;right:15px;border:1px solid rgba(17,57,38,.2);border-radius:30px;background:rgba(255,255,255,.95);color:#153f2e;font:inherit;font-size:.75rem;padding:9px 14px;cursor:pointer;box-shadow:0 3px 10px rgba(0,0,0,.06)}
.preview-trigger:hover{background:#c9f344}.preview-trigger:focus-visible,.preview-close:focus-visible{outline:3px solid #557e22;outline-offset:3px}
.preview-close{display:none;bottom:auto;top:12px;right:12px;font-size:1.25rem;padding:2px 12px}
.preview-active .preview-close{display:block}
.preview-hint{position:absolute;z-index:2;left:14px;bottom:15px;max-width:53%;font-size:.62rem;line-height:1.4;color:#214533;background:rgba(255,255,255,.83);padding:5px 7px;border-radius:5px;opacity:0;transition:opacity .2s}
.product-visual:hover .preview-hint,.preview-active .preview-hint{opacity:1}
.preview-loading .preview-trigger:before{content:'';display:inline-block;width:9px;height:9px;border:2px solid #9cae8c;border-top-color:#12432e;border-radius:50%;animation:preview-spin .7s linear infinite;margin-right:6px}
@keyframes preview-spin{to{transform:rotate(360deg)}}
.product-showcase-copy{padding:24px}
.product-kind{font-size:.64rem;letter-spacing:.04em;color:#547446;margin:0 0 8px}
.product-showcase-copy h2{font-size:1.28rem;line-height:1.3;margin:0 0 12px}
.product-showcase-copy h2 a{color:#162f22}
.product-summary{font-size:.88rem;line-height:1.65;color:#627267;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:4.9em}
.product-showcase-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;flex-wrap:wrap}
.product-showcase-actions .btn{font-size:.78rem;padding:10px 15px}
.product-quote-link{font-size:.78rem;color:#1c5e3d;text-decoration:underline;text-underline-offset:4px}
.collection-note{font-size:.78rem;color:#607264;margin:-10px 0 26px}
@media(min-width:1440px){.product-showcase-grid{gap:30px}}
@media(max-width:1000px){.product-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.product-showcase-copy{padding:20px}}
@media(max-width:580px){.product-showcase-grid{grid-template-columns:1fr}.product-showcase-copy{padding:23px}.product-summary{min-height:0}.product-visual{aspect-ratio:4/3}.preview-hint{opacity:1}}
@media(prefers-reduced-motion:reduce){.product-visual>img,.preview-hint{transition:none}.preview-loading .preview-trigger:before{animation:none}}
/* Interactive inspection: rigid closed body, underside label and enlarged viewer. */
.product-visual.preview-active{touch-action:none;cursor:grab}
.product-visual.preview-active:active,.viewer-stage:active{cursor:grabbing}
.preview-active>.preview-trigger{display:none}
.preview-hint{pointer-events:none}
.preview-active .preview-hint{top:44px;bottom:auto;max-width:76%;font-size:.61rem}
.preview-tools{position:absolute;bottom:10px;left:8px;right:8px;z-index:4;display:none;justify-content:center;gap:4px;flex-wrap:wrap}
.preview-active .preview-tools{display:flex}
.preview-tools button{border:1px solid #bfcfbd;border-radius:18px;background:rgba(255,255,255,.95);padding:7px 10px;color:#1d4a31;font:inherit;font-size:.68rem;cursor:pointer}
.preview-tools button[aria-pressed=true]{background:#c5ec46;border-color:#70932f}
.product-viewer-dialog{padding:0;border:1px solid #d5ded1;border-radius:20px;width:min(1190px,calc(100vw - 36px));max-width:1190px;max-height:94dvh;background:#fffdf7;color:#183d2c;box-shadow:0 24px 100px #0006}
.product-viewer-dialog::backdrop{background:rgba(9,22,16,.75);backdrop-filter:blur(5px)}
.viewer-header{display:flex;gap:20px;align-items:center;justify-content:space-between;padding:18px 24px;background:#fffdf7;border-bottom:1px solid #dde5d7}
.viewer-header h2{font-size:1.4rem;line-height:1.3;margin:0}
.viewer-exit{border:1px solid #bfcfbd;background:#fff;border-radius:50%;width:38px;height:38px;font-size:26px;cursor:pointer;flex-shrink:0}
.viewer-body{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr)}
.viewer-stage{position:relative;min-width:0;height:min(68vh,700px);background:radial-gradient(ellipse at 50% 40%,#fff,var(--preview-bg,#edf2e7));touch-action:none;cursor:grab;overflow:hidden}
.viewer-information{padding:24px;max-height:75vh;overflow-y:auto;border-left:1px solid #dfe7d8}
.viewer-disclaimer{font-size:.75rem;line-height:1.5;color:#62765c;margin-top:0}
.viewer-info-section{border-top:1px solid #dde6d6;padding-top:12px;margin-bottom:18px}
.viewer-info-section h3{font-size:1rem;margin:0 0 8px}
.viewer-info-section p{font-size:.85rem;white-space:pre-line;line-height:1.85;margin:0}
.viewer-toolbar{display:flex;gap:7px;flex-wrap:wrap;margin-top:20px}
.viewer-button{border:1px solid #c4d2bb;background:#fff;border-radius:7px;padding:8px 11px;font:inherit;font-size:.78rem;cursor:pointer;color:#1b4b30}
.viewer-button[aria-pressed=true]{background:#c9ef55}
.viewer-button:focus-visible,.preview-tools button:focus-visible{outline:3px solid #527c2f;outline-offset:2px}
.viewer-instruction{font-size:.75rem;color:#5a7152;line-height:1.65}
@media(max-width:760px){.product-viewer-dialog{width:calc(100vw - 16px);max-height:96dvh;border-radius:14px}.viewer-body{display:block}.viewer-stage{height:44vh;min-height:280px}.viewer-information{max-height:none;border-left:0;padding:18px}.viewer-header{padding:14px 16px}.viewer-header h2{font-size:1.1rem}}

.viewer-commandbar{position:sticky;top:0;z-index:8;background:#fffdf7}.viewer-controls{padding:0 20px 14px;border-bottom:1px solid #dde5d7}.viewer-controls .viewer-toolbar{margin-top:0}.viewer-header{border-bottom:0}.viewer-stage{height:min(62vh,640px)}
@media(max-width:760px){.viewer-controls{padding:0 12px 10px}.viewer-controls .viewer-toolbar{gap:5px}.viewer-controls .viewer-button{padding:7px 9px;font-size:.7rem}.viewer-stage{height:38vh;min-height:270px}}

.preview-active>.preview-trigger{display:block}.preview-active .preview-tools{bottom:60px}
