/* ========================================
   CSS VARIABLES - CORES PRINCIPAIS
========================================= */
:root {
    /* Cores primárias */
    --color-primary: #193F7B;
    --color-primary-dark: #193F7B;
    --color-secondary: #222;
    --color-accent: #FAB60F;
    --color-interactive: #2D74DA;

    /* Cores de texto */
    --color-text-primary: #191919;
    --color-text-secondary: #1c1c1c;
    --color-text-light: #777;
    --color-text-muted: #a3a3a3;
    --color-text-dark: #999;
    --color-text-white: #fff;

    /* Tipografia */
    --font-editorial: 'Source Serif 4', Georgia, serif;
    --font-ui: Inter, -apple-system, BlinkMacSystemFont, sans-serif;

    /* Cores de fundo */
    --color-bg-primary: #fff;
    --color-bg-secondary: #f9f9f9;
    --color-bg-dark: #222;
    --color-bg-solid: #f0f0f0;
    --color-bg-light: #f5f5f5;
    --color-bg-gray: #6c757d;
    
    /* Cores de categoria */
    --color-joinville: #FAB60F;
    --color-santa-catarina: #FAB60F;
    --color-esportes: #FAB60F;
    --color-estabelecimento: #FAB60F;
    --color-seguranca: #FAB60F;
    --color-mundo: #FAB60F;
    --color-cultura: #FAB60F;
    --color-saude: #FAB60F;
    --color-brasil: #FAB60F;
    --color-faces: #FAB60F;
    --color-mulher: #FAB60F;
    --color-obituario: #232a31;
    --color-publicacoes-legais: #036;
    --color-travel: #FAB60F;
    --color-agenda: #741af2;
    --color-eleicoes-2020: #FAB60F;
    --color-eleicoes-2022: #FAB60F;
    --color-vaga: #FAB60F;
    
    /* Cores de redes sociais */
    --color-facebook: #3b5998;
    --color-whatsapp: #25d366;
    --color-twitter: #1da1f2;
    --color-instagram: #d62976;
    --color-youtube: red;
    --color-rss: #f26522;
    --color-vk: #1ab7ea;
    --color-linkedin: #0077b5;
    
    /* Cores de borda e divisores */
    --color-border: #dadada;
    --color-border-light: #eaeaea;
    --color-border-dark: #dedede;
    --color-border-gray: #ddd;
    --color-border-muted: #e7e7e7;
    
    /* Cores de hover e interação */
    --color-hover: #111;
    --color-hover-light: #1a3570;
    --color-hover-danger: #c93b00;

    /* Transparências */
    --rgba-black-light: rgba(0, 0, 0, 0.5);
    --rgba-black-medium: rgba(0, 0, 0, 0.8);
    --rgba-white-light: rgba(255, 255, 255, 0.05);
    --rgba-white-medium: rgba(255, 255, 255, 0.25);

    /* Gradientes */
    --gradient-primary: linear-gradient(160deg, #193F7B 0%, #1a4a92 100%);
    --gradient-overlay: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, 0.8) 100%);
}

/* ========================================
   RESET E BASE STYLES
========================================= */
body,
cite,
h5,
p {
    line-height: 24px;
}

.top-nav,
.ts-pagination li,
.ts-social li,
cite,
img.banner {
    display: inline-block;
}

.block-title .title-angle-shap,
.body-inner,
.dropcap,
.embed-responsive,
.post-block-style,
.post-cat,
.section-padding,
blockquote,
cite,
html,
section {
    position: relative;
}

.title-angle-shap {
    display: inline-block;
}

.agenda-filter-wrap {
    float: right;
    margin-bottom: 18px;
}

.agenda-filter-select {
    min-width: 210px;
    height: 58px;
    padding: 0 48px 0 20px;
    border: 1px solid rgba(10, 61, 98, 0.18);
    border-radius: 12px;
    background: #fff;
    color: #111827;
    font-size: 22px;
    font-weight: 500;
    line-height: 1;
    box-shadow: none;
}

.agenda-filter-select:focus {
    outline: none;
    border-color: rgba(10, 61, 98, 0.3);
}

.agenda-card {
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
    overflow: visible;
    transition: transform 0.2s ease;
    margin-bottom: 42px;
}

.agenda-card:hover {
    transform: translateY(-2px);
}

.agenda-card-thumb {
    margin-bottom: 14px;
}

.agenda-card-media {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 18px;
}

.agenda-card-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(8, 23, 38, 0.44) 0%, rgba(8, 23, 38, 0.04) 42%, rgba(8, 23, 38, 0.01) 100%);
}

.agenda-card-media img {
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
}

.agenda-card-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    padding: 14px;
}

.agenda-card-badges {
    display: flex;
    justify-content: flex-start;
    width: 100%;
}

.agenda-card-content {
    padding: 0;
}

.agenda-card-meta-top {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.agenda-card-meta-item {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #5b6472;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.3;
}

.agenda-card-title {
    margin-bottom: 10px;
}

.agenda-card-title a {
    color: #111827;
}

.agenda-card-price-row {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 10px;
    flex-wrap: wrap;
}

.agenda-card-price-label {
    color: #6d28d9;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.agenda-card-price-text {
    color: #1f2937;
    font-size: 15px;
    font-weight: 600;
}

.agenda-card-footer {
    margin-bottom: 6px;
}

.agenda-card-location {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    color: #6b7280;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
}

.agenda-card-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 700;
    margin-top: 4px;
}

.event-detail-hero {
    margin-bottom: 28px;
    padding: 28px 30px 26px;
    border: 1px solid rgba(10, 61, 98, 0.08);
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
}

.event-detail-alert {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    padding: 10px 14px;
    border-radius: 999px;
    background: #eef2f7;
    color: #475569;
    font-size: 14px;
    font-weight: 600;
}

