/*
Theme Name: POLARES
Theme URI: https://polares.ao
Author: POLARES
Author URI: https://polares.ao
Description: Tema editorial POLARES | tech&business — inteligência económica e estratégica para Angola. Convertido para WordPress a partir do design original do site.
Version: 1.0.0
Requires at least: 6.4
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: polares
Tags: black, cream, red, editorial, news, magazine, one-column, custom-menu, featured-images, translation-ready
*/

/* ==========================================================================
   O CSS abaixo é o design original da POLARES, preservado integralmente.
   Apenas foram adicionadas, no final do ficheiro, pequenas extensões
   necessárias para elementos nativos do WordPress (paginação, formulário
   de pesquisa, comentários, imagens do editor) que não existiam no
   mockup estático original — construídas com as mesmas variáveis e
   linguagem visual do tema.
   ========================================================================== */


  :root{
    --cream: #ede7d9;
    --cream-2: #e7dfcd;
    --paper: #f4f0e6;
    --ink: #1c1a16;
    --ink-soft: #3a352c;
    --muted: #77705f;
    --muted-2: #948d7a;
    --line: rgba(28,26,22,0.12);
    --line-soft: rgba(28,26,22,0.08);
    --black: #100f0d;
    --black-2: #17150f;
    --red: #7c1420;
    --red-2: #5c0f19;
    --red-bright: #9c1c26;
    --gold: #c8a662;
    --gold-soft: #d9c294;
    --cream-text: #f2ede0;
    --cream-text-dim: rgba(242,237,224,0.62);
    --serif: 'Playfair Display', Georgia, serif;
    --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --wrap: 1320px;
  }

  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:var(--sans);
    -webkit-font-smoothing:antialiased;
    line-height:1.5;
  }
  img,svg{display:block;max-width:100%;}
  a{color:inherit;text-decoration:none;}
  ul{list-style:none;}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
  input{font-family:inherit;}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 40px;}

  .eyebrow{
    font-family:var(--sans);
    font-size:11px;
    font-weight:700;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--red);
  }
  .eyebrow.on-dark{color:var(--gold-soft);}

  /* ================= TICKER ================= */
  .ticker-bar{
    background: linear-gradient(180deg, var(--red-bright), var(--red-2));
    color:#f4e9e4;
    overflow:hidden;
    white-space:nowrap;
    border-bottom:1px solid rgba(0,0,0,0.25);
    font-size:12px;
  }
  .ticker-bar .wrap{padding:0;}
  .ticker-inner{
    display:flex;
    align-items:center;
    height:38px;
  }
  .ticker-live{
    display:flex;
    align-items:center;
    gap:8px;
    padding:0 22px;
    height:100%;
    flex:0 0 auto;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
    font-size:11px;
    background:rgba(0,0,0,0.14);
    border-right:1px solid rgba(255,255,255,0.16);
  }
  .live-dot{
    width:6px;height:6px;border-radius:50%;
    background:#fff;
    box-shadow:0 0 0 0 rgba(255,255,255,0.7);
    animation:pulse 1.8s infinite;
  }
  @keyframes pulse{
    0%{box-shadow:0 0 0 0 rgba(255,255,255,0.55);}
    70%{box-shadow:0 0 0 6px rgba(255,255,255,0);}
    100%{box-shadow:0 0 0 0 rgba(255,255,255,0);}
  }
  .ticker-track{
    display:flex;
    align-items:center;
    animation:scroll-ticker 38s linear infinite;
    flex:1 1 auto;
  }
  .ticker-bar:hover .ticker-track{animation-play-state:paused;}
  @keyframes scroll-ticker{
    0%{transform:translateX(0);}
    100%{transform:translateX(-50%);}
  }
  .ticker-item{
    display:flex;
    align-items:baseline;
    gap:8px;
    padding:0 26px;
    border-right:1px solid rgba(255,255,255,0.14);
    flex:0 0 auto;
  }
  .ticker-item .sym{font-weight:700;letter-spacing:0.04em;}
  .ticker-item .val{font-variant-numeric:tabular-nums;color:#fff;}
  .ticker-item .chg{font-weight:600;font-variant-numeric:tabular-nums;}
  .chg.up{color:#dff2c8;}
  .chg.down{color:#ffd6ca;}
  .chg.flat{color:rgba(255,255,255,0.65);}
  .ticker-note{
    margin-left:auto;
    padding:0 22px;
    height:100%;
    display:flex;
    align-items:center;
    font-size:10.5px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:rgba(244,233,228,0.55);
    flex:0 0 auto;
    border-left:1px solid rgba(255,255,255,0.16);
    background:rgba(0,0,0,0.14);
  }

  /* ================= HEADER ================= */
  .site-header{
    background:var(--black);
    color:var(--cream-text);
    padding:22px 0;
    border-bottom:1px solid rgba(255,255,255,0.06);
  }
  .site-header .wrap{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
  }
  .brand{
    display:flex;
    align-items:center;
    gap:14px;
    flex:1 1 240px;
  }
  .brand-mark{
    width:34px;height:34px;
    flex:0 0 auto;
    transform:rotate(0deg);
  }
  .brand-name{
    font-family:var(--serif);
    font-size:22px;
    font-weight:700;
    letter-spacing:0.06em;
    color:var(--cream-text);
    white-space:nowrap;
  }
  .brand-badge{
    font-size:9.5px;
    font-weight:700;
    letter-spacing:0.14em;
    color:var(--gold-soft);
    border:1px solid rgba(200,166,98,0.45);
    padding:3px 8px;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .brand-tagline{
    text-align:center;
    flex:1 1 320px;
  }
  .brand-tagline .eyebrow{display:block;margin-bottom:4px;}
  .brand-tagline .line{
    font-family:var(--serif);
    font-style:italic;
    font-weight:500;
    font-size:16px;
    color:var(--cream-text);
  }
  .header-meta{
    display:flex;
    align-items:center;
    gap:8px;
    flex:1 1 200px;
    justify-content:flex-end;
    font-size:12px;
    letter-spacing:0.06em;
    color:var(--cream-text-dim);
    white-space:nowrap;
  }
  .header-meta .dot{
    width:6px;height:6px;border-radius:50%;
    background:var(--red-bright);
    box-shadow:0 0 0 0 rgba(156,28,38,0.7);
    animation:pulse-red 2s infinite;
  }
  @keyframes pulse-red{
    0%{box-shadow:0 0 0 0 rgba(156,28,38,0.55);}
    70%{box-shadow:0 0 0 5px rgba(156,28,38,0);}
    100%{box-shadow:0 0 0 0 rgba(156,28,38,0);}
  }

  /* ================= NAV ================= */
  .main-nav{
    background:var(--black-2);
    border-bottom:1px solid rgba(255,255,255,0.07);
  }
  .main-nav .wrap{
    display:flex;
    align-items:center;
    gap:34px;
    height:52px;
    overflow-x:auto;
  }
  .main-nav a{
    font-size:12px;
    font-weight:600;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:rgba(242,237,224,0.62);
    padding:6px 0;
    border-bottom:2px solid transparent;
    transition:color .2s ease, border-color .2s ease;
    white-space:nowrap;
  }
  .main-nav a:hover{color:var(--cream-text);}
  .main-nav a.active{
    color:var(--cream-text);
    border-bottom-color:var(--red-bright);
  }
  .nav-toggle{display:none;}

  /* ================= HERO ================= */
  .hero{
    padding:96px 0 0;
    background:var(--paper);
  }
  .hero .wrap{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center;
  }
  .hero-eyebrow{margin-bottom:22px;letter-spacing:0.2em;}
  .hero h1{
    font-family:var(--serif);
    font-weight:700;
    font-size:clamp(40px,4.4vw,64px);
    line-height:1.07;
    letter-spacing:-0.01em;
    color:var(--ink);
  }
  .hero h1 em{
    font-style:italic;
    color:var(--red);
    font-weight:600;
  }
  .hero p.lede{
    margin-top:26px;
    max-width:440px;
    font-size:16.5px;
    line-height:1.65;
    color:var(--muted);
  }
  .explore-link{
    margin-top:40px;
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:12px;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--ink);
    padding-bottom:6px;
    border-bottom:1px solid var(--ink);
  }
  .explore-link .arrow{
    display:inline-block;
    animation:bob 2s ease-in-out infinite;
  }
  @keyframes bob{
    0%,100%{transform:translateY(0);}
    50%{transform:translateY(4px);}
  }

  .feature-card{
    display:grid;
    grid-template-rows:auto auto;
    box-shadow:0 30px 60px -25px rgba(28,20,15,0.35);
  }
  .feature-card .fc-top{
    background:
      radial-gradient(circle at 30% 30%, rgba(255,255,255,0.06), transparent 60%),
      linear-gradient(160deg, var(--red-bright), var(--red-2) 75%);
    padding:36px 34px 30px;
    position:relative;
    overflow:hidden;
    min-height:220px;
  }
  .fc-top .fc-bars{
    display:flex;
    align-items:flex-end;
    gap:8px;
    height:64px;
    opacity:0.85;
    margin-bottom:26px;
  }
  .fc-top .fc-bars span{
    width:9px;
    background:rgba(255,255,255,0.55);
    border-radius:1px;
  }
  .fc-stat{margin-bottom:16px;}
  .fc-stat:last-child{margin-bottom:0;}
  .fc-stat .num{
    font-family:var(--serif);
    font-size:34px;
    font-weight:700;
    color:#fff;
    line-height:1;
  }
  .fc-stat .lab{
    margin-top:6px;
    font-size:10px;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:rgba(255,255,255,0.72);
  }
  .fc-two-stats{display:flex;gap:40px;}

  .feature-card .fc-bottom{
    background:var(--black);
    padding:34px 34px 30px;
  }
  .fc-bottom .eyebrow{margin-bottom:14px;letter-spacing:0.16em;color:var(--gold-soft);}
  .fc-bottom h3{
    font-family:var(--serif);
    font-weight:600;
    font-size:26px;
    line-height:1.24;
    color:var(--cream-text);
  }
  .fc-bottom p{
    margin-top:14px;
    font-size:14px;
    line-height:1.6;
    color:rgba(242,237,224,0.6);
  }
  .fc-byline{
    margin-top:20px;
    font-size:11px;
    letter-spacing:0.06em;
    text-transform:uppercase;
    color:rgba(242,237,224,0.42);
  }

  /* ================= STATS BANNER ================= */
  .stats-banner{
    margin-top:96px;
    background:linear-gradient(180deg, var(--red-bright), var(--red));
    color:#fff;
  }
  .stats-banner .wrap{
    display:grid;
    grid-template-columns:1.2fr repeat(4,1fr);
    gap:0;
  }
  .sb-lead{
    padding:34px 40px 34px 0;
    display:flex;
    gap:14px;
    align-items:flex-start;
    border-right:1px solid rgba(255,255,255,0.16);
  }
  .sb-lead .icon{
    width:34px;height:34px;flex:0 0 auto;margin-top:2px;
    opacity:0.9;
  }
  .sb-lead .eyebrow{color:rgba(255,232,224,0.75);letter-spacing:0.16em;margin-bottom:6px;}
  .sb-lead .title{
    font-family:var(--serif);
    font-weight:600;
    font-size:17px;
    line-height:1.3;
  }
  .sb-stat{
    padding:34px 28px;
    border-right:1px solid rgba(255,255,255,0.16);
  }
  .sb-stat:last-child{border-right:none;}
  .sb-stat .lab{
    font-size:10.5px;
    font-weight:700;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:rgba(255,232,224,0.68);
  }
  .sb-stat .val{
    margin-top:10px;
    font-family:var(--serif);
    font-weight:700;
    font-size:30px;
  }
  .sb-stat .delta{
    margin-top:8px;
    font-size:12px;
    font-weight:600;
    color:rgba(255,255,255,0.75);
    display:flex;
    align-items:center;
    gap:5px;
  }

  /* ================= SECTION HEAD ================= */
  .section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    padding-bottom:26px;
    margin-bottom:52px;
    border-bottom:1px solid var(--line);
  }
  .section-head .htext .eyebrow{margin-bottom:10px;letter-spacing:0.18em;}
  .section-head h2{
    font-family:var(--serif);
    font-weight:700;
    font-size:clamp(28px,3vw,40px);
    color:var(--ink);
  }
  .view-archive{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:11px;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--red);
    white-space:nowrap;
    padding-bottom:6px;
  }

  /* ================= ARTICLE GRID ================= */
  .analyses{padding:110px 0 40px;}
  .article-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:40px 32px;
  }
  .article-card{display:flex;flex-direction:column;}
  .thumb{
    aspect-ratio:16/11;
    position:relative;
    overflow:hidden;
    margin-bottom:22px;
    background:
      radial-gradient(circle at 30% 78%, rgba(255,255,255,0.05), transparent 55%),
      linear-gradient(155deg, var(--th-a,#16332e), var(--th-b,#0c1f1c));
    background-size:cover;
  }
  .thumb::before{
    content:"";
    position:absolute;inset:0;
    background-image:
      linear-gradient(rgba(255,255,255,0.055) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,0.055) 1px, transparent 1px);
    background-size:26px 26px;
  }
  .thumb::after{
    content:"";
    position:absolute;
    left:-40%;bottom:-60%;
    width:150%;height:150%;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:50%;
  }
  .thumb .idx{
    position:absolute;top:14px;right:16px;
    font-size:11px;
    letter-spacing:0.08em;
    color:rgba(255,255,255,0.5);
    z-index:2;
  }
  .thumb .glyph{
    position:absolute;
    left:34px;bottom:26px;
    z-index:2;
    color:var(--gold-soft);
  }
  .thumb .glyph.diamond{
    width:38px;height:38px;
    border:2px solid var(--gold-soft);
    transform:rotate(45deg);
  }
  .thumb .glyph.circle{
    width:34px;height:34px;
    border-radius:50%;
    background:var(--gold-soft);
  }
  .thumb .glyph.roman{
    font-family:var(--serif);
    font-size:40px;
    font-weight:700;
    line-height:1;
    color:var(--gold-soft);
  }
  .article-card .cat{margin-bottom:10px;letter-spacing:0.14em;}
  .article-card h3{
    font-family:var(--serif);
    font-weight:700;
    font-size:21px;
    line-height:1.32;
    color:var(--ink);
    margin-bottom:12px;
  }
  .article-card p{
    font-size:14px;
    line-height:1.62;
    color:var(--muted);
    margin-bottom:18px;
  }
  .article-card .meta{
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:11px;
    letter-spacing:0.06em;
    color:var(--muted-2);
    padding-top:14px;
    border-top:1px solid var(--line-soft);
  }
  .article-card .meta .go{
    color:var(--ink);
    transition:transform .2s ease;
  }
  .article-card:hover .meta .go{transform:translate(3px,-3px);}
  .article-card a.card-link{display:contents;}

  /* text-only pair */
  .analyses-secondary{padding:20px 0 0;}
  .text-pair{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:48px;
    padding-bottom:64px;
  }
  .text-card h3{
    font-family:var(--serif);
    font-weight:700;
    font-size:23px;
    line-height:1.34;
    margin:12px 0 12px;
    color:var(--ink);
  }
  .text-card p{
    font-size:14.5px;
    line-height:1.65;
    color:var(--muted);
    max-width:480px;
  }
  .text-card .meta{
    margin-top:20px;
    display:flex;
    align-items:center;
    gap:10px;
    font-size:11px;
    letter-spacing:0.06em;
    color:var(--muted-2);
  }

  /* ================= SCENARIO FEATURE (large) ================= */
  .scenario{
    display:grid;
    grid-template-columns:0.85fr 1.15fr;
    box-shadow:0 30px 70px -30px rgba(28,20,15,0.35);
    margin-bottom:110px;
  }
  .scenario .sc-left{
    background:radial-gradient(circle at 20% 20%, rgba(255,255,255,0.05), transparent 60%), linear-gradient(160deg, var(--red-bright), var(--red-2));
    padding:56px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
  }
  .probability{
    position:relative;
    width:180px;height:180px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.18);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;
  }
  .probability::before{
    content:"";
    position:absolute;
    inset:-30px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.1);
  }
  .probability .pnum{
    font-family:var(--serif);
    font-weight:700;
    font-size:52px;
    color:#fff;
    line-height:1;
  }
  .probability .pnum sup{font-size:22px;font-weight:600;}
  .probability .plab{
    margin-top:10px;
    font-size:9.5px;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:rgba(255,255,255,0.72);
    text-align:center;
    padding:0 12px;
  }
  .probability .dot-marker{
    position:absolute;
    width:8px;height:8px;
    border-radius:50%;
    background:#fff;
    left:2px;bottom:38px;
    box-shadow:0 0 0 4px rgba(255,255,255,0.15);
  }
  .sc-right{
    background:var(--black);
    padding:56px 56px 48px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .sc-right .eyebrow{margin-bottom:16px;letter-spacing:0.16em;}
  .sc-right h3{
    font-family:var(--serif);
    font-weight:700;
    font-size:clamp(26px,2.6vw,36px);
    line-height:1.16;
    color:var(--cream-text);
    max-width:520px;
  }
  .sc-right p{
    margin-top:18px;
    font-size:14.5px;
    line-height:1.65;
    color:rgba(242,237,224,0.6);
    max-width:520px;
  }
  .sc-tags{
    display:flex;
    flex-wrap:wrap;
    gap:22px;
    margin-top:26px;
  }
  .sc-tags span{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:11.5px;
    color:rgba(242,237,224,0.7);
  }
  .sc-tags .ic{
    width:15px;height:15px;
    color:var(--gold-soft);
    flex:0 0 auto;
  }
  .read-thesis{
    margin-top:30px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    width:fit-content;
    font-size:11px;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
    color:var(--gold-soft);
    padding-bottom:6px;
    border-bottom:1px solid rgba(200,166,98,0.5);
  }

  /* ================= NEWSLETTER ================= */
  .newsletter{
    background:var(--cream-2);
    padding:100px 0;
  }
  .newsletter .wrap{
    display:grid;
    grid-template-columns:1.1fr 1fr;
    gap:60px;
    align-items:center;
  }
  .newsletter .eyebrow{margin-bottom:16px;letter-spacing:0.18em;}
  .newsletter h2{
    font-family:var(--serif);
    font-weight:700;
    font-size:clamp(34px,4vw,52px);
    line-height:1.1;
    color:var(--ink);
  }
  .newsletter h2 em{
    font-style:italic;
    color:var(--red);
    font-weight:600;
  }
  .nl-right p{
    font-size:15px;
    line-height:1.65;
    color:var(--muted);
    max-width:420px;
    margin-bottom:22px;
  }
  .nl-form{
    display:flex;
    max-width:420px;
    border-bottom:1.5px solid var(--ink);
  }
  .nl-form input{
    flex:1;
    background:transparent;
    border:none;
    outline:none;
    padding:14px 4px;
    font-size:14.5px;
    color:var(--ink);
  }
  .nl-form input::placeholder{color:var(--muted-2);}
  .nl-form button{
    width:44px;height:44px;
    flex:0 0 auto;
    background:var(--red);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:flex-end;
    margin-bottom:2px;
    transition:background .2s ease;
  }
  .nl-form button:hover{background:var(--red-bright);}
  .nl-note{
    margin-top:12px;
    font-size:11.5px;
    color:var(--muted-2);
  }
  .nl-note.success{color:var(--red);font-weight:600;}

  /* ================= FOOTER ================= */
  .site-footer{
    background:var(--black);
    color:rgba(242,237,224,0.7);
    padding:80px 0 0;
  }
  .footer-grid{
    display:grid;
    grid-template-columns:1.4fr 0.8fr 0.8fr 1fr;
    gap:40px;
    padding-bottom:64px;
    border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .footer-brand{padding-right:20px;}
  .footer-brand .brand{margin-bottom:18px;}
  .footer-brand .brand-name{font-size:19px;}
  .footer-brand p{
    font-size:13.5px;
    line-height:1.7;
    color:rgba(242,237,224,0.5);
    max-width:300px;
  }
  .footer-col h4{
    font-size:10.5px;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:rgba(242,237,224,0.4);
    margin-bottom:20px;
  }
  .footer-col ul li{margin-bottom:12px;}
  .footer-col a{
    font-size:13.5px;
    color:rgba(242,237,224,0.72);
    transition:color .2s ease;
  }
  .footer-col a:hover{color:var(--gold-soft);}
  .footer-nl h4{
    font-size:10.5px;
    font-weight:700;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:rgba(242,237,224,0.4);
    margin-bottom:16px;
  }
  .footer-nl p{
    font-size:13px;
    color:rgba(242,237,224,0.55);
    margin-bottom:16px;
    line-height:1.6;
  }
  .footer-nl .nl-form{
    max-width:100%;
    border-bottom:1.5px solid rgba(242,237,224,0.35);
  }
  .footer-nl .nl-form input{color:var(--cream-text);}
  .footer-nl .nl-form input::placeholder{color:rgba(242,237,224,0.4);}

  .footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:26px 0;
    font-size:11px;
    letter-spacing:0.06em;
    color:rgba(242,237,224,0.4);
  }
  .footer-bottom .brandline{
    letter-spacing:0.18em;
    font-weight:600;
    color:rgba(242,237,224,0.55);
  }

  .to-top{
    position:fixed;
    right:28px;bottom:28px;
    width:46px;height:46px;
    background:var(--red);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    pointer-events:none;
    transform:translateY(10px);
    transition:opacity .25s ease, transform .25s ease, background .2s ease;
    z-index:60;
  }
  .to-top.visible{opacity:1;pointer-events:auto;transform:translateY(0);}
  .to-top:hover{background:var(--red-bright);}

  /* ================= RESPONSIVE ================= */
  @media (max-width:1080px){
    .hero .wrap{grid-template-columns:1fr;gap:56px;}
    .article-grid{grid-template-columns:repeat(2,1fr);}
    .text-pair{grid-template-columns:1fr;gap:36px;}
    .scenario{grid-template-columns:1fr;}
    .newsletter .wrap{grid-template-columns:1fr;gap:36px;}
    .footer-grid{grid-template-columns:1fr 1fr;}
    .stats-banner .wrap{grid-template-columns:1fr 1fr;}
    .sb-lead{border-right:none;border-bottom:1px solid rgba(255,255,255,0.16);grid-column:1/-1;padding:28px 0;}
    .sb-stat{border-right:1px solid rgba(255,255,255,0.16);}
  }
  @media (max-width:760px){
    .wrap{padding:0 22px;}
    .site-header .wrap{flex-wrap:wrap;row-gap:14px;}
    .brand-tagline{order:3;flex:1 1 100%;text-align:left;}
    .header-meta{order:2;}
    .main-nav .wrap{gap:22px;}
    .hero{padding:56px 0 0;}
    .stats-banner{margin-top:56px;}
    .stats-banner .wrap{grid-template-columns:1fr;}
    .sb-stat{border-right:none !important;border-bottom:1px solid rgba(255,255,255,0.16);}
    .analyses{padding:70px 0 20px;}
    .article-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:1fr;padding-bottom:40px;}
    .footer-bottom{flex-direction:column;gap:10px;align-items:flex-start;}
    .scenario .sc-left,.sc-right{padding:40px 28px;}
    .newsletter{padding:64px 0;}
  }

