/*
Theme Name: Arquitetura Nerd
Theme URI: https://arquiteturanerd.com.br
Author: Arquitetura Nerd
Description: Tema oficial do Arquitetura Nerd — identidade visual conforme Manual da Marca V1 2026.
Version: 2.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: arquitetura-nerd
*/

/* ============================================================
   DESIGN TOKENS — Manual da Marca V1 2026
   Paleta oficial:
     Azul Profundo  #15285E  (60% — fundo e estrutura)
     Azul Marinho   #1F2F73  (60% — fundo e estrutura)
     Branco Neve    #F5F6FA  (25% — texto e leitura)
     Grafite        #151922  (25% — texto sobre claro)
     Amarelo Vibrante #F4BE1A (10% — destaques e CTAs)
     Vermelho Acento  #F04A2A (5% — uso pontual)
   ============================================================ */
:root{
  /* Paleta oficial */
  --navy-deep:    #15285E;  /* Azul Profundo */
  --navy:         #1F2F73;  /* Azul Marinho */
  --navy-light:   #2B3D8C;  /* derivado — hover states */
  --gold:         #F4BE1A;  /* Amarelo Vibrante */
  --gold-dark:    #D1A012;  /* derivado — hover do amarelo */
  --graphite:     #151922;  /* Grafite */
  --snow:         #F5F6FA;  /* Branco Neve */
  --red-accent:   #F04A2A;  /* Vermelho Acento */
  --white:        #FFFFFF;

  /* Neutros derivados para UI (mantendo a base azul/grafite) */
  --gray-100:     #EAEBF2;
  --gray-200:     #D0D2E0;
  --gray-500:     #6B7080;
  --text-body:    #2B2E3A;
  --text-muted:   #6B7080;

  /* Tipografia — conforme Manual da Marca pág. 5 */
  --font-display: 'Oswald', 'Chakra Petch', sans-serif;       /* Títulos */
  --font-sub:     'Montserrat', sans-serif;                    /* Subtítulos */
  --font-body:    'Inter', 'Poppins', sans-serif;               /* Corpo de texto */
  --font-mono:    'JetBrains Mono', monospace;

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;

  --max-w: 1200px;
  --sidebar-w: 300px;
  --gap: 24px;
}

/* ============================================================
   RESET
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--text-body);background:var(--white);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{cursor:pointer;font-family:inherit}

/* ============================================================
   LAYOUT
   ============================================================ */
.container{max-width:var(--max-w);margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

/* ============================================================
   TOP BAR
   ============================================================ */
.top-bar{background:var(--navy-deep);padding:6px 0;border-bottom:1px solid rgba(244,190,26,0.08)}
.top-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}
.top-bar-left{font-size:11px;color:rgba(255,255,255,0.45);font-family:var(--font-mono);letter-spacing:0.06em}
.top-bar-left span{color:var(--gold);margin-right:4px}
.top-social{display:flex;gap:14px}
.top-social a{color:rgba(255,255,255,0.45);font-size:13px;transition:color .2s}
.top-social a:hover{color:var(--gold)}

/* ============================================================
   HEADER
   ============================================================ */
.site-header{background:var(--navy);position:sticky;top:0;z-index:200;box-shadow:0 2px 20px rgba(0,0,0,0.25)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px;gap:24px}

/* Logo — usa o arquivo oficial /assets/logo.png via header.php */
.site-logo{display:flex;align-items:center;gap:10px;line-height:1}
.site-logo img{height:52px;width:52px;object-fit:contain;border-radius:6px}
.site-logo .logo-text{display:flex;flex-direction:column;line-height:1.05}
.site-logo .logo-text .lt-top{font-family:var(--font-display);font-weight:600;font-size:11px;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,255,255,0.8)}
.site-logo .logo-text .lt-nerd{font-family:var(--font-display);font-weight:700;font-size:26px;letter-spacing:-0.01em;color:var(--gold)}