.event-detail-badges {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.event-detail-status {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 999px;
    background: #fff1f2;
    color: #be123c;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.event-detail-title {
    margin-bottom: 14px;
}

.event-detail-summary {
    max-width: 760px;
    margin-bottom: 22px;
    color: #4b5563;
    font-size: 20px;
    line-height: 1.6;
}

.event-detail-meta {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;
}

.event-detail-meta-item {
    padding: 16px 18px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(10, 61, 98, 0.07);
}

.event-detail-meta-label {
    display: block;
    margin-bottom: 6px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.event-detail-meta-value,
.event-detail-meta-link {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    color: #111827;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.45;
}

.event-detail-meta-link:hover {
    color: var(--color-primary);
}

.event-detail-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.event-detail-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    border-radius: 12px;
    background: #edf4fb;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 700;
}

.event-detail-action:hover {
    background: #dfeefb;
    color: var(--color-primary);
}

.event-detail-action--whatsapp {
    background: #e9f9ef;
    color: #15803d;
}

.event-detail-action--whatsapp:hover {
    background: #d9f3e3;
    color: #15803d;
}

.event-detail-media {
    margin-bottom: 22px;
}

.event-detail-media img {
    width: 100%;
    border-radius: 18px;
}

.event-detail-media--past img {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.event-detail-credit {
    display: block;
    margin-top: 10px;
    color: #6b7280;
    font-size: 12px;
    font-weight: 600;
}

.event-detail-content {
    color: #1f2937;
    font-size: 20px;
    line-height: 1.8;
}

.event-detail-content p {
    margin-bottom: 22px;
}

.event-detail-disclaimer {
    margin-top: 26px;
    padding: 14px 16px;
    border-radius: 14px;
    background: #f7f7f8;
    color: #374151;
    font-size: 14px;
    line-height: 1.6;
}

@media (max-width: 767px) {
    .agenda-filter-wrap {
        float: none;
        display: block;
        margin-top: 16px;
        margin-bottom: 22px;
    }

    .agenda-filter-select {
        width: 100%;
        min-width: 0;
        font-size: 18px;
    }

    .agenda-card-content {
        padding: 0;
    }

    .event-detail-hero {
        padding: 20px 18px;
        border-radius: 16px;
    }

    .event-detail-summary {
        font-size: 18px;
    }

    .event-detail-meta {
        grid-template-columns: 1fr;
    }

    .event-detail-content {
        font-size: 18px;
        line-height: 1.75;
    }
}

.image-link,
.video-icon {
    z-index: 1;
    position: absolute;
}

.btn-dark,
.btn-primary,
.dropcap,
.post-cat,
.publi-warning,
.section-title h2,
a.read-more {
    text-transform: uppercase;
}

.list-round li:before,
ul.list-arrow li:before,
ul.list-check li:before {
    font-family: FontAwesome;
    margin-right: 10px;
    color: var(--color-primary);
}

.dropdown-menu li a,
a:hover,
a:link,
a:visited,
a[href^="tel"] {
    text-decoration: none;
}

.gap-10,
.gap-20,
.gap-30,
.gap-40,
.gap-50,
.gap-60,
.gap-70,
.gap-80,
.general-btn,
.post-cat {
    clear: both;
}

/* ========================================
   REFINO TIPOGRÁFICO – DESIGN SYSTEM
========================================= */

/* Corpo de texto – leitura longa */
body,
p {
    font-family: var(--font-ui);
    font-size: 15px;
    font-weight: 400;
    text-rendering: optimizeLegibility;
    line-height: 1.6;
}

body {
    background: var(--color-bg-primary);
    color: var(--color-text-primary);
    border: 0;
    margin: 0;
    padding: 0;
}

/* Conteúdo editorial principal */
.post-content-area p {
    font-family: var(--font-ui);
    font-size: 1.0625rem;
    line-height: 1.75;
    letter-spacing: -0.01em;
    color: #222;
}

.post-content-area p img {
    width: 100%;
    height: auto;
}

/* Títulos principais */
h1 {
    color: var(--color-text-secondary);
    font-weight: 700;
    font-family: var(--font-editorial);
    font-size: 36px;
    line-height: 1.2;
    letter-spacing: -0.02em;
}

h2 {
    font-size: 28px;
    line-height: 1.25;
    letter-spacing: -0.01em;
}

h3,
h4,
h5,
h6 {
    color: var(--color-text-secondary);
    font-weight: 700;
    font-family: Inter, sans-serif;
}

article h2 {
    font-family: var(--font-editorial);
}

h3 {
    font-size: 20px;
    margin-bottom: 20px;
}

h4 {
    font-size: 18px;
    line-height: 28px;
}

h5 {
    font-size: 14px;
    line-height: 24px;
}

cite {
    line-height: 24px;
}

.copyright-content p,
.footer-widtet p {
    font-family: Inter, sans-serif;
}

/* =========================
   TÍTULOS EDITORIAIS
   (Destaques e manchetes)
========================= */
.post-title.title-lg,
.post-title.title-md,
.headline h1 {
    font-family: var(--font-editorial);
}

/* Headline específico */
.headline h1 {
    margin-top: 10px;
    font-size: 52px;
    font-weight: 700;
    line-height: 1.07;
    letter-spacing: -0.025em;
    margin-bottom: 14px;
}

.headline h1 a {
    color: var(--color-secondary);
}


/* ========================================
   LINKS E INTERAÇÕES
========================================= */
.alert .icon,
.mr-15 {
    margin-right: 15px;
}

html {
    overflow-x: hidden !important;
    width: 100%;
    height: 100%;
}

.body-inner,
.post-block-style {
    overflow: hidden;
}

.flex-container > div > h2 > a:hover,
a {
    color: var(--color-primary);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

a:hover {
    color: var(--color-interactive);
}

a.read-more {
    color: var(--color-interactive);
    font-weight: 700;
}

.headline h1 a,
a.read-more:hover {
    color: var(--color-primary);
}

/* ========================================
   LAYOUT E ESPAÇAMENTO
========================================= */
.section-padding,
section {
    padding: 50px 0;
}

.header.header-menu,
.list-post-block .list-post,
.no-padding,
.ts-category-list,
.ts-footer ul,
.ts-social,
.ts-social-list,
ul.list-arrow {
    padding: 0;
}

.p-top-0 {
    padding-top: 0;
}

.p-bottom-0,
.pab {
    padding-bottom: 0;
}

.m-top-0,
.mrt-0 {
    margin-top: 0 !important;
}

.list-post-block .list-post li:last-child .post-block-style .post-thumb,
.m-bottom-0,
.single-post .post-meta li.social-share .social-list li,
.ts-comments-row:last-child,
.ts-copyright p {
    margin-bottom: 0;
}

.ts-footer .footer-widtet,
img.pull-left,
img.pull-right,
ol,
ul {
    margin-bottom: 20px;
}

.media > .pull-left,
.mr-20 {
    margin-right: 20px;
}

/* Gaps */
.gap-10 { height: 10px; }
.gap-20 { height: 20px; }
.gap-30 { height: 30px; }
.gap-40 { height: 40px; }
.gap-50 { height: 50px; }
.gap-60 { height: 60px; }
.gap-70 { height: 58px; }
.gap-80 { height: 80px; }

.form-control.input-msg,
.gap-50 {
    height: 50px;
}

.entry-header,
.mrb-30 {
    margin-bottom: 30px;
}

.mrb-80 {
    margin-bottom: -80px;
}

/* ========================================
   SISTEMA DE MARGENS (1-20)
========================================= */
/* Margin Bottom */
.mb-1 { margin-bottom: 1px !important; }
.mb-2 { margin-bottom: 2px !important; }
.mb-3 { margin-bottom: 3px !important; }
.mb-4 { margin-bottom: 4px !important; }
.mb-5 { margin-bottom: 5px !important; }
.mb-6 { margin-bottom: 6px !important; }
.mb-7 { margin-bottom: 7px !important; }
.mb-8 { margin-bottom: 8px !important; }
.mb-9 { margin-bottom: 9px !important; }
.mb-10 { margin-bottom: 10px !important; }
.mb-11 { margin-bottom: 11px !important; }
.mb-12 { margin-bottom: 12px !important; }
.mb-13 { margin-bottom: 13px !important; }
.mb-14 { margin-bottom: 14px !important; }
.mb-15 { margin-bottom: 15px !important; }
.mb-16 { margin-bottom: 16px !important; }
.mb-17 { margin-bottom: 17px !important; }
.mb-18 { margin-bottom: 18px !important; }
.mb-19 { margin-bottom: 19px !important; }
.mb-20 { margin-bottom: 20px !important; }

/* Margin Top */
.mt-1 { margin-top: 1px; }
.mt-2 { margin-top: 2px; }
.mt-3 { margin-top: 3px; }
.mt-4 { margin-top: 4px; }
.mt-5 { margin-top: 5px; }
.mt-6 { margin-top: 6px; }
.mt-7 { margin-top: 7px; }
.mt-8 { margin-top: 8px; }
.mt-9, .my-float { margin-top: 9px; }
.mt-10, cite { margin-top: 10px; }
.mt-11 { margin-top: 11px; }
.mt-12 { margin-top: 12px; }
.mt-13 { margin-top: 13px; }
.mt-14 { margin-top: 14px; }
.mt-15 { margin-top: 15px; }
.mt-16 { margin-top: 16px; }
.mt-17 { margin-top: 17px; }
.mt-18 { margin-top: 18px; }
.mt-19 { margin-top: 19px; }
.mt-20 { margin-top: 20px; }

/* Margin Right */
.mr-1 { margin-right: 1px; }
.mr-2 { margin-right: 2px; }
.mr-3 { margin-right: 3px; }
.mr-4 { margin-right: 4px; }
.mr-5, .post-meta li a .fa, .post-meta li a .icon, .ts-date i, span.post-comment span i { margin-right: 5px; }
.mr-6 { margin-right: 6px; }
.mr-7 { margin-right: 7px; }
.mr-8 { margin-right: 8px; }
.mr-9 { margin-right: 9px; }
.mr-10, .single-post .post-meta .post-author img { margin-right: 10px; }
.mr-11 { margin-right: 11px; }
.mr-12 { margin-right: 12px; }
.mr-13 { margin-right: 13px; }
.mr-14 { margin-right: 14px; }
.mr-16 { margin-right: 16px; }
.mr-17 { margin-right: 17px; }
.mr-18 { margin-right: 18px; }
.mr-19 { margin-right: 19px; }

/* Margin Left */
.ml-1 { margin-left: 1px; }
.ml-2 { margin-left: 2px; }
.grid-category .post-cat:not(:first-child), .ml-3 { margin-left: 3px; }
.ml-4 { margin-left: 4px; }
.ml-5 { margin-left: 5px; }
.dark-bg .navbar-toggler, .ml-6, .single-post .tag-lists a:not(:first-child) { margin-left: 6px; }
.ml-7 { margin-left: 7px; }
.ml-8 { margin-left: 8px; }
.ml-9 { margin-left: 9px; }
.ml-10 { margin-left: 10px; }
.ml-11 { margin-left: 11px; }
.ml-12 { margin-left: 12px; }
.ml-13 { margin-left: 13px; }
.ml-14 { margin-left: 14px; }
.ml-15 { margin-left: 15px; }
.ml-16 { margin-left: 16px; }
.ml-17 { margin-left: 17px; }
.ml-18 { margin-left: 18px; }
.ml-19 { margin-left: 19px; }
.author-box .author-info, .ml-20, .post-tab .nav-tabs .nav-item:not(:first-child), img.pull-right { margin-left: 20px; }

/* ========================================
   SISTEMA DE GUTTERS
========================================= */
.ts-gutter-10 {
    margin-top: -5px !important;
    margin-bottom: -5px !important;
}
.ts-gutter-10 > div {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

.ts-gutter-20 {
    margin-top: -10px !important;
    margin-bottom: -10px !important;
}
.ts-gutter-20 > div {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.ts-gutter-30 {
    margin-top: -15px !important;
    margin-bottom: -15px !important;
    margin-left: -15px !important;
    margin-right: -15px !important;
}
.ts-gutter-30 > div {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

.ts-gutter-40 {
    margin-top: -20px !important;
    margin-bottom: -20px !important;
}
.ts-gutter-40 > div {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

.ts-gutter-50 {
    margin-top: -25px !important;
    margin-bottom: -25px !important;
}
.ts-gutter-50 > div {
    padding-top: 25px !important;
    padding-bottom: 25px !important;
}

.ts-gutter-60 {
    margin-top: -30px !important;
    margin-bottom: -30px !important;
}
.ts-gutter-60 > div {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
}

/* ========================================
   ELEMENTOS GERAIS
========================================= */
a:focus {
    outline: 0;
}

img.pull-left {
    margin-right: 20px;
}

.list-arrow,
.list-check,
.list-round,
.unstyled {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ts-padding {
    padding: 60px;
}

.solid-bg {
    background: var(--color-bg-primary);
}

.bg-dark {
    background: var(--color-secondary);
}

.solid-row {
    background: var(--color-bg-solid);
}

.featured-tab .nav-tabs .nav-link.active,
.form-control,
.nav > li > a:focus,
.nav > li > a:hover,
.navbar-nav > li > .dropdown-menu > a,
ul.navbar-nav > li > a:focus,
ul.navbar-nav > li > a:hover {
    background: 0 0;
}

/* ========================================
   DROPCAP E EMBEDS
========================================= */
.dropcap {
    font-size: 44px;
    line-height: 50px;
    float: left;
    margin: 0 12px 0 0;
}

.embed-responsive {
    padding-bottom: 56.25%;
    display: block;
    height: 0;
    overflow: hidden;
}

.embed-responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* ========================================
   FORMULÁRIOS
========================================= */
.form-control {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 1px solid var(--color-border);
    padding: 5px 20px;
    height: 40px;
    color: #959595;
    font-size: 12px;
    border-radius: 0;
}

.btn,
.btn-primary,
.main-nav.dark-bg ul.navbar-nav > li.active,
.main-nav.dark-bg ul.navbar-nav > li:hover,
.newsletter-area .newsletter-submit:hover {
    background: var(--color-primary);
}

.form-control:focus {
    border: 1px solid var(--color-interactive);
    -webkit-box-shadow: 0 0 0 3px rgba(45, 116, 218, 0.15);
    box-shadow: 0 0 0 3px rgba(45, 116, 218, 0.15);
    outline: none;
}

/* ========================================
   HR E BLOCKQUOTE
========================================= */
hr {
    background-color: var(--color-border-muted);
    border: 0;
    height: 1px;
    margin: 40px 0;
}

blockquote {
    padding: 25px 20px 10px;
    border: 0;
    margin: 25px 0;
    font-variation-settings: initial;
    font-feature-settings: initial;
    border-top: 4px solid var(--color-accent);
    border-bottom: 4px solid var(--color-accent);
}

blockquote p {
    font-size: 22px !important;
    letter-spacing: -0.035em !important;
    line-height: 125% !important;
    font-weight: 500 !important;
}

blockquote.pull-left {
    padding-left: 15px;
    padding-right: 0;
    text-align: left;
    border-left: 5px solid var(--color-border-light);
    border-right: 0;
}

cite {
    font-size: 16px;
    margin-left: 40px;
    margin-right: 40px;
}

cite::after,
cite::before {
    position: absolute;
    top: 0;
    width: 30px;
    height: 1px;
    background: var(--color-bg-gray);
    content: "";
    bottom: 0;
    margin: 10px 0 13px -40px;
}

cite::after {
    left: auto;
    right: 0;
    margin: 10px -40px 13px 0;
}

/* ========================================
   IMAGENS E MÍDIA
========================================= */
.ads-image a img,
.list-post-block .list-post .post-block-style .post-thumb img,
.thumb-fullwidth img,
.ts-author-thumb img {
    width: 100%;
}

/* ========================================
   BOTÕES
========================================= */
.btn {
    color: var(--color-text-white);
    padding: 10px 30px;
}

.btn:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: var(--color-primary);
}

.btn:hover {
    background: var(--color-hover);
    color: var(--color-text-white);
}

.btn-dark,
.btn-primary {
    border: 0;
    border-radius: 0;
    padding: 12px 25px 10px;
    font-weight: 700;
    color: var(--color-text-white);
    -webkit-transition: 350ms;
    -o-transition: 350ms;
    transition: 350ms;
}

.btn-white.btn-primary {
    background: var(--color-bg-primary);
    color: var(--color-primary);
}

.box-share {
    display: flex;
    gap: 12px;
    justify-content: flex-start;
    padding-bottom: 20px;
}

.share-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    min-height: 46px;
    border: 0;
    border-radius: 13px;
    color: #fff !important;
    font-size: 23px;
    line-height: 1;
    text-decoration: none;
    cursor: pointer;
    transition: transform 0.22s ease, filter 0.22s ease, box-shadow 0.22s ease;
}

.share-action:hover {
    color: #fff !important;
    transform: translateY(-1px);
    filter: brightness(0.96);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.share-action-facebook {
    background: #1877f2;
}

.share-action-whatsapp {
    background: var(--color-whatsapp);
}

.share-action-native {
    color: #5f6368 !important;
    background: #eef1f5;
}

.share-action-native:hover {
    color: #4f545a !important;
}

.share-action-native-copied {
    color: var(--color-primary) !important;
    background: #e6edf8;
}

.enviar-facebook {
    color: var(--color-facebook) !important;
}

.enviar-facebook:hover {
    color: var(--color-primary) !important;
    background-color: transparent !important;
}

.btn-dark {
    background: #242427;
}

.btn-dark:hover,
.btn-primary:hover,
.btn-white.btn-primary:hover,
.btn:foucs {
    background: var(--color-hover-light);
    color: var(--color-text-white);
}

.general-btn {
    margin-top: 50px;
}

/* ========================================
   LISTAS
========================================= */
li,
ul {
    list-style: none;
}

.list-round li {
    line-height: 28px;
}

.list-round li:before {
    content: "\f138";
    font-size: 12px;
}

ul.list-arrow li:before {
    content: "\f105";
    font-size: 16px;
}

ul.list-check li:before {
    content: "\f00c";
    font-size: 14px;
}

.nav-tabs > li > a,
.nav-tabs > li > a.active,
.nav-tabs > li > a.active:focus,
.nav-tabs > li > a.active:hover,
.nav-tabs > li > a:hover {
    border: 0;
    background: 0 0;
}

a[href^="tel"] {
    color: inherit;
}

.item-relacionadas,
.list-relacionadas {
    list-style: none !important;
    padding-left: 0 !important;
}

/* ========================================
   TÍTULOS E BLOCOS
========================================= */
.block-title {
    font-family: var(--font-editorial);
    letter-spacing: -0.01em;
    color: #0c0c0c;
    line-height: 1.15;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 20px;
}

.block-title .title-angle-shap {
    display: inline-block;
    padding: 0 0 5px;
}

.publi-warning {
    height: 20px;
    font-size: 10px;
    line-height: 20px;
    text-align: center;
    letter-spacing: 1.53px;
    width: 100%;
    display: block;
    color: #202020;
}

/* ========================================
   CORES DE TEXTO POR CATEGORIA
========================================= */
.block-title-light,
.featured-slider .item .featured-post .post-title a,
.float:hover,
.link-terms,
.link-terms:hover,
.main-nav.dark-bg .nav-search i,
.main-nav.dark-bg ul.navbar-nav > li > a,
.post-cat a,
.post-cat:hover,
.post-overaly-style .post-content .post-title a,
.post-overaly-style .post-content .post-title a:hover,
.post-video-content h3 a,
.single-post .post-meta .post-cat,
.text-light .block-title .title-angle-shap,
.text-light .post-title a,
.top-social ul li a:hover,
.ts-footer .footer-widtet.post-widget .post-block-style .post-content .post-title a,
.ts-footer .widget-content p,
.ts-social-list.style2 li a .count {
    color: var(--color-text-white);
}

.block-title-light .title-angle-shap::after,
.block-title-light .title-angle-shap::before,
.navbar-toggle .i-bar,
.text-light .block-title .title-angle-shap::after,
.text-light .block-title .title-angle-shap::before {
    background: var(--color-text-white);
}

.author-box .author-url a,
.block-title-dark,
.single-post .post-navigation a {
    color: var(--color-hover);
}

.block-title-dark .title-angle-shap::after,
.block-title-dark .title-angle-shap::before {
    background: var(--color-hover);
}

/* Cores específicas por categoria */
.block-title-joinville,
.joinville-color:hover {
    color: var(--color-joinville);
}

.block-title-santa-catarina,
.santa-catarina-color:hover {
    color: var(--color-santa-catarina);
}

.block-title-esportes,
.esportes-color:hover {
    color: var(--color-esportes);
}

.block-title-estabelecimento {
    color: var(--color-estabelecimento);
}

.block-title-seguranca,
.seguranca-color:hover {
    color: var(--color-seguranca);
}

.block-title-joinville .title-angle-shap::after,
.block-title-joinville .title-angle-shap::before,
.joinville {
    background: var(--color-joinville) !important;
}

.block-title-estabelecimento .title-angle-shap::after,
.block-title-estabelecimento .title-angle-shap::before,
.estabelecimento {
    background: var(--color-estabelecimento);
}

.block-title-seguranca .title-angle-shap::after,
.block-title-seguranca .title-angle-shap::before,
.seguranca {
    background: var(--color-seguranca) !important;
}

/* ========================================
   HEADLINE E POSTS
========================================= */
.headline {
    padding-bottom: 30px;
}

.headline h1 {
    margin-top: 10px;
    font-size: 48px;
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.025em;
    font-family: var(--font-editorial);
}

.headline .post-cat {
    font-size: 14px;
    font-weight: 600;
}

.headline a:hover {
    text-decoration: underline !important;
}

.list-relacionadas {
    font-size: 1.15rem;
    margin: 0 !important;
    padding-top: 15px;
    padding-bottom: 5px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.item-relacionadas {
    margin-bottom: 15px !important;
}

.item-relacionadas .icon {
    width: 0.833em;
    fill: var(--color-primary);
    flex-shrink: 0;
    line-height: 1;
    margin-right: 0.555em;
    margin-top: 0.222em;
}

.flex-container > div > h2 > a,
.item-relacionadas a,
.post-title a,
.trending-light {
    color: var(--color-text-secondary);
}

/* ========================================
   POST META E CATEGORIAS
========================================= */
.post-cat,
.post-meta li {
    color: var(--color-text-white);
    display: inline-block;
}

.author-box .author-url a:hover,
.breadcrumb li a:hover,
.item-relacionadas a:hover,
.post-meta .post-author a:hover,
.post-meta li a.view .icon,
.post-title a:hover,
.single-post .post-navigation .post-next a:hover span,
.single-post .post-navigation .post-previous a:hover span,
.single-post article p a:hover,
.top-nav li a:hover,
.ts-author a:hover,
.ts-footer .footer-widtet.post-widget .post-block-style .post-content .post-title a:hover,
.ts-social li a:hover {
    color: var(--color-interactive);
}

.dropdown-menu-large > li > ul > li.active > a,
.load-more-btn .btn:hover,
.top-bar-border ul.top-info li i,
.trending-title .tsicon {
    color: var(--color-primary);
}

.post-title {
    font-size: 20px;
    line-height: 1.22;
    margin: 12px 0 8px;
    font-weight: 600;
    letter-spacing: -0.012em;
    font-family: var(--font-ui);
}

.post-title.title-xl {
    font-family: var(--font-editorial);
    font-size: 28px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin-top: 14px;
    margin-bottom: 12px;
    font-weight: 700;
}

.post-title.title-lg {
    font-family: var(--font-editorial);
    font-size: 32px;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin-top: 12px;
    /* margin-bottom: 16px; */
    font-weight: 700;
}

.post-title.title-md {
    font-family: var(--font-editorial);
    font-size: 22px;
    line-height: 1.2;
    letter-spacing: -0.015em;
    margin-top: 10px;
    /* margin-bottom: 14px; */
    font-weight: 700;
}


.post-title.title-sm {
    font-family: var(--font-ui);
    font-size: 16px;
    line-height: 1.45;
    font-weight: 600;
    margin-top: 12px;
    margin-bottom: 8px;
}

.post-cat {
    font-size: 11px;
    padding: 0 10px 10px;
    background: var(--color-primary-dark);
    font-weight: 600;
    height: 19px;
    line-height: 20px;
    font-family: Inter, sans-serif;
    border-radius: 7px;
}

/* ========================================
   CORES DE CATEGORIA - BACKGROUNDS E TEXTOS
========================================= */
.mundo-color,
.mundo-color:hover {
    color: var(--color-mundo);
}

.mundo {
    background: var(--color-mundo);
}

.mundo-color {
    background: 0 0;
}

.cultura,
.diversao-e-cultura {
    background: var(--color-cultura);
}

.cultura-color,
.diversao-e-cultura-color {
    background: 0 0;
    color: var(--color-cultura);
}

.cultura-color:hover,
.diversao-e-cultura-color:hover {
    color: var(--color-cultura);
}

.seguranca-color {
    background: 0 0;
    color: var(--color-seguranca);
}

.eleicoes-2020 {
    background: var(--color-eleicoes-2020);
}

.eleicoes-2020-color {
    background: 0 0;
    color: var(--color-eleicoes-2020);
}

.vaga {
    background: var(--color-vaga);
}

.eleicoes-2020-color:hover {
    color: var(--color-eleicoes-2020);
}

.eleicoes-2022 {
    background: var(--color-eleicoes-2022);
}

.eleicoes-2022-color {
    background: 0 0;
    color: var(--color-eleicoes-2022);
}

.eleicoes-2022-color:hover {
    color: var(--color-eleicoes-2022);
}

.saude-color,
.saude-color:hover {
    color: var(--color-saude);
}

.saude {
    background: var(--color-saude);
}

.saude-color {
    background: 0 0;
}

.brasil-color,
.brasil-color:hover {
    color: var(--color-brasil);
}

.brasil {
    background: var(--color-brasil);
}

.brasil-color {
    background: 0 0;
}

.esportes {
    background: var(--color-esportes);
}

.esportes-color {
    background: 0 0;
    color: var(--color-esportes);
}

.faces-color,
.faces-color:hover {
    color: var(--color-faces);
}

.faces {
    background: var(--color-faces);
}

.faces-color {
    background: 0 0;
}

.santa-catarina {
    background: var(--color-santa-catarina);
}

.santa-catarina-color {
    background: 0 0;
    color: var(--color-santa-catarina);
}

.joinville-color {
    background: 0 0;
    color: var(--color-joinville);
}

.post-cat-inverted {
    background-color: white;
    color: var(--color-agenda);
}

.mulher {
    background: var(--color-mulher);
}

.mulher-color {
    background: 0 0;
    color: var(--color-mulher);
}

.mulher-color:hover {
    color: var(--color-mulher);
}

.obituario {
    background: var(--color-obituario);
}

.obituario-color {
    background: 0 0;
    color: var(--color-obituario);
}

.obituario-color:hover {
    color: var(--color-obituario);
}

.publicacoes-legais {
    background: var(--color-publicacoes-legais);
}

.publicacoes-legais-color {
    background: 0 0;
    color: var(--color-publicacoes-legais);
}

.publicacoes-legais-color:hover {
    color: var(--color-publicacoes-legais);
}

.agenda {
    background: var(--color-agenda);
}

/* ========================================
   POST META
========================================= */
.post-meta ul {
    padding: 0;
    margin-bottom: 0;
}

.post-meta li {
    font-family: Inter, sans-serif;
    font-size: 14px;
    font-weight: 400;
    margin-right: 24px;
}

.post-meta li a {
    color: inherit;
}

.post-meta .post-author a {
    color: var(--color-text-dark);
    font-weight: 700;
}

.post-meta .post-author img {
    width: 45px;
    height: 45px;
    border-radius: 50%;
}

.post-meta span {
    font-size: 12px;
    color: var(--color-text-muted);
    margin-right: 8px;
    padding-right: 10px;
    line-height: 12px;
    display: inline-block;
}

.post-meta span.post-date {
    border-right: 0;
}

span.post-comment {
    border-right: 0;
    line-height: 24px;
    margin-right: 0;
    padding-right: 0;
}

.breadcrumb li,
.breadcrumb li:last-child i {
    padding-right: 6px;
}

span.post-comment span {
    border-right: 0;
    line-height: 100%;
}

/* ========================================
   ÍCONES E VÍDEOS
========================================= */
.owl-carousel .owl-nav i,
.video-icon {
    color: var(--color-text-white);
    font-size: 20px;
}

.video-icon {
    text-align: center;
    left: 0;
    width: 50px;
    height: 50px;
    display: inline-block;
    margin: auto;
    border-radius: 100%;
    border: 5px solid var(--color-text-white);
    right: 0;
    top: 0;
    bottom: 0;
    padding: 8px;
}

.image-link {
    display: block;
    width: 100%;
    height: 100%;
}

/* ========================================
   OWL CAROUSEL
========================================= */
.owl-carousel .owl-dots {
    position: absolute;
    left: 50px;
    top: 50%;
    padding: 0;
    text-align: left;
    width: 20px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.owl-carousel .owl-dots .owl-dot {
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

.owl-carousel .owl-dots .owl-dot span {
    border-radius: 50%;
    background: #d3d3d3;
    display: inline-block;
    text-align: center;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.owl-carousel .owl-dots .owl-dot.active span {
    background: var(--color-primary);
    border-color: var(--color-primary);
    height: 20px;
    border-radius: 10px;
}

.owl-carousel-sc .owl-dots .owl-dot.active span {
    background: var(--color-santa-catarina) !important;
}

.owl-carousel.dot-style2 .owl-dots {
    padding: 0;
    position: absolute;
    right: 0;
    top: -30px;
    display: inline-block;
    text-align: right;
    width: 100%;
    left: auto;
}

.owl-carousel.dot-style2 .owl-dots .owl-dot span {
    width: 7px;
    height: 7px;
    margin: 5px;
}

.owl-carousel.dot-style2 .owl-dots .owl-dot.active span {
    width: 20px;
}

.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    width: 50px;
    height: 50px;
    line-height: 54px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    top: 50%;
    position: absolute;
    background: var(--color-primary);
    text-align: center;
    border-radius: 50%;
    opacity: 0;
}

.owl-carousel .owl-nav .owl-prev {
    background: var(--color-primary);
    left: -25px;
    right: auto;
}

.owl-carousel .owl-nav .owl-next {
    right: -25px;
}

.grid-cat {
    position: absolute;
    bottom: 15px;
    left: 15px;
}

/* ========================================
   ELEMENTOS DE INTERFACE
========================================= */
.dropdown-submenu,
.featured-tab,
.header-search .form-group,
.load-more-btn,
.main-nav > .container,
.modal-searchPanel .ts-search-group,
.newsletter-area .email-form-group,
.search-area,
.ts-author-comments {
    position: relative;
}

.load-more-btn::after {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    background: var(--color-border-light);
    height: 1px;
    content: "";
    margin: auto;
}

.load-more-btn .btn {
    padding: 10px 55px;
    background: var(--color-bg-primary);
    border: 1px solid var(--color-border-light);
    cursor: pointer;
    font-weight: 700;
    position: relative;
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
    z-index: 1;
    color: var(--color-hover);
}

.tag-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.tag-list .tag-link {
    font-size: 0.875rem;
    font-family: Inter, sans-serif;
    color: #646464;
    border: 1px solid #d7d7d7;
    padding: 7px 13px;
    background-color: transparent;
    transition: 0.3s;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    text-transform: lowercase;
    margin-right: 6px;
    margin-bottom: 6px;
}

/* ========================================
   FLEX CONTAINER
========================================= */
.flex-container {
    display: flex;
}

.flex-container > div {
    font-size: 20px;
    line-height: normal;
}

.flex-container > div:first-child {
    margin-right: 20px;
    font-size: 60px;
    letter-spacing: -4px;
    color: var(--color-primary);
    font-family: Inter, sans-serif;
}

.flex-container > div > h2 {
    font-family: var(--font-ui);
    font-size: 17px;
    line-height: 1.45;
    margin: 8px 0 14px;
    font-weight: 600;
}

/* ========================================
   SEÇÃO TITLE
========================================= */
.section-title h2 {
    margin-top: 0;
    margin-bottom: 30px;
    border-bottom: 1px solid;
    border-color: #cfe0e9;
}

.section-title h2:after {
    display: block;
    width: 40px;
    border-bottom: 4px solid var(--color-interactive);
    content: "";
}

/* ========================================
   REDES SOCIAIS
========================================= */
.ts-social-list li {
    display: inline-block;
    width: 100%;
    margin-bottom: 5px;
    font-family: Inter, sans-serif;
}

.ts-social-list li.ts-categoria a .tsicon {
    background: var(--color-facebook);
    text-transform: capitalize !important;
}

.ts-social-list li.ts-facebook a .tsicon,
.ts-social-list.style2 li.ts-facebook a {
    background: var(--color-facebook);
}

.ts-social-list li.ts-twitter a .tsicon,
.ts-social-list.style2 li.ts-twitter a {
    background: var(--color-twitter);
}

.ts-social-list li.ts-instagram a .tsicon,
.ts-social-list.style2 li.ts-instagram a {
    background: var(--color-instagram);
}

.ts-social-list li.ts-youtube a .tsicon,
.ts-social-list.style2 li.ts-youtube a {
    background: var(--color-youtube);
}

.ts-social-list li.ts-rss a .tsicon,
.ts-social-list.style2 li.ts-rss a {
    background: var(--color-rss);
}

.ts-social-list li.ts-vk a .tsicon {
    background: var(--color-vk);
}

.ts-social-list li.ts-linkedin a .tsicon {
    background: var(--color-linkedin);
}

.ts-social-list a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 10px;
    border: 1px solid var(--color-border-light);
    border-radius: 10px;
}

.ts-social-list a .count {
    font-size: 13px;
    color: var(--color-secondary);
}

.ts-social-list a .count span {
    display: block;
    line-height: 0.8;
}

.ts-social-list .tsicon {
    font-size: 14px;
    width: 30px;
    height: 30px;
    display: inline-block;
    text-align: center;
    color: var(--color-text-white);
    border-radius: 4px;
    padding: 9px 0;
    background: var(--color-hover);
    margin-right: 20px;
}

.ts-social-list.style2 li a {
    background: var(--color-facebook);
    color: var(--color-text-white);
}

.ts-social-list.style2 li a .tsicon {
    background: rgba(55, 55, 55, 0.3);
}

.ts-social li a {
    width: auto;
    height: auto;
    padding: 0;
    background: 0 0;
    color: var(--color-text-white);
    font-size: 22px;
    margin: 0 35px 0 0;
}

/* ========================================
   BOTÕES DE VOLTA E WHATSAPP
========================================= */
.backto,
.backwa {
    position: fixed;
    right: 55px;
    bottom: 15px;
    z-index: 10;
    background: var(--color-primary);
    border-radius: 50%;
    color: #979797;
    cursor: pointer;
    height: 44px;
    text-align: center;
    width: 44px;
    display: block;
    padding: 12px 0;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    margin-left: auto;
}

.backto a {
    color: var(--color-text-white);
    font-size: 15px;
    font-weight: 700;
}

.backto .icon {
    font-family: iconfont !important;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
}

.backto:hover,
.backwa:hover {
    background: var(--color-hover-danger);
}

/* ========================================
   BREADCRUMB E PAGINAÇÃO
========================================= */
.breadcrumb {
    background: 0 0;
    padding: 25px 0;
    margin-bottom: 0;
    font-family: Inter, sans-serif;
}

.breadcrumb li {
    color: var(--color-text-light);
}

.breadcrumb li a {
    padding: 0 9px;
    color: inherit;
}

.breadcrumb li:first-child a {
    padding-left: 0;
}

.ts-pagination {
    padding: 0;
    margin-top: 20px;
}

.ts-pagination li a {
    display: block;
    padding: 7px 0;
    width: 40px;
    height: 40px;
    font-size: 14px;
    color: var(--color-hover);
    text-align: center;
    border: 1px solid var(--color-border-light);
    border-radius: 10px;
    margin-right: 5px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.post-overaly-style,
.top-social ul li a {
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
}

.ts-pagination li a.active,
.ts-pagination li a:hover {
    color: var(--color-text-white);
    background: var(--color-interactive);
    border-color: var(--color-interactive);
    -webkit-box-shadow: 0 4px 12px rgba(45, 116, 218, 0.3);
    box-shadow: 0 4px 12px rgba(45, 116, 218, 0.3);
}

/* ========================================
   ERROR PAGE
========================================= */
.error-page .error-code h2 {
    display: block;
    font-size: 200px;
    line-height: 200px;
    color: #303030;
    margin-bottom: 20px;
}

/* ========================================
   TRENDING BAR
========================================= */
.trending-bar {
    padding: 10px 0 5px;
    background: var(--color-bg-light);
}

.trending-title {
    background: 0 0;
    color: var(--color-secondary);
    border-right: 1px solid #dedbdb;
    font-size: 12px;
    line-height: 15px;
    text-transform: uppercase;
    margin: 3px 15px 0 0;
    padding-right: 10px;
    font-weight: 700;
    float: left;
}

.top-nav li,
.ts-date {
    line-height: 12px;
    display: inline-block;
}

.dropdown-toggle::after,
.ncov2019 .leaflet-bottom.leaflet-right,
.owl-carousel.owl-theme.trending-slide .owl-nav {
    display: none;
}

.trending-slide .post-title.title-small {
    font-weight: 400;
    margin: 0;
    font-family: Inter, sans-serif;
}

.trending-light .trending-slide .post-title {
    font-size: 13px;
    font-weight: 400;
    color: var(--color-text-light);
}

.trending-light .owl-carousel.owl-theme.trending-slide .owl-nav > div:hover {
    background: #333;
    color: var(--color-text-white);
}

/* ========================================
   TOP BAR E NAVEGAÇÃO
========================================= */
.top-bar {
    padding: 8px 0;
    border-bottom: 1px solid var(--color-border-dark);
    color: var(--color-text-muted);
    font-size: 13px;
}

.ts-date {
    color: var(--color-text-light);
    font-size: 13px;
    border-right: none;
    padding-right: 0;
}

.header.header-menu ul.navbar-nav > li > a,
.nav-search {
    line-height: 1;
}

.top-nav li {
    padding-left: 12px;
}

.top-nav li a {
    background: 0 0;
    color: var(--color-text-muted);
    padding: 0;
    line-height: 100%;
}

.top-social {
    display: inline-block;
    margin-right: -5px;
}

.top-social ul {
    list-style: none;
    margin: 0;
    padding: 0 10px;
}

.top-social ul li {
    display: inline-block;
    padding: 0;
}

.top-social ul li a {
    color: var(--color-text-white);
    font-size: 14px;
    transition: 0.4s;
    padding: 0 10px;
    line-height: 64px;
}

.nav-search {
    border-radius: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    width: 65px;
    height: auto;
    text-align: center;
    color: var(--color-text-white);
}

.top-bar-border {
    padding: 8px 20px;
    border-bottom: 1px solid var(--color-border-gray);
}

.top-bar-border ul.top-info {
    color: #7c7c7c;
    font-weight: 400;
}

.top-bar-border .top-social li a {
    color: #7c7c7c;
}

/* ========================================
   HEADER
========================================= */
.header {
    padding: 25px 0;
}

.header-top-social,
.mega-menu-content .row,
.ts-search-form.modal-searchPanel .xs-search-panel {
    margin: 0;
}

.header-top-social li a {
    color: var(--color-hover);
    font-size: 14px;
    margin-right: 20px;
}

.header-search .form-group .input-search {
    font-size: 13px;
    color: #333;
    border: 1px solid var(--color-border-gray);
    border-width: 0 0 1px;
    width: 100%;
}

.header-search .form-group .input-search::-webkit-input-placeholder,
.header-search .form-group .input-search:-ms-input-placeholder,
.header-search .form-group .input-search::-ms-input-placeholder,
.header-search .form-group .input-search::placeholder {
    color: var(--color-border-gray);
    opacity: 1;
}

.header-search .form-group .search-btn {
    background: 0 0;
    border: none;
    position: absolute;
    right: 10px;
    top: 5px;
    color: var(--color-text-dark);
}

.header-search .form-group .search-btn:focus,
.newsletter-area .newsletter-email:focus,
.newsletter-area .newsletter-submit:focus {
    outline-style: none;
}

.logo {
    padding: 28px 0;
}

.header-right {
    float: right;
}

.header.text-center,
.single-post .post-footer {
    padding: 10px 0;
}

ul.top-info-box > li.nav-search {
    cursor: pointer;
    padding-left: 30px;
    margin-left: 30px;
}

ul.top-info-box > li.nav-search:before {
    position: absolute;
    content: "";
    background: var(--color-border-gray);
    left: 0;
    width: 1px;
    height: 40px;
    top: 50%;
    margin-top: -10px;
}

ul.top-info-box > li.nav-search i {
    font-size: 20px;
    top: 10px;
    position: relative;
    cursor: pointer;
    color: var(--color-text-dark);
}

/* ========================================
   NAVEGAÇÃO PRINCIPAL
========================================= */
.main-nav {
    background: var(--gradient-primary);
    min-height: 64px;

    height: 64px;
}

.navbar {
    border-radius: 0;
    border: 0;
    margin-bottom: 0;

}

.navbar-toggler {
    color: var(--color-text-white);
    padding: 8px 10px;
    font-size: 1.5rem;
    background: var(--color-primary-dark);
    position: absolute;
    top: -50px;
    z-index: 9;
}

.navbar-toggler-icon {
    width: 30px;
}

.dropdown-menu-large > li > ul > li > a,
.navbar-collapse {
    padding-left: 0;
}

ul.navbar-nav > li {
    float: left;
    padding: 0;
    position: relative;
}

ul.navbar-nav > li > a {
    padding: 0 20px;
    height: 64px;
    line-height: 64px;
    font-size: 14.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin: 0;
    position: relative;
    transition: color 200ms ease, background-color 200ms ease;
    font-family: Inter, sans-serif;
}


ul.navbar-nav > li > a i {
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}

ul.navbar-nav > li.active a::before,
ul.navbar-nav > li:hover a::before {
    border-color: var(--color-primary);
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
}

.nav .open > a,
.nav .open > a:focus,
.nav .open > a:hover {
    background: 0 0;
    border: 0;
}

ul.navbar-nav > li.mega-dropdown {
    position: static;
}

.dropdown-submenu > .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -2px;
    border-radius: 0;
}

.dropdown-submenu > a:after {
    display: block;
    content: "\f105";
    font-family: FontAwesome;
    float: right;
    margin-top: 3px;
    margin-right: -5px;
}

.dropdown-submenu:hover > a:after {
    border-left-color: var(--color-text-white);
}

.dropdown-submenu.pull-left {
    float: none;
}

.dropdown-submenu.pull-left > .dropdown-menu {
    left: -100%;
    margin-left: 10px;
    border-radius: 6px 0 6px 6px;
}

/* ========================================
   DROPDOWN MENUS
========================================= */
.dropdown-menu {
    text-align: left;
    background: var(--color-bg-primary);
    z-index: 100;
    min-width: 230px;
    border-radius: 0;
    border: 0;
    -webkit-box-shadow: 0 3px 3px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 3px 3px 2px rgba(0, 0, 0, 0.15);
    margin-top: 0;
    padding: 0;
}

.navbar-nav > li > .dropdown-menu {
    border-top: 1px solid var(--color-border-dark);
}

.navbar-nav > li > .dropdown-menu.mega-menu-content {
    border-top: 0;
}

.dropdown-menu-large {
    min-width: 400px;
}

.dropdown-menu-large > li > ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.dropdown-menu li a {
    display: block;
    font-size: 13px;
    font-weight: 700;
    line-height: normal;
    padding: 15px 25px;
    border-bottom: 1px solid #e5e5e5;
    color: #333;
    background: #f4f4f4;
    font-family: Inter, sans-serif;
}

.dropdown-menu li:last-child > a {
    border-bottom: 0;
}

.dropdown-menu > .active > .dropdown-menu > .active > a,
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:focus,
.dropdown-menu > .active > a:hover {
    background: 0 0;
    color: var(--color-primary);
}

.dropdown-menu > li > a:focus,
.dropdown-menu > li > a:hover {
    background: var(--color-primary);
    color: var(--color-text-white);
}

.mega-menu-content {
    width: 1110px;
    padding: 0;
}

.mega-menu-content-inner {
    padding: 20px 10px;
}

.main-nav.dark-bg > .container > .row {
    border: 0;
    background: #272727;
    margin-left: 0;
    margin-right: 0;
}

.main-nav.dark-bg ul.navbar-nav > li > a:before {
    border: 0;
}

.main-nav {
    position: relative;
    padding: 0 15px;
    min-height: 64px;
    height: 64px;
}

.search-area {
    min-height: 64px;
    padding-right: 0;
}

.nav-search {
    display: inline-block;
    position: relative;
    cursor: pointer;
    top: 0;
    right: 0;
}

.nav-search a {
    color: var(--color-text-white);
    display: block;
}

/* ========================================
   MODAL SEARCH
========================================= */
.ts-category-list li a,
.ts-category-list li a span.bar,
.ts-footer-info li {
    display: -webkit-box;
    display: -ms-flexbox;
}

.modal-searchPanel .ts-search-group input:not([type="submit"]) {
    height: 58px;
    background-color: transparent;
    border-radius: 50px;
    border: 2px solid var(--color-text-white);
    color: var(--color-text-white);
    padding: 0 30px;
}

.modal-searchPanel .ts-search-group .search-button {
    background-color: transparent;
    border: 0;
    padding: 0;
    color: var(--color-text-white);
    position: absolute;
    right: 0;
    cursor: pointer;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 100%;
    width: 58px;
    border-radius: 0 50px 50px 0;
}

.mfp-bg.xs-promo-popup {
    background-color: rgba(0, 0, 0, 0.87);
    padding-bottom: 100%;
    border-radius: 100%;
    overflow: hidden;
    -webkit-animation: 0.8s ease-out forwards menu-animation;
    animation: 0.8s ease-out forwards menu-animation;
}

/* ========================================
   KEYFRAMES
========================================= */
@-webkit-keyframes menu-animation {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.04) translateY(300%);
        transform: scale(0.04) translateY(300%);
    }
    40% {
        -webkit-transition: ease-out;
        -o-transition: ease-out;
        transition: ease-out;
        -webkit-transform: scale(0.04) translateY(0);
        transform: scale(0.04) translateY(0);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale(0.02) translateY(0);
        transform: scale(0.02) translateY(0);
    }
    61% {
        opacity: 1;
        -webkit-transform: scale(0.04) translateY(0);
        transform: scale(0.04) translateY(0);
    }
    99.9% {
        opacity: 1;
        height: 0;
        padding-bottom: 100%;
        border-radius: 100%;
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(2) translateY(0);
        transform: scale(2) translateY(0);
        height: 100%;
        padding-bottom: 0;
        border-radius: 0;
    }
}

@keyframes menu-animation {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.04) translateY(300%);
        transform: scale(0.04) translateY(300%);
    }
    40% {
        -webkit-transition: ease-out;
        -o-transition: ease-out;
        transition: ease-out;
        -webkit-transform: scale(0.04) translateY(0);
        transform: scale(0.04) translateY(0);
    }
    60% {
        opacity: 1;
        -webkit-transform: scale(0.02) translateY(0);
        transform: scale(0.02) translateY(0);
    }
    61% {
        opacity: 1;
        -webkit-transform: scale(0.04) translateY(0);
        transform: scale(0.04) translateY(0);
    }
    99.9% {
        opacity: 1;
        height: 0;
        padding-bottom: 100%;
        border-radius: 100%;
    }
    100% {
        opacity: 1;
        -webkit-transform: scale(2) translateY(0);
        transform: scale(2) translateY(0);
        height: 100%;
        padding-bottom: 0;
        border-radius: 0;
    }
}

.xs-promo-popup .modal-content {
    background-color: transparent;
    padding: 0;
    border: 0;
}

.xs-promo-popup .mfp-close {
    color: var(--color-text-white);
    opacity: 0;
    -webkit-transition: 1s 0.8s;
    -o-transition: 1s 0.8s;
    transition: 1s 0.8s;
    -webkit-transform: translateY(-500px);
    -ms-transform: translateY(-500px);
    transform: translateY(-500px);
}

.xs-promo-popup.mfp-ready .mfp-close,
.xs-promo-popup.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.ts-search-form .form-control {
    height: 60px;
    border-radius: 36px;
    font-size: 18px;
}

.xs-promo-popup.my-mfp-slide-bottom .zoom-anim-dialog {
    opacity: 0;
    -webkit-transition: 1s 0.8s;
    -o-transition: 1s 0.8s;
    transition: 1s 0.8s;
    -webkit-transform: translateY(-500px);
    -ms-transform: translateY(-500px);
    transform: translateY(-500px);
}

/* ========================================
   MENU TABS
========================================= */
.menu-tab .nav.nav-tabs {
    border-right: 1px solid var(--color-border-dark);
    padding: 20px 0;
    min-height: 250px;
    margin-top: 0;
}

.menu-tab .nav.nav-tabs > li > a {
    border: 1px solid transparent;
    border-radius: 0;
    font-weight: 400;
    padding: 14px 16px 14px 30px;
    background: var(--color-bg-primary);
    text-transform: initial;
    font-size: 14px;
}

.menu-tab .nav.nav-tabs > li > a.active {
    background: var(--color-border-dark);
    margin-right: -1px;
    border: 1px solid var(--color-border-dark);
    border-right: 0;
    color: var(--color-primary);
    cursor: pointer;
}

.menu-tab .tab-content > .tab-pane {
    padding: 25px 0;
    min-height: 250px;
}

.menu-tab .tab-content > .tab-pane .col-md-3 {
    padding-right: 10px;
    padding-left: 10px;
}

.header.header-menu .logo {
    padding: 12px 0;
}

.header.header-menu > .container > .row {
    border-bottom: 1px solid var(--color-border-dark);
    margin-left: 0;
    margin-right: 0;
}

.header.header-menu ul.navbar-nav > li.mega-dropdown,
.site-nav-inner {
    position: static;
    width: 100%;
}

.nav-social-wrap,
.navbar {
    position: absolute;
    padding: 0;
}

.header.header-menu .mega-menu-content {
    min-width: 1145px;
    left: -43%;
}

.nav-social-wrap {
    right: 0;
    top: 0;
    z-index: 20;
}

.navbar {
    top: 64px;
    width: 100%;
    background: var(--color-bg-light);
    z-index: 9;
}

/* ========================================
   POSTS E OVERLAYS
========================================= */
.post-overaly-style,
.ts-category-list li a {
    background-size: cover;
    background-position: center center;
}

.post-block-style .post-thumb {
    border-radius: 12px;
    max-width: 100%;
    position: relative;
    overflow: hidden;
}

.post-block-style .post-thumb img,
.post-overaly-style .post-thumb img {
    display: block;
    width: 100%;
    -webkit-transition: 0.3s ease-out;
    -o-transition: 0.3s ease-out;
    transition: 0.3s ease-out;
}

.post-block-style:hover .post-thumb img {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
}

.overlay-post-content .post-content {
    padding: 20px 20px 18px;
    position: absolute;
    bottom: 0;
    z-index: 9;
}

.featured-slider .item {
    min-height: 640px;
    background-repeat: no-repeat;
    position: relative;
    background-size: cover;
}

.featured-slider .item .featured-post .post-content {
    padding: 40px 40px 35px 45px;
}

.post-overaly-style {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    min-height: 350px;
    transition: 0.4s;
}

.post-overaly-style::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    border-radius: 12px;
    background: var(--gradient-overlay);
    -webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s;
}

.post-overaly-style:hover {
    background-position: 40%;
}

.post-overaly-style.post-sm {
    min-height: 225px;
}

.post-overaly-style.post-md {
    min-height: 400px;
}

.post-overaly-style.post-extra-md {
    min-height: 430px;
    margin-bottom: -5px;
}

.post-overaly-style.post-lg {
    min-height: 550px;
}

.post-overaly-style:hover::after {
    background-color: rgba(0, 0, 0, 0.2);
}

.post-overaly-style .post-thumb {
    max-width: 100%;
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.post-overaly-style .post-content {
    position: absolute;
    bottom: 0;
    padding: 25px;
    z-index: 1;
}

.post-overaly-style:hover .post-thumb img {
    -webkit-transform: scale(1.15);
    -ms-transform: scale(1.15);
    transform: scale(1.15);
}

.post-overaly-style.overlay-primary::after {
    background: linear-gradient(180deg, rgba(120, 23, 242, 0.89) 0%, rgba(120, 23, 242, 0.89) 100%);
    opacity: 0.9;
}

.post-overaly-style.overlay-primary:hover::after {
    opacity: 0.7;
}

.trending-slider .post-md {
    min-height: 310px;
    margin-bottom: 0;
}

/* ========================================
   FEATURED TABS
========================================= */
.featured-tab .nav-tabs {
    border: 0;
    position: absolute;
    top: -5px;
    right: 0;
}

.featured-tab .nav-tabs .nav-item {
    margin-bottom: -1px;
}

.featured-tab .nav-tabs .nav-link {
    padding: 0 7px;
    border: none;
    position: relative;
    font-size: 17px;
    display: inline-block;
    color: #495057;
    font-weight: 700;
    font-family: Inter, sans-serif;
}

.featured-tab .nav-tabs .nav-link.active .tab-head > span.tab-text-title {
    color: var(--color-primary);
    background: 0 0;
    border: none;
}

.featured-tab .nav-tabs .nav-link.active:before {
    position: absolute;
    content: "";
    left: 0;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--color-primary);
    top: -5px;
    bottom: 0;
    margin: auto;
}

.featured-tab .nav-tabs .nav-link .tab-head > span.tab-text-title {
    font-size: 17px;
}

.featured-tab .tab-content {
    border-top: 0;
    padding: 0;
    overflow: hidden;
}

.featured-tab .tab-content > .active,
.single-post .post-meta li.social-share:hover .social-list {
    display: block;
}

/* ========================================
   LIST POST BLOCKS
========================================= */
.list-post-block .list-post .post-block-style .post-thumb {
    width: 130px;
    height: 85px;
    margin-bottom: 30px;
    margin-right: 25px;
}

.list-post-block .list-post .post-block-style .post-thumb.thumb-md {
    height: 96px;
    overflow: hidden;
}

.list-post-block .list-post .post-block-style .post-thumb.thumb-md img {
    max-width: 100%;
    height: 100%;
}

.list-post-block .list-post .post-block-style .grid-category .post-cat {
    text-transform: uppercase;
    padding-left: 0;
}

.list-post-block .list-post .post-block-style .post-content .post-title {
    margin: 5px 0;
    line-height: 18px;
}

.list-post-block .list-post li:last-child .post-block-style .post-thumb.thumb-md {
    height: 100px;
}

.block.style2 {
    background: var(--color-agenda);
    color: var(--color-text-white);
    padding: 40px;
    border-radius: 10px;
}

.block.style2 .post-block-style .post-title:not(.title-md) {
    line-height: 1.1;
}

.block-slider {
    background-color: #f6f6f6;
    padding-bottom: 0;
}

.block-slider .owl-carousel .owl-dots {
    top: auto;
    bottom: -47px;
    text-align: center;
    height: 20px;
}

/* ========================================
   CATEGORY LISTS
========================================= */
.ts-category-list li {
    list-style-type: none;
    margin-bottom: 5px;
    position: relative;
}

.ts-category-list li a {
    padding: 20px;
    color: var(--color-text-white);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: flex;
    font-weight: 600;
    font-size: 16px;
    background-repeat: no-repeat;
    border-radius: 10px;
    min-height: 100px;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.ts-category-list li a::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    content: "";
    background: var(--rgba-black-light);
    border-radius: 10px;
}

.ts-category-list li a span {
    position: relative;
    white-space: nowrap;
}

.ts-category-list li a span.bar {
    border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
    display: flex;
    width: 100%;
    margin: 0 65px 0 25px;
}

.ts-category-list li a:hover {
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    will-change: transform;
    -webkit-transition: -webkit-transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    -o-transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94), -webkit-transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ts-category-list-sm li a {
    min-height: 91px;
}

.trending-slider.full-width .post-overaly-style,
.trending-slider.full-width .post-overaly-style::after {
    border-radius: 0;
}

/* ========================================
   POST TABS
========================================= */
.post-tab .nav-tabs .nav-item .nav-link {
    text-transform: uppercase;
    color: var(--color-text-dark);
    letter-spacing: 0.64px;
}

.post-tab .nav-tabs .nav-item .nav-link::after,
.post-tab .nav-tabs .nav-item .nav-link::before {
    position: absolute;
    top: 0;
    content: "";
    background: var(--color-primary);
    left: 0;
    opacity: 1;
}

.post-tab .nav-tabs .nav-item .nav-link::before {
    opacity: 1;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    top: 12px;
    background: #d3d3d3;
}

.post-tab .nav-tabs .nav-item .nav-link.active::before {
    background: var(--color-primary);
    border-radius: 0;
    height: 12px;
    top: -6px;
}

.post-tab .nav-tabs .nav-item .nav-link.active::after {
    background: var(--color-primary);
    border-radius: 0;
    height: 3px;
    width: 12px;
}

.post-tab .list-post .post-block-style:hover .post-thumb img {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
}

.post-tab .list-post .post-block-style .post-thumb {
    position: relative;
    border-radius: 50%;
    overflow: initial;
    width: 85px;
    height: 85px;
}

.post-tab .list-post .post-block-style .post-thumb img {
    border-radius: 50%;
    height: 100%;
}

.post-tab .list-post .post-block-style .post-thumb .tab-post-count {
    position: absolute;
    top: 0;
    left: 12px;
    background: var(--color-primary);
    display: block;
    border-radius: 50%;
    color: var(--color-text-white);
    width: 20px;
    height: 20px;
    font-size: 11px;
    text-align: center;
    line-height: 18px;
    border: 2px solid var(--color-text-white);
    font-family: Inter, sans-serif !important;
}

/* ========================================
   COMMENTS
========================================= */
.ts-comments-row {
    position: relative;
    margin-bottom: 50px;
}

.ts-author,
.ts-author a {
    color: var(--color-text-light);
}

.ts-author-comments::after {
    position: absolute;
    content: "";
    left: 36px;
    bottom: 20%;
    width: 1px;
    z-index: -1;
    height: 60%;
    background: var(--color-border-light);
}

.ts-author-thumb {
    width: 75px;
    height: 75px;
    border-radius: 50%;
    overflow: hidden;
    margin-bottom: 10px;
}

.ts-author-media {
    background: var(--color-bg-primary);
    padding: 20px 0;
}

.ts-author-content {
    padding: 30px;
    border: 1px solid var(--color-border-light);
    position: relative;
}

.ts-author-content::after {
    position: absolute;
    content: "";
    left: -9px;
    top: 50%;
    width: 16px;
    height: 16px;
    background: var(--color-bg-primary);
    -webkit-transform: translateY(-100%) rotate(45deg);
    -ms-transform: translateY(-100%) rotate(45deg);
    transform: translateY(-100%) rotate(45deg);
    border: 1px solid var(--color-border-gray);
    border-width: 0 0 1px 1px;
}

.ts-author-content::before {
    position: absolute;
    content: "\e943";
    left: 20px;
    top: -10px;
    font-size: 20px;
    font-family: iconfont;
    background: var(--color-bg-primary);
    width: 30px;
    height: 30px;
    text-align: center;
}

.ts-author-content .comment {
    margin-bottom: 12px;
}

.ts-author-content .comment a {
    font-weight: 500;
    font-style: italic;
    color: var(--color-secondary);
    line-height: 20px;
}

/* ========================================
   NEWSLETTER
========================================= */
.newsletter-area {
    background: var(--gradient-primary);
    padding: 40px 0;
}

.newsletter-area .email-form-group .news-icon {
    position: absolute;
    left: 15px;
    bottom: 15px;
    color: var(--color-text-white);
    font-size: 17px;
}

.newsletter-area .newsletter-email {
    background: var(--rgba-white-medium);
    height: 48px;
    color: var(--color-text-white);
    border: none;
    width: 100%;
    padding: 0 40px;
    border-radius: 10px;
}

.newsletter-area .newsletter-email::-webkit-input-placeholder,
.newsletter-area .newsletter-email:-ms-input-placeholder,
.newsletter-area .newsletter-email::-ms-input-placeholder,
.newsletter-area .newsletter-email::placeholder {
    color: var(--color-text-white);
    opacity: 1;
}

.newsletter-area .newsletter-submit {
    position: absolute;
    right: 0;
    top: 0;
    padding: 0 40px;
    border-radius: 0 10px 10px 0;
    height: 48px;
    line-height: 48px;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    background: var(--color-secondary);
    border: none;
    color: var(--color-text-white);
    cursor: pointer;
}

/* ========================================
   FOOTER
========================================= */
.ts-footer {
    background: var(--color-secondary);
    padding-top: 58px;
    padding-bottom: 20px;
}

.ts-footer-info {
    padding: 0;
    margin-bottom: 40px;
}

.ts-footer-info li {
    color: var(--color-text-white);
    list-style: none;
    display: flex;
    margin-bottom: 15px;
}

.ts-footer-info li i {
    margin-right: 15px;
    font-size: 18px;
}

.ts-footer .widget-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--color-text-white);
    line-height: 28px;
    padding-left: 0;
    position: relative;
}

.ts-footer .widget-title::before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1px;
    bottom: 0;
    margin: auto;
    content: "";
}

.ts-footer .widget-title span {
    padding-right: 40px;
    position: relative;
}

.ts-footer .footer-widtet.post-widget .post-block-style .post-thumb {
    width: 65px;
    height: 65px;
    margin-right: 20px;
}

.ts-footer .footer-widtet.post-widget .post-block-style .post-thumb img {
    height: 100%;
}

.ts-copyright {
    background: var(--color-hover);
    padding: 30px 0;
}

/* ========================================
   SIDEBAR
========================================= */
.sidebar-widget:not(:last-child) {
    margin-bottom: 32px;
}

.sidebar-widget .nav-tabs {
    left: 0;
    right: auto;
}

/* ========================================
   SINGLE POST
========================================= */
.single-post .post-meta {
    padding: 15px 0;
    border-top: 1px solid #d9d9d9;
}

.single-post .post-meta li {
    color: var(--color-text-light);
    margin-bottom: 10px;
}

.single-post .post-meta li a:hover {
    background-color: var(--color-primary);
}

.single-post .post-meta li.social-share {
    position: absolute;
    margin-left: 50px;
    right: 0;
}

.single-post .post-meta li.social-share .shareicon {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--color-primary);
    color: var(--color-text-white);
    display: block;
    text-align: center;
    padding: 10px 0;
    cursor: pointer;
    font-size: 12px;
}