/* ================= WORDPRESS: ALINHAMENTOS NATIVOS ================= */
.alignleft{float:left;margin:6px 24px 12px 0;}
.alignright{float:right;margin:6px 0 12px 24px;}
.aligncenter{display:block;margin:12px auto;}
.wp-caption{max-width:100%;}
.wp-caption-text{font-size:12px;color:var(--muted);margin-top:6px;}
.screen-reader-text{
  position:absolute !important;
  clip:rect(1px,1px,1px,1px);
  width:1px;height:1px;overflow:hidden;
  word-wrap:normal !important;
}

/* ================= SEARCH FORM ================= */
.polares-search{
  display:flex;
  align-items:center;
  gap:0;
  border:1px solid rgba(242,237,224,0.28);
  padding:2px 4px 2px 12px;
}
.polares-search input[type="search"]{
  background:transparent;
  border:none;
  outline:none;
  color:var(--cream-text);
  font-size:12px;
  letter-spacing:0.04em;
  width:150px;
  padding:8px 0;
}
.polares-search input[type="search"]::placeholder{color:var(--cream-text-dim);}
.polares-search button{
  color:var(--gold-soft);
  font-size:12px;
  font-weight:700;
  padding:8px 10px;
}
.search-page-form{
  max-width:560px;
  margin:0 auto 56px;
  display:flex;
  border-bottom:2px solid var(--ink);
}
.search-page-form input[type="search"]{
  flex:1;
  border:none;
  outline:none;
  background:transparent;
  font-family:var(--serif);
  font-size:22px;
  padding:12px 0;
  color:var(--ink);
}
.search-page-form button{
  font-size:12px;
  font-weight:700;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--red);
}

