/* KolorTube typography and text contrast system */
:root{
  --wpst-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  --wpst-text:#171717;
  --wpst-heading:#0f172a;
  --wpst-muted:#5f6875;
  --wpst-subtle:#737b87;
  --wpst-link:#b60000;
  --wpst-link-hover:#850000;
  --wpst-surface:#ffffff;
  --wpst-soft:#f6f7f9;
  --wpst-border:#e2e5e9;
}
html{font-size:16px}
body{
  font-family:var(--wpst-font-sans)!important;
  color:var(--wpst-text);
  font-size:16px;
  line-height:1.65;
  letter-spacing:0;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
body,input,button,select,textarea{font-family:var(--wpst-font-sans)!important}
p,li,dd,dt,blockquote,figcaption{color:var(--wpst-text)}
h1,h2,h3,h4,h5,h6,
.entry-title,.page-title,.widget-title,.section-title,
.video-title,.wpst-p2-header h1,.wpst-p2-section-head h2,
.wpst-p3-library h2,.wpst-p5-dashboard h1,.wpst-p5-dashboard h2{
  color:var(--wpst-heading)!important;
  font-family:var(--wpst-font-sans)!important;
  font-weight:750;
  letter-spacing:-.025em;
  text-wrap:balance;
}
h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}
h2{font-size:clamp(1.55rem,2.5vw,2.25rem);line-height:1.18}
h3{font-size:clamp(1.18rem,1.8vw,1.5rem);line-height:1.3}
h4{font-size:1.08rem;line-height:1.35}
a{color:var(--wpst-link);text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover,a:focus{color:var(--wpst-link-hover)}
.entry-content,.post-content,.video-description,.wpst-p2-description{font-size:1rem;line-height:1.78;color:var(--wpst-text)}
.entry-content p,.post-content p,.video-description p,.wpst-p2-description p{color:var(--wpst-text)}

/* Navigation and header */
.navbar-nav .nav-link,.main-navigation a,.site-header a,.menu-item a{
  font-weight:650;
  letter-spacing:-.01em;
}
.site-header:not(.is-dark) .navbar-nav .nav-link,
.site-header:not(.is-dark) .main-navigation a,
.site-header:not(.is-dark) .menu-item a{color:#20242a}
.site-header:not(.is-dark) .navbar-nav .nav-link:hover,
.site-header:not(.is-dark) .main-navigation a:hover{color:var(--wpst-link)}

/* Cards and archive loops */
.video-loop .title,.video-loop h2,.video-loop h3,
.thumb-block .title,.post-title,.entry-title a,.wpst-p3-card-title{
  color:var(--wpst-heading)!important;
  font-size:clamp(.94rem,1.2vw,1.06rem);
  font-weight:720;
  line-height:1.38;
  letter-spacing:-.018em;
}
.video-loop .title a,.video-loop h2 a,.video-loop h3 a,
.thumb-block .title a,.entry-title a,.wpst-p3-card-title{color:inherit!important}
.video-loop .title a:hover,.video-loop h2 a:hover,.video-loop h3 a:hover,
.entry-title a:hover{color:var(--wpst-link)!important}
.video-loop .meta,.video-loop .video-meta,.entry-meta,.post-meta,
.views,.duration,.date,.author-name,.wpst-p2-meta,
.wpst-p2-side-card span,.wpst-p2-section-head span{
  color:var(--wpst-muted)!important;
  font-size:.875rem;
  line-height:1.45;
}

/* Single video page */
.wpst-p2-single{color:var(--wpst-text)}
.wpst-p2-header h1{font-size:clamp(1.65rem,3vw,2.65rem)!important;line-height:1.15!important}
.wpst-p2-meta{color:var(--wpst-muted)!important;font-weight:520}
.wpst-p2-description{color:var(--wpst-text)!important}
.wpst-p2-tax a{color:#25282d!important;font-size:.86rem;font-weight:650}
.wpst-p2-side-card{color:var(--wpst-text)}
.wpst-p2-side-card strong,.wpst-p2-side-card b{color:var(--wpst-heading)}
.wpst-p3-btn{font-size:.9rem;line-height:1.2;letter-spacing:-.01em}

/* Dashboard, library, forms */
.wpst-p3-library,.wpst-p5-dashboard,.wpst-p5-creator-dashboard{color:var(--wpst-text)}
.wpst-p3-card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
label{color:var(--wpst-heading);font-weight:650}
input,textarea,select{
  color:var(--wpst-text)!important;
  background-color:var(--wpst-surface);
  font-size:1rem;
  line-height:1.45;
}
input::placeholder,textarea::placeholder{color:#7a828d;opacity:1}
.help-text,.description,.form-text,small,.small{color:var(--wpst-muted)}

/* Comments and footer */
.comment-author,.comment-author a,.comment-reply-title{color:var(--wpst-heading)!important}
.comment-metadata,.comment-metadata a,.comment-notes{color:var(--wpst-muted)!important}
.site-footer{line-height:1.6}
.site-footer:not(.footer-dark),.site-footer:not(.footer-dark) p{color:#4f5865}
.site-footer:not(.footer-dark) h2,.site-footer:not(.footer-dark) h3,.site-footer:not(.footer-dark) h4{color:var(--wpst-heading)!important}

/* Keep all player overlay text high contrast */
.wpst-premium-player,.wpst-premium-player p,.wpst-premium-player span,
.wpst-premium-player button,.wpst-premium-player b,.wpst-premium-player strong,
.wpst-player-settings,.wpst-player-settings button,.wpst-player-title,
.wpst-player-time,.wpst-player-toast,.wpst-live-pill{
  color:#fff!important;
  font-family:var(--wpst-font-sans)!important;
}
.wpst-player-title{font-weight:680;letter-spacing:-.01em}
.wpst-settings-main b{color:#c7c7c7!important}

/* Better readable selections and focus */
::selection{background:#c40000;color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#c40000!important}

@media(max-width:767px){
  html{font-size:15px}
  body{font-size:15px;line-height:1.6}
  h1{font-size:clamp(1.65rem,8vw,2.25rem)}
  h2{font-size:clamp(1.35rem,6vw,1.75rem)}
  .wpst-p2-header h1{font-size:1.55rem!important;line-height:1.22!important}
  .video-loop .title,.video-loop h2,.video-loop h3,.wpst-p3-card-title{font-size:.92rem;line-height:1.36}
  .video-loop .meta,.video-loop .video-meta,.entry-meta,.post-meta,.wpst-p2-meta{font-size:.8rem}
  .entry-content,.post-content,.video-description,.wpst-p2-description{font-size:1rem;line-height:1.72}
}
