/* Fix: Forçar scroll horizontal do menu categorias no mobile */
@media (max-width: 768px) {
  .categories-slider-wrapper {
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    overscroll-behavior-x: contain !important;
  }
  .categories-slider-wrapper::-webkit-scrollbar {
    display: none !important;
  }
  .categories-slider-wrapper .navbar-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    min-width: 100vw !important;
    width: max-content !important;
    gap: 8px !important;
  }
  .categories-slider-wrapper .navbar-nav > .nav-item {
    flex-shrink: 0 !important;
  }
}
/* Global box-sizing to prevent overflow */
* {
  box-sizing: border-box;
}

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

body {
  overflow-x: hidden;
  width: 100%;
  position: relative;
}

/* Visually hidden elements - completely hide */
.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  display: none !important;
}

/* =============================================
   WEATHER WIDGET - Typography protection
   Theme colors are handled by .weather-theme-dark/light
   ============================================= */
.weather-forecast h1,
.weather-forecast h2,
.weather-forecast h3,
.weather-forecast h4,
.weather-forecast h5,
.weather-forecast h6,
.weather-forecast p,
.weather-widget h1,
.weather-widget h2,
.weather-widget h3,
.weather-widget h4,
.weather-widget h5,
.weather-widget h6,
.weather-widget p,
.wp-block-seideagosto-weather h1,
.wp-block-seideagosto-weather h2,
.wp-block-seideagosto-weather h3,
.wp-block-seideagosto-weather h4,
.wp-block-seideagosto-weather h5,
.wp-block-seideagosto-weather h6,
.wp-block-seideagosto-weather p {
  border: none !important;
  padding-left: 0 !important;
  margin-top: 0 !important;
}

.weather-forecast h1::before,
.weather-forecast h2::before,
.weather-forecast h3::before,
.weather-widget h1::before,
.weather-widget h2::before,
.weather-widget h3::before,
.wp-block-seideagosto-weather h1::before,
.wp-block-seideagosto-weather h2::before,
.wp-block-seideagosto-weather h3::before {
  display: none !important;
}

/* =============================================
   CONTENT TYPOGRAPHY - Single Post Only
   Using theme.json color variables
   Only applies to #single-wrapper (single posts)
   ============================================= */

/* Main content area styling - Single Post only */
#single-wrapper .site-main,
#single-wrapper .entry-content,
#single-wrapper .post-content,
#single-wrapper #primary {
  font-family: var(--wp--preset--font-family--open-sans), -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: var(--wp--preset--font-size--md);
  line-height: 1.75;
  color: var(--wp--preset--color--dark);
}

/* Headings - Single Post only */
#single-wrapper .site-main h1,
#single-wrapper .site-main h2,
#single-wrapper .site-main h3,
#single-wrapper .site-main h4,
#single-wrapper .site-main h5,
#single-wrapper .site-main h6,
#single-wrapper .entry-content h1,
#single-wrapper .entry-content h2,
#single-wrapper .entry-content h3,
#single-wrapper .entry-content h4,
#single-wrapper .entry-content h5,
#single-wrapper .entry-content h6,
#single-wrapper .wp-block-post-title,
#single-wrapper .entry-title {
  font-family: var(--wp--preset--font-family--lato), 'Helvetica Neue', Arial, sans-serif;
  font-weight: 700;
  line-height: 1.2;
  color: var(--wp--preset--color--dark);
  margin-top: 1.5rem;
  margin-bottom: 0.75rem;
  letter-spacing: -0.02em;
}

/* H1 - Main titles - Single Post only */
#single-wrapper .site-main h1,
#single-wrapper .entry-content h1,
#single-wrapper .wp-block-post-title,
#single-wrapper .entry-title {
  font-size: var(--wp--preset--font-size--title-lg);
  font-weight: 800;
  color: var(--wp--preset--color--primary);
  border-bottom: 3px solid var(--wp--preset--color--accent);
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
}

/* H2 - Section titles - Single Post only */
#single-wrapper .site-main h2,
#single-wrapper .entry-content h2 {
  font-size: var(--wp--preset--font-size--xl);
  font-weight: 700;
  color: var(--wp--preset--color--dark);
  position: relative;
  padding-left: 1rem;
}

#single-wrapper .site-main h2::before,
#single-wrapper .entry-content h2::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.15em;
  height: 1em;
  width: 4px;
  background: linear-gradient(180deg, var(--wp--preset--color--accent) 0%, var(--wp--preset--color--primary) 100%);
  border-radius: 2px;
}

/* H3 - Subsection titles - Single Post only */
#single-wrapper .site-main h3,
#single-wrapper .entry-content h3 {
  font-size: var(--wp--preset--font-size--lg);
  font-weight: 600;
  color: var(--wp--preset--color--dark);
}

/* H4, H5, H6 - Single Post only */
#single-wrapper .site-main h4,
#single-wrapper .entry-content h4 {
  font-size: 1.2rem;
  font-weight: 600;
  color: var(--wp--preset--color--dark);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

#single-wrapper .site-main h5,
#single-wrapper .entry-content h5 {
  font-size: var(--wp--preset--font-size--md);
  font-weight: 600;
  color: var(--wp--preset--color--secondary);
}

#single-wrapper .site-main h6,
#single-wrapper .entry-content h6 {
  font-size: var(--wp--preset--font-size--sm);
  font-weight: 600;
  color: var(--wp--preset--color--secondary);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

/* Paragraphs - Single Post only */
#single-wrapper .site-main p,
#single-wrapper .entry-content p {
  margin-bottom: 1.25rem;
  color: var(--wp--preset--color--dark);
}

/* Lead paragraph - Single Post only */
#single-wrapper .entry-content > p:first-of-type {
  font-size: var(--wp--preset--font-size--lg);
  color: var(--wp--preset--color--dark);
  line-height: 1.8;
}

/* Links in content - Single Post only */
#single-wrapper .site-main a,
#single-wrapper .entry-content a {
  color: var(--wp--preset--color--primary);
  transition: color 0.2s ease;
}

#single-wrapper .site-main a:hover,
#single-wrapper .entry-content a:hover {
  color: var(--wp--preset--color--accent);
}

/* Blockquotes - Single Post only */
#single-wrapper .site-main blockquote,
#single-wrapper .entry-content blockquote,
#single-wrapper .wp-block-quote {
  border-left: 4px solid var(--wp--preset--color--accent);
  background: linear-gradient(90deg, rgba(236, 148, 13, 0.05) 0%, transparent 100%);
  padding: 1.25rem 1.5rem;
  margin: 1.5rem 0;
  font-style: italic;
  font-size: var(--wp--preset--font-size--lg);
  color: var(--wp--preset--color--dark);
}

#single-wrapper .wp-block-quote cite,
#single-wrapper blockquote cite {
  display: block;
  margin-top: 0.75rem;
  font-size: var(--wp--preset--font-size--sm);
  font-style: normal;
  color: var(--wp--preset--color--secondary);
  font-weight: 600;
}

/* Lists - Single Post only */
#single-wrapper .site-main ul,
#single-wrapper .site-main ol,
#single-wrapper .entry-content ul,
#single-wrapper .entry-content ol {
  margin-bottom: 1.25rem;
  padding-left: 1.5rem;
}

#single-wrapper .site-main li,
#single-wrapper .entry-content li {
  margin-bottom: 0.5rem;
  line-height: 1.6;
}

#single-wrapper .site-main ul li::marker {
  color: var(--wp--preset--color--accent);
}

#single-wrapper .site-main ol li::marker {
  color: var(--wp--preset--color--primary);
  font-weight: 600;
}

/* Code blocks - Single Post only */
#single-wrapper .site-main code,
#single-wrapper .entry-content code {
  background: var(--wp--preset--color--light);
  padding: 0.2em 0.4em;
  border-radius: 3px;
  font-family: 'Consolas', 'Monaco', monospace;
  font-size: 0.9em;
  color: var(--wp--preset--color--danger);
}

#single-wrapper .site-main pre,
#single-wrapper .entry-content pre,
#single-wrapper .wp-block-code {
  background: var(--wp--preset--color--dark);
  color: var(--wp--preset--color--light);
  padding: 1.25rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 1.5rem 0;
}

#single-wrapper .site-main pre code,
#single-wrapper .entry-content pre code {
  background: transparent;
  color: inherit;
  padding: 0;
}

/* Tables - Single Post only */
#single-wrapper .site-main table,
#single-wrapper .entry-content table,
#single-wrapper .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
}

#single-wrapper .site-main th,
#single-wrapper .entry-content th {
  background: var(--wp--preset--color--primary);
  color: #fff;
  padding: 0.75rem 1rem;
  text-align: left;
  font-weight: 600;
}

#single-wrapper .site-main td,
#single-wrapper .entry-content td {
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #e0e0e0;
}

#single-wrapper .site-main tr:nth-child(even),
#single-wrapper .entry-content tr:nth-child(even) {
  background: var(--wp--preset--color--light);
}

/* Images and captions - Single Post only */
#single-wrapper .site-main figure,
#single-wrapper .entry-content figure {
  margin: 1.5rem 0;
}

#single-wrapper .site-main figcaption,
#single-wrapper .entry-content figcaption {
  font-size: var(--wp--preset--font-size--sm);
  color: var(--wp--preset--color--secondary);
  font-style: italic;
  text-align: center;
  margin-top: 0.5rem;
}

/* Post meta styling - Single Post only */
#single-wrapper .wp-block-post-date,
#single-wrapper .wp-block-post-author-name,
#single-wrapper .entry-meta {
  font-size: var(--wp--preset--font-size--sm);
  color: var(--wp--preset--color--secondary);
}

