/* Auditoria final: elimina conflitos antigos e mantém apenas a estrutura válida. */
.teluz-custom-footer { display:none !important; visibility:hidden !important; height:0 !important; overflow:hidden !important; }

/* Rodapé nativo refinado, sem criar outro rodapé. */
.teluz-native-footer-logo {
    width:auto !important;
    height:auto !important;
    max-width:285px !important;
    max-height:120px !important;
    object-fit:contain !important;
}
.teluz-native-copyright {
    width:100%;
    padding:22px max(24px, calc((100vw - 1440px)/2));
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
    border-top:1px solid rgba(20,22,26,.12);
    color:#303238;
    font-size:13px;
}
.teluz-native-copyright--created { margin-top:20px; }
.teluz-native-aio { display:inline-flex !important; align-items:center; gap:9px; color:inherit !important; text-decoration:none !important; }
.teluz-native-aio img { width:auto !important; height:24px !important; max-width:74px !important; object-fit:contain !important; }

/* Cabeçalho móvel sempre antes do banner. */
.teluz-mobile-header { display:none; }
@media (max-width:1024px) {
    #page { display:flex !important; flex-direction:column !important; }
    #page > .teluz-mobile-header { order:-100 !important; }
    #page > .teluz-home-slider { order:-90 !important; }
    #page > #content { order:0 !important; }

    #page > #masthead,
    #page > .site-header,
    #page > .elementor-location-header,
    #page > header.elementor-location-header,
    #page > .hfe-header,
    #page > header.hfe-header,
    .teluz-desktop-header { display:none !important; }

    .teluz-mobile-header--clean {
        position:relative !important;
        inset:auto !important;
        z-index:10030 !important;
        display:block !important;
        width:100% !important;
        min-height:88px !important;
        margin:0 !important;
        background:#fff !important;
        border-bottom:1px solid #e8e9ec !important;
        box-shadow:0 8px 22px rgba(0,0,0,.10) !important;
        transform:none !important;
    }
    .teluz-mobile-header__inner {
        width:calc(100% - 28px) !important;
        min-height:88px !important;
        margin:0 auto !important;
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:18px !important;
    }
    .teluz-mobile-header__brand { display:flex !important; align-items:center !important; min-width:0 !important; }
    .teluz-mobile-header__brand img {
        display:block !important;
        width:min(210px,58vw) !important;
        max-width:210px !important;
        max-height:64px !important;
        height:auto !important;
        object-fit:contain !important;
    }
    .teluz-mobile-menu-trigger {
        position:relative !important;
        z-index:2 !important;
        width:50px !important;
        height:50px !important;
        min-width:50px !important;
        display:grid !important;
        place-items:center !important;
        padding:0 !important;
        color:#fff !important;
        background:#d71920 !important;
        border:0 !important;
        border-radius:0 !important;
        box-shadow:0 9px 22px rgba(215,25,32,.24) !important;
    }
    .teluz-mobile-menu-trigger__lines { width:23px !important; height:18px !important; display:flex !important; flex-direction:column !important; justify-content:space-between !important; }
    .teluz-mobile-menu-trigger__lines i { display:block !important; width:100% !important; height:2px !important; background:#fff !important; }
    .teluz-mobile-menu-trigger__lines i:nth-child(2) { width:16px !important; margin-left:auto !important; }

    .industras-mobile-nav {
        position:fixed !important;
        top:0 !important;
        left:0 !important;
        bottom:0 !important;
        z-index:10060 !important;
        width:min(88vw,400px) !important;
        height:100dvh !important;
        overflow-y:auto !important;
        background:#fff !important;
        box-shadow:24px 0 60px rgba(0,0,0,.24) !important;
        transform:translate3d(-105%,0,0) !important;
        transition:transform .32s cubic-bezier(.22,.75,.22,1) !important;
    }
    html.mobile-nav-active .industras-mobile-nav { transform:translate3d(0,0,0) !important; }
    .industras-overlay { z-index:10050 !important; background:rgba(3,6,9,.74) !important; }
    .industras-mobile-nav .mobile-nav-tabs { min-height:82px !important; padding:0 74px 0 24px !important; display:flex !important; align-items:center !important; background:#15171b !important; border-bottom:3px solid #d71920 !important; }
    .industras-mobile-nav .mobile-nav-tabs li { color:#fff !important; font-weight:800 !important; letter-spacing:.08em !important; }
    .mobile-nav-close { top:17px !important; right:17px !important; width:46px !important; height:46px !important; color:#fff !important; background:#d71920 !important; }
    .industras-mobile-nav .mobile-menu-tab { padding:12px 24px 34px !important; }
    .industras-mobile-nav .menu-item { position:relative !important; }
    .industras-mobile-nav .menu-item > a { min-height:56px !important; padding:17px 52px 17px 4px !important; display:flex !important; align-items:center !important; color:#202228 !important; border-bottom:1px solid #e7e8eb !important; font-size:16px !important; font-weight:700 !important; text-decoration:none !important; }
    .industras-mobile-nav .dropdown-toggle { position:absolute !important; top:6px !important; right:0 !important; width:44px !important; height:44px !important; display:grid !important; place-items:center !important; padding:0 !important; background:#f1f2f4 !important; color:#1d2025 !important; border:0 !important; }
    .industras-mobile-nav .dropdown-toggle::after { content:"" !important; width:8px !important; height:8px !important; border-right:2px solid currentColor !important; border-bottom:2px solid currentColor !important; transform:rotate(45deg) !important; transition:transform .2s ease !important; }
    .industras-mobile-nav .menu-item.teluz-submenu-open > .dropdown-toggle { color:#fff !important; background:#d71920 !important; }
    .industras-mobile-nav .menu-item.teluz-submenu-open > .dropdown-toggle::after { transform:rotate(225deg) !important; }
    .industras-mobile-nav .menu-item-has-children > .sub-menu { display:none !important; margin:0 !important; padding:5px 0 10px 14px !important; background:#f7f7f8 !important; border-left:3px solid #d71920 !important; }
    .industras-mobile-nav .menu-item-has-children.teluz-submenu-open > .sub-menu { display:block !important; }
    .industras-mobile-nav .sub-menu .menu-item > a { min-height:42px !important; padding:10px 45px 10px 12px !important; font-size:14px !important; font-weight:600 !important; }
    .industras-mobile-nav .sub-menu .sub-menu { margin-left:10px !important; background:#fff !important; border-left-color:rgba(215,25,32,.42) !important; }

    .teluz-native-footer-logo { max-width:225px !important; max-height:94px !important; }
    .teluz-native-copyright { padding:20px 22px !important; flex-direction:column !important; align-items:flex-start !important; }
}

/* =========================================================
 * AJUSTES VISUAIS — CARDS E TIPOGRAFIA (28/07/2026)
 * Mantém o banner principal e as animações originais intactos.
 * ======================================================= */

:root {
    --teluz-red: #d71920;
    --teluz-red-dark: #b71319;
    --teluz-ink: #202228;
    --teluz-text: #5f646d;
    --teluz-line: #e1e3e7;
}

/* Cards superiores da home: vermelho no estado normal e branco no hover. */
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box {
    background-color: var(--teluz-red) !important;
    border-color: var(--teluz-red) !important;
    transition: background-color .28s ease, border-color .28s ease, box-shadow .28s ease, transform .28s ease !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon {
    color: #ffffff !important;
    fill: #ffffff !important;
    background-color: rgba(153, 8, 14, .24) !important;
    border-color: transparent !important;
    transition: color .28s ease, fill .28s ease, background-color .28s ease !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon i,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon-box-title,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon-box-title a,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box .elementor-icon-box-description {
    color: #ffffff !important;
    transition: color .28s ease !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within {
    background-color: #ffffff !important;
    border-color: var(--teluz-line) !important;
    box-shadow: 0 12px 30px rgba(16, 19, 24, .08) !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon {
    color: var(--teluz-ink) !important;
    fill: var(--teluz-ink) !important;
    background-color: #f7f7f8 !important;
    border-color: transparent !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon i,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon svg,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon i,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon svg {
    color: var(--teluz-ink) !important;
    fill: var(--teluz-ink) !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon-box-title,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon-box-title a,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon-box-title,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon-box-title a {
    color: var(--teluz-ink) !important;
}

body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:hover .elementor-icon-box-description,
body.home .elementor-7797 .elementor-element.elementor-element-5916e94 .elementor-widget-icon-box:focus-within .elementor-icon-box-description {
    color: var(--teluz-text) !important;
}

/* Escala tipográfica do conteúdo. O banner fica fora destes seletores. */
body {
    font-size: 16px;
    line-height: 1.65;
}

body #content p,
body #content li,
body #content .elementor-widget-text-editor,
body #content .elementor-widget-text-editor p,
body #content .elementor-widget-text-editor li,
body #content .project-loop-excerpt,
body #content .service-loop-excerpt,
body #content .entry-content,
body #content .entry-content p,
body #content .entry-content li {
    font-size: 16px !important;
    line-height: 1.65 !important;
}

body #content h1.elementor-heading-title,
body #content h1.entry-title,
body #content h1.page-title {
    font-size: clamp(38px, 3.2vw, 52px) !important;
    line-height: 1.12 !important;
}

body #content h2.elementor-heading-title,
body #content h2.entry-title,
body #content h2.page-title,
body #content .entry-content h2 {
    font-size: clamp(30px, 2.4vw, 40px) !important;
    line-height: 1.18 !important;
}

body #content h3.elementor-heading-title,
body #content .entry-content h3 {
    font-size: clamp(23px, 1.7vw, 29px) !important;
    line-height: 1.25 !important;
}

body #content h4.elementor-heading-title,
body #content .entry-content h4 {
    font-size: 21px !important;
    line-height: 1.3 !important;
}

body #content h5.elementor-heading-title,
body #content .entry-content h5 {
    font-size: 18px !important;
    line-height: 1.35 !important;
}

body #content h6.elementor-heading-title,
body #content .entry-content h6 {
    font-size: 16px !important;
    line-height: 1.4 !important;
}

body #content .elementor-widget-icon-box .elementor-icon-box-title,
body #content .elementor-widget-icon-box .elementor-icon-box-title a {
    font-size: 19px !important;
    line-height: 1.35 !important;
}

body #content .elementor-widget-icon-box .elementor-icon-box-description {
    font-size: 15px !important;
    line-height: 1.65 !important;
}

body #content .elementor-widget-icon-list .elementor-icon-list-text {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body #content .elementor-button,
body #content .button,
body #content button,
body #content input[type="submit"] {
    font-size: 14px !important;
    line-height: 1.25 !important;
}

body #content input,
body #content select,
body #content textarea {
    font-size: 15px !important;
    line-height: 1.45 !important;
}

/* Lista “Conheça nossas linhas”: leitura mais confortável sem tocar no cubo. */
body #content .team-box-style-2 .team-name,
body #content .team-box-style-2 .team-name a {
    font-size: 20px !important;
    line-height: 1.35 !important;
}

body #content .team-box-style-2 .team-job {
    font-size: 15px !important;
    line-height: 1.55 !important;
    letter-spacing: .015em !important;
}

/* Menu com a mesma escala em todas as páginas. */
@media (min-width: 1025px) {
    body .teluz-desktop-navigation .menu > li > a,
    body .teluz-desktop-navigation > ul > li > a,
    body .primary-navigation .menu > li > a,
    body .main-navigation .menu > li > a {
        font-size: 16px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }

    body .teluz-desktop-navigation .sub-menu a,
    body .primary-navigation .sub-menu a,
    body .main-navigation .sub-menu a {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }
}

@media (max-width: 1024px) {
    body {
        font-size: 15.5px;
    }

    body #content p,
    body #content li,
    body #content .elementor-widget-text-editor,
    body #content .elementor-widget-text-editor p,
    body #content .elementor-widget-text-editor li,
    body #content .entry-content,
    body #content .entry-content p,
    body #content .entry-content li {
        font-size: 15.5px !important;
    }

    .industras-mobile-nav .menu-item > a {
        font-size: 17px !important;
        line-height: 1.3 !important;
    }

    .industras-mobile-nav .sub-menu .menu-item > a {
        font-size: 15px !important;
        line-height: 1.4 !important;
    }

    body #content .team-box-style-2 .team-name,
    body #content .team-box-style-2 .team-name a {
        font-size: 18px !important;
    }

    body #content .team-box-style-2 .team-job {
        font-size: 14px !important;
        line-height: 1.5 !important;
    }
}