/* Primary Nav */
.primary-nav ul{display:flex;align-items:center;gap:4px}
.primary-nav a{display:block;padding:8px 14px;font-size:13px;font-weight:600;letter-spacing:0.05em;text-transform:uppercase;color:rgba(255,255,255,0.75);border-radius:var(--radius-sm);transition:color .2s,background .2s;font-family:var(--font-sub)}
.primary-nav a:hover,.primary-nav .current-menu-item>a,.primary-nav .current-menu-ancestor>a{color:var(--gold)}
.primary-nav .nav-podcast>a{color:var(--gold);border:1px solid rgba(244,190,26,0.4);padding:7px 14px}
.primary-nav .nav-podcast>a:hover{background:rgba(244,190,26,0.12)}

/* Dropdown */
.primary-nav .menu-item-has-children{position:relative}
.primary-nav .sub-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;min-width:200px;background:var(--navy-deep);border:1px solid rgba(244,190,26,0.15);border-radius:var(--radius-md);padding:8px 0;box-shadow:0 8px 24px rgba(0,0,0,0.4);z-index:300}
.primary-nav .menu-item-has-children:hover .sub-menu{display:block}
.primary-nav .sub-menu li{border:none}
.primary-nav .sub-menu a{font-size:13px;padding:9px 16px;letter-spacing:0;text-transform:none;border-radius:0;color:rgba(255,255,255,0.7);font-family:var(--font-body);font-weight:400}
.primary-nav .sub-menu a:hover{color:var(--gold);background:rgba(255,255,255,0.04)}

/* Search */
.header-search{display:flex;align-items:center;gap:8px}
.header-search form{display:flex;border:1px solid rgba(255,255,255,0.15);border-radius:var(--radius-sm);overflow:hidden}
.header-search input{background:rgba(255,255,255,0.07);border:none;padding:7px 12px;color:var(--white);font-size:13px;width:160px;outline:none;font-family:var(--font-body)}
.header-search input::placeholder{color:rgba(255,255,255,0.35)}
.header-search button{background:var(--gold);border:none;padding:7px 12px;color:var(--navy-deep);font-weight:700;font-size:13px;transition:background .2s}
.header-search button:hover{background:var(--gold-dark)}

/* Mobile toggle */
.menu-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:6px;color:var(--white)}
.menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:.3s}

/* ============================================================
   HERO / FEATURED SLIDER
   ============================================================ */
.hero-section{background:var(--navy-deep);padding:28px 0 0}
.hero-grid{display:grid;grid-template-columns:1fr 340px;gap:var(--gap);align-items:start}

.hero-main{position:relative;border-radius:var(--radius-md);overflow:hidden}
.hero-main img{width:100%;height:400px;object-fit:cover;display:block}
.hero-main-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(21,40,94,.96) 0%,rgba(21,40,94,.32) 55%,transparent 100%)}
.hero-main-body{position:absolute;bottom:0;left:0;right:0;padding:28px}
.hero-main .card-cats{margin-bottom:10px}
.hero-main .card-title{font-family:var(--font-display);font-size:26px;font-weight:700;color:var(--white);line-height:1.2;letter-spacing:-0.01em;margin-bottom:8px}
.hero-main .card-title a:hover{color:var(--gold)}
.hero-main .card-meta-row{display:flex;align-items:center;gap:12px}
.hero-main .card-date{font-size:12px;color:rgba(255,255,255,0.55);font-family:var(--font-mono)}
.hero-main .card-read{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--gold);letter-spacing:0.04em;text-transform:uppercase;transition:gap .2s;font-family:var(--font-sub)}
.hero-main .card-read:hover{gap:10px}

.hero-side{display:flex;flex-direction:column;gap:0}
.hero-side-item{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid rgba(244,190,26,0.1);align-items:center}
.hero-side-item:last-child{border-bottom:none}
.hero-side-item .thumb{border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:16/10}
.hero-side-item .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.hero-side-item:hover .thumb img{transform:scale(1.05)}
.hero-side-item .info .card-cats{margin-bottom:4px}
.hero-side-item .title{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--white);line-height:1.3;transition:color .2s}
.hero-side-item:hover .title{color:var(--gold)}
.hero-side-item .date{font-size:11px;color:rgba(255,255,255,0.4);font-family:var(--font-mono);margin-top:4px}

