/* Custom Styles */
:root {
    --primary-color: #d10000;
    --secondary-color: #010102;
    --secondary-color: #010102;
    --bg-color: #fcfcfc;
    --bg-dark: #272525;
    --primary-dark: #38589a;
    --primary-light: #a6b6d7;
    --primary-lighter: #ffffff;
    --neutral-bg-50: #fafafa;
    --neutral-bg-100: #f6f6f6;
    --neutral-bg-500: rgba(8, 8, 8, 0.24);
    --neutral-bg-700: #242424;
    --neutral-text-white: #fafafa;
    --neutral-text-light: #fafafa;
    --neutral-text-soft: #6c6c6c;
    --neutral-text-black: #242424;
    --text-dark: #141414;
    --spacing-8: 8px;
    --spacing-12: 12px;
    --spacing-16: 16px;
    --spacing-24: 24px;
    --spacing-32: 32px;
    --spacing-40: 40px;
    --spacing-48: 48px;
    --spacing-56: 56px;
    --spacing-64: 64px;
    --spacing-96: 96px;
    --spacing-120: 120px;
    --radius-8: 8px;
    --radius-12: 12px;
    --radius-16: 16px;
    --radius-24: 24px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Inter', sans-serif;
    font-weight: 350;
    color: var(--neutral-text-black);
    background-color: var(--neutral-bg-50);
    line-height: 1.5;
    margin: 0 auto;
    max-width: 1920px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Rubik', sans-serif;
    font-weight: 500;
    line-height: 1.2;
}

/* Header Styles */
.header-section {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding: 32px 0;
    transition: all 0.3s ease;
}

.header a {
    color: var(--neutral-text-white);
}

.header.fixed {
    position: sticky !important;
    top: 0;
    z-index: 1000;
    background-color: var(--bg-dark) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
    transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hover apenas no desktop */
@media (min-width: 992px) {
    .header li.has-dropdown:hover>.dropdown-menu {
        display: block;
        background-color: var(--primary-color);
    }
}


.header ul.sub-menu.dropdown-menu.menu-dropdown {
    max-width: 250px;
    max-height: 300px;
    overflow-y: auto;
    font-size: 12px;
}

/* Mobile: Esconder submenus por padrão e mostrar apenas quando clicado */
@media (max-width: 991.98px) {
    /* Esconde todos os submenus no mobile por padrão - regra genérica primeiro */
    .header .navbar-nav .has-dropdown > ul {
        display: none !important;
        opacity: 0;
        max-height: 0;
        overflow: hidden;
        padding: 0 !important;
        margin: 0 !important;
        transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease, margin 0.3s ease;
    }
    
    /* Esconde todos os submenus no mobile por padrão - regras específicas */
    .header .navbar-nav .has-dropdown > .sub-menu,
    .header .navbar-nav .has-dropdown > .dropdown-menu,
    .header .navbar-nav .has-dropdown > ul.sub-menu,
    .header .navbar-nav .has-dropdown > ul.dropdown-menu {
        display: none !important;
        opacity: 0;
        max-height: 0;
        overflow: hidden;
        padding: 0 !important;
        margin: 0 !important;
        transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease, margin 0.3s ease;
    }
    
    /* Mostra o submenu quando a classe submenu-open está presente - regra genérica primeiro */
    .header .navbar-nav .has-dropdown.submenu-open > ul {
        display: block !important;
        opacity: 1;
        max-height: 1000px;
        padding: 10px 0 !important;
        margin-top: 5px !important;
        background-color: rgba(0, 0, 0, 0.3);
        border-radius: var(--radius-8);
    }
    
    /* Mostra o submenu quando a classe submenu-open está presente - regras específicas */
    .header .navbar-nav .has-dropdown.submenu-open > .sub-menu,
    .header .navbar-nav .has-dropdown.submenu-open > .dropdown-menu,
    .header .navbar-nav .has-dropdown.submenu-open > ul.sub-menu,
    .header .navbar-nav .has-dropdown.submenu-open > ul.dropdown-menu {
        display: block !important;
        opacity: 1;
        max-height: 1000px;
        padding: 10px 0 !important;
        margin-top: 5px !important;
        background-color: rgba(0, 0, 0, 0.3);
        border-radius: var(--radius-8);
    }
    
    .header .navbar-nav .has-dropdown .nav-link {
        cursor: pointer;
        position: relative;
    }
    
    /* Rotacionar ícone quando submenu está aberto */
    .header .navbar-nav .has-dropdown.submenu-open .fa-chevron-down,
    .header .navbar-nav .has-dropdown.submenu-open .fa-chevron-right {
        transform: rotate(180deg);
        transition: transform 0.3s ease;
    }
    
    /* Estilização dos itens do submenu no mobile */
    .header .navbar-nav .has-dropdown.submenu-open .sub-menu .nav-link,
    .header .navbar-nav .has-dropdown.submenu-open .dropdown-menu .nav-link {
        padding-left: 30px !important;
        font-size: 14px;
    }
}

.header-section.fixed {
    position: sticky;
    background: var(--bg-dark) !important;
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 10px var(--bg-dark);
    padding: 16px 0;
}

.header-section .navbar {
    backdrop-filter: blur(8px);
    padding: 0;
}

.header-section .nav-link {
    color: var(--neutral-text-white) !important;
    font-size: 16px;
    font-weight: 500;
    padding: 12px !important;
    border-radius: var(--radius-16);
    text-decoration: none;
    transition: all 0.3s ease;
}

.header-section .nav-link.active {
    background: rgba(176, 190, 205, 0.2);
}

.header-section .nav-link:hover {
    background: rgba(176, 190, 205, 0.1);
}


.header .img-fluid{
    max-width: 180px;
}


.logo-container {
    height: 48px;
    width: 264px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-img {
    max-height: 100%;
    width: auto;
    object-fit: contain;
}

.logo-img:not([src]),
.logo-img[src=""],
.logo-img[src*="undefined"] {
    display: none;
}

.logo-img:not([src])::after,
.logo-img[src=""]::after {
    content: "Logo";
    display: inline-block;
    color: var(--neutral-text-white);
    font-size: 24px;
    font-weight: 600;
}

.btn-menu-toggle {
    background: transparent;
    border: none;
    color: var(--neutral-text-white);
    font-size: 24px;
    padding: 8px;
    border-radius: var(--radius-8);
    display: none;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-menu-toggle:hover {
    background: rgba(255, 255, 255, 0.1);
}

.btn-menu-toggle[aria-expanded="true"] i.fa-bars::before {
    content: "\f00d";
}

/* Mobile Menu Styles */
#mobileMenu {
    width: 100%;
    margin-top: 16px;
    background: rgba(5, 5, 5, 0.95);
    border-radius: var(--radius-16);
    padding: 0;
}

@media (min-width: 992px) {
    #mobileMenu {
        display: none !important;
    }
}

.mobile-menu-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 24px 16px;
    width: 100%;
}

.mobile-nav-link {
    color: var(--neutral-text-white) !important;
    font-size: 16px;
    font-weight: 500;
    padding: 12px 16px !important;
    border-radius: var(--radius-16);
    text-decoration: none;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    gap: 12px;
}

.mobile-nav-link.active {
    background: rgba(176, 190, 205, 0.2);
}

.mobile-nav-link:hover {
    background: rgba(176, 190, 205, 0.1);
    color: var(--neutral-text-white) !important;
}

.mobile-nav-link .info-icon {
    width: 20px;
    height: 20px;
    object-fit: contain;
}

