﻿/* RESUMO BRASIL CSS */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Merriweather:wght@700;900&display=swap');
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0d1f3c;--navy2:#162d52;--red:#cc0000;--red2:#a80000;
  --accent:#f59e0b;--white:#fff;--bg:#f0f2f5;--card:#fff;
  --text:#1a1a2e;--muted:#64748b;--border:#e2e8f0;
  --r:6px;--rlg:12px;
  --sh:0 2px 10px rgba(0,0,0,.08);--shlg:0 6px 24px rgba(0,0,0,.13);
  --tr:.2s ease;--font:'Inter',Arial,sans-serif;--serif:'Merriweather',Georgia,serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:15px;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
ul{list-style:none}

/* TOP HEADER — substituído por .util-bar + .site-header */
.logo-area{display:flex;align-items:center}
.logo-text{color:#fff;font-size:22px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase;font-family:var(--serif)}
.logo-text span{color:#4fc3f7}
.logo-img{max-height:40px;width:auto}
.top-tools{display:flex;align-items:center;gap:5px}
.tool-btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;padding:3px 9px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;font-family:var(--font);transition:var(--tr)}
.tool-btn:hover{background:rgba(255,255,255,.22)}
.top-tools .sep{color:rgba(255,255,255,.25);margin:0 2px}
#hora{font-size:12px;color:rgba(255,255,255,.6);min-width:56px;text-align:right}

/* NAV */
.main-nav{background:var(--red);position:sticky;top:0;z-index:200;box-shadow:0 2px 10px rgba(180,0,0,.35)}
.nav-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:flex-start;padding:0 8px}
.nav-inner ul{display:flex;align-items:center;flex-wrap:nowrap;justify-content:flex-start}
.nav-inner ul li a{display:block;color:#fff;padding:11px 14px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:var(--tr);position:relative}
.nav-inner ul li a::after{content:'';position:absolute;bottom:0;left:50%;right:50%;height:3px;background:rgba(255,255,255,.7);transition:var(--tr)}
.nav-inner ul li a:hover::after,.nav-inner ul li a.active::after{left:0;right:0}
.nav-inner ul li a:hover{background:rgba(0,0,0,.18)}
.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:22px;padding:11px 16px;cursor:pointer;line-height:1}

/* PUB BAR — removida, banner agora fica no .site-header */