.single-post .post-meta li.social-share .social-list {
    position: absolute;
    right: 30px;
    top: -8px;
    padding: 12px 18px;
    z-index: 1;
    background: #f7f7f7;
    min-width: 120px;
    display: none;
    text-align: center;
}

.single-post .post-content-area ul li {
    list-style: inside;
    margin-bottom: 10px;
}

.single-post img.float-left {
    margin-right: 30px;
    margin-bottom: 30px;
}

.single-post .gallery-img {
    position: relative;
    padding: 30px 0;
    border-top: 1px solid var(--color-border-gray);
    border-bottom: 1px solid var(--color-border-gray);
    margin-bottom: 30px;
    clear: both;
}

.single-post .gallery-img img {
    float: left;
    width: 20%;
}

.single-post .tag-lists span {
    padding: 4px 13px;
    background: var(--color-primary);
    color: var(--color-text-white);
    border-radius: 35px;
    margin-right: 6px;
    display: inline-block;
    font-family: Inter, sans-serif;
}

.single-post .tag-lists a {
    border: 1px solid #aaa;
    color: #aaa;
    display: inline-block;
    font-size: 14px;
    padding: 4px 13px;
    margin-left: 3px;
    font-family: Inter, sans-serif;
    margin-bottom: 10px;
    border-radius: 36px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.single-post .tag-lists a:hover {
    color: var(--color-text-white);
    background: var(--color-primary);
    border-color: var(--color-primary);
}

.single-post .post-navigation {
    padding: 30px 0;
}

.single-post .post-navigation .post-next,
padding-left: 120px;
    padding-right: 30px;
    border-right: 1px solid var(--color-border-muted);
}