.mobile-btn-cta {
    background: transparent !important;
    border: 1.5px solid var(--neutral-text-white) !important;
    border-radius: var(--radius-16) !important;
    padding: 12px 16px !important;
    font-weight: 500;
    font-size: 16px;
    text-align: center;
    margin-top: 8px;
    justify-content: center;
}

.mobile-btn-cta:hover {
    background: rgba(255, 255, 255, 0.1) !important;
}

.btn-cta {
    border: 1.5px solid var(--neutral-text-white);
    border-radius: var(--radius-16);
    padding: 12px;
    font-weight: 500;
    font-size: 16px;
    white-space: nowrap;
}

/* Hero Section */
.hero-section {
    position: relative;
    min-height: 1080px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 104px 0;
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.hero-section img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #393939c7;
    ;
    mix-blend-mode: multiply;
    z-index: 1;
}

.hero-section .container {
    position: relative;
    z-index: 2;
}

.hero-title {
    font-size: 56px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 24px;
}

.hero-subtitle {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    margin-bottom: 48px;
    line-height: 1.4;
}

.hero-buttons .btn {
    padding: 12px 24px;
    border-radius: var(--radius-16);
    font-size: 16px;
    font-weight: 500;
}

.btn-primary {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    transition: all 0.3s ease;
}

.btn-primary:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    filter: brightness(80%);
    scale: (0.98);
}

/* About Section */
.about-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.about-section .row {
    align-items: stretch;
}

.about-section .col-lg-6:last-child {
    height: 100%;
    display: flex;
}

.badge-custom {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    background: rgba(236, 237, 236, 0.05);
    border: 1px solid rgba(235, 236, 236, 0.15);
    border-radius: var(--radius-16);
    font-size: 12px;
    font-weight: 500;
    color: var(--secondary-color);
    text-transform: uppercase;
    margin-bottom: 16px;
}



.section-title {
    font-size: 40px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
}

.section-title .text-primary {
    color: var(--primary-color);
}

.section-subtitle {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-soft);
    margin-bottom: 24px;
}

.section-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.4;
    margin-bottom: 24px;
}

.feature-box {
    border: 1px solid rgba(233, 233, 233, 0.1);
    border-radius: var(--radius-16);
    padding: 12px 16px;
}

.feature-icon {
    width: 32px;
    height: 32px;
    color: var(--neutral-text-light);
}

.feature-title {
    font-size: 16px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 8px;
}

.feature-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-light);
}

.about-card {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%),
        linear-gradient(90deg, rgba(36, 36, 36, 1) 0%, rgba(36, 36, 36, 1) 100%);
    border-radius: var(--radius-24);
    padding: 40px;
    height: 500px;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
}

.about-card-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 24px;
}

.about-card-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.4;
    margin-bottom: 16px;
}

/* Services Section */
.services-section {
    padding: 104px 0;
    background-color: var(--neutral-bg-100);
}

.section-title-dark {
    font-size: 32px;
    font-weight: 500;
    color: var(--neutral-text-black);
    margin-bottom: 24px;
}

.services-image img {
    border-radius: var(--radius-24);
}

.services-list {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0;
}

.service-item {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 24px;
    background-color: var(--neutral-bg-50);
    border-radius: var(--radius-24);
    margin-bottom: 0;
}

.service-item:nth-child(even) {
    background-color: var(--neutral-bg-100);
}

.service-icon {
    width: 50px;
    height: 50px;
    font-size: 25px;
    color: var(--primary-color);
    flex-shrink: 0;
}

.service-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-black);
    margin-bottom: 16px;
}

.service-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-soft);
}

/* Main Services Section */
.main-services-section {
    padding: 120px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.main-services-section .btn-primary {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    transition: all 0.3s ease;
}

.main-services-section .btn-primary:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.service-card {
    background: color-mix(in srgb, var(--bg-dark) 95%, white);
    border-radius: var(--radius-16);
    padding: 24px;
    min-height: 285px;
    display: flex;
    flex-direction: column;

}

.service-card-icon {
    width: 45px;
    height: 45px;
    background: color-mix(in srgb, var(--bg-dark) 100%, rgb(42, 34, 34));
    border-radius: var(--radius-16);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--neutral-text-light);
    margin-bottom: 24px;
}

.service-card-icon img {
    width: 70%;
}

.service-card-title {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 24px;
}

.service-card-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-light);
}

/* Portfolio Section */
.portfolio-section {
    padding: 120px 0;
    background: var(--bg-dark);
}

.portfolio-section .section-title {
    font-size: 32px;
    margin-bottom: 64px;
}

.portfolio-grid {
    display: flex;
    gap: 24px;
    height: 538px;
    min-width: 350px;
}

.portfolio-item {
    flex: 1 0 0;
    border: 1px solid rgba(152, 157, 209, 0.05);
    border-radius: var(--radius-24);
    overflow: hidden;
    position: relative;
    min-width: 350px;
}

.portfolio-item-group {
    display: flex;
    flex-direction: column;
    gap: 24px;
    flex: 1 0 0;
    min-width: 350px;
}

.portfolio-item-group .portfolio-item {
    flex: 1 0 0;
    min-width: 100%;
}

.portfolio-item-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background-color: var(--primary-color); */
    opacity: 0.8;
    z-index: 1;
    pointer-events: none;
    border-radius: var(--radius-24);
}

.portfolio-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-24);
    display: block;
    position: relative;
    z-index: 0;
}

/* Portfolio Header Section */
.portfolio-header-section {
    position: relative;
    min-height: 300px;
    padding: 64px 0 40px;
    background-image: url('https://images.unsplash.com/photo-1551288049-bebda4e38f71?w=1920&h=600&fit=crop');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.portfolio-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #1a2947;
    mix-blend-mode: multiply;
    z-index: 1;
}

.portfolio-header-section .container {
    position: relative;
    z-index: 2;
}

.portfolio-breadcrumb {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.breadcrumb-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.breadcrumb-title {
    width: 100%;
    text-align: center;
}

.portfolio-page-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
}

.breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.breadcrumb-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-lighter);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.3s ease;
}

.breadcrumb-link:hover {
    color: var(--neutral-text-white);
}

.breadcrumb-link i {
    font-size: 16px;
}

.breadcrumb-separator {
    color: var(--neutral-text-white);
    font-size: 12px;
}

.breadcrumb-separator i {
    font-size: 11px;
}

.breadcrumb-current {
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 600;
}

.breadcrumb-line {
    width: 50px;
    height: 1px;
    background-color: var(--primary-lighter);
    margin-top: 8px;
}

/* Portfolio Grid Section */
.portfolio-grid-section {
    padding: 120px 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.35) 100%),
        linear-gradient(90deg, rgba(36, 36, 36, 1) 0%, rgba(36, 36, 36, 1) 100%);
}

.portfolio-content {
    padding: 64px 0;
}

.portfolio-row {
    display: flex;
    gap: 24px;
    height: 350px;
    overflow-x: auto;
    overflow-y: hidden;
    min-width: 350px;
}

.portfolio-card {
    position: relative;
    flex: 1 0 0;
    border: 1px solid rgba(152, 157, 209, 0.05);
    border-radius: var(--radius-24);
    overflow: hidden;
    min-height: 350px;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.portfolio-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.portfolio-card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background-color: var(--primary-color); */
    z-index: 1;
    pointer-events: none;
    opacity: 0.8;
    transition: opacity 0.3s ease;
}

