/* Shared portrait video rail used by product, journal and recovery pages. */
.sponsor-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.sponsor-section-heading h3{font-size:var(--type-product-name);margin:0}
.sponsor-section-heading p{font-size:13px;margin:6px 0 0}
.sponsor-label,.sponsor-video-caption>span{font-size:var(--type-caption);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.sponsor-video-section{padding:22px;border:1px solid #422233;border-radius:22px;background:radial-gradient(ellipse at 0 0,#64223826,transparent 65%),#111219}
.sponsor-carousel-shell{position:relative;min-width:0}
.sponsor-carousel-actions{position:absolute;z-index:2;inset-inline:10px;top:var(--sponsor-arrow-y,40%);display:flex;justify-content:space-between;pointer-events:none;transform:translateY(-50%);opacity:0;visibility:hidden;transition:opacity 160ms ease}
@media(hover:hover) and (pointer:fine){.sponsor-carousel-shell:hover .sponsor-carousel-actions{opacity:1;visibility:visible}}
.sponsor-video-track{position:relative;display:flex;gap:16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;overflow-anchor:none;padding-block:4px;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y}
.sponsor-video-track::-webkit-scrollbar{display:none}
.sponsor-video-track.is-normalizing,.sponsor-video-track.is-animating,.sponsor-video-track.is-dragging{scroll-snap-type:none;scroll-behavior:auto}
.sponsor-video-track.is-dragging{cursor:grabbing;user-select:none}
.sponsor-video-track.is-static{justify-content:center}
.sponsor-video-card{flex:0 0 calc((100% - 64px)/5);min-width:0;scroll-snap-align:center}
.sponsor-video-surface{border:1px solid rgba(255,79,121,var(--card-border,.2));border-radius:17px;background:#15131b;overflow:hidden;transform:scale(var(--card-scale,1));opacity:var(--card-opacity,1);transform-origin:center;box-shadow:0 10px 24px #0003;transition:transform 100ms linear,opacity 100ms linear,border-color 180ms ease}
.sponsor-video-track.is-normalizing .sponsor-video-surface{transition:none}
.sponsor-video-card[hidden]{display:none}
.sponsor-video-track>.sponsor-empty{width:100%;padding:24px;border:1px solid var(--border);border-radius:16px;background:#15131b}
.sponsor-video-frame{aspect-ratio:9/16;position:relative;background:#0a090d}
.sponsor-video-frame video{display:block;width:100%;height:100%;object-fit:contain}
.sponsor-video-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;background:radial-gradient(ellipse at 50% 25%,#30202e,#15131b 70%);pointer-events:none}
.sponsor-video-state span{font-size:16px;font-weight:600;color:#e6d9e3}
.sponsor-video-state p{font-size:13px;margin:8px 0 0}
.sponsor-video-card.is-ready .sponsor-video-state{display:none}
.sponsor-video-caption{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;gap:8px;min-height:76px;padding:12px 14px}
.sponsor-visit{font-size:var(--type-small);white-space:nowrap;border:0;background:none;padding:0;color:#f294b7}
.sponsor-video-controls{display:flex;justify-content:space-between;gap:12px;padding:10px 16px}
.sponsor-video-controls button{background:none;border:0;color:white;font-size:var(--type-ui);min-height:32px;padding:4px 0}
.sponsor-video-controls button:disabled{cursor:default;opacity:.35}
.sponsor-video-progress{appearance:none;display:block;width:100%;height:2px;border:0;background:#342734;color:#f52468}
.sponsor-video-progress::-webkit-progress-bar{background:#342734}
.sponsor-video-progress::-webkit-progress-value{background:#f52468}
.sponsor-video-progress::-moz-progress-bar{background:#f52468}
.sponsor-visit[hidden]{display:none}
.sponsor-empty{font-size:14px;text-align:center}
@media (max-width:1080px){.sponsor-video-card{flex-basis:calc((100% - 32px)/3)}}
@media (max-width:767px){
  .sponsor-video-section{padding:18px}
  .sponsor-video-track{gap:12px;cursor:auto}
  .sponsor-video-card{flex-basis:86%;scroll-snap-align:start}
  .sponsor-video-surface{transform-origin:left center}
  .sponsor-carousel-actions{display:none}
}
.sponsor-carousel-shell:has(:focus-visible) .sponsor-carousel-actions{opacity:1;visibility:visible}
@media(max-width:700px){
  .sponsor-section-heading h3{font-size:var(--type-product-name)}
  .sponsor-section-heading{gap:12px}
  .sponsor-video-caption{align-items:flex-start;flex-direction:column;justify-content:center}
}
@media(prefers-reduced-motion:reduce){
  .sponsor-video-surface{transform:none;opacity:1;transition:none}
  .sponsor-carousel-actions button{transition:none}
}