/* ================= PAGE HEADER (archive/category/tag/search/404) ================= */
.page-header-band{
  background:var(--black);
  color:var(--cream-text);
  padding:64px 0 44px;
}
.page-header-band .eyebrow{margin-bottom:12px;}
.page-header-band h1{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(30px,3.6vw,46px);
  color:var(--cream-text);
}
.page-header-band p{
  margin-top:14px;
  color:var(--cream-text-dim);
  font-size:14.5px;
  max-width:620px;
}
.archive-wrap{padding:70px 0 40px;}

/* ================= PAGINATION ================= */
.polares-pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:70px 0 40px;
  padding-top:34px;
  border-top:1px solid var(--line);
}
.polares-pagination a,
.polares-pagination span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 10px;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.04em;
  color:var(--ink-soft);
  border:1px solid var(--line);
}
.polares-pagination a:hover{border-color:var(--red);color:var(--red);}
.polares-pagination span.current{
  background:var(--black);
  color:var(--cream-text);
  border-color:var(--black);
}

/* ================= SINGLE ARTICLE ================= */
.single-article-header{
  background:var(--black);
  color:var(--cream-text);
  padding:70px 0 50px;
}
.single-article-header .wrap{max-width:840px;}
.single-article-header .eyebrow{margin-bottom:16px;}
.single-article-header h1{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(30px,4vw,50px);
  line-height:1.14;
  color:var(--cream-text);
}
.single-article-header .excerpt{
  margin-top:20px;
  font-size:16px;
  line-height:1.6;
  color:var(--cream-text-dim);
  font-family:var(--serif);
  font-style:italic;
}
.single-article-meta{
  margin-top:28px;
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  font-size:12px;
  letter-spacing:0.04em;
  color:var(--cream-text-dim);
  border-top:1px solid rgba(255,255,255,0.12);
  padding-top:20px;
}
.single-article-thumb{
  max-width:840px;
  margin:0 auto;
}
.single-article-thumb img{width:100%;height:auto;}
.single-article-body{
  max-width:720px;
  margin:0 auto;
  padding:56px 0 30px;
  font-size:17px;
  line-height:1.8;
  color:var(--ink-soft);
}
.single-article-body h2{
  font-family:var(--serif);
  font-weight:700;
  font-size:28px;
  margin:44px 0 18px;
  color:var(--ink);
}
.single-article-body h3{
  font-family:var(--serif);
  font-weight:700;
  font-size:22px;
  margin:36px 0 14px;
  color:var(--ink);
}
.single-article-body p{margin-bottom:20px;}
.single-article-body a{color:var(--red);border-bottom:1px solid rgba(124,20,32,0.35);}
.single-article-body blockquote{
  margin:32px 0;
  padding:6px 0 6px 24px;
  border-left:3px solid var(--red);
  font-family:var(--serif);
  font-style:italic;
  font-size:19px;
  color:var(--ink);
}
.single-article-body img{margin:28px 0;}
.single-article-body ul,.single-article-body ol{margin:0 0 20px 22px;}
.single-article-footer{
  max-width:720px;
  margin:0 auto;
  padding:24px 0 60px;
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap;
  font-size:12px;
  letter-spacing:0.06em;
  color:var(--muted-2);
}
.single-article-footer a{color:var(--red);font-weight:700;}
.related-articles{padding:20px 0 90px;}
.related-articles h2{
  font-family:var(--serif);
  font-size:24px;
  margin-bottom:36px;
  border-bottom:1px solid var(--line);
  padding-bottom:20px;
}