.portfolio-card:hover .portfolio-card-overlay {
    opacity: 0.6;
}

.portfolio-card-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 0;
    transition: transform 0.3s ease;
}

.portfolio-card:hover .portfolio-card-image {
    transform: scale(1.05);
}

/* Testimonials Section */


.content_testimonial {
    max-height: 195px;
    overflow-y: auto;
    overflow-x: hidden;
    font-size: 12px;
    scrollbar-width: thin;
    scrollbar-color: var(--primary-color);
    padding: 2px;
    margin-bottom: 30px;
}

/* Scrollbar moderno para Chromium (Chrome, Edge, Brave, etc) */
.content_testimonial::-webkit-scrollbar {
    width: 8px;
}

.content_testimonial::-webkit-scrollbar-track {
    background: var(--primary-color);
    ;
    border-radius: 10px;
}

.content_testimonial::-webkit-scrollbar-thumb {
    background: #c9b5a8;
    border-radius: 10px;
    transition: background 0.3s;
}

.content_testimonial::-webkit-scrollbar-thumb:hover {
    background: var(--primary-color);
}

.testimonials-section {
    padding: 120px 0;
    background-color: var(--neutral-bg-50);
}

.section-text-dark {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-soft);
    line-height: 1.4;
}

.partners-logos {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    justify-content: center;
    align-items: center;
}

.logos-parceiros-mobile {
    display: none;
}

.partner-logo {
    height: 40px;
    min-width: 180px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--neutral-text-soft);
}

.testimonials-slider {
    margin-top: 64px;
}

.testimonials-row {
    min-width: 350px;
    padding-bottom: 16px;
}

.testimonial-card {
    background-color: var(--neutral-bg-100);
    border-radius: var(--radius-24);
    padding: 32px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.testimonial-card-primary {
    background-color: var(--secondary-color);
    color: var(--neutral-text-white);
}

.testimonial-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-soft);
    margin-bottom: 32px;
    line-height: 1.4;
}

.testimonial-card-primary .testimonial-text {
    color: var(--neutral-text-white);
}

.testimonial-author {
    display: flex;
    gap: 16px;
    align-items: center;
}

.testimonial-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    overflow: hidden;
}

.testimonial-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-name {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-black);
    margin-bottom: 2px;
}

.testimonial-card-primary .testimonial-name {
    color: var(--neutral-text-white);
}

.testimonial-role {
    font-size: 12px;
    font-weight: 350;
    color: var(--neutral-text-soft);
}

.testimonial-card-primary .testimonial-role {
    color: var(--neutral-text-white);
}

/* Blog Section */
.blog-section {
    padding: 120px 0;
    background-color: var(--neutral-bg-50);
}

.blog-card {
    background-color: var(--neutral-bg-700);
    border-radius: var(--radius-24);
    overflow: hidden;
    position: relative;
    height: 434px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 12px;
}

.blog-card-large {
    height: 434px;
    min-width: 650px;
}

.blog-row {
    width: 100%;
    padding-bottom: 16px;
}

.blog-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog-date {
    background-color: var(--secondary-color);
    color: var(--neutral-text-white);
    padding: 16px;
    border-radius: var(--radius-24);
    font-size: 14px;
    font-weight: 500;
    position: relative;
    z-index: 2;
    width: fit-content;
    margin-bottom: auto;
}

.blog-content {
    background-color: #272525;
    padding: 16px;
    border-radius: var(--radius-16);
    position: relative;
    z-index: 2;
    bottom: -270px;
    margin-top: auto;
}

.blog-title {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 4px;
}

.blog-excerpt {
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-lighter);
}

.blog-header-content button.blog-search-icon-wrapper {
    background-color: transparent;
    border: none;
    outline: none;
}

/* CTA Section */
.cta-section {
    position: relative;
    padding: 120px 0;
    background: var(--bg-dark);
    background-size: cover;
    background-position: center;
    background-blend-mode: overlay;
}

.cta-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.35);
    z-index: 1;
}

.cta-section .container {
    position: relative;
    z-index: 2;
}

.cta-section .section-title {
    font-size: 32px;
    margin-bottom: 24px;
}

/* Featured Services Section */
.featured-services-section {
    padding: 120px 0;
    background-color: var(--neutral-bg-50);
}

.featured-services-slider {
    display: flex;
    gap: 24px;
    padding-bottom: 16px;
}

.featured-service-link {
    cursor: pointer;
    transition: transform 0.3s ease;
    display: block;
}

.featured-service-link:hover {
    transform: translateY(-5px);
}

.featured-service-link:hover .featured-service-card {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
}

.featured-service-link:hover .featured-service-overlay {
    opacity: 0.6;
}

.featured-service-card {
    position: relative;
    min-width: 180px;
    height: 180px;
    border-radius: var(--radius-24);
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--neutral-bg-500);
    background-image: url('../images/service-bg.jpg');
    background-size: cover;
    background-position: center;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.featured-service-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--neutral-bg-500);
    opacity: 0.8;
    z-index: 1;
    transition: opacity 0.3s ease;
}

.featured-service-icon {
    position: relative;
    z-index: 2;
    width: 60px;
    height: 60px;
    margin: 0 auto;
    color: var(--neutral-text-white);
    font-size: 24px;
}

.featured-service-title {
    position: relative;
    z-index: 2;
    font-size: 16px;
    font-weight: 600;
    color: var(--neutral-text-white);
    text-align: center;
}

/* Footer */
.footer-section {
    padding: 120px 0 0;
    background: #000000;
    color: var(--neutral-text-white);
}

.footer-logo {
    height: 48px;
    width: 264px;
}

.footer-links {
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
}

.footer-link {
    color: var(--neutral-text-light);
    text-decoration: none;
    font-size: 14px;
    font-weight: 350;
    transition: color 0.3s ease;
}

.footer-link:hover {
    color: var(--neutral-text-white);
}

.footer-title {
    font-size: 16px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 24px;
}

.footer-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-list li {
    margin-bottom: 16px;
}

.footer-list a {
    color: var(--neutral-text-light);
    text-decoration: none;
    font-size: 14px;
    font-weight: 350;
    transition: color 0.3s ease;
}

.footer-list a:hover {
    color: var(--neutral-text-white);
}

.footer-text {
    font-size: 14px;
    font-weight: 350;
    color: var(--neutral-text-light);
    margin-bottom: 16px;
}

.footer-bottom {
    padding: 16px 0;
    border-top: 1px solid rgba(233, 233, 233, 0.1);
}

.footer-copyright {
    font-size: 12px;
    font-weight: 500;
    color: var(--neutral-text-light);
}

.btn-scroll-top {
    background: transparent;
    border: none;
    color: var(--neutral-text-light);
    padding: 8px;
    border-radius: var(--radius-16);
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-scroll-top:hover {
    color: var(--neutral-text-white);
    background: rgba(255, 255, 255, 0.1);
}

/* Image fallbacks */
img {
    max-width: 100%;
    height: auto;
}

img[src=""],
img:not([src]),
img[src*="undefined"] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

img[src=""]::after,
img:not([src])::after {
    content: "Imagem";
    color: white;
    font-size: 14px;
}

/* Blog Page Styles */
.blog-header-section {
    position: relative;
    padding: 200px 0 64px;
    background-image: url('../images/blog-header-bg.jpg');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.blog-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #1a2947;
    mix-blend-mode: multiply;
    z-index: 1;
}

.blog-header-section .container {
    position: relative;
    z-index: 2;
}

.breadcrumb-section {
    padding: 64px 0 40px;
    border-bottom: 1px solid var(--primary-lighter);
    margin-bottom: 0;
}

.breadcrumb-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
    text-align: center;
}

