/*
Theme Name: Berita Online
Theme URI: https://example.com/berita-online
Author: Custom
Author URI: https://example.com
Description: Tema WordPress untuk portal berita online lengkap dengan slider berita, 6 zona iklan (atas & bawah menu header, widget tengah & kanan, atas/tengah/bawah artikel), dan footer 3 kolom (identitas web, widget, dan peta lokasi kantor).
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
Text Domain: berita-online
Tags: news, blog, grid-layout, two-columns, right-sidebar, custom-menu, featured-images, footer-widgets, theme-options, translation-ready
*/

/* ========== RESET ========== */
*,*::before,*::after{box-sizing:border-box;}
body,h1,h2,h3,h4,h5,h6,p,ul,ol,figure{margin:0;padding:0;}
img{max-width:100%;height:auto;display:block;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
button{cursor:pointer;font-family:inherit;}

:root{
	--brand: #c0121a;
	--brand-dark: #8f0d13;
	--dark: #1b1b1b;
	--gray-900:#222;
	--gray-700:#4a4a4a;
	--gray-500:#767676;
	--gray-200:#e6e6e6;
	--gray-100:#f4f4f4;
	--white:#fff;
	--radius:6px;
	--maxw:1200px;
}

body{
	font-family: "Segoe UI", Roboto, Arial, sans-serif;
	color: var(--gray-900);
	background: var(--gray-100);
	line-height:1.6;
}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px;}

/* ========== IKLAN / AD BLOCKS ========== */
.ad-slot{
	background:var(--white);
	border:1px dashed #cfcfcf;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	color:#9a9a9a;
	font-size:12px;
	overflow:hidden;
	margin:14px 0;
	min-height:60px;
}
.ad-slot .widget{width:100%;}
.ad-label{position:absolute;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#b5b5b5;margin-bottom:2px;}
.ad-header-top{margin:0;border-radius:0;min-height:50px;background:var(--gray-100);border:none;border-bottom:1px solid var(--gray-200);}
.ad-header-bottom{margin:0 0 18px;}
.ad-in-article{min-height:90px;}

/* ========== TOP AD BAR ========== */
.top-ad-bar{width:100%;background:var(--gray-100);}
.top-ad-bar .wrap{padding:6px 16px;}

/* ========== HEADER ========== */
.site-header{background:var(--white);border-bottom:3px solid var(--brand);}
.site-branding-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;flex-wrap:wrap;gap:10px;}
.site-title{font-size:30px;font-weight:800;letter-spacing:-1px;color:var(--brand);}
.site-title a{color:var(--brand);}
.site-description{font-size:13px;color:var(--gray-500);margin-top:2px;}
.header-date{font-size:13px;color:var(--gray-500);}

.main-navigation{background:var(--dark);}
.main-navigation .wrap{display:flex;align-items:center;justify-content:space-between;}
.main-navigation ul{display:flex;flex-wrap:wrap;}
.main-navigation ul li a{
	display:block;padding:14px 16px;color:var(--white);font-weight:600;font-size:14px;text-transform:uppercase;letter-spacing:.03em;
	border-right:1px solid rgba(255,255,255,.08);
}
.main-navigation ul li a:hover{background:var(--brand);}
.menu-toggle{display:none;background:none;border:0;color:var(--white);padding:12px 16px;font-size:20px;}

.below-header-ad{background:var(--white);}