/* ================= COMMENTS ================= */
.polares-comments{max-width:720px;margin:0 auto;padding:0 0 90px;}
.polares-comments .comments-title{
  font-family:var(--serif);
  font-size:22px;
  margin-bottom:28px;
}
.polares-comments ol.comment-list{list-style:none;margin:0;padding:0;}
.polares-comments .comment{
  border-top:1px solid var(--line);
  padding:22px 0;
}
.polares-comments .comment-author{font-weight:700;font-size:13px;color:var(--ink);}
.polares-comments .comment-meta{font-size:11px;color:var(--muted-2);margin-bottom:8px;}
.polares-comments .comment-content p{font-size:14.5px;line-height:1.7;color:var(--ink-soft);}
.polares-comments .comment-reply-link{
  font-size:11px;
  font-weight:700;
  letter-spacing:0.06em;
  text-transform:uppercase;
  color:var(--red);
}
.comment-respond{margin-top:36px;}
.comment-respond .comment-reply-title{font-family:var(--serif);font-size:20px;margin-bottom:16px;}
.comment-form p{margin-bottom:16px;}
.comment-form label{display:block;font-size:11px;letter-spacing:0.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;}
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
  width:100%;
  border:1px solid var(--line);
  padding:10px 12px;
  font-size:14px;
  font-family:var(--sans);
  background:var(--paper);
}
.comment-form .form-submit input{
  background:var(--black);
  color:var(--cream-text);
  padding:12px 26px;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.1em;
  text-transform:uppercase;
}

/* ================= 404 ================= */
.error-404{padding:120px 0;text-align:center;}
.error-404 .code{font-family:var(--serif);font-size:120px;font-weight:700;color:var(--line);line-height:1;}
.error-404 h1{font-family:var(--serif);font-size:30px;margin:10px 0 16px;}
.error-404 p{color:var(--muted);margin-bottom:30px;}

/* ================= WIDGETS / SIDEBAR ================= */
.polares-sidebar .widget{margin-bottom:44px;}
.polares-sidebar .widget-title{
  font-family:var(--serif);
  font-size:18px;
  padding-bottom:14px;
  margin-bottom:20px;
  border-bottom:1px solid var(--line);
}

/* ================= EMPTY STATE ================= */
.no-results{padding:40px 0 90px;color:var(--muted);}