.single-post .post-navigation .post-previous img {
    left: 0;
}

.single-post .post-navigation .post-next {
    text-align: right;
    padding-right: 120px;
    padding-left: 30px;
}

.single-post .post-navigation .post-next img {
    right: 0;
    left: auto;
}

.single-post .post-navigation a p {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 0;
    line-height: 20px;
}

.single-post .post-navigation a span {
    font-size: 16px;
    font-weight: 700;
    display: block;
    color: var(--color-secondary);
}

.single-post .post-navigation img {
    position: absolute;
    top: 0;
    width: 100px;
    height: 58px;
    border-radius: 10px;
}

.single-post article p a {
    color: var(--color-secondary);
    text-decoration-line: underline;
    text-decoration-color: var(--color-primary);
    text-decoration-thickness: 2px;
    text-underline-offset: 2px;
}

/* ========================================
   AUTHOR BOX
========================================= */
.author-box {
    margin-top: 20px;
    padding: 30px 0 5px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.author-box .author-img img {
    width: 58px;
    height: 58px;
    border-radius: 50%;
}

.author-box .author-info h3 {
    font-size: 14px;
    text-transform: capitalize;
    margin-bottom: 10px;
}

.author-box .author-counter span {
    background: var(--color-hover);
    color: var(--color-text-white);
    font-size: 12px;
    padding: 2px 8px;
}

.author-box .author-social {
    padding-bottom: 20px;
}

.author-box .author-social a {
    color: var(--color-text-dark);
    margin-left: 10px;
}

/* ========================================
   POST VIDEO
========================================= */
.post-video {
    position: relative;
    margin-bottom: 35px;
}

.post-video::before {
    content: " ";
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
    bottom: 0;
    left: 0;
    border-radius: 10px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 14%, rgba(0, 0, 0, 0.85) 100%);
}

