/*
Theme Name: KongoTech Structure
Theme URI: https://kongotech.org/
Author: OpenAI
Description: A lightweight magazine/news WordPress theme inspired by the content structure of KongoTech.org. Responsive, category-driven, SEO-friendly, and auto-hides empty sections.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.8
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: kongotech-structure
*/

:root{
  --kt-bg:#ffffff;
  --kt-surface:#f7f8fa;
  --kt-text:#15171a;
  --kt-muted:#70757d;
  --kt-border:#e8eaed;
  --kt-accent:#f04b23;
  --kt-accent-2:#101114;
  --kt-radius:10px;
  --kt-shadow:0 10px 28px rgba(20,24,30,.08);
  --kt-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--kt-bg);color:var(--kt-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none} a:hover{color:var(--kt-accent)}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 32px),var(--kt-container));margin-inline:auto}
.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}

/* Header */
.kt-topbar{border-bottom:1px solid var(--kt-border);background:#fff;font-size:13px;color:var(--kt-muted)}
.kt-topbar .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.kt-top-links{display:flex;gap:18px;flex-wrap:wrap}
.kt-brand-row{padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}
.kt-logo{display:flex;align-items:center;gap:12px;min-width:0}
.kt-logo .custom-logo{max-height:62px;width:auto}
.kt-site-title{font-size:34px;line-height:1;font-weight:900;letter-spacing:-1.5px}
.kt-site-title span{color:var(--kt-accent)}
.kt-site-tagline{color:var(--kt-muted);font-size:12px;margin-top:7px}
.kt-header-ad{width:min(100%,560px);min-height:74px;border:1px dashed #cfd3d8;background:var(--kt-surface);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--kt-muted);border-radius:6px;padding:10px}
.kt-nav-wrap{background:var(--kt-accent-2);color:#fff;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.kt-nav-inner{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.kt-primary-menu,.kt-primary-menu ul{list-style:none;margin:0;padding:0}
.kt-primary-menu{display:flex;align-items:stretch;gap:2px}
.kt-primary-menu>li{position:relative}
.kt-primary-menu>li>a{display:flex;align-items:center;min-height:54px;padding:0 15px;font-size:14px;font-weight:700}
.kt-primary-menu>li:hover>a,.kt-primary-menu>.current-menu-item>a{background:rgba(255,255,255,.08);color:#fff}
.kt-primary-menu .sub-menu{display:none;position:absolute;left:0;top:100%;width:250px;background:#fff;color:var(--kt-text);box-shadow:var(--kt-shadow);padding:8px;border-radius:0 0 8px 8px;z-index:1200}
.kt-primary-menu li:hover>.sub-menu{display:block}
.kt-primary-menu .sub-menu li{position:relative}
.kt-primary-menu .sub-menu a{display:block;padding:10px 12px;font-size:13px;border-radius:5px}
.kt-primary-menu .sub-menu a:hover{background:var(--kt-surface)}
.kt-primary-menu .sub-menu .sub-menu{left:100%;top:-8px}
.kt-menu-toggle{display:none;background:transparent;color:#fff;border:0;font-size:24px;padding:8px;cursor:pointer}
.kt-search-button{background:transparent;border:0;color:#fff;font-size:18px;cursor:pointer;padding:8px}

/* Headline / hero */
.kt-home{padding:28px 0 48px}
.kt-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.75fr);gap:24px;margin-bottom:38px}
.kt-feature{position:relative;min-height:440px;border-radius:var(--kt-radius);overflow:hidden;background:#1f2329}
.kt-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.82}
.kt-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.82) 100%)}
.kt-feature-content{position:absolute;left:0;right:0;bottom:0;z-index:2;color:#fff;padding:30px}
.kt-cat{display:inline-block;color:var(--kt-accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.kt-feature .kt-cat{background:var(--kt-accent);color:#fff;padding:5px 9px;border-radius:4px}
.kt-feature h1,.kt-feature h2{font-size:34px;line-height:1.15;margin:8px 0 12px;letter-spacing:-.7px}
.kt-meta{font-size:12px;color:var(--kt-muted);display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.kt-feature .kt-meta{color:#e7e7e7}
.kt-hero-side{display:grid;grid-template-rows:1fr 1fr;gap:18px}
.kt-mini-feature{position:relative;overflow:hidden;border-radius:var(--kt-radius);min-height:210px;background:#222}
.kt-mini-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.76}
.kt-mini-feature:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.8))}
.kt-mini-feature-content{position:absolute;z-index:2;left:0;right:0;bottom:0;color:#fff;padding:18px}
.kt-mini-feature h3{font-size:19px;line-height:1.3;margin:4px 0 8px}

/* Sections */
.kt-section{margin:40px 0}
.kt-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;border-bottom:2px solid var(--kt-border);position:relative}
.kt-section-head:before{content:"";position:absolute;left:0;bottom:-2px;width:62px;height:2px;background:var(--kt-accent)}
.kt-section-head h2{margin:0 0 12px;font-size:23px;line-height:1.25;letter-spacing:-.35px}
.kt-section-head a{font-size:12px;color:var(--kt-muted);font-weight:700;margin-bottom:12px}
.kt-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.kt-card{min-width:0}
.kt-thumb{aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:#eceff3;margin-bottom:13px}
.kt-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.kt-card:hover .kt-thumb img{transform:scale(1.035)}
.kt-card h3{font-size:17px;line-height:1.35;margin:5px 0 8px;letter-spacing:-.15px}
.kt-card p{font-size:13px;color:var(--kt-muted);margin:8px 0 0}
.kt-two-col{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:34px;align-items:start}
.kt-list{display:grid;gap:20px}
.kt-list-item{display:grid;grid-template-columns:230px 1fr;gap:18px;align-items:start;padding-bottom:20px;border-bottom:1px solid var(--kt-border)}
.kt-list-item .kt-thumb{margin:0;aspect-ratio:16/10}
.kt-list-item h3{font-size:20px;line-height:1.35;margin:4px 0 8px}
.kt-list-item p{color:var(--kt-muted);font-size:14px;margin:9px 0}
.kt-readmore{font-size:12px;font-weight:800;color:var(--kt-accent)}

/* Sidebar */
.kt-sidebar{display:grid;gap:26px;position:sticky;top:78px}
.widget{border:1px solid var(--kt-border);border-radius:8px;padding:20px;background:#fff}
.widget-title{font-size:18px;margin:0 0 16px;padding-bottom:11px;border-bottom:2px solid var(--kt-border);position:relative}
.widget-title:after{content:"";position:absolute;left:0;bottom:-2px;width:45px;height:2px;background:var(--kt-accent)}
.widget ul{list-style:none;margin:0;padding:0}.widget li{padding:8px 0;border-bottom:1px solid var(--kt-border);font-size:14px}.widget li:last-child{border:0}
.kt-newsletter{background:var(--kt-accent-2);color:#fff;border:0}
.kt-newsletter p{color:#c8cbd0;font-size:13px}.kt-newsletter input[type=email]{width:100%;border:0;border-radius:5px;padding:11px 12px;margin:8px 0}.kt-newsletter button{width:100%;border:0;border-radius:5px;background:var(--kt-accent);color:#fff;padding:11px 12px;font-weight:800;cursor:pointer}

/* Archive/search */
.kt-page-head{padding:36px 0;background:var(--kt-surface);border-bottom:1px solid var(--kt-border);margin-bottom:32px}.kt-page-head h1{margin:0;font-size:34px}.kt-page-head p{color:var(--kt-muted);max-width:780px;margin-bottom:0}
.kt-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.navigation.pagination{margin-top:34px}.nav-links{display:flex;gap:8px;flex-wrap:wrap}.page-numbers{padding:8px 12px;border:1px solid var(--kt-border);border-radius:5px}.page-numbers.current{background:var(--kt-accent);border-color:var(--kt-accent);color:#fff}

/* Single */
.kt-single-wrap{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;padding:36px 0 54px}
.kt-breadcrumbs{font-size:12px;color:var(--kt-muted);margin-bottom:14px}.kt-single-title{font-size:42px;line-height:1.15;letter-spacing:-.8px;margin:7px 0 14px}.kt-single-meta{margin-bottom:22px}.kt-single-hero{border-radius:10px;overflow:hidden;margin-bottom:28px}.kt-entry-content{font-size:17px}.kt-entry-content h2{font-size:30px;line-height:1.25;margin-top:36px}.kt-entry-content h3{font-size:24px;line-height:1.3;margin-top:30px}.kt-entry-content a{color:var(--kt-accent);text-decoration:underline}.kt-entry-content img{margin:24px auto;border-radius:8px}.kt-entry-content blockquote{margin:28px 0;padding:18px 22px;border-left:4px solid var(--kt-accent);background:var(--kt-surface)}
.kt-author-box{display:grid;grid-template-columns:72px 1fr;gap:18px;margin:38px 0;padding:22px;border:1px solid var(--kt-border);border-radius:8px}.kt-author-box img{border-radius:50%}
.kt-related{margin-top:42px}

/* Footer */
.kt-footer{background:#111318;color:#d9dce1;margin-top:54px}.kt-footer-top{padding:48px 0;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}.kt-footer h3{font-size:16px;color:#fff;margin:0 0 15px}.kt-footer p,.kt-footer li,.kt-footer a{font-size:13px;color:#aeb3bb}.kt-footer ul{list-style:none;margin:0;padding:0}.kt-footer li{padding:5px 0}.kt-footer-brand{font-size:27px;font-weight:900;color:#fff!important}.kt-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:17px 0;font-size:12px;color:#8e949d;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* Utilities */
.kt-empty-note{padding:18px;background:var(--kt-surface);border:1px solid var(--kt-border);border-radius:8px;color:var(--kt-muted)}
.kt-placeholder{width:100%;height:100%;min-height:120px;background:linear-gradient(135deg,#eceff2,#dfe3e8);display:grid;place-items:center;color:#8b9199;font-size:12px}

@media(max-width:1000px){
 .kt-card-grid{grid-template-columns:repeat(2,1fr)}
 .kt-two-col,.kt-single-wrap{grid-template-columns:1fr}.kt-sidebar{position:static}
 .kt-footer-top{grid-template-columns:repeat(2,1fr)}
 .kt-header-ad{max-width:420px}
}
@media(max-width:820px){
 .kt-top-links{display:none}.kt-brand-row{padding:18px 0}.kt-header-ad{display:none}.kt-site-title{font-size:29px}
 .kt-menu-toggle{display:block}.kt-nav-inner{min-height:50px}.kt-primary-menu{display:none;position:absolute;left:0;right:0;top:100%;background:#111318;max-height:calc(100vh - 50px);overflow:auto;padding:10px 16px 18px;box-shadow:var(--kt-shadow)}.kt-primary-menu.is-open{display:block}.kt-primary-menu>li>a{min-height:auto;padding:11px 5px}.kt-primary-menu .sub-menu{display:block!important;position:static;width:auto;background:transparent;color:#cfd3d8;box-shadow:none;padding:0 0 0 15px}.kt-primary-menu .sub-menu a{padding:7px 5px}.kt-primary-menu .sub-menu a:hover{background:transparent;color:#fff}
 .kt-hero-grid{grid-template-columns:1fr}.kt-feature{min-height:390px}.kt-hero-side{grid-template-columns:1fr 1fr;grid-template-rows:auto}.kt-mini-feature{min-height:210px}
 .kt-archive-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
 .container{width:min(calc(100% - 22px),var(--kt-container))}.kt-topbar .container{min-height:34px}.kt-topbar{font-size:11px}
 .kt-home{padding-top:16px}.kt-hero-grid{gap:14px}.kt-feature{min-height:340px}.kt-feature-content{padding:20px}.kt-feature h1,.kt-feature h2{font-size:27px}.kt-hero-side{grid-template-columns:1fr}.kt-mini-feature{min-height:190px}
 .kt-card-grid,.kt-archive-grid{grid-template-columns:1fr}.kt-section{margin:32px 0}.kt-section-head h2{font-size:21px}
 .kt-list-item{grid-template-columns:112px 1fr;gap:13px}.kt-list-item h3{font-size:16px}.kt-list-item p{display:none}
 .kt-single-wrap{padding-top:22px}.kt-single-title{font-size:32px}.kt-entry-content{font-size:16px}.kt-entry-content h2{font-size:26px}.kt-entry-content h3{font-size:21px}
 .kt-footer-top{grid-template-columns:1fr}.kt-footer-bottom{display:block}.kt-footer-bottom span{display:block;margin:4px 0}
}
