/*
Theme Name: Xplora News
Theme URI: https://xploranews.com/
Author: Xplora News
Description: Tema editorial moderno e responsivo desenvolvido exclusivamente para o portal Xplora News.
Version: 1.3.6
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 8.0
Text Domain: xplora-news
License: Proprietary
*/

:root {
  --xn-accent: #ffb800;
  --xn-accent-2: #ff5a1f;
  --xn-ink: #12151b;
  --xn-muted: #68707d;
  --xn-surface: #ffffff;
  --xn-soft: #f3f5f7;
  --xn-line: #e2e6ea;
  --xn-radius: 18px;
  --xn-shadow: 0 16px 45px rgba(13, 20, 33, .09);
  --xn-container: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--xn-ink);
  background: var(--xn-surface);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
body.xn-dark { --xn-ink:#f5f7fa; --xn-muted:#aab2bf; --xn-surface:#111419; --xn-soft:#191e25; --xn-line:#2a313b; --xn-shadow:none; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
a:hover { color: var(--xn-accent-2); }
button, input, textarea, select { font: inherit; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus { clip:auto; width:auto; height:auto; margin:8px; padding:10px 14px; z-index:99999; background:#fff; color:#111; }
.xn-container { width: min(calc(100% - 32px), var(--xn-container)); margin-inline: auto; }
.xn-eyebrow { color: var(--xn-accent-2); font-size:.76rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.xn-section { padding: 34px 0; }
.xn-section-title { display:flex; align-items:end; justify-content:space-between; gap:20px; margin:0 0 22px; padding-bottom:12px; border-bottom:1px solid var(--xn-line); }
.xn-section-title h2 { margin:0; font-size:clamp(1.45rem,3vw,2rem); line-height:1.1; }
.xn-section-title h2::after { content:""; display:block; width:48px; height:4px; margin-top:10px; border-radius:4px; background:linear-gradient(90deg,var(--xn-accent),var(--xn-accent-2)); }
.xn-section-title a { color:var(--xn-muted); font-size:.84rem; font-weight:700; }

/* Header */
.xn-topbar { color:#fff; background:#0d1117; font-size:.8rem; }
.xn-topbar-inner { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.xn-trending { min-width:0; flex:1 1 auto; display:flex; align-items:center; gap:12px; overflow:hidden; white-space:nowrap; }
.xn-trending strong { color:var(--xn-accent); letter-spacing:.05em; }
.xn-trend-items { position:relative; min-width:180px; flex:1 1 auto; height:20px; overflow:hidden; }
.xn-trend-item { position:absolute; inset:0; display:block; overflow:hidden; text-overflow:ellipsis; opacity:0; transform:translateY(8px); pointer-events:none; transition:opacity .35s,transform .35s; }
.xn-trend-item.is-active { opacity:1; transform:none; pointer-events:auto; }
.xn-date { display:none; }
.xn-header { position:sticky; top:0; z-index:1000; border-bottom:1px solid var(--xn-line); background:color-mix(in srgb, var(--xn-surface) 97%, transparent); }
.xn-header-main { min-height:82px; display:flex; align-items:center; gap:28px; }
.xn-brand { display:flex; align-items:center; flex:none; font-size:1.6rem; font-weight:900; letter-spacing:-.05em; }
.xn-brand img { max-height:52px; width:auto; }
.xn-brand-text span { color:var(--xn-accent-2); }
.xn-nav { margin-left:auto; }
.xn-nav ul { display:flex; align-items:center; gap:22px; margin:0; padding:0; list-style:none; }
.xn-nav a { font-size:.88rem; font-weight:800; text-transform:uppercase; }
.xn-nav-head,.xn-nav > .xn-socials { display:none; }
.xn-nav li { position:relative; }
.xn-nav .sub-menu {
  position:absolute;
  top:calc(100% + 18px);
  left:-16px;
  min-width:190px;
  display:grid;
  gap:2px;
  padding:10px;
  border:1px solid var(--xn-line);
  border-radius:14px;
  background:var(--xn-surface);
  box-shadow:var(--xn-shadow);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .18s,transform .18s,visibility .18s;
}
.xn-nav .sub-menu::before { content:""; position:absolute; left:0; right:0; bottom:100%; height:20px; }
.xn-nav .sub-menu a { display:block; padding:9px 10px; border-radius:8px; white-space:nowrap; }
.xn-nav .sub-menu a:hover { background:var(--xn-soft); }
.xn-nav li:hover > .sub-menu,.xn-nav li:focus-within > .sub-menu { opacity:1; visibility:visible; transform:none; }
.xn-actions { display:flex; align-items:center; gap:7px; }
.xn-icon-btn { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--xn-line); border-radius:50%; color:var(--xn-ink); background:var(--xn-soft); cursor:pointer; }
.xn-menu-toggle { display:none; }
.xn-search-panel { display:none; padding:16px 0; border-top:1px solid var(--xn-line); }
.xn-search-panel.is-open { display:block; }
.xn-search-form { display:flex; max-width:760px; margin:auto; }
.xn-search-form input { min-width:0; flex:1; padding:14px 18px; border:1px solid var(--xn-line); border-radius:999px 0 0 999px; color:var(--xn-ink); background:var(--xn-soft); }
.xn-search-form button { border:0; padding:0 22px; border-radius:0 999px 999px 0; color:#111; background:var(--xn-accent); font-weight:800; cursor:pointer; }

/* Hero */
.xn-hero { padding:28px 0 18px; }
.xn-hero-grid { display:grid; grid-template-columns:1.55fr 1fr 1fr; grid-template-rows:245px 245px; gap:14px; }
.xn-hero-card { position:relative; min-height:220px; overflow:hidden; border-radius:var(--xn-radius); color:#fff; background:#1c222b; box-shadow:var(--xn-shadow); }
.xn-hero-card:first-child { grid-row:1 / 3; }
.xn-hero-card:nth-child(2) { grid-column:2 / 4; }
.xn-hero-card img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.xn-hero-card:hover img { transform:scale(1.035); }
.xn-hero-card::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(3,7,12,.03) 8%,rgba(3,7,12,.22) 45%,rgba(3,7,12,.96) 100%); }
.xn-hero-main-link { position:absolute; z-index:1; inset:0; }
.xn-hero-content { position:absolute; z-index:2; left:0; right:0; bottom:0; padding:22px; pointer-events:none; }
.xn-hero-content a { pointer-events:auto; }
.xn-hero-card:first-child .xn-hero-content { padding:30px; }
.xn-hero-card h2 { display:-webkit-box; margin:8px 0 10px; overflow:hidden; color:#fff; font-size:clamp(1.18rem,2vw,1.62rem); line-height:1.13; letter-spacing:-.025em; text-wrap:balance; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.xn-hero-card h2 a,.xn-hero-card h2 a:hover,.xn-hero-card h2 a:focus { color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.42); }
.xn-hero-card:first-child h2 { font-size:clamp(2rem,3.4vw,2.65rem); line-height:1.1; -webkit-line-clamp:4; }
.xn-meta { display:flex; flex-wrap:wrap; gap:10px; color:var(--xn-muted); font-size:.78rem; }
.xn-meta a { color:inherit; font-weight:700; }
.xn-meta a:hover { color:var(--xn-accent-2); }
.xn-hero-card .xn-meta { gap:7px 12px; color:#eef1f5; font-size:.82rem; line-height:1.35; text-shadow:0 1px 8px rgba(0,0,0,.62); }

/* Cards and feed */
.xn-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.xn-card { min-width:0; overflow:hidden; border:1px solid var(--xn-line); border-radius:var(--xn-radius); background:var(--xn-surface); transition:transform .2s, box-shadow .2s; }
.xn-card:hover { transform:translateY(-4px); box-shadow:var(--xn-shadow); }
.xn-card > .xn-card-media { display:block; }
.xn-card-media { aspect-ratio:16/10; overflow:hidden; background:var(--xn-soft); }
.xn-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .35s; }
.xn-card:hover .xn-card-media img { transform:scale(1.04); }
.xn-card-body { padding:16px; }
.xn-card h3 { margin:7px 0 10px; font-size:1.08rem; line-height:1.25; letter-spacing:-.015em; }
.xn-main-grid { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:38px; }
.xn-feed { display:grid; gap:22px; }
.xn-feed-card { display:grid; grid-template-columns:250px minmax(0,1fr); gap:20px; padding-bottom:22px; border-bottom:1px solid var(--xn-line); }
.xn-feed-card .xn-card-media { border-radius:14px; }
.xn-feed-card h2 { margin:7px 0 8px; font-size:clamp(1.25rem,2.5vw,1.7rem); line-height:1.2; }
.xn-excerpt { margin:10px 0 0; color:var(--xn-muted); font-size:.94rem; }
.xn-load-more { display:block; width:100%; margin-top:25px; padding:14px; border:1px solid var(--xn-line); border-radius:999px; text-align:center; font-weight:800; background:var(--xn-soft); }

/* Sidebar and ads */
.xn-sidebar { display:grid; align-content:start; gap:26px; }
.xn-widget { padding:22px; border:1px solid var(--xn-line); border-radius:var(--xn-radius); background:var(--xn-soft); }
.xn-widget h3 { margin:0 0 16px; font-size:1.15rem; }
.xn-ranking { margin:0; padding:0; list-style:none; counter-reset:rank; }
.xn-ranking li { counter-increment:rank; display:grid; grid-template-columns:38px 1fr; gap:10px; padding:13px 0; border-bottom:1px solid var(--xn-line); }
.xn-ranking li:last-child { border:0; }
.xn-ranking li::before { content:counter(rank); color:var(--xn-accent-2); font-size:1.7rem; font-weight:900; line-height:1; }
.xn-ranking a { font-size:.91rem; font-weight:750; line-height:1.3; }
.xn-ad { display:grid; place-items:center; min-height:90px; margin:18px auto; overflow:hidden; color:#969daa; background:var(--xn-soft); font-size:.67rem; letter-spacing:.12em; text-align:center; text-transform:uppercase; }

/* Single */
.xn-breadcrumb { padding:20px 0 0; color:var(--xn-muted); font-size:.8rem; }
.xn-article-header { max-width:900px; margin:28px auto 26px; text-align:center; }
.xn-article-header h1 { margin:10px 0 16px; font-size:clamp(2rem,6vw,4.4rem); line-height:1.03; letter-spacing:-.045em; }
.xn-article-deck { margin:0 auto 18px; color:var(--xn-muted); font-size:clamp(1.05rem,2vw,1.3rem); }
.xn-article-header .xn-meta { justify-content:center; }
.xn-article-tools { display:flex; justify-content:center; gap:12px; margin:18px auto 0; }
.xn-article-tool { display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border:1px solid var(--xn-line); border-radius:999px; color:var(--xn-ink); background:var(--xn-soft); font-size:.82rem; font-weight:800; cursor:pointer; }
.xn-article-tool:hover { color:var(--xn-ink); border-color:var(--xn-accent); background:color-mix(in srgb,var(--xn-accent) 16%,var(--xn-soft)); }
.xn-tool-icon { font-size:1.05rem; line-height:1; }
.xn-featured-image { width:min(calc(100% - 32px),1120px); max-height:660px; margin:0 auto 36px; object-fit:cover; border-radius:var(--xn-radius); }
.xn-featured-media { width:min(calc(100% - 32px),1120px); margin:0 auto 36px; }
.xn-featured-media .xn-featured-image { width:100%; margin:0; }
.xn-image-credit { margin-top:9px; color:var(--xn-muted); font-size:.76rem; line-height:1.45; text-align:right; }
.xn-image-credit strong { color:var(--xn-ink); }
.xn-article-layout { display:grid; grid-template-columns:minmax(0,780px) 320px; justify-content:center; gap:44px; }
.xn-content { min-width:0; font-family:Georgia, "Times New Roman", serif; font-size:1.14rem; line-height:1.82; }
.xn-content > * { max-width:100%; }
.xn-content h2,.xn-content h3 { font-family:Inter,ui-sans-serif,system-ui,sans-serif; line-height:1.2; }
.xn-content a { color:#c74715; text-decoration:underline; }
.xn-content blockquote { margin:30px 0; padding:12px 24px; border-left:5px solid var(--xn-accent); background:var(--xn-soft); font-size:1.25rem; }
.xn-content img { border-radius:12px; }
.xn-content .wp-block-embed { width:100%; margin:28px auto; }
.xn-content .wp-block-embed__wrapper { display:flex; justify-content:center; width:100%; }
.xn-content iframe { display:block; max-width:100%; margin-right:auto !important; margin-left:auto !important; }
.xn-content .twitter-tweet,.xn-content .twitter-tweet-rendered { margin:28px auto !important; }
.xn-content blockquote.twitter-tweet { max-width:550px; padding:0; border:0; background:transparent; font-family:Inter,ui-sans-serif,system-ui,sans-serif; font-size:1rem; }
.xn-content .wp-block-video,.xn-content .wp-block-video video { width:100%; margin-right:auto; margin-left:auto; }
.xn-share { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; padding-top:20px; border-top:1px solid var(--xn-line); }
.xn-share a { padding:9px 14px; border-radius:999px; color:var(--xn-ink); background:var(--xn-soft); font-family:Inter,sans-serif; font-size:.8rem; font-weight:800; text-decoration:none; }
.xn-author-box { display:grid; grid-template-columns:70px 1fr; gap:18px; margin:35px 0; padding:22px; border-radius:var(--xn-radius); background:var(--xn-soft); }
.xn-author-box img { border-radius:50%; }
.xn-author-box h3,.xn-author-box p { margin:0; }
.xn-author-box h3 a:hover { color:var(--xn-accent-2); }
.xn-post-nav { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin:30px 0; }
.xn-post-nav a { padding:18px; border:1px solid var(--xn-line); border-radius:14px; font-weight:750; }

/* Comments */
#comments { margin-top:30px; padding:26px; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:1rem; line-height:1.6; }
#comments > h3 { margin:0 0 22px; font-size:1.25rem; line-height:1.25; }
#comments .comment-reply-title { font-size:1.2rem; line-height:1.3; }
#comments .comment-notes,#comments .logged-in-as { color:var(--xn-muted); font-size:.95rem; }
#comments ol { padding-left:22px; }
#comments .comment-body { margin-bottom:16px; padding:16px; border-radius:12px; background:var(--xn-surface); }
.comment-reply-title { margin:20px 0 8px; }
.comment-form { display:grid; gap:14px; }
.comment-form p { margin:0; }
.comment-form label { display:block; margin-bottom:6px; color:var(--xn-ink); font-size:.92rem; font-weight:750; }
.comment-form textarea,.comment-form input[type="text"],.comment-form input[type="email"],.comment-form input[type="url"] {
  width:100%;
  max-width:100%;
  padding:12px 14px;
  border:1px solid var(--xn-line);
  border-radius:10px;
  color:var(--xn-ink);
  background:var(--xn-surface);
  font-size:1rem;
  line-height:1.5;
  outline:none;
}
.comment-form textarea { min-height:180px; resize:vertical; }
.comment-form textarea:focus,.comment-form input:focus { border-color:var(--xn-accent-2); box-shadow:0 0 0 3px color-mix(in srgb,var(--xn-accent-2) 16%,transparent); }
.comment-form .comment-form-cookies-consent { display:flex; align-items:flex-start; gap:9px; }
.comment-form .comment-form-cookies-consent label { margin:0; font-weight:500; }
.comment-form .submit { padding:11px 18px; border:0; border-radius:999px; color:#111; background:var(--xn-accent); font-weight:850; cursor:pointer; }
.comment-form .submit:hover { filter:brightness(.96); }
@media (max-width:640px) { #comments { padding:20px 16px; } }

/* Archive, footer, utilities */
.xn-page-head { padding:44px 0 20px; }
.xn-page-head h1 { margin:0; font-size:clamp(2rem,5vw,3.6rem); line-height:1; }
.xn-pagination { margin:30px 0; }
.xn-pagination .nav-links { display:flex; flex-wrap:wrap; gap:8px; }
.xn-pagination a,.xn-pagination span { min-width:42px; padding:9px 12px; border:1px solid var(--xn-line); border-radius:10px; text-align:center; }
.xn-pagination .current { color:#111; background:var(--xn-accent); border-color:var(--xn-accent); }
.xn-footer { margin-top:60px; padding:55px 0 22px; color:#dbe0e8; background:#0d1117; }
.xn-footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; }
.xn-footer h3 { color:#fff; margin-top:0; }
.xn-footer ul { margin:0; padding:0; list-style:none; }
.xn-footer li { margin:8px 0; }
.xn-footer a:hover { color:var(--xn-accent); }
.xn-socials { display:flex; flex-wrap:wrap; gap:9px; margin-top:18px; }
.xn-socials a { width:40px; height:40px; display:grid; place-items:center; border:1px solid #35404c; border-radius:50%; color:#fff; transition:.2s; }
.xn-socials svg { width:19px; height:19px; display:block; fill:currentColor; }
.xn-socials a:hover { color:#111; border-color:var(--xn-accent); background:var(--xn-accent); transform:translateY(-2px); }
.xn-nav-social-title { display:none; }
.xn-menu-mobile-icon { display:none; }
.xn-nav-newsletter { display:none; }
.xn-nav-newsletter { margin-top:24px; padding:20px; border:1px solid #303842; border-radius:16px; color:#fff; background:#1a2028; }
.xn-nav-newsletter strong { display:block; margin-bottom:5px; font-size:1rem; }
.xn-nav-newsletter p { margin:0 0 13px; color:#b9c1cc; font-size:.78rem; line-height:1.5; }
.xn-nav-newsletter form { display:grid; gap:9px; }
.xn-nav-newsletter input { width:100%; min-width:0; padding:11px 12px; border:1px solid #3b4653; border-radius:10px; color:#111; background:#fff; }
.xn-nav-newsletter button { padding:11px 13px; border:0; border-radius:10px; color:#111; background:var(--xn-accent); font-weight:900; cursor:pointer; }
.xn-nav-newsletter small { display:block; margin-top:9px; color:#8993a0; font-size:.67rem; line-height:1.4; }
.xn-footer-bottom { margin-top:35px; padding-top:20px; border-top:1px solid #29313d; color:#8993a0; font-size:.78rem; }

/* Share sheet and newsletter */
.xn-modal { position:fixed; z-index:99999; inset:0; display:grid; place-items:center; padding:18px; background:rgba(5,8,12,.66); opacity:0; visibility:hidden; transition:.2s; }
.xn-modal.is-open { opacity:1; visibility:visible; }
.xn-modal-card { position:relative; width:min(100%,560px); max-height:min(90vh,720px); overflow:auto; padding:28px; border:1px solid var(--xn-line); border-radius:22px; color:var(--xn-ink); background:var(--xn-surface); box-shadow:0 30px 90px rgba(0,0,0,.28); transform:translateY(10px) scale(.98); transition:.2s; }
.xn-modal.is-open .xn-modal-card { transform:none; }
.xn-modal-close { position:absolute; top:14px; right:14px; width:36px; height:36px; border:0; border-radius:50%; color:var(--xn-ink); background:var(--xn-soft); cursor:pointer; }
.xn-modal-card h2 { margin:0 40px 8px 0; font-size:1.65rem; line-height:1.15; }
.xn-modal-card > p { color:var(--xn-muted); }
.xn-share-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.xn-share-grid a,.xn-share-grid button { display:grid; place-items:center; min-height:74px; padding:10px; border:1px solid var(--xn-line); border-radius:14px; color:var(--xn-ink); background:var(--xn-soft); font-size:.78rem; font-weight:800; cursor:pointer; }
.xn-share-grid a:hover,.xn-share-grid button:hover { border-color:var(--xn-accent); }
.xn-newsletter-card { overflow:hidden; padding:0; }
.xn-newsletter-top { padding:34px 32px 28px; color:#fff; background:linear-gradient(135deg,#111823,#273445); }
.xn-newsletter-top .xn-eyebrow { color:var(--xn-accent); }
.xn-newsletter-top h2 { margin-top:8px; }
.xn-newsletter-top p { margin-bottom:0; color:#ccd4de; }
.xn-newsletter-form { display:flex; gap:9px; padding:24px 32px 8px; }
.xn-newsletter-form input { min-width:0; flex:1; padding:13px 15px; border:1px solid var(--xn-line); border-radius:12px; color:var(--xn-ink); background:var(--xn-soft); }
.xn-newsletter-form button { padding:13px 17px; border:0; border-radius:12px; color:#111; background:var(--xn-accent); font-weight:900; cursor:pointer; }
.xn-newsletter-note { padding:0 32px 26px; color:var(--xn-muted); font-size:.75rem; }
.xn-newsletter-note a { text-decoration:underline; }
body.xn-modal-open { overflow:hidden; }
.alignwide { margin-left:calc(50% - 50vw + 32px); width:calc(100vw - 64px); max-width:1120px; }
.alignfull { margin-left:calc(50% - 50vw); width:100vw; max-width:none; }

/* No computador o menu principal permanece visivel; os tres pontos abrem a gaveta completa. */
@media (min-width:981px) {
  .xn-menu-toggle { display:grid; }
  .xn-nav.is-open { position:fixed; z-index:1002; top:0; bottom:0; left:0; width:min(88vw,390px); display:block; margin:0; padding:0 22px 30px; overflow-y:auto; color:#f5f7fa; background:#111419; border-right:1px solid #303842; box-shadow:24px 0 70px rgba(0,0,0,.35); transform:none; visibility:visible; }
  .xn-nav.is-open .xn-nav-head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; min-height:76px; margin:0 -22px 16px; padding:0 22px; border-bottom:1px solid #303842; background:#111419; }
  .xn-nav.is-open .xn-nav-brand { font-size:1.3rem; font-weight:950; letter-spacing:-.05em; }
  .xn-nav.is-open .xn-nav-brand span { color:var(--xn-accent-2); }
  .xn-nav.is-open .xn-nav-close { width:38px; height:38px; border:1px solid #303842; border-radius:50%; color:#fff; background:#1b222b; font-size:1.25rem; cursor:pointer; }
  .xn-nav.is-open ul { align-items:stretch; flex-direction:column; gap:4px; }
  .xn-nav.is-open li { border-bottom:1px solid #252c35; }
  .xn-nav.is-open a { display:block; padding:13px 4px; color:#f5f7fa; }
  .xn-nav.is-open .sub-menu { position:static; min-width:0; margin:0 0 8px 12px; padding:0 0 0 12px; border:0; border-left:2px solid #303842; border-radius:0; background:transparent; box-shadow:none; opacity:1; visibility:visible; transform:none; }
  .xn-nav.is-open .sub-menu li { border:0; }
  .xn-nav.is-open .sub-menu a { padding:9px 4px; color:#b9c1cc; font-size:.78rem; }
  .xn-nav.is-open .sub-menu a:hover,.xn-nav.is-open .sub-menu .current-menu-item > a { color:#fff; background:#252c35; }
  .xn-nav.is-open .xn-nav-social-title { display:block; margin:28px 0 10px; padding-top:20px; border-top:1px solid #303842; color:#fff; font-size:.75rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
  .xn-nav.is-open > .xn-socials { display:flex; margin-top:0; }
  .xn-nav.is-open .xn-nav-newsletter { display:block; }
  .xn-menu-backdrop { position:fixed; z-index:1001; inset:0; display:block; background:rgba(4,7,10,.62); opacity:0; visibility:hidden; transition:.2s; }
  .xn-menu-backdrop.is-open { opacity:1; visibility:visible; }
}

@media (max-width: 980px) {
  .xn-header { position:relative; top:auto !important; }
  .xn-menu-toggle { display:grid; }
  .xn-menu-desktop-icon { display:none; }
  .xn-menu-mobile-icon { display:inline; }
  .xn-nav { position:fixed; z-index:1002; top:0; bottom:0; left:0; width:min(88vw,370px); display:block; margin:0; padding:0 20px 28px; overflow-y:auto; color:#f5f7fa; background:#111419; border-right:1px solid #303842; box-shadow:24px 0 70px rgba(0,0,0,.35); transform:translateX(-105%); visibility:hidden; transition:transform .25s ease,visibility .25s; }
  .xn-nav.is-open { transform:none; visibility:visible; }
  .xn-nav-head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; min-height:76px; margin:0 -20px 16px; padding:0 20px; border-bottom:1px solid #303842; background:#111419; }
  .xn-nav-brand { font-size:1.3rem; font-weight:950; letter-spacing:-.05em; }
  .xn-nav-brand span { color:var(--xn-accent-2); }
  .xn-nav-close { width:38px; height:38px; border:1px solid #303842; border-radius:50%; color:#fff; background:#1b222b; font-size:1.25rem; cursor:pointer; }
  .xn-nav ul { align-items:stretch; flex-direction:column; gap:4px; }
  .xn-nav li { border-bottom:1px solid #252c35; }
  .xn-nav a { display:block; padding:13px 4px; color:#f5f7fa; }
  .xn-nav .sub-menu { position:static; min-width:0; margin:0 0 8px 12px; padding:0 0 0 12px; border:0; border-left:2px solid #303842; border-radius:0; background:transparent; box-shadow:none; opacity:1; visibility:visible; transform:none; }
  .xn-nav .sub-menu li { border:0; }
  .xn-nav .sub-menu a { padding:9px 4px; color:#b9c1cc; font-size:.78rem; }
  .xn-nav .sub-menu a:hover,.xn-nav .sub-menu .current-menu-item > a { color:#fff; background:#252c35; }
  .xn-nav > .xn-socials { display:flex; margin-top:28px; padding-top:20px; border-top:1px solid #303842; }
  .xn-nav .xn-nav-newsletter { display:block; }
  .xn-menu-backdrop { position:fixed; z-index:1001; inset:0; display:block; background:rgba(4,7,10,.62); opacity:0; visibility:hidden; transition:.2s; }
  .xn-menu-backdrop.is-open { opacity:1; visibility:visible; }
  .xn-hero-grid { grid-template-columns:1fr 1fr; grid-template-rows:390px 230px 230px; }
  .xn-hero-card:first-child { grid-column:1/3; grid-row:auto; }
  .xn-hero-card:nth-child(2) { grid-column:1/3; }
  .xn-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .xn-main-grid,.xn-article-layout { grid-template-columns:1fr; }
  .xn-sidebar { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:783px) { body.admin-bar .xn-header { top:32px; } }
@media (max-width:782px) { body.admin-bar .xn-header { top:46px; } }
@media (max-width: 640px) {
  .xn-date { display:none; }
  .xn-header-main { min-height:68px; gap:10px; }
  .xn-brand { font-size:1.35rem; margin-right:auto; }
  .xn-brand img { max-height:42px; max-width:170px; }
  .xn-hero-grid { display:block; }
  .xn-hero-card { min-height:220px; margin-bottom:12px; }
  .xn-hero-card:first-child { min-height:390px; }
  .xn-hero-card:first-child .xn-hero-content { padding:22px; }
  .xn-hero-card:first-child h2 { font-size:clamp(1.85rem,9vw,2.3rem); }
  .xn-hero-card h2 { -webkit-line-clamp:4; }
  .xn-card-grid,.xn-sidebar,.xn-footer-grid { grid-template-columns:1fr; }
  .xn-feed-card { grid-template-columns:120px minmax(0,1fr); gap:14px; }
  .xn-feed-card h2 { font-size:1.05rem; }
  .xn-feed-card .xn-excerpt { display:none; }
  .xn-article-header { text-align:left; }
  .xn-article-header .xn-meta { justify-content:flex-start; }
  .xn-article-tools { justify-content:flex-start; }
  .xn-article-layout { gap:20px; }
  .xn-content { font-size:1.06rem; }
  .xn-post-nav { grid-template-columns:1fr; }
  .xn-share-grid { grid-template-columns:repeat(2,1fr); }
  .xn-newsletter-form { flex-direction:column; }
}

/* Consentimento LGPD */
.xn-footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.xn-legal-links { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.xn-legal-links a,.xn-cookie-settings { color:inherit; font:inherit; text-decoration:underline; }
.xn-cookie-settings { padding:0; border:0; background:none; cursor:pointer; }
.xn-cookie-banner { position:fixed; z-index:1200; right:22px; bottom:22px; left:22px; display:none; align-items:center; justify-content:space-between; gap:28px; max-width:1120px; margin:auto; padding:22px 24px; border:1px solid var(--xn-border); border-radius:18px; color:var(--xn-text); background:var(--xn-surface); box-shadow:0 24px 70px rgba(0,0,0,.28); }
.xn-cookie-banner.is-open { display:flex; }
.xn-cookie-copy { max-width:670px; }
.xn-cookie-copy h2 { margin:4px 0 6px; font-size:1.35rem; }
.xn-cookie-copy p { margin:0 0 7px; color:var(--xn-muted); font-size:.92rem; }
.xn-cookie-copy > a { color:var(--xn-text); font-weight:750; text-decoration:underline; }
.xn-cookie-actions,.xn-cookie-modal-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; flex-wrap:wrap; }
.xn-cookie-actions button,.xn-cookie-modal-actions button,.xn-enable-media { min-height:42px; padding:10px 15px; border:1px solid var(--xn-border); border-radius:10px; color:var(--xn-text); background:var(--xn-bg); font-weight:800; cursor:pointer; }
.xn-cookie-actions .xn-cookie-accept,.xn-cookie-modal-actions .xn-cookie-accept,.xn-cookie-save { border-color:var(--xn-accent); color:#111; background:var(--xn-accent); }
.xn-cookie-modal .xn-modal-card { width:min(620px,calc(100vw - 30px)); }
.xn-consent-options { display:grid; gap:8px; margin:22px 0; }
.xn-consent-options label { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px; border:1px solid var(--xn-border); border-radius:12px; }
.xn-consent-options span { display:grid; gap:3px; }
.xn-consent-options small { color:var(--xn-muted); }
.xn-consent-options input { width:22px; height:22px; accent-color:var(--xn-accent); }
.xn-consent-embed,.xn-consent-script { display:grid; place-items:center; min-height:180px; margin:20px auto; padding:24px; border:1px dashed var(--xn-border); border-radius:14px; text-align:center; background:var(--xn-surface); }
.xn-consent-embed iframe { display:none; }
.xn-consent-embed.is-enabled { display:block; padding:0; border:0; background:none; }
.xn-consent-embed.is-enabled > p,.xn-consent-embed.is-enabled > button { display:none; }
.xn-consent-embed.is-enabled iframe { display:block; }
.xn-consent-script.is-enabled { min-height:0; margin:0; padding:0; border:0; background:none; }
.xn-consent-script.is-enabled > p,.xn-consent-script.is-enabled > button { display:none; }
@media (max-width:720px) { .xn-cookie-banner { right:8px; bottom:8px; left:8px; align-items:stretch; flex-direction:column; gap:10px; padding:12px 14px; border-radius:14px; } .xn-cookie-copy .xn-eyebrow { font-size:.68rem; } .xn-cookie-copy h2 { margin:2px 0 3px; font-size:1.05rem; } .xn-cookie-copy p { margin-bottom:3px; font-size:.8rem; line-height:1.35; } .xn-cookie-copy > a { font-size:.78rem; } .xn-cookie-actions { display:grid; grid-template-columns:1fr 1fr 1fr; gap:6px; } .xn-cookie-actions button { width:100%; min-height:38px; padding:7px 6px; font-size:.75rem; line-height:1.15; } .xn-cookie-actions .xn-cookie-accept,.xn-cookie-actions .xn-cookie-reject { border-color:var(--xn-accent); } .xn-cookie-actions .xn-cookie-reject { color:var(--xn-text); background:transparent; } .xn-cookie-modal-actions { align-items:stretch; flex-direction:column; } .xn-cookie-modal-actions button { width:100%; } }