.breadcrumb-nav {
    margin-top: 16px;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 12px;
    padding: 0;
    margin: 0;
    list-style: none;
    background: transparent;
    border-radius: 0;
}

.breadcrumb-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 600;
    color: var(--primary-lighter);
}

.breadcrumb-item.active {
    color: var(--neutral-text-light);
}

.breadcrumb-item a {
    color: var(--primary-lighter);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color 0.3s ease;
}

.breadcrumb-item a:hover {
    color: var(--neutral-text-white);
}

.breadcrumb-item:not(:last-child)::after {
    content: '/';
    margin-left: 8px;
    color: var(--neutral-text-white);
    font-weight: 600;
}

/* Blog Post Section */
.blog-post-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);

}

.blog-post-content {
    padding-right: 40px;
}

.blog-date-badge {
    display: inline-block;
    background-color: var(--secondary-color);
    color: var(--neutral-text-white);
    padding: 16px;
    border-radius: var(--radius-24);
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 24px;
}

.blog-post-title {
    font-size: 40px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 24px;
    line-height: 1.2;
}

.blog-post-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-white);
    line-height: 1.4;
}

.blog-post-text p {
    margin-bottom: 24px;
}

.blog-post-text p:last-child {
    margin-bottom: 0;
}

.blog-featured-image {
    border-radius: var(--radius-24);
    overflow: hidden;
}

.blog-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-24);
}

/* Related Articles Section */
.related-articles-section {
    padding: 120px 0;
    color: var(--neutral-text-white);
    background: var(--bg-dark);
}

.related-articles-header {
    margin-bottom: 64px;
}

.related-articles-header .section-title {
    font-size: 32px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
}

.articles-navigation {
    display: flex;
    gap: 16px;
}

.btn-article-nav {
    width: 48px;
    height: 48px;
    border: 1.5px solid #FFF;
    background: transparent;
    border-radius: var(--radius-16);
    color: #FFF;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 12px;
}

.btn-article-nav:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: var(--text-dark);
}

.articles-carousel-wrapper {
    position: relative;
}

.articles-carousel {
    position: relative;
}

.articles-carousel .owl-stage-outer {
    overflow: visible;
}

.article-card {
    width: 100%;
    height: 500px;
    position: relative;
    border-radius: var(--radius-24);
    overflow: hidden;
    padding: 12px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.article-card-image-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.article-card-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.article-card-date {
    position: relative;
    z-index: 2;
    background-color: var(--primary-dark);
    color: var(--neutral-text-white);
    padding: 16px;
    border-radius: var(--radius-24);
    font-size: 14px;
    font-weight: 500;
    width: fit-content;
    margin-bottom: auto;
}

.article-card-content {
    position: absolute;
    width: 95%;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    background-color: var(--neutral-bg-700);
    padding: 16px;
    border-radius: var(--radius-16);
}

.article-card-title {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 4px;
    line-height: 1.2;
}

.article-card-excerpt {
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-lighter);
    margin-bottom: 0;
}

/* Owl Carousel Custom Styles */
.articles-carousel .owl-item {
    padding: 0;
}

.articles-carousel .owl-nav {
    display: none;
}

.articles-carousel .owl-dots {
    display: none;
}

.articles-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

/* Contact Page Styles */
.contact-hero-section {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 104px 0 40px;
    background: linear-gradient(180deg, rgba(29, 29, 29, 0) 0%, #141414 96.852%);
    background-image: url('../images/hero-bg.webp');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.contact-hero-section .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #1a2947;
    mix-blend-mode: multiply;
    z-index: 1;
}

.contact-hero-section .container {
    position: relative;
    z-index: 2;
}

.contact-hero-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
    font-family: 'Rubik', sans-serif;
}

.contact-breadcrumb {
    margin-top: 16px;
}

.contact-breadcrumb .breadcrumb {
    background: transparent;
    padding: 0;
    margin: 0;
}

.contact-breadcrumb .breadcrumb-item {
    color: var(--primary-lighter);
    font-size: 14px;
    font-weight: 600;
}

.contact-breadcrumb .breadcrumb-item a {
    color: var(--primary-lighter);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 8px;
}

.contact-breadcrumb .breadcrumb-item.active {
    color: var(--neutral-text-light);
}

.contact-breadcrumb .breadcrumb-item+.breadcrumb-item::before {
    content: "/";
    color: var(--neutral-text-white);
    padding: 0 8px;
}

/* Contact Section */
.contact-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.contact-section-title {
    font-size: 40px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
    font-family: 'Rubik', sans-serif;
}

.contact-section-subtitle {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.4;
}

/* Contact Form */
.contact-form-wrapper {
    background: rgba(246, 246, 246, 0.05);
    border-radius: var(--radius-24);
    padding: 56px;
}

.contact-form .form-label {
    font-size: 16px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
}

.contact-form .form-label .text-muted {
    font-size: 12px;
    font-weight: 350;
}

.contact-input {
    background: rgba(250, 250, 250, 0.08);
    border: 1px solid rgba(233, 233, 233, 0.15);
    border-radius: var(--radius-16);
    padding: 16px;
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 500;
}

.contact-input::placeholder {
    color: var(--neutral-text-light);
    font-weight: 500;
}

.contact-input:focus {
    background: rgba(250, 250, 250, 0.1);
    border-color: rgba(233, 233, 233, 0.25);
    color: var(--neutral-text-white);
    box-shadow: none;
}

.contact-textarea {
    min-height: 120px;
    resize: vertical;
}

.contact-submit-btn {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    padding: 16px 32px;
    border-radius: var(--radius-16);
    font-size: 18px;
    font-weight: 500;
    width: 100%;
    max-width: 400px;
    transform: all 0.3s ease;
}

.contact-submit-btn:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.contact-form-wrapper form a {
    color: #FFF;
}

/* Contact Info */
.contact-info-wrapper {
    display: flex;
    flex-direction: column;
    gap: 32px;
    min-height: 100%;
}

.contact-info-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    font-family: 'Rubik', sans-serif;
}

.contact-info-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.contact-info-item {
    display: flex;
    gap: 16px;
    align-items: center;
}

.contact-info-icon {
    width: 64px;
    height: 64px;
    background-color: var(--primary-color);
    border-radius: var(--radius-16);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--neutral-text-white);
    font-size: 24px;
    flex-shrink: 0;
}

.contact-info-content {
    flex: 1;
}

.contact-info-link {
    color: var(--neutral-text-white);
    text-decoration: none;
    font-size: 16px;
    font-weight: 350;
    transition: color 0.3s ease;
}

.contact-info-link:hover {
    color: var(--primary-lighter);
}

.contact-map {
    width: 100%;
    height: 301px;
    border-radius: var(--radius-24);
    overflow: hidden;
}

.contact-map iframe {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: var(--radius-24);
}

/* Service Content Page Styles */
.service-hero-section {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 200px 0 64px;
    background-image: url('../images/hero-bg.webp');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.service-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #1a2947;
    mix-blend-mode: multiply;
    z-index: 1;
}

.service-hero-section .container {
    position: relative;
    z-index: 2;
}

.service-breadcrumb-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
}

.breadcrumb-title-box {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    align-items: center;
}