.post-video img {
    width: 100%;
    border-radius: 10px;
}

.post-video-content {
    padding: 20px;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 1;
}

.post-video-content .ts-play-btn {
    position: relative;
    top: 0;
    left: 0;
    right: auto;
    width: 60px;
    height: 60px;
    border: 1px solid #92999a;
    border-radius: 50%;
    padding: 18px 0;
    display: block;
    text-align: center;
    font-size: 15px;
    background: rgba(0, 0, 0, 0.25);
    float: left;
    color: var(--color-text-white);
    margin-right: 20px;
}

/* ========================================
   COMMENTS LIST
========================================= */
.comments-list .comment {
    border-bottom: 1px solid var(--color-border-muted);
    padding-bottom: 20px;
    margin-bottom: 30px;
}

.comments-list .comment .comment-avatar {
    width: 84px;
    height: 84px;
    margin-right: 30px;
}

.comments-list .comment .comment-body {
    margin-left: 114px;
}

.comments-list .comment .comment-body .comment-author {
    margin-bottom: 0;
    margin-top: 0;
    font-weight: 600;
    font-size: 16px;
    color: #303030;
}

.comments-list .comment .comment-body .comment-content {
    margin: 15px 0;
}

.transing-slide-style2:hover .owl-nav .owl-next,
.transing-slide-style2:hover .owl-nav .owl-prev {
    opacity: 1;
}

