.product-interest-form {text-align:left!important;display:grid!important;grid-template-columns:1fr 1fr;gap:14px;font-size:15px!important}
.product-interest-form label {display:flex;flex-direction:column;gap:6px;font-weight:600}
.product-interest-form input,.product-interest-form select,.product-interest-form textarea {box-sizing:border-box;width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;background:#fff;color:#172033}
.product-interest-form p,.product-interest-form .wide {grid-column:1/-1;margin:0}
@media(max-width:540px){.product-interest-form{grid-template-columns:1fr}}

body.product-video-open { overflow: hidden; }
.product-video-dialog {
  box-sizing: border-box;
  width: min(860px, calc(100vw - 28px));
  max-height: calc(100dvh - 32px);
  padding: 20px;
  border: 1px solid #b88b3766;
  border-radius: 18px;
  background: #091d24;
  color: #fff;
  box-shadow: 0 24px 80px #0008;
  overflow: auto;
}
.product-video-dialog::backdrop { background: #020c12d9; }
.product-video-dialog h2 { margin: 0 0 16px; font-size: clamp(18px, 3vw, 26px); color: #fff; }
.product-video-dialog video { display: block; width: 100%; max-height: 65dvh; background: #000; border-radius: 10px; object-fit: contain; }
.product-video-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.product-video-actions a, .product-video-actions button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; padding: 12px 22px; border: 1px solid #b88b37;
  border-radius: 8px; font: inherit; font-weight: 600;
  text-decoration: none; cursor: pointer;
}
.product-video-actions a { background: #b88b37; color: #091d24; }
.product-video-actions button { background: transparent; color: #fff; }
.product-video-actions :focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
@media (max-width: 540px) {
  .product-video-dialog { padding: 14px; }
  .product-video-actions > * { flex: 1 1 auto; }
}

/* Catalogue playback stays inside each card and never locks page scrolling. */
.product-inline-media { position: relative; width: 100%; margin-bottom: 18px; border-radius: 12px; overflow: hidden; background: #07171d; }
.product-inline-media video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: #07171d; }
.product-inline-caption { display: block; padding: 8px 12px; color: #c7dbdf; font-size: 11px; line-height: 1.5; }
.product-inline-media > a { display: block; padding: 10px 12px; color: #8be2d8; }
.product-inline-media video:focus-visible { outline: 3px solid #24bcb4; outline-offset: -3px; }

.product-inline-media .product-inline-actions { display: flex; gap: 8px; margin: 0; padding: 0 12px 12px; }
.product-inline-media .product-inline-actions > * { flex: 1 1 120px; min-height: 44px; padding: 10px 12px; font-size: 13px; text-align: center; justify-content: center; }

/* Product detail pages: non-modal corner player leaves the document scrollable. */
.product-video-float {
  position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(78px, env(safe-area-inset-bottom));
  z-index: 1200; box-sizing: border-box; width: min(360px, calc(100vw - 24px));
  max-height: calc(100dvh - 110px); overflow: auto; padding: 14px;
  border: 1px solid #52716b; border-radius: 16px; background: #091d24; color: #fff;
  box-shadow: 0 16px 48px #0006;
}
.product-video-float[hidden] { display: none; }
.product-video-float h2 { margin: 0 30px 12px 0; font-size: 16px; line-height: 1.4; color: #fff; }
.product-video-float video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: contain; background: #000; border-radius: 8px; }
.product-video-float .product-video-actions { margin-top: 12px; gap: 8px; }
.product-video-float .product-video-actions > * { flex: 1; padding: 10px; min-height: 44px; font-size: 12px; }
.product-video-close { position: absolute; right: 6px; top: 5px; width: 36px; height: 36px; border: 0; background: transparent; color: #fff; font-size: 26px; cursor: pointer; }
.product-video-close:focus-visible { outline: 2px solid #c6f36b; }
@media (max-width: 540px) { .product-video-float { width: min(300px, calc(100vw - 24px)); right: 12px; bottom: 72px; padding: 12px; } }
