/*
Theme Name: THEMA News
Theme URI: https://villora.pro/
Author: Villora
Description: Tema portal berita responsif dengan hero slider, rubrik editorial, berita terbaru AJAX, area iklan, dan pengaturan Customizer.
Version: 3.16.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: thema-news
Domain Path: /languages
*/

:root{
  --tn-red:#d71920;
  --tn-black:#0a0a0a;
  --tn-dark:#232323;
  --tn-text:#272727;
  --tn-muted:#6b6b6b;
  --tn-border:#e7e7e7;
  --tn-bg:#ffffff;
  --tn-soft:#f5f5f5;
  --tn-container:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--tn-bg);
  color:var(--tn-text);
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.5;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
a:hover{color:var(--tn-red)}
.tn-container{width:min(var(--tn-container),calc(100% - 32px));margin-inline:auto}

/* Desktop header */
.tn-site-header{background:#fff;border-bottom:1px solid var(--tn-border);position:relative;z-index:100}
.tn-desktop-header{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:24px}
.tn-brand{display:flex;align-items:center;min-width:0}
.tn-brand img{max-height:54px;width:auto}
.tn-brand-text{font-size:28px;font-weight:800;letter-spacing:-.6px;color:#111}
.tn-brand-text span{color:var(--tn-red)}
.tn-header-actions{display:flex;align-items:center;gap:12px}
.tn-tv-button{
  display:inline-flex;align-items:center;gap:9px;border:1px solid #cfcfcf;border-radius:7px;
  padding:9px 14px;font-weight:700;background:#fff
}
.tn-tv-dot{width:10px;height:10px;border-radius:50%;background:var(--tn-red);display:inline-block}
.tn-icon-button{
  border:0;background:transparent;display:inline-grid;place-items:center;width:42px;height:42px;cursor:pointer;color:#111
}
.tn-icon-button svg{width:25px;height:25px}
.tn-main-nav{background:var(--tn-black);color:#fff}
.tn-main-nav .tn-container{display:flex;align-items:center;overflow-x:auto;scrollbar-width:none}
.tn-main-nav .tn-container::-webkit-scrollbar{display:none}
.tn-main-nav a{display:block;padding:13px 16px;white-space:nowrap;font-size:15px;font-weight:700}
.tn-main-nav a:first-child{padding-left:0}
.tn-main-nav a:hover{color:#fff;background:#1b1b1b}

/* Mobile header */
.tn-mobile-header{display:none}
.tn-mobile-category-nav{display:none}

/* Search overlay */
.tn-search-panel{display:none;background:#fff;border-top:1px solid var(--tn-border);border-bottom:1px solid var(--tn-border);padding:16px 0}
.tn-search-panel.is-open{display:block}
.tn-search-form{display:flex;gap:8px}
.tn-search-form input{
  flex:1;min-width:0;border:1px solid #cfcfcf;border-radius:6px;padding:11px 13px;font-size:16px
}
.tn-search-form button{
  border:0;background:var(--tn-red);color:#fff;border-radius:6px;padding:0 18px;font-weight:700;cursor:pointer
}

/* Hero */
.tn-hero-wrap{padding:24px 0 0}
.tn-hero{
  position:relative;overflow:hidden;border-radius:10px;background:#111;
  height:clamp(330px,40vw,490px)
}
.tn-hero-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .65s ease}
.tn-hero-slide.is-active{opacity:1;pointer-events:auto}
.tn-hero-slide img{width:100%;height:100%;object-fit:cover}
.tn-hero-slide::after{
  content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 28%,rgba(0,0,0,.76) 100%)
}
.tn-hero-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:34px;color:#fff;max-width:900px}
.tn-kicker{display:inline-block;color:#fff;background:var(--tn-red);padding:5px 9px;border-radius:4px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;margin-bottom:11px}
.tn-hero-title{margin:0;font-size:clamp(28px,4vw,52px);line-height:1.08;letter-spacing:-1px}
.tn-hero-meta{margin-top:10px;font-size:14px;color:#ededed}
.tn-hero-dots{
  position:absolute;z-index:4;right:24px;bottom:24px;display:flex;gap:7px
}
.tn-hero-dot{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.48)}
.tn-hero-dot.is-active{width:24px;background:#fff}

/* Ad widget */
.tn-ad-section{padding:24px 0}
.tn-ad-slot{
  min-height:96px;display:flex;align-items:center;justify-content:center;text-align:center;
  background:#fafafa;border:1px solid #ededed;color:#9a9a9a;font-size:11px;letter-spacing:1px;
  overflow:hidden
}
.tn-ad-slot > *{max-width:100%}
.tn-ad-slot img{margin:auto}

/* Section heading */
.tn-section{padding:0 0 28px}
.tn-section-head{
  display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:17px
}
.tn-section-title{
  margin:0;font-size:26px;line-height:1.15;font-weight:800;letter-spacing:-.4px;text-transform:uppercase
}
.tn-section-title::after{
  content:"";display:block;width:64px;height:4px;background:var(--tn-red);margin-top:11px
}
.tn-see-all{font-size:14px;font-weight:700;color:var(--tn-muted)}

/* Berita Utama carousel */
.tn-mainnews-track{
  display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 60px)/4);
  gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;
  scrollbar-width:thin;overscroll-behavior-inline:contain
}
.tn-mainnews-card{scroll-snap-align:start;min-width:0}
.tn-mainnews-image{
  overflow:hidden;background:#eaeaea;aspect-ratio:16/9
}
.tn-mainnews-image img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.tn-mainnews-card:hover .tn-mainnews-image img{transform:scale(1.025)}
.tn-mainnews-title{
  margin:12px 0 8px;font-size:20px;line-height:1.35;font-weight:750;
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden
}
.tn-mainnews-cat{font-size:14px;color:var(--tn-red);font-weight:700}

/* Content grid */
.tn-content-grid{
  display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;padding:18px 0 48px
}
.tn-post-list{display:grid;gap:22px}
.tn-post-card{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px;border-bottom:1px solid var(--tn-border);padding-bottom:22px}
.tn-post-card-image{aspect-ratio:16/10;background:#eee;overflow:hidden}
.tn-post-card-image img{width:100%;height:100%;object-fit:cover}
.tn-post-card h2{margin:0 0 8px;font-size:24px;line-height:1.25}
.tn-post-card p{margin:0;color:var(--tn-muted)}
.tn-meta{font-size:13px;color:var(--tn-muted);margin-top:8px}
.tn-sidebar-box{border-top:4px solid var(--tn-red);background:#f7f7f7;padding:18px}
.tn-sidebar-box h3{margin:0 0 12px}

/* Single */
.tn-single{max-width:840px;margin:0 auto;padding:34px 0 60px}
.tn-single h1{font-size:clamp(34px,5vw,54px);line-height:1.08;margin:0 0 12px;letter-spacing:-1px}
.tn-single .tn-featured{margin:24px 0}
.tn-single .entry-content{font-size:18px}
.tn-single .entry-content p{margin:0 0 1.25em}

/* Footer */
.tn-footer{background:#111;color:#d8d8d8;margin-top:32px;padding:38px 0}
.tn-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.tn-footer h3{color:#fff;margin-top:0}
.tn-footer a{color:#d8d8d8}
.tn-footer-bottom{border-top:1px solid #333;margin-top:28px;padding-top:18px;font-size:13px;color:#aaa}

/* Mobile drawer */
.tn-mobile-drawer{
  display:none;position:fixed;inset:0 0 0 auto;width:min(86vw,360px);background:#fff;z-index:9999;
  box-shadow:-8px 0 30px rgba(0,0,0,.24);padding:18px;overflow-y:auto
}
.tn-mobile-drawer.is-open{display:block}
.tn-drawer-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:9998}
.tn-drawer-backdrop.is-open{display:block}
.tn-drawer-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.tn-drawer-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--tn-border);font-weight:700}

/* Accessibility */
.screen-reader-text{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0
}

@media (max-width: 980px){
  .tn-mainnews-track{grid-auto-columns:calc((100% - 32px)/3);gap:16px}
  .tn-content-grid{grid-template-columns:1fr}
  .tn-sidebar{display:none}
}

@media (max-width: 767px){
  body{padding-top:0}
  .tn-container{width:min(100% - 24px,var(--tn-container))}
  .tn-desktop-header,.tn-main-nav{display:none}
  .tn-mobile-header{
    display:flex;position:sticky;top:0;z-index:1000;background:#050505;color:#fff;
    align-items:center;height:64px;padding:0 12px;gap:10px
  }
  .tn-mobile-logo{display:flex;align-items:center;min-width:0;flex:1}
  .tn-mobile-logo img{max-width:126px;max-height:44px;width:auto}
  .tn-mobile-logo .tn-brand-text{font-size:22px;color:#fff;white-space:nowrap}
  .tn-mobile-tv{
    flex:0 0 auto;border:1px solid #aaa;border-radius:7px;padding:7px 9px;
    font-size:13px;font-weight:700;display:flex;align-items:center;gap:6px
  }
  .tn-mobile-tv .tn-tv-dot{width:8px;height:8px}
  .tn-mobile-header .tn-icon-button{color:#fff;width:38px;height:38px}
  .tn-mobile-header .tn-icon-button svg{width:24px;height:24px}
  .tn-mobile-menu-label{display:none}
  .tn-mobile-category-nav{
    display:block;position:sticky;top:64px;z-index:999;background:#262626;color:#fff;
    overflow-x:auto;white-space:nowrap;scrollbar-width:none
  }
  .tn-mobile-category-nav::-webkit-scrollbar{display:none}
  .tn-mobile-category-inner{display:flex}
  .tn-mobile-category-nav a{padding:10px 13px;font-size:15px}
  .tn-mobile-category-nav a:first-child{padding-left:14px}

  .tn-hero-wrap{padding-top:14px}
  .tn-hero{border-radius:0;height:clamp(245px,68vw,330px)}
  .tn-hero-content{padding:20px 18px}
  .tn-hero-title{font-size:27px;line-height:1.12}
  .tn-hero-dots{right:16px;bottom:14px}
  .tn-kicker{font-size:11px}

  .tn-ad-section{padding:16px 0 18px}
  .tn-ad-slot{min-height:82px}

  .tn-section{padding-bottom:22px}
  .tn-section-head{margin-bottom:14px}
  .tn-section-title{font-size:24px;font-weight:700}
  .tn-section-title::after{width:64px;height:4px;margin-top:10px}
  .tn-see-all{display:none}

  /* CNN-like: about 2 cards visible and swipeable */
  .tn-mainnews-track{
    margin-right:-12px;
    grid-auto-columns:calc((100vw - 48px)/2);
    gap:16px;padding-right:12px;scrollbar-width:none
  }
  .tn-mainnews-track::-webkit-scrollbar{display:none}
  .tn-mainnews-title{font-size:17px;line-height:1.45;margin-top:10px;-webkit-line-clamp:3}
  .tn-mainnews-cat{font-size:14px}

  .tn-content-grid{padding-top:8px}
  .tn-post-card{grid-template-columns:120px minmax(0,1fr);gap:12px}
  .tn-post-card h2{font-size:18px}
  .tn-post-card p{display:none}

  .tn-single{padding:24px 0 44px}
  .tn-single h1{font-size:34px}
  .tn-single .entry-content{font-size:17px}

  .tn-footer-grid{grid-template-columns:1fr}
}

@media (max-width: 380px){
  .tn-mobile-tv{font-size:12px;padding:6px 7px}
  .tn-mobile-logo img{max-width:106px}
  .tn-mainnews-track{grid-auto-columns:calc((100vw - 42px)/2)}
  .tn-mainnews-title{font-size:16px}
}


/* =========================
   THEMA News v1.2
   Footer & Single Post
   ========================= */

/* Single post full news layout */
.tn-single-page{padding:24px 0 0}
.tn-article-top-ad{margin:0 auto 24px;max-width:970px}
.tn-article-top-ad .tn-ad-slot{min-height:120px}

.tn-breadcrumb{
  display:flex;flex-wrap:wrap;gap:7px;align-items:center;
  font-size:13px;color:#777;margin-bottom:10px
}
.tn-breadcrumb a{color:#666}
.tn-breadcrumb-sep{color:#aaa}

.tn-single-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:34px;
  align-items:start
}
.tn-single-article{min-width:0}
.tn-single-article h1{
  margin:0 0 10px;
  font-size:clamp(32px,3.3vw,46px);
  line-height:1.12;
  letter-spacing:-.7px;
  color:#191919
}
.tn-article-source{
  color:var(--tn-red);
  font-weight:700;
  font-size:14px;
  margin-bottom:3px
}
.tn-article-date{
  color:#8a8a8a;
  font-size:13px;
  margin-bottom:15px
}
.tn-share-row{
  display:flex;align-items:center;gap:9px;
  margin:12px 0 18px;
  font-size:13px
}
.tn-share-label{margin-right:2px}
.tn-share{
  width:34px;height:34px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:800;color:#fff
}
.tn-share:hover{color:#fff;opacity:.88}
.tn-share-wa{background:#28c76f}
.tn-share-fb{background:#1877f2}
.tn-share-x{background:#111}
.tn-share-link{background:#8b8b8b}
.tn-share-open{
  margin-left:auto;color:#555;font-size:20px;line-height:1
}

.tn-featured-large{margin:0 0 4px}
.tn-featured-large img{width:100%;height:auto}
.tn-caption{
  font-size:12px;color:#777;line-height:1.45;margin:6px 0 22px
}
.tn-entry-content{
  font-size:17px;
  line-height:1.8;
  color:#242424
}
.tn-entry-content p{margin:0 0 1.2em}
.tn-entry-content h2,.tn-entry-content h3{line-height:1.3}

.tn-related-inline{
  border:1px solid #e6e6e6;
  margin:24px 0;
  padding:14px 15px;
  background:#fff
}
.tn-related-inline-title{
  color:var(--tn-red);
  font-weight:800;
  font-size:15px;
  margin-bottom:11px
}
.tn-related-inline-card{
  display:grid;
  grid-template-columns:105px minmax(0,1fr);
  gap:12px;
  align-items:center
}
.tn-related-inline-card img{
  width:105px;height:68px;object-fit:cover;background:#eee
}
.tn-related-inline-card h4{
  margin:0;font-size:14px;line-height:1.4
}

.tn-article-mid-ad{
  margin:24px 0;
}
.tn-article-mid-ad .tn-ad-slot{min-height:170px}

.tn-article-tags{margin:24px 0}
.tn-article-tags-title{
  font-size:13px;font-weight:800;text-transform:uppercase;margin-bottom:9px
}
.tn-tag-list{display:flex;flex-wrap:wrap;gap:7px}
.tn-tag-list a{
  border:1px solid #e4b3b3;color:#c61b1b;
  padding:5px 9px;font-size:12px;border-radius:2px
}

.tn-related-grid-wrap{
  margin-top:30px;
  border-top:1px solid #eee;
  padding-top:20px
}
.tn-related-grid-head{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:14px
}
.tn-related-grid-head h3{
  margin:0;font-size:19px;text-transform:uppercase
}
.tn-related-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px
}
.tn-related-grid article{min-width:0}
.tn-related-grid img{
  width:100%;aspect-ratio:16/10;object-fit:cover;background:#eee
}
.tn-related-grid h4{
  margin:8px 0 0;font-size:14px;line-height:1.4
}

.tn-single-sidebar{
  position:sticky;top:20px
}
.tn-single-sidebar .tn-ad-slot{
  min-height:340px;
  background:#f4f4f4
}
.tn-single-sidebar-card{
  margin-top:20px;border-top:4px solid var(--tn-red);padding-top:12px
}

/* Footer v1.2 */
.tn-footer{
  background:#262626;
  color:#cfcfcf;
  margin-top:40px;
  padding:0
}
.tn-footer-brandbar{
  border-bottom:1px solid #3d3d3d;
  padding:20px 0
}
.tn-footer-brand{
  display:flex;align-items:center;gap:14px
}
.tn-footer-logo{
  min-width:0
}
.tn-footer-logo img{max-height:42px;width:auto}
.tn-footer-logo .tn-brand-text{color:#fff;font-size:22px}
.tn-footer-tagline{
  color:#f0f0f0;
  font-size:18px;
  font-weight:700;
  letter-spacing:.2px
}
.tn-footer-main{
  display:grid;
  grid-template-columns:1.15fr 2fr 1fr;
  gap:34px;
  padding:24px 0 22px
}
.tn-footer-main h3{
  color:#fff;
  margin:0 0 14px;
  font-size:15px
}
.tn-footer-main p{margin:0 0 7px;font-size:14px}
.tn-footer-download{font-weight:700;color:#ddd}
.tn-footer-links{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px 22px
}
.tn-footer-links a{
  font-size:14px;color:#d2d2d2;padding:2px 0
}
.tn-footer-links a:hover{color:#fff}
.tn-footer-social{
  display:flex;gap:9px;flex-wrap:wrap
}
.tn-footer-social a{
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  background:#8a8a8a;color:#fff;font-weight:800;font-size:14px
}
.tn-footer-bottom{
  border-top:1px solid #3d3d3d;
  margin-top:0;
  padding:18px 0 24px;
  text-align:center;
  font-size:12px;
  line-height:1.55;
  color:#c6c6c6
}
.tn-footer-legal-links{
  margin-top:5px
}
.tn-footer-legal-links a{color:#d7d7d7}
.tn-back-top{
  position:fixed;right:18px;bottom:18px;
  width:38px;height:38px;border-radius:50%;
  display:grid;place-items:center;
  background:#d71920;color:#fff;
  z-index:999;
  box-shadow:0 3px 10px rgba(0,0,0,.22)
}
.tn-back-top:hover{color:#fff}

@media (max-width: 980px){
  .tn-single-layout{grid-template-columns:1fr}
  .tn-single-sidebar{display:none}
  .tn-footer-main{grid-template-columns:1fr 1.6fr}
  .tn-footer-social-wrap{grid-column:1/-1}
}

@media (max-width: 767px){
  .tn-single-page{padding-top:12px}
  .tn-article-top-ad{margin-bottom:15px}
  .tn-article-top-ad .tn-ad-slot{min-height:88px}
  .tn-breadcrumb{font-size:12px;margin-bottom:8px}
  .tn-single-article h1{
    font-size:29px;
    line-height:1.2;
    letter-spacing:-.3px
  }
  .tn-article-source{font-size:13px}
  .tn-article-date{font-size:12px}
  .tn-share-row{margin:10px 0 16px}
  .tn-share{width:31px;height:31px;font-size:13px}
  .tn-featured-large{margin-left:-12px;margin-right:-12px}
  .tn-caption{
    font-size:11px;
    margin:6px 0 19px
  }
  .tn-entry-content{
    font-size:16px;
    line-height:1.72
  }
  .tn-related-inline{
    margin-left:-1px;margin-right:-1px;
    padding:12px
  }
  .tn-related-inline-card{
    grid-template-columns:95px minmax(0,1fr)
  }
  .tn-related-inline-card img{width:95px;height:64px}
  .tn-related-grid{grid-template-columns:repeat(2,1fr)}
  .tn-related-grid article:nth-child(n+5){display:none}
  .tn-article-mid-ad .tn-ad-slot{min-height:140px}

  .tn-footer-brandbar{padding:15px 0}
  .tn-footer-brand{gap:10px}
  .tn-footer-tagline{font-size:15px}
  .tn-footer-main{
    grid-template-columns:1fr;
    gap:22px;
    padding:20px 0
  }
  .tn-footer-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px 16px
  }
  .tn-footer-social-wrap{grid-column:auto}
  .tn-footer-bottom{font-size:11px;padding:16px 0 20px}
  .tn-back-top{width:36px;height:36px;right:12px;bottom:12px}
}


/* =========================
   THEMA News v1.3
   Homepage refinement
   ========================= */

/* HERO DESKTOP: 70% slider + 30% side stories */
.tn-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,7fr) minmax(280px,3fr);
  gap:18px;
  align-items:stretch;
}
.tn-hero-grid .tn-hero{
  height:390px;
  border-radius:8px;
}
.tn-hero-grid .tn-hero-content{
  padding:24px 26px;
  max-width:760px;
}
.tn-hero-grid .tn-hero-title{
  font-size:clamp(26px,2.7vw,38px);
  line-height:1.12;
  letter-spacing:-.5px;
}
.tn-hero-grid .tn-hero-meta{
  font-size:13px;
  margin-top:8px;
}
.tn-hero-grid .tn-hero-dots{
  right:18px;
  bottom:16px;
}

.tn-hero-side{
  display:grid;
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:18px;
}
.tn-hero-side-card{
  position:relative;
  overflow:hidden;
  min-height:0;
  border-radius:8px;
  background:#111;
}
.tn-hero-side-card img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.tn-hero-side-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.05) 25%,rgba(0,0,0,.78) 100%);
}
.tn-hero-side-content{
  position:absolute;
  z-index:2;
  left:0;right:0;bottom:0;
  padding:15px 16px;
  color:#fff;
}
.tn-hero-side-content .tn-kicker{
  font-size:10px;
  padding:3px 7px;
  margin-bottom:7px;
}
.tn-hero-side-title{
  margin:0;
  font-size:18px;
  line-height:1.25;
  letter-spacing:-.2px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* Berita Utama: 4 cards only, tighter typography/spacing */
.tn-mainnews-track{
  grid-auto-columns:calc((100% - 48px)/4);
  gap:16px;
  padding-bottom:0;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
.tn-mainnews-track::-webkit-scrollbar{
  display:none;
  width:0;
  height:0;
}
.tn-mainnews-title{
  margin:9px 0 5px;
  font-size:17px;
  line-height:1.28;
  font-weight:750;
  letter-spacing:-.15px;
  -webkit-line-clamp:3;
}
.tn-mainnews-cat{
  font-size:12px;
}
.tn-section-head{
  margin-bottom:13px;
}
.tn-section-title{
  font-size:23px;
}

/* Slightly reduce excess homepage whitespace */
.tn-ad-section{
  padding:18px 0;
}
.tn-section{
  padding-bottom:22px;
}

@media (max-width: 980px){
  .tn-hero-grid{
    grid-template-columns:minmax(0,2fr) minmax(240px,1fr);
    gap:14px;
  }
  .tn-hero-grid .tn-hero{
    height:350px;
  }
  .tn-hero-side{
    gap:14px;
  }
  .tn-hero-side-title{
    font-size:16px;
  }
  .tn-mainnews-track{
    grid-auto-columns:calc((100% - 32px)/3);
  }
}

@media (max-width: 767px){
  /* Mobile keeps a single full-width hero, side column hidden */
  .tn-hero-grid{
    display:block;
  }
  .tn-hero-side{
    display:none;
  }
  .tn-hero-grid .tn-hero{
    height:clamp(235px,64vw,305px);
    border-radius:0;
  }
  .tn-hero-grid .tn-hero-content{
    padding:18px 17px;
  }
  .tn-hero-grid .tn-hero-title{
    font-size:25px;
    line-height:1.13;
  }

  /* About 2 cards remain visible and swipeable, no scroll indicator */
  .tn-mainnews-track{
    margin-right:-12px;
    grid-auto-columns:calc((100vw - 48px)/2);
    gap:14px;
    padding-right:12px;
    padding-bottom:0;
    scrollbar-width:none;
    -ms-overflow-style:none;
  }
  .tn-mainnews-track::-webkit-scrollbar{
    display:none;
    width:0;
    height:0;
  }
  .tn-mainnews-title{
    font-size:15px;
    line-height:1.3;
    margin:8px 0 4px;
  }
  .tn-mainnews-cat{
    font-size:12px;
  }
  .tn-section-title{
    font-size:22px;
  }
}

@media (max-width: 380px){
  .tn-mainnews-track{
    grid-auto-columns:calc((100vw - 42px)/2);
    gap:12px;
  }
  .tn-mainnews-title{
    font-size:14.5px;
  }
}


/* =========================
   THEMA News v1.4
   Single Post typography refinement
   ========================= */

/* Desktop single post title: smaller and tighter */
.tn-single-article h1{
  font-size:clamp(29px,2.45vw,38px);
  line-height:1.16;
  letter-spacing:-0.25px;
  font-weight:800;
  max-width:900px;
  margin-bottom:10px;
}

/* Article body: more readable, closer to major news portals */
.tn-entry-content{
  font-size:18px;
  line-height:1.75;
  letter-spacing:0;
  color:#252525;
}
.tn-entry-content p{
  margin:0 0 1.15em;
}
.tn-entry-content li{
  margin-bottom:.45em;
}
.tn-entry-content blockquote{
  font-size:18px;
  line-height:1.7;
}

/* Slightly stronger metadata balance */
.tn-article-source{
  font-size:13px;
}
.tn-article-date{
  font-size:12.5px;
}

/* Tablet */
@media (max-width:980px){
  .tn-single-article h1{
    font-size:34px;
    line-height:1.17;
    letter-spacing:-0.2px;
  }
  .tn-entry-content{
    font-size:17.5px;
    line-height:1.74;
  }
}

/* Mobile */
@media (max-width:767px){
  .tn-single-article h1{
    font-size:27px;
    line-height:1.2;
    letter-spacing:-0.15px;
    margin-bottom:9px;
  }
  .tn-entry-content{
    font-size:17px;
    line-height:1.72;
  }
  .tn-entry-content p{
    margin-bottom:1.1em;
  }
}


/* ==================================================
   THEMA News v1.5
   Mobile homepage + single post responsive refinement
   ================================================== */

@media (max-width: 767px){

  /* ---------- MOBILE HEADER ---------- */
  .tn-mobile-header{
    height:58px;
    padding:0 10px;
    gap:8px;
  }
  .tn-mobile-category-nav{
    top:58px;
  }
  .tn-mobile-logo img{
    max-height:38px;
    max-width:118px;
  }
  .tn-mobile-logo .tn-brand-text{
    font-size:20px;
  }
  .tn-mobile-tv{
    font-size:11px;
    padding:5px 8px;
  }
  .tn-mobile-header .tn-icon-button{
    width:34px;
    height:34px;
  }
  .tn-mobile-header .tn-icon-button svg{
    width:21px;
    height:21px;
  }

  /* ---------- HERO MOBILE ---------- */
  .tn-hero-wrap{
    padding-top:12px;
  }

  .tn-hero-grid .tn-hero{
    height:clamp(220px,58vw,285px);
    border-radius:0;
  }

  .tn-hero-slide img{
    object-position:center center;
  }

  /* darker only at bottom so photo remains visible */
  .tn-hero-slide::after{
    background:
      linear-gradient(
        180deg,
        rgba(0,0,0,0) 28%,
        rgba(0,0,0,.12) 48%,
        rgba(0,0,0,.78) 100%
      );
  }

  .tn-hero-grid .tn-hero-content{
    padding:14px 15px 16px;
    max-width:100%;
  }

  .tn-hero-grid .tn-kicker{
    font-size:9px;
    line-height:1;
    padding:4px 6px;
    margin-bottom:6px;
  }

  .tn-hero-grid .tn-hero-title{
    font-size:clamp(18px,5vw,22px);
    line-height:1.16;
    letter-spacing:-.15px;
    font-weight:750;
    max-width:96%;
    margin:0;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    text-shadow:0 1px 2px rgba(0,0,0,.3);
  }

  .tn-hero-grid .tn-hero-meta{
    font-size:11px;
    margin-top:6px;
    color:#f2f2f2;
  }

  .tn-hero-grid .tn-hero-dots{
    right:13px;
    bottom:11px;
  }

  .tn-hero-dot{
    width:6px;
    height:6px;
  }

  .tn-hero-dot.is-active{
    width:20px;
  }


  /* ---------- AD ---------- */
  .tn-ad-section{
    padding:14px 0 17px;
  }
  .tn-ad-slot{
    min-height:72px;
  }


  /* ---------- BERITA UTAMA MOBILE ---------- */
  .tn-section-head{
    margin-bottom:11px;
  }

  .tn-section-title{
    font-size:20px;
    line-height:1.1;
    letter-spacing:-.2px;
  }

  .tn-section-title::after{
    width:54px;
    height:3px;
    margin-top:8px;
  }

  .tn-mainnews-track{
    grid-auto-columns:calc((100vw - 46px)/2);
    gap:12px;
    padding-right:12px;
  }

  .tn-mainnews-image{
    aspect-ratio:16/10;
  }

  .tn-mainnews-title{
    font-size:14px;
    line-height:1.24;
    letter-spacing:0;
    font-weight:700;
    margin:7px 0 4px;
    -webkit-line-clamp:3;
  }

  .tn-mainnews-cat{
    font-size:11px;
    line-height:1.2;
  }


  /* ---------- NEWS LIST BELOW BERITA UTAMA ---------- */
  .tn-content-grid{
    padding-top:7px;
  }

  .tn-post-list{
    gap:0;
  }

  .tn-post-card{
    grid-template-columns:128px minmax(0,1fr);
    gap:12px;
    padding:15px 0;
    align-items:start;
  }

  .tn-post-card-image{
    aspect-ratio:16/10;
  }

  .tn-post-card h2{
    font-size:16px;
    line-height:1.24;
    letter-spacing:0;
    margin:3px 0 6px;
    font-weight:750;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:4;
    overflow:hidden;
  }

  .tn-post-card .tn-mainnews-cat{
    font-size:10.5px;
    line-height:1.1;
  }

  .tn-post-card .tn-meta{
    font-size:11px;
    margin-top:5px;
  }


  /* ---------- SINGLE POST MOBILE ---------- */
  .tn-single-page{
    padding-top:10px;
  }

  .tn-breadcrumb{
    font-size:11px;
    margin-bottom:7px;
  }

  .tn-single-article h1{
    font-size:clamp(22px,6vw,26px);
    line-height:1.18;
    letter-spacing:-.1px;
    font-weight:800;
    margin-bottom:7px;
  }

  .tn-article-source{
    font-size:12px;
    line-height:1.2;
  }

  .tn-article-date{
    font-size:11px;
    line-height:1.3;
    margin-bottom:10px;
  }

  .tn-share-row{
    gap:7px;
    margin:9px 0 14px;
  }

  .tn-share{
    width:28px;
    height:28px;
    font-size:11px;
  }

  .tn-featured-large{
    margin-left:-12px;
    margin-right:-12px;
    margin-bottom:4px;
  }

  .tn-caption{
    font-size:10.5px;
    line-height:1.42;
    margin:5px 0 16px;
  }

  /* Article typography inspired by modern news reading patterns */
  .tn-entry-content{
    font-size:16.5px;
    line-height:1.7;
    letter-spacing:0;
    color:#222;
  }

  .tn-entry-content p{
    margin:0 0 1.12em;
  }

  .tn-entry-content strong,
  .tn-entry-content b{
    font-weight:700;
  }

  .tn-entry-content h2{
    font-size:21px;
    line-height:1.3;
    margin:1.4em 0 .65em;
  }

  .tn-entry-content h3{
    font-size:19px;
    line-height:1.3;
    margin:1.35em 0 .6em;
  }

  .tn-entry-content ul,
  .tn-entry-content ol{
    padding-left:20px;
    margin:0 0 1.15em;
  }

  .tn-entry-content li{
    margin-bottom:.35em;
  }

  .tn-entry-content blockquote{
    margin:1.2em 0;
    padding:10px 14px;
    border-left:3px solid var(--tn-red);
    font-size:16.5px;
    line-height:1.65;
  }

  .tn-related-inline{
    padding:11px;
    margin-top:20px;
    margin-bottom:20px;
  }

  .tn-related-inline-title{
    font-size:13px;
    margin-bottom:8px;
  }

  .tn-related-inline-card{
    grid-template-columns:92px minmax(0,1fr);
    gap:10px;
  }

  .tn-related-inline-card img{
    width:92px;
    height:60px;
  }

  .tn-related-inline-card h4{
    font-size:12.5px;
    line-height:1.32;
  }

  .tn-related-grid-head h3{
    font-size:16px;
  }

  .tn-related-grid{
    gap:10px;
  }

  .tn-related-grid h4{
    font-size:12px;
    line-height:1.3;
    margin-top:6px;
  }
}


/* Small phones: 320–380px */
@media (max-width: 380px){

  .tn-container{
    width:calc(100% - 20px);
  }

  .tn-hero-grid .tn-hero{
    height:220px;
  }

  .tn-hero-grid .tn-hero-title{
    font-size:18px;
    line-height:1.16;
    -webkit-line-clamp:3;
  }

  .tn-mainnews-track{
    grid-auto-columns:calc((100vw - 38px)/2);
    gap:10px;
  }

  .tn-mainnews-title{
    font-size:13px;
    line-height:1.22;
  }

  .tn-post-card{
    grid-template-columns:112px minmax(0,1fr);
    gap:10px;
  }

  .tn-post-card h2{
    font-size:15px;
    line-height:1.22;
  }

  .tn-single-article h1{
    font-size:22px;
    line-height:1.18;
  }

  .tn-entry-content{
    font-size:16px;
    line-height:1.68;
  }
}


/* Larger phones: 430px+ */
@media (min-width: 430px) and (max-width: 767px){

  .tn-hero-grid .tn-hero{
    height:270px;
  }

  .tn-hero-grid .tn-hero-title{
    font-size:21px;
  }

  .tn-mainnews-title{
    font-size:14.5px;
  }

  .tn-post-card{
    grid-template-columns:138px minmax(0,1fr);
  }

  .tn-post-card h2{
    font-size:16.5px;
  }

  .tn-single-article h1{
    font-size:25px;
  }

  .tn-entry-content{
    font-size:17px;
    line-height:1.72;
  }
}


/* ==================================================
   THEMA News v1.6
   Card alignment + softer mobile hero typography
   ================================================== */

/* Desktop: Berita Utama cards more uniform and aligned */
@media (min-width: 768px){
  .tn-mainnews-card{
    display:flex;
    flex-direction:column;
    height:100%;
  }
  .tn-mainnews-image{
    width:100%;
    aspect-ratio:16/9;
  }
  .tn-mainnews-title{
    font-size:15px;
    line-height:1.22;
    font-weight:700;
    letter-spacing:0;
    margin:8px 0 5px;
    min-height:55px;
    max-height:55px;
    -webkit-line-clamp:3;
  }
  .tn-mainnews-cat{
    margin-top:auto;
    font-size:11px;
    line-height:1.15;
  }
}

/* Mobile: hero title less dominant and less heavy */
@media (max-width: 767px){
  .tn-hero-grid .tn-hero-title{
    font-size:clamp(16px,4.4vw,19px);
    line-height:1.18;
    font-weight:650;
    letter-spacing:0;
    max-width:92%;
    -webkit-line-clamp:3;
    text-shadow:0 1px 2px rgba(0,0,0,.45);
  }

  .tn-hero-grid .tn-hero-content{
    padding:12px 14px 15px;
  }

  .tn-hero-grid .tn-kicker{
    margin-bottom:5px;
  }

  /* Keep mobile Berita Utama cards visually even */
  .tn-mainnews-card{
    display:flex;
    flex-direction:column;
    height:100%;
  }
  .tn-mainnews-title{
    min-height:52px;
    max-height:52px;
    font-size:13.5px;
    line-height:1.27;
    font-weight:650;
    margin:7px 0 4px;
    -webkit-line-clamp:3;
  }
  .tn-mainnews-cat{
    margin-top:auto;
  }
}

@media (max-width: 380px){
  .tn-hero-grid .tn-hero-title{
    font-size:16px;
    line-height:1.18;
    max-width:91%;
  }
  .tn-mainnews-title{
    font-size:12.8px;
    min-height:49px;
    max-height:49px;
  }
}

@media (min-width:430px) and (max-width:767px){
  .tn-hero-grid .tn-hero-title{
    font-size:18px;
  }
  .tn-mainnews-title{
    font-size:14px;
    min-height:53px;
    max-height:53px;
  }
}


/* ==================================================
   THEMA News v1.8
   Photo Caption
   ================================================== */

/* Featured image caption */
.tn-caption{
  margin:7px 0 22px;
  padding:0;
  font-size:12px;
  line-height:1.45;
  font-weight:400;
  letter-spacing:0;
  color:#747474;
  text-align:left;
}

/* Gutenberg / WordPress image captions inside article */
.tn-entry-content figure.wp-block-image{
  margin:1.55em 0 1.45em;
}

.tn-entry-content figure.wp-block-image img{
  display:block;
  width:100%;
  height:auto;
}

.tn-entry-content figure.wp-block-image figcaption,
.tn-entry-content .wp-caption .wp-caption-text,
.tn-entry-content .wp-caption-text{
  margin:6px 0 0;
  padding:0;
  font-size:12px;
  line-height:1.45;
  font-weight:400;
  letter-spacing:0;
  color:#747474;
  text-align:left;
}

/* Classic editor caption */
.tn-entry-content .wp-caption{
  max-width:100%;
  margin:1.55em 0 1.45em;
}

.tn-entry-content .wp-caption img{
  margin:0;
  width:100%;
  height:auto;
}

/* Optional visual separator when caption is long */
.tn-caption,
.tn-entry-content figcaption,
.tn-entry-content .wp-caption-text{
  max-width:100%;
  overflow-wrap:anywhere;
}

/* Caption links */
.tn-caption a,
.tn-entry-content figcaption a,
.tn-entry-content .wp-caption-text a{
  color:#666;
  text-decoration:none;
}

.tn-caption a:hover,
.tn-entry-content figcaption a:hover,
.tn-entry-content .wp-caption-text a:hover{
  color:var(--tn-red);
}

/* Mobile caption refinement */
@media (max-width:767px){
  .tn-caption{
    margin:6px 0 17px;
    font-size:11px;
    line-height:1.42;
    color:#707070;
  }

  .tn-entry-content figure.wp-block-image{
    margin:1.35em 0 1.25em;
  }

  .tn-entry-content figure.wp-block-image figcaption,
  .tn-entry-content .wp-caption .wp-caption-text,
  .tn-entry-content .wp-caption-text{
    margin-top:5px;
    font-size:11px;
    line-height:1.42;
    color:#707070;
  }
}


/* ==================================================
   THEMA News v1.9
   Editable Footer Menus
   ================================================== */

.tn-footer-menu-column{
  min-width:0;
}

.tn-footer-menu-column h4{
  margin:0 0 10px;
  color:#fff;
  font-size:13px;
  font-weight:700;
}

.tn-footer-menu{
  list-style:none;
  margin:0;
  padding:0;
}

.tn-footer-menu li{
  margin:0;
  padding:0;
}

.tn-footer-menu a{
  display:block;
  color:#d2d2d2;
  font-size:14px;
  line-height:1.35;
  padding:4px 0;
}

.tn-footer-menu a:hover{
  color:#fff;
}

.tn-footer-nav-columns{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px 22px;
}

.tn-footer-legal-menu{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:0;
  list-style:none;
  margin:5px 0 0;
  padding:0;
}

.tn-footer-legal-menu li{
  display:flex;
  align-items:center;
}

.tn-footer-legal-menu li:not(:last-child)::after{
  content:"|";
  margin:0 5px;
  color:#777;
}

.tn-footer-legal-menu a{
  color:#d7d7d7;
}

@media (max-width:767px){
  .tn-footer-nav-columns{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px 24px;
  }

  .tn-footer-menu-column:nth-child(3){
    grid-column:1/-1;
  }

  .tn-footer-menu-column h4{
    font-size:12px;
    margin-bottom:7px;
  }

  .tn-footer-menu a{
    font-size:13px;
    padding:4px 0;
  }

  .tn-footer-legal-menu{
    line-height:1.7;
  }
}


/* ==================================================
   THEMA News v2.0
   Desktop Hero alignment + cookie popup suppression
   ================================================== */

/* Desktop hero: equal overall height, no blank space below */
@media (min-width: 981px){
  .tn-hero-wrap{
    padding-top:20px;
  }

  .tn-hero-grid{
    display:grid;
    grid-template-columns:minmax(0, 7fr) minmax(300px, 3fr);
    gap:16px;
    align-items:stretch;
    height:380px;
  }

  .tn-hero-grid .tn-hero{
    height:100%;
    min-height:0;
    border-radius:8px;
  }

  .tn-hero-side{
    display:grid;
    grid-template-rows:repeat(2, minmax(0, 1fr));
    gap:16px;
    height:100%;
    min-height:0;
  }

  .tn-hero-side-card{
    height:100%;
    min-height:0;
    border-radius:8px;
  }

  .tn-hero-side-card a{
    display:block;
    position:relative;
    width:100%;
    height:100%;
  }

  .tn-hero-side-card img{
    width:100%;
    height:100%;
    object-fit:cover;
  }
}

/* Medium desktop / laptop */
@media (min-width: 768px) and (max-width: 980px){
  .tn-hero-grid{
    display:grid;
    grid-template-columns:minmax(0, 2fr) minmax(250px, 1fr);
    gap:14px;
    height:340px;
    align-items:stretch;
  }

  .tn-hero-grid .tn-hero{
    height:100%;
  }

  .tn-hero-side{
    height:100%;
    grid-template-rows:repeat(2, minmax(0, 1fr));
  }

  .tn-hero-side-card{
    height:100%;
  }
}

/* ==================================================
   THEMA News v2.1
   Single latest news + typography refinements
   ================================================== */

/* Single post title: smaller and lighter */
.tn-single-title{
  font-size:clamp(30px,3vw,42px);
  line-height:1.14;
  font-weight:700;
  letter-spacing:-0.02em;
}

/* Hero title: image should remain visually dominant */
.tn-hero-grid .tn-hero-title{
  font-size:clamp(24px,2.35vw,34px);
  line-height:1.14;
  font-weight:650;
  max-width:88%;
  letter-spacing:-0.012em;
}

@media (min-width:981px){
  .tn-hero-grid .tn-hero-title{
    font-size:30px;
    line-height:1.14;
    font-weight:650;
    max-width:82%;
  }
}

/* Latest news widget */
.tn-latest-widget{
  border-top:3px solid var(--tn-red);
  padding-top:12px;
  margin-top:22px;
}

.tn-latest-widget-title{
  margin:0 0 12px;
  font-size:18px;
  line-height:1.2;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.01em;
}

.tn-latest-widget-list{
  display:flex;
  flex-direction:column;
  gap:0;
}

.tn-latest-widget-item{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:11px;
  align-items:start;
  padding:11px 0;
  border-bottom:1px solid #e6e6e6;
}

.tn-latest-widget-item:first-child{
  padding-top:0;
}

.tn-latest-widget-thumb{
  display:block;
  width:92px;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:4px;
  background:#eee;
}

.tn-latest-widget-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.tn-latest-widget-content{
  min-width:0;
}

.tn-latest-widget-cat{
  display:block;
  margin-bottom:4px;
  color:var(--tn-red);
  font-size:10px;
  line-height:1.2;
  font-weight:700;
  text-transform:uppercase;
}

.tn-latest-widget-link{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  color:#111;
  font-size:14px;
  line-height:1.28;
  font-weight:700;
}

.tn-latest-widget-link:hover{
  color:var(--tn-red);
}

/* Mobile latest news block */
.tn-latest-mobile{
  display:none;
}

@media (max-width:767px){
  .tn-single-title{
    font-size:21px;
    line-height:1.2;
    font-weight:650;
    letter-spacing:-0.01em;
  }

  .tn-hero-grid .tn-hero-title{
    font-size:15.5px;
    line-height:1.19;
    font-weight:600;
    max-width:90%;
    -webkit-line-clamp:3;
  }

  .tn-latest-mobile{
    display:block;
    margin:24px 0 6px;
  }

  .tn-latest-widget{
    margin-top:0;
    padding-top:11px;
  }

  .tn-latest-widget-title{
    font-size:17px;
    margin-bottom:10px;
  }

  .tn-latest-widget-item{
    grid-template-columns:120px minmax(0,1fr);
    gap:11px;
    padding:11px 0;
  }

  .tn-latest-widget-thumb{
    width:120px;
    aspect-ratio:16/10;
  }

  .tn-latest-widget-link{
    font-size:14px;
    line-height:1.3;
    font-weight:650;
    -webkit-line-clamp:3;
  }

  .tn-latest-widget-cat{
    font-size:10px;
  }
}

@media (max-width:380px){
  .tn-single-title{
    font-size:20px;
  }

  .tn-hero-grid .tn-hero-title{
    font-size:15px;
  }

  .tn-latest-widget-item{
    grid-template-columns:108px minmax(0,1fr);
  }

  .tn-latest-widget-thumb{
    width:108px;
  }
}

@media (min-width:768px){
  .tn-single-sidebar .tn-latest-widget{
    margin-top:22px;
  }
}


/* ==================================================
   THEMA News v2.3
   Fully editable footer legal + network links
   ================================================== */

.tn-footer-network{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:5px;
  margin-top:5px;
  font-size:13px;
  line-height:1.5;
}

.tn-footer-network a{
  color:#d7d7d7;
}

.tn-footer-network a:hover{
  color:#fff;
}

.tn-footer-network-separator{
  color:#777;
}

@media (max-width:767px){
  .tn-footer-network{
    font-size:12px;
    line-height:1.6;
  }
}


/* =========================================================
   THEMA News v2.5 — Editorial Homepage
   ========================================================= */
:root{--tn-red:#d71920;--tn-black:#0b0b0b;--tn-text:#171717;--tn-muted:#666;--tn-border:#e5e5e5;--tn-soft:#f6f6f6}
body{color:var(--tn-text)}
.tn-news-topbar{background:#111;color:#fff;font-size:12px}
.tn-news-topbar-inner{min-height:32px;display:flex;align-items:center;gap:14px;overflow:hidden}
.tn-topbar-date{white-space:nowrap;color:#ddd}.tn-topbar-label{background:var(--tn-red);padding:8px 12px;font-weight:800}.tn-topbar-headline{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.tn-main-nav a{position:relative}.tn-main-nav a:hover::after,.tn-main-nav .current-menu-item>a::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:3px;background:var(--tn-red)}
.tn-breaking-strip{background:#fff;border-bottom:1px solid var(--tn-border);box-shadow:0 2px 8px rgba(0,0,0,.04)}
.tn-breaking-inner{display:flex;align-items:center;min-height:42px;overflow:hidden}.tn-breaking-inner>strong{align-self:stretch;display:flex;align-items:center;background:var(--tn-red);color:#fff;padding:0 18px;font-size:12px}
.tn-breaking-items{display:flex;align-items:center;gap:28px;overflow:hidden;padding-left:18px;font-size:12px;white-space:nowrap}.tn-breaking-items a{max-width:390px;overflow:hidden;text-overflow:ellipsis}.tn-breaking-items time{color:var(--tn-red);font-weight:800;margin-right:7px}
.tn-hero-wrap{padding-top:18px}.tn-hero-grid{grid-template-columns:minmax(0,2fr) minmax(285px,1fr);gap:14px;height:420px}.tn-hero-grid .tn-hero{height:100%}.tn-hero-side{height:100%;grid-template-rows:repeat(2,minmax(0,1fr));gap:14px}.tn-hero-side-card{min-height:0;height:100%}.tn-hero-side-title{font-size:17px}
.tn-ad-slot{background:#fbfbfb;color:#aaa}.tn-section-title{font-size:22px}.tn-section-title::after{width:52px;height:3px;margin-top:8px}
.tn-mainnews-title{font-size:17px}.tn-mainnews-cat{text-transform:uppercase;font-size:11px}
.tn-home-news-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:38px;padding:8px 0 48px;align-items:start}
.tn-latest-column .tn-section-head,.tn-popular-box .tn-section-head{margin-bottom:16px}
.tn-post-list{gap:0}.tn-post-card{grid-template-columns:205px minmax(0,1fr);gap:17px;padding:14px 0;border-bottom:1px solid var(--tn-border)}.tn-post-card:first-child{padding-top:0}.tn-post-card-image{aspect-ratio:16/10}.tn-post-card h2{font-size:20px;line-height:1.2;margin:3px 0 5px}.tn-post-card p{font-size:13px;line-height:1.45}.tn-meta{font-size:11px;margin-top:6px}
.tn-popular-sidebar{position:sticky;top:16px}.tn-popular-box{border:1px solid var(--tn-border);padding:20px}.tn-popular-item{display:grid;grid-template-columns:50px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid var(--tn-border)}.tn-popular-item:last-child{border-bottom:0}.tn-popular-rank{font-size:27px;line-height:1;color:var(--tn-red);font-weight:800}.tn-popular-item h3{font-size:14px;line-height:1.35;margin:0;font-weight:700}.tn-sidebar-ad{margin-top:22px}.tn-sidebar-ad .tn-ad-slot{min-height:250px}
.tn-load-more{display:block;width:230px;margin:20px auto 0;border:1px solid var(--tn-red);border-radius:4px;text-align:center;padding:8px 14px;color:var(--tn-red);font-size:11px;font-weight:800}.tn-load-more:hover{background:var(--tn-red);color:#fff}
.tn-footer{background:#171717}
@media(max-width:980px){.tn-home-news-grid{grid-template-columns:1fr}.tn-popular-sidebar{position:static}.tn-popular-box{display:none}.tn-sidebar-ad{display:none}.tn-news-topbar,.tn-breaking-strip{display:none}}
@media(max-width:700px){.tn-hero-grid{display:block}.tn-hero-side{display:none}.tn-hero-grid .tn-hero{height:clamp(245px,68vw,330px)}.tn-post-card{grid-template-columns:125px minmax(0,1fr);gap:12px}.tn-post-card h2{font-size:16px}.tn-post-card p{display:none}.tn-home-news-grid{padding-top:6px}.tn-load-more{width:100%}}


/* ==================================================
   THEMA News v2.7 - Hero side no-gap hardening
   ================================================== */
@media (min-width: 768px){
  .tn-hero-grid{align-items:stretch;}
  .tn-hero-side{
    grid-template-rows:minmax(0,1fr) minmax(0,1fr);
    align-self:stretch;
    overflow:hidden;
  }
  .tn-hero-side-card,
  .tn-hero-side-card > a{
    width:100%;
    height:100%;
    min-height:0;
  }
  .tn-hero-side-placeholder{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    background:#222;
  }
}


/* ==================================================
   THEMA News v2.8 - Main news spacing + AJAX button
   ================================================== */
.tn-mainnews-card .tn-mainnews-cat{
  display:inline-block;
  align-self:flex-start;
  margin:10px 0 6px;
  line-height:1.25;
}
.tn-mainnews-card .tn-mainnews-title{
  min-height:0 !important;
  max-height:none !important;
  height:auto !important;
  margin:0;
  padding:0 0 3px;
  line-height:1.28;
  overflow:visible;
  display:block;
  -webkit-line-clamp:unset;
}
.tn-mainnews-card .tn-mainnews-title a{display:block;}
.tn-mainnews-placeholder{display:block;width:100%;height:100%;background:#e9e9e9;}
.tn-load-more{cursor:pointer;background:#fff;font-family:inherit;}
.tn-load-more[disabled]{opacity:.55;cursor:wait;}
.tn-load-more-status{text-align:center;min-height:18px;margin-top:8px;font-size:11px;color:var(--tn-muted);}
@media(max-width:767px){
  .tn-mainnews-card .tn-mainnews-cat{margin:8px 0 5px;}
  .tn-mainnews-card .tn-mainnews-title{min-height:0 !important;max-height:none !important;}
}


/* =========================================================
   THEMA News v3.0 — Mobile refinement only
   Desktop rules above remain unchanged.
   ========================================================= */
@media (max-width: 767px) {

  /* Global mobile content gutter */
  .tn-container,
  .tn-home-wrap,
  .tn-section,
  .tn-latest-wrap,
  .tn-main-content,
  .tn-content-area,
  .tn-news-grid,
  .tn-featured-grid {
    padding-left: 14px;
    padding-right: 14px;
    box-sizing: border-box;
  }

  /* Keep horizontal nav/ticker full width */
  .tn-main-nav .tn-container,
  .tn-breaking-strip .tn-container,
  .tn-mobile-header {
    padding-left: 0;
    padding-right: 0;
  }

  /* Mobile horizontal navigation */
  .tn-main-nav {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .tn-main-nav::-webkit-scrollbar { display: none; }
  .tn-main-nav .tn-container {
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    min-width: max-content;
  }
  .tn-main-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 13px;
  }

  /* Breaking ticker: fixed label + single-line scrolling area */
  .tn-breaking-inner {
    display: flex;
    align-items: center;
    gap: 0;
    overflow: hidden;
  }
  .tn-breaking-inner > strong {
    flex: 0 0 auto;
    position: relative;
    z-index: 2;
  }
  .tn-breaking-items {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    white-space: nowrap;
  }
  .tn-breaking-items a {
    flex: 0 0 auto;
    white-space: nowrap;
    margin-right: 24px;
  }

  /* Hero: one-column mobile, with balanced gutter */
  .tn-hero,
  .tn-hero-wrap,
  .tn-home-hero,
  .tn-hero-grid,
  .tn-featured-hero {
    margin-left: 14px !important;
    margin-right: 14px !important;
    width: auto !important;
    max-width: none !important;
  }

  /* Hide side hero cards on mobile */
  .tn-hero-side,
  .tn-hero-secondary,
  .tn-hero-right,
  .tn-featured-side {
    display: none !important;
  }

  /* Main hero sizing */
  .tn-hero-main,
  .tn-hero-slider,
  .tn-featured-main {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
  }
  .tn-hero-main .tn-slide,
  .tn-hero-slider .tn-slide,
  .tn-featured-main .tn-slide {
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: 16 / 10;
  }

  /* Remove excessive blank space below hero */
  .tn-hero,
  .tn-hero-wrap,
  .tn-home-hero,
  .tn-featured-hero,
  .tn-hero-grid {
    margin-bottom: 14px !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
  }

  /* Advertisement spacing */
  .tn-ad,
  .tn-ad-slot,
  .tn-home-ad,
  .tn-advertisement {
    margin: 0 14px 22px !important;
    width: auto !important;
    min-height: 72px;
  }

  /* Section headings */
  .tn-section-title {
    margin-top: 0;
    margin-bottom: 14px;
  }

  /* Berita Utama: two columns with breathing room */
  .tn-featured-grid,
  .tn-main-news-grid,
  .tn-news-cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 12px !important;
    row-gap: 20px !important;
  }

  .tn-featured-card,
  .tn-main-news-card,
  .tn-news-card {
    min-width: 0;
  }

  .tn-featured-card img,
  .tn-main-news-card img,
  .tn-news-card img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
  }

  .tn-featured-card .tn-category,
  .tn-main-news-card .tn-category,
  .tn-news-card .tn-category {
    display: block;
    margin-top: 7px !important;
    margin-bottom: 4px !important;
    line-height: 1.2;
  }

  .tn-featured-card h3,
  .tn-main-news-card h3,
  .tn-news-card h3 {
    margin-top: 0 !important;
    margin-bottom: 0;
    line-height: 1.22;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
  }

  /* Terbaru: clean one-column list */
  .tn-latest-list,
  .tn-latest-posts,
  .tn-news-list {
    display: block !important;
  }

  .tn-latest-item,
  .tn-news-list-item {
    display: grid !important;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 10px;
    align-items: start;
    padding: 14px 0 !important;
    border-bottom: 1px solid #ececec;
  }

  .tn-latest-item img,
  .tn-news-list-item img {
    width: 110px !important;
    height: 75px !important;
    object-fit: cover;
  }

  .tn-latest-item h3,
  .tn-news-list-item h3 {
    font-size: 15px !important;
    line-height: 1.2 !important;
    margin: 2px 0 4px !important;
  }

  .tn-latest-item .tn-category,
  .tn-news-list-item .tn-category {
    margin-bottom: 3px !important;
    line-height: 1.1;
  }

  .tn-latest-item .tn-excerpt,
  .tn-news-list-item .tn-excerpt {
    display: none !important;
  }

  /* Larger mobile load-more button */
  .tn-load-more,
  #tn-load-more,
  .js-tn-load-more {
    display: block;
    width: 78% !important;
    max-width: 320px;
    min-height: 42px;
    margin: 18px auto 26px !important;
  }

  /* Footer: maintain inner gutter */
  .tn-footer .tn-container,
  .site-footer .tn-container {
    padding-left: 14px;
    padding-right: 14px;
  }
}


/* =========================================================
   THEMA News v3.1 — Mobile hero + tighter content gutters
   Desktop remains unchanged.
   ========================================================= */
@media (max-width: 767px) {

  /* HERO FULL WIDTH ON MOBILE
     Important: desktop grid has a fixed 420px height.
     Reset it here so it cannot create blank space below the slider. */
  .tn-hero-wrap {
    padding-top: 8px !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
  }

  .tn-hero-wrap > .tn-container {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .tn-hero-grid {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .tn-hero-grid .tn-hero,
  .tn-hero {
    width: 100% !important;
    height: clamp(280px, 78vw, 380px) !important;
    min-height: 280px !important;
    max-height: 380px !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }

  .tn-hero-slide,
  .tn-hero-slide > a {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
  }

  .tn-hero-slide img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  .tn-hero-side {
    display: none !important;
  }

  /* Keep headline readable on smaller phones */
  .tn-hero-grid .tn-hero-title {
    font-size: clamp(19px, 5.4vw, 27px) !important;
    line-height: 1.12 !important;
  }

  .tn-hero-content {
    left: 14px !important;
    right: 14px !important;
    bottom: 14px !important;
  }

  /* REMOVE THE LARGE HERO -> ADVERTISEMENT GAP */
  .tn-ad-section {
    padding: 8px 0 18px !important;
    margin: 0 !important;
  }

  .tn-ad-section > .tn-container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .tn-ad-slot {
    margin: 0 !important;
    width: 100% !important;
    min-height: 72px !important;
  }

  /* BERITA UTAMA:
     previous mobile rules could stack section + container padding.
     Use one compact 8px gutter only. */
  .tn-section {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .tn-section > .tn-container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .tn-mainnews-track {
    gap: 10px !important;
    grid-auto-columns: calc((100vw - 26px) / 2) !important;
  }

  .tn-mainnews-card {
    min-width: 0 !important;
  }

  .tn-mainnews-card .tn-mainnews-cat {
    margin-top: 7px !important;
    margin-bottom: 4px !important;
  }

  .tn-mainnews-card .tn-mainnews-title {
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  /* TERBARU: tighter side gutter, but retain clear item separation */
  .tn-home-news-grid.tn-container {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .tn-post-card {
    grid-template-columns: 104px minmax(0, 1fr) !important;
    gap: 9px !important;
    padding: 12px 0 !important;
  }

  .tn-post-card-image {
    width: 104px !important;
    height: 70px !important;
    aspect-ratio: auto !important;
  }

  .tn-post-card h2 {
    font-size: 15px !important;
    line-height: 1.18 !important;
    margin: 2px 0 4px !important;
  }

  /* Footer from v3.0 intentionally preserved */
}


/* =========================================================
   THEMA News v3.2 — Requested mobile homepage refinements
   Single-post styling is intentionally untouched.
   Desktop styling is intentionally untouched.
   ========================================================= */

.tn-mobile-breaking-strip{
  display:none;
}

@media (max-width: 767px) {

  /* HOME ONLY: smaller, more balanced rubric headings */
  body.home .tn-section-title,
  body.home .tn-latest-column .tn-section-title,
  body.home .tn-popular-box .tn-section-title{
    font-size:17px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
    font-weight:800 !important;
  }

  body.home .tn-section-title::after,
  body.home .tn-latest-column .tn-section-title::after,
  body.home .tn-popular-box .tn-section-title::after{
    width:42px !important;
    height:3px !important;
    margin-top:7px !important;
  }

  /* MOBILE NAVIGATION:
     compact horizontal scroll rather than desktop-like navigation */
  .tn-mobile-category-nav{
    display:block !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    white-space:nowrap !important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    background:#171717 !important;
    border-bottom:1px solid #292929;
    scroll-snap-type:x proximity;
  }

  .tn-mobile-category-nav::-webkit-scrollbar{
    display:none;
  }

  .tn-mobile-category-inner{
    display:flex !important;
    flex-wrap:nowrap !important;
    width:max-content;
    min-width:100%;
    align-items:center;
  }

  .tn-mobile-category-nav a{
    position:relative;
    display:inline-flex !important;
    align-items:center;
    flex:0 0 auto;
    min-height:38px;
    padding:0 12px !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:700 !important;
    letter-spacing:.1px;
    color:#fff !important;
    scroll-snap-align:start;
  }

  .tn-mobile-category-nav a:first-child{
    padding-left:10px !important;
  }

  .tn-mobile-category-nav .current-menu-item > a::after,
  .tn-mobile-category-nav .current_page_item > a::after{
    content:"";
    position:absolute;
    left:12px;
    right:12px;
    bottom:0;
    height:3px;
    background:var(--tn-red);
  }

  /* HOMEPAGE MOBILE TERKINI:
     fixed red label + horizontally scrollable headlines */
  body.home .tn-mobile-breaking-strip{
    display:flex;
    align-items:stretch;
    width:100%;
    min-height:38px;
    overflow:hidden;
    background:#fff;
    border-bottom:1px solid var(--tn-border);
  }

  body.home .tn-mobile-breaking-strip > strong{
    display:flex;
    flex:0 0 auto;
    align-items:center;
    padding:0 11px;
    background:var(--tn-red);
    color:#fff;
    font-size:10px;
    line-height:1;
    font-weight:800;
    z-index:2;
  }

  body.home .tn-mobile-breaking-items{
    display:flex;
    align-items:center;
    flex:1 1 auto;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    white-space:nowrap;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }

  body.home .tn-mobile-breaking-items::-webkit-scrollbar{
    display:none;
  }

  body.home .tn-mobile-breaking-items a{
    display:flex;
    align-items:center;
    flex:0 0 auto;
    max-width:82vw;
    min-height:38px;
    padding:0 15px;
    font-size:11px;
    color:var(--tn-text);
    border-right:1px solid #eee;
  }

  body.home .tn-mobile-breaking-items time{
    flex:0 0 auto;
    margin-right:7px;
    color:var(--tn-red);
    font-weight:800;
  }

  body.home .tn-mobile-breaking-items span{
    display:block;
    max-width:65vw;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  /* TERPOPULER: visible as a normal mobile section below TERBARU */
  body.home .tn-popular-sidebar{
    display:block !important;
    position:static !important;
    width:100%;
    margin-top:24px;
  }

  body.home .tn-popular-box{
    display:block !important;
    border:0 !important;
    border-top:1px solid #ececec !important;
    padding:18px 0 0 !important;
  }

  body.home .tn-popular-box .tn-section-head{
    margin-bottom:8px !important;
  }

  body.home .tn-popular-item{
    display:grid !important;
    grid-template-columns:42px minmax(0,1fr) !important;
    gap:9px !important;
    align-items:start;
    padding:13px 0 !important;
    border-bottom:1px solid #ececec !important;
  }

  body.home .tn-popular-rank{
    font-size:23px !important;
    line-height:1 !important;
    font-weight:800 !important;
  }

  body.home .tn-popular-item h3{
    margin:0 !important;
    font-size:14px !important;
    line-height:1.25 !important;
    font-weight:700 !important;
  }

  /* Sidebar advertisement remains hidden on mobile */
  body.home .tn-sidebar-ad{
    display:none !important;
  }
}


/* =========================================================
   THEMA News v3.3 — Single post reading refinement
   ========================================================= */
.tn-entry-content{
  font-weight:450;
  color:#292929;
  line-height:1.68;
}

.tn-single-popular-mobile{
  display:none;
}

@media (max-width:767px){
  .tn-entry-content{
    font-size:16.5px;
    font-weight:450;
    line-height:1.68;
    color:#292929;
  }

  .tn-single-popular-mobile{
    display:block;
    margin:24px 0 6px;
    padding-top:17px;
    border-top:1px solid #ececec;
  }

  .tn-single-popular-mobile .tn-section-title{
    font-size:17px !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    margin:0 0 14px !important;
  }

  .tn-single-popular-mobile .tn-section-title::after{
    width:42px !important;
    height:3px !important;
    margin-top:7px !important;
  }

  .tn-single-popular-mobile .tn-popular-item{
    display:grid;
    grid-template-columns:42px minmax(0,1fr);
    gap:9px;
    align-items:start;
    padding:13px 0;
    border-bottom:1px solid #ececec;
  }

  .tn-single-popular-mobile .tn-popular-rank{
    color:var(--tn-red);
    font-size:23px;
    line-height:1;
    font-weight:800;
  }

  .tn-single-popular-mobile .tn-popular-item h3{
    margin:0;
    font-size:14px;
    line-height:1.25;
    font-weight:700;
  }
}


/* =========================================================
   THEMA News v3.4 — Single post mobile typography refinement
   Reduce body-text weight only. Other layouts remain unchanged.
   ========================================================= */
@media (max-width: 767px) {
  body.single .tn-article-content,
  body.single .tn-article-content p,
  body.single .entry-content,
  body.single .entry-content p {
    font-weight: 400 !important;
    color: #292929;
    line-height: 1.68;
  }

  body.single .tn-article-content strong,
  body.single .tn-article-content b,
  body.single .entry-content strong,
  body.single .entry-content b {
    font-weight: 600 !important;
  }
}


/* =========================================================
   THEMA News v3.5 — Mobile single-post reading refinement
   ========================================================= */
@media (max-width: 767px) {
  body.single .tn-article-content,
  body.single .tn-article-content p,
  body.single .entry-content,
  body.single .entry-content p {
    font-weight: 400 !important;
    line-height: 1.55 !important;
    color: #3d3d3d !important;
  }
}


/* THEMA News v3.6 — tighter mobile article line spacing */
@media (max-width: 767px) {
  body.single .tn-article-content,
  body.single .tn-article-content p,
  body.single .entry-content,
  body.single .entry-content p {
    line-height: 1.50 !important;
  }
}


/* THEMA News v3.7 — mobile single-post line-height */
@media (max-width: 767px) {
  body.single .tn-article-content,
  body.single .tn-article-content p,
  body.single .entry-content,
  body.single .entry-content p {
    line-height: 1.40 !important;
  }
}


/* THEMA News v3.8 — tighter mobile article typography */
@media (max-width: 767px) {
  body.single .tn-article-content,
  body.single .tn-article-content p,
  body.single .entry-content,
  body.single .entry-content p {
    line-height: 1.30 !important;
  }
}


/* THEMA News v3.9 — correct mobile single-post typography selector */
@media (max-width: 767px) {
  body.single-post .tn-entry-content {
    font-weight: 400 !important;
    line-height: 1.45 !important;
    color: #3d3d3d !important;
  }

  body.single-post .tn-entry-content p,
  body.single-post .tn-entry-content li {
    font-weight: inherit;
    line-height: inherit;
    color: inherit;
  }
}


/* =========================================================
   THEMA News v3.10 — mobile single-post typography
   Reference: clean Indonesian news-portal body text
   ========================================================= */
@media (max-width: 767px) {
  body.single-post .tn-entry-content {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: -0.01em;
    color: #333333 !important;
  }

  body.single-post .tn-entry-content p,
  body.single-post .tn-entry-content li {
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: 400 !important;
    line-height: inherit !important;
    letter-spacing: inherit;
    color: inherit !important;
  }

  body.single-post .tn-entry-content strong,
  body.single-post .tn-entry-content b {
    font-weight: 700 !important;
  }

  body.single-post .tn-entry-content a {
    font-weight: 700;
  }
}


/* =========================================================
   THEMA News v3.11 — Static WordPress Pages
   Scoped to .tn-static-page so existing homepage/posts remain unchanged.
   ========================================================= */
.tn-static-page{
  padding:32px 0 48px;
}
.tn-static-page-inner{
  max-width:900px;
  margin:0 auto;
}
.tn-static-page-header{
  margin-bottom:24px;
  padding-bottom:14px;
  border-bottom:1px solid #e5e5e5;
}
.tn-static-page-title{
  margin:0;
  font-size:clamp(30px,4vw,44px);
  line-height:1.12;
  font-weight:800;
  color:#111;
}
.tn-static-page-content{
  font-size:17px;
  line-height:1.65;
  color:#333;
}
.tn-static-page-content > *:first-child{margin-top:0;}
.tn-static-page-content p{margin:0 0 1.15em;}
.tn-static-page-content h2,
.tn-static-page-content h3,
.tn-static-page-content h4{
  color:#111;
  line-height:1.25;
  margin:1.5em 0 .6em;
}
.tn-static-page-content img{
  max-width:100%;
  height:auto;
}
.tn-static-page-content figure{max-width:100%;margin-left:0;margin-right:0;}
.tn-static-page-content a{text-decoration:underline;text-underline-offset:2px;}
.tn-static-page-content ul,
.tn-static-page-content ol{padding-left:1.35em;}
@media (max-width:767px){
  .tn-static-page{padding:22px 0 36px;}
  .tn-static-page .tn-container{padding-left:14px;padding-right:14px;}
  .tn-static-page-header{margin-bottom:18px;padding-bottom:12px;}
  .tn-static-page-title{font-size:28px;line-height:1.15;}
  .tn-static-page-content{font-size:16px;line-height:1.55;}
}


/* =========================================================
   THEMA News v3.12 — Editorial Featured Image Caption
   Compact news-portal style inspired by Indonesian news sites.
   ========================================================= */
.tn-editorial-featured-caption{
  margin:7px 0 0;
  font-size:12px;
  line-height:1.45;
  font-weight:400;
  color:#777;
  text-align:left;
}
.tn-editorial-featured-caption strong{
  font-weight:600;
  color:#666;
}
@media (max-width:767px){
  .tn-editorial-featured-caption{
    margin-top:6px;
    font-size:11.5px;
    line-height:1.4;
    color:#777;
  }
}


/* =========================================================
   THEMA News v3.13 — Featured caption/content spacing
   ========================================================= */
.tn-editorial-featured-caption{
  margin-bottom:24px !important;
}
@media (max-width:767px){
  .tn-editorial-featured-caption{
    margin-bottom:30px !important;
  }
}


/* =========================================================
   THEMA News v3.14 — Caption separator + article opening
   ========================================================= */
.tn-editorial-featured-caption{
  padding-bottom:16px !important;
  margin-bottom:30px !important;
  border-bottom:1px solid #d9d9d9;
}

@media (max-width:767px){
  .tn-editorial-featured-caption{
    padding-bottom:14px !important;
    margin-bottom:28px !important;
    border-bottom:1px solid #d6d6d6;
  }
}

/* Automatic emphasis for the first two words of the first article paragraph. */
body.single-post .tn-entry-content .tn-opening-two-words{
  font-weight:700;
  color:inherit;
}


/* =========================================================
   THEMA News v3.15 — Guaranteed visible caption separator
   ========================================================= */
.tn-caption.tn-editorial-featured-caption{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  padding-bottom:16px !important;
  margin:6px 0 30px !important;
  border-bottom:1px solid #bdbdbd !important;
}

@media (max-width:767px){
  .tn-caption.tn-editorial-featured-caption{
    display:block !important;
    width:100% !important;
    box-sizing:border-box !important;
    padding-bottom:14px !important;
    margin:6px 0 28px !important;
    border-bottom:1px solid #b8b8b8 !important;
  }
}


/* =========================================================
   THEMA News v3.16 — Tighter separator-to-article spacing
   ========================================================= */
.tn-caption.tn-editorial-featured-caption{
  margin-bottom:12px !important;
}

@media (max-width:767px){
  .tn-caption.tn-editorial-featured-caption{
    margin-bottom:10px !important;
  }

  body.single-post .tn-entry-content > p:first-child{
    margin-top:0 !important;
  }
}