.contact-info h4 {
    font-weight: 600;
}

.post-content-area p {
    font-size: 1.125rem;
    line-height: 1.75rem;
    letter-spacing: -0.03125rem;
}

.post-content-area p img {
    width: 100%;
    height: auto;
}

/* ========================================
   VIDEO CONTAINER
========================================= */
.video-container {
    overflow: hidden;
    position: relative;
    width: 100%;
}

.float,
.lgpd {
    position: fixed;
}

.video-container::after {
    padding-top: 56.25%;
    display: block;
    content: "";
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ========================================
   FLOAT E LGPD
========================================= */
.float {
    width: 44px;
    height: 44px;
    bottom: 15px;
    right: 115px;
    background-color: var(--color-whatsapp);
    color: var(--color-text-white);
    border-radius: 50px;
    text-align: center;
    font-size: 25px !important;
    z-index: 100;
}

.painel-title {
    padding: 25px 25px 2px 30px !important;
    background-color: red;
    border-radius: 10px 5px 5px;
    color: var(--color-text-white) !important;
    margin-bottom: 30px !important;
}

.lgpd,
.lgpd button {
    border-radius: 10px;
}

.lgpd {
    right: 20px;
    left: 20px;
    bottom: 20px;
    z-index: 1000;
    padding: 15px;
    background-color: rgba(43, 43, 43, 0.97);
    box-shadow: 0 8px 6px 0 rgba(0, 0, 0, 0.41);
    box-sizing: border-box;
    color: var(--color-text-white);
    font-size: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.lgpd a {
    color: var(--color-accent) !important;
    text-decoration: underline;
}

.lgpd button {
    position: relative;
    display: block;
    width: 118px;
    height: 36px;
    line-height: 34px;
    font-size: large;
    background: var(--color-accent);
    cursor: pointer;
    color: rgba(43, 43, 43) !important;
    border: none;
    box-shadow: inset 0 -2px 0 0 rgba(0, 0, 0, 0.4);
    transition: 0.3s;
}

/* ========================================
   COVID-19 STYLES
========================================= */
.ncov2019 .one_fourth {
    width: 100% !important;
    display: none;
    padding-top: 0;
}

.ncov2019 .title {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 15px;
}

.ncov2019 .text-center {
    text-align: left !important;
}

.ncov2019 .has-vivid-green-cyan-color {
    color: #27cf16;
}

.ncov2019 #cov-total-dead {
    color: red;
}

.ncov2019 #cov-total-active {
    color: #ff6900;
}

.ncov2019 #cov-total-vacine {
    color: #09f;
}

.ncov2019 .one_fourth h3 i {
    display: none !important;
}

.ncov2019 .cov_map {
    height: 150px;
}

.ncov2019 .one_fourth:first-child,
.ncov2019 .one_fourth:nth-child(2),
.ncov2019 .one_fourth:nth-child(3),
.ncov2019 .one_fourth:nth-child(4),
.ncov2019 .one_fourth:nth-child(5),
.ncov2019 .one_fourth:nth-child(6) {
    display: block;
    padding: 5px 0;
}

.ncov2019 .one_fourth h3 {
    padding-left: 15px;
}

.ncov2019 .one_fourth h5 {
    padding-left: 30px;
    position: relative;
}

.ncov2019 .one_fourth h5::before {
    content: "";
    width: 7px;
    height: 7px;
    background: red;
    border-radius: 50%;
    position: absolute;
    top: 8px;
    left: 10px;
    -webkit-animation: 3s ease-in-out infinite pulsed;
    animation: 3s ease-in-out infinite pulsed;
}

@-webkit-keyframes pulsed {
    0%,
    70% {
        -webkit-box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.5);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.5);
    }
    100% {
        -webkit-box-shadow: 0 0 0 15px rgba(255, 0, 0, 0);
        box-shadow: 0 0 0 15px rgba(255, 0, 0, 0);
    }
}

@keyframes pulsed {
    0%,
    70% {
        -webkit-box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.5);
        box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.5);
    }
    100% {
        -webkit-box-shadow: 0 0 0 15px rgba(255, 0, 0, 0);
        box-shadow: 0 0 0 15px rgba(255, 0, 0, 0);
    }
}

/* ========================================
   HIGHLIGHT
========================================= */
.highlight {
    background-color: rgba(174, 32, 168, 0.35);
}

/* ========================================
   RESPONSIVIDADE
========================================= */
@media (max-width: 991px) {
    .res-margin {
        margin-bottom: 15px;
    }
    
    .mb-1, .mb-2, .mb-3, .mb-4, .mb-5, .mb-6, .mb-7, .mb-8, .mb-9, .mb-10,
    .mb-11, .mb-12, .mb-13, .mb-14, .mb-15, .mb-16, .mb-17, .mb-18, .mb-19, .mb-20 {
        margin-bottom: 0;
    }
    
    .mr-1, .mr-2, .mr-3, .mr-4, .mr-5, .mr-6, .mr-7, .mr-8, .mr-9, .mr-10,
    .mr-11, .mr-12, .mr-13, .mr-14, .mr-15, .mr-16, .mr-17, .mr-18, .mr-19, .mr-20 {
        margin-right: 0;
    }
    
    .ml-1, .ml-2, .ml-3, .ml-4, .ml-5, .ml-6, .ml-7, .ml-8, .ml-9, .ml-10,
    .ml-11, .ml-12, .ml-13, .ml-14, .ml-15, .ml-16, .ml-17, .ml-18, .ml-19, .ml-20 {
        margin-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .lgpd {
        height: auto;
        padding: 34px;
        text-align: center;
        flex-wrap: wrap;
        justify-content: center !important;
    }
    
    .lgpd button {
        margin-top: 10px;
        height: 36px;
        font-size: large;
    }
}

@media screen and (max-width: 600px) {
    .headline h1 {
        font-size: 38px !important;
        line-height: 45px !important;
    }
    
    .box-share {
        justify-content: space-between;
    }
    
    .btn-facebook {
        margin-left: 0;
    }
}

@media (min-width: 767px) {
    ul.nav li.dropdown .dropdown-menu li.dropdown-submenu .dropdown-menu {
        left: 100%;
        top: 0;
        display: none;
    }
    
    ul.nav li.dropdown .dropdown-menu li.dropdown-submenu:hover .dropdown-menu {
        display: block;
    }
}

@media (min-width: 992px) {
    .pad-0 { padding: 0; }
    .pad-r { padding-right: 2px; }
    .pad-r-10 { padding-right: 10px; }
    .pad-r-small { padding-right: 1.5px; }
    .pad-r-0 { padding-right: 0; }
    .pad-l { padding-left: 2px; }
    .pad-l-small { padding-left: 1.5px; }
    .pad-l-0 { padding-left: 0; }
    
    .is-ts-sticky.sticky {
        -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.08);
        box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.08);
        position: fixed;
        top: 0;
        z-index: 9;
        width: 100%;
        left: 0;
        right: 0;
        margin: auto;
    }
    
    .is-ts-sticky.sticky.fade_down_effect {
        -webkit-animation-name: fadeInDown;
        animation-name: fadeInDown;
        -webkit-animation-duration: 1s;
        animation-duration: 1s;
        -webkit-animation-fill-mode: both;
        animation-fill-mode: both;
        -webkit-animation-delay: 0.1s;
        animation-delay: 0.1s;
    }
    
    .header.header-menu ul.navbar-nav > li.mega-dropdown,
    .navbar,
    .site-nav-inner {
        position: static;
        width: 100%;
    }
    
    .navbar {
        top: 64px;
        background: 0 0;
    }
    
    ul.navbar-nav > li > a {
        color: var(--color-text-white);
        padding: 0 22px;
    }
}

@media (min-width: 1200px) {
    .owl-carousel.h2-feature-slider .owl-dots {
        top: 35%;
    }
}

/* Links do menu - Garantia de alinhamento vertical */
.header.header-menu ul.navbar-nav > li > a,
ul.navbar-nav > li > a {
    padding: 0 20px;
    height: 64px;
    line-height: 1;
    font-size: 14.5px;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin: 0;
    position: relative;
    transition: color 200ms ease, background-color 200ms ease;
    font-family: Inter, sans-serif;
    display: flex;
    align-items: center;
}

/* Garantir que flexbox não quebre a altura */
ul.navbar-nav > li {
    float: left;
    padding: 0;
    position: relative;
    height: 64px;
}

/* Ajuste específico para header.header-menu */
.header.header-menu ul.navbar-nav > li > a {
    color: var(--color-text-white);
    padding: 0 22px;
    height: 64px;
    line-height: 1;
}

.top-social ul li a {
    color: var(--color-text-white);
    font-size: 14px;
    transition: 0.4s;
    padding: 0 10px;
    line-height: 64px;
}

ul.navbar-nav > li > a i {
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}

ul.navbar-nav > li.active a::before,
ul.navbar-nav > li:hover a::before {
    border-color: var(--color-primary);
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
}

/* ========================================
   MODERNIZAÇÃO HOME 2026 — PORTAL DE NOTÍCIAS
   Tipografia, cards, seções e responsividade
========================================= */

