/* PrivaGov — logos de marca (sobrescreve regras do tema) */
.solutek_nav_manu.style-three:not(.sticky) {
    background-color: #ffffff !important;
}

.solutek_nav_manu.style-three:not(.sticky) .solutek_menu > ul.nav_scroll > li > a {
    color: #232323 !important;
}

.solutek_nav_manu.style-three.sticky .solutek_menu > ul.nav_scroll > li > a {
    color: #ffffff !important;
}

.solutek_nav_manu .logo {
    display: flex;
    align-items: center;
    min-height: 84px;
}

.solutek_nav_manu.sticky .logo {
    min-height: 76px;
}

.solutek_nav_manu .logo_img img,
.solutek_nav_manu .main_sticky img {
    width: auto !important;
    height: 78px;
    max-width: 300px;
    object-fit: contain;
}

.solutek_nav_manu.sticky .main_sticky img {
    height: 70px;
    max-width: 270px;
}

.footer-logo img,
.nav-logo img {
    width: auto !important;
    height: 70px;
    max-width: 260px;
    object-fit: contain;
}

/* Cabeçalho — menu alinhado, negrito, espaçamento equilibrado (desktop) */
@media (min-width: 992px) {
    .solutek_nav_manu .solutek_menu > ul.nav_scroll {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center;
    }

    .solutek_nav_manu .solutek_menu > ul.nav_scroll > li {
        flex: 0 0 auto;
    }

    .solutek_nav_manu .solutek_menu > ul.nav_scroll > li > a {
        margin: 18px 12px !important;
        padding: 0;
        font-size: 15px;
        font-weight: 600;
        white-space: nowrap;
        line-height: 1.2;
    }

    .solutek_nav_manu.style-three .solutek_menu > ul.nav_scroll > li > a {
        margin: 18px 11px !important;
    }

    .solutek_nav_manu.style-three .header-menu-btn {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        gap: 12px;
        flex-wrap: nowrap;
        width: 100%;
    }

    .solutek_nav_manu.style-three .sidebar-button,
    .solutek_nav_manu.style-three .solutek-btn {
        display: flex;
        align-items: center;
        margin-left: 0 !important;
        flex-shrink: 0;
    }

    .solutek_nav_manu.style-three .sidebar-button a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 44px;
        width: 44px;
        padding: 0;
        line-height: 1;
    }

    .solutek_nav_manu.style-three .nav-btn.navSidebar-button a i {
        color: #ff3b00 !important;
    }

    .solutek_nav_manu.style-three .solutek-btn a.btn-2 {
        font-size: 13px;
        font-weight: 600;
        padding: 12px 16px;
        white-space: nowrap;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
}

@media (min-width: 1400px) {
    .solutek_nav_manu .solutek_menu > ul.nav_scroll > li > a {
        margin: 18px 14px !important;
    }
}

@media (min-width: 992px) and (max-width: 1399px) {
    .solutek_nav_manu .solutek_menu > ul.nav_scroll > li > a {
        margin: 18px 9px !important;
        font-size: 14px;
    }
}

/* =========================================================
   MOBILE ONLY — max-width: 991px (não altera desktop)
   ========================================================= */
