/* 
.pt_feat_vid_details h1 {
    /* font-size: 20px; */
    /* max-height: 230px; */
    overflow: hidden;
    text-shadow: 2px 2px 3px rgb(0 0 0 / 15%);
}
*/
/* ===== Home hero redesign 2026-09-05: narrower featured + 3 latest stacked ===== */
.pt_hero_wrap{margin:0 auto 12px;}
.container-home.pt_hero_wrap{padding-top:30px;}
.pt_hero_grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:start;}
/* featured (left) */
.pt_hero_feat_thumb{display:block;position:relative;border-radius:12px;overflow:hidden;padding-bottom:56.25%;background:#000;}
.pt_hero_feat_thumb img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;}
.pt_hero_play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:66px;height:66px;border-radius:50%;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;transition:background .2s;}
.pt_hero_feat_thumb:hover .pt_hero_play{background:rgba(0,0,0,.75);}
.pt_hero_play svg{width:30px;height:30px;fill:#fff;margin-left:3px;}
.pt_hero_badge{position:absolute;top:12px;left:12px;background:var(--brand);color:#fff;font-size:12px;font-weight:600;padding:5px 10px;border-radius:6px;letter-spacing:.3px;}
.pt_hero_feat_meta h1{font-size:24px;margin:14px 0 5px;line-height:1.3;}
.pt_hero_feat_meta h1 a{color:inherit;text-decoration:none;}
.pt_hero_feat_meta p{opacity:.7;font-size:13px;margin:0;}
.pt_hero_feat_meta p span.bold{margin:0 6px;}
/* latest (right) - reuse home/list card, lay out horizontally */
.pt_hero_side_head h4{font-size:16px;font-weight:600;margin:0 0 10px;}
.pt_hero_side_videos .col-md-3{width:100%;float:none;padding:0;margin:0 0 14px;}
.pt_hero_side_videos .video-list{display:grid;grid-template-columns:1.25fr 1fr;gap:12px;align-items:start;}
.pt_hero_side_videos .video-list-image{margin:0;}
.pt_hero_side_videos .pt_vid_fixed_height{min-height:0;max-height:none;height:auto;}
.pt_hero_side_videos .video-list-title h4{font-size:13.5px;line-height:1.35;max-height:2.8em;margin:0 0 4px;}
.pt_hero_side_videos .video-list-by{font-size:12px;}
@media (max-width:991px){
  .pt_hero_grid{grid-template-columns:1fr;}
}
@media (max-width:520px){
  .pt_hero_side_videos .video-list{grid-template-columns:1.35fr 1fr;}
  .pt_hero_feat_meta h1{font-size:20px;}
}

/* Neutralize the -150px pull-up that assumed the old 720px hero banner */
.pt_home_top_m{margin-top:0 !important;}

/* Featured hero inline video (muted autoplay, plays on the home page) */
.pt_hero_has_video{background:#000;}
.pt_hero_video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;display:block;background:#000;}

/* Force 16:9 on latest-video thumbnails regardless of any cached base styles */
.pt_hero_side_videos .video-list .video-list-image a{padding-bottom:0 !important;height:auto !important;aspect-ratio:16/9 !important;display:block !important;position:relative !important;overflow:hidden;border-radius:8px;}
.pt_hero_side_videos .video-list .video-list-image img{position:absolute !important;top:0 !important;left:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;}

/* Apply brand typeface site-wide (overrides theme's Lato !important) */
body, button, input, select, textarea, .btn { font-family: var(--font) !important; }

/* ---- Brand green accent rollout: turn residual blue accents green ---- */
.btn-main:hover, .btn-main:focus{background-color:#4f9d74 !important;}
.home-page-categories .title h4 div{background:var(--brand) !important;}
.home-page-categories .videos .video-list .video-list-title h4, .video-latest-list .video-title h4{color:var(--ink) !important;}
.pt_upload_vdo_step .line .line_sec{background:var(--brand) !important;}

/* ============================================================
   BRAND SKIN — map theme surfaces to brand tokens.
   Tokens resolve to light/dark automatically via <html data-theme>.
   ============================================================ */
body{background:var(--page)!important;color:var(--ink)!important;}
.yp_side_drawer{background:var(--surface)!important;}
.yp_side_drawer .open_side_menu_head{background:var(--sunken)!important;border-color:var(--line)!important;}
.dropdown-menu, .notfi-dropdown, .modal-content, .card, .panel, .well, .pt_shadow,
.search-dropdown, .bootstrap-select .dropdown-menu{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important;}
.form-control, .bootstrap-select > .btn, textarea, input[type=text], input[type=email], input[type=password], input[type=search]{
  background:var(--sunken)!important;color:var(--ink)!important;border-color:var(--line)!important;}
.video-list-by, .video-list-by a, .video-list-by span{color:var(--ink-3)!important;}
hr, .dark_hr{border-color:var(--line)!important;}

/* Residual blue accents -> brand green (both modes) */
.yp_side_drawer ul.sections li.active a{color:var(--brand)!important;}
.yp_side_drawer ul.sections li.active a svg{fill:var(--brand)!important;}
.pt_sec_nav_slide > div a.active, .pt_sec_nav_slide a.active{background:var(--brand)!important;background-color:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important;}
a:hover{color:var(--brand);}
/* Section titles (Trending, Shorts, Latest, etc.) follow the ink token in both modes */
.home-page-categories .title h4{color:var(--ink)!important;}
.home-page-categories .title h4 span{color:var(--brand)!important;}
