:root{
    --ink:#0B2E6B;          /* azul Porto Rondônia — dark base */
    --ink-2:#123B82;        /* azul levemente mais claro para cards escuros */
    --sand:#F3F6F1;         /* branco/paper — background claro */
    --sand-2:#E1E7DD;       /* cinza-esverdeado claro para bordas/divisores */
    --gold:#F7C600;         /* amarelo da marca — accent principal */
    --gold-2:#A67C00;       /* variante escura do amarelo (contraste em fundo claro) */
    --clay:#C0392B;         /* vermelho de alerta — polícia, urgente */
    --plum:#1E8A3C;         /* verde da marca — cultura */
    --slate:#45607A;        /* azul acinzentado — geral / neutro */
    --white:#FFFFFF;
    --ink-soft: rgba(11,46,107,0.72);
    --shadow: 0 12px 30px -12px rgba(11,46,107,0.35);
    --radius: 2px;
    --bs-body-font-family:'Inter',sans-serif;
    --bs-link-color:var(--ink);
    --bs-link-hover-color:var(--gold-2);
  }

  html{scroll-behavior:smooth;}
  body{
    margin:0;background:var(--sand);color:var(--ink);
    font-family:'Inter',sans-serif; -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block;object-fit:cover;}
  a{text-decoration:none;color:inherit;}
  h1,h2,h3,h4{font-family:'Fraunces',serif;margin:0;line-height:1.05;}
  .eyebrow{
    font-family:'JetBrains Mono',monospace;text-transform:uppercase;
    letter-spacing:0.14em;font-size:0.68rem;font-weight:700;
  }

  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;scroll-behavior:auto !important;}
  }

  /* ---------- TOPBAR ---------- */
  .topbar{
    background:var(--ink);color:var(--sand);
    font-family:'JetBrains Mono',monospace;font-size:0.72rem;letter-spacing:0.03em;
  }
  .topbar .row{--bs-gutter-x:0.75rem;}
  .topbar .date{opacity:0.75;text-transform:capitalize;}
  .river-gauge{display:flex;align-items:center;gap:8px;}
  .river-gauge i{color:var(--gold);}
  .river-gauge .lvl-num{color:var(--gold);font-weight:700;}
  .topbar .socials a{
    opacity:0.75;transition:opacity .2s,color .2s;color:var(--sand);
    display:inline-flex;width:26px;justify-content:center;
  }
  .topbar .socials a:hover{opacity:1;color:var(--gold);}

  /* ---------- HEADER / NAV ---------- */
  header.main{background:var(--sand);border-bottom:1px solid var(--sand-2);position:sticky;top:0;z-index:1030;}
  .brand-row{padding:16px 0;}
  .logo{display:flex;align-items:center;gap:12px;}
  .logo .mark{width:42px;height:42px;flex-shrink:0;}
  .logo .word{font-size:1.35rem;font-weight:700;letter-spacing:-0.01em;color:var(--ink);}
  .logo .word .pr-green{color:var(--plum);}
  .logo .word .pr-blue{color:var(--ink);}
  .logo .tagline{
    font-family:'JetBrains Mono',monospace;font-size:0.6rem;letter-spacing:0.14em;
    text-transform:uppercase;color:var(--slate);margin-top:2px;
  }
  @media (min-width:576px){
    .logo .word{font-size:1.5rem;}
    .logo .mark{width:44px;height:44px;}
  }

  .icon-btn{
    border:1px solid var(--sand-2);background:var(--white);color:var(--ink-soft);
    width:40px;height:40px;border-radius:100px;display:inline-flex;
    align-items:center;justify-content:center;transition:border-color .2s,color .2s;
  }
  .icon-btn:hover{border-color:var(--gold);color:var(--ink);}
  .navbar-toggler{
    border:1px solid var(--sand-2);border-radius:100px;width:40px;height:40px;
    padding:0;display:inline-flex;align-items:center;justify-content:center;
  }
  .navbar-toggler:focus{box-shadow:0 0 0 3px rgba(247,198,0,0.3);}
  .navbar-toggler i{color:var(--ink);font-size:1rem;}

  nav.categories{border-top:1px solid var(--sand-2);}
  nav.categories .cat-scroll{
    display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;
  }
  nav.categories .cat-scroll::-webkit-scrollbar{display:none;}
  nav.categories a{
    display:inline-block;padding:13px 16px;font-family:'JetBrains Mono',monospace;
    font-size:0.72rem;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;
    color:var(--ink-soft);border-bottom:2px solid transparent;
    transition:color .18s,border-color .18s;flex-shrink:0;
  }
  nav.categories a:hover, nav.categories a.active{color:var(--ink);border-color:var(--gold);}

  /* offcanvas mobile menu */
  .offcanvas{background:var(--ink);color:var(--sand);width:290px;}
  .offcanvas .offcanvas-header{border-bottom:1px solid rgba(225,231,221,0.15);}
  .offcanvas .btn-close{filter:invert(1) grayscale(100%) brightness(2);opacity:0.7;}
  .offcanvas-nav a{
    display:flex;align-items:center;justify-content:space-between;
    padding:14px 4px;font-family:'JetBrains Mono',monospace;font-size:0.82rem;
    letter-spacing:0.04em;text-transform:uppercase;color:var(--sand);
    border-bottom:1px solid rgba(225,231,221,0.1);
  }
  .offcanvas-nav a:hover{color:var(--gold);}
  .offcanvas-nav a.active{color:var(--gold);}
  .offcanvas-nav a i{font-size:0.7rem;opacity:0.4;}

  /* ---------- BREADCRUMB (Home + Single) ---------- */
  .breadcrumb-bar{background:var(--white);border-bottom:1px solid var(--sand-2);padding:14px 0;}
  .breadcrumb-row{font-family:'JetBrains Mono',monospace;font-size:0.7rem;letter-spacing:0.03em;text-transform:uppercase;color:var(--ink-soft);}
  .breadcrumb-row a:hover{color:var(--gold-2);}
  .breadcrumb-row i{font-size:0.55rem;margin:0 8px;opacity:0.5;}

  /* ---------- PAGE HERO (Categorias) ---------- */
  .page-hero{
    background:var(--ink);color:var(--white);padding:34px 0;position:relative;overflow:hidden;
    border-bottom:4px solid var(--clay);
  }
  .page-hero::after{
    content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;
    background:radial-gradient(circle, rgba(247,198,0,0.14) 0%, rgba(247,198,0,0) 70%);
  }
  .page-hero .cat-icon{
    width:52px;height:52px;border-radius:100px;background:var(--clay);
    display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;
    box-shadow:0 8px 20px -6px rgba(192,57,43,0.6);
  }
  .page-hero .cat-icon i{font-size:1.3rem;color:var(--white);}
  .page-hero h1{font-size:1.9rem;font-weight:600;color:var(--white);}
  @media (min-width:768px){.page-hero h1{font-size:2.5rem;}}
  .page-hero .sub{font-family:'JetBrains Mono',monospace;font-size:0.72rem;opacity:0.65;margin-top:8px;letter-spacing:0.03em;}

  /* ---------- HERO (Home) ---------- */
  .hero-section{padding:28px 0 8px;}
  @media (min-width:768px){.hero-section{padding:40px 0 12px;}}

  .hero-main{
    position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);
    min-height:300px;display:flex;align-items:flex-end;
  }
  @media (min-width:768px){.hero-main{min-height:440px;}}
  .hero-main img{position:absolute;inset:0;width:100%;height:100%;}
  .hero-main::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(180deg, rgba(11,46,107,0) 30%, rgba(11,46,107,0.94) 100%);
  }
  .hero-main .content{position:relative;z-index:2;padding:20px;color:var(--white);}
  @media (min-width:768px){.hero-main .content{padding:32px;}}

  .cat-tag{
    display:inline-block;font-family:'JetBrains Mono',monospace;font-size:0.66rem;
    font-weight:700;letter-spacing:0.1em;text-transform:uppercase;padding:5px 10px;
    margin-bottom:12px;color:var(--white);
  }
  .cat-tag.policia{background:var(--clay);}
  .cat-tag.geral{background:var(--slate);}
  .cat-tag.cultura{background:var(--plum);}
  .cat-tag.esporte{background:var(--gold-2);}
  .cat-tag.fe{background:#8C7A3E;}
  .cat-tag.politica{background:var(--ink-2);border:1px solid rgba(255,255,255,0.3);}

  .hero-main h1{font-size:1.5rem;font-weight:600;max-width:30ch;color:var(--white);}
  @media (min-width:768px){.hero-main h1{font-size:2.15rem;max-width:26ch;}}
  .hero-meta{
    display:flex;gap:12px;align-items:center;margin-top:14px;
    font-family:'JetBrains Mono',monospace;font-size:0.68rem;opacity:0.75;flex-wrap:wrap;
  }

  /* ---------- ARTICLE (Notícia Single) ---------- */
  .article-section{padding:32px 0 56px;}
  .article-title{font-size:1.7rem;font-weight:600;margin-top:16px;color:var(--ink);}
  @media (min-width:768px){.article-title{font-size:2.4rem;}}
  .article-lead{font-size:1.02rem;line-height:1.6;color:var(--ink-soft);margin-top:14px;max-width:70ch;}

  .article-meta{
    display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:18px;padding:14px 0;
    border-top:1px solid var(--sand-2);border-bottom:1px solid var(--sand-2);
    font-family:'JetBrains Mono',monospace;font-size:0.72rem;color:var(--ink-soft);
  }
  .article-meta .author{display:flex;align-items:center;gap:8px;color:var(--ink);}
  .author .avatar{
    width:30px;height:30px;border-radius:100px;background:var(--ink);color:var(--gold);
    display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;font-size:0.85rem;flex-shrink:0;
  }
  .share-row{display:flex;gap:8px;margin-left:auto;}
  .share-row a{
    width:32px;height:32px;border-radius:100px;border:1px solid var(--sand-2);
    display:flex;align-items:center;justify-content:center;color:var(--ink-soft);transition:all .2s;
  }
  .share-row a:hover{border-color:var(--gold);color:var(--ink);background:var(--white);}

  .article-hero-img{border-radius:var(--radius);overflow:hidden;margin-top:22px;box-shadow:var(--shadow);}
  .article-hero-img figcaption{
    font-family:'JetBrains Mono',monospace;font-size:0.68rem;color:var(--ink-soft);
    padding:8px 2px 0;font-style:normal;
  }

  .article-body{font-size:1.02rem;line-height:1.8;margin-top:28px;max-width:72ch;}
  .article-body p{margin:0 0 22px;}
  .article-body p:first-of-type::first-letter{
    font-family:'Fraunces',serif;font-size:3.4rem;font-weight:600;float:left;line-height:0.85;
    padding-right:10px;padding-top:6px;color:var(--clay);
  }
  .pull-note{
    border-left:3px solid var(--gold);background:var(--white);padding:16px 20px;margin:28px 0;
    font-size:0.92rem;color:var(--ink-soft);line-height:1.6;
  }
  .pull-note strong{color:var(--ink);}

  .source-box{
    margin-top:8px;padding:16px 18px;background:var(--white);border:1px solid var(--sand-2);
    font-family:'JetBrains Mono',monospace;font-size:0.72rem;color:var(--ink-soft);border-radius:var(--radius);
  }
  .source-box a{color:var(--ink);font-weight:600;}
  .source-box a:hover{color:var(--gold-2);}

  .disclaimer-box{
    margin-top:22px;padding:18px 20px;background:rgba(11,46,107,0.04);border-radius:var(--radius);
    font-size:0.82rem;line-height:1.6;color:var(--ink-soft);
  }
  .disclaimer-box strong{color:var(--ink);}

  .tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;}
  .tag-list a{
    font-family:'JetBrains Mono',monospace;font-size:0.66rem;font-weight:500;padding:7px 12px;
    border:1px solid var(--sand-2);border-radius:100px;color:var(--ink-soft);transition:all .2s;
  }
  .tag-list a:hover{border-color:var(--gold);color:var(--ink);background:var(--white);}

  .author-card{
    display:flex;gap:16px;align-items:center;margin-top:36px;padding:20px;
    background:var(--white);border:1px solid var(--sand-2);border-radius:var(--radius);
  }
  .author-card .avatar-lg{
    width:52px;height:52px;border-radius:100px;background:var(--ink);color:var(--gold);
    display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;font-size:1.3rem;flex-shrink:0;
  }
  .author-card h4{font-size:1rem;font-weight:600;}
  .author-card p{margin:2px 0 0;font-size:0.8rem;color:var(--ink-soft);}

  /* ---------- SECTIONS & LISTINGS ---------- */
  .section{padding:36px 0;}
  @media (min-width:768px){.section{padding:56px 0;}}
  .section-head{
    display:flex;align-items:baseline;justify-content:space-between;
    margin-bottom:22px;border-bottom:2px solid var(--ink);padding-bottom:12px;
  }
  @media (min-width:768px){.section-head{margin-bottom:28px;}}
  .section-head h2{font-size:1.25rem;font-weight:600;}
  @media (min-width:768px){.section-head h2{font-size:1.5rem;}}
  .section-head .count{font-family:'JetBrains Mono',monospace;font-size:0.68rem;color:var(--ink-soft);}

  /* Listagem de Categorias */
  .cat-article{
    display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--sand-2);
  }
  .cat-article:first-child{padding-top:0;}
  .cat-article .thumb{
    width:110px;height:88px;flex-shrink:0;border-radius:var(--radius);overflow:hidden;
    background:var(--sand-2);position:relative;
  }
  @media (min-width:576px){.cat-article .thumb{width:180px;height:130px;}}
  .cat-article .thumb img{width:100%;height:100%;transition:transform .5s ease;}
  .cat-article:hover .thumb img{transform:scale(1.06);}
  .cat-article .thumb .no-img{
    width:100%;height:100%;display:flex;align-items:center;justify-content:center;
    color:var(--ink-soft);font-size:1.4rem;background:var(--sand-2);
  }
  .cat-article .body{display:flex;flex-direction:column;min-width:0;}
  .cat-article .meta{
    display:flex;gap:10px;align-items:center;font-family:'JetBrains Mono',monospace;
    font-size:0.66rem;color:var(--ink-soft);margin-bottom:8px;flex-wrap:wrap;
  }
  .cat-article .meta .cat-chip{
    background:var(--clay);color:var(--white);padding:3px 8px;font-weight:700;letter-spacing:0.08em;
  }
  .cat-article h3{font-size:0.98rem;font-weight:600;}
  @media (min-width:576px){.cat-article h3{font-size:1.15rem;}}
  .cat-article h3 a:hover{color:var(--gold-2);}
  .cat-article .excerpt{
    font-size:0.86rem;color:var(--ink-soft);margin-top:8px;line-height:1.5;
    display:none;
  }
  @media (min-width:768px){.cat-article .excerpt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}}

  /* Cards Home */
  .story-card{display:flex;flex-direction:column;height:100%;}
  .story-card .thumb{aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;margin-bottom:14px;background:var(--sand-2);}
  .story-card .thumb img{width:100%;height:100%;transition:transform .5s ease;}
  .story-card:hover .thumb img{transform:scale(1.05);}
  .story-card h3{font-size:1.02rem;font-weight:600;margin-top:2px;}
  .story-card h3 a:hover{color:var(--gold-2);}
  .story-card .excerpt-meta{font-family:'JetBrains Mono',monospace;font-size:0.66rem;color:var(--ink-soft);margin-top:8px;}

  .list-row{display:flex;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--sand-2);}
  .list-row .thumb{width:76px;height:58px;border-radius:var(--radius);overflow:hidden;flex-shrink:0;}
  @media (min-width:576px){.list-row .thumb{width:88px;height:66px;}}
  .list-row .thumb img{width:100%;height:100%;}
  .list-row h4{font-size:0.9rem;font-weight:600;}
  @media (min-width:576px){.list-row h4{font-size:0.96rem;}}
  .list-row h4 a:hover{color:var(--gold-2);}

  .side-card{display:flex;gap:14px;padding:0 0 16px;border-bottom:1px solid var(--sand-2);margin-bottom:16px;}
  .side-card:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
  .side-card .thumb{width:96px;height:72px;flex-shrink:0;border-radius:var(--radius);overflow:hidden;}
  .side-card .thumb img{width:100%;height:100%;}
  .side-card h4{font-size:0.92rem;font-weight:600;margin-top:6px;}
  .side-card h4 a:hover{color:var(--gold-2);}

  /* Paginação */
  .pagination{gap:4px;flex-wrap:wrap;}
  .page-link{
    border:1px solid var(--sand-2);color:var(--ink);font-family:'JetBrains Mono',monospace;
    font-size:0.78rem;border-radius:2px !important;padding:8px 14px;
  }
  .page-link:hover{background:var(--sand);border-color:var(--gold);color:var(--ink);}
  .page-item.active .page-link{background:var(--ink);border-color:var(--ink);color:var(--white);}
  .page-item.disabled .page-link{color:var(--ink-soft);opacity:0.4;}

  /* ---------- SIDEBAR ---------- */
  .sidebar-block{margin-bottom:32px;}
  .sidebar-block h3.block-title{
    font-family:'JetBrains Mono',monospace;font-size:0.76rem;font-weight:700;
    text-transform:uppercase;letter-spacing:0.1em;padding-bottom:12px;
    border-bottom:2px solid var(--ink);margin-bottom:6px;
  }
  .rank-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--sand-2);}
  .rank-row:last-child{border-bottom:none;}
  .rank-row .num{
    font-family:'Fraunces',serif;font-weight:600;font-size:1.5rem;color:var(--sand-2);
    -webkit-text-stroke:1.4px var(--ink);-webkit-text-fill-color:transparent;
    line-height:1;flex-shrink:0;width:32px;
  }
  .rank-row h4{font-size:0.88rem;font-weight:600;}
  .rank-row h4 a:hover{color:var(--gold-2);}

  /* Sidebar específico da single */
  .rank-row .thumb{width:64px;height:52px;border-radius:var(--radius);overflow:hidden;flex-shrink:0;background:var(--sand-2);}
  .rank-row .thumb img{width:100%;height:100%;}
  .rank-row .rdate{font-family:'JetBrains Mono',monospace;font-size:0.62rem;color:var(--ink-soft);margin-top:4px;display:block;}

  /* Monitor do Madeira */
  .river-monitor{background:var(--ink);color:var(--sand);border-radius:var(--radius);padding:22px;overflow:hidden;position:relative;}
  .river-monitor .rm-head{margin-bottom:16px;}
  .river-monitor h3{font-family:'Fraunces',serif;font-size:1.1rem;font-weight:600;color:var(--white);}
  .river-monitor .rm-tag{font-family:'JetBrains Mono',monospace;font-size:0.62rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--gold);opacity:0.85;}
  .rm-body{display:flex;gap:18px;align-items:center;}
  .rm-gauge{width:56px;height:120px;flex-shrink:0;}
  .rm-stats .big{font-family:'Fraunces',serif;font-size:1.9rem;font-weight:600;color:var(--gold);line-height:1;}
  .rm-stats .unit{font-family:'JetBrains Mono',monospace;font-size:0.66rem;opacity:0.7;margin-top:4px;}
  .rm-stats .status{margin-top:10px;font-size:0.76rem;line-height:1.4;color:var(--sand);opacity:0.85;}
  .rm-foot{margin-top:14px;padding-top:12px;border-top:1px solid rgba(225,231,221,0.15);font-family:'JetBrains Mono',monospace;font-size:0.64rem;opacity:0.55;}

  .ad-slot{
    border:1px dashed var(--sand-2);border-radius:var(--radius);aspect-ratio:4/3;
    display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;
    font-size:0.66rem;color:var(--ink-soft);text-transform:uppercase;letter-spacing:0.08em;background:var(--white);
  }

  .cat-pills{display:flex;flex-wrap:wrap;gap:8px;}
  .cat-pills a{
    font-family:'JetBrains Mono',monospace;font-size:0.66rem;font-weight:500;padding:7px 12px;
    border:1px solid var(--sand-2);border-radius:100px;color:var(--ink-soft);transition:all .2s;
  }
  .cat-pills a:hover{border-color:var(--gold);color:var(--ink);background:var(--white);}
  .cat-pills a.active{background:var(--clay);border-color:var(--clay);color:var(--white);}
  .cat-pills .n{opacity:0.5;margin-left:4px;}

  .newsletter-box{background:var(--gold);color:var(--ink);border-radius:var(--radius);padding:24px;}
  .newsletter-box h3{font-size:1.12rem;font-weight:600;margin-bottom:8px;}
  .newsletter-box p{font-size:0.84rem;line-height:1.5;margin:0 0 16px;opacity:0.85;}
  .newsletter-box .input-group{border-radius:2px;overflow:hidden;}
  .newsletter-box input.form-control{border:none;font-family:'Inter',sans-serif;font-size:0.84rem;padding:11px 12px;}
  .newsletter-box input.form-control:focus{box-shadow:none;}
  .newsletter-box button{
    background:var(--ink);color:var(--sand);border:none;padding:0 18px;
    font-family:'JetBrains Mono',monospace;font-size:0.68rem;font-weight:700;
    text-transform:uppercase;letter-spacing:0.06em;transition:background .2s;
  }
  .newsletter-box button:hover{background:var(--ink-2);color:var(--sand);}

  /* ---------- FOOTER ---------- */
  footer{background:var(--ink);color:var(--sand);padding:44px 0 20px;margin-top:16px;}
  @media (min-width:768px){footer{padding:56px 0 24px;margin-top:24px;}}
  footer h5{font-family:'JetBrains Mono',monospace;font-size:0.7rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--gold);margin-bottom:16px;}
  footer .word{font-family:'Fraunces',serif;font-size:1.25rem;font-weight:600;color:var(--white);}
  footer p.desc{font-size:0.84rem;opacity:0.7;line-height:1.6;max-width:36ch;margin-top:10px;}
  footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
  footer ul a{font-size:0.84rem;opacity:0.75;transition:opacity .2s;}
  footer ul a:hover{opacity:1;color:var(--gold);}
  .footer-socials{display:flex;gap:12px;margin-top:16px;}
  .footer-socials a{
    width:34px;height:34px;border:1px solid rgba(225,231,221,0.25);border-radius:100px;
    display:flex;align-items:center;justify-content:center;transition:all .2s;color:var(--sand);
  }
  .footer-socials a:hover{border-color:var(--gold);background:rgba(247,198,0,0.12);color:var(--gold);}
  .copyright{
    display:flex;justify-content:space-between;padding-top:20px;flex-wrap:wrap;gap:6px;
    font-family:'JetBrains Mono',monospace;font-size:0.66rem;opacity:0.5;text-align:center;
  }
  @media (min-width:576px){.copyright{text-align:left;}}

  :focus-visible{outline:2px solid var(--gold);outline-offset:2px;}

  /* borders between footer columns collapse on mobile */
  .footer-border-top{border-top:1px solid rgba(225,231,221,0.15);padding-top:28px;margin-top:8px;}