/* BREAKING */
/* BREAKING — bloco 1 */
.breaking-bar{background:var(--navy);display:flex;align-items:center;overflow:hidden;border-bottom:2px solid var(--red);height:34px}
.breaking-label{background:var(--red);color:#fff;padding:0 14px;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;gap:5px;height:100%;flex-shrink:0;z-index:2}
.breaking-dot{width:7px;height:7px;background:#fff;border-radius:50%;animation:blink 1s infinite;flex-shrink:0}
@keyframes blink{0%,100%{opacity:1}50%{opacity:0}}
.breaking-track{flex:1;overflow:hidden;height:100%;position:relative;display:flex;align-items:center;justify-content:center}
.breaking-ticker{display:inline-flex;align-items:center;white-space:nowrap;animation:ticker 35s linear infinite;height:100%;will-change:transform}
.breaking-ticker:hover,.breaking-ticker:focus-within{animation-play-state:paused}
.ticker-item{color:rgba(255,255,255,.9);font-size:12px;font-weight:500;padding:0 6px;white-space:nowrap;transition:color .15s;text-decoration:none;display:inline-flex;align-items:center;height:100%}
.ticker-item:hover{color:#fff;text-decoration:underline}
.ticker-sep{color:rgba(255,255,255,.35);font-size:14px;padding:0 8px;display:inline-flex;align-items:center}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* LAYOUT */
.site-wrap{max-width:1400px;margin:0 auto;padding:18px 20px;display:flex;gap:20px;align-items:flex-start}
.content-area{flex:1;min-width:0}
.sidebar{width:300px;flex-shrink:0}

/* SEC HEADER */
.sec-header{display:flex;align-items:center;margin-bottom:14px;border-bottom:3px solid var(--navy)}
.sec-header h2{background:var(--navy);color:#fff;font-size:12px;font-weight:800;padding:7px 16px;text-transform:uppercase;letter-spacing:1px;border-radius:4px 4px 0 0}
.sec-header.red{border-color:var(--red)}
.sec-header.red h2{background:var(--red)}
.sec-header .sec-more{margin-left:auto;font-size:11px;color:var(--muted);padding-right:2px}
.sec-header .sec-more:hover{color:var(--red)}

/* CAT TAG */
.cat-tag{display:inline-block;background:var(--red);color:#fff;font-size:9px;font-weight:800;padding:2px 7px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}
.cat-tag.economia{background:#1565c0}
.cat-tag.congresso{background:#6d28d9}
.cat-tag.mundo{background:#065f46}
.cat-tag.seguranca{background:#c2410c}
.cat-tag.educacao{background:#0369a1}

/* HERO */
.hero{position:relative;border-radius:var(--rlg);overflow:hidden;margin-bottom:6px;box-shadow:var(--shlg)}
.hero img{width:100%;height:370px;object-fit:cover;display:block}
.hero-placeholder{width:100%;height:370px;background:linear-gradient(160deg,#162d52,#0d1f3c);display:flex;align-items:center;justify-content:center;font-size:70px}
.hero-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent 0%,rgba(5,10,20,.65) 40%,rgba(5,10,20,.95) 100%);padding:50px 20px 18px;color:#fff}
.hero-overlay .cat-tag{margin-bottom:10px}
.hero-overlay h1{font-family:var(--serif);font-size:24px;font-weight:900;line-height:1.25;margin-bottom:8px;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.hero-overlay p{font-size:13px;opacity:.85;margin-bottom:10px;line-height:1.5}
.hero-meta{display:flex;gap:14px;font-size:11px;opacity:.7;flex-wrap:wrap;align-items:center}

/* THUMB GRID */
.thumb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:20px}
.thumb-card{position:relative;border-radius:var(--r);overflow:hidden;background:#1a2a40;box-shadow:var(--sh);transition:var(--tr);display:block}
.thumb-card:hover{transform:translateY(-2px);box-shadow:var(--shlg)}
.thumb-card img{width:100%;height:94px;object-fit:cover;opacity:.82;transition:var(--tr)}
.thumb-card:hover img{opacity:1}
.thumb-card .thumb-ph{width:100%;height:94px;background:#162d52;display:flex;align-items:center;justify-content:center;font-size:26px}
.thumb-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.88));padding:20px 8px 7px}
.thumb-overlay .cat-tag{margin-bottom:3px}
.thumb-overlay h4{color:#fff;font-size:11px;font-weight:700;line-height:1.3}
.thumb-meta{color:rgba(255,255,255,.55);font-size:10px;margin-top:3px}

/* DESTAQUES */
.destaques-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}
.dest-card{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--border);transition:var(--tr)}
.dest-card:hover{box-shadow:var(--shlg);transform:translateY(-3px)}
.dest-card img{width:100%;height:138px;object-fit:cover}
.dest-card .dest-ph{width:100%;height:138px;background:#162d52;display:flex;align-items:center;justify-content:center;font-size:32px}
.dest-body{padding:11px}
.dest-body .cat-tag{margin-bottom:6px}
.dest-body h3{font-size:13px;font-weight:700;line-height:1.35;margin-bottom:6px}
.dest-body h3 a:hover{color:var(--red)}
.dest-meta{font-size:11px;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}

/* MAIS NOTICIAS */
.mais-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}
.mais-card{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--border);transition:var(--tr)}
.mais-card:hover{box-shadow:var(--shlg);transform:translateY(-2px)}
.mais-card img{width:100%;height:112px;object-fit:cover}
.mais-card .mais-ph{width:100%;height:112px;background:#162d52;display:flex;align-items:center;justify-content:center;font-size:28px}
.mais-body{padding:10px 11px}
.mais-body .cat-tag{margin-bottom:5px}
.mais-body h3{font-size:13px;font-weight:700;line-height:1.35;margin-bottom:4px}
.mais-body h3 a:hover{color:var(--red)}
.mais-meta{font-size:10px;color:var(--muted)}

/* ABAS */
.cat-tabs-section{margin-bottom:22px}
.cat-tabs{display:flex;gap:3px;margin-bottom:12px;border-bottom:3px solid var(--navy);flex-wrap:wrap}
.cat-tab{background:#e2e8f0;color:var(--navy);font-size:11px;font-weight:800;padding:7px 16px;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;border:none;border-radius:4px 4px 0 0;font-family:var(--font);transition:var(--tr)}
.cat-tab:hover{background:#cbd5e1}
.cat-tab.active{background:var(--navy);color:#fff}
.cat-tab-content{display:none}
.cat-tab-content.active{display:block}
.cat-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.cat-news-card{background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--border);transition:var(--tr)}
.cat-news-card:hover{box-shadow:var(--shlg);transform:translateY(-2px)}
.cat-news-card img{width:100%;height:112px;object-fit:cover}
.cat-news-card .cat-ph{width:100%;height:112px;background:#162d52;display:flex;align-items:center;justify-content:center;font-size:28px}
.cat-body{padding:10px 11px}
.cat-body .cat-tag{margin-bottom:5px}
.cat-body h3{font-size:13px;font-weight:700;line-height:1.35;margin-bottom:4px}
.cat-body h3 a:hover{color:var(--red)}
.cat-meta{font-size:10px;color:var(--muted);display:flex;gap:8px}

/* SIDEBAR */
.sb-block{background:var(--card);border-radius:var(--r);margin-bottom:14px;overflow:hidden;box-shadow:var(--sh);border:1px solid var(--border)}
.sb-title{background:var(--navy);color:#fff;font-size:11px;font-weight:800;padding:8px 12px;text-transform:uppercase;letter-spacing:.8px}
.sb-title.red{background:var(--red)}
.sb-pub{background:#e8ecf0;border:2px dashed #c4cdd6;border-radius:var(--r);height:250px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;flex-direction:column;gap:4px}
.sb-news-list{padding:5px 10px}
.sb-news-item{display:flex;gap:9px;padding:8px 0;border-bottom:1px solid #f1f5f9;align-items:flex-start}
.sb-news-item:last-child{border-bottom:none}
.sb-num{background:var(--red);color:#fff;font-size:10px;font-weight:900;min-width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:3px;flex-shrink:0;margin-top:1px}
.sb-num.blue{background:#1d4ed8}
.sb-num.green{background:#15803d}
.sb-news-item h4{font-size:12px;font-weight:600;line-height:1.35;color:var(--text)}
.sb-news-item h4 a:hover{color:var(--red)}
.sb-time{font-size:10px;color:var(--muted);margin-top:2px}
.sb-whatsapp{background:linear-gradient(135deg,#064e3b,#065f46);color:#fff;padding:14px;border-radius:var(--r);margin-bottom:14px;box-shadow:var(--sh)}
.sb-whatsapp .wa-row{display:flex;gap:10px;align-items:flex-start;margin-bottom:11px}
.sb-whatsapp .wa-icon{font-size:28px;flex-shrink:0}
.sb-whatsapp h4{font-size:13px;font-weight:800;margin-bottom:3px}
.sb-whatsapp p{font-size:11px;opacity:.85;line-height:1.4}
.sb-whatsapp a{display:block;background:#22c55e;color:#fff;text-align:center;padding:8px;border-radius:5px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;transition:var(--tr)}
.sb-whatsapp a:hover{background:#16a34a}
.sb-pol-main{padding:10px}
.sb-pol-main img{width:100%;height:105px;object-fit:cover;border-radius:5px;margin-bottom:7px}
.sb-pol-main h3{font-size:13px;font-weight:700;line-height:1.35;margin-bottom:4px}
.sb-pol-main h3 a:hover{color:var(--red)}
.sb-pol-list{padding:0 10px 10px}
.sb-pol-item{display:flex;gap:7px;padding:6px 0;border-top:1px solid #f1f5f9;font-size:12px;line-height:1.35}
.sb-pol-item .dot{width:6px;height:6px;background:var(--red);border-radius:50%;margin-top:5px;flex-shrink:0}
.sb-pol-item a:hover{color:var(--red)}
.sb-anuncie{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:var(--r);overflow:hidden;margin-bottom:14px;box-shadow:var(--shlg)}
.sb-anuncie .anuncie-top{display:flex;gap:11px;padding:14px;align-items:flex-start}
.sb-anuncie .anuncie-img{font-size:40px}
.sb-anuncie h4{font-size:14px;font-weight:800;margin-bottom:3px}
.sb-anuncie p{font-size:11px;opacity:.8;line-height:1.4}
.sb-anuncie ul{padding:0 14px 8px}
.sb-anuncie ul li{font-size:11px;padding:4px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:6px;align-items:center}
.sb-anuncie ul li::before{content:'▸';color:var(--accent)}
.sb-anuncie .btn-anuncie{display:block;background:var(--red);color:#fff;text-align:center;padding:11px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;transition:var(--tr)}
.sb-anuncie .btn-anuncie:hover{background:var(--red2)}

/* ARTIGO INTERNO */
.article-wrap{background:var(--card);border-radius:var(--rlg);box-shadow:var(--sh);border:1px solid var(--border);overflow:hidden;margin-bottom:22px}
.article-header{padding:22px 26px 0}
.article-header .cat-tag{margin-bottom:11px}
.article-header h1{font-family:var(--serif);font-size:26px;font-weight:900;line-height:1.25;color:var(--text);margin-bottom:12px}
.article-meta{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--border)}
.article-meta span{display:flex;align-items:center;gap:4px}
.article-img{width:100%;max-height:480px;object-fit:cover;display:block}
.article-body{padding:22px 26px}
.article-body p{font-size:16px;line-height:1.85;color:#2d3748;margin-bottom:16px}
.article-body h2{font-family:var(--serif);font-size:20px;font-weight:700;color:var(--navy);margin:26px 0 10px}
.article-body h3{font-size:17px;font-weight:700;color:var(--navy);margin:20px 0 8px}
.article-body blockquote{border-left:4px solid var(--red);background:#fef2f2;padding:12px 16px;margin:18px 0;border-radius:0 var(--r) var(--r) 0;font-style:italic;color:#7f1d1d}
/* Listas dentro de artigos */
.article-body ul,.article-body ol{padding-left:22px;margin-bottom:16px}
.article-body ul li{list-style:disc;font-size:16px;line-height:1.8;color:#2d3748;margin-bottom:6px}
.article-body ol li{list-style:decimal;font-size:16px;line-height:1.8;color:#2d3748;margin-bottom:6px}
.article-body ul ul{list-style:circle;margin-top:4px;margin-bottom:4px}
.article-body strong{font-weight:700}
.article-body em{font-style:italic}
.article-body a{color:var(--navy);text-decoration:underline}
.article-body a:hover{color:var(--red)}
.share-box{background:#f8fafc;border-top:1px solid var(--border);padding:16px 26px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.share-box span{font-size:13px;font-weight:700;color:var(--muted)}
.share-btn{padding:7px 14px;border-radius:5px;font-size:12px;font-weight:700;color:#fff;border:none;cursor:pointer;transition:var(--tr);font-family:var(--font)}
.share-btn:hover{opacity:.85;transform:translateY(-1px)}
.share-btn.whatsapp{background:#25d366}
.share-btn.facebook{background:#1877f2}
.share-btn.twitter{background:#1da1f2}
.share-btn.copy{background:#64748b}
.gallery-section{padding:0 26px 22px}
.gallery-section h3{font-size:15px;font-weight:700;margin-bottom:10px;color:var(--navy)}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:7px}
.gallery-grid img{width:100%;height:88px;object-fit:cover;border-radius:5px;cursor:pointer;transition:var(--tr)}
.gallery-grid img:hover{transform:scale(1.04);box-shadow:var(--shlg)}

/* PÁGINAS ESTÁTICAS */
.page-wrap{background:var(--card);border-radius:var(--rlg);box-shadow:var(--sh);border:1px solid var(--border);overflow:hidden;margin-bottom:22px}
.page-header{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:32px 28px;color:#fff}
.page-header h1{font-family:var(--serif);font-size:26px;font-weight:900;margin-bottom:5px}
.page-header p{font-size:13px;opacity:.75}
.page-body{padding:26px 28px}
.page-body p{font-size:15px;line-height:1.8;color:#374151;margin-bottom:14px}
/* Listas geradas pelo editor Quill */
.page-body ul,
.page-body ol,
.article-body ul,
.article-body ol{padding-left:22px;margin-bottom:16px}
.page-body ul li,
.article-body ul li{list-style:disc;font-size:15px;line-height:1.8;color:#374151;margin-bottom:6px}
.page-body ol li,
.article-body ol li{list-style:decimal;font-size:15px;line-height:1.8;color:#374151;margin-bottom:6px}
/* Listas aninhadas do Quill */
.page-body ul ul,
.article-body ul ul{list-style:circle;margin-top:4px;margin-bottom:4px}
.page-body ul ul ul,
.article-body ul ul ul{list-style:square}
/* Quill indent classes */
.page-body .ql-indent-1,
.article-body .ql-indent-1{padding-left:3em}
.page-body .ql-indent-2,
.article-body .ql-indent-2{padding-left:6em}
.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;margin:24px 0}
.stat-item{background:#f8fafc;border-radius:var(--r);padding:18px;text-align:center;border:1px solid var(--border)}
.stat-item .stat-icon{font-size:30px;margin-bottom:7px}
.stat-item h3{font-size:26px;font-weight:900;color:var(--navy)}
.stat-item p{font-size:12px;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-info{background:linear-gradient(135deg,var(--navy),var(--navy2));color:#fff;border-radius:var(--r);padding:22px}
.contact-info h3{font-size:15px;font-weight:700;margin-bottom:14px}
.contact-info-item{display:flex;gap:9px;align-items:flex-start;margin-bottom:12px;font-size:13px}
.contact-info-item .ci-icon{font-size:17px;flex-shrink:0;margin-top:1px}
.form-group{margin-bottom:13px}
.form-group label{display:block;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.4px}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:9px 13px;border:1.5px solid var(--border);border-radius:var(--r);font-size:14px;font-family:var(--font);color:var(--text);background:#fff;transition:var(--tr);outline:none}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(13,31,60,.08)}
.form-group textarea{min-height:115px;resize:vertical}
.btn-primary{background:var(--navy);color:#fff;border:none;padding:10px 26px;border-radius:var(--r);font-size:14px;font-weight:700;cursor:pointer;font-family:var(--font);transition:var(--tr)}
.btn-primary:hover{background:var(--red)}
.btn-red{background:var(--red)}
.btn-red:hover{background:var(--red2)}
.alert{padding:11px 15px;border-radius:var(--r);margin-bottom:14px;font-size:13px;font-weight:600}
.alert-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}
.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}
.pagination{display:flex;gap:5px;justify-content:center;margin:26px 0;flex-wrap:wrap}
.pagination a,.pagination span{padding:7px 13px;border-radius:var(--r);font-size:13px;font-weight:600;border:1.5px solid var(--border);background:var(--card);color:var(--text);transition:var(--tr)}
.pagination a:hover,.pagination .active{background:var(--navy);color:#fff;border-color:var(--navy)}
.author-card{display:flex;gap:16px;align-items:center;background:var(--card);border-radius:var(--rlg);padding:18px;box-shadow:var(--sh);border:1px solid var(--border);margin-bottom:14px;transition:var(--tr)}
.author-card:hover{box-shadow:var(--shlg)}
.author-avatar{width:68px;height:68px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navy2));display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;font-weight:900;flex-shrink:0;box-shadow:0 4px 12px rgba(13,31,60,.25)}
.author-info h3{font-size:16px;font-weight:700;margin-bottom:3px}
.author-info p{font-size:12px;color:var(--muted);margin-bottom:5px}
.author-badge{display:inline-block;background:var(--navy);color:#fff;font-size:10px;padding:2px 9px;border-radius:20px;font-weight:700}

/* ===== NEWSLETTER ===== */
.footer-newsletter{background:linear-gradient(135deg,var(--navy) 0%,#1a3560 100%);padding:40px 20px}
.footer-newsletter-inner{max-width:700px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.fn-text{flex:1;min-width:200px}
.fn-text h3{font-size:18px;font-weight:800;color:#fff;margin-bottom:4px}
.fn-text p{font-size:13px;color:rgba(255,255,255,.65)}
.nl-form{display:flex;gap:8px;flex-wrap:wrap}
.nl-form input{padding:11px 16px;border:none;border-radius:var(--r);font-size:14px;width:260px;outline:none;font-family:var(--font);background:#fff;color:var(--text)}
.nl-form button{background:var(--red);color:#fff;border:none;padding:11px 24px;border-radius:var(--r);font-size:13px;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;font-family:var(--font);transition:var(--tr);white-space:nowrap}
.nl-form button:hover{background:var(--red2)}

/* ===== FOOTER PRINCIPAL ===== */
.site-footer{background:#0d1f3c}

/* Grid de colunas */
.footer-grid-wrap{max-width:1240px;margin:0 auto;padding:48px 24px 32px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:40px}
.footer-col-brand{}
.footer-logo{max-height:44px;width:auto;margin-bottom:14px;filter:brightness(1.1)}
.footer-brand-name{font-size:20px;font-weight:900;color:#fff;margin-bottom:12px;letter-spacing:.5px}
.footer-brand-desc{font-size:13px;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:18px;max-width:260px}

/* Redes sociais */
.footer-social-row{display:flex;gap:8px;flex-wrap:wrap}
.footer-social-btn{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700;transition:var(--tr);flex-shrink:0}
.footer-social-btn:hover{opacity:.82;transform:translateY(-2px)}

/* Colunas de links */
.footer-col-title{font-size:12px;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}
.footer-col-links{display:flex;flex-direction:column;gap:9px}
.footer-col-links li a{font-size:13px;color:rgba(255,255,255,.55);transition:var(--tr);display:block}
.footer-col-links li a:hover{color:#fff;padding-left:4px}

/* Botão contato */
.footer-contact-btn{display:inline-block;background:var(--red);color:#fff;padding:8px 18px;border-radius:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:var(--tr)}
.footer-contact-btn:hover{background:#a80000;color:#fff}

/* Divisor */
.footer-divider{max-width:1240px;margin:0 auto;height:1px;background:rgba(255,255,255,.08)}

/* Bottom bar */
.footer-bottom-bar{background:#091628;padding:16px 24px}
.footer-bottom-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;text-align:center}
.footer-copy{font-size:12px;color:rgba(255,255,255,.35)}
.footer-copy strong{color:rgba(255,255,255,.55)}
.footer-bottom-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.footer-bottom-links a{font-size:12px;color:rgba(255,255,255,.35);transition:var(--tr)}
.footer-bottom-links a:hover{color:rgba(255,255,255,.7)}
.footer-bottom-links span{color:rgba(255,255,255,.2);font-size:10px}

/* Responsivo footer */
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr;gap:28px}
  .footer-newsletter-inner{flex-direction:column;text-align:center}
  .nl-form{justify-content:center}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .footer-grid-wrap{padding:32px 18px 24px}
  .footer-bottom-inner{flex-direction:column;gap:10px}
  .footer-brand-desc{max-width:100%}
}

/* ADMIN */
.admin-layout{display:flex;min-height:100vh}
.admin-sidebar{width:225px;background:var(--navy);flex-shrink:0;display:flex;flex-direction:column}
.logo-admin{padding:16px 18px;font-size:13px;font-weight:800;color:#fff;border-bottom:1px solid rgba(255,255,255,.1);letter-spacing:.4px}
.admin-nav{display:flex;flex-direction:column;flex:1}
.admin-nav a{display:flex;align-items:center;gap:9px;padding:11px 18px;color:rgba(255,255,255,.7);font-size:13px;font-weight:500;transition:var(--tr);border-left:3px solid transparent}
.admin-nav a:hover,.admin-nav a.active{background:rgba(255,255,255,.08);color:#fff;border-left-color:var(--accent)}
.admin-main{flex:1;background:#f1f5f9;padding:26px;overflow-x:auto}
.admin-header{margin-bottom:20px}
.admin-header h1{font-size:21px;font-weight:800;color:var(--navy);margin-bottom:2px}
.admin-header p{color:var(--muted);font-size:13px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:13px;margin-bottom:24px}
.stat-card{background:var(--card);border-radius:var(--r);padding:16px;box-shadow:var(--sh);border:1px solid var(--border);display:flex;align-items:center;gap:13px}
.stat-icon{font-size:32px}
.stat-info h3{font-size:24px;font-weight:900;color:var(--navy)}
.stat-info p{font-size:12px;color:var(--muted)}
.admin-table{width:100%;border-collapse:collapse;background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--border)}
.admin-table th{background:var(--navy);color:#fff;padding:10px 13px;text-align:left;font-size:12px;font-weight:700;letter-spacing:.3px}
.admin-table td{padding:10px 13px;border-bottom:1px solid #f1f5f9;font-size:13px}
.admin-table tr:last-child td{border-bottom:none}
.admin-table tr:hover td{background:#f8fafc}
.badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:700}
.badge-green{background:#d1fae5;color:#065f46}
.badge-red{background:#fee2e2;color:#991b1b}
.badge-blue{background:#dbeafe;color:#1e40af}
.badge-yellow{background:#fef3c7;color:#92400e}
.btn-sm{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;border:none;cursor:pointer;transition:var(--tr);display:inline-block;font-family:var(--font)}
.btn-edit{background:#dbeafe;color:#1e40af}
.btn-delete{background:#fee2e2;color:#991b1b}
.btn-edit:hover{background:#1e40af;color:#fff}
.btn-delete:hover{background:#991b1b;color:#fff}
.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--navy),#1e3a5f)}
.login-box{background:#fff;border-radius:12px;padding:38px 34px;width:100%;max-width:385px;box-shadow:0 20px 60px rgba(0,0,0,.32);text-align:center}
.login-box h2{font-size:16px;font-weight:800;color:var(--navy);margin-bottom:3px}
.login-box p{color:var(--muted);font-size:13px;margin-bottom:22px}

/* RESPONSIVO */
@media(max-width:1024px){
  .site-wrap{flex-direction:column}
  .sidebar{width:100%}
  .destaques-grid,.mais-grid,.cat-news-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:768px){
  .thumb-grid{grid-template-columns:repeat(2,1fr)}
  .hero img,.hero-placeholder{height:240px}
  .hero-overlay h1{font-size:18px}
  .article-header h1{font-size:20px}
  .article-body,.article-header{padding-left:16px;padding-right:16px}
  .share-box,.gallery-section{padding-left:16px;padding-right:16px}
  .contact-grid{grid-template-columns:1fr}
  .admin-layout{flex-direction:column}
  .admin-sidebar{width:100%}
}
@media(max-width:600px){
  /* MENU MOBILE — esconde lista por padrão */
  .nav-inner ul{display:none;flex-direction:column;width:100%}
  .nav-inner ul.open{display:flex}
  .nav-inner ul li a{padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.1)}
  .menu-toggle{display:flex}
  .destaques-grid,.mais-grid,.cat-news-grid{grid-template-columns:1fr}
  .page-header{padding:22px 18px}
  .page-body{padding:18px}
}

/* ============================================================
   NOVO TOPO — UTIL BAR + SITE HEADER + NAV
   ============================================================ */

/* UTIL BAR */
.util-bar{background:#111827;border-bottom:1px solid rgba(255,255,255,.07);font-size:12px;color:rgba(255,255,255,.65)}
.util-bar-inner{max-width:1240px;margin:0 auto;padding:0 16px;height:36px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.util-left{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow:hidden}
.util-right{display:flex;align-items:center;gap:6px;flex-shrink:0}
.util-item{white-space:nowrap;font-size:12px}
.util-date{font-weight:500}
.util-clock{font-variant-numeric:tabular-nums;font-weight:600;color:rgba(255,255,255,.8);min-width:54px}
.util-sep{color:rgba(255,255,255,.2);padding:0 2px}
.util-group{display:flex;align-items:center;gap:2px}
.util-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.8);padding:3px 8px;border-radius:4px;cursor:pointer;font-size:11px;font-weight:700;font-family:var(--font);transition:var(--tr);line-height:1.4}
.util-btn:hover,.util-btn:focus{background:rgba(255,255,255,.18);color:#fff;outline:2px solid rgba(255,255,255,.4);outline-offset:1px}
.util-wa{display:flex;align-items:center;gap:5px;background:#25d366;color:#fff;padding:3px 10px;border-radius:4px;font-size:11px;font-weight:700;transition:var(--tr)}
.util-wa:hover{background:#16a34a;color:#fff}

/* ALTO CONTRASTE */
body.high-contrast{filter:contrast(1.6) grayscale(.15)}
body.high-contrast .util-bar{background:#000;border-color:#fff}
body.high-contrast .site-header{background:#000}
body.high-contrast .main-nav{background:#c00}

/* BUSCA OVERLAY */
.search-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:9000;display:none;align-items:flex-start;justify-content:center;padding-top:80px}
.search-overlay.open{display:flex}
.search-box{background:#fff;border-radius:10px;padding:20px;width:100%;max-width:560px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.search-box form{display:flex;gap:8px}
.search-box input{flex:1;padding:12px 16px;border:2px solid var(--border);border-radius:8px;font-size:15px;font-family:var(--font);outline:none;transition:var(--tr)}
.search-box input:focus{border-color:var(--navy)}
.search-box button[type=submit]{background:var(--navy);color:#fff;border:none;padding:12px 18px;border-radius:8px;font-size:16px;cursor:pointer;transition:var(--tr)}
.search-box button[type=submit]:hover{background:var(--red)}
.search-close{position:absolute;top:10px;right:12px;background:none;border:none;font-size:20px;cursor:pointer;color:var(--muted);line-height:1}
.search-close:hover{color:var(--red)}

/* SITE HEADER */
.site-header{background:var(--navy);padding:14px 16px}
.site-header-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.logo-area{display:flex;align-items:center;gap:10px;text-decoration:none}
.logo-img{max-height:48px;width:auto;display:block}
.logo-text-wrap{display:flex;flex-direction:column}
.logo-main{font-family:var(--serif);font-size:26px;font-weight:900;color:#fff;letter-spacing:1.5px;text-transform:uppercase;line-height:1.1}
.logo-main span{color:#4fc3f7}
.logo-slogan{font-size:10px;color:rgba(255,255,255,.5);letter-spacing:2px;text-transform:uppercase;margin-top:2px}

/* Header Ad */
.header-ad{flex:1;max-width:728px;height:90px;overflow:hidden;border-radius:6px}
.header-ad img{width:100%;height:90px;object-fit:cover;display:block}
.header-ad-placeholder{width:100%;height:90px;background:rgba(255,255,255,.06);border:2px dashed rgba(255,255,255,.18);border-radius:6px;display:flex;align-items:center;justify-content:center;gap:16px;color:rgba(255,255,255,.35);font-size:12px;letter-spacing:1px;text-transform:uppercase}
.header-ad-cta{background:var(--red);color:#fff;padding:5px 14px;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:var(--tr)}
.header-ad-cta:hover{background:var(--red2);color:#fff}

/* NAV */
.main-nav{background:var(--red);position:sticky;top:0;z-index:200;box-shadow:0 2px 10px rgba(180,0,0,.35)}
.nav-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:flex-start;padding:0 8px}
.nav-inner ul{display:flex;align-items:center;flex-wrap:nowrap;justify-content:flex-start}
.nav-inner ul li a{display:block;color:#fff;padding:11px 14px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;transition:var(--tr);position:relative;white-space:nowrap}
.nav-inner ul li a::after{content:'';position:absolute;bottom:0;left:50%;right:50%;height:3px;background:rgba(255,255,255,.7);transition:var(--tr)}
.nav-inner ul li a:hover::after,.nav-inner ul li a.active::after{left:0;right:0}
.nav-inner ul li a:hover{background:rgba(0,0,0,.18)}
.nav-inner ul li a:focus{outline:2px solid #fff;outline-offset:-2px}

/* Burger */
.menu-toggle{display:none;background:none;border:none;color:#fff;padding:10px 14px;cursor:pointer;align-items:center;gap:7px;font-size:13px;font-weight:700;font-family:var(--font)}
.burger-icon{display:flex;flex-direction:column;gap:4px;width:20px}
.burger-icon span{display:block;height:2px;background:#fff;border-radius:2px;transition:var(--tr)}
.burger-label{color:#fff;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}

/* BREAKING */
/* BREAKING — bloco 2 (novo topo) */
.breaking-bar{background:var(--navy);display:flex;align-items:center;overflow:hidden;border-bottom:2px solid var(--red);height:34px}
.breaking-label{background:var(--red);color:#fff;padding:0 14px;font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;gap:6px;height:100%;flex-shrink:0;z-index:2}
.breaking-dot{width:7px;height:7px;background:#fff;border-radius:50%;animation:blink 1s infinite;flex-shrink:0}
.breaking-track{flex:1;overflow:hidden;height:100%;position:relative;display:flex;align-items:center;justify-content:center}
.breaking-ticker{display:inline-flex;align-items:center;white-space:nowrap;animation:ticker 35s linear infinite;height:100%;will-change:transform}
.breaking-ticker:hover,.breaking-ticker:focus-within{animation-play-state:paused}
.ticker-item{color:rgba(255,255,255,.9);font-size:12px;font-weight:500;padding:0 6px;white-space:nowrap;transition:color .15s;text-decoration:none;display:inline-flex;align-items:center;height:100%}
.ticker-item:hover{color:#fff;text-decoration:underline}
.ticker-sep{color:rgba(255,255,255,.35);font-size:14px;padding:0 8px;display:inline-flex;align-items:center}
@keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* RESPONSIVO TOPO */
@media(max-width:900px){
  .header-ad{display:none}
  .site-header-inner{justify-content:flex-start}
}
@media(max-width:600px){
  .util-left .util-item:not(.util-clock){display:none}
  .util-left .util-sep{display:none}
  .util-wa span{display:none}
  .logo-main{font-size:20px}
  .menu-toggle{display:flex}
  .nav-inner ul{display:none;flex-direction:column;width:100%;background:var(--red)}
  .nav-inner ul.open{display:flex}
  .nav-inner ul li{width:100%}
  .nav-inner ul li a{padding:12px 18px;border-bottom:1px solid rgba(255,255,255,.12)}
  .nav-inner ul li a::after{display:none}
}

/* ===== ACESSIBILIDADE — FONTE ESCALÁVEL =====
   Quando o JS muda font-size no <html>, estas regras
   em rem escalam automaticamente com ele.           */
body,
.article-body p,
.article-body li,
.mais-body h3,
.dest-body h3,
.cat-body h3,
.thumb-overlay h4,
.sb-news-item h4,
.sb-pol-item,
.sb-pol-main h3,
.hero-overlay p,
.page-body p,
.footer-links a,
.nav-inner ul li a,
.breaking-ticker {
  font-size: inherit;
}

/* Escala os títulos principais via rem */
.hero-overlay h1    { font-size: clamp(1.1rem, 2.5vw, 1.7rem); }
.article-header h1  { font-size: clamp(1.2rem, 3vw, 1.8rem); }
.dest-body h3       { font-size: clamp(0.78rem, 1.2vw, 0.9rem); }
.mais-body h3,
.cat-body h3        { font-size: clamp(0.75rem, 1.1vw, 0.88rem); }
.sb-news-item h4    { font-size: clamp(0.7rem, 1vw, 0.82rem); }
.article-body p     { font-size: clamp(0.9rem, 1.5vw, 1.1rem); line-height: 1.85; }

/* ===== CLASSES DE ACESSIBILIDADE — FONTE =====
   Aplicadas no <body> pelo JS via btn A+ / A-
   Usam !important para sobrescrever px fixos.    */

/* Pequeno */
body.font-sm p, body.font-sm li, body.font-sm td, body.font-sm span,
body.font-sm .article-body p, body.font-sm .mais-body h3,
body.font-sm .dest-body h3, body.font-sm .cat-body h3,
body.font-sm .sb-news-item h4, body.font-sm .thumb-overlay h4,
body.font-sm .breaking-ticker { font-size: 12px !important; }
body.font-sm .hero-overlay h1  { font-size: 18px !important; }
body.font-sm .article-header h1 { font-size: 20px !important; }

/* Médio (padrão) */
body.font-md p, body.font-md li, body.font-md td, body.font-md span,
body.font-md .article-body p { font-size: 15px !important; }
body.font-md .hero-overlay h1  { font-size: 24px !important; }
body.font-md .article-header h1 { font-size: 26px !important; }

/* Grande */
body.font-lg p, body.font-lg li, body.font-lg td,
body.font-lg .article-body p, body.font-lg .mais-body h3,
body.font-lg .dest-body h3, body.font-lg .cat-body h3,
body.font-lg .sb-news-item h4, body.font-lg .thumb-overlay h4,
body.font-lg .breaking-ticker { font-size: 17px !important; }
body.font-lg .hero-overlay h1  { font-size: 28px !important; }
body.font-lg .article-header h1 { font-size: 30px !important; }
body.font-lg .nav-inner ul li a { font-size: 14px !important; }

/* Extra grande */
body.font-xl p, body.font-xl li, body.font-xl td,
body.font-xl .article-body p, body.font-xl .mais-body h3,
body.font-xl .dest-body h3, body.font-xl .cat-body h3,
body.font-xl .sb-news-item h4, body.font-xl .thumb-overlay h4,
body.font-xl .breaking-ticker { font-size: 19px !important; }
body.font-xl .hero-overlay h1  { font-size: 32px !important; }
body.font-xl .article-header h1 { font-size: 34px !important; }
body.font-xl .nav-inner ul li a { font-size: 15px !important; }

/* Máximo */
body.font-xxl p, body.font-xxl li, body.font-xxl td,
body.font-xxl .article-body p, body.font-xxl .mais-body h3,
body.font-xxl .dest-body h3, body.font-xxl .cat-body h3,
body.font-xxl .sb-news-item h4, body.font-xxl .thumb-overlay h4,
body.font-xxl .breaking-ticker { font-size: 22px !important; }
body.font-xxl .hero-overlay h1  { font-size: 36px !important; }
body.font-xxl .article-header h1 { font-size: 38px !important; }
body.font-xxl .nav-inner ul li a { font-size: 16px !important; }

/* ===== ADMIN SIDEBAR NOVO ESTILO (compartilhado) ===== */
.adm-sidebar{width:256px;background:#fff;border-right:1px solid #e8eaed;display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto}
.adm-sidebar-logo{padding:18px 20px 14px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #e8eaed}
.adm-sidebar-logo img{max-height:36px}
.adm-sidebar-logo .logo-txt{font-size:15px;font-weight:700;color:#0d1f3c;line-height:1.2}
.adm-sidebar-logo .logo-sub{font-size:10px;color:#5f6368;text-transform:uppercase;letter-spacing:.5px}
.adm-nav{padding:8px 0;flex:1}
.adm-nav-section{padding:8px 16px 4px;font-size:10px;font-weight:700;color:#5f6368;text-transform:uppercase;letter-spacing:.8px}
.adm-nav a{display:flex;align-items:center;gap:12px;padding:10px 16px;color:#5f6368;font-size:13px;font-weight:500;border-radius:0 24px 24px 0;margin-right:12px;transition:.15s}
.adm-nav a .nav-icon{font-size:18px;width:22px;text-align:center;flex-shrink:0}
.adm-nav a:hover{background:#f1f3f4;color:#202124}
.adm-nav a.active{background:#e8f0fe;color:#1a73e8;font-weight:600}
.adm-nav a .nav-badge{margin-left:auto;background:#cc0000;color:#fff;font-size:10px;font-weight:700;padding:1px 7px;border-radius:10px}
.adm-sidebar-user{padding:14px 16px;border-top:1px solid #e8eaed;display:flex;align-items:center;gap:10px}
.adm-user-avatar{width:36px;height:36px;border-radius:50%;background:#0d1f3c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}
.adm-user-info{flex:1;min-width:0}
.adm-user-info .uname{font-size:13px;font-weight:600;color:#202124;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-user-info .urole{font-size:11px;color:#5f6368}
.adm-user-logout{color:#5f6368;font-size:18px;transition:.15s;flex-shrink:0}
.adm-user-logout:hover{color:#cc0000}


/* ===== BLOCO COLUNISTA SIDEBAR ===== */
.sb-colunista {
  background: var(--card);
  border-radius: var(--r);
  overflow: hidden;
  margin-bottom: 14px;
  box-shadow: var(--sh);
  border: 1px solid var(--border);
}
.sb-colunista-img {
  width: 100%;
  height: 291px;
  object-fit: cover;
  object-position: center top;
  display: block;
}
.sb-colunista-img-placeholder {
  width: 100%;
  height: 291px;
  background: linear-gradient(160deg, var(--navy) 0%, var(--navy2) 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: rgba(255,255,255,.7);
  font-size: 13px;
}
.sb-colunista-img-placeholder span { font-size: 48px; }
.sb-colunista-body {
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.sb-colunista-info h4 {
  font-size: 14px;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 2px;
}
.sb-colunista-info p {
  font-size: 11px;
  color: var(--muted);
}
.sb-colunista-btn {
  background: var(--navy);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 6px 12px;
  border-radius: 5px;
  white-space: nowrap;
  transition: var(--tr);
  flex-shrink: 0;
}
.sb-colunista-btn:hover { background: var(--red); color: #fff; }

/* ===== HERO SLIDER ===== */
.hero-slider {
  position: relative;
  border-radius: var(--rlg);
  overflow: hidden;
  margin-bottom: 6px;
  box-shadow: var(--shlg);
  background: #0d1f3c;
}

/* Slides */
.hero-slide {
  display: none;
  position: relative;
}
.hero-slide.active { display: block; }
.hero-slide img {
  width: 100%;
  height: 370px;
  object-fit: cover;
  display: block;
  transition: opacity .4s ease;
}
.hero-slide .hero-placeholder {
  width: 100%;
  height: 370px;
  background: linear-gradient(160deg, #162d52, #0d1f3c);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 70px;
}

/* Setas */
.hero-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-60%);
  background: rgba(0,0,0,.45);
  color: #fff;
  border: 2px solid rgba(255,255,255,.3);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s, transform .2s;
  padding: 0;
}
.hero-arrow:hover {
  background: var(--red);
  border-color: var(--red);
  transform: translateY(-60%) scale(1.1);
}
.hero-prev { left: 14px; }
.hero-next { right: 14px; }

/* Dots + barra de progresso */
.hero-controls {
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  z-index: 10;
}
.hero-dots {
  display: flex;
  gap: 7px;
  align-items: center;
}
.hero-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255,255,255,.45);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background .2s, transform .2s, width .2s;
}
.hero-dot.active {
  background: #fff;
  width: 22px;
  border-radius: 4px;
  transform: none;
}
.hero-dot:hover { background: rgba(255,255,255,.8); }

/* Barra de progresso */
.hero-progress {
  width: 120px;
  height: 3px;
  background: rgba(255,255,255,.25);
  border-radius: 2px;
  overflow: hidden;
}
.hero-progress-bar {
  height: 100%;
  width: 0%;
  background: #fff;
  border-radius: 2px;
  transition: width linear;
}

/* Animação de entrada do slide */
@keyframes slideIn {
  from { opacity: 0; transform: scale(1.03); }
  to   { opacity: 1; transform: scale(1); }
}
.hero-slide.active img,
.hero-slide.active .hero-placeholder {
  animation: slideIn .5s ease forwards;
}

@media(max-width:600px) {
  .hero-slide img,
  .hero-slide .hero-placeholder { height: 240px; }
  .hero-arrow { width: 36px; height: 36px; font-size: 20px; }
}

/* ===== DESTAQUES — layout 1 grande + 2 pequenas ===== */
.dest-featured{display:grid;grid-template-columns:2fr 1fr;gap:6px;margin-bottom:24px}

/* Card grande esquerda */
.dest-main-card{position:relative;border-radius:var(--r);overflow:hidden;display:block;background:#1a2a40;box-shadow:var(--sh);transition:var(--tr)}
.dest-main-card:hover{box-shadow:var(--shlg);transform:translateY(-2px)}
.dest-main-card img{width:100%;height:340px;object-fit:cover;display:block;transition:transform .4s ease}
.dest-main-card:hover img{transform:scale(1.03)}
.dest-main-ph{width:100%;height:340px;background:linear-gradient(160deg,#162d52,#0d1f3c);display:flex;align-items:center;justify-content:center;font-size:60px}
.dest-main-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent 0%,rgba(0,0,0,.55) 40%,rgba(0,0,0,.92) 100%);padding:40px 18px 18px;color:#fff}
.dest-main-overlay .cat-tag{margin-bottom:10px}
.dest-main-overlay h2{font-family:var(--serif);font-size:22px;font-weight:900;line-height:1.25;margin-bottom:6px;text-shadow:0 2px 6px rgba(0,0,0,.4)}
.dest-main-overlay p{font-size:13px;opacity:.82;margin-bottom:8px;line-height:1.5}
.dest-main-meta{display:flex;gap:12px;font-size:11px;opacity:.7;flex-wrap:wrap}

/* Coluna direita */
.dest-side-col{display:flex;flex-direction:column;gap:6px}

/* Cards pequenos direita */
.dest-side-card{position:relative;border-radius:var(--r);overflow:hidden;display:block;background:#1a2a40;box-shadow:var(--sh);transition:var(--tr);flex:1}
.dest-side-card:hover{box-shadow:var(--shlg);transform:translateY(-2px)}
.dest-side-card img{width:100%;height:167px;object-fit:cover;display:block;transition:transform .4s ease}
.dest-side-card:hover img{transform:scale(1.04)}
.dest-side-ph{width:100%;height:167px;background:linear-gradient(160deg,#162d52,#0d1f3c);display:flex;align-items:center;justify-content:center;font-size:32px}
.dest-side-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent 0%,rgba(0,0,0,.88) 100%);padding:28px 12px 12px;color:#fff}
.dest-side-overlay .cat-tag{margin-bottom:6px;font-size:9px}
.dest-side-overlay h3{font-size:13px;font-weight:700;line-height:1.3;margin-bottom:4px;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.dest-side-overlay p{font-size:11px;opacity:.75;line-height:1.4}

/* Responsivo */
@media(max-width:768px){
  .dest-featured{grid-template-columns:1fr}
  .dest-main-card img,.dest-main-ph{height:240px}
  .dest-side-card img,.dest-side-ph{height:140px}
  .dest-main-overlay h2{font-size:17px}
}

/* ===== BANNER MEIO (728x90) ===== */
.banner-meio{margin:18px 0;width:100%;max-width:728px}
.banner-meio-placeholder{display:flex;align-items:center;justify-content:space-between;width:100%;height:90px;background:#eaecef;border:2px dashed #c4cdd6;border-radius:var(--r);padding:0 24px;text-decoration:none;transition:var(--tr)}
.banner-meio-placeholder:hover{background:#e2e6ea;border-color:#0d1f3c}
.bmp-label{font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:1px}
.bmp-size{font-size:14px;font-weight:700;color:#64748b}
.bmp-cta{font-size:12px;font-weight:700;color:#0d1f3c;background:#fff;padding:6px 14px;border-radius:5px;border:1.5px solid #0d1f3c;transition:var(--tr)}
.banner-meio-placeholder:hover .bmp-cta{background:#0d1f3c;color:#fff}

/* ===== COOKIE CONSENT ===== */
#cookie-bar {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 8500;
  background: #0d1f3c;
  border-top: 3px solid var(--red);
  padding: 16px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  box-shadow: 0 -4px 24px rgba(0,0,0,.25);
  transform: translateY(100%);
  transition: transform .4s cubic-bezier(.34,1.56,.64,1);
}
#cookie-bar.show { transform: translateY(0); }
.cookie-text {
  flex: 1;
  min-width: 220px;
  font-size: 13px;
  color: rgba(255,255,255,.82);
  line-height: 1.6;
}
.cookie-text strong { color: #fff; }
.cookie-text a { color: #4fc3f7; text-decoration: underline; }
.cookie-text a:hover { color: #fff; }
.cookie-btns {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  flex-wrap: wrap;
}
.cookie-btn-accept {
  background: var(--red);
  color: #fff;
  border: none;
  padding: 10px 24px;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  font-family: var(--font);
  transition: background .2s, transform .15s;
  white-space: nowrap;
}
.cookie-btn-accept:hover { background: #a80000; transform: scale(1.03); }
.cookie-btn-decline {
  background: transparent;
  color: rgba(255,255,255,.55);
  border: 1.5px solid rgba(255,255,255,.2);
  padding: 10px 18px;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  font-family: var(--font);
  transition: .2s;
  white-space: nowrap;
}
.cookie-btn-decline:hover { border-color: rgba(255,255,255,.5); color: #fff; }
@media(max-width:600px) {
  #cookie-bar { padding: 14px 16px; }
  .cookie-btns { width: 100%; }
  .cookie-btn-accept, .cookie-btn-decline { flex: 1; text-align: center; }
}

/* ===== ABAS — novo layout: 2 grandes + 4 pequenas ===== */

/* Grid 2 cards grandes */
.tab-grid-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 20px;
}

/* Card grande */
.tab-card-big { display: flex; flex-direction: column; }
.tab-card-img-link {
  position: relative;
  display: block;
  border-radius: var(--r);
  overflow: hidden;
  margin-bottom: 10px;
}
.tab-card-img-link img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}
.tab-card-img-link:hover img { transform: scale(1.04); }
.tab-card-ph {
  width: 100%; height: 200px;
  background: linear-gradient(160deg,#162d52,#0d1f3c);
  display: flex; align-items: center; justify-content: center;
  font-size: 40px; border-radius: var(--r);
}
.tab-cat-overlay {
  position: absolute;
  bottom: 8px; left: 8px;
}
.tab-card-body h3 {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.35;
  margin-bottom: 6px;
  color: var(--text);
}
.tab-card-body h3 a:hover { color: var(--red); }
.tab-card-meta {
  font-size: 11px;
  color: var(--muted);
  margin-bottom: 6px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.tab-card-body p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.6;
}

/* Grid 4 cards pequenos */
.tab-grid-bottom {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  border-top: 1px solid var(--border);
  padding-top: 16px;
}

/* Card pequeno */
.tab-card-small {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  text-decoration: none;
  transition: var(--tr);
  padding-bottom: 14px;
  border-bottom: 1px solid var(--border);
}
.tab-card-small:nth-last-child(-n+2) { border-bottom: none; padding-bottom: 0; }
.tab-card-small:hover .tab-card-small-body h4 { color: var(--red); }
.tab-card-small img {
  width: 100px;
  height: 75px;
  object-fit: cover;
  border-radius: 5px;
  flex-shrink: 0;
  transition: transform .3s ease;
}
.tab-card-small:hover img { transform: scale(1.04); }
.tab-card-small-ph {
  width: 100px; height: 75px;
  background: linear-gradient(160deg,#162d52,#0d1f3c);
  border-radius: 5px;
  display: flex; align-items: center; justify-content: center;
  font-size: 22px; flex-shrink: 0;
}
.tab-card-small-body { flex: 1; min-width: 0; }
.tab-card-small-body h4 {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--text);
  margin-bottom: 5px;
  transition: color .15s;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.tab-card-small-meta {
  font-size: 10px;
  color: var(--muted);
}

/* Responsivo */
@media(max-width:768px) {
  .tab-grid-top { grid-template-columns: 1fr; }
  .tab-grid-bottom { grid-template-columns: 1fr; }
  .tab-card-small:nth-last-child(-n+2) { border-bottom: 1px solid var(--border); padding-bottom: 14px; }
  .tab-card-small:last-child { border-bottom: none; padding-bottom: 0; }
}
@media(max-width:480px) {
  .tab-card-img-link img, .tab-card-ph { height: 160px; }
}

/* ===== DROPDOWN MENU ===== */
.nav-inner ul li.has-dropdown { position: relative; }
.nav-arrow { font-size: 10px; margin-left: 3px; opacity: .7; pointer-events: none; }

.nav-dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #fff;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,.18);
  min-width: 210px;
  z-index: 9999;
  border-top: 3px solid var(--red);
  padding: 6px 0;
  list-style: none;
  /* Garante que sai do fluxo */
  margin: 0;
}


/* Itens do dropdown */
.nav-dropdown li { display: block; width: 100%; }
.nav-dropdown li a {
  display: block;
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text) !important;
  background: #fff !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  white-space: nowrap;
  transition: background .15s, padding-left .15s;
  border-bottom: none !important;
}
.nav-dropdown li a::after { display: none !important; }
.nav-dropdown li:first-child a {
  font-weight: 700;
  color: var(--navy) !important;
  border-bottom: 1px solid #f1f5f9 !important;
  margin-bottom: 2px;
}
.nav-dropdown li a:hover {
  background: #f8fafc !important;
  color: var(--red) !important;
  padding-left: 22px;
}

/* Mobile: dropdown como lista expandida */
@media(max-width:600px) {
  .nav-dropdown {
    position: static;
    box-shadow: none;
    border-top: none;
    border-left: 3px solid var(--red);
    margin-left: 14px;
    border-radius: 0;
    background: rgba(0,0,0,.15);
    display: none;
  }
  .nav-dropdown li a {
    color: rgba(255,255,255,.85) !important;
    background: transparent !important;
    padding: 8px 14px;
    font-size: 12px;
  }
  .nav-dropdown li a:hover { background: rgba(0,0,0,.15) !important; color: #fff !important; }
  .has-dropdown.open > .nav-dropdown { display: block; }
  /* Toque no item pai abre/fecha */
  .has-dropdown > a { cursor: pointer; }
}

/* ===== COMENTÁRIOS ===== */
.comments-section{margin-top:32px;padding-top:24px;border-top:2px solid var(--border)}
.comments-title{font-size:18px;font-weight:800;color:var(--navy);margin-bottom:16px;display:flex;align-items:center;gap:8px}

/* Lista de comentários */
.comments-list{margin-bottom:28px;display:flex;flex-direction:column;gap:0}
.comment-item{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--border)}
.comment-item:last-child{border-bottom:none}
.comment-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--navy),#1e3a5f);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;flex-shrink:0;box-shadow:0 2px 8px rgba(13,31,60,.2)}
.comment-body{flex:1;min-width:0}
.comment-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.comment-name{font-size:14px;font-weight:700;color:var(--navy)}
.comment-date{font-size:11px;color:var(--muted);background:#f1f5f9;padding:2px 8px;border-radius:10px}
.comment-text{font-size:14px;line-height:1.75;color:#374151;background:#f8fafc;padding:12px 16px;border-radius:0 10px 10px 10px;border:1px solid var(--border)}

/* Formulário moderno */
.comment-form-wrap{background:#fff;border-radius:14px;padding:24px;border:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.06)}
.comment-notice{font-size:12px;color:#0369a1;margin-bottom:18px;background:#f0f9ff;padding:10px 14px;border-radius:8px;border-left:3px solid #0369a1;display:flex;align-items:center;gap:6px}
.comment-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.comment-field{display:flex;flex-direction:column;gap:5px}
.comment-field label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.comment-field label small{text-transform:none;font-weight:400;color:#94a3b8}
.comment-field input,.comment-field textarea{padding:11px 14px;border:1.5px solid var(--border);border-radius:9px;font-size:14px;font-family:var(--font);color:var(--text);background:#fff;outline:none;transition:border .2s,box-shadow .2s;resize:vertical}
.comment-field input:focus,.comment-field textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(13,31,60,.08)}

/* Toolbar emojis */
.comment-toolbar{display:flex;align-items:center;gap:3px;flex-wrap:wrap;background:#f8fafc;border:1.5px solid var(--border);border-bottom:none;border-radius:9px 9px 0 0;padding:7px 10px}
.ctb{background:#fff;border:1px solid var(--border);border-radius:5px;padding:4px 9px;font-size:13px;cursor:pointer;transition:.15s;font-family:var(--font);line-height:1.4;color:var(--text)}
.ctb:hover{background:var(--navy);color:#fff;border-color:var(--navy)}
.ctb.emoji{font-size:17px;padding:3px 6px;background:none;border:none}
.ctb.emoji:hover{background:#f1f5f9;transform:scale(1.2)}
.ctb-sep{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}
.ctb.emoji-more{font-size:11px;font-weight:700;color:var(--navy);background:#eff6ff;border-color:#bfdbfe}
.comment-toolbar+textarea{border-radius:0 0 9px 9px!important;border-top:none!important}

/* Emoji picker */
.emoji-picker{background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-wrap:wrap;gap:3px;max-height:200px;overflow-y:auto;margin-top:4px;box-shadow:0 8px 24px rgba(0,0,0,.12);position:relative;z-index:100}
.ep-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:4px;border-radius:5px;transition:.15s;line-height:1}
.ep-btn:hover{background:#f1f5f9;transform:scale(1.25)}

/* Char count */
.comment-char-count{font-size:11px;color:var(--muted);text-align:right;margin-top:4px}

/* Salvar dados */
.comment-save-check{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);cursor:pointer;margin:16px 0 18px;padding:10px 14px;background:#f8fafc;border-radius:8px;border:1px solid var(--border);transition:.15s}
.comment-save-check:hover{background:#eff6ff;border-color:#bfdbfe}
.comment-save-check input{width:16px;height:16px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}

/* Botão submit */
.comment-submit{background:var(--navy);color:#fff;border:none;padding:14px 32px;border-radius:9px;font-size:13px;font-weight:800;cursor:pointer;font-family:var(--font);letter-spacing:1px;text-transform:uppercase;transition:.2s;width:100%;display:flex;align-items:center;justify-content:center;gap:8px}
.comment-submit:hover{background:var(--red);transform:translateY(-1px);box-shadow:0 4px 14px rgba(204,0,0,.3)}
.comment-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}

/* Alert */
#commentAlert{padding:12px 16px;border-radius:9px;margin-bottom:14px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}
#commentAlert.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}
#commentAlert.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}

@media(max-width:600px){
  .comment-fields-row{grid-template-columns:1fr}
  .comment-form-wrap{padding:16px}
  .comment-avatar{width:36px;height:36px;font-size:14px}
}



/* ===== DROPDOWN — FORÇAR FECHADO POR PADRÃO ===== */
/* Garante que nenhuma regra de hover abre o dropdown */
.nav-dropdown { display: none !important; }
.has-dropdown.open > .nav-dropdown { display: block !important; }


/* ===== MENU ALINHADO À ESQUERDA ===== */
.nav-inner { justify-content: flex-start !important; padding: 0 8px !important; }
.nav-inner ul { justify-content: flex-start !important; }

/* ===== DESTAQUES — 3 matérias: 1 grande + 2 empilhadas ===== */
.dest-featured { display: grid; grid-template-columns: 3fr 2fr; gap: 6px; margin-bottom: 24px; }
.dest-main-card { height: 100%; }
.dest-main-card img { height: 100%; min-height: 300px; max-height: 420px; }
.dest-main-ph { min-height: 300px; }
.dest-side-col { display: flex; flex-direction: column; gap: 6px; height: 100%; }
.dest-side-card { flex: 1; min-height: 0; }
.dest-side-card img { width: 100%; height: 100%; min-height: 140px; max-height: 210px; object-fit: cover; }
.dest-side-ph { min-height: 140px; flex: 1; }
@media(max-width:768px) {
  .dest-featured { grid-template-columns: 1fr; }
  .dest-main-card img { height: 240px; min-height: 240px; }
  .dest-side-card img { height: 160px; min-height: 160px; }
}

/* ============================================================
   RESPONSIVIDADE COMPLETA — PORTAL
   ============================================================ */

/* ── Tablet (≤ 1024px) ── */
@media(max-width:1024px) {
  .site-wrap { flex-direction:column; padding:14px 12px; gap:16px; }
  .sidebar { width:100%; }
  .dest-featured { grid-template-columns:1fr; }
  .dest-side-col { flex-direction:row; }
  .dest-side-card { flex:1; }
  .dest-side-card img { height:160px; }
  .tab-grid-top { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:24px; }
}

/* ── Mobile grande (≤ 768px) ── */
@media(max-width:768px) {
  /* Hero */
  .hero-slider, .hero { border-radius:6px; }
  .hero-slide img, .hero-placeholder { height:220px; }
  .hero-overlay h1 { font-size:16px; }
  .hero-overlay p { display:none; }

  /* Thumb grid */
  .thumb-grid { grid-template-columns:repeat(2,1fr); gap:4px; }

  /* Destaques */
  .dest-featured { grid-template-columns:1fr; }
  .dest-side-col { flex-direction:row; gap:6px; }
  .dest-side-card img { height:130px; }
  .dest-main-card img { height:220px; min-height:220px; }

  /* Mais notícias */
  .mais-grid { grid-template-columns:1fr 1fr; gap:10px; }
  .mais-card img { height:100px; }

  /* Abas */
  .cat-tabs { gap:2px; }
  .cat-tab { font-size:10px; padding:6px 10px; }
  .tab-grid-top { grid-template-columns:1fr; gap:14px; }
  .tab-grid-bottom { grid-template-columns:1fr; }
  .tab-card-img-link img { height:160px; }

  /* Artigo */
  .article-wrap { border-radius:8px; }
  .article-header { padding:16px 16px 0; }
  .article-header h1 { font-size:20px; }
  .article-body { padding:16px; }
  .article-body p { font-size:15px; }
  .share-box { padding:12px 16px; gap:8px; }
  .share-btn { padding:6px 10px; font-size:11px; }
  .gallery-section { padding:0 16px 16px; }
  .gallery-grid { grid-template-columns:repeat(auto-fill,minmax(90px,1fr)); }

  /* Sidebar */
  .sb-whatsapp .wa-row { flex-direction:column; gap:6px; }
  .sb-colunista-img, .sb-colunista-img-placeholder { height:200px; }

  /* Footer */
  .footer-grid { grid-template-columns:1fr; gap:20px; }
  .footer-grid-wrap { padding:24px 16px 20px; }
  .footer-newsletter { padding:24px 16px; }
  .footer-newsletter-inner { flex-direction:column; text-align:center; gap:14px; }
  .nl-form { justify-content:center; }
  .nl-form input { width:100%; }
  .footer-bottom-inner { flex-direction:column; gap:8px; }

  /* Comentários */
  .comment-fields-row { grid-template-columns:1fr; }
  .comment-form-wrap { padding:16px; }
  .comment-toolbar { gap:2px; }
  .ctb.emoji { font-size:15px; padding:2px 4px; }

  /* Colunistas */
  .colunistas-grid { grid-template-columns:1fr 1fr; gap:12px; }
  .col-card-foto, .col-card-foto-placeholder { height:200px; }

  /* Página */
  .page-header { padding:20px 16px; }
  .page-header h1 { font-size:22px; }
  .page-body { padding:16px; }
  .contact-grid { grid-template-columns:1fr; }
  .stats-row { grid-template-columns:repeat(2,1fr); }

  /* Subcategorias */
  .subcat-tabs { gap:4px; }
  .subcat-tab { font-size:11px; padding:5px 12px; }

  /* Cookie bar */
  #cookie-bar { padding:12px 14px; gap:12px; }
  .cookie-btns { width:100%; }
  .cookie-btn-accept, .cookie-btn-decline { flex:1; text-align:center; padding:9px; }

  /* Exit popup */
  #exit-modal { border-radius:10px; }
  .exit-header { padding:20px 16px 14px; }
  .exit-header h2 { font-size:17px; }
  .exit-form-wrap { padding:14px 16px 16px; }
  .exit-input-row { flex-direction:column; }
  .exit-input-row button { width:100%; }

  /* Letícia / WhatsApp float */
  #leticia-widget { bottom:10px; right:10px; }
  #btn-whatsapp-float { bottom:10px; left:10px; width:50px; height:50px; }
  #leticia-chat { width:calc(100vw - 20px); right:10px; bottom:10px; max-height:72vh; }
}

/* ── Mobile pequeno (≤ 480px) ── */
@media(max-width:480px) {
  .thumb-grid { grid-template-columns:1fr 1fr; }
  .mais-grid { grid-template-columns:1fr; }
  .colunistas-grid { grid-template-columns:1fr; }
  .dest-side-col { flex-direction:column; }
  .hero-slide img, .hero-placeholder { height:180px; }
  .hero-overlay h1 { font-size:14px; }
  .util-bar-inner { height:auto; padding:6px 12px; flex-wrap:wrap; gap:6px; }
  .util-left { flex-wrap:wrap; }
  .site-header { padding:10px 12px; }
  .logo-main { font-size:18px; }
  .header-ad { display:none; }
  .breaking-label { font-size:9px; padding:0 10px; }
  .breaking-ticker { font-size:11px; }
  .sec-header h2 { font-size:11px; padding:6px 12px; }
  .pagination a, .pagination span { padding:6px 10px; font-size:12px; }
}

/* ===== UTIL BAR MOBILE — CORREÇÃO ===== */
@media(max-width:600px) {
  /* Esconde a util-bar completamente em mobile — muito poluída */
  .util-bar { display: none; }

  /* Busca overlay também some */
  .search-overlay { padding-top: 60px; }

  /* Site header compacto */
  .site-header { padding: 10px 12px; }
  .site-header-inner { gap: 10px; }
  .logo-main { font-size: 20px; letter-spacing: 1px; }
  .logo-slogan { display: none; }
  .header-ad { display: none; }

  /* Nav compacta com botão menu + busca */
  .main-nav { position: sticky; top: 0; z-index: 200; }
  .nav-inner { padding: 0 12px; justify-content: space-between !important; }
  .nav-inner ul { display: none; flex-direction: column; width: 100%; background: var(--red); position: absolute; top: 100%; left: 0; right: 0; z-index: 300; box-shadow: 0 4px 16px rgba(0,0,0,.3); }
  .nav-inner ul.open { display: flex; }
  .nav-inner ul li { width: 100%; }
  .nav-inner ul li a { padding: 12px 18px; border-bottom: 1px solid rgba(255,255,255,.1); font-size: 13px; }
  .nav-inner ul li a::after { display: none; }
  .menu-toggle { display: flex; }

  /* Barra de acessibilidade simplificada no topo do header */
  .mobile-access-bar {
    background: #111827;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px 12px;
    gap: 8px;
  }
  .mobile-access-bar .util-btn {
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.15);
    color: rgba(255,255,255,.8);
    padding: 3px 8px;
    border-radius: 4px;
    cursor: pointer;
    font-size: 11px;
    font-weight: 700;
    font-family: var(--font);
  }
  .mobile-access-bar .util-clock {
    font-size: 11px;
    color: rgba(255,255,255,.6);
    font-variant-numeric: tabular-nums;
  }
  .mobile-access-bar .util-wa {
    display: flex;
    align-items: center;
    gap: 4px;
    background: #25d366;
    color: #fff;
    padding: 3px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 700;
  }
}

/* ===== HERO SLIDER — CORREÇÃO MOBILE ===== */
/* Garante que apenas o slide ativo aparece */
.hero-slider { position: relative; overflow: hidden; width: 100%; }
.hero-slide { display: none; position: relative; width: 100%; }
.hero-slide.active { display: block; }
.hero-slide img {
  width: 100%;
  height: 370px;
  object-fit: cover;
  display: block;
}
.hero-slide .hero-placeholder {
  width: 100%;
  height: 370px;
}

/* Mobile */
@media(max-width:768px) {
  .hero-slide img,
  .hero-slide .hero-placeholder { height: 220px; }
  .hero-overlay h1 { font-size: 16px; line-height: 1.3; }
  .hero-overlay p { font-size: 12px; display: block; }
  .hero-meta { font-size: 10px; gap: 8px; }
  .hero-arrow { width: 34px; height: 34px; font-size: 20px; }
  .hero-prev { left: 8px; }
  .hero-next { right: 8px; }
  .hero-controls { bottom: 8px; }
  .hero-dot { width: 6px; height: 6px; }
  .hero-dot.active { width: 16px; }
  .hero-progress { width: 80px; }
}

@media(max-width:480px) {
  .hero-slide img,
  .hero-slide .hero-placeholder { height: 180px; }
  .hero-overlay { padding: 30px 12px 12px; }
  .hero-overlay h1 { font-size: 14px; }
  .hero-overlay p { display: none; }
}

/* Destaques responsivo */
@media(max-width:768px) {
  .dest-featured { grid-template-columns: 1fr; gap: 6px; }
  .dest-side-col { flex-direction: row; gap: 6px; }
  .dest-side-card { flex: 1; }
  .dest-side-card img { height: 130px; min-height: 130px; max-height: 130px; }
  .dest-main-card img { height: 220px; min-height: 220px; max-height: 220px; }
}
@media(max-width:480px) {
  .dest-side-col { flex-direction: column; }
  .dest-side-card img { height: 150px; min-height: 150px; }
  .dest-main-card img { height: 180px; min-height: 180px; }
}

/* ===== FOOTER RESPONSIVO — CORREÇÃO COMPLETA ===== */

/* Garante fundo correto em todos os tamanhos */
.site-footer,
.footer-grid-wrap,
.footer-nav,
.footer-links-wrap,
.footer-bottom-bar { background-color: #0d1f3c; }
.footer-links-wrap { background-color: #0a1628; }
.footer-bottom-bar { background-color: #091628; }

/* Newsletter */
.footer-newsletter { background: linear-gradient(135deg,#0d1f3c,#1a3560); }

@media(max-width:900px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .footer-grid-wrap { padding: 28px 16px 20px; }
}

@media(max-width:600px) {
  /* Newsletter compacta */
  .footer-newsletter { padding: 24px 16px; }
  .footer-newsletter-inner { flex-direction: column; text-align: center; gap: 12px; }
  .fn-text h3 { font-size: 16px; }
  .fn-text p { font-size: 12px; }
  .nl-form { flex-direction: column; gap: 8px; }
  .nl-form input { width: 100%; min-width: 0; }
  .nl-form button { width: 100%; }

  /* Grid footer — 1 coluna */
  .footer-grid { grid-template-columns: 1fr; gap: 16px; }
  .footer-grid-wrap { padding: 20px 16px 16px; }

  /* Marca */
  .footer-brand-name { font-size: 18px; }
  .footer-brand-desc { font-size: 12px; max-width: 100%; }
  .footer-logo { max-height: 36px; }

  /* Redes sociais */
  .footer-social-row { gap: 6px; }
  .footer-social-btn { width: 30px; height: 30px; font-size: 12px; }

  /* Colunas de links — accordion no mobile */
  .footer-col-title {
    font-size: 11px;
    letter-spacing: 1px;
    margin-bottom: 10px;
    padding-bottom: 6px;
  }
  .footer-col-links { gap: 7px; }
  .footer-col-links li a { font-size: 12px; }

  /* Botão contato */
  .footer-contact-btn { font-size: 11px; padding: 7px 14px; }

  /* Nav bar do footer */
  .footer-nav { padding: 10px 14px; flex-direction: column; gap: 10px; align-items: flex-start; }
  .footer-nav-left { gap: 10px; flex-wrap: wrap; }
  .footer-nav-left a { font-size: 10px; }
  .footer-social { gap: 5px; }
  .footer-social a { width: 26px; height: 26px; font-size: 11px; }

  /* Links do rodapé */
  .footer-links { padding: 10px 14px; gap: 4px 12px; }
  .footer-links a { font-size: 10px; }

  /* Bottom bar */
  .footer-bottom-bar { padding: 10px 14px; }
  .footer-bottom-inner { flex-direction: column; gap: 6px; text-align: center; }
  .footer-copy { font-size: 11px; }
  .footer-bottom-links { gap: 8px; justify-content: center; }
  .footer-bottom-links a { font-size: 11px; }
}

@media(max-width:400px) {
  .footer-grid { grid-template-columns: 1fr; }
  .footer-nav-left { flex-direction: column; gap: 6px; }
}

/* ===== NEWSLETTER FOOTER — NOVO LAYOUT ===== */
.footer-newsletter {
  background: linear-gradient(135deg, #0a1628 0%, #0d1f3c 50%, #162d52 100%);
  border-top: 3px solid var(--red);
  padding: 0;
  position: relative;
}
.footer-newsletter::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(204,0,0,.12) 0%, transparent 70%);
  pointer-events: none;
}
.footer-nl-wrap {
  max-width: 1240px;
  margin: 0 auto;
  padding: 36px 24px;
  display: flex;
  align-items: center;
  gap: 40px;
  flex-wrap: wrap;
}

/* Lado esquerdo */
.fn-left {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex: 1;
  min-width: 260px;
}
.fn-icon-wrap {
  width: 52px; height: 52px;
  background: var(--red);
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
  flex-shrink: 0;
  box-shadow: 0 4px 16px rgba(204,0,0,.35);
}
.fn-text h3 {
  font-size: 20px;
  font-weight: 900;
  color: #fff;
  margin-bottom: 6px;
  line-height: 1.2;
  letter-spacing: -.2px;
}
.fn-text p {
  font-size: 13px;
  color: rgba(255,255,255,.6);
  margin-bottom: 12px;
  line-height: 1.5;
}
.fn-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.fn-badge {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.7);
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 20px;
}

/* Lado direito */
.fn-right {
  flex: 1;
  min-width: 280px;
  max-width: 440px;
}
.nl-form-new {
  display: flex;
  gap: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,.3);
  margin-bottom: 10px;
}
.nl-input-wrap {
  flex: 1;
  display: flex;
  align-items: center;
  background: #fff;
  padding: 0 16px;
  gap: 10px;
}
.nl-input-icon { font-size: 16px; flex-shrink: 0; }
.nl-form-new input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 14px;
  font-family: var(--font);
  color: var(--text);
  background: transparent;
  padding: 15px 0;
}
.nl-form-new input::placeholder { color: #94a3b8; }
.nl-form-new button {
  background: var(--red);
  color: #fff;
  border: none;
  padding: 15px 22px;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
  font-family: var(--font);
  transition: background .2s;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 6px;
  letter-spacing: .3px;
}
.nl-form-new button:hover { background: #a80000; }
.nl-arrow { font-size: 16px; transition: transform .2s; }
.nl-form-new button:hover .nl-arrow { transform: translateX(3px); }
.fn-privacy {
  font-size: 11px;
  color: rgba(255,255,255,.35);
  text-align: center;
}

/* Responsivo */
@media(max-width:768px) {
  .footer-nl-wrap { flex-direction: column; gap: 24px; padding: 28px 16px; }
  .fn-right { width: 100%; max-width: 100%; }
  .fn-text h3 { font-size: 17px; }
}
@media(max-width:480px) {
  .nl-form-new { flex-direction: column; border-radius: 10px; }
  .nl-input-wrap { border-radius: 10px 10px 0 0; padding: 12px 14px; }
  .nl-form-new button { border-radius: 0 0 10px 10px; justify-content: center; padding: 14px; }
  .fn-left { flex-direction: column; gap: 10px; }
  .fn-icon-wrap { width: 44px; height: 44px; font-size: 20px; }
}

/* ===== FOOTER GRID — FORÇAR 4 COLUNAS ===== */
.footer-grid {
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1.2fr !important;
  gap: 40px !important;
}
.footer-col { min-width: 0; }
.footer-col-links { min-height: 20px; }

@media(max-width:900px) {
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
}
@media(max-width:560px) {
  .footer-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
}

/* ===== REMOVE SCROLL HORIZONTAL ===== */
html { overflow-x: hidden; }
body { overflow-x: hidden; max-width: 100%; }
/* Garante que o ticker não cause overflow */
.breaking-bar { overflow: hidden; }
.breaking-track { overflow: hidden; }
/* Garante que imagens não causem overflow */
img { max-width: 100%; }

/* ===== LARGURA MÁXIMA CONSISTENTE ===== */
.nav-inner,
.site-header-inner,
.util-bar-inner,
.footer-grid-wrap,
.footer-nl-wrap,
.footer-links,
.footer-bottom-inner { max-width: 1400px !important; }