/* ============================================================
   TICKER / BREAKING BAR
   ============================================================ */
.ticker-bar{background:var(--gold);padding:8px 0;overflow:hidden}
.ticker-inner{display:flex;align-items:center;gap:0}
.ticker-label{background:var(--navy-deep);color:var(--gold);font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:4px 16px;white-space:nowrap;margin-right:20px;border-radius:2px;font-family:var(--font-sub)}
.ticker-track{display:flex;gap:40px;animation:ticker 30s linear infinite;white-space:nowrap}
.ticker-track:hover{animation-play-state:paused}
.ticker-item{font-size:13px;font-weight:600;color:var(--navy-deep);font-family:var(--font-body)}
.ticker-item a:hover{text-decoration:underline}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ============================================================
   CATEGORY TABS
   ============================================================ */
.cat-tabs{background:var(--navy-deep);padding:0}
.cat-tabs-inner{display:flex;overflow-x:auto;scrollbar-width:none;gap:0;border-bottom:2px solid rgba(244,190,26,0.08)}
.cat-tabs-inner::-webkit-scrollbar{display:none}
.cat-tab{flex:0 0 auto;padding:14px 20px;font-size:12px;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;color:rgba(255,255,255,0.45);border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s;white-space:nowrap;font-family:var(--font-sub)}
.cat-tab:hover{color:var(--white)}
.cat-tab.active,.cat-tab:hover{color:var(--gold);border-bottom-color:var(--gold)}

/* ============================================================
   MAIN CONTENT AREA
   ============================================================ */
.site-main{padding:36px 0 60px}
.main-layout{display:grid;grid-template-columns:1fr var(--sidebar-w);gap:40px;align-items:start}

.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:3px solid var(--navy-deep)}
.section-title{font-family:var(--font-display);font-size:16px;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--navy-deep);position:relative;padding-left:14px}
.section-title::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:16px;background:var(--gold);border-radius:2px}
.section-link{font-size:12px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:0.05em;opacity:.55;transition:opacity .2s;font-family:var(--font-sub)}
.section-link:hover{opacity:1;color:var(--gold-dark)}

.posts-grid-main{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}

/* ============================================================
   POST CARD
   ============================================================ */
.post-card{background:var(--white);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--gray-100);transition:box-shadow .25s,transform .25s;display:flex;flex-direction:column}
.post-card:hover{box-shadow:0 6px 24px rgba(21,40,94,.14);transform:translateY(-3px)}
.post-card .card-thumb{aspect-ratio:16/10;overflow:hidden;position:relative}
.post-card .card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post-card:hover .card-thumb img{transform:scale(1.05)}
.post-card .card-body{padding:16px;flex:1;display:flex;flex-direction:column}
.post-card .card-title{font-family:var(--font-display);font-size:15px;font-weight:700;color:var(--navy-deep);line-height:1.3;margin-bottom:8px;letter-spacing:-0.005em;transition:color .2s;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-card:hover .card-title{color:var(--navy)}
.post-card .card-excerpt{font-size:13px;color:var(--text-muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px;font-family:var(--font-body)}
.post-card .card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:10px;border-top:1px solid var(--gray-100)}
.post-card .card-author{font-size:11px;color:var(--text-muted)}
.post-card .card-date-sm{font-size:11px;color:var(--text-muted);font-family:var(--font-mono)}

/* Category badge — sempre amarelo sobre azul, conforme manual (cor de destaque única) */
.card-cats{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}
.cat-badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:10px;font-weight:700;letter-spacing:0.07em;text-transform:uppercase;background:var(--navy-deep);color:var(--gold);font-family:var(--font-sub)}

/* No thumbnail placeholder */
.thumb-placeholder{aspect-ratio:16/10;background:var(--navy-deep);display:flex;align-items:center;justify-content:center}
.thumb-placeholder span{font-family:var(--font-mono);font-size:32px;color:rgba(244,190,26,0.15)}

/* ============================================================
   FEATURED POST (WIDE)
   ============================================================ */