/* Responsive typography - Single Post only */
@media (max-width: 768px) {
  #single-wrapper .site-main h1,
  #single-wrapper .entry-content h1,
  #single-wrapper .wp-block-post-title,
  #single-wrapper .entry-title {
    font-size: 1.75rem;
  }
  
  #single-wrapper .site-main h2,
  #single-wrapper .entry-content h2 {
    font-size: 1.4rem;
  }
  
  #single-wrapper .site-main h3,
  #single-wrapper .entry-content h3 {
    font-size: 1.2rem;
  }
}

/* Global link styling - remove underline from all links */
a,
a:link,
a:visited,
a:hover,
a:active,
a:focus {
  text-decoration: none !important;
}

/* Header navigation links - remove underline */
#wrapper-navbar a,
#wrapper-navbar .nav-link,
#categoriesNav a,
#categoriesNav .nav-link,
.navbar a,
.navbar .nav-link {
  text-decoration: none !important;
}
#wrapper-navbar a:hover,
#wrapper-navbar .nav-link:hover,
#categoriesNav a:hover,
#categoriesNav .nav-link:hover,
.navbar a:hover,
.navbar .nav-link:hover {
  text-decoration: none !important;
}

/* Destaque Misto: larger big image on all screens */
.imagem-destaque-misto {
  height: 360px !important;
}

/* Minimalist hr styling */
hr,
.wp-block-separator {
  border: none;
  border-top: 1px solid #e0e0e0;
  margin: 1rem 0;
  height: 0;
}

/* Destaque Misto: list layout across all screens */
.destaque-misto-wrapper .list-item {
  display: flex;
  align-items: flex-start;
  gap: 6px;
}
.destaque-misto-wrapper .list-thumb {
  flex: 0 0 25%;
  max-width: 25%;
  aspect-ratio: 3 / 5;
  overflow: hidden;
  border-radius: 4px;
}
.destaque-misto-wrapper .list-thumb img,
.destaque-misto-wrapper .list-thumb .img-fluid {
  width: 100% !important;
  height: 100% !important;
  display: block;
  object-fit: cover !important;
  margin-bottom: 0 !important;
  border-radius: 4px;
}
.destaque-misto-wrapper .list-content {
  flex: 0 0 75%;
  max-width: 75%;
}
.destaque-misto-wrapper .list-content a {
  text-decoration: none;
}
.destaque-misto-wrapper .list-content a:hover {
  text-decoration: none;
}
.destaque-misto-wrapper .list-item:not(:has(.list-thumb)) .list-content {
  flex: 1 1 100%;
  max-width: 100%;
}
img.wp-post-image,
article img,
figure,
#secondary img {
  margin-bottom: 10px; }

.wp-caption-text {
  margin-bottom: 10px; }

figcaption {
  caption-side: top; }

.widget-area aside {
  padding-bottom: 10px;
  padding-top: 10px; }

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
  max-width: 100%;
  height: auto; }

#page {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Prevent long text from causing horizontal scroll */
h1, h2, h3, h4, h5, h6,
p {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

@media (max-width: 768px) {
  h1, h2, h3, h4, h5, h6,
  p {
    word-break: break-word;
    hyphens: auto;
  }
}

.wp-block-image figcaption {
  margin-top: .5em;
  margin-bottom: 1em;
  color: #BACBD9 !important;
  text-align: center; }

.wp-block-image .alignleft {
  margin-right: 0 !important; }

@media (min-width: 912px) {
  .jumbotron {
    padding: 8rem 2rem; } }

.woocommerce div.product form.cart div.quantity {
  float: none;
  display: inline-block;
  vertical-align: middle; }

.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
  width: 110px; }

.woocommerce-MyAccount-navigation {
  margin-bottom: 50px;
  margin-top: 20px; }

#wrapper-navbar img {
  width: 202px;
  height: auto; }

.img-d {
  height: 120px;
  margin: 0px; }

.spaces {
  margin-bottom: var(--u68-card-spacing, 8px);
  margin-left: 0;
  margin-right: 0; }

/* Prevent Bootstrap rows from causing horizontal overflow */
.row {
  margin-left: 0;
  margin-right: 0;
}

