.production-photo.factory-photo{min-height:580px}
.factory-photo img{object-position:center 46%}
.factory-photo::after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#191b1b9c);pointer-events:none}
.factory-photo figcaption{top:20px;bottom:auto;left:20px;z-index:1;font-size:13px;line-height:1.4;background:#191b1be6;padding:9px 12px}
.factory-play{position:absolute;bottom:20px;left:20px;right:20px;z-index:1;display:flex;align-items:center;gap:18px;border:1px solid #fff5;background:#191b1bf2;color:#fff;padding:18px;text-align:left;font:inherit;min-height:88px}
.factory-play:hover{background:#30322d}
.factory-play:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.factory-play-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--ink);font-size:17px;padding-left:3px}
.factory-play b{display:block;font-size:18px;line-height:1.35;font-weight:500}
.factory-play small{display:block;font-size:13px;line-height:1.5;color:#d2d6cb;margin-top:5px}
.factory-play-arrow{font-size:26px;margin-left:auto}
.factory-details-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:55px 0 26px}
.factory-details-heading h3{font-size:30px;line-height:1.2;letter-spacing:-.035em}
.factory-details-heading p{font-size:14px;max-width:320px}
.factory-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.factory-details figure{min-width:0;border-bottom:1px solid var(--line);padding-bottom:20px}
.factory-details img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 44%;background:var(--silver)}
.factory-details figcaption{padding-top:20px}
.factory-details figcaption>span{font-size:11px;letter-spacing:.08em;color:var(--muted)}
.factory-details h4{font-size:23px;line-height:1.3;letter-spacing:-.025em;font-weight:500;margin:12px 0}
.factory-details figcaption p{font-size:15px;line-height:1.65}
dialog.production-dialog{width:calc(100% - 30px);max-width:480px;max-height:calc(100dvh - 32px);padding:20px;background:var(--dark);color:#fff}
.factory-dialog-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}
.production-dialog .factory-dialog-heading .eyebrow{font-size:9px;color:#c5cbbf;letter-spacing:.05em;margin:0 0 8px}
.production-dialog h2{font-size:28px;line-height:1.15;margin:0}
.close-production{width:44px;height:44px;flex:none;border:1px solid #6b7069;background:transparent;color:#fff;font-size:30px;line-height:1}
.close-production:hover{background:#30352e}
.close-production:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.production-dialog video{display:block;width:100%;height:auto;max-height:calc(100dvh - 270px);aspect-ratio:29/52;object-fit:contain;background:#0d0e0d}
.production-dialog>.factory-video-caption{font-size:13px;line-height:1.55;color:#d0d5c8;margin:14px 0 18px}
.production-dialog>.factory-video-status{font-size:14px;line-height:1.5;margin:14px 0}
.production-dialog .factory-video-fallback{font-size:14px;color:var(--accent);text-decoration:underline;text-underline-offset:4px;margin-bottom:18px}
.production-dialog .factory-video-fallback:not([hidden]){display:block}
.production-dialog>.button{background:var(--accent);color:var(--ink);margin-bottom:0;font-size:16px}
@media(max-width:1000px){.factory-play{gap:12px;padding:15px}.factory-play b{font-size:16px}.factory-play small{font-size:12px}.factory-play-arrow{display:none}.factory-details{gap:20px}.factory-details h4{font-size:21px}.factory-details-heading h3{font-size:26px}}
@media(max-width:760px){.production-photo.factory-photo{min-height:440px}.factory-photo figcaption{top:16px;left:16px;font-size:12px}.factory-play{left:16px;right:16px;bottom:16px;min-height:88px;padding:14px;gap:12px}.factory-play-icon{width:42px;height:42px;font-size:15px}.factory-play b{font-size:16px}.factory-play small{font-size:12px}.factory-details-heading{flex-direction:column;align-items:start;gap:14px;margin-top:38px}.factory-details-heading h3{font-size:28px}.factory-details{grid-template-columns:1fr;gap:28px}.factory-details h4{font-size:24px}.factory-details figcaption p{font-size:16px}.production-dialog{padding:18px}.production-dialog h2{font-size:25px}.production-dialog .factory-dialog-heading .eyebrow{font-size:8px}.production-dialog video{max-height:calc(100dvh - 285px)}}