/* ----- Block titles modernos ----- */
.block-title {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;

    font-family: var(--font-editorial);
    font-size: 32px;
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.05;

    margin-bottom: 12px;

    color: #111111;
}

.block-title::before {
    content: "";

    width: 5px;
    height: 28px;

    border-radius: 999px;

    background: var(--color-interactive);

    flex-shrink: 0;
}

/* Cabeçalho: [Título]              [Ver mais] */
.block-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

/* Linha decorativa: [■■■ 50px cor principal][——— 1px cinza até o fim ———] */
/* .block-title-rule {
    display: flex;
    align-items: center;
    margin-bottom: 24px;
}

.block-title-rule::before {
    content: '';
    display: block;
    width: 50px;
    height: 4px;
    background: var(--color-interactive);
    border-radius: 2px;
    flex-shrink: 0;
}

.block-title-line {
    flex: 1;
    height: 1px;
    background: #ddd;
} */

.block-more-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 28px;
    padding: 0;
    color: #6f7782;
    background: transparent;
    font-family: var(--font-ui);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0;
    white-space: nowrap;
    flex-shrink: 0;
    transition: color 0.2s ease;
}

.block-more-link:hover {
    color: var(--color-primary);
}

.block-more-link::after {
    content: "\f105";
    display: inline-block;
    font-family: FontAwesome;
    font-size: 13px;
    font-weight: normal;
    line-height: 1;
    opacity: 0.75;
    transition: transform 0.22s ease;
}

.block-more-link:hover::after {
    transform: translateX(2px);
}

/* ----- Ultimas Noticias: feed editorial premium ----- */
.latest-news-section {
    padding: 34px 0 42px;
    background: #fff;
}

.latest-news-shell {
    margin: 0 auto;
}

.latest-news-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
    align-items: start;
}

.latest-news-main {
    min-width: 0;
}

.latest-news-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(25, 63, 123, 0.12);
}

.latest-news-title {
    margin: 0;
    letter-spacing: 0;
}

.latest-news-title::before {
    width: 6px;
    height: 34px;
    background: var(--color-interactive);
}

.latest-news-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 28px;
    padding: 0;
    color: #6f7782;
    background: transparent;
    font-family: var(--font-ui);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0;
    transition: color 0.2s ease;
}

.latest-news-more:hover {
    color: var(--color-primary);
}

.latest-news-more i {
    font-size: 13px;
    opacity: 0.75;
    transition: transform 0.22s ease;
}

.latest-news-more:hover i {
    transform: translateX(2px);
}

.latest-news-feed {
    display: grid;
    gap: 0;
    background: #fff;
}

.latest-news-item {
    display: grid;
    grid-template-columns: minmax(104px, 29vw) 1fr;
    gap: 14px;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid rgba(17, 24, 39, 0.09);
    transition: transform 0.24s ease, background 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.latest-news-item:first-child {
    padding-top: 6px;
}

.latest-news-item:last-child {
    border-bottom: 0;
}

.latest-news-item:hover {
    transform: translateY(-2px);
    border-color: rgba(45, 116, 218, 0.18);
    background: rgba(25, 63, 123, 0.025);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.055);
}

.latest-news-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 8px;
    background: #eef2f7;
}

.latest-news-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.36s ease, filter 0.36s ease;
}

.latest-news-item:hover .latest-news-image img {
    transform: scale(1.045);
    filter: saturate(1.05);
}

.latest-news-content {
    min-width: 0;
}

.latest-news-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 7px;
}

.latest-news-badge {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    color: #fff;
    background: var(--color-primary);
    font-family: var(--font-ui);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0;
    text-decoration: none;
    text-transform: uppercase;
}

.latest-news-badge:hover {
    color: #fff;
    background: var(--color-interactive);
}

.latest-news-meta time {
    color: #737b86;
    font-family: var(--font-ui);
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
}

.latest-news-headline {
    margin: 0;
    font-family: var(--font-editorial);
    font-size: 18px;
    line-height: 1.16;
    letter-spacing: 0;
}

.latest-news-headline a {
    color: #14171a;
    text-decoration: none;
    transition: color 0.2s ease;
}

.latest-news-headline a:hover {
    color: var(--color-primary);
}

.latest-news-summary {
    display: none;
    margin: 8px 0 0;
    color: #56606b;
    font-family: var(--font-ui);
    font-size: 14px;
    line-height: 1.55;
}

.latest-news-empty {
    padding: 24px 0;
    color: #6b7280;
    font-family: var(--font-ui);
}

.latest-news-sidebar {
    min-width: 0;
}

.latest-news-sidebar .sidebar-widget:first-child {
    margin-top: 0;
}

.latest-news-sidebar .sidebar-widget .block-title {
    font-size: 20px;
    line-height: 1.1;
}

.latest-news-sidebar .sidebar-widget .block-title::before {
    height: 24px;
}

@media (min-width: 576px) {
    .latest-news-item {
        grid-template-columns: 126px 1fr;
        gap: 16px;
        padding: 16px 0;
    }

    .latest-news-headline {
        font-size: 21px;
    }
}

@media (min-width: 768px) {
    .latest-news-section {
        padding: 44px 0 54px;
    }

    .latest-news-header {
        margin-bottom: 18px;
    }

    .latest-news-item {
        grid-template-columns: 142px 1fr;
        gap: 18px;
        padding: 18px 0;
    }

    .latest-news-item-featured {
        grid-template-columns: minmax(240px, 0.38fr) 1fr;
        gap: 24px;
        padding: 18px 16px 22px 0;
    }

    .latest-news-item-featured .latest-news-image {
        aspect-ratio: 16 / 10;
    }

    .latest-news-item-featured .latest-news-headline {
        font-size: 31px;
        line-height: 1.08;
    }

    .latest-news-item-featured .latest-news-summary {
        display: block;
    }
}

@media (min-width: 992px) {
    .latest-news-section {
        padding-top: 52px;
    }

    .latest-news-layout {
        grid-template-columns: minmax(0, 1fr) 340px;
        gap: 36px;
    }

    .latest-news-item {
        grid-template-columns: 148px 1fr;
    }

    .latest-news-item-featured {
        grid-template-columns: minmax(260px, 0.38fr) 1fr;
    }
}

@media (min-width: 1200px) {
    .latest-news-layout {
        grid-template-columns: minmax(0, 1fr) 360px;
        gap: 42px;
    }

    .latest-news-item {
        grid-template-columns: 154px 1fr;
    }

    .latest-news-item-featured {
        grid-template-columns: 300px 1fr;
    }
}

@media (max-width: 575px) {
    .latest-news-header {
        align-items: flex-start;
    }

    .latest-news-more {
        min-width: 38px;
        width: 38px;
        padding: 0;
    }

    .latest-news-more span {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        white-space: nowrap;
    }

    .latest-news-title::before {
        height: 28px;
    }

    .latest-news-headline {
        font-size: 17px;
    }

    .latest-news-meta {
        margin-bottom: 6px;
    }
}

/* Segurança: barra na cor escura */
.section-seguranca .block-title-rule::before {
    background: #1a1a2e;
}

/* Compatibilidade com title-angle-shap (outros templates) */
.block-title .title-angle-shap {
    display: inline-block;
    padding-bottom: 8px;
    border-bottom: 3px solid var(--color-primary);
}

.block-title .title-angle-shap::before,
.block-title .title-angle-shap::after {
    display: none;
}

/* Categoria e Busca: sem linha abaixo dos títulos */
.category-layout-2 .block-title .title-angle-shap {
    border-bottom: none;
    padding-bottom: 0;
}

/* ----- Seção Segurança ----- */
.section-seguranca {
    background: #f8f9fa;
    padding: 40px 0 58px;
    /* border-top: 3px solid #1a1a2e; */
}

.section-seguranca .block-title .title-angle-shap {
    border-bottom-color: #1a1a2e;
}

/* .seguranca-card {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 12px 0;
    border-bottom: 1px solid #e2e5e8;
} */

.seguranca-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 14px 0;
    border-bottom: 1px solid #e8ebee;
}

.seguranca-card-thumb {
    flex-shrink: 0;
    width: 120px;
    height: 84px;
    overflow: hidden;
    border-radius: 10px;
}

.seguranca-card:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

/* .seguranca-card-thumb {
    flex-shrink: 0;
    width: 96px;
    height: 68px;
    overflow: hidden;
    border-radius: 6px;
} */

.seguranca-card-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

.seguranca-card:hover .seguranca-card-thumb img {
    transform: scale(1.05);
}

.seguranca-card-content {
    flex: 1;
    min-width: 0;
}

.seguranca-card-content .post-title {
    font-size: 16px;
    line-height: 1.28;
    font-weight: 600;
    margin: 0;
    letter-spacing: -0.01em;
}

/* ----- Post overlay melhorado ----- */
.post-overaly-style {
    border-radius: 12px;
}

.post-overaly-style::after {
    border-radius: 12px;
    background: linear-gradient(to bottom, transparent 25%, rgba(0,0,0,0.82) 100%);
}

/* ----- Sidebar modernizada ----- */
.sidebar-widget {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 24px;
}

.sidebar-widget .block-title {
    font-size: 20px;
    margin-bottom: 16px;
}

/* Mais Lidas — numeração grande */
.flex-container {
    padding: 10px 0;
    border-bottom: 1px solid #f2f2f2;
}

.flex-container:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.flex-container > div:first-child {
    font-family: Inter, sans-serif;
    font-size: 36px;
    font-weight: 900;
    letter-spacing: -2px;
    color: var(--color-interactive);
    min-width: 42px;
    margin-right: 12px;
    line-height: 1;
    padding-top: 2px;
}

.flex-container > div > h2 {
    font-size: 13px;
    line-height: 19px;
    font-weight: 600;
    font-family: Inter, sans-serif;
    margin: 0;
}

/* ----- Lista de posts moderna (sidebar) ----- */
.list-post-block .list-post li {
    padding: 10px 0;
    border-bottom: 1px solid #f3f3f3;
}

.list-post-block .list-post li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.list-post-block .post-thumb {
    border-radius: 6px;
    width: 80px;
    height: 60px;
    overflow: hidden;
    flex-shrink: 0;
}

.list-post-block .post-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.list-post-block .post-content .post-title {
    font-size: 13px;
    line-height: 18px;
    margin: 0 0 2px;
}

/* ----- Seção SC Carousel ----- */
.trending-slider {
    background: var(--color-primary);
    padding: 36px 0;
}

.ts-section-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin-bottom: 20px;
}

.trending-slider .block-title {
    color: #fff;
    margin-bottom: 0;
}

.trending-slider .block-more-link {
    color: rgba(255,255,255,0.6);
}

.trending-slider .block-more-link:hover {
    color: #fff;
}

.trending-slider .block-title .title-angle-shap {
    color: #fff;
    border-bottom-color: var(--color-accent);
}

.trending-slider .post-title a {
    color: #fff;
}

.trending-slider .owl-carousel.dot-style2 .owl-dots {
    top: -30px;
}

.trending-slider .owl-carousel .owl-dots .owl-dot span {
    background: rgba(255,255,255,0.4);
}

.trending-slider .owl-carousel .owl-dots .owl-dot.active span {
    background: var(--color-accent);
}

/* ----- Featured post area — principal (col-7) + 2 secundárias empilhadas (col-5) ----- */
.featured-post-area {
    padding-top: 38px;
}

.featured-post-area > .container > .row {
    align-items: stretch;
}

.featured-post-area .col-lg-7 {
    display: flex;
}

.featured-main-card {
    flex: 1;
    min-height: 400px;
    width: 100%;
}

.featured-aside {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.featured-aside-card {
    flex: 1;
    min-height: 200px;
}

/* ----- Joinville editorial grid ----- */
.joinville-editorial-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    align-items: stretch;
}

.joinville-hero {
    min-width: 0;
}

.joinville-hero .joinville-card-title {
    font-size: 22px;
    font-family: var(--font-editorial);
}

.joinville-side-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.joinville-card {
    min-width: 0;
    border-bottom: 1px solid rgba(17, 24, 39, 0.09);
    padding-bottom: 16px;
}

.joinville-card-thumb {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: 8px;
    background: #eef2f7;
}

.joinville-card-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.32s ease, filter 0.32s ease;
}

.joinville-card:hover .joinville-card-thumb img {
    transform: scale(1.04);
    filter: saturate(1.05);
}

.joinville-card-content {
    padding-top: 10px;
}

.joinville-card-title {
    margin: 8px 0 0;
    font-family: var(--font-ui);
    font-size: 17px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: 0;
}

.joinville-card-title a {
    color: #14171a;
    text-decoration: none;
    transition: color 0.2s ease;
}

.joinville-card-title a:hover {
    color: var(--color-primary);
}

@media (min-width: 768px) {
    .joinville-editorial-grid {
        grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
        gap: 26px;
    }

    .joinville-side-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 18px;
        column-gap: 28px;
    }

    .joinville-card {
        padding-bottom: 0;
        border-bottom: 0;
    }
}

@media (min-width: 1200px) {
    .joinville-editorial-grid {
        grid-template-columns: minmax(0, 1.08fr) minmax(430px, 0.92fr);
        gap: 30px;
    }

}