/* ========== SLIDER ========== */
.news-slider{position:relative;overflow:hidden;border-radius:var(--radius);background:#000;margin:20px 0;max-height:440px;}
.news-slider .slide{position:relative;display:none;}
.news-slider .slide.is-active{display:block;}
.news-slider .slide img{width:100%;height:440px;object-fit:cover;opacity:.85;}
.news-slider .slide-caption{
	position:absolute;left:0;right:0;bottom:0;padding:24px 30px;
	background:linear-gradient(0deg, rgba(0,0,0,.85) 10%, rgba(0,0,0,0) 100%);
}
.news-slider .slide-cat{display:inline-block;background:var(--brand);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:3px 10px;border-radius:3px;margin-bottom:10px;}
.news-slider .slide-title{color:#fff;font-size:26px;font-weight:800;line-height:1.25;max-width:800px;}
.news-slider .slide-title a{color:#fff;}
.news-slider .slide-excerpt{color:#eaeaea;font-size:14px;margin-top:8px;max-width:700px;display:none;}
.slider-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.4);color:#fff;border:0;width:40px;height:40px;border-radius:50%;font-size:20px;z-index:5;}
.slider-nav:hover{background:var(--brand);}
.slider-prev{left:14px;}
.slider-next{right:14px;}
.slider-dots{position:absolute;right:20px;bottom:16px;display:flex;gap:6px;z-index:5;}
.slider-dots button{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.5);border:0;padding:0;}
.slider-dots button.is-active{background:var(--brand);}

/* ========== LAYOUT ========== */
.content-layout{display:grid;grid-template-columns:2.3fr 1fr;gap:26px;padding:26px 0;}
@media (max-width:900px){.content-layout{grid-template-columns:1fr;}}

.section-title{font-size:19px;font-weight:800;text-transform:uppercase;color:var(--dark);border-left:5px solid var(--brand);padding-left:10px;margin-bottom:16px;}

/* ========== NEWS LIST / CARDS ========== */
.news-list{display:flex;flex-direction:column;gap:18px;}
.news-card{background:var(--white);border-radius:var(--radius);overflow:hidden;display:flex;gap:16px;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.news-card .thumb{flex:0 0 220px;}
.news-card .thumb img{width:220px;height:150px;object-fit:cover;}
.news-card .body{padding:14px 16px 14px 0;flex:1;}
.news-card .cat{color:var(--brand);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;}
.news-card h2{font-size:18px;font-weight:800;margin:6px 0;line-height:1.3;}
.news-card h2 a:hover{color:var(--brand);}
.news-card .excerpt{color:var(--gray-700);font-size:14px;}
.news-card .meta{margin-top:8px;font-size:12px;color:var(--gray-500);}
@media (max-width:600px){.news-card{flex-direction:column;}.news-card .thumb,.news-card .thumb img{width:100%;}}

.pagination{margin-top:22px;display:flex;gap:8px;flex-wrap:wrap;}
.pagination a,.pagination span{background:#fff;padding:8px 13px;border-radius:4px;font-size:13px;color:var(--gray-700);}
.pagination .current{background:var(--brand);color:#fff;}

/* ========== SIDEBAR ========== */
.sidebar .widget{background:var(--white);border-radius:var(--radius);padding:18px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.sidebar .widget-title{font-size:15px;font-weight:800;text-transform:uppercase;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid var(--brand);}
.sidebar .ad-slot{border-radius:var(--radius);box-shadow:0 1px 3px rgba(0,0,0,.06);background:#fff;border:1px dashed #d8d8d8;}

/* ========== SINGLE ARTICLE ========== */
.single-article{background:var(--white);border-radius:var(--radius);padding:26px;box-shadow:0 1px 3px rgba(0,0,0,.06);}
.single-article .cat{color:var(--brand);font-weight:700;text-transform:uppercase;font-size:12px;}
.single-article h1{font-size:28px;font-weight:800;margin:8px 0 10px;line-height:1.3;}
.single-article .meta{color:var(--gray-500);font-size:13px;margin-bottom:16px;}
.single-article .featured-image{margin:0 0 18px;border-radius:var(--radius);overflow:hidden;}
.single-article .entry-content p{margin-bottom:16px;font-size:16px;color:#333;}
.single-article .entry-content h2,.single-article .entry-content h3{margin:20px 0 10px;}
.single-article .entry-content img{border-radius:var(--radius);margin:14px 0;}

/* ========== FOOTER ========== */
.site-footer{background:var(--dark);color:#d8d8d8;margin-top:30px;}
.footer-columns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;padding:40px 0;}
@media (max-width:800px){.footer-columns{grid-template-columns:1fr;}}
.footer-columns h3{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--brand);}
.footer-col-1 .site-name{font-size:20px;font-weight:800;color:#fff;margin-bottom:10px;}
.footer-col-1 p{font-size:13px;color:#bdbdbd;margin-bottom:8px;display:flex;gap:8px;align-items:flex-start;}
.footer-col-2 .widget-title{color:#fff;font-size:14px;margin-bottom:10px;}
.footer-col-2 ul li{border-bottom:1px solid rgba(255,255,255,.08);padding:7px 0;font-size:13px;}
.footer-col-2 ul li a:hover{color:var(--brand);}
.footer-col-3 iframe{width:100%;height:220px;border:0;border-radius:var(--radius);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:16px 0;text-align:center;font-size:12px;color:#9a9a9a;}

/* Responsive header */
@media (max-width:782px){
	.main-navigation .wrap{flex-wrap:wrap;}
	.main-navigation ul{display:none;flex-direction:column;width:100%;}
	.main-navigation ul.is-open{display:flex;}
	.menu-toggle{display:block;margin-left:auto;}
	.main-navigation ul li a{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);}
	.news-slider .slide img,.news-slider{height:auto;max-height:260px;}
	.news-slider .slide img{height:260px;}
	.news-slider .slide-title{font-size:18px;}
}