.post-card-wide{display:grid;grid-template-columns:2fr 3fr;gap:0;grid-column:1/-1;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--gray-100);transition:box-shadow .25s}
.post-card-wide:hover{box-shadow:0 6px 28px rgba(21,40,94,.16)}
.post-card-wide .card-thumb{aspect-ratio:auto;height:100%;min-height:220px}
.post-card-wide .card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post-card-wide:hover .card-thumb img{transform:scale(1.04)}
.post-card-wide .card-body{padding:24px 28px;display:flex;flex-direction:column;justify-content:center;background:var(--white)}
.post-card-wide .card-title{font-size:20px;font-weight:700;-webkit-line-clamp:2}
.post-card-wide .card-excerpt{-webkit-line-clamp:3;margin-bottom:16px}
.card-read-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:0.05em;transition:gap .2s,color .2s;margin-top:auto;font-family:var(--font-sub)}
.card-read-link:hover{gap:10px;color:var(--gold-dark)}
.card-read-link svg{width:13px;height:13px}

/* ============================================================
   SIDEBAR
   ============================================================ */
.sidebar-area{position:sticky;top:96px;display:flex;flex-direction:column;gap:28px}

.widget-box{border:1px solid var(--gray-100);border-radius:var(--radius-md);overflow:hidden}
.widget-box-header{background:var(--navy-deep);padding:11px 16px;display:flex;align-items:center;gap:8px}
.widget-box-title{font-family:var(--font-display);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--gold)}
.widget-box-body{padding:16px}

.popular-list{display:flex;flex-direction:column;gap:0}
.popular-item{display:grid;grid-template-columns:75px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--gray-100);align-items:center}
.popular-item:last-child{border-bottom:none;padding-bottom:0}
.popular-item:first-child{padding-top:0}
.popular-item .p-thumb{border-radius:var(--radius-sm);overflow:hidden;aspect-ratio:4/3}
.popular-item .p-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.popular-item:hover .p-thumb img{transform:scale(1.06)}
.popular-item .p-title{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--navy-deep);line-height:1.3;transition:color .2s;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.popular-item:hover .p-title{color:var(--navy)}
.popular-item .p-date{font-size:11px;color:var(--text-muted);font-family:var(--font-mono);margin-top:3px}

/* Ad widget */
.widget-ad{background:var(--gray-100);border-radius:var(--radius-md);aspect-ratio:4/5;display:flex;align-items:center;justify-content:center;border:1px dashed var(--gray-200)}
.widget-ad span{font-size:11px;color:var(--text-muted);letter-spacing:0.08em;text-transform:uppercase;font-family:var(--font-mono)}

/* Podcast widget */
.podcast-widget-item{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--gray-100);align-items:center}
.podcast-widget-item:last-child{border-bottom:none;padding-bottom:0}
.podcast-widget-item:first-child{padding-top:0}
.pod-cover{width:52px;height:52px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--navy-deep)}
.pod-cover img{width:100%;height:100%;object-fit:cover}
.pod-info .pod-ep{font-size:10px;color:var(--text-muted);font-family:var(--font-mono);letter-spacing:0.06em;margin-bottom:3px}
.pod-info .pod-title{font-size:12px;font-weight:600;color:var(--navy-deep);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pod-play-btn{display:inline-flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;font-weight:700;color:var(--navy-deep);text-transform:uppercase;letter-spacing:0.06em}
.pod-play-btn svg{width:14px;height:14px;fill:var(--gold)}

/* ============================================================
   PODCAST SECTION (full-width band)
   ============================================================ */
.podcast-section{background:var(--graphite);padding:40px 0;margin:0 0 40px}
.podcast-section .section-title{color:var(--white)}
.podcast-section .section-title::before{background:var(--gold)}
.podcast-section .section-header{border-bottom-color:rgba(244,190,26,0.12)}
.podcast-section .section-link{color:rgba(255,255,255,0.5)}
.podcast-section .section-link:hover{color:var(--gold);opacity:1}

.podcast-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap)}
.podcast-card{background:rgba(244,190,26,0.04);border:1px solid rgba(244,190,26,0.12);border-radius:var(--radius-md);overflow:hidden;display:flex;gap:0;transition:border-color .25s}
.podcast-card:hover{border-color:rgba(244,190,26,.45)}
.podcast-card .pc-cover{width:110px;flex-shrink:0}
.podcast-card .pc-cover img{width:100%;height:100%;object-fit:cover;min-height:110px}
.podcast-card .pc-body{padding:14px;display:flex;flex-direction:column;justify-content:center}
.podcast-card .pc-ep{font-size:10px;font-family:var(--font-mono);color:var(--gold);letter-spacing:0.1em;text-transform:uppercase;margin-bottom:5px}
.podcast-card .pc-title{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--white);line-height:1.3;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.podcast-card .pc-desc{font-size:12px;color:rgba(255,255,255,0.45);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:10px;font-family:var(--font-body)}
.pc-play{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--gold);text-transform:uppercase;letter-spacing:0.05em;font-family:var(--font-sub)}
.pc-play svg{width:16px;height:16px;fill:var(--gold)}
.pc-play:hover{color:var(--gold-dark)}