.service-page-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white) !important;
    margin-bottom: 0;
    line-height: 1.2;
    text-align: center;
    font-family: 'Rubik', sans-serif;
}

.service-breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.service-breadcrumb-nav .breadcrumb-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-lighter);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.service-breadcrumb-nav .breadcrumb-link:hover {
    color: var(--neutral-text-white);
}

.service-breadcrumb-nav .breadcrumb-link i {
    font-size: 16px;
}

.service-breadcrumb-nav .breadcrumb-separator {
    color: var(--neutral-text-white);
    font-size: 12px;
}

.service-breadcrumb-nav .breadcrumb-separator i {
    font-size: 11px;
}

.service-breadcrumb-nav .breadcrumb-current {
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
}

.service-breadcrumb-content .breadcrumb-line {
    width: 50px;
    height: 1px;
    background-color: var(--primary-lighter);
    margin-top: 0;
}

.service-content-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.service-image-wrapper {
    width: 100%;
    height: 748px;
    border-radius: var(--radius-24);
    overflow: hidden;
    position: relative;
}

.service-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--radius-24);
}

.service-content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 56px;
    justify-content: center;
    min-height: 748px;
}

.service-content-title {
    font-size: 32px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.service-description {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.service-description p {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.4;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

.service-description p:not(:last-child) {
    margin-bottom: 0;
}

.service-cta-wrapper {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.service-cta-btn {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--neutral-text-white);
    padding: 12px 24px;
    border-radius: var(--radius-16);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.3s ease;
    display: inline-block;
    white-space: nowrap;
}

.service-cta-btn:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    color: var(--neutral-text-white);
}

.service-accordion-wrapper {
    width: 100%;
}

.service-accordion-item {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
        linear-gradient(90deg, rgba(74, 72, 72, 1) 0%, rgba(74, 72, 72, 1) 100%);
    border: 1px solid rgba(238, 238, 238, 0.15);
    border-radius: var(--radius-16);
    padding: 16px 24px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.service-accordion-item:hover {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.3) 100%),
        linear-gradient(90deg, rgba(74, 72, 72, 1) 0%, rgba(74, 72, 72, 1) 100%);
}

.service-accordion-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.service-accordion-title {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-white);
    line-height: 1.5;
    font-family: 'Inter', sans-serif;
}

.service-accordion-icon {
    font-size: 16px;
    color: var(--neutral-text-white);
    transition: transform 0.3s ease;
    flex-shrink: 0;
}

.service-accordion-item.active .service-accordion-icon {
    transform: rotate(180deg);
}

/* Owl Carousel Custom Styles */
.owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -webkit-transform: translateZ(0) scale(1.0, 1.0);
}

.owl-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

.owl-carousel .owl-stage-outer {
    overflow: hidden;
}

/* Owl Carousel Dots */
.owl-theme .owl-dots {
    text-align: center;
    margin-top: 24px;
}

.owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    margin: 0 4px;
}

.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    margin: 5px 7px;
    background: rgba(195, 195, 195, 0.5);
    display: block;
    -webkit-backface-visibility: visible;
    transition: opacity 0.2s ease;
    border-radius: 50%;
}

.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: var(--primary-color);
}

/* Owl Carousel Nav */
.owl-theme .owl-nav {
    margin-top: 10px;
    text-align: center;
    -webkit-tap-highlight-color: transparent;
}

.owl-theme .owl-nav [class*='owl-'] {
    color: var(--neutral-text-white);
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: rgba(255, 255, 255, 0.1);
    display: inline-block;
    cursor: pointer;
    border-radius: 3px;
}

.owl-theme .owl-nav [class*='owl-']:hover {
    background: var(--primary-color);
    color: var(--neutral-text-white);
    text-decoration: none;
}

/* Testimonials Slider Specific */
.testimonials-slider .owl-dots {
    margin-top: 40px;
}

/* Blog Slider Specific */
.blog-row .owl-dots {
    margin-top: 40px;
}

/* Featured Services Slider Specific */
.featured-services-slider .owl-dots {
    margin-top: 32px;
}

.logos-parceiros-3 {
    width: 80% !important;

}

.logos-parceiros-2 {
    width: 90% !important;

}

/* Responsive */
@media (max-width: 992px) {
    .header-section {
        padding: 16px 0;
    }

    .header-section .d-flex {
        flex-wrap: wrap;
        gap: 16px;
    }

    .logo-container {
        order: -1;
        width: 100%;
        justify-content: center;
        margin-bottom: 16px;
    }

    .btn-menu-toggle {
        display: block;
    }

    .header-section .nav-link {
        display: none;
    }

    .header-section .btn-cta {
        display: none;
    }

    .header-section.fixed {
        padding: 12px 0;
    }

    .hero-title {
        font-size: 40px;
    }

    .section-title {
        font-size: 32px;
    }

    .portfolio-grid {
        flex-direction: column;
        height: auto;
    }

    .portfolio-item-group {
        flex-direction: column;
    }

    .portfolio-row {
        flex-direction: column;
        height: auto;
        gap: 16px;
    }

    .portfolio-card {
        min-height: 250px;
        height: 250px;
    }

    .portfolio-header-section {
        min-height: 200px;
        padding: 48px 0 32px;
    }

    .portfolio-page-title {
        font-size: 20px;
    }

    .about-card {
        margin-top: 32px;
    }

    .contact-form-wrapper {
        padding: 32px;
    }

    .contact-section-title {
        font-size: 32px;
    }

    .service-hero-section {
        padding: 150px 0 40px;
        min-height: 200px;
    }

    .service-image-wrapper {
        height: 400px;
    }

    .service-content-wrapper {
        min-height: auto;
        gap: 32px;
        margin-top: 32px;
    }
}

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

    .hero-section {
        min-height: 600px;
        padding: 80px 0;
    }

    .hero-title {
        font-size: 32px;
    }

    .hero-subtitle {
        font-size: 16px;
    }

    .section-title {
        font-size: 28px;
    }

    .section-title-dark {
        font-size: 28px;
    }

    .about-section,
    .services-section,
    .main-services-section,
    .portfolio-section,
    .testimonials-section,
    .blog-section,
    .cta-section,
    .featured-services-section,
    .blog-post-section,
    .related-articles-section {
        padding: 64px 0;
    }

    .blog-header-section {
        padding: 150px 0 40px;
    }

    .breadcrumb-section {
        padding: 40px 0 24px;
    }

    .blog-post-content {
        padding-right: 0;
        margin-bottom: 40px;
    }

    .blog-post-title {
        font-size: 32px;
    }

    .related-articles-header {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 24px;
    }

    .article-card {
        min-width: 320px;
        height: 450px;
    }

    .about-card {
        padding: 24px;
    }

    .service-card {
        height: auto;
        min-height: 300px;
    }

    .hero-buttons {
        flex-direction: column;
        width: 100%;
    }

    .hero-buttons .btn {
        width: 100%;
    }

    .footer-links {
        flex-direction: column;
        gap: 16px;
    }

    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }

    .contact-hero-section {
        min-height: 200px;
        padding: 80px 0 32px;
    }

    .contact-section {
        padding: 64px 0;
    }

    .contact-section-title {
        font-size: 28px;
    }

    .contact-section-subtitle {
        font-size: 16px;
    }

    .contact-form-wrapper {
        padding: 24px;
    }

    .contact-info-wrapper {
        margin-top: 32px;
    }

    .contact-map {
        height: 250px;
    }

    .service-hero-section {
        padding: 120px 0 32px;
        min-height: 180px;
    }

    .service-page-title {
        font-size: 20px;
    }

    .service-content-section {
        padding: 64px 0;
    }

    .service-image-wrapper {
        height: 300px;
    }

    .service-content-wrapper {
        min-height: auto;
        gap: 24px;
    }

    .service-content-title {
        font-size: 28px;
    }

    .service-description p {
        font-size: 16px;
    }

    .portfolio-item {
        min-width: 100% !important;
    }
    .portfolio-grid{
        min-width: 100% !important;
    }

    .portfolio-item-group{
        min-width: 100% !important;
    }
}