/* ----- Gap interno entre cards no grid 2x2 ----- */
.ts-gutter-20 > div {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* ----- Post cat aprimorado ----- */
.post-cat {
    font-size: 10px;
    padding: 3px 8px;
    border-radius: 4px;
    font-weight: 700;
    letter-spacing: 0.04em;
    height: auto;
    line-height: 1.4;
}

/* ----- Hover em links de notícias ----- */
.post-title a {
    transition: color 0.2s ease;
}

/* ----- Sticky nav sombra ----- */
.main-nav.sticky {
    box-shadow: 0 2px 12px rgba(0,0,0,0.12);
}

/* ----- Rodapé moderno ----- */
.ts-footer {
    background: #111820;
    padding: 40px 0 20px;
}

.ts-footer .footer-widtet h3.widget-title span {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.ts-footer .footer-widtet p {
    color: #9ca3af;
    font-size: 14px;
    line-height: 1.7;
}

.ts-footer .footer-widtet.post-widget .post-block-style .post-content .post-title a {
    font-size: 13px;
    line-height: 18px;
    color: #d1d5db;
}

.ts-footer .footer-widtet.post-widget .post-block-style .post-content .post-title a:hover {
    color: var(--color-accent);
}

.ts-social li a {
    font-size: 18px;
    margin: 0 12px 0 0;
    color: #9ca3af;
    transition: color 0.2s;
}

.ts-social li a:hover {
    color: #fff;
}

.ts-copyright {
    background: #0d1117;
    padding: 14px 0;
}

.ts-copyright p {
    font-size: 12px;
    color: #6b7280;
    margin: 0;
}

.link-terms:hover {
    color: #fff;
}

/* ----- Responsividade mobile ----- */
@media (min-width: 992px) {
    .featured-main-card {
        min-height: 520px;
    }

    .featured-aside-card {
        min-height: 245px;
    }
}

@media (max-width: 991px) {
    .featured-post-area .col-lg-7 {
        display: block;
    }

    .featured-main-card {
        min-height: 280px;
        width: 100%;
    }

    .featured-aside {
        margin-top: 0;
    }

    .featured-aside-card {
        min-height: 210px;
    }
}

@media (max-width: 767px) {
    .featured-main-card {
        min-height: 260px;
    }

    .featured-aside-card {
        min-height: 200px;
    }

    .seguranca-card-thumb {
        width: 80px;
        height: 58px;
    }

    .section-seguranca {
        padding: 30px 0 !important;
    }

    .post-title.title-lg {
        font-size: 22px;
        line-height: 28px;
    }

    .post-title.title-md {
        font-size: 17px;
        line-height: 23px;
    }

    .block-title {
        font-size: 24px;
    }

    .trending-slider {
        padding: 18px 0;
    }

    .sidebar-widget {
        margin-top: 24px;
    }
}

@media (max-width: 575px) {
    .featured-main-card {
        min-height: 240px;
    }

    .featured-aside-card {
        min-height: 185px;
    }

}

/* ================================================
   DESIGN SYSTEM 2026 — COR INTERATIVA & REFINAMENTOS
   ================================================= */

/* ------- Nav: alinhamento vertical dos itens ------- */
.main-nav ul.navbar-nav > li > a {
    display: flex;
    align-items: center;
    height: 64px;
    line-height: 1;
    padding: 0 20px;
}

.main-nav ul.navbar-nav > li > a i {
    font-size: 15px;
    line-height: 1;
}

/* ------- Nav: garantir branco no hover/active ------- */
.main-nav ul.navbar-nav > li > a:hover,
.main-nav.dark-bg ul.navbar-nav > li > a:hover,
.main-nav.dark-bg ul.navbar-nav > li.active > a,
ul.navbar-nav > li > a:hover {
    color: var(--color-text-white);
}

/* Item ativo da nav: destaque amarelo accent */
.main-nav.dark-bg ul.navbar-nav > li.active > a {
    color: var(--color-accent);
}

/* Top social mantém branco no hover */
.top-social ul li a:hover {
    color: var(--color-text-white);
    opacity: 0.8;
}


/* ------- Carousel dots ------- */
.owl-carousel .owl-dots .owl-dot.active span,
.owl-carousel .owl-dots .owl-dot:hover span {
    background: var(--color-interactive);
    border-color: var(--color-interactive);
}

/* ------- Cards: hover ------- */
.post-block-style:hover {
    opacity: 0.9;
}

/* ------- Tags ------- */
.tag-list .tag-link:hover {
    color: var(--color-interactive);
    border-color: var(--color-interactive);
    background: rgba(45, 116, 218, 0.05);
}

/* Single post tags */
.single-post .tag-lists a:hover {
    background: var(--color-interactive);
    border-color: var(--color-interactive);
    color: var(--color-text-white);
}

/* ------- Botão Load More ------- */
.load-more-btn .btn:hover {
    background: var(--color-interactive);
    color: var(--color-text-white);
    border-color: var(--color-interactive);
}

/* ------- Links de busca ------- */
.nav-search:hover,
.header-search .form-group .search-btn:hover {
    color: var(--color-interactive);
}

/* ------- Breadcrumb ------- */
.breadcrumb li a:hover {
    color: var(--color-interactive);
}

/* ------- Item relacionadas ------- */
.item-relacionadas a:hover {
    color: var(--color-interactive);
}

/* ------- Post navigation hover ------- */
.single-post .post-navigation .post-next a:hover,
.single-post .post-navigation .post-previous a:hover {
    color: var(--color-interactive);
}

/* ------- Links dentro de artigo ------- */
.single-post article p a {
    text-decoration-color: var(--color-interactive);
}

.single-post article p a:hover {
    color: var(--color-interactive);
    text-decoration-color: var(--color-primary);
}

/* ------- Inputs e selects ------- */
input:focus,
select:focus,
textarea:focus {
    border-color: var(--color-interactive) !important;
    -webkit-box-shadow: 0 0 0 3px rgba(45, 116, 218, 0.15) !important;
    box-shadow: 0 0 0 3px rgba(45, 116, 218, 0.15) !important;
    outline: none;
}

/* ------- Agenda card link ------- */
.agenda-card-link {
    color: var(--color-interactive);
}

.agenda-card-link:hover {
    color: var(--color-primary);
}

/* ------- Event detail meta link hover ------- */
.event-detail-meta-link:hover {
    color: var(--color-interactive);
}

/* ------- Footer modernizado ------- */
.ts-footer {
    background: #131c2e;
}

.ts-copyright {
    background: #0d1522;
}

/* ------- Seções: mais respiro ------- */
section,
.section-padding {
    padding: 60px 0;
}

/* ------- Dropdown hover ------- */
.dropdown-menu > li > a:focus,
.dropdown-menu > li > a:hover {
    background: var(--color-primary);
    color: var(--color-text-white);
}

/* ------- Post tab active indicator ------- */
.post-tab .nav-tabs .nav-item .nav-link::after,
.post-tab .nav-tabs .nav-item .nav-link.active::before {
    background: var(--color-interactive);
}

.post-tab .nav-tabs .nav-item .nav-link.active::after {
    background: var(--color-interactive);
}

/* ------- Featured tab active ------- */
.featured-tab .nav-tabs .nav-link.active .tab-head > span.tab-text-title {
    color: var(--color-interactive);
}

.featured-tab .nav-tabs .nav-link.active:before {
    background: var(--color-interactive);
}

/* ------- Newsletter submit hover ------- */
.newsletter-area .newsletter-submit:hover {
    background: var(--color-interactive);
}

/* ------- Owl nav (carousel) ------- */
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-nav .owl-prev {
    background: var(--color-interactive);
}

.owl-carousel .owl-nav .owl-prev {
    background: var(--color-interactive);
}

/* ------- Trending bar ------- */
.trending-title .tsicon {
    color: var(--color-interactive);
}

/* ------- Detalhe: Veja Também ------- */
.related-post .block-title {
    margin-bottom: 30px;
}

@media (max-width: 575px) {
    .single-post .post-header-area h1.post-title.title-lg {
        font-size: 30px !important;
        line-height: 1.18;
        margin-bottom: 14px;
    }
}

/* ========================================
   NAVBAR MODERNA 2026 — jn-* system
   Substitui os estilos legados do main-nav
========================================= */

/* Override: altura e padding herdados do tema antigo */
.main-nav {
    height: 54px !important;
    min-height: 54px !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

/* Override: sticky sombra mais profunda */
.main-nav.sticky {
    box-shadow: 0 2px 24px rgba(0, 0, 0, 0.22) !important;
}

/* Sticky em todas as telas (o tema antigo limitava a >=992px) */
.is-ts-sticky.sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1030 !important;
}

/* Animação de entrada ao fazer sticky */
.main-nav.sticky.fade_down_effect {
    animation: jnSlideDown 0.28s ease both !important;
    animation-name: jnSlideDown !important;
}

@keyframes jnSlideDown {
    from { transform: translateY(-100%); opacity: 0; }
    to   { transform: translateY(0);    opacity: 1; }
}

/* ─── Inner layout ─────────────────────────────────── */
.jn-nav-inner {
    display: flex;
    align-items: center;
    height: 54px;
}

/* ─── Hamburger ─────────────────────────────────────── */
.jn-burger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 40px;
    height: 40px;
    padding: 0 11px;
    background: transparent;
    border: 1.5px solid rgba(255, 255, 255, 0.28);
    border-radius: 7px;
    cursor: pointer;
    flex-shrink: 0;
    transition: border-color 0.2s, background 0.2s;
}

.jn-burger span {
    display: block;
    width: 16px;
    height: 1.5px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 2px;
    transition: background 0.2s;
}

.jn-burger:hover {
    border-color: rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 991px) {
    .jn-burger { display: flex; }
}

/* ─── Desktop nav ───────────────────────────────────── */
.jn-desktop-nav {
    display: none;
    flex: 1;
    min-width: 0;
}

@media (min-width: 992px) {
    .jn-desktop-nav { display: block; }
}

.jn-nav-list {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    height: 54px;
    gap: 0;
}

.jn-nav-list > li {
    position: relative;
    height: 54px;
    display: flex;
    align-items: center;
}

/* Links do menu desktop */
.jn-nav-list > li > a {
    display: flex;
    align-items: center;
    gap: 5px;
    height: 54px;
    padding: 0 14px;
    color: rgba(255, 255, 255, 0.82);
    font-family: var(--font-ui);
    font-size: 13.5px;
    font-weight: 500;
    letter-spacing: 0.025em;
    text-decoration: none;
    position: relative;
    white-space: nowrap;
    transition: color 0.2s ease;
}

/* Underline animado no hover */
.jn-nav-list > li > a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 12px;
    right: 12px;
    height: 2px;
    background: var(--color-accent);
    border-radius: 1px 1px 0 0;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.22s ease;
}

.jn-nav-list > li > a:hover {
    color: #fff;
}

.jn-nav-list > li > a:hover::after,
.jn-nav-list > li.jn-active > a::after {
    transform: scaleX(1);
}

.jn-nav-list > li.jn-active > a {
    color: #fff;
    font-weight: 600;
}

/* Chevron do dropdown */
.jn-nav-list > li > a .fa-angle-down {
    font-size: 10px;
    opacity: 0.6;
    margin-left: 1px;
    transition: transform 0.22s ease;
}

.jn-has-dropdown:hover > a .fa-angle-down {
    transform: rotate(180deg);
}

/* ─── Dropdown desktop ──────────────────────────────── */
.jn-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: #fff;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 8px 28px rgba(0, 0, 0, 0.10), 0 2px 6px rgba(0, 0, 0, 0.06);
    list-style: none;
    padding: 6px 0;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;
    z-index: 200;
}

.jn-has-dropdown:hover .jn-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear;
}

.jn-dropdown li a {
    display: block;
    padding: 10px 20px;
    font-family: var(--font-ui);
    font-size: 13px;
    font-weight: 500;
    color: #374151;
    text-decoration: none;
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.15s, color 0.15s, padding-left 0.15s;
}

.jn-dropdown li:last-child a {
    border-bottom: none;
}

.jn-dropdown li a:hover {
    background: #f5f8ff;
    color: var(--color-primary);
    padding-left: 24px;
}

/* ─── Ações da direita ──────────────────────────────── */
.jn-nav-actions {
    display: flex;
    align-items: center;
    gap: 2px;
    margin-left: auto;
    flex-shrink: 0;
}

/* Ícones sociais */
.jn-social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 14px;
    border-radius: 6px;
    text-decoration: none;
    transition: color 0.2s, background 0.2s;
}

.jn-social-icon:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
}

/* Ícone de busca */
.jn-search-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    border-radius: 6px;
    text-decoration: none;
    cursor: pointer;
    margin-left: 4px;
    transition: color 0.2s, background 0.2s;
}

.jn-search-icon:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.12);
}

/* Social icons: ocultar em mobile */
@media (max-width: 991px) {
    .jn-social-icon { display: none; }
}

/* ─── Offcanvas mobile ──────────────────────────────── */
.jn-offcanvas-header {
    background: var(--gradient-primary) !important;
    padding: 16px 20px;
}

/* Sidebar menu (offcanvas) */
.sidebar-menu {
    list-style: none;
    padding: 8px 0;
    margin: 0;
}

.sidebar-menu > li {
    border-bottom: 1px solid #f3f4f6;
}

.sidebar-menu > li:last-child {
    border-bottom: none;
}

.sidebar-menu a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 20px;
    color: #1f2937;
    font-family: var(--font-ui);
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s, color 0.15s;
}

.sidebar-menu a i {
    width: 18px;
    text-align: center;
    color: var(--color-primary);
    font-size: 13px;
    flex-shrink: 0;
}

.sidebar-menu a:hover,
.sidebar-menu a:focus {
    background: #f5f8ff;
    color: var(--color-primary);
    outline: none;
}

/* Dropdown do sidebar */
.sidebar-dropdown > a {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
}

.sidebar-dropdown > a .fa-chevron-down {
    color: #9ca3af;
    font-size: 11px;
    flex-shrink: 0;
    width: auto !important;
    transition: transform 0.25s ease;
}

.sidebar-dropdown.active > a .fa-chevron-down {
    transform: rotate(180deg);
}

.sidebar-submenu {
    list-style: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    background: #f9fafb;
    padding: 0;
    margin: 0;
}

.sidebar-dropdown.active .sidebar-submenu {
    max-height: 1200px;
}

.sidebar-submenu li a {
    padding: 10px 20px 10px 50px;
    font-size: 13px;
    color: #4b5563;
    gap: 0;
    border-bottom: none;
}

.sidebar-submenu li a:hover {
    color: var(--color-primary);
    background: #f0f4ff;
}