/* ============================================================
   NEWSLETTER BAND
   ============================================================ */
.newsletter-band{background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy) 100%);padding:48px 0}
.newsletter-inner{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.newsletter-copy h2{font-family:var(--font-display);font-size:24px;font-weight:700;color:var(--white);margin-bottom:8px}
.newsletter-copy p{color:rgba(255,255,255,0.6);font-size:14px;line-height:1.65;font-family:var(--font-body)}
.newsletter-form{display:flex;gap:8px}
.newsletter-form input{flex:1;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);border-radius:var(--radius-sm);padding:13px 16px;color:var(--white);font-size:14px;outline:none;transition:border-color .2s;font-family:var(--font-body)}
.newsletter-form input::placeholder{color:rgba(255,255,255,0.35)}
.newsletter-form input:focus{border-color:var(--gold)}
.newsletter-form button{background:var(--gold);border:none;border-radius:var(--radius-sm);padding:13px 24px;color:var(--navy-deep);font-weight:700;font-size:14px;letter-spacing:0.03em;white-space:nowrap;transition:background .2s;font-family:var(--font-sub)}
.newsletter-form button:hover{background:var(--gold-dark)}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{background:var(--graphite);color:var(--white);padding:48px 0 0}
.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}

.footer-brand .footer-logo{margin-bottom:14px;display:flex;align-items:center;gap:10px}
.footer-brand .footer-logo img{height:44px;width:44px;object-fit:contain;border-radius:6px}
.footer-brand .footer-logo .lt-top{font-family:var(--font-display);font-weight:600;font-size:10px;letter-spacing:0.26em;text-transform:uppercase;color:rgba(255,255,255,0.55);display:block}
.footer-brand .footer-logo .lt-nerd{font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:-0.01em;color:var(--gold);display:block;line-height:1}
.footer-brand p{font-size:13px;color:rgba(255,255,255,0.45);line-height:1.7;max-width:240px;font-family:var(--font-body)}

.footer-col-title{font-family:var(--font-mono);font-size:10px;color:var(--gold);text-transform:uppercase;letter-spacing:0.12em;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid rgba(244,190,26,0.1)}
.footer-links{display:flex;flex-direction:column;gap:8px}
.footer-links a{font-size:13px;color:rgba(255,255,255,0.5);transition:color .2s;font-family:var(--font-body)}
.footer-links a:hover{color:var(--gold)}

.footer-social{display:flex;gap:10px;margin-top:16px}
.footer-social a{width:34px;height:34px;border:1px solid rgba(255,255,255,0.12);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:13px;color:rgba(255,255,255,0.5);transition:all .2s}
.footer-social a:hover{border-color:var(--gold);color:var(--gold)}

.footer-bottom{border-top:1px solid rgba(255,255,255,0.07);padding:18px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,0.3);font-family:var(--font-body)}
.footer-tagline{font-family:var(--font-mono);font-size:11px;color:rgba(244,190,26,0.4);letter-spacing:0.05em}

/* ============================================================
   PAGINATION
   ============================================================ */