@media (max-width: 991px) {
    body {
        overflow-x: hidden;
    }

    .container,
    .container-fluid {
        padding-left: 16px;
        padding-right: 16px;
    }

    /* Faixa superior — mais compacta */
    .top-header-area {
        padding: 8px 0;
    }

    .top-header-area .top-header-social-icon {
        display: none;
    }

    .top-header-area .header-info ul {
        margin: 0;
        padding: 0;
    }

    .top-header-area .header-info ul li {
        display: block;
        margin-right: 0;
        margin-bottom: 4px;
        font-size: 13px;
        line-height: 1.4;
    }

    .top-header-area .header-info ul li:last-child {
        margin-bottom: 0;
    }

    /* Menu mobile — marca PrivaGov (logo ou texto) */
    .mean-container .mean-bar::before {
        content: "" !important;
        display: none !important;
    }

    .mean-container .mean-bar {
        min-height: 58px;
        padding-top: 0;
        background: #ff3b00 !important;
    }

    .privagov-mobile-brand {
        position: absolute;
        left: 14px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 1001;
        display: inline-flex;
        align-items: center;
        max-width: calc(100% - 72px);
        text-decoration: none;
    }

    .privagov-mobile-brand img {
        display: block;
        height: 38px;
        width: auto;
        max-width: 168px;
        object-fit: contain;
    }

    .privagov-mobile-brand span {
        display: none;
        color: #ffffff;
        font-size: 20px;
        font-weight: 700;
        letter-spacing: 0.02em;
        line-height: 1;
        white-space: nowrap;
    }

    .privagov-mobile-brand.text-only span {
        display: inline;
    }

    .mean-container a.meanmenu-reveal {
        padding: 16px 18px;
    }

    .mean-container .mean-nav ul li a {
        font-size: 15px;
        padding: 14px 5%;
        line-height: 1.35;
    }

    .mobile-menu-area {
        background: #ffffff !important;
    }

    /* Hero home — só banner 2 (diagnóstico) no mobile */
    .hero-slide-desktop-only {
        display: none !important;
    }

    .hero-active .owl-item .hero-slide-desktop-only {
        display: none !important;
    }

    /* Hero home */
    .hero-area,
    .hero-area.style-three {
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 88px 0 44px !important;
    }

    .hero-area.style-three .hero-contant {
        padding-top: 16px !important;
        text-align: center;
    }

    .hero-area.style-three .hero-contant h6 {
        margin-left: 0 !important;
        font-size: 11px !important;
        line-height: 1.45 !important;
        letter-spacing: 0.06em;
        padding: 0 8px;
    }

    .hero-area.style-three .hero-contant h6::before,
    .hero-area.style-three .hero-contant h6::after {
        display: none !important;
    }

    .hero-area.style-three .hero-contant h1,
    .hero-area.style-three .hero-contant span {
        font-size: 1.7rem !important;
        line-height: 1.25 !important;
        display: inline !important;
        margin-right: 6px;
    }

    .hero-area.style-three .hero-contant p {
        font-size: 15px !important;
        line-height: 1.55 !important;
        padding: 12px 6px 22px !important;
        margin: 0 auto;
        max-width: 36rem;
    }

    .hero-area.style-three .hero-contant p a {
        word-break: break-word;
    }

    .hero-area.style-three .solutek-btn {
        display: block;
        margin: 0 auto 12px;
        text-align: center;
    }

    .hero-area.style-three .hero-btn-3,
    .hero-area.style-three .hero-left-shape,
    .hero-area.style-three .hero-thumb-shape {
        display: none !important;
    }

    .hero-thumb-3 {
        margin-top: 20px;
        text-align: center;
    }

    .hero-thumb-3 .hero-img img {
        max-width: 88%;
        height: auto;
    }

    .hero-active .owl-prev,
    .hero-active .owl-next {
        display: none !important;
    }

    /* Títulos de seção */
    h1.section-main-title,
    h1.section-main-title2 {
        font-size: 1.55rem !important;
        line-height: 1.3 !important;
    }

    h6.section-sub-title {
        font-size: 12px !important;
        letter-spacing: 0.08em;
    }

    p.section-title-descr,
    .section-title p {
        font-size: 15px !important;
        line-height: 1.55 !important;
        width: 100% !important;
        max-width: none !important;
        padding: 0 4px;
    }

    /* Breadcrumb páginas internas */
    .breadcumb-area {
        padding: 92px 0 48px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    .breadcumb-content {
        text-align: center;
    }

    .breadcumb-content h4 {
        font-size: 1.4rem !important;
        line-height: 1.3 !important;
        margin-bottom: 10px;
    }

    .breadcumb-list {
        justify-content: center;
        flex-wrap: wrap;
        gap: 4px;
    }

    .breadcumb-content ul li {
        font-size: 13px;
    }

    /* Processo de trabalho — imagem + círculo pontilhado centralizados */
    .working-proces-area .working-process-box,
    .working-proces-area .col-lg-4 .working-process-box,
    .working-proces-area .col-md-6 .working-process-box,
    .working-proces-area .col-sm-6 .working-process-box {
        text-align: center !important;
        padding: 0 12px 28px !important;
        margin-bottom: 24px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .working-proces-area .working-process-box:before,
    .working-proces-area .working-process-box:after {
        content: none !important;
        display: none !important;
        background: none !important;
    }

    .working-proces-area .process-thumb {
        position: relative !important;
        width: 210px !important;
        height: 210px !important;
        margin: 0 auto 24px !important;
        padding: 0 !important;
        display: block !important;
        overflow: visible !important;
    }

    .working-proces-area .process-thumb img {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        right: auto !important;
        bottom: auto !important;
        z-index: 2 !important;
        width: 168px !important;
        height: 168px !important;
        max-width: 168px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
        object-fit: cover !important;
        border-radius: 50% !important;
        transform: translate(-50%, -50%) !important;
        -webkit-transform: translate(-50%, -50%) !important;
    }

    .working-proces-area .process-thumb:before {
        position: absolute !important;
        content: "" !important;
        left: 50% !important;
        top: 50% !important;
        right: auto !important;
        bottom: auto !important;
        width: 210px !important;
        height: 210px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 2px dashed #ff3c00 !important;
        border-radius: 50% !important;
        background: transparent !important;
        transform: translate(-50%, -50%) !important;
        -webkit-transform: translate(-50%, -50%) !important;
        animation: none !important;
        -webkit-animation: none !important;
        z-index: 1 !important;
        box-sizing: border-box !important;
    }

    .working-proces-area .process-number {
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        z-index: 3 !important;
        width: 100% !important;
        height: 100% !important;
        pointer-events: none !important;
    }

    .working-proces-area .process-number span {
        position: absolute !important;
        left: 12px !important;
        top: 22px !important;
        right: auto !important;
        bottom: auto !important;
        width: 42px !important;
        height: 42px !important;
        line-height: 42px !important;
        font-size: 18px !important;
        margin: 0 !important;
        transform: none !important;
    }

    .working-proces-area .process-content {
        text-align: center !important;
        width: 100% !important;
    }

    .working-proces-area .process-content h4 {
        text-align: center !important;
    }

    .working-proces-area .process-content p {
        text-align: center !important;
    }

    /* Serviços / módulos */
    .single-service-box,
    .service-box,
    .diagnostico-question-box {
        margin-bottom: 18px;
    }

    .service-title,
    .service-box-content h4 {
        font-size: 1.1rem !important;
        line-height: 1.35 !important;
    }

    .service-desc,
    .service-box-content p,
    .blog-details-desc,
    .footer-widget-text,
    .newsletter-text {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    /* Formulários — evita zoom no iOS */
    input,
    select,
    textarea,
    .contact_from_box input,
    .contact_from_box textarea,
    .contact_from_box select {
        font-size: 16px !important;
    }

    .diagnostico-options .diagnostico-option,
    .diagnostico-options label {
        display: flex !important;
        align-items: center !important;
        font-size: 15px !important;
        line-height: 18px !important;
        min-height: 24px;
    }

    .diagnostico-options .diagnostico-option input[type="radio"],
    .diagnostico-options label input[type="radio"] {
        top: -2px;
    }

    .diagnostico-options .consent-text {
        line-height: 18px !important;
    }

    .legal-form-consent:not(.diagnostico-options) label {
        font-size: 15px !important;
        line-height: 1.45 !important;
    }

    /* Pricing */
    .pricing-single-box,
    .pricing-area .col-lg-4,
    .pricing-area .col-md-6 {
        margin-bottom: 20px;
    }

    .pricing-head h3,
    .pricing-head h4 {
        font-size: 1.15rem !important;
    }

    .pricing-price h2 {
        font-size: 2rem !important;
    }

    /* Rodapé */
    .footer-widget {
        margin-bottom: 28px;
    }

    .footer-widget.left,
    .footer-widget-newsletter {
        text-align: left;
    }

    .footer-logo {
        text-align: center;
    }

    .footer-widget .widget-title h2 {
        font-size: 1.1rem !important;
    }

    .copyright {
        text-align: center;
    }

    .copyright-list ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 12px;
        padding: 0;
    }

    .copyright-list ul li {
        font-size: 13px;
    }

    /* CTAs e botões */
    .solutek-btn,
    .btn,
    .header-button a,
    .pricing-btn,
    .quote_button .btn {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 12px 18px;
        font-size: 14px;
        line-height: 1.3;
        white-space: normal;
        text-align: center;
    }

    /* FAQ / accordion */
    .accordion-button,
    .faq-content p {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }

    /* Decorações que estouram layout */
    .hero-left-shape,
    .service-shape,
    .service-shape2,
    .service-shape3,
    .faq-shape {
        display: none !important;
    }

    /* Sidebar painel */
    .xs-sidebar-group .content-inner .logo img {
        height: 52px;
        width: auto;
        max-width: 200px;
        object-fit: contain;
    }

    .solutek_nav_manu .logo {
        min-height: 72px;
    }

    .solutek_nav_manu .logo_img img,
    .solutek_nav_manu .main_sticky img {
        height: 62px;
        max-width: 230px;
    }

    .solutek_nav_manu.sticky .main_sticky img {
        height: 58px;
        max-width: 210px;
    }

    .footer-logo img,
    .nav-logo img {
        height: 58px;
        max-width: 220px;
    }
}

@media (max-width: 767px) {
    .working-proces-area .process-thumb {
        width: 190px !important;
        height: 190px !important;
        margin-bottom: 20px !important;
    }

    .working-proces-area .process-thumb img {
        width: 150px !important;
        height: 150px !important;
        max-width: 150px !important;
    }

    .working-proces-area .process-thumb:before {
        width: 190px !important;
        height: 190px !important;
    }

    .working-proces-area .process-number span {
        left: 8px !important;
        top: 18px !important;
        width: 38px !important;
        height: 38px !important;
        line-height: 38px !important;
        font-size: 16px !important;
    }

    .hero-area,
    .hero-area.style-three {
        padding: 82px 0 36px !important;
    }

    .hero-area.style-three .hero-contant h1,
    .hero-area.style-three .hero-contant span {
        font-size: 1.5rem !important;
    }

    h1.section-main-title,
    h1.section-main-title2 {
        font-size: 1.35rem !important;
    }

    .breadcumb-content h4 {
        font-size: 1.25rem !important;
    }

  .top-header-area .header-info ul li:not(.exam-gmail) {
        display: none;
    }

    .top-header-area .header-info ul li.exam-gmail {
        font-size: 12px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .privagov-mobile-brand img {
        height: 34px;
        max-width: 148px;
    }

    .privagov-mobile-brand.text-only span {
        font-size: 18px;
    }

    .footer-logo img,
    .nav-logo img {
        height: 54px;
        max-width: 200px;
    }
}

@media (max-width: 575px) {
    .hero-area.style-three .hero-contant h1,
    .hero-area.style-three .hero-contant span {
        font-size: 1.35rem !important;
    }

    .hero-area.style-three .hero-contant h6 {
        font-size: 10px !important;
    }

    h1.section-main-title,
    h1.section-main-title2 {
        font-size: 1.2rem !important;
    }

    .privagov-mobile-brand {
        left: 12px;
        max-width: calc(100% - 64px);
    }

    .privagov-mobile-brand img {
        height: 30px;
        max-width: 128px;
    }

    .privagov-mobile-brand.text-only span {
        font-size: 17px;
    }

    .mean-container .mean-nav ul li a {
        font-size: 14px;
        padding: 13px 5%;
    }
}