/* Empresa/Sobre Page Styles */
.empresa-header-section {
    position: relative;
    min-height: 300px;
    padding: 200px 0 64px;
    background-image: url('../images/hero-bg.webp');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.empresa-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #00000073;
    mix-blend-mode: multiply;
    z-index: 1;
}

.empresa-header-section .container {
    position: relative;
    z-index: 2;
}

.empresa-breadcrumb {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
}

.empresa-page-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    text-align: center;
    font-family: 'Rubik', sans-serif;
}

.empresa-breadcrumb .breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin-top: 8px;
}

.empresa-breadcrumb .breadcrumb-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-lighter);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.empresa-breadcrumb .breadcrumb-link:hover {
    color: var(--neutral-text-white);
}

.empresa-breadcrumb .breadcrumb-link i {
    font-size: 16px;
}

.empresa-breadcrumb .breadcrumb-separator {
    color: var(--neutral-text-white);
    font-size: 12px;
}

.empresa-breadcrumb .breadcrumb-separator i {
    font-size: 11px;
}

.empresa-breadcrumb .breadcrumb-current {
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
}

.empresa-breadcrumb .breadcrumb-line {
    height: 1px;
    width: 50px;
    max-width: 50px;
    background: var(--primary-lighter);
    margin-top: 16px;
}

.empresa-main-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.empresa-content {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.empresa-main-title {
    font-size: 40px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 16px;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.empresa-main-title .text-primary {
    color: var(--primary-color);
}

.empresa-subtitle {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-soft);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.empresa-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-white);
    line-height: 1.4;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

.empresa-feature-box {
    border: 1.5px solid rgba(233, 233, 233, 0.1);
    border-radius: var(--radius-16);
    padding: 16px;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%),
        linear-gradient(90deg, rgba(74, 72, 72, 1) 0%, rgba(74, 72, 72, 1) 100%);
    display: flex;
    flex-direction: column;
    gap: 8px;
    height: 100%;
}

.empresa-feature-icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.empresa-feature-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.empresa-feature-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.5;
    font-family: 'Inter', sans-serif;
}

.empresa-feature-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-light);
    margin-bottom: 0;
    line-height: 1.5;
    font-family: 'Inter', sans-serif;
}

.empresa-side-card {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%),
        linear-gradient(90deg, rgba(74, 72, 72, 1) 0%, rgba(74, 72, 72, 1) 100%);
    border-radius: var(--radius-24);
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 24px;
    height: 100%;
}

.empresa-side-card-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.empresa-side-card-title .text-primary {
    color: var(--primary-color);
}

.empresa-side-card-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-white);
    line-height: 1.4;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

.empresa-mvv-section {
    margin-top: 120px;
    padding: 40px;
    background: color-mix(in srgb, var(--bg-dark) 93%, white);
    border-radius: var(--radius-24);
}

.empresa-mvv-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    margin-bottom: 64px;
}

.empresa-mvv-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
}

.empresa-mvv-title {
    font-size: 32px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.empresa-mvv-text {
    font-size: 18px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.4;
    text-align: center;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

.empresa-mvv-card {
    border-top: 5px solid var(--primary-color);
    border-radius: var(--radius-24);
    padding: 32px;
    background: color-mix(in srgb, var(--bg-dark) 95%, white);
    display: flex;
    flex-direction: column;
    gap: 32px;
    height: 100%;
}

.empresa-mvv-card-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.empresa-mvv-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    font-size: 25px;
    border-radius: 16px;
}

.empresa-mvv-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.empresa-mvv-card-title {
    font-size: 32px;
    font-weight: 500;
    color: var(--primary-color);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
    white-space: nowrap;
}

.empresa-mvv-card-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.5;
    text-align: center;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Empresa Page */
@media (max-width: 991px) {
    .empresa-header-section {
        padding: 150px 0 40px;
        min-height: 250px;
    }

    .empresa-main-section {
        padding: 64px 0;
    }

    .empresa-content {
        gap: 32px;
    }

    .empresa-main-title {
        font-size: 32px;
    }

    .empresa-side-card {
        margin-top: 32px;
    }

    .empresa-mvv-section {
        margin-top: 64px;
        padding: 32px 24px;
    }

    .empresa-mvv-content {
        margin-bottom: 48px;
    }

    .empresa-mvv-title {
        font-size: 28px;
    }

    .empresa-mvv-card {
        margin-bottom: 24px;
    }
}

@media (max-width: 767px) {

    .logos-parceiros-desktop {
        display: none !important;
    }

    .logos-wrapper {
        overflow: hidden;
        width: 100%;
        margin-top: 40px;
    }

    .logos-parceiros-mobile {
        display: flex;
        gap: 2rem;
        width: max-content;
        animation: scroll-left 20s linear infinite;
    }

    .logos-parceiros-mobile img {
        max-height: 40px;
        width: auto;
        opacity: 0.5;
        flex-shrink: 0;
    }

    @keyframes scroll-left {
        from {
            transform: translateX(0);
        }

        to {
            transform: translateX(-50%);
        }
    }


    .empresa-header-section {
        padding: 120px 0 32px;
        min-height: 200px;
    }

    .empresa-page-title {
        font-size: 20px;
    }

    .empresa-main-title {
        font-size: 28px;
    }

    .empresa-subtitle {
        font-size: 20px;
    }

    .empresa-text,
    .empresa-side-card-text {
        font-size: 16px;
    }

    .empresa-mvv-section {
        padding: 24px 16px;
    }

    .empresa-mvv-title {
        font-size: 24px;
    }

    .empresa-mvv-card {
        padding: 24px;
    }

    .empresa-mvv-card-title {
        font-size: 28px;
    }

    .portfolio-item {
        overflow: visible !important;
    }
}

/* Serviços Page Styles */
.servicos-header-section {
    position: relative;
    min-height: 300px;
    padding: 200px 0 64px;
    background-image: url('../images/hero-bg.webp');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.servicos-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #00000073;
    mix-blend-mode: multiply;
    z-index: 1;
}

.servicos-header-section .container {
    position: relative;
    z-index: 2;
}

.servicos-breadcrumb {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
}

.servicos-page-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    text-align: center;
    font-family: 'Rubik', sans-serif;
}

.servicos-breadcrumb .breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin-top: 8px;
}

.servicos-breadcrumb .breadcrumb-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-lighter);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.servicos-breadcrumb .breadcrumb-link:hover {
    color: var(--neutral-text-white);
}

.servicos-breadcrumb .breadcrumb-link i {
    font-size: 16px;
}

.servicos-breadcrumb .breadcrumb-separator {
    color: var(--neutral-text-white);
    font-size: 12px;
}

.servicos-breadcrumb .breadcrumb-separator i {
    font-size: 11px;
}

.servicos-breadcrumb .breadcrumb-current {
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
}

.servicos-breadcrumb .breadcrumb-line {
    height: 1px;
    width: 50px;
    max-width: 50px;
    background: var(--primary-lighter);
    margin-top: 16px;
}