@media (max-width: 768px) {
  .row > [class*="col-"] {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* Centered site content and fixed container width */
.container {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

@media (max-width: 768px) {
  .container {
    padding-left: 10px;
    padding-right: 10px;
  }
}

/* Center core wrappers if used without .container */
#content,
#page,
.hfeed {
  width: 100%;
}

.logo-D {
  margin-top: 15px;
  height: auto; }

.card-title p {
  -webkit-margin-before: 2px;
          margin-block-start: 2px;
  -webkit-margin-after: 5px;
          margin-block-end: 5px; }

ol .listanumero {
  list-style: none;
  counter-reset: steps; }

ol li {
  counter-increment: steps; }

ol li::before {
  content: counter(steps);
  margin-right: 0.5rem;
  background: var(--u68-primary-color, #0a4579);
  color: white;
  width: 1.15em;
  height: 1.15em;
  border-radius: 50%;
  display: inline-grid;
  place-items: center;
  line-height: 1em;
  font-size: 2em;
  font-weight: 900;
  float: left; }

#sidebar li a {
  color: #ecf0f1;
  font-weight: 700; }

.tituloD {
  bottom: 15px;
  position: absolute;
  display: block; }

.TituloGrande {
  font-size: var(--u68-title-large-size, 35px);
  font-weight: var(--u68-title-weight, 600);
  line-height: 30px; }

.TituloGrande a {
  text-decoration: none;
}

.destaque-misto-wrapper .TituloGrande {
  font-size: 1.4rem;
  line-height: 1.2rem;
}

.destaque-misto-wrapper .TituloGrande a {
  text-decoration: none;
  color: inherit;
}

.destaque-misto-wrapper .TituloGrande a:hover {
  text-decoration: none;
}

.destaquebg {
  background: var(--u68-highlight-bg, #efefef);
  margin: 0px; }

.TituloGrande2 {
  font-size: var(--u68-title-medium-size, 19px);
  line-height: 20px;
  font-weight: 700; }

.banner img {
  width: 100%;
  max-width: 100%;
  -o-object-fit: fill;
     object-fit: fill; }

.text-shadow {
  text-shadow: 3px 2px 3px #000; }

.imagem-destaque {
  height: var(--u68-featured-height, 425px);
  width: 100%;
  display: block;
  -o-object-fit: cover;
     object-fit: cover; }

.imagem-destaque-pequeno {
  height: 100%; }

.destaques-home-side-column > div {
  display: flex;
  flex-direction: column;
  height: var(--u68-featured-height, 425px);
  gap: var(--u68-card-spacing, 8px);
}

.destaques-home-side-column .destaque-home-card-pequeno {
  height: var(--u68-featured-small-height, calc((var(--u68-featured-height, 425px) - var(--u68-card-spacing, 8px)) / 2));
  flex: 0 0 var(--u68-featured-small-height, calc((var(--u68-featured-height, 425px) - var(--u68-card-spacing, 8px)) / 2));
  margin-bottom: 0;
  overflow: hidden;
}

.destaques-home-side-column .destaque-home-card-pequeno:last-child {
  margin-bottom: 0;
}

/* Destaque home mobile - larger images */
@media (max-width: 768px) {
  .imagem-destaque {
    height: 450px !important;
  }

  .imagem-destaque-pequeno {
    height: 260px !important;
  }
  
  .destaques-home-wrapper .imagem-destaque,
  .destaques-home-mobile-slider .imagem-destaque {
    height: 450px !important;
  }
}

.bg-primary {
  background-color: var(--u68-primary-color, #0a4579) !important; }

.bg-orange {
  background-color: var(--u68-badge-color, #ec940d) !important; }

.gradiente {
  background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.9)), color-stop(30%, rgba(0, 0, 0, 0.6)), to(rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  border-bottom: 12px var(--u68-badge-color, #ec940d) solid; }

.destaque-misto-wrapper .gradiente {
  background: -webkit-linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.9)), color-stop(30%, rgba(0, 0, 0, 0.6)), to(rgba(0, 0, 0, 0)));
  background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0.6) 30%, rgba(0, 0, 0, 0));
  border-bottom: 12px var(--u68-badge-color, #ec940d) solid; }

/* Modern Header Enhancements */
.site-header {
  backdrop-filter: saturate(160%) blur(6px);
  position: sticky;
  top: 0;
  z-index: 1030;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.theme-header-shell {
  background: var(--u68-header-bg, var(--u68-primary-color, #0a4579));
  color: var(--u68-header-text, #fff);
  border-bottom: 1px solid var(--u68-header-border, rgba(255, 255, 255, 0.14));
}

.theme-topbar {
  background: var(--u68-header-bg, var(--u68-primary-color, #0a4579)) !important;
  color: var(--u68-header-text, #fff);
  padding-inline: var(--u68-shell-padding-x, 1rem);
}

.theme-topbar .navbar-brand,
.theme-topbar .nav-link,
.theme-topbar .navbar-toggler,
.theme-topbar .navbar-search .form-control,
.theme-topbar .navbar-search .btn,
.theme-topbar .search-field,
.theme-topbar .search-submit {
  color: var(--u68-header-text, #fff);
}

.theme-topbar .nav-link,
.theme-categories-bar .nav-link,
.theme-sidebar-header a,
#sidebar ul li a {
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.theme-categories-bar {
  background: color-mix(in srgb, var(--u68-header-bg, #0a4579) 92%, black 8%) !important;
  border-top-color: var(--u68-header-border, rgba(255, 255, 255, 0.14)) !important;
  border-bottom: 1px solid var(--u68-header-border, rgba(255, 255, 255, 0.14));
}

.theme-sidebar-header,
#sidebar {
  background: var(--u68-header-bg, var(--u68-primary-color, #0a4579));
  color: var(--u68-header-text, #fff);
}

.theme-sidebar-header {
  border-bottom: 1px solid var(--u68-header-border, rgba(255, 255, 255, 0.14));
}

.theme-footer-shell,
.theme-footer {
  background: var(--u68-footer-bg, var(--u68-badge-color, #ec940d)) !important;
  color: var(--u68-footer-text, #fff);
}

.theme-footer-shell {
  border-top: 1px solid var(--u68-footer-border, rgba(255, 255, 255, 0.14));
}

.theme-footer-info {
  padding: var(--u68-shell-padding-y, 0.75rem) var(--u68-shell-padding-x, 1rem);
}

.theme-footer-copy {
  margin-bottom: 0;
  color: var(--u68-footer-text, #fff);
}

.theme-footer a,
.theme-footer-copy a {
  color: var(--u68-footer-text, #fff);
  text-decoration-color: var(--u68-footer-accent, var(--u68-badge-color, #ec940d));
}

/* Inline navbar search with transitions */
.navbar-search .form-control {
  min-width: 220px;
  transition: 
    min-width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    font-size 0.4s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
  border: 1px solid rgba(255, 255, 255, 0.3);
}

@media (max-width: 768px) {
  .navbar-search .form-control { 
    min-width: 120px;
    font-size: 0.9rem;
  }
}
.navbar-search .form-control:focus {
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.3), inset 0 0 5px rgba(0, 0, 0, 0.1);
  outline: none;
  border-color: rgba(255, 255, 255, 0.6);
  transform: scale(1.02);
}

.navbar-search .form-control:hover {
  border-color: rgba(255, 255, 255, 0.5);
}
.navbar-search .btn {
  border: none;
  transition: 
    transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
    background-color 0.3s ease,
    box-shadow 0.3s ease;
  position: relative;
}

.navbar-search .btn:hover {
  transform: scale(1.1) translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}

.navbar-search .btn:active {
  transform: scale(0.95) translateY(0);
}

/* Mobile search toggle button */
.btn-search-toggle {
  background: none !important;
  border: none !important;
  padding: 0.5rem 0.75rem !important;
  font-size: 1.2rem;
  color: #fff !important;
  transition: 
    transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
    color 0.3s ease;
  cursor: pointer;
  display: block !important;
}

.btn-search-toggle:hover {
  transform: scale(1.15);
  color: rgba(255, 255, 255, 0.8) !important;
}

.btn-search-toggle.active {
  color: var(--u68-badge-color, #ec940d) !important;
}

/* Ensure button shows on mobile */
@media (max-width: 991px) {
  .btn-search-toggle {
    display: block !important;
  }
  
  .d-lg-none {
    display: block !important;
  }
}

/* Hide button on desktop */
@media (min-width: 992px) {
  .btn-search-toggle {
    display: none !important;
  }
}

/* Mobile expandable search wrapper */
.mobile-search-expanded {
  display: none !important;
  background-color: var(--u68-primary-color, #0a4579);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  max-height: 0;
  overflow: hidden;
  transition: 
    max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    padding 0.4s ease;
  position: static;
  z-index: 1039;
}

.mobile-search-expanded.active {
  display: block !important;
  max-height: 100px;
  padding: 0.75rem 0 !important;
  animation: searchExpand 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes searchExpand {
  from {
    max-height: 0;
    padding: 0;
    opacity: 0;
  }
  to {
    max-height: 100px;
    padding: 0.75rem 0;
    opacity: 1;
  }
}

/* Ensure mobile search wrapper is shown only on mobile */
@media (max-width: 991px) {
  .mobile-search-expanded {
    display: none !important;
    z-index: 1039;
    position: static;
  }
  
  .mobile-search-expanded.active {
    display: block !important;
    z-index: 1039;
  }
}

@media (min-width: 992px) {
  .mobile-search-expanded {
    display: none !important;
  }
}

.mobile-search-expanded .navbar-search {
  display: flex !important;
  gap: 0.3rem;
  margin: 0;
}

.mobile-search-expanded .navbar-search .form-control {
  flex: 1;
  min-width: 0 !important;
  font-size: 0.9rem;
  padding: 0.5rem 0.75rem;
  height: auto;
  border-radius: 4px;
}

.mobile-search-expanded .navbar-search .btn {
  flex-shrink: 0;
  padding: 0.5rem 1rem;
  font-size: 0.9rem;
}

/* Header layout adjustments - logo and search on same line */
#headnev {
  padding: 0.5rem 0 !important;
  position: relative;
}

#headnev .navbar-brand {
  margin: 0 !important;
  padding: 0 !important;
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

/* Site header - sticky positioning with smooth transitions */
.site-header {
  position: sticky;
  top: 0;
  z-index: 1040;
  transition: 
    position 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    top 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1),
    background-color 0.4s ease;
  background-color: var(--u68-primary-color, #0a4579);
}

/* When header is fixed - make it truly fixed with enhanced effects */
.site-header.fixed-header {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  top: 0 !important;
  z-index: 1040 !important;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.25);
  animation: headerSlideDown 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Adjust for WordPress admin bar */


body.admin-bar .site-header.fixed-header {
  top: 32px !important;
}

@media (max-width: 782px) {
  body.admin-bar .site-header {
    top: 46px;
  }
  
  body.admin-bar .site-header.fixed-header {
    top: 46px !important;
  }
}

/* Remove WordPress default admin bar margin */

body.admin-bar {
  margin-top: 0 !important;
}

/* Animation for header sliding down */
@keyframes headerSlideDown {
  from {
    transform: translateY(-10px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Content adjustment - always has base padding */
#content {
  padding-top: 0;
  transition: padding-top 0.4s ease;
}

#content.header-fixed {
  padding-top: 20px;
}

/* Categories navbar - show at top, hide on scroll with smooth animation */
.navbar-categorias {
  background-color: var(--u68-primary-color, #0a4579);
  border-top: 1px solid rgba(255,255,255,.1);
  max-height: 50px;
  overflow: visible; /* Changed from hidden to allow dropdown */
  transition: 
    max-height 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    opacity 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.5s cubic-bezier(0.4, 0, 0.2, 1),
    border 0.5s ease;
  opacity: 1;
  transform: translateY(0);
  animation: categoriesSlideIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Animation for categories sliding in */
@keyframes categoriesSlideIn {
  from {
    transform: translateY(-20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.navbar-categorias.hidden {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  border: none;
  transform: translateY(-20px) scaleY(0.8);
}

.navbar-categorias .navbar-nav .nav-link {
  color: #fff !important;
  padding: .5rem .75rem;
  white-space: nowrap;
  font-size: 0.9rem;
  transition: 
    color 0.3s ease,
    transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
    text-shadow 0.3s ease;
}

.navbar-categorias .navbar-nav .nav-link:hover {
  text-decoration: underline;
  transform: translateY(-2px);
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* =============================================
   CATEGORIES DROPDOWN MENU
   ============================================= */

/* Dropdown toggle */
.navbar-categorias .nav-item.dropdown > .nav-link {
  display: flex;
  align-items: center;
  gap: 4px;
}

.navbar-categorias .nav-item.dropdown > .nav-link::after {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 4px;
  border-top: 5px solid currentColor;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  transition: transform 0.3s ease;
}

.navbar-categorias .nav-item.dropdown:hover > .nav-link::after,
.navbar-categorias .nav-item.dropdown.show > .nav-link::after {
  transform: rotate(180deg);
}

/* Dropdown menu styling */
.navbar-categorias .dropdown-menu {
  background-color: var(--wp--preset--color--primary, #0a4579);
  border: none;
  border-radius: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  padding: 8px 0;
  min-width: 200px;
  margin-top: 8px;
  animation: dropdownFadeIn 0.25s ease-out;
  z-index: 1050;
}

@keyframes dropdownFadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Dropdown items */
.navbar-categorias .dropdown-menu .dropdown-item {
  color: #fff;
  padding: 10px 20px;
  font-size: 0.9rem;
  font-weight: 500;
  transition: all 0.2s ease;
  border-left: 3px solid transparent;
}

.navbar-categorias .dropdown-menu .dropdown-item:hover,
.navbar-categorias .dropdown-menu .dropdown-item:focus {
  background-color: rgba(255, 255, 255, 0.15);
  color: #fff;
  border-left-color: var(--wp--preset--color--accent, #ec940d);
  padding-left: 24px;
}

.navbar-categorias .dropdown-menu .dropdown-item.active,
.navbar-categorias .dropdown-menu .dropdown-item:active {
  background-color: rgba(255, 255, 255, 0.2);
  color: #fff;
  border-left-color: var(--wp--preset--color--accent, #ec940d);
}

/* Dropdown divider */
.navbar-categorias .dropdown-menu .dropdown-divider {
  border-top-color: rgba(0, 0, 0, 0.08);
  margin: 4px 0;
}

/* Show dropdown on hover (desktop) */
@media (min-width: 992px) {
  .navbar-categorias .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
  }
  
  .navbar-categorias .nav-item.dropdown > .dropdown-menu {
    margin-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
}

/* Mobile dropdown adjustments */
@media (max-width: 991px) {
  .navbar-categorias .dropdown-menu {
    position: static !important;
    float: none;
    width: 100%;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
    background-color: rgba(0, 0, 0, 0.1);
    animation: none;
  }
  
  .navbar-categorias .dropdown-menu .dropdown-item {
    color: #fff;
    padding: 8px 24px;
    font-size: 0.85rem;
  }
  
  .navbar-categorias .dropdown-menu .dropdown-item:hover,
  .navbar-categorias .dropdown-menu .dropdown-item:focus {
    background-color: rgba(255, 255, 255, 0.1);
    color: #fff;
    border-left-color: var(--wp--preset--color--accent, #ec940d);
  }
}

/* =============================================
   CATEGORIES SLIDER - MOBILE (Native Scroll)
   ============================================= */
.categories-slider-wrapper {
  width: 100%;
}

/* Mobile: horizontal scroll */
@media (max-width: 767px) {
  #categoriesNav .container {
    padding-left: 0;
    padding-right: 0;
  }
  
  .categories-slider-wrapper {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 0 12px;
  }
  
  .categories-slider-wrapper::-webkit-scrollbar {
    display: none;
  }
  
  .categories-slider-wrapper .navbar-nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    width: max-content;
    min-width: 100%;
    padding-right: 20px;
  }
  
  .categories-slider-wrapper .navbar-nav > .nav-item {
    flex-shrink: 0;
  }
  
  .categories-slider-wrapper .navbar-nav .nav-link {
    white-space: nowrap;
    padding: 0.4rem 0.75rem;
    font-size: 0.85rem;
  }
}

/* Desktop: normal layout */
@media (min-width: 768px) {
  .categories-slider-wrapper .navbar-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }
}

/* =============================================
   MOBILE SEARCH TOGGLE
   ============================================= */
#searchToggleMobile {
  display: none;
}

@media (max-width: 991.98px) {
  #searchToggleMobile {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: none;
    background: transparent;
    color: #fff;
    cursor: pointer;
  }
  
  #searchToggleMobile:focus {
    outline: 2px solid rgba(255,255,255,0.5);
    outline-offset: 2px;
  }
  
  #searchToggleMobile .fa {
    font-size: 1.2rem;
  }
  
  #mobileSearchWrapper {
    display: none !important;
  }
  
  #mobileSearchWrapper.active {
    display: block !important;
  }
  
  #mobileSearchWrapper .navbar-search {
    display: flex !important;
    width: 100%;
  }
  
  #mobileSearchWrapper .navbar-search input[type="search"] {
    flex: 1;
  }
}

/* Header compression on scroll - scrolled state with smooth effects */
.site-header.scrolled #headnev {
  padding: 0.35rem 0 !important;
  animation: headerCompress 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes headerCompress {
  from {
    padding: 0.5rem 0;
  }
  to {
    padding: 0.35rem 0;
  }
}

.site-header.scrolled #headnev .navbar-brand {
  padding: 0.25rem 0;
  font-size: 0.9rem;
  transition: 
    padding 0.4s ease,
    font-size 0.4s ease,
    transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transform: scale(0.95);
}

.site-header.scrolled #headnev .navbar-search .form-control {
  font-size: 0.85rem;
  min-width: 180px;
}

/* Mobile: categories navbar styling */
@media (max-width: 768px) {
  .navbar-categorias {
    max-height: 40px;
  }
  
  .navbar-categorias .navbar-nav .nav-link {
    padding: .4rem 0.5rem;
    font-size: 0.8rem;
  }
  
  .site-header.scrolled #headnev .navbar-search .form-control {
    min-width: 100px;
  }
  
  #content.header-fixed {
    padding-top: 15px;
  }
  
  /* Improved mobile layout */
  #headnev {
    padding: 0.45rem 0 !important;
  }
  
  #headnev .container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    max-width: 100%;
  }
  
  #headnev .d-flex {
    gap: 0;
    align-items: center;
  }
  
  /* Logo on the left */
  #headnev .navbar-brand {
    position: relative !important;
    transform: none !important;
    -webkit-transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
    flex-shrink: 0;
    display: flex !important;
    align-items: center;
    order: -1;
  }
  
  #headnev .navbar-brand img {
    max-height: 40px;
    width: auto;
  }
  
  /* Search button on the right */
  .btn-search-toggle {
    margin-left: auto !important;
    margin-right: 0;
  }
  
  .site-header.scrolled #headnev {
    padding: 0.3rem 0 !important;
  }
  
  .site-header.scrolled #headnev .navbar-brand {
    max-width: 65px;
  }
}

/* Small mobile (380px - 480px) - improved proportions */
@media (min-width: 381px) and (max-width: 480px) {
  #headnev {
    padding: 0.4rem 0 !important;
  }
  
  #headnev .container {
    padding-left: 0.45rem;
    padding-right: 0.45rem;
  }
  
  #headnev .navbar-brand {
    max-width: 65px !important;
  }
  
  #headnev .navbar-brand img {
    max-height: 38px;
  }
  
  .btn-search-toggle {
    padding: 0.5rem 0.5rem !important;
  }
}

/* Extra small mobile devices (320px) - ultra compact layout */
@media (max-width: 380px) {
  #headnev {
    padding: 0.35rem 0 !important;
  }
  
  #headnev .container {
    padding-left: 0.4rem;
    padding-right: 0.4rem;
    max-width: 100%;
  }
  
  #headnev .d-flex {
    gap: 0;
    align-items: center;
  }
  
  #headnev .navbar-brand {
    position: relative !important;
    transform: none !important;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0.8rem;
    flex-shrink: 0;
    max-width: 55px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
  }
  
  #headnev .navbar-brand img {
    max-height: 32px;
    width: auto;
  }
  
  .btn-search-toggle {
    margin-left: auto !important;
    padding: 0.35rem 0.5rem !important;
  }
  
  .site-header.scrolled #headnev {
    padding: 0.25rem 0 !important;
  }
  
  .site-header.scrolled #headnev .navbar-brand {
    max-width: 50px;
  }
}


/* Mobile header - keep logo and search inline */
@media (max-width: 768px) {
  #headnev .container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  
  #headnev .navbar-brand {
    font-size: 1rem;
    margin-right: 0.5rem;
  }
  
  #headnev .ml-auto {
    margin-left: auto !important;
  }
  
  #headnev .navbar-search .form-control {
    min-width: 100px;
  }
}

.title-d2 {
  margin-bottom: 0;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.1em;
  padding: 0px 5px 0px 5px;
  margin: 0px 5px 0px 0px;
  font-family: 'Opens Sans', sans-serif; }

.menu-d {
  margin-top: 15px; }

.menu-row {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.text-post {
  font-size: 1.2em; }

.title-post {
  font-weight: 600;
  font-size: var(--u68-post-title-size, 2.5rem);
  line-height: 1em; }

.primeiromenu {
  height: 30px; }

.icones {
  margin-left: 10px;
  margin-top: 5px; }

@media (max-width: 575px) {
  .title-post {
    font-size: 1.25rem;
    line-height: 1em; }
  .TituloGrande {
    font-size: var(--u68-title-medium-size, 19px);
    line-height: 20px;
    font-weight: 700; } }

/* calendar widget */
.widget_calendar {
  float: left; }

#wp-calendar {
  width: 100%; }

#wp-calendar caption {
  text-align: right;
  color: #333;
  font-size: 12px;
  margin-top: 10px;
  margin-bottom: 15px; }

#wp-calendar thead {
  font-size: 10px;
  text-align: center; }