.pagination-wrap{display:flex;justify-content:center;gap:6px;padding-top:36px}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:13px;font-weight:600;color:var(--text-muted);transition:all .2s;font-family:var(--font-body)}
.page-numbers:hover,.page-numbers.current{background:var(--navy-deep);border-color:var(--navy-deep);color:var(--gold)}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1024px){
  .main-layout{grid-template-columns:1fr}
  .sidebar-area{position:static}
  .footer-top{grid-template-columns:1fr 1fr}
  .hero-grid{grid-template-columns:1fr}
  .hero-side{display:grid;grid-template-columns:repeat(3,1fr)}
  .hero-side-item{grid-template-columns:1fr;padding:0}
  .hero-side-item .thumb{aspect-ratio:16/9}
  .podcast-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:768px){
  .primary-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--navy-deep);border-top:1px solid rgba(244,190,26,0.1);padding:12px 0}
  .primary-nav.is-open{display:block}
  .primary-nav ul{flex-direction:column;gap:0;padding:0 20px}
  .primary-nav a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,0.06);border-radius:0;width:100%}
  .primary-nav .sub-menu{position:static;box-shadow:none;border:none;background:rgba(255,255,255,0.04);padding:0 12px;display:none}
  .primary-nav .menu-item-has-children.open .sub-menu{display:block}
  .menu-toggle{display:flex}
  .header-search{display:none}

  .posts-grid-main{grid-template-columns:1fr}
  .post-card-wide{grid-template-columns:1fr}
  .post-card-wide .card-thumb{height:200px}

  .newsletter-inner{grid-template-columns:1fr}
  .newsletter-form{flex-direction:column}

  .footer-top{grid-template-columns:1fr}
  .hero-side{grid-template-columns:1fr}
  .podcast-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .posts-grid-main{grid-template-columns:1fr}
  .hero-main img{height:240px}
}

/* ============================================================
   CATEGORY PAGE
   ============================================================ */
.category-hero{background:var(--navy-deep);padding:36px 0}
.category-hero h1{font-family:var(--font-display);font-size:32px;font-weight:700;color:var(--white);letter-spacing:-0.01em}
.category-hero .cat-desc{color:rgba(255,255,255,0.5);font-size:14px;margin-top:6px;max-width:560px;font-family:var(--font-body)}
.category-hero .cat-count{font-family:var(--font-mono);font-size:11px;color:var(--gold);margin-top:8px;letter-spacing:0.05em}

/* ============================================================
   SINGLE POST (basic)
   ============================================================ */
.single-layout{display:grid;grid-template-columns:1fr 300px;gap:40px;align-items:start}
.entry-header{margin-bottom:28px}
.entry-header .entry-cats{margin-bottom:12px}
.entry-title{font-family:var(--font-display);font-size:clamp(24px,4vw,36px);font-weight:700;color:var(--navy-deep);line-height:1.15;letter-spacing:-0.02em;margin-bottom:14px}
.entry-meta{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--text-muted);padding-bottom:20px;border-bottom:2px solid var(--gray-100);margin-bottom:28px;flex-wrap:wrap;font-family:var(--font-body)}
.entry-thumbnail{border-radius:var(--radius-md);overflow:hidden;margin-bottom:28px}
.entry-thumbnail img{width:100%;max-height:480px;object-fit:cover}
.entry-content{font-size:16px;line-height:1.8;color:var(--text-body);font-family:var(--font-body)}
.entry-content h2,.entry-content h3{font-family:var(--font-display);font-weight:700;color:var(--navy-deep);margin:28px 0 12px;line-height:1.2}
.entry-content h2{font-size:22px}
.entry-content h3{font-size:18px}
.entry-content p{margin-bottom:18px}
.entry-content a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--gold)}
.entry-content blockquote{border-left:4px solid var(--gold);padding:14px 20px;background:var(--snow);border-radius:0 var(--radius-sm) var(--radius-sm) 0;margin:24px 0;font-style:italic;color:var(--text-muted)}
.entry-content img{border-radius:var(--radius-md);margin:20px 0}

/* Focus */
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}}
