/* Single Video Detail - scoped under .ab-video-single to avoid clashes */
.ab-video-single * { box-sizing: border-box; }
.ab-video-single { min-height: 100vh; position: relative; width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); margin-top:-104px}
.ab-video-single .background-upper { position:absolute; top:0; left:0; right:0; height:350px; background:#0b1a4a url('../img/bg.png') center center / cover no-repeat; z-index:1; }
.ab-video-single .background-lower { position:absolute; top:350px; left:0; right:0; bottom:0; background:#fff; z-index:1; }
.ab-video-single .content-wrapper { position:relative; z-index:10; max-width:1200px; margin:63px auto; padding:0 20px; }
.ab-video-single .breadcrumb { padding:20px 0; color:#fff; font-size:14px; display:flex; align-items:center; gap:8px }
.ab-video-single .breadcrumb a { color:#FF5500; text-decoration:none; font-weight:700 }
.ab-video-single .breadcrumb a:hover { text-decoration:underline; }
.ab-video-single .breadcrumb .sep { width:10px; height:10px; display:inline-block; background:url('../img/right-arrow.png') no-repeat center center / contain; opacity:1 }
.ab-video-single .breadcrumb span { margin:0 0px; opacity:.7; }
.ab-video-single .video-container { position:relative; margin:16px auto 40px; max-width:990px; background:#000; border-radius:12px; overflow:hidden; box-shadow:0 20px 40px rgba(0,0,0,.3); height:550px; }
.ab-video-single .video-wrapper { position:relative; width:100%; height:0; padding-bottom:56.25%; }
.ab-video-single .vm-player, .ab-video-single .embed-wrap { position:absolute; top:0; left:0; width:100%; height:100%; }
.ab-video-single .vm-player { background:#000; display:block; }
.ab-video-single .vm-player video { width:100%; height:100%; object-fit:cover; display:block; }
.ab-video-single .content-section { max-width:999px; margin:40px auto 60px; padding:0 5px; }
.ab-video-single .video-tag { display:inline-block; color:#FF5500; border-radius:20px; font-size:14px; font-weight:400; margin-bottom:16px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;}
.ab-video-single .video-title { font-size:28px; font-weight:700; color:#252525; margin-bottom:16px; line-height:1.3; font-family: "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;}
.ab-video-single .video-meta { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.ab-video-single .video-date { color:#464646; font-size:14px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;}
.ab-video-single .social-share { display:flex; gap:12px; align-items:center; }
.ab-video-single .share-btn { width:32px; height:32px; display:flex; align-items:center; justify-content:center; text-decoration:none; transition:transform .2s; background:transparent; padding:0; border:0; color:#FF5500}
.ab-video-single .social-share .share-btn.share-trigger{ display:none; }
.ab-video-single .share-btn:hover { transform:translateY(-2px); }
.ab-video-single .share-icon { width:20px; height:20px; display:block; filter: invert(45%) sepia(91%) saturate(2147%) hue-rotate(2deg) brightness(99%) contrast(102%); }
.ab-video-single .share-svg { width:20px; height:20px; display:block; fill:#FF5500; }

/* Copy toast */
.ab-video-single .toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%) translateY(20px);
  background: rgba(20,20,20,.95);
  color: #fff;
  padding: 10px 16px;
  border-radius: 6px;
  font-size: 14px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s ease;
  z-index: 9999;
}
.ab-video-single .toast.visible { opacity: 1; transform: translateX(-50%) translateY(0); }
@media (max-width:768px){
  .ab-video-single .background-upper{height:240px}
  .ab-video-single .background-lower{top:240px}
  .ab-video-single .content-wrapper{padding:0 16px; margin:16px auto}
  .ab-video-single .video-container{margin:0px auto 24px; height:auto}
  .ab-video-single .video-wrapper{padding-bottom:56.25%}
  .ab-video-single .vm-player video{object-fit:contain}
  .ab-video-single .content-section{margin:24px auto 40px; padding:0 5px}
  .ab-video-single .video-title{font-size:22px}
  .ab-video-single .video-meta{flex-direction:row; align-items:flex-end}
  .ab-video-single .breadcrumb{font-size:12px; padding:53px 0}

  /* Mobile compact share */
  .ab-video-single .social-share{position:relative}
  .ab-video-single .social-share .share-btn{display:none}
  .ab-video-single .social-share .share-btn.share-trigger{display:flex}
  .ab-video-single .social-share.open .share-btn{display:flex}
}
/* Make shortcode-based related listings full width on desktop */
.ab-video-single .ab-related-listings{ width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.ab-video-single .ab-related-listings .news-container{ max-width:100%; padding:0 20px; }
/* Give the video listing block a dark blue background */
.ab-video-single .ab-related-listings .si-video-listing{ background:#132254 !important; height:415px !important;}
/* Light background and fixed height for News and Photos sections */
.ab-video-single .ab-related-listings .si-news-listing{ background:#EBEBEB !important; height:415px !important; }
.ab-video-single .ab-related-listings .si-photo-listing{ background:#FFFFFF !important; height:415px !important; }
/* Title color logic: highlight the section matching the detail page */
.ab-video-single .ab-related-listings .si-video-listing .news-title{ color:#FFFFFF !important; }
.ab-video-single .ab-related-listings .si-news-listing .news-title,
.ab-video-single .ab-related-listings .si-photo-listing .news-title{ color:#252525 !important; }
/* Responsive adjustments for related listings on mobile */
@media (max-width: 767px){
  /* Make related listings edge-to-edge on mobile (no side gaps) */
  .ab-video-single .ab-related-listings{ width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
  .ab-video-single .ab-related-listings .news-container{ max-width:100%; padding:0; }
  .ab-video-single .ab-related-listings .si-video-listing,
  .ab-video-single .ab-related-listings .si-news-listing,
  .ab-video-single .ab-related-listings .si-photo-listing{ border-radius:0 !important; }
  .ab-video-single .ab-related-listings .si-video-listing,
  .ab-video-single .ab-related-listings .si-news-listing,
  .ab-video-single .ab-related-listings .si-photo-listing{ height:auto !important; padding-top: 10px !important;
    padding-bottom: 10px !important;}
}
/* Full-width helpers for album detail page (theme wrappers) */
body.single-album .site-content .ast-container,
body.single-album .ast-separate-container #primary,
body.single-album .ast-separate-container #primary .site-main,
body.single-album main.site-main {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
}

body.single-album .ast-separate-container .ast-article-single,
body.single-album .ast-article-post {
    padding: 0 !important;
}

/* Reduce top/bottom whitespace for Single Video on Astra */
body.single-ab_video .ast-separate-container #primary { margin: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
body.single-ab_video .site-content .ast-container { padding-top: 0 !important; padding-bottom: 0 !important; }
body.single-ab_video .ast-separate-container .ast-article-single,
body.single-ab_video .ast-article-post { padding-top: 0 !important; padding-bottom: 0 !important; }
body.single-ab_video .entry-content { margin-top: 0 !important; margin-bottom: 0 !important; }
body.single-ab_video main.site-main { padding-top: 0 !important; padding-bottom: 0 !important; }
body.single-ab_video .site-content { padding-top: 0 !important; padding-bottom: 0 !important; }

/* Match Astra rule that sets 4em margins on #primary at >= 993px */
@media (min-width: 993px) {
  body.single-ab_video .ast-separate-container #primary.content-area.primary,
  body.single-ab_video .ast-separate-container.ast-left-sidebar #primary.content-area.primary,
  body.single-ab_video .ast-separate-container.ast-right-sidebar #primary.content-area.primary {
    margin: 0 !important;
    margin-block: 0 !important;
  }
}

@media (min-width: 993px) {

    .ast-separate-container #primary,
    .ast-separate-container.ast-left-sidebar #primary,
    .ast-separate-container.ast-right-sidebar #primary {
        margin: 0 !important;
        padding: 0 !important;
    }
}