#wp-calendar thead th {
  padding-bottom: 10px; }

#wp-calendar tbody {
  color: #aaa; }

#wp-calendar tbody td {
  background: #f5f5f5;
  border: 1px solid #fff;
  text-align: center;
  padding: 8px; }

#wp-calendar tbody td:hover {
  background: #fff; }

#wp-calendar tbody .pad {
  background: none; }

#wp-calendar tfoot #next {
  font-size: 10px;
  text-transform: uppercase;
  text-align: right; }

#wp-calendar tfoot #prev {
  font-size: 10px;
  text-transform: uppercase;
  padding-top: 10px; }

.our-team {
  padding: 30px 0 40px;
  margin-bottom: 30px;
  background-color: var(--u68-team-bg, #f6f6f6);
  text-align: center;
  overflow: hidden;
  position: relative; }

.our-team .picture {
  display: inline-block;
  height: 130px;
  width: 130px;
  margin-bottom: 50px;
  z-index: 1;
  position: relative; }

.our-team .picture::before {
  content: "";
  width: 100%;
  height: 0;
  border-radius: 50%;
  background-color: var(--u68-primary-color, #0a4579);
  position: absolute;
  bottom: 135%;
  right: 0;
  left: 0;
  opacity: 0.9;
  -webkit-transform: scale(3);
      -ms-transform: scale(3);
          transform: scale(3);
  -webkit-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s; }

.our-team:hover .picture::before {
  height: 100%; }

.our-team .picture::after {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: var(--u68-primary-color, #0a4579);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1; }

.our-team .picture img {
  width: 100%;
  height: auto;
  border-radius: 50%;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all 0.9s ease 0s;
  -o-transition: all 0.9s ease 0s;
  transition: all 0.9s ease 0s; }

.our-team:hover .picture img {
  -webkit-box-shadow: 0 0 0 14px #f7f5ec;
          box-shadow: 0 0 0 14px #f7f5ec;
  -webkit-transform: scale(0.7);
      -ms-transform: scale(0.7);
          transform: scale(0.7); }

.our-team .title {
  display: block;
  font-size: 15px;
  color: #4e5052;
  text-transform: capitalize; }

.our-team .social {
  width: 100%;
  padding: 0;
  margin: 0;
  background-color: #0a4579;
  position: absolute;
  bottom: -100px;
  left: 0;
  -webkit-transition: all 0.5s ease 0s;
  -o-transition: all 0.5s ease 0s;
  transition: all 0.5s ease 0s; }

.our-team:hover .social {
  bottom: 0; }

.our-team .social li {
  display: inline-block; }

.our-team .social li a {
  display: block;
  padding: 10px;
  font-size: 17px;
  color: #fa8700;
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  text-decoration: none; }

.title-colunistas {
  font-size: 12px;
  line-height: 13px; }

/* Colunistas: refined card with typography lift and soft glow */
.colunista-card {
  background: transparent !important;
  border: 0;
  padding: 12px 10px;
  border-radius: 14px;
  height: 380px;
  transition: transform .28s ease, box-shadow .32s ease, background .35s ease;
  display: flex;
  flex-direction: column;
}

.colunista-card .team-content {
  background: transparent !important;
  text-align: center;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  order: 3;
}

.colunista-card .picture {
  position: relative;
  display: inline-block;
  margin-bottom: 8px;
  margin-top: -6px;
  order: 2;
  align-self: center;
  z-index: 1;
}

.colunista-card .picture::before,
.colunista-card .picture::after {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: 999px;
  pointer-events: none;
  transition: opacity .35s ease, transform .35s ease, filter .35s ease;
}

.colunista-card .picture::before {
  background: radial-gradient(circle at 30% 30%, rgba(250, 135, 0, 0.18), rgba(10, 69, 121, 0.1));
  opacity: 0;
  transform: scale(0.9);
  filter: blur(10px);
}

.colunista-card .picture::after {
  background: transparent !important;
}

.colunista-card .picture img {
  transition: transform .28s ease, box-shadow .28s ease, filter .28s ease;
  box-shadow: 0 10px 35px rgba(10, 69, 121, 0.08);
}

.colunista-card-link:hover .picture::before,
.colunista-card.touch-active .picture::before {
  opacity: 1;
  transform: scale(1);
  filter: blur(16px);
}

.colunista-card-link:hover .picture img,
.colunista-card.touch-active .picture img {
  transform: translateY(-4px) scale(0.97);
  box-shadow: 0 12px 40px rgba(10, 69, 121, 0.22);
  filter: saturate(1.05);
}

.colunista-card-link:hover .colunista-card,
.colunista-card.touch-active {
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 18px 45px rgba(10, 69, 121, 0.15);
  background: linear-gradient(
    140deg,
    color-mix(in srgb, var(--u68-primary-color, #0a4579) 14%, transparent),
    color-mix(in srgb, var(--u68-badge-color, #ec940d) 12%, transparent)
  );
}

.colunista-card .name {
  position: relative;
  display: inline-block;
  font-weight: 900;
  letter-spacing: 0.3px;
  font-size: 1.45rem;
  margin-bottom: 8px;
  line-height: 1.25;
}

.colunista-card .name::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  height: 2px;
  width: 28%;
  background: linear-gradient(90deg, var(--u68-primary-color, #0a4579), var(--u68-badge-color, #ec940d));
  opacity: 0;
  transform-origin: left;
  transition: width .3s ease, opacity .3s ease;
}

.colunista-card-link:hover .name,
.colunista-card.touch-active .name {
  color: var(--u68-primary-color, #0a4579);
}

.colunista-card-link:hover .name::after,
.colunista-card.touch-active .name::after {
  width: 100%;
  opacity: 1;
}

.colunista-card .title {
  font-size: 0.9rem;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: rgba(10, 69, 121, 0.75);
}

.colunista-card .team-content .small {
  display: block;
  margin-top: 2px;
  color: rgba(10, 69, 121, 0.7);
}

/* Colunista card link wrapper */
.colunista-card-link {
  text-decoration: none !important;
  color: inherit;
  display: block;
}

.colunista-card-link:hover {
  text-decoration: none !important;
  color: inherit;
}

.colunista-card-link:hover * {
  text-decoration: none !important;
}

/* Bubble speech style for article in colunista card */
.colunista-bubble {
  order: 1;
  position: relative;
  z-index: 2;
}

.colunista-bubble p {
  position: relative;
  background: #f5f5f5;
  border: 0px solid #555;
  border-radius: 18px;
  padding: 12px 16px;
  margin: 10px auto 10px;
  max-width: 90%;
  font-size: 0.85rem;
  line-height: 1.4;
  color: #333;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: all 0.3s ease;
}

/* Triangle/tail pointing down to photo */
.colunista-bubble p::before {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid #f5f5f5;
}

.colunista-card-link:hover .colunista-bubble p,
.colunista-card.touch-active .colunista-bubble p {
  background: #fff;
  box-shadow: 0 4px 16px rgba(10, 69, 121, 0.12);
  transform: translateY(-2px);
}

.colunista-card-link:hover .colunista-bubble p::before,
.colunista-card.touch-active .colunista-bubble p::before {
  border-top-color: #fff;
}



@media (max-width: 768px) {
  .navbar-brand {
    position: relative;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
    left: auto;
    max-width: 150px;
    margin: 0 auto;
  }
}

#wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 100%;
  -webkit-box-align: stretch;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

#sidebar {
  min-width: 250px;
  max-width: 250px;
  background: #020b31;
  color: #fff;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

#sidebar.active {
  margin-left: -250px; }

#sidebar .sidebar-header {
  padding: 20px;
  background: #071448; }

#sidebar ul.components {
  padding: 20px 0;
  border-bottom: 1px solid #47748b; }

#sidebar ul p {
  color: #fff;
  padding: 10px; }

#sidebar ul li a {
  padding: 10px;
  font-size: 1.1em;
  display: block; }

#sidebar ul li a:hover {
  background: #fff; }

#sidebar ul li.active > a,
a[aria-expanded="true"] {
  color: #fff;
  background: #6d7fcc; }

a[data-toggle="collapse"] {
  position: relative; }

.dropdown-toggle::after {
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }

ul ul a {
  font-size: 0.9em !important;
  padding-left: 30px !important; }

ul.CTAs {
  padding: 20px; }

ul.CTAs a {
  text-align: center;
  font-size: 0.9em !important;
  display: block;
  border-radius: 5px;
  margin-bottom: 5px; }

a.download {
  background: #fff;
  color: #7386D5; }

a.article,
a.article:hover {
  background: #6d7fcc !important;
  color: #fff !important; }

/* ---------------------------------------------------
    CONTENT STYLE
----------------------------------------------------- */
#content {
  width: 100%;
  padding: 0;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

/* ---------------------------------------------------
    MEDIAQUERIES
----------------------------------------------------- */
@media (max-width: 768px) {
  #sidebar {
    margin-left: 0px; }
  #sidebar.active {
    margin-left: -250px; }
  #sidebarCollapse span {
    display: none; } }

.menu-novo {
  margin-bottom: auto;
  margin-top: auto;
  height: 30px;
  background-color: orange;
  border-radius: 30px;
  padding: 10px; }

.searchbar {
  margin-bottom: auto;
  margin-top: auto;
  height: 30px;
  background-color: orange;
  border-radius: 30px;
  padding: 10px; }

.search_input {
  color: white;
  border: 0;
  outline: 0;
  background: none;
  width: 0;
  caret-color: transparent;
  line-height: 20px;
  -webkit-transition: width 0.4s linear;
  -o-transition: width 0.4s linear;
  transition: width 0.4s linear; }

.searchbar:hover > .search_input {
  padding: 0 10px;
  width: 200px;
  caret-color: red;
  -webkit-transition: width 0.4s linear;
  -o-transition: width 0.4s linear;
  transition: width 0.4s linear; }

.searchbar:hover > .search_icon {
  background: white;
  color: orange; }

.search_icon {
  height: 40px;
  width: 40px;
  float: right;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  color: white;
  text-decoration: none; }

.nav-link {
  color: white;
  padding: 0.1rem 0.5rem !important; }

/* Mobile search wrapper styling */
.mobile-search {
  display: none;
}

/* More news section on single posts */
.more-news-section {
  border-top: 1px solid #e9ecef;
}
.more-news-section .section-title {
  font-size: 1.25rem;
  font-weight: 700;
}

/* Single post: links follow theme primary color */
.single-post .entry-content a:not(.btn),
.single-post .navigation a,
.single-post .news-grid a {
  color: var(--u68-primary-color, #0a4579);
}
.single-post .entry-content a:not(.btn):hover,
.single-post .navigation a:hover,
.single-post .news-grid a:hover {
  color: var(--u68-primary-color, #0a4579);
  text-decoration: underline;
}
/* Ensure Bootstrap's text-primary maps to theme primary on singles */
.single-post .text-primary { color: var(--u68-primary-color, #0a4579) !important; }

/* Global: links follow theme primary color everywhere (non-buttons) */
a:not(.btn) {
  color: var(--u68-primary-color, #0a4579);
}
a:not(.btn):hover {
  color: var(--u68-primary-color, #0a4579);
  text-decoration: underline;
}

/* Global: map Bootstrap text-primary to theme primary color */
.text-primary { color: var(--u68-primary-color, #0a4579) !important; }

/* Mobile specific adjustments */
@media (max-width: 768px) {
  .colunistas-grid.colunistas-grid--scroll {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    gap: 12px;
    padding-bottom: 8px;
    margin-left: 0;
    margin-right: 0;
  }
  .colunistas-grid.colunistas-grid--scroll > [class*="col-"] {
    flex: 0 0 80%;
    max-width: 80%;
    scroll-snap-align: start;
  }

  .colunistas-grid.slick-initialized .col-6,
  .colunistas-grid.slick-initialized .col-sm-6,
  .colunistas-grid.slick-initialized .col-md-4,
  .colunistas-grid.slick-initialized .col-lg-3 {
    max-width: 100%;
    flex: 0 0 100%;
  }
  
  /* Ensure colunistas slider track can extend */
  .colunistas-grid.slick-initialized .slick-track {
    max-width: none !important;
    width: auto !important;
  }
  
  /* Destaque misto slider adjustments */
  .destaque-misto-wrapper.slick-initialized .slick-track {
    max-width: none !important;
    width: auto !important;
  }
}

.nav-link a:hover {
  color: orange; }

/* Mobile stability: prevent horizontal movement on small screens */
html {
  max-width: 100%;
  width: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
}

body {
  max-width: 100%;
  width: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  position: relative;
}

@media (max-width: 768px) {
  html,
  body {
    overscroll-behavior-x: none;
    max-width: 100vw;
    overflow-x: hidden !important;
  }

  /* Container with proper padding */
  .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  
  /* Rows without negative margins */
  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Fix for sidebar overflow */
  #wrapper {
    overflow-x: hidden;
  }

  /* Fix for images and iframes */
  img,
  iframe,
  video,
  embed,
  object {
    max-width: 100%;
    height: auto;
  }

  /* Destaque Misto: taller big images on mobile */
  .imagem-destaque-misto {
    height: 360px !important;
  }

  /* Destaque Misto: list 20% image, 80% text on mobile */
  .destaque-misto-wrapper .list-item {
    align-items: flex-start;
  }
  .destaque-misto-wrapper .list-thumb {
    width: 25%;
    max-width: 160px;
    aspect-ratio: 3 / 5;
    overflow: hidden;
    border-radius: 4px;
  }
  .destaque-misto-wrapper .list-thumb img,
  .destaque-misto-wrapper .list-thumb .img-fluid {
    width: 100% !important;
    height: 100% !important;
    display: block;
    object-fit: cover !important;
    margin-bottom: 0 !important;
    border-radius: 4px;
  }
  .destaque-misto-wrapper .list-content {
    width: 75%;
  }

  /* Ensure navbar elements don't overflow */
  .navbar-brand img {
    max-width: 150px;
    height: auto;
  }

  /* Fix slick carousel - allow proper slider functionality */
  .slick-list {
    overflow: hidden;
  }
  
  .slick-track {
    display: flex !important;
  }
  
  /* Ensure slider containers don't overflow */
  .slick-slider {
    overflow: hidden;
  }
  
  /* Tables responsive */
  table {
    max-width: 100%;
    overflow-x: auto;
    display: block;
  }
}

/* Top Most Read minimal styles */
.top-most-read-title {
  margin-bottom: 0.5rem;
  font-weight: 700;
}
.top-most-read {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
/* Override global ordered-list badge styling for this block */
.top-most-read li::before {
  content: none !important;
  display: none !important;
}
.top-most-read .top-item {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.25rem 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
.top-most-read .top-item:last-child {
  border-bottom: none;
}
.top-most-read .rank {
  min-width: 28px;
  height: 28px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  font-weight: 700;
  font-size: 0.875rem;
  background: var(--u68-badge-color, #efefef);
  color: var(--u68-badge-contrast, #111);
}
.top-most-read .top-link {
  flex: 5;
  color: #2c3e50;
  text-decoration: none;
  line-height: 1.3;
  font-size: larger;
  font-weight: 600;
}
.top-most-read .top-link:hover {
  text-decoration: underline;
}

/* Weather Block - Minimalistic with subtle animations */
.weather-block.minimal {
  border: 1px solid #e9ecef;
  border-radius: 6px;
  background: #fff;
}
.weather-block .weather-icon {
  position: relative;
  width: 48px;
  height: 48px;
  overflow: visible;
}
.weather-block .icon-base {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: var(--u68-primary-color, #0a4579);
  opacity: .08;
}

/* PASSO 1 & 2: Sol - Clear weather (Simplificado e otimizado 48x48px) */
.weather-block .sun {
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 24px;
  height: 24px;
  background: #f9db62;
  border-radius: 50%;
  opacity: 0;
  animation: sunPulse 2.5s ease-in-out infinite;
}

.weather-block .icon-clear .sun {
  opacity: 1;
}

@keyframes sunPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.08); opacity: 0.95; }
}

/* PASSO 1 & 2: Nuvem - Cloudy weather (Simplificada e otimizada 48x48px) */
.weather-block .cloud {
  position: absolute;
  bottom: 10px;
  left: 8px;
  opacity: 0;
  z-index: 2;
}

.weather-block .icon-cloudy .cloud {
  opacity: 1;
  animation: cloudFloat 3s ease-in-out infinite;
}

.weather-block .cloud-shape {
  position: relative;
  width: 28px;
  height: 10px;
  background: #95a5a6;
  border-radius: 15px;
}

.weather-block .cloud-shape::before {
  content: '';
  position: absolute;
  top: -6px;
  left: 6px;
  width: 14px;
  height: 14px;
  background: #95a5a6;
  border-radius: 50%;
}

.weather-block .cloud-shape::after {
  content: '';
  position: absolute;
  top: -4px;
  right: 4px;
  width: 10px;
  height: 10px;
  background: #95a5a6;
  border-radius: 50%;
}

@keyframes cloudFloat {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(2px); }
}

/* PASSO 1 & 2: Chuva - Rain weather (Simplificada e otimizada 48x48px) */
.weather-block .rain {
  position: absolute;
  left: 8px;
  top: 6px;
  width: 32px;
  height: 32px;
  pointer-events: none;
  opacity: 0;
}

.weather-block .icon-rain .rain {
  opacity: 1;
}

.weather-block .rain::before,
.weather-block .rain::after {
  content: '';
  position: absolute;
  left: 4px;
  width: 1.2px;
  height: 9px;
  background: #6ab9e9;
  opacity: .75;
  animation: rainDrop 0.8s linear infinite;
  box-shadow: 
    6px 1px 0 #6ab9e9,
    12px -1px 0 #6ab9e9,
    18px 1px 0 #6ab9e9,
    3px 10px 0 rgba(106, 185, 233, 0.6),
    9px 9px 0 rgba(106, 185, 233, 0.6),
    15px 11px 0 rgba(106, 185, 233, 0.6);
}
.weather-block .rain::after {
  left: 6px;
  animation-delay: 400ms;
  box-shadow: 
    6px -1px 0 #6ab9e9,
    12px 1px 0 #6ab9e9,
    2px 10px 0 rgba(106, 185, 233, 0.6),
    8px 9px 0 rgba(106, 185, 233, 0.6),
    14px 11px 0 rgba(106, 185, 233, 0.6);
}
@keyframes rainDrop {
  0% { transform: translateY(0); opacity: .75; }
  100% { transform: translateY(16px); opacity: 0; }
}

/* PASSO 1 & 2: Trovão - Storm weather (Simplificado e otimizado 48x48px) */
.weather-block .thunder {
  position: absolute;
  bottom: 12px;
  left: 16px;
  width: 6px;
  height: 6px;
  background: #f9db62;
  transform: skew(-12deg);
  opacity: 0;
  z-index: 3;
}

.weather-block .icon-storm .thunder {
  animation: thunderFlash 1.8s ease-in-out infinite;
}

.weather-block .thunder::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 0px;
  width: 12px;
  height: 4px;
  background: #f9db62;
}

.weather-block .thunder::after {
  content: '';
  position: absolute;
  width: 0; 
  height: 0;
  top: 8px;
  right: -7px;
  border-left: 2px solid transparent;
  border-right: 2px solid transparent;
  border-top: 10px solid #f9db62;
  transform: skew(5deg);
}

@keyframes thunderFlash {
  0%, 90%, 100% { opacity: 0; }
  91%, 93%, 95% { opacity: 1; }
  92%, 94% { opacity: 0.4; }
}

/* PASSO 1 & 2: Vento - Wind (Simplificado e otimizado 48x48px) */
.weather-block .wind {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 14px;
  overflow: hidden;
  opacity: 0;
}

.weather-block .icon-cloudy .wind,
.weather-block .icon-rain .wind {
  opacity: 0.45;
}

.weather-block .wind::before {
  content: '';
  position: absolute;
  left: -32px;
  top: 2px;
  width: 32px;
  height: 1.2px;
  background: #9aa4ad;
  animation: windFlow 1.8s ease-in-out infinite;
  box-shadow: 
    0 4px 0 1.2px #9aa4ad,
    2px 8px 0 1.2px #9aa4ad;
}
.weather-block .wind::after {
  content: '';
  position: absolute;
  left: -32px;
  top: 1px;
  width: 26px;
  height: 1.2px;
  background: #9aa4ad;
  opacity: 0.7;
  animation: windFlow 1.8s ease-in-out infinite;
  animation-delay: 0.9s;
  box-shadow: 
    1px 5px 0 1.2px rgba(154, 164, 173, 0.7);
}
@keyframes windFlow {
  0% { transform: translateX(0); opacity: .6; }
  50% { opacity: .85; }
  100% { transform: translateX(64px); opacity: .25; }
}

/* PASSO 3: Snow/Neve - otimizado para 48x48px */
.weather-block .snow {
  position: absolute;
  left: 8px;
  top: 6px;
  width: 32px;
  height: 32px;
  pointer-events: none;
  opacity: 0;
}

.weather-block .icon-snow .snow {
  opacity: 1;
}

.weather-block .snow::before,
.weather-block .snow::after {
  content: '';
  position: absolute;
  left: 6px;
  width: 3px;
  height: 3px;
  background: #fff;
  border-radius: 50%;
  opacity: .8;
  animation: snowFall 1.8s linear infinite;
  box-shadow: 
    6px 1px 0 #fff,
    12px -1px 0 #fff,
    18px 1px 0 #fff,
    3px 12px 0 rgba(255, 255, 255, 0.6),
    9px 11px 0 rgba(255, 255, 255, 0.6),
    15px 13px 0 rgba(255, 255, 255, 0.6);
}
.weather-block .snow::after {
  left: 8px;
  animation-delay: 0.9s;
  box-shadow: 
    6px -1px 0 #fff,
    12px 1px 0 #fff,
    2px 13px 0 rgba(255, 255, 255, 0.6),
    8px 11px 0 rgba(255, 255, 255, 0.6),
    14px 13px 0 rgba(255, 255, 255, 0.6);
}

@keyframes snowFall {
  0% { transform: translateY(0); opacity: .8; }
  100% { transform: translateY(18px); opacity: 0; }
}

.weather-block .icon-clear .icon-base { background: #f9db62; opacity: .15; }
.weather-block .icon-cloudy .icon-base { background: #95a5a6; opacity: .12; }
.weather-block .icon-rain .icon-base { background: #6ab9e9; opacity: .12; }
.weather-block .icon-storm .icon-base { background: #8e44ad; opacity: .15; }
.weather-block .icon-snow .icon-base { background: #bdc3c7; opacity: .12; }

/* ========================================
   WEATHER WIDGET - SINGLE COLUMN LAYOUT
   ======================================== */

.weather-widget {
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 10px 40px rgba(0,0,0,0.3);
  background: var(--u68-surface-darker, #222831);
  max-width: 100%;
  width: 100%;
}

/* TOP SIDE: Gradient Blue-Cyan */
.weather-widget .weather-side {
  position: relative;
  background-color: var(--u68-primary-color, #72edf2);
  width: 100%;
  padding: 18px 14px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: white;
  overflow: hidden;
  min-height: 200px;
}

.weather-widget .weather-gradient { display: none; }

.weather-widget .date-container {
  position: relative;
  z-index: 1;
  margin-bottom: 12px;
  text-align: center;
}

.weather-widget .date-dayname {
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 5px 0;
  line-height: 1.2;
}

.weather-widget .date-day {
  font-size: 14px;
  opacity: 0.9;
  display: block;
}

.weather-widget .location {
  font-size: 12px;
  margin-top: 8px;
  opacity: 0.85;
}

.weather-widget .location i {
  margin-right: 4px;
}

.weather-widget .weather-container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
}

/* Icon + temperature side by side */
.weather-widget .current-top {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.weather-widget .current-top .weather-temp {
  margin: 0;
  display: flex;
  align-items: baseline;
  line-height: 1;
}

.weather-widget .weather-icon-large {
  margin: 0 !important;
  flex-shrink: 0;
  filter: drop-shadow(0 4px 8px rgba(0,0,0,0.2));
}

.weather-widget .weather-icon-large i.weather-fa-icon-large {
  font-size: 40px;
  color: white;
  text-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.weather-widget .weather-temp {
  font-size: 48px;
  font-weight: 700;
  margin: 0;
  line-height: 1;
  text-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.weather-widget .weather-temp .temp-unit {
  font-size: 40Spx;
}

.weather-widget .weather-desc {
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  opacity: 0.95;
  display: block;
}

/* Emphasized city name below current conditions */
.weather-widget .weather-location {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 8px;
  font-size: 1.25rem;
  font-weight: 700;
}

/* Removed empty ruleset for .weather-widget .weather-location i */

/* Removed empty ruleset for .weather-widget .weather-location .city-name */

/* Date centered in info side */
.weather-widget .info-side .info-date {
  width: 100%;
  text-align: center;
  margin-bottom: 8px;
}

.weather-widget .info-side .info-date .date-dayname {
  font-size: 18px;
  font-weight: 700;
  margin: 0;
}

.weather-widget .info-side .info-date .date-day {
  display: block;
  font-size: 12px;
}

/* BOTTOM SIDE: Info */
.weather-widget .info-side {
  width: 100%;
  padding: 12px 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  flex-wrap: wrap;
}

.weather-widget .today-info-container {
  flex: 1;
  min-width: 140px;
}

.weather-widget .today-info {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.weather-widget .today-info .info-item:nth-child(1),
.weather-widget .today-info .info-item:nth-child(2) {
  grid-column: auto;
}

.weather-widget .today-info .info-item:nth-child(3) {
  grid-column: 1 / -1;
}

.weather-widget .info-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(255,255,255,0.1);
}

.weather-widget .info-title {
  font-size: 12px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

.weather-widget .info-value {
  font-size: 12px;
  font-weight: 600;
}

/* Week Forecast - Slick Slider */
.weather-widget .week-container {
  flex: 1;
  min-width: 100%;
  display: flex;
  flex-direction: column;
  margin-top: 10px;
  align-items: center;
  justify-content: center;
}

.weather-widget .weather-forecast-slider {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.weather-widget .forecast-slide {
  padding: 5px;
  outline: none;
}

.weather-widget .forecast-day-card {
  background: rgba(255,255,255,0.08);
  border-radius: 12px;
  padding: 12px 10px;
  text-align: center;
  transition: all 0.3s ease;
  border: 2px solid transparent;
  height: 100%;
}

.weather-widget .forecast-day-card.active {
  background: rgba(255,255,255,0.12);
  border-color: var(--u68-badge-color, #ff5722);
  box-shadow: 0 4px 12px rgba(255,87,34,0.2);
  transform: scale(1.02);
}

.weather-widget .forecast-day-card:hover {
  background: rgba(255,255,255,0.12);
  transform: translateY(-2px);
}

.weather-widget .day-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 8px;
}

.weather-widget .day-icon i {
  font-size: 24px;
}

.weather-widget .day-name {
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 2px;
  text-transform: capitalize;
}

.weather-widget .day-date {
  display: block;
  font-size: 10px;
  margin-bottom: 8px;
  text-transform: capitalize;
}

.weather-widget .temps {
  display: flex;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
}

.weather-widget .temp-max {
  font-weight: 700;
}

.weather-widget .temp-min {
  font-weight: 600;
}

/* Slick Slider Customization */
.weather-widget .slick-prev,
.weather-widget .slick-next {
  width: 30px;
  height: 30px;
  z-index: 1;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(114,237,242,0.3);
  border: 1px solid var(--u68-primary-color, #72edf2);
  border-radius: 50%;
  transition: all 0.3s ease;
}

.weather-widget .slick-prev:hover,
.weather-widget .slick-next:hover {
  background: rgba(114,237,242,0.5);
}

.weather-widget .slick-prev::before,
.weather-widget .slick-next::before {
  color: var(--u68-primary-color, #72edf2);
  font-size: 16px;
}

.weather-widget .slick-prev {
  left: -40px;
}

.weather-widget .slick-next {
  right: -40px;
}

/* Responsivo - Removido para manter mesma visualização em todas telas */

/* Weather header layout - centered vertical */
.weather-block .current-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* ========================================
   WEATHER WIDGET THEMES
   Light / Dark usando variáveis do tema
   Contraste adequado para tipografia
   ======================================== */

/* DARK THEME (default) - Fundo cinza escuro */
.weather-widget.weather-theme-dark {
  background: #2d3436; /* Cinza escuro */
}

.weather-widget.weather-theme-dark .weather-side {
  background: linear-gradient(135deg, var(--wp--preset--color--primary, #0a4579) 0%, #1565c0 100%);
  color: #ffffff;
}

.weather-widget.weather-theme-dark .weather-side .date-dayname,
.weather-widget.weather-theme-dark .weather-side .date-day,
.weather-widget.weather-theme-dark .weather-side .weather-temp,
.weather-widget.weather-theme-dark .weather-side .weather-desc,
.weather-widget.weather-theme-dark .weather-side .weather-location,
.weather-widget.weather-theme-dark .weather-side .city-name,
.weather-widget.weather-theme-dark .weather-side i {
  color: #ffffff !important;
}

.weather-widget.weather-theme-dark .info-side {
  background: #2d3436; /* Mesmo cinza escuro */
}

.weather-widget.weather-theme-dark .forecast-day-card {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
}

.weather-widget.weather-theme-dark .forecast-day-card:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.2);
}

.weather-widget.weather-theme-dark .forecast-day-card.active {
  background: rgba(255,255,255,0.12);
  border-color: var(--wp--preset--color--accent, #ec940d);
  box-shadow: 0 2px 8px rgba(236,148,13,0.3);
}

.weather-widget.weather-theme-dark .info-item {
  border-bottom: 1px solid rgba(255,255,255,0.1);
}

/* Dark theme - tipografia com alto contraste (branco) */
.weather-widget.weather-theme-dark .info-title {
  color: rgba(255,255,255,0.7);
  font-weight: 500;
}

.weather-widget.weather-theme-dark .info-title i {
  color: rgba(255,255,255,0.7);
}

.weather-widget.weather-theme-dark .info-value {
  color: #ffffff;
  font-weight: 700;
}

.weather-widget.weather-theme-dark .info-date .date-dayname,
.weather-widget.weather-theme-dark .info-date .date-day {
  color: rgba(255,255,255,0.7);
}

.weather-widget.weather-theme-dark .day-name {
  color: #ffffff;
  font-weight: 600;
}

.weather-widget.weather-theme-dark .day-date {
  color: rgba(255,255,255,0.7);
}

.weather-widget.weather-theme-dark .temp-max {
  color: #ffffff;
  font-weight: 700;
}

.weather-widget.weather-theme-dark .temp-min {
  color: rgba(255,255,255,0.6);
  font-weight: 500;
}

.weather-widget.weather-theme-dark .day-icon i {
  color: #ffffff;
}

/* Dark theme slick dots */
.weather-widget.weather-theme-dark .slick-dots li button:before {
  color: rgba(255,255,255,0.5);
}

.weather-widget.weather-theme-dark .slick-dots li.slick-active button:before {
  color: var(--wp--preset--color--accent, #ec940d);
}

/* LIGHT THEME - Fundo cinza claro */
.weather-widget.weather-theme-light {
  background: #e9ecef; /* Cinza claro */
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.weather-widget.weather-theme-light .weather-side {
  background: linear-gradient(135deg, var(--wp--preset--color--primary, #0a4579) 0%, #2980b9 100%);
  color: #ffffff;
}

.weather-widget.weather-theme-light .weather-side .date-dayname,
.weather-widget.weather-theme-light .weather-side .date-day,
.weather-widget.weather-theme-light .weather-side .weather-temp,
.weather-widget.weather-theme-light .weather-side .weather-desc,
.weather-widget.weather-theme-light .weather-side .weather-location,
.weather-widget.weather-theme-light .weather-side .city-name,
.weather-widget.weather-theme-light .weather-side i {
  color: #ffffff !important;
}

.weather-widget.weather-theme-light .info-side {
  background: #e9ecef; /* Mesmo cinza claro */
}

.weather-widget.weather-theme-light .forecast-day-card {
  background: #ffffff;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.weather-widget.weather-theme-light .forecast-day-card:hover {
  background: #ffffff;
  border-color: var(--wp--preset--color--primary, #0a4579);
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.weather-widget.weather-theme-light .forecast-day-card.active {
  background: #ffffff;
  border-color: var(--wp--preset--color--primary, #0a4579);
  box-shadow: 0 2px 12px rgba(10,69,121,0.2);
}

.weather-widget.weather-theme-light .info-item {
  border-bottom: 1px solid rgba(0,0,0,0.1);
}

/* Light theme - tipografia com cor primária na parte de baixo */
.weather-widget.weather-theme-light .info-title {
  color: var(--wp--preset--color--primary, #0a4579);
  font-weight: 500;
}

.weather-widget.weather-theme-light .info-title i {
  color: var(--wp--preset--color--primary, #0a4579);
}

.weather-widget.weather-theme-light .info-value {
  color: var(--wp--preset--color--primary, #0a4579);
  font-weight: 700;
}

.weather-widget.weather-theme-light .info-date .date-dayname,
.weather-widget.weather-theme-light .info-date .date-day {
  color: var(--wp--preset--color--primary, #0a4579);
}

.weather-widget.weather-theme-light .day-name {
  color: var(--wp--preset--color--primary, #0a4579);
  font-weight: 600;
}

.weather-widget.weather-theme-light .day-date {
  color: var(--wp--preset--color--primary, #0a4579);
  opacity: 0.7;
}

.weather-widget.weather-theme-light .temp-max {
  color: var(--wp--preset--color--danger, #dc3545);
  font-weight: 700;
}

.weather-widget.weather-theme-light .temp-min {
  color: var(--wp--preset--color--primary, #0a4579);
  font-weight: 600;
}

.weather-widget.weather-theme-light .day-icon i {
  color: var(--wp--preset--color--primary, #0a4579);
}

/* Light theme slick dots */
.weather-widget.weather-theme-light .slick-dots li button:before {
  color: #adb5bd;
}

.weather-widget.weather-theme-light .slick-dots li.slick-active button:before {
  color: var(--wp--preset--color--primary, #0a4579);
}
.weather-block .current-wrap .weather-icon {
  margin-bottom: 12px;
}
.weather-block .current-info {
  width: 100%;
}
.weather-block .current-temp {
  font-weight: 800;
  font-size: 2rem;
  line-height: 1;
  color: var(--u68-primary-color, #007bff);
  margin-bottom: 8px;
}
.weather-block .current-temp .temp-unit {
  font-size: 0.9rem;
  opacity: 0.85;
  margin-left: 2px;
}
.weather-block .current-meta-inline {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: center;
  margin-bottom: 8px;
}
.weather-block .current-meta-inline > div {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.95rem;
}
.weather-block .current-meta-inline .city {
  font-weight: 700;
  color: var(--u68-primary-color, #007bff);
}
.weather-block .current-meta-inline .condition {
  font-weight: 600;
  color: var(--u68-badge-color, #ff5722);
  font-size: 0.9rem;
}
.weather-block .current-meta-inline i {
  font-size: 0.9rem;
  margin-right: 6px;
}

/* Weather info (wind and rain) - text display styles centered */
.weather-block .wind-info,
.weather-block .rain-info {
  font-size: 0.95rem;
  color: #2c3e50;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
.weather-block .wind-info span,
.weather-block .rain-info span {
  display: inline-block;
}
.weather-block .wind-info i,
.weather-block .rain-info i {
  font-size: 1rem;
  margin-right: 6px;
}
.weather-block .meta-bottom {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
  align-items: center;
}
.weather-block .meta-bottom > div {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Currency Monitor minimal styles */
.currency-monitor {
  border: 1px solid #e9ecef;
  border-radius: 6px;
  background: #fff;
}
.currency-monitor .cm-rows {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.currency-monitor .cm-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 6px 0;
  border-bottom: 1px solid rgba(0,0,0,0.06);
}
.currency-monitor .cm-row:last-child { border-bottom: none; }
.currency-monitor .cm-name {
  font-weight: 600;
  color: #2c3e50;
}
.currency-monitor .cm-values {
  display: flex;
  gap: 12px;
  font-variant-numeric: tabular-nums;
}
.currency-monitor .cm-buy,
.currency-monitor .cm-sell {
  color: #333;
}

/* Currency Monitor Slick Slider - Add margin to slides */
.currency-monitor-slider .slick-slide {
  margin: 0 8px !important;
}
.cm-item {
  margin: 5px !important;
}

/* Remove card shadows on destaque blocks */
.destaques-home-wrapper .card,
.destaque-misto-wrapper .card {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}

/* Destaque Misto: card link inteiro clic\u00e1vel */
.destaque-misto-wrapper .dm-card-link {
  display: block;
  text-decoration: none;
  color: inherit;
  transition: all 0.2s ease;
}
.destaque-misto-wrapper .dm-card-link:hover .list-item {
  opacity: 0.9;
}
.destaque-misto-wrapper .dm-card-link:hover h5 {
  color: var(--u68-primary-color, #0a4579) !important;
}

/* Destaque Misto: badge posicionada no topo esquerdo */
.destaque-misto-wrapper .dm-badge-overlay {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 10;
}

/* Destaque Misto: garantir que gradiente apareça sobre a imagem */
.destaque-misto-wrapper .card-img-overlay {
  z-index: 5;
}
.destaque-misto-wrapper .imagem-destaque-misto {
  z-index: 1;
  position: relative;
}

/* Apply Customizer highlight color only to image cards */
.destaques-home-wrapper .card,
.destaque-misto-wrapper .card {
  background-color: var(--u68-badge-color, #ec940d) !important;
}
/* Mobile slider cards */
.destaques-home-mobile-slider .position-relative {
  background-color: var(--u68-badge-color, #ec940d) !important;
}

/* Destaque Home: badge positioning - always top left */
.destaques-home-wrapper .badge,
.destaques-home-wrapper-single .badge,
.destaques-home-mobile-slider .badge,
.destaques-home-wrapper .position-relative .badge,
.destaques-home-wrapper-single .position-relative .badge,
.destaques-home-mobile-slider .slick-slide .badge {
  position: absolute !important;
  left: 12px !important;
  top: 12px !important;
  z-index: 100 !important;
}

/* Ensure card containers support absolute positioning */
.destaques-home-wrapper .position-relative,
.destaques-home-wrapper-single .position-relative,
.destaques-home-mobile-slider .position-relative,
.destaques-home-wrapper .card,
.destaques-home-wrapper-single .card,
.destaques-home-mobile-slider .slick-slide {
  position: relative !important;
}

/* Destaque Home Mobile: Larger images */
@media (max-width: 768px) {
  .destaques-home-wrapper .imagem-destaque,
  .destaques-home-mobile-slider .imagem-destaque,
  .destaques-home-wrapper img.imagem-destaque,
  .destaques-home-mobile-slider img.imagem-destaque {
    height: 450px !important;
    object-fit: cover !important;
  }
}

/* ========================================
   AUTOPLAY DO DESTAQUE HOME MOBILE
   ========================================
   
   Para ativar o autoplay no slider mobile, adicione este código JavaScript
   no arquivo que inicializa o slider (geralmente carousel_init.js ou similar):
   
   jQuery(document).ready(function($) {
     if ($(window).width() <= 768) {
       $('.destaques-home-mobile-slider').slick({
         autoplay: true,
         autoplaySpeed: 3000,
         dots: true,
         arrows: false,
         infinite: true,
         speed: 500,
         slidesToShow: 1,
         slidesToScroll: 1
       });
     }
   });
  
    Ajuste os par\u00e2metros conforme necess\u00e1rio.
*/