.servicos-main-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.servicos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
    padding: 64px 0;
}

.servico-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.servico-card-link:hover {
    transform: translateY(-5px);
    opacity: 0.9;
}

.servico-card-link:hover .servico-card-content {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.servico-card {
    min-width: 320px;
    border-radius: var(--radius-16);
    overflow: hidden;
}

.servico-card-content {
    min-height: 354px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 24px;
    background:
        color-mix(in srgb, var(--bg-dark) 95%, white);
    border-radius: var(--radius-16);
    border-radius: var(--radius-16);
}

.servico-card-header {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.servico-icon {
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    border-radius: var(--radius-16);
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.25) 0%, rgba(0, 0, 0, 0.25) 100%),
        linear-gradient(90deg, rgba(74, 72, 72, 1) 0%, rgba(74, 72, 72, 1) 100%);
}

.servico-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.servico-card-title {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.servico-card-body {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.servico-card-text {
    font-size: 16px;
    font-weight: 350;
    color: var(--neutral-text-light);
    line-height: 1.5;
    margin-bottom: 0;
    font-family: 'Inter', sans-serif;
}

/* Responsive Styles for Serviços Page */
@media (max-width: 991px) {
    .servicos-header-section {
        padding: 150px 0 40px;
        min-height: 250px;
    }

    .servicos-main-section {
        padding: 64px 0;
    }

    .servicos-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 24px;
        padding: 40px 0;
    }

    .servico-card {
        min-width: 280px;
    }
}

@media (max-width: 767px) {
    .servicos-header-section {
        padding: 120px 0 32px;
        min-height: 200px;
    }

    .servicos-page-title {
        font-size: 20px;
    }

    .servicos-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 32px 0;
    }

    .servico-card {
        min-width: 100%;
    }

    .servico-card-content {
        height: auto;
        min-height: 300px;
    }

    .servico-card-title {
        font-size: 16px;
    }

    .servico-card-text {
        font-size: 14px;
    }
}

/* Blog Page Styles */
.blog-header-section {
    position: relative;
    min-height: 300px;
    padding: 200px 0 64px;
    background-image: url('../images/hero-bg.webp');
    background-size: cover;
    background-position: center;
    background-blend-mode: multiply;
}

.blog-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #00000073;
    mix-blend-mode: multiply;
    z-index: 1;
}

.blog-header-section .container {
    position: relative;
    z-index: 2;
}

.blog-breadcrumb {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
}

.blog-page-title {
    font-size: 22px;
    font-weight: 500;
    color: var(--neutral-text-white);
    margin-bottom: 0;
    line-height: 1.2;
    text-align: center;
    font-family: 'Rubik', sans-serif;
}

.blog-breadcrumb .breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin-top: 8px;
}

.blog-breadcrumb .breadcrumb-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--primary-lighter);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.3s ease;
    font-family: 'Inter', sans-serif;
}

.blog-breadcrumb .breadcrumb-link:hover {
    color: var(--neutral-text-white);
}

.blog-breadcrumb .breadcrumb-link i {
    font-size: 16px;
}

.blog-breadcrumb .breadcrumb-separator {
    color: var(--neutral-text-white);
    font-size: 12px;
}

.blog-breadcrumb .breadcrumb-separator i {
    font-size: 11px;
}

.blog-breadcrumb .breadcrumb-current {
    color: var(--neutral-text-light);
    font-size: 14px;
    font-weight: 600;
    font-family: 'Inter', sans-serif;
}

.blog-breadcrumb .breadcrumb-line {
    height: 1px;
    width: 50px;
    max-width: 50px;
    background: var(--primary-lighter);
    margin-top: 16px;
}

.blog-main-section {
    padding: 104px 0;
    background: var(--bg-dark);
    color: var(--neutral-text-white);
}

.blog-content-wrapper {
    display: flex;
    flex-direction: column;
    gap: 56px;
    padding: 64px 0;
}

.blog-header-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-width: 350px;
}

.blog-section-title {
    font-size: 32px;
    font-weight: 500;
    color: var(--neutral-text-white);
    mix-blend-mode: difference;
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
    white-space: nowrap;
    min-width: 350px;
}

.blog-search-field {
    position: relative;
    border: 1.5px solid #e9e9e9;
    border-radius: var(--radius-16);
    padding: 12px;
    background: transparent;
    max-width: 350px;
    flex: 1 0 0;
    min-width: 200px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.blog-search-input {
    background: transparent;
    border: none;
    outline: none;
    color: #e9e9e9;
    font-size: 16px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    flex: 1;
    padding-right: 8px;
}

.blog-search-input::placeholder {
    color: #5e5e5e;
}

.blog-search-icon-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.blog-search-icon {
    color: #7f7f7f;
    font-size: 24px;
    cursor: pointer;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
    grid-auto-rows: 500px;
}

.blog-card-large {
    grid-column: span 2;
}

@media (max-width: 1439px) and (min-width: 992px) {
    .blog-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .blog-card-large {
        grid-column: span 2;
    }
}

.blog-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
    transition: transform 0.3s ease, opacity 0.3s ease;
    height: 100%;
}

.blog-card-link:hover {
    transform: translateY(-5px);
    opacity: 0.9;
}

