.napalmi-product-media { display: grid; gap: 2rem; margin: 2rem 0; min-width: 0; }
.npm-video { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.35fr); gap: clamp(1rem,3vw,2rem); align-items: start; color: #302b26; }
.npm-video__text, .npm-video__player { min-width: 0; overflow-wrap: anywhere; }
.npm-video h2 { margin: 0 0 .75rem; font-size: 1.5rem; text-transform: none; }
.npm-video p { font-size: 1rem; line-height: 1.6; }
.npm-video__stage { display: grid; position: relative; width: 100%; min-height: 200px; aspect-ratio: 16 / 9; border-radius: .5rem; background: #292521; overflow: hidden; }
.npm-video__stage img, .npm-video__stage iframe, .npm-video__placeholder { grid-area: 1 / 1; width: 100%; height: 100%; min-height: 200px; border: 0; object-fit: contain; }
.npm-video__placeholder { display: grid; place-content: center; color: #fff; font-size: 3rem; }
.npm-video--portrait .npm-video__player { max-width: 320px; justify-self: center; width: 100%; }
.npm-video--portrait .npm-video__stage { aspect-ratio: 9 / 16; }
.npm-video__privacy, .npm-video__status { margin: .6rem 0; font-size: .9rem !important; }
.npm-video__load, .npm-video__stop { min-height: 44px; border: 1px solid #923c10; border-radius: .3rem; padding: .7rem 1rem; background: #923c10; color: #fff; cursor: pointer; white-space: normal; }
.npm-video__load:disabled { opacity: .7; cursor: progress; }
.npm-video a { color: #7b320c; text-decoration: underline; }
.npm-video button:focus-visible, .npm-video a:focus-visible { outline: 3px solid #302b26; outline-offset: 3px; }
.npm-video [hidden] { display: none !important; }
@media (max-width: 767px) { .npm-video { grid-template-columns: minmax(0,1fr); } .npm-video h2 { font-size: 1.3rem; } }