@media (max-width: 767px) {
    body #content h1.elementor-heading-title,
    body #content h1.entry-title,
    body #content h1.page-title {
        font-size: 34px !important;
    }

    body #content h2.elementor-heading-title,
    body #content h2.entry-title,
    body #content h2.page-title,
    body #content .entry-content h2 {
        font-size: 28px !important;
    }

    body #content h3.elementor-heading-title,
    body #content .entry-content h3 {
        font-size: 22px !important;
    }

    body #content .elementor-widget-icon-box .elementor-icon-box-title,
    body #content .elementor-widget-icon-box .elementor-icon-box-title a {
        font-size: 18px !important;
    }

    body #content .elementor-widget-icon-box .elementor-icon-box-description {
        font-size: 15px !important;
    }
}


/* =========================================================
 * V4 — PROPORÇÃO DESKTOP MAIS AMPLA E UNIFICADA — 07/08/2026
 * Mantém a responsividade existente e reduz apenas as margens laterais
 * em desktop, padronizando cabeçalho, banner, páginas Elementor,
 * páginas de linhas de produtos e rodapé.
 * ======================================================= */
@media (min-width: 1025px) {
    /* Largura-base aprovada para todo o site. */
    .teluz-header-container,
    .teluz-nav-shell,
    .teluz-home-slider__container,
    body.home .teluz-header-container,
    body.home .teluz-nav-shell,
    body.home .teluz-home-slider__container,
    body:not(.home) .teluz-header-container,
    body:not(.home) .teluz-nav-shell {
        width: min(1600px, calc(100% - 96px)) !important;
        max-width: 1600px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Conteúdo padrão do Elementor: mesma proporção em Contato, Sobre nós
       e demais páginas construídas com seções/containers encaixotados. */
    .elementor-section.elementor-section-boxed > .elementor-container {
        max-width: 1600px !important;
    }
    .e-con {
        --container-max-width: 1600px !important;
    }
    .e-con.e-con-boxed > .e-con-inner {
        max-width: 1600px !important;
    }

    /* Linhas de produtos e catálogo nativo. */
    .teluz-line-page,
    .teluz-lines-index {
        width: min(1600px, calc(100% - 96px)) !important;
        max-width: 1600px !important;
    }
    .page-template-template-linha-produtos .teluz-product-page-edit {
        max-width: 1600px !important;
        padding-left: 48px !important;
        padding-right: 48px !important;
    }

    /* Rodapé alinhado à mesma régua horizontal do restante do site. */
    .teluz-custom-footer__container {
        width: min(1600px, calc(100% - 96px)) !important;
        max-width: 1600px !important;
    }

    /* Marcadores do banner acompanham o novo início do container. */
    body.home .teluz-home-slider__dots {
        left: max(calc((100vw - min(1600px, calc(100% - 96px))) / 2), 48px) !important;
    }
}

/* Entre 1025 e 1499 px, conserva folga de 35 px por lado para evitar
   compressão do menu e manter a mesma sensação de largura. */
@media (min-width: 1025px) and (max-width: 1499px) {
    .teluz-header-container,
    .teluz-nav-shell,
    .teluz-home-slider__container,
    body.home .teluz-header-container,
    body.home .teluz-nav-shell,
    body.home .teluz-home-slider__container,
    body:not(.home) .teluz-header-container,
    body:not(.home) .teluz-nav-shell,
    .teluz-line-page,
    .teluz-lines-index,
    .teluz-custom-footer__container {
        width: calc(100% - 70px) !important;
        max-width: 1600px !important;
    }

    body.home .teluz-home-slider__dots {
        left: 35px !important;
    }
}

/* TÉLUZ CTA RED FIX — 2026-08-10 */
/* =========================================================
 * TÉLUZ — CTAs COM SETA VERMELHA FIXA (10/08/2026)
 * Correção sem depender da classe JS "teluz-brand-site".
 * Aplica a seta #d71920 em Entre em contato, Enviar mensagem
 * e Estamos prontos para lhe atender. Sem alteração no hover.
 * ======================================================= */
.elementor-element-53dc841 .elementor-button i.industras-icon-acc1,
.elementor-element-1c11630 .elementor-button i.industras-icon-acc1,
.elementor-widget-button .elementor-button .elementor-button-icon i.industras-icon-acc1,
.wpcf7-form .wpcf7-button button i.industras-icon-acc1,
.wpcf7-form .wpcf7-button button i[class*="industras-icon-acc1"] {
    background: #d71920 !important;
    background-color: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transform: rotate(-45deg) !important;
    transition: none !important;
    box-shadow: none !important;
}

.elementor-element-53dc841 .elementor-button:hover i.industras-icon-acc1,
.elementor-element-53dc841 .elementor-button:focus i.industras-icon-acc1,
.elementor-element-53dc841 .elementor-button:active i.industras-icon-acc1,
.elementor-element-1c11630 .elementor-button:hover i.industras-icon-acc1,
.elementor-element-1c11630 .elementor-button:focus i.industras-icon-acc1,
.elementor-element-1c11630 .elementor-button:active i.industras-icon-acc1,
.elementor-widget-button .elementor-button:hover .elementor-button-icon i.industras-icon-acc1,
.elementor-widget-button .elementor-button:focus .elementor-button-icon i.industras-icon-acc1,
.elementor-widget-button .elementor-button:active .elementor-button-icon i.industras-icon-acc1,
.wpcf7-form .wpcf7-button button:hover i.industras-icon-acc1,
.wpcf7-form .wpcf7-button button:focus i.industras-icon-acc1,
.wpcf7-form .wpcf7-button button:active i.industras-icon-acc1 {
    background: #d71920 !important;
    background-color: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
    transform: rotate(-45deg) !important;
    transition: none !important;
    box-shadow: none !important;
}

/* Mantém os três CTAs em estilo link e sem mudança de cor/posição no hover. */
.elementor-element-53dc841 .elementor-button,
.elementor-element-53dc841 .elementor-button:hover,
.elementor-element-53dc841 .elementor-button:focus,
.elementor-element-53dc841 .elementor-button:active,
.elementor-element-1c11630 .elementor-button,
.elementor-element-1c11630 .elementor-button:hover,
.elementor-element-1c11630 .elementor-button:focus,
.elementor-element-1c11630 .elementor-button:active,
.wpcf7-form .wpcf7-button button,
.wpcf7-form .wpcf7-button button:hover,
.wpcf7-form .wpcf7-button button:focus,
.wpcf7-form .wpcf7-button button:active {
    color: #171719 !important;
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
    transition: none !important;
}


/* =========================================================
 * TÉLUZ — SETAS CIRCULARES VERMELHAS FIXAS (V3)
 * Alvo real do tema Industras: o círculo pode ser gerado
 * tanto pelo <i> quanto pelo pseudo-elemento ::after.
 * Mantém #d71920 também em hover/focus/active.
 * ======================================================= */
html body .elementor-button-link [class*="elementor-size-"].elementor-button::after,
html body .elementor-button-link [class*="elementor-size-"].elementor-button i,
html body .elementor-button-link .elementor-button::after,
html body .elementor-button-link .elementor-button .elementor-button-icon i,
html body .wpcf7-form .wpcf7-button button::after,
html body .wpcf7-form .wpcf7-button button i,
html body a.more-link::after,
html body a.more-link i {
    background: #d71920 !important;
    background-color: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    transform: rotate(-45deg) !important;
    transition: none !important;
    box-shadow: none !important;
}

html body .elementor-button-link [class*="elementor-size-"].elementor-button:hover::after,
html body .elementor-button-link [class*="elementor-size-"].elementor-button:focus::after,
html body .elementor-button-link [class*="elementor-size-"].elementor-button:active::after,
html body .elementor-button-link [class*="elementor-size-"].elementor-button:hover i,
html body .elementor-button-link [class*="elementor-size-"].elementor-button:focus i,
html body .elementor-button-link [class*="elementor-size-"].elementor-button:active i,
html body .elementor-button-link .elementor-button:hover::after,
html body .elementor-button-link .elementor-button:focus::after,
html body .elementor-button-link .elementor-button:active::after,
html body .elementor-button-link .elementor-button:hover .elementor-button-icon i,
html body .elementor-button-link .elementor-button:focus .elementor-button-icon i,
html body .elementor-button-link .elementor-button:active .elementor-button-icon i,
html body .wpcf7-form .wpcf7-button button:hover::after,
html body .wpcf7-form .wpcf7-button button:focus::after,
html body .wpcf7-form .wpcf7-button button:active::after,
html body .wpcf7-form .wpcf7-button button:hover i,
html body .wpcf7-form .wpcf7-button button:focus i,
html body .wpcf7-form .wpcf7-button button:active i,
html body a.more-link:hover::after,
html body a.more-link:focus::after,
html body a.more-link:active::after,
html body a.more-link:hover i,
html body a.more-link:focus i,
html body a.more-link:active i {
    background: #d71920 !important;
    background-color: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    transform: rotate(-45deg) !important;
    transition: none !important;
    box-shadow: none !important;
}

/* =========================================================
 * TÉLUZ V4 — CONTATO COLADO À BARRA DE ROLAGEM
 * O container Elementor termina na régua de conteúdo. Este
 * bleed compensa a folga restante e leva o bloco escuro até
 * a borda direita real da viewport, sem alterar a margem esquerda.
 * ======================================================= */
html body .elementor-element.elementor-element-e77afab {
    margin-right: calc(-1 * var(--teluz-contact-right-gap, max(0px, calc(50vw - 50%)))) !important;
    max-width: none !important;
}

html body .elementor-element.elementor-element-e77afab > .e-con-inner {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
}

html body .elementor-element.elementor-element-e77afab .elementor-element-9b5d929 {
    width: 100% !important;
    max-width: none !important;
    margin-right: 0 !important;
}

/* Mantém o bloco sem overflow lateral nos breakpoints móveis. */
@media (max-width: 1024px) {
    html body .elementor-element.elementor-element-e77afab {
        margin-right: 0 !important;
    }
}


/* =========================================================
 * TÉLUZ V11 — AJUSTES SOLICITADOS EM 14/08/2026
 * 1) Cabeçalho desktop com ícones e tipografia maiores,
 *    seguindo a proporção da referência enviada.
 * 2) Instagram do Footer 2 maior e vermelho Téluz sem hover.
 * 3) Redução do excesso de espaço vertical da faixa superior da home.
 * ======================================================= */

@media (min-width: 1025px) {
    /* Cabeçalho — escala maior em todas as páginas desktop. */
    html body .teluz-desktop-topbar {
        padding: 22px 0 10px !important;
    }

    html body .teluz-topbar-inner {
        min-height: 108px !important;
        grid-template-columns: 340px minmax(0, 1fr) auto !important;
        column-gap: 42px !important;
    }

    html body .teluz-desktop-brand {
        padding: 8px 0 !important;
    }

    html body .teluz-desktop-brand img {
        width: 230px !important;
        max-width: 230px !important;
        max-height: 86px !important;
    }

    html body .teluz-topbar-infos {
        gap: 28px !important;
    }

    html body .teluz-top-info {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    html body .teluz-top-info-icon {
        width: 64px !important;
        height: 64px !important;
        border-radius: 15px !important;
    }

    html body .teluz-top-info-icon svg {
        width: 25px !important;
        height: 25px !important;
    }

    html body .teluz-top-info-copy small {
        margin-bottom: 6px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
        letter-spacing: .055em !important;
    }

    html body .teluz-top-info-copy strong {
        font-size: 18px !important;
        line-height: 1.24 !important;
        font-weight: 700 !important;
    }

    html body .teluz-desktop-nav-stage {
        padding: 8px 0 26px !important;
    }

    html body .teluz-nav-shell,
    html body .teluz-menu-panel {
        min-height: 96px !important;
    }

    html body .teluz-menu-mark {
        width: 92px !important;
        min-width: 92px !important;
        height: 96px !important;
    }

    html body .teluz-menu-mark span {
        width: 22px !important;
        height: 22px !important;
    }

    html body .teluz-desktop-navigation,
    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu,
    html body .teluz-desktop-navigation .menu > li,
    html body .teluz-desktop-navigation .menu > li > a {
        height: 96px !important;
    }

    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu {
        padding: 0 42px 0 28px !important;
        gap: clamp(30px, 2.1vw, 52px) !important;
    }

    html body .teluz-desktop-navigation .menu > li > a,
    html body .teluz-desktop-navigation > ul > li > a {
        font-size: 18px !important;
        line-height: 1.15 !important;
        font-weight: 700 !important;
    }

    html body .teluz-desktop-navigation .sub-menu a {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    html body .teluz-desktop-cta {
        width: 295px !important;
        min-width: 295px !important;
        min-height: 96px !important;
        height: 96px !important;
        margin-left: 26px !important;
        padding: 0 32px 0 60px !important;
        font-size: 16px !important;
    }

    html body .teluz-desktop-cta span {
        max-width: 150px !important;
    }

    html body .teluz-desktop-cta svg {
        width: 18px !important;
        height: 18px !important;
    }

    /* Home — preserva o cabeçalho sobre o banner, mas na escala da referência. */
    html body.home .teluz-desktop-topbar {
        min-height: 182px !important;
        padding: 22px 0 0 !important;
    }

    html body.home .teluz-topbar-inner {
        min-height: 108px !important;
        grid-template-columns: 340px minmax(0, 1fr) auto !important;
        column-gap: 42px !important;
    }

    html body.home .teluz-desktop-brand img {
        width: 230px !important;
        max-width: 230px !important;
        max-height: 86px !important;
    }

    html body.home .teluz-topbar-infos {
        gap: 28px !important;
    }

    html body.home .teluz-top-info {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    html body.home .teluz-top-info-icon {
        width: 64px !important;
        height: 64px !important;
        border-radius: 15px !important;
    }

    html body.home .teluz-top-info-copy small {
        margin-bottom: 6px !important;
        font-size: 12px !important;
    }

    html body.home .teluz-top-info-copy strong {
        font-size: 18px !important;
    }

    html body.home .teluz-desktop-nav-stage {
        top: 141px !important;
        padding: 0 !important;
    }

    html body.home .teluz-nav-shell,
    html body.home .teluz-menu-panel {
        min-height: 106px !important;
    }

    html body.home .teluz-menu-mark {
        width: 96px !important;
        min-width: 96px !important;
        height: 106px !important;
    }

    html body.home .teluz-desktop-navigation,
    html body.home .teluz-desktop-navigation > ul,
    html body.home .teluz-desktop-navigation .menu,
    html body.home .teluz-desktop-navigation .menu > li,
    html body.home .teluz-desktop-navigation .menu > li > a {
        height: 106px !important;
    }

    html body.home .teluz-desktop-navigation .menu > li > a {
        font-size: 18px !important;
    }

    html body.home .teluz-desktop-cta {
        width: 295px !important;
        min-width: 295px !important;
        min-height: 106px !important;
        height: 106px !important;
        margin-left: 26px !important;
        padding: 0 32px 0 60px !important;
        font-size: 16px !important;
    }

    /* Terceira referência — reduz o vazio abaixo de “Estamos prontos...”. */
    html body.home .elementor-7797 .elementor-element.elementor-element-5916e94 {
        min-height: 600px !important;
    }

    html body.home .elementor-7797 .elementor-element.elementor-element-5a50aea {
        margin-bottom: 30px !important;
    }
}

/* Footer 2 — somente Instagram: maior e vermelho Téluz em repouso e hover. */
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae {
    --icon-size: 20px !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:hover i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:focus i {
    color: #d71920 !important;
    font-size: 20px !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon svg,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:hover svg,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:focus svg {
    fill: #d71920 !important;
    width: 20px !important;
    height: 20px !important;
}

@media (max-width: 1024px) {
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae {
        --icon-size: 20px !important;
    }
}

/* Escala intermediária para notebooks/desktop estreito: mantém o ganho visual sem provocar overflow. */
@media (min-width: 1025px) and (max-width: 1360px) {
    html body .teluz-desktop-topbar,
    html body.home .teluz-desktop-topbar {
        padding: 16px 0 7px !important;
    }

    html body .teluz-topbar-inner,
    html body.home .teluz-topbar-inner {
        min-height: 92px !important;
        grid-template-columns: 245px minmax(0, 1fr) !important;
        column-gap: 22px !important;
    }

    html body .teluz-desktop-brand img,
    html body.home .teluz-desktop-brand img {
        width: 185px !important;
        max-width: 185px !important;
        max-height: 70px !important;
    }

    html body .teluz-topbar-infos,
    html body.home .teluz-topbar-infos {
        gap: 16px !important;
    }

    html body .teluz-top-info,
    html body.home .teluz-top-info {
        grid-template-columns: 48px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    html body .teluz-top-info-icon,
    html body.home .teluz-top-info-icon {
        width: 48px !important;
        height: 48px !important;
        border-radius: 12px !important;
    }

    html body .teluz-top-info-icon svg,
    html body.home .teluz-top-info-icon svg {
        width: 21px !important;
        height: 21px !important;
    }

    html body .teluz-top-info-copy small,
    html body.home .teluz-top-info-copy small {
        font-size: 10px !important;
        margin-bottom: 4px !important;
    }

    html body .teluz-top-info-copy strong,
    html body.home .teluz-top-info-copy strong {
        font-size: 15px !important;
    }

    html body .teluz-nav-shell,
    html body .teluz-menu-panel,
    html body.home .teluz-nav-shell,
    html body.home .teluz-menu-panel {
        min-height: 82px !important;
    }

    html body .teluz-menu-mark,
    html body.home .teluz-menu-mark {
        width: 78px !important;
        min-width: 78px !important;
        height: 82px !important;
    }

    html body .teluz-desktop-navigation,
    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu,
    html body .teluz-desktop-navigation .menu > li,
    html body .teluz-desktop-navigation .menu > li > a,
    html body.home .teluz-desktop-navigation,
    html body.home .teluz-desktop-navigation > ul,
    html body.home .teluz-desktop-navigation .menu,
    html body.home .teluz-desktop-navigation .menu > li,
    html body.home .teluz-desktop-navigation .menu > li > a {
        height: 82px !important;
    }

    html body .teluz-desktop-navigation .menu > li > a,
    html body.home .teluz-desktop-navigation .menu > li > a {
        font-size: 16px !important;
    }

    html body .teluz-desktop-cta,
    html body.home .teluz-desktop-cta {
        width: 245px !important;
        min-width: 245px !important;
        min-height: 82px !important;
        height: 82px !important;
        padding: 0 26px 0 50px !important;
        font-size: 14px !important;
    }

    html body.home .teluz-desktop-topbar {
        min-height: 160px !important;
    }

    html body.home .teluz-desktop-nav-stage {
        top: 126px !important;
        padding: 0 !important;
    }
}

/* =========================================================
 * TÉLUZ V12 — PADRONIZAÇÃO GLOBAL + RODAPÉ (14/08/2026)
 * - Mesmo tamanho/proporção do cabeçalho aprovado da Home em todas as páginas.
 * - Um pouco mais de espaço entre os itens do menu.
 * - Instagram do Footer 2 ainda maior e vermelho Téluz em repouso.
 * - Telefones abaixo de Ribeirão Preto, SP.
 * - Inscrever-se e seta da newsletter vermelhos Téluz sem depender de hover.
 * ======================================================= */

/* Rodapé: telefones adicionais logo abaixo do endereço. */
html body #teluz-global-footer-39-v9 .teluz-footer-contact-numbers {
    display: block !important;
    margin-top: 5px !important;
    color: #ffffff !important;
    font: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit !important;
}

/* Footer 2: Instagram maior, mantendo somente este ícone em vermelho Téluz. */
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae {
    --icon-size: 30px !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:hover,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:focus,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:active {
    color: #d71920 !important;
    background-color: transparent !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:hover i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:focus i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:active i {
    color: #d71920 !important;
    font-size: 30px !important;
    line-height: 1 !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon svg,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:hover svg,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:focus svg,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon:active svg {
    fill: #d71920 !important;
    width: 30px !important;
    height: 30px !important;
}

/* Newsletter: texto e círculo/seta vermelhos Téluz também no estado normal. */
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"],
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:not(:hover),
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:hover,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:focus,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:active {
    color: #d71920 !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"] i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:not(:hover) i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:hover i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:focus i,
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"]:active i {
    background: #d71920 !important;
    background-color: #d71920 !important;
    border-color: #d71920 !important;
    color: #ffffff !important;
}

html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e05adae .mc4wp-form-fields button[type="submit"] i::before {
    color: #ffffff !important;
}

@media (min-width: 1361px) {
    /* Mesma escala aprovada da Home em TODAS as páginas. */
    html body .teluz-desktop-topbar {
        min-height: 182px !important;
        padding: 22px 0 0 !important;
    }

    html body .teluz-topbar-inner {
        min-height: 108px !important;
        grid-template-columns: 340px minmax(0, 1fr) auto !important;
        column-gap: 42px !important;
    }

    html body .teluz-desktop-brand {
        padding: 8px 0 !important;
        background: #ffffff !important;
    }

    html body .teluz-desktop-brand img {
        width: 230px !important;
        max-width: 230px !important;
        max-height: 86px !important;
    }

    html body .teluz-topbar-infos {
        gap: 28px !important;
    }

    html body .teluz-top-info {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    html body .teluz-top-info-icon {
        width: 64px !important;
        height: 64px !important;
        border-radius: 15px !important;
    }

    html body .teluz-top-info-icon svg {
        width: 25px !important;
        height: 25px !important;
    }

    html body .teluz-top-info-copy small {
        margin-bottom: 6px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
        letter-spacing: .055em !important;
    }

    html body .teluz-top-info-copy strong {
        font-size: 18px !important;
        line-height: 1.24 !important;
        font-weight: 700 !important;
    }

    html body .teluz-nav-shell,
    html body .teluz-menu-panel {
        min-height: 106px !important;
    }

    html body .teluz-menu-mark {
        width: 96px !important;
        min-width: 96px !important;
        height: 106px !important;
    }

    html body .teluz-menu-mark span {
        width: 22px !important;
        height: 22px !important;
    }

    html body .teluz-desktop-navigation,
    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu,
    html body .teluz-desktop-navigation .menu > li,
    html body .teluz-desktop-navigation .menu > li > a {
        height: 106px !important;
    }

    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu {
        padding: 0 44px 0 32px !important;
        gap: clamp(40px, 2.6vw, 66px) !important;
    }

    html body .teluz-desktop-navigation .menu > li > a,
    html body .teluz-desktop-navigation > ul > li > a {
        font-size: 18px !important;
        line-height: 1.15 !important;
        font-weight: 700 !important;
    }

    html body .teluz-desktop-navigation .sub-menu a {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    html body .teluz-desktop-cta {
        width: 295px !important;
        min-width: 295px !important;
        min-height: 106px !important;
        height: 106px !important;
        margin-left: 26px !important;
        padding: 0 32px 0 60px !important;
        font-size: 16px !important;
    }

    html body .teluz-desktop-cta span {
        max-width: 150px !important;
    }

    html body .teluz-desktop-cta svg {
        width: 18px !important;
        height: 18px !important;
    }

    /* Home e páginas internas começam o menu na mesma linha visual. */
    html body.home .teluz-desktop-nav-stage {
        top: 141px !important;
        padding: 0 !important;
    }

    html body:not(.home) .teluz-desktop-nav-stage {
        margin-top: -41px !important;
        padding: 0 !important;
    }
}

@media (min-width: 1025px) and (max-width: 1360px) {
    /* Mesmo comportamento responsivo da Home, aplicado também às internas. */
    html body .teluz-desktop-topbar {
        min-height: 160px !important;
        padding: 16px 0 7px !important;
    }

    html body .teluz-topbar-inner {
        min-height: 92px !important;
        grid-template-columns: 245px minmax(0, 1fr) !important;
        column-gap: 22px !important;
    }

    html body .teluz-desktop-brand img {
        width: 185px !important;
        max-width: 185px !important;
        max-height: 70px !important;
    }

    html body .teluz-topbar-infos {
        gap: 16px !important;
    }

    html body .teluz-top-info {
        grid-template-columns: 48px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    html body .teluz-top-info-icon {
        width: 48px !important;
        height: 48px !important;
        border-radius: 12px !important;
    }

    html body .teluz-top-info-icon svg {
        width: 21px !important;
        height: 21px !important;
    }

    html body .teluz-top-info-copy small {
        font-size: 10px !important;
        margin-bottom: 4px !important;
    }

    html body .teluz-top-info-copy strong {
        font-size: 15px !important;
    }

    html body .teluz-nav-shell,
    html body .teluz-menu-panel {
        min-height: 82px !important;
    }

    html body .teluz-menu-mark {
        width: 78px !important;
        min-width: 78px !important;
        height: 82px !important;
    }

    html body .teluz-desktop-navigation,
    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu,
    html body .teluz-desktop-navigation .menu > li,
    html body .teluz-desktop-navigation .menu > li > a {
        height: 82px !important;
    }

    html body .teluz-desktop-navigation > ul,
    html body .teluz-desktop-navigation .menu {
        padding: 0 30px 0 23px !important;
        gap: clamp(24px, 2.05vw, 36px) !important;
    }

    html body .teluz-desktop-navigation .menu > li > a,
    html body .teluz-desktop-navigation > ul > li > a {
        font-size: 16px !important;
    }

    html body .teluz-desktop-cta {
        width: 245px !important;
        min-width: 245px !important;
        min-height: 82px !important;
        height: 82px !important;
        padding: 0 26px 0 50px !important;
        font-size: 14px !important;
    }

    html body.home .teluz-desktop-nav-stage {
        top: 126px !important;
        padding: 0 !important;
    }

    html body:not(.home) .teluz-desktop-nav-stage {
        margin-top: -34px !important;
        padding: 0 !important;
    }
}

@media (max-width: 1024px) {
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae {
        --icon-size: 28px !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon i {
        font-size: 28px !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f727dae .elementor-social-icon svg {
        width: 28px !important;
        height: 28px !important;
    }
}


/* =========================================================
 * TÉLUZ V13 — ALINHAMENTO SUPERIOR DO FOOTER 39 (14/08/2026)
 * Mantém o layout aprovado e alinha no mesmo eixo superior:
 * logo/informações, Links Úteis, lista de produtos e Newsletter.
 * Aplicação global em todas as páginas que usam o Footer 39.
 * ======================================================= */
@media (min-width: 768px) {
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-25ad018 {
        --align-items: flex-start !important;
        align-items: flex-start !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-25ad018 > .e-con,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-25ad018 > .elementor-element {
        align-self: flex-start !important;
        vertical-align: top !important;
    }

    /* O primeiro bloco tinha 6px de padding superior no template original. */
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-237078a {
        --padding-top: 0px !important;
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    /* Evita margens residuais no primeiro widget de cada coluna. */
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-d9edc35,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f119195,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e09dda3 {
        margin-top: 0 !important;
    }
}


/* =========================================================
 * TÉLUZ V14 — ALINHAMENTO VISUAL EXATO DO RODAPÉ 39 (14/08/2026)
 * Corrige os offsets internos dos widgets: o alinhamento anterior
 * equalizava os containers, porém logo/títulos/lista ainda tinham
 * diferenças visuais de poucos pixels. Desktop/laptop apenas.
 * ======================================================= */
@media (min-width: 1025px) {
    /* Mantém as três colunas estruturais presas ao topo da mesma linha. */
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-25ad018,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-25ad018 > .e-con-inner {
        --align-items: flex-start !important;
        align-items: flex-start !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-237078a,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-ec43382,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-3facd22 {
        --align-self: flex-start !important;
        align-self: flex-start !important;
        --padding-top: 0px !important;
        padding-top: 0 !important;
        margin-top: 0 !important;
    }

    /* Zera qualquer margem superior residual nos primeiros itens visuais. */
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-d9edc35,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f119195,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-2751386,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e09dda3 {
        margin-top: 0 !important;
    }

    /* Ajuste óptico final medido no layout aprovado:
       LOGO = referência visual de topo.
       Links Úteis sobe/baixa pelo line-box da fonte; compensação +5px.
       Termostatos possui offset próprio no icon-list; compensação +2px. */
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f119195 {
        position: relative !important;
        top: 5px !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-2751386 {
        position: relative !important;
        top: 2px !important;
    }

    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-d9edc35,
    html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-e09dda3 {
        position: relative !important;
        top: 0 !important;
    }
}

/* =========================================================
 * TÉLUZ V15 — REMOÇÃO DO TÍTULO "LINKS ÚTEIS" DO RODAPÉ 39
 * Mantém os links da coluna e elimina também o espaço do título.
 * ======================================================= */
html body #teluz-global-footer-39-v9 .elementor-39 .elementor-element.elementor-element-f119195 {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    top: auto !important;
}

/* =========================================================
 * TÉLUZ V17 — CABEÇALHO INTERNO IDÊNTICO À ESCALA DA HOME
 * Contato, Sobre Nós e demais páginas usam exatamente a mesma
 * escala visual aprovada: logo, ícones, tipografia, menu e CTA.
 * O posicionamento continua relativo nas internas para não
 * sobrepor o conteúdo, mas tamanhos e espaçamentos são iguais.
 * ======================================================= */
@media (min-width: 1361px) {
    html body:not(.home) .teluz-desktop-topbar {
        min-height: 182px !important;
        padding: 22px 0 0 !important;
    }

    html body:not(.home) .teluz-topbar-inner {
        min-height: 108px !important;
        grid-template-columns: 340px minmax(0, 1fr) auto !important;
        column-gap: 42px !important;
        align-items: center !important;
    }

    html body:not(.home) .teluz-desktop-brand {
        padding: 8px 0 !important;
        background: #ffffff !important;
    }

    html body:not(.home) .teluz-desktop-brand img {
        width: 230px !important;
        max-width: 230px !important;
        max-height: 86px !important;
        height: auto !important;
    }

    html body:not(.home) .teluz-topbar-infos {
        gap: 28px !important;
    }

    html body:not(.home) .teluz-top-info {
        grid-template-columns: 64px minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    html body:not(.home) .teluz-top-info-icon {
        width: 64px !important;
        height: 64px !important;
        border-radius: 15px !important;
    }

    html body:not(.home) .teluz-top-info-icon svg {
        width: 25px !important;
        height: 25px !important;
    }

    html body:not(.home) .teluz-top-info-copy small {
        margin-bottom: 6px !important;
        font-size: 12px !important;
        line-height: 1.2 !important;
        letter-spacing: .055em !important;
    }

    html body:not(.home) .teluz-top-info-copy strong {
        font-size: 18px !important;
        line-height: 1.24 !important;
        font-weight: 700 !important;
    }

    html body:not(.home) .teluz-nav-shell,
    html body:not(.home) .teluz-menu-panel {
        min-height: 106px !important;
    }

    html body:not(.home) .teluz-menu-mark {
        width: 96px !important;
        min-width: 96px !important;
        height: 106px !important;
    }

    html body:not(.home) .teluz-menu-mark span {
        width: 22px !important;
        height: 22px !important;
    }

    html body:not(.home) .teluz-desktop-navigation,
    html body:not(.home) .teluz-desktop-navigation > ul,
    html body:not(.home) .teluz-desktop-navigation .menu,
    html body:not(.home) .teluz-desktop-navigation .menu > li,
    html body:not(.home) .teluz-desktop-navigation .menu > li > a {
        height: 106px !important;
    }

    html body:not(.home) .teluz-desktop-navigation > ul,
    html body:not(.home) .teluz-desktop-navigation .menu {
        padding: 0 44px 0 32px !important;
        gap: clamp(40px, 2.6vw, 66px) !important;
    }

    html body:not(.home) .teluz-desktop-navigation .menu > li > a,
    html body:not(.home) .teluz-desktop-navigation > ul > li > a {
        font-size: 18px !important;
        line-height: 1.15 !important;
        font-weight: 700 !important;
    }

    html body:not(.home) .teluz-desktop-navigation .sub-menu a {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    html body:not(.home) .teluz-desktop-cta {
        width: 295px !important;
        min-width: 295px !important;
        min-height: 106px !important;
        height: 106px !important;
        margin-left: 26px !important;
        padding: 0 32px 0 60px !important;
        font-size: 16px !important;
    }

    html body:not(.home) .teluz-desktop-cta span {
        max-width: 150px !important;
    }

    html body:not(.home) .teluz-desktop-cta svg {
        width: 18px !important;
        height: 18px !important;
    }

    html body:not(.home) .teluz-desktop-nav-stage {
        margin-top: -41px !important;
        padding: 0 !important;
    }
}

@media (min-width: 1025px) and (max-width: 1360px) {
    html body:not(.home) .teluz-desktop-topbar {
        min-height: 160px !important;
        padding: 16px 0 7px !important;
    }

    html body:not(.home) .teluz-topbar-inner {
        min-height: 92px !important;
        grid-template-columns: 245px minmax(0, 1fr) !important;
        column-gap: 22px !important;
    }

    html body:not(.home) .teluz-desktop-brand img {
        width: 185px !important;
        max-width: 185px !important;
        max-height: 70px !important;
    }

    html body:not(.home) .teluz-topbar-infos {
        gap: 16px !important;
    }

    html body:not(.home) .teluz-top-info {
        grid-template-columns: 48px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    html body:not(.home) .teluz-top-info-icon {
        width: 48px !important;
        height: 48px !important;
        border-radius: 12px !important;
    }

    html body:not(.home) .teluz-top-info-icon svg {
        width: 21px !important;
        height: 21px !important;
    }

    html body:not(.home) .teluz-top-info-copy small {
        font-size: 10px !important;
        margin-bottom: 4px !important;
    }

    html body:not(.home) .teluz-top-info-copy strong {
        font-size: 15px !important;
    }

    html body:not(.home) .teluz-nav-shell,
    html body:not(.home) .teluz-menu-panel {
        min-height: 82px !important;
    }

    html body:not(.home) .teluz-menu-mark {
        width: 78px !important;
        min-width: 78px !important;
        height: 82px !important;
    }

    html body:not(.home) .teluz-desktop-navigation,
    html body:not(.home) .teluz-desktop-navigation > ul,
    html body:not(.home) .teluz-desktop-navigation .menu,
    html body:not(.home) .teluz-desktop-navigation .menu > li,
    html body:not(.home) .teluz-desktop-navigation .menu > li > a {
        height: 82px !important;
    }

    html body:not(.home) .teluz-desktop-navigation > ul,
    html body:not(.home) .teluz-desktop-navigation .menu {
        padding: 0 30px 0 23px !important;
        gap: clamp(24px, 2.05vw, 36px) !important;
    }

    html body:not(.home) .teluz-desktop-navigation .menu > li > a,
    html body:not(.home) .teluz-desktop-navigation > ul > li > a {
        font-size: 16px !important;
    }

    html body:not(.home) .teluz-desktop-cta {
        width: 245px !important;
        min-width: 245px !important;
        min-height: 82px !important;
        height: 82px !important;
        padding: 0 26px 0 50px !important;
        font-size: 14px !important;
    }

    html body:not(.home) .teluz-desktop-nav-stage {
        margin-top: -34px !important;
        padding: 0 !important;
    }
}

/* AIO Plus v3: a identidade do header usa logo transparente selecionada no painel. */
html body .teluz-desktop-brand,
html body.home .teluz-desktop-brand,
html body:not(.home) .teluz-desktop-brand{
    background:transparent!important;
}
html body .teluz-desktop-brand img,
html body .teluz-mobile-header__brand img{
    background:transparent!important;
}