.blog-card-link:hover .blog-card {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

.blog-card {
    position: relative;
    height: 500px;
    border-radius: var(--radius-24);
    overflow: hidden;
    padding: 12px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.blog-card-small {
    min-width: 280px;
    flex: 1 0 0;
}

.blog-card-large {
    min-width: 342px;
    flex: 1 0 0;
}

.blog-card-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
}

.blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.blog-card-date {
    position: relative;
    z-index: 2;
    background: var(--secondary-color);
    color: var(--neutral-text-white);
    padding: 16px;
    border-radius: var(--radius-24);
    font-size: 14px;
    font-weight: 500;
    font-family: 'Inter', sans-serif;
    align-self: flex-start;
    margin-bottom: auto;
}

.blog-card-content {
    position: relative;
    z-index: 2;
    background: #272525;
    padding: 16px;
    border-radius: var(--radius-16);
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: auto;
}

.blog-card-title {
    font-size: 18px;
    font-weight: 500;
    color: var(--neutral-text-light);
    margin-bottom: 0;
    line-height: 1.2;
    font-family: 'Rubik', sans-serif;
}

.blog-card-subtitle {
    font-size: 14px;
    font-weight: 500;
    color: var(--primary-lighter);
    margin-bottom: 0;
    line-height: 1.5;
    font-family: 'Inter', sans-serif;
}

.blog-pagination {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px;
    min-width: 350px;
}

.blog-pagination-btn {
    border: 1.5px solid var(--neutral-text-white);
    border-radius: var(--radius-16);
    padding: 12px;
    background: transparent;
    color: var(--neutral-text-white);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    transition: all 0.3s ease;
}

.blog-pagination-btn:hover {
    background: rgba(255, 255, 255, 0.1);
}

.blog-pagination-btn i {
    font-size: 24px;
}

.blog-pagination-prev i {
    transform: rotate(180deg);
}

/* Botões de paginação destacados com secondary-color */
.btn-pagination-prev,
.btn-pagination-next {
    background-color: var(--secondary-color);
    border: 1px solid var(--secondary-color);
    border-radius: var(--radius-16);
    padding: 12px;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn-pagination-prev:hover,
.btn-pagination-next:hover {
    background-color: var(--secondary-color);
    opacity: 0.9;
    transform: scale(1.05);
    text-decoration: none;
    color: #ffffff;
}

.btn-pagination-prev i,
.btn-pagination-next i {
    font-size: 24px;
}

.main-services-section .badge-custom,
.cta-section .badge-custom,
.about-section .badge-custom,
.empresa-mvv-section .badge-custom {
    color: var(--neutral-text-white);
}

.active>.page-link,
.page-link.active {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
}

.page-link {
    color: var(--secondary-color);
}

/* Responsive Styles for Blog Page */
@media (max-width: 991px) {
    .blog-header-section {
        padding: 150px 0 40px;
        min-height: 250px;
    }

    .blog-main-section {
        padding: 64px 0;
    }

    .blog-content-wrapper {
        gap: 40px;
        padding: 40px 0;
    }

    .blog-header-content {
        flex-direction: column;
        align-items: flex-start;
    }

    .blog-section-title {
        min-width: 100%;
    }

    .blog-search-field {
        max-width: 100%;
        width: 100%;
    }

    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .blog-card-large {
        grid-column: span 2;
        min-width: 100%;
    }
}

@media (max-width: 767px) {
    .blog-header-section {
        padding: 120px 0 32px;
        min-height: 200px;
    }

    .blog-page-title {
        font-size: 20px;
    }

    .blog-section-title {
        font-size: 28px;
    }

    .blog-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .blog-card {
        height: 400px;
    }

    .blog-card-small,
    .blog-card-large {
        min-width: 100%;
        grid-column: span 1;
    }

    .blog-pagination {
        justify-content: center;
        width: 100%;
    }

    .logo-container {
        width: 50%;
    }
    .header{
        background-color: var(--bg-dark) !important;
        position: static;
    }

    .header .btn-primary-custom{
        width: 100%;
    }

    .header .img-fluid{
        max-width: 160px;
    }
}

/* ==========================================================================
   Seção de Regiões
   ========================================================================== */

   .section-regioes {
    padding: 60px 0;
    background: #f5f5f5;
  }
  
  .section-regioes h2 {
    font-size: 28px;
    color: var(--brand-primary-dark, var(--primary-color, #242424));
    margin-bottom: 32px;
    font-weight: 600;
    text-align: center;
  }
  
  .regioes-mpi {
    max-width: 1400px;
    margin: 0 auto;
  }
  
  /* Grid de Estados */
  .regioes__grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0;
    margin-bottom: 0px;
    background: transparent;
    overflow: hidden;
    border-radius: 4px;
  }
  
  .regioes__menu-item {
    background: #f8f8f8;
    border: none;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    padding: 16px 4px;
    font-size: 9px;
    font-weight: 500;
    color: #333;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
  }
  
  .regioes__menu-item:hover {
    background: #e8e8e8;
    color: var(--brand-primary-dark, var(--primary-color, #242424));
  }
  
  .regioes__menu-item.active {
    background: var(--brand-primary-dark, var(--primary-color, #242424));
    color: #ffffff;
    font-weight: 600;
  }
  
  /* Remove borda direita do último item de cada linha */
  .regioes__menu-item:nth-child(12),
  .regioes__menu-item:nth-child(24),
  .regioes__menu-item:nth-child(26) {
    border-right: none;
  }
  
  /* Remove borda inferior da última linha */
  .regioes__menu-item:nth-child(n+25) {
    border-bottom: none;
  }
  
  /* Conteúdo das Cidades */
  .regioes__content {
      /* background: #ffffff; */
      border-radius: 4px;
      padding: 10px 2px;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  }
  
  .regioes__content ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 16px 12px;
  }
  
  .regioes__content ul li {
    font-size: 10px;
    color: #555;
    padding: 8px 12px;
    background: #f9f9f9;
    border-radius: 4px;
    transition: all 0.2s ease;
    text-align: center;
  }
  
  .regioes__content ul li:hover {
    background: var(--secondary-lighter);
    color: var(--brand-primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  }
  
  .regioes__content ul li strong {
    font-weight: 500;
  }
  
  /* Responsivo para Tablets */
  @media (max-width: 1200px) {
    .regioes__grid {
      grid-template-columns: repeat(8, 1fr);
    }
    
    .regioes__content ul {
      grid-template-columns: repeat(5, 1fr);
    }
    
    .regioes__menu-item:nth-child(8),
    .regioes__menu-item:nth-child(16),
    .regioes__menu-item:nth-child(24) {
      border-right: none;
    }
    
    .regioes__menu-item:nth-child(12),
    .regioes__menu-item:nth-child(26) {
      border-right: 1px solid #e0e0e0;
    }
  }
  
  @media (max-width: 991px) {
    .section-regioes h2 {
      font-size: 24px;
      margin-bottom: 24px;
    }
    
    .regioes__grid {
      grid-template-columns: repeat(6, 1fr);
    }
    
    .regioes__content {
      padding: 24px;
    }
    
    .regioes__content ul {
      grid-template-columns: repeat(4, 1fr);
      gap: 12px 8px;
    }
    
    .regioes__menu-item {
      padding: 14px 10px;
      font-size: 13px;
    }
    
    .regioes__menu-item:nth-child(6),
    .regioes__menu-item:nth-child(12),
    .regioes__menu-item:nth-child(18),
    .regioes__menu-item:nth-child(24) {
      border-right: none;
    }
    
    .regioes__menu-item:nth-child(8),
    .regioes__menu-item:nth-child(16),
    .regioes__menu-item:nth-child(26) {
      border-right: 1px solid #e0e0e0;
    }
  }
  
  /* Responsivo para Mobile */
  @media (max-width: 768px) {
    .section-regioes {
      padding: 40px 0;
    }
    
    .section-regioes h2 {
      font-size: 20px;
      padding: 0 16px;
    }
    
    .regioes__grid {
      grid-template-columns: repeat(4, 1fr);
    }
    
    .regioes__content {
      padding: 20px 16px;
    }
    
    .regioes__content ul {
      grid-template-columns: repeat(2, 1fr);
      gap: 10px 8px;
    }
    
    .regioes__content ul li {
      font-size: 13px;
      padding: 6px 8px;
    }
    
    .regioes__menu-item {
      padding: 12px 8px;
      font-size: 12px;
    }
    
    .regioes__menu-item:nth-child(4n) {
      border-right: none;
    }
    
    .regioes__menu-item:nth-child(6),
    .regioes__menu-item:nth-child(8),
    .regioes__menu-item:nth-child(12),
    .regioes__menu-item:nth-child(16),
    .regioes__menu-item:nth-child(18),
    .regioes__menu-item:nth-child(24),
    .regioes__menu-item:nth-child(26) {
      border-right: 1px solid #e0e0e0;
    }
  }
  
  @media (max-width: 480px) {
    .regioes__grid {
      grid-template-columns: repeat(3, 1fr);
    }
    
    .regioes__content ul {
      grid-template-columns: 1fr;
    }
    
    .regioes__menu-item:nth-child(3n) {
      border-right: none;
    }
    
    .regioes__menu-item:nth-child(4n),
    .regioes__menu-item:nth-child(6),
    .regioes__menu-item:nth-child(8),
    .regioes__menu-item:nth-child(12),
    .regioes__menu-item:nth-child(16),
    .regioes__menu-item:nth-child(18),
    .regioes__menu-item:nth-child(24),
    .regioes__menu-item:nth-child(26) {
      border-right: 1px solid #e0e0e0;
    }
  }
  