/* ────────────────────────────────
   VIDEO SINGLE PAGE
   Matches: single-taxcog_video.php
──────────────────────────────── */

/* Video container */
.video-container{max-width:1216px;margin:0 auto;padding:0 10px}
.video-wrapper{position:relative}

/* ── VAST PRE-ROLL OVERLAY ── */
.vast-preroll{
  position:absolute;inset:0;background:#000;z-index:20;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
}
.vast-preroll.hidden{display:none}
.vast-preroll-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.9}
.vast-ui{position:relative;z-index:2;width:100%;padding:10px 14px;display:flex;align-items:flex-end;justify-content:flex-end;position:absolute;bottom:0;left:0;right:0}
.vast-ad-badge{
  background:rgba(0,0,0,.7);color:#fff;font-size:11px;font-weight:700;
  padding:3px 8px;text-transform:uppercase;letter-spacing:.06em;margin-right:auto;
}
.vast-skip-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.vast-countdown-txt{
  background:rgba(0,0,0,.7);color:#fff;font-size:12px;
  padding:4px 10px;font-weight:700;
}
.vast-skip-btn{
  display:none;background:rgba(30,30,30,.9);color:#fff;
  border:1px solid rgba(255,255,255,.5);font-size:12px;font-weight:700;
  padding:6px 14px;cursor:pointer;letter-spacing:.04em;text-transform:uppercase;
  transition:.15s;
}
.vast-skip-btn:hover{background:var(--accent,#c00);border-color:var(--accent,#c00)}
.vast-skip-btn.show{display:block}
.vast-click-link{position:absolute;inset:0;z-index:1;cursor:pointer}

/* ── HTML5 VIDEO PLAYER ── */
.nyp-brightcove-wrapper{margin:0}
.nyp-brightcove-player{position:relative;background:#000;line-height:0}
.nyp-brightcove-player video{
  width:100%;max-height:520px;display:block;
  /* Block fullscreen */
  -webkit-user-select:none;
}
/* Prevent fullscreen button on webkit */
.nyp-brightcove-player video::-webkit-media-controls-fullscreen-button{display:none!important}

/* Ad slots around video */
.video-ad-top,.video-ad-below-title,.video-ad-bottom{
  text-align:center;padding:8px 0;
  background:var(--body-bg,#fff);
}
.tc-ad-slot{
  display:inline-flex;align-items:center;justify-content:center;
  background:#f8f8f8;border:1px dashed #ccc;
  font-size:11px;color:#aaa;font-weight:600;letter-spacing:.05em;text-transform:uppercase;
  position:relative;
}
.tc-ad-slot::before{content:attr(data-label);white-space:nowrap}
.tc-ad-728{width:728px;max-width:100%;height:90px}
.tc-ad-300{width:300px;height:250px}
.tc-ad-320{width:100%;max-width:340px;height:50px;display:block}
.ad-label-txt{font-size:9px;color:#bbb;text-align:center;margin-bottom:2px;letter-spacing:.06em;text-transform:uppercase;display:block}

/* ── VIDEO HEADER (title + meta + body) ── */
.video-header{max-width:1216px;margin:0 auto;padding:0 10px}
.video-header-inner{}
.video-title-wrapper{padding:10px 0 6px;border-bottom:1px solid var(--border,#e0e0e0)}
h1.video__title{font-size:22px;font-weight:900;line-height:1.25;color:var(--body-text,#000);margin-bottom:4px}
.video-date{font-size:14px;color:#888}

.video-date p{font-size:14px;color:var(--body-text,#000);line-height:1.65;margin-bottom:10px}
.video-date p:first-of-type{margin-top:12px}

/* ── FOCUS ITEMS (related articles) ── */
#focus-list{margin-top:16px;border-top:3px solid var(--sec-bg,#000);padding-top:10px}
.focus-items{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;
}
#focus-list > div > a{display:block;overflow:hidden}
#focus-list > div > a img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}
#focus-list > div > a:hover img{transform:scale(1.04)}
#focus-list > div h3{font-size:15px;font-weight:700;line-height:1.35;margin:7px 0 5px;color:var(--body-text,#000)}
#focus-list > div h3 a{color:inherit}
#focus-list > div h3 a:hover{color:var(--accent,#c00)}
#focus-list > div p{font-size:14px;color:#555;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
#focus-list .focus-items > div{border:1px solid var(--border,#e0e0e0);padding:0 0 10px}
#focus-list .focus-items > div > a{display:block}
#focus-list .focus-items > div h3,
#focus-list .focus-items > div p{padding:0 8px}

/* ── RELATED VIDEOS — 2 columns ── */
.related-videos-section{
  max-width:1216px;margin:24px auto 0;padding:0 10px;
}
.video-grid--2col{
  grid-template-columns:repeat(2,1fr);
  gap:16px 12px;
}
@media(max-width:600px){
  .video-grid--2col{grid-template-columns:1fr 1fr;gap:10px 8px}
}

/* ── RESPONSIVE VIDEO ── */
@media(max-width:768px){
  .nyp-brightcove-player video{max-height:none}
  h1.video__title{font-size:17px}
  .focus-items{grid-template-columns:1fr 1fr}
  .tc-ad-728{width:100%;height:60px}
  .video-slide{flex:0 0 150px;min-width:150px}
}
@media(max-width:480px){
  .focus-items{grid-template-columns:1fr}
  h1.video__title{font-size:15px}
}

/* ── VIDEO PAGE WRAPPER ── */
.video-page-wrapper{max-width:1216px;margin:0 auto;padding:0 10px 32px}

/* Title + meta */
.video-title-wrapper{padding:12px 0 8px;border-bottom:1px solid var(--border,#e0e0e0);margin-bottom:12px}
h1.video__title{font-size:22px;font-weight:900;line-height:1.25;color:var(--body-text,#000);margin:0 0 6px}
.video-meta{display:flex;gap:12px;font-size:12px;color:#888;flex-wrap:wrap}
.video-meta span::before{content:'·';margin-right:6px;color:#ccc}
.video-meta span:first-child::before{display:none}

/* Description */
.video-description{
  margin:16px 0;
  font-size:15px;line-height:1.7;color:var(--body-text,#111);
  border-top:1px solid var(--border,#e0e0e0);
  padding-top:14px;
}
.video-description p{margin:0 0 1em}

/* Focus items */
#focus-list{margin-top:24px;border-top:3px solid var(--sec-bg,#000);padding-top:10px}
.focus-items{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.focus-item{overflow:hidden}
.focus-item a{display:block}
.focus-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .3s}
.focus-item:hover img{transform:scale(1.04)}
.focus-item h3{font-size:14px;font-weight:700;line-height:1.35;margin:7px 0 4px;color:var(--body-text)}
.focus-item h3 a{color:inherit}
.focus-item h3 a:hover{color:var(--accent)}
.focus-item p{font-size:14px;color:#666;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

@media(max-width:768px){
  h1.video__title{font-size:17px}
  .focus-items{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .focus-items{grid-template-columns:1fr}
  h1.video__title{font-size:15px}
}
