/* ============================================================
   RDO LOGÍSTICA — MEDIA QUERIES RESPONSIVAS
   Estratégia: Desktop Down (1440px → Mobile)
   Breakpoints: 1367px | 1024px | 768px | 480px
   ============================================================ */

/* Garantia global de imagens fluidas */
img {
    max-width: 100%;
    height: auto;
}

/* ============================================================
   BREAKPOINT 1: 1367px — Notebooks médios
   Ajustes de proporção e tipografia calibrados
   ============================================================ */
@media screen and (max-width: 1367px) {

    /* --- S1: HERO --- */
    .s1 .img-fundo header .abas {
        gap: 2vw;
        padding: 16px 1.5vw;
    }

    .s1 .img-fundo header .abas a {
        font-size: 0.85rem;
    }

    .s1 .img-fundo .content-s1 {
        margin-top: 28vh;
    }

    /* H1 hero — destaque máximo: maior, mais peso visual, espaçamento de letras */
    .s1 .img-fundo .content-s1 h1 {
        font-size: clamp(38px, 4.6vw, 4.6vw);
        
        letter-spacing: -0.02em;
        line-height: 1.1;
        text-shadow: -2px 2px 14px rgba(0, 0, 0, 0.35);
    }

    /* Parágrafo hero — mais legível, linha generosa */
    .s1 .img-fundo .content-s1 p {
        font-size: clamp(15px, 1.1vw, 1.1vw);
        line-height: 1.75;
        width: 58%;
        font-weight: 300;
    }

    .s1 .img-fundo .content-s1{
        margin-top: 40vh;
    }

    /* --- CONTAINER (estatísticas) --- */
    .container {
        gap: 4vw;
    }

    .item strong {
        font-size: 1.8vw;
    }

    .item strong img {
        width: 1.5vw;
    }

    /* --- S2: TECNOLOGIA ---
       h2 maior e com mais presença; p com line-height
       que facilita a leitura corrida */
    .s2 {
        padding: 6vh 8vw;
    }

    .s2 .content-s2 h2 {
        font-size: clamp(30px, 2.6vw, 2.6vw);
        font-weight: 500;
        line-height: 1.2;
        letter-spacing: -0.01em;
    }

    .s2 .content-s2 p {
        font-size: clamp(16px, 1vw, 1vw);
        line-height: 1.7;
        font-weight: 300;
    }

    .s2 .content-s2{
        width: 40%;
    }

    /* --- S3: SERVIÇOS ---
       Títulos dos cards com mais respiro; parágrafos
       com tamanho mínimo garantido de 14px */

    .s3 .content-s3{
        padding: 24vh 4vw 10vh 4vw;
    }
    .s3 .content-s3 .card-s3 {
        width: 27vw;
        height: auto;
        min-height: 26vh;
    }

    .s3 .content-s3 h3 {
        font-size: clamp(14px, 1.25vw, 1.25vw);
        font-weight: 600;
        letter-spacing: 0.01em;
    }

    .s3 .content-s3 p {
        font-size: clamp(13px, 0.9vw, 0.9vw);
        line-height: 1.65;
    }

    /* --- S4: REGIÕES ---
       Título de seção com peso maior para hierarquia clara */
    .s4 {
        height: auto;
        padding: 4vh 6vw;
    }

    .s4 h2 {
        font-size: clamp(32px, 2.4vw, 2.4vw);
        font-weight: 500;
        letter-spacing: -0.01em;
    }

    .s4 .flex-s4 .cards-s4 {
        height: 60vh;
        width: 28vw;
    }

    .s4 .flex-s4 .cards-s4 .sobreposicao a {
        font-size: clamp(22px, 1.2vw, 1.2vw);
    }

    /* --- S5: ESTRUTURA OPERACIONAL ---
       h2 da seção proporcionalmente maior;
       h3 dos cards mais expressivo;
       p com mínimo legível e espaçamento de linha adequado */
    .s5 {
        padding: 0 8vw;
    }

    .s5 h2 {
        font-size: clamp(32px, 2.4vw, 2.4vw);
        font-weight: 500;
        letter-spacing: -0.01em;
    }

    .s5 .card-s5 .content-s5 h3 {
        font-size: clamp(26px, 1.7vw, 1.7vw);
        font-weight: 500;
        letter-spacing: -0.01em;
    }

    .s5 .card-s5 .content-s5 p {
        font-size: clamp(16px, 1vw, 1vw);
        line-height: 1.5;
        font-weight: 400;
    }

    .s5 .card-s5 img {
        width: 45vw;
        height: 22vw;
    }

    /* --- S6: FALE CONOSCO --- */
    .s6 {
        margin: 8vh 6vw;
        gap: 4vw;
    }
}


/* ============================================================
   BREAKPOINT 2: 1024px — Tablets grandes / Laptops pequenos
   Reorganização de layouts de 2 colunas
   ============================================================ */
@media screen and (max-width: 1024px) {

    /* --- S1: HERO / HEADER --- */
    .s1 {
        height: 98;
        min-height: 98vh;
        
    }

    .s1 .img-fundo {
        padding: 1.5vw 2vw;
        border-radius: 12px;
    }

    .s1 .img-fundo header {
        width: 100%;
        gap: 1rem;
    }

    .s1 .img-fundo header .logo-header {
        width: 100px;
    }

    /* Abas: reduz tamanho das fontes e gaps */
    .s1 .img-fundo header .abas {
        gap: 1.5vw;
        padding: 16px 1.5vw;
    }

    .s1 .img-fundo header .abas a {
        font-size: 0.85rem;
    }

    .s1 .img-fundo header .btn-contato-vermelho {
        font-size: 0.9rem;
        padding: 3px 8px 3px 12px;
    }

    .s1 .img-fundo header .btn-contato-vermelho img {
        height: 40px;
        width: 40px;
    }

    .s1 .img-fundo .content-s1 {
        margin-top: 45vh;
    }

    /* H1 hero — tamanho maior que desktop proporcional ao viewport,
       peso máximo para impacto visual em tablets grandes */
    .s1 .img-fundo .content-s1 h1 {
        font-size: clamp(48px, 5vw, 5vw);
        font-weight: 600;
        letter-spacing: -0.025em;
        line-height: 1.08;
        text-shadow: -2px 2px 18px rgba(0, 0, 0, 0.4);
    }

    .s1 .img-fundo .content-s1 p {
        font-size: clamp(18px, 1.4vw, 1.4vw);
        line-height: 1.3;
        width: 65%;
    }

    .s1 .img-fundo .content-s1 .button-s1 {
        gap: 2vw;
    }

  

    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-saibamais img,
    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-orcamento img {
        height: 42px;
        width: 42px;
    }

    /* --- CONTAINER (estatísticas) --- */
    .container {
        gap: 3vw;
        padding: 16px;
    }

    .item strong {
        font-size: 2.5vw;
    }

    .item strong img {
        width: 2vw;
        margin-right: 8px;
    }

    /* --- S2: TECNOLOGIA — empilha verticalmente --- */
    .s2 {
        flex-direction: column;
        align-items: center;
        padding: 6vh 8vw;
        gap: 5vh;
        margin-bottom: 8vh;
    }

    .s2 .content-s2 {
        width: 100%;
    }

    .s2 .content-s2 .btn-saibamais-red img{
        height: 42px;
        width: 42px;
    }

    .s2 .content-s2 h2 {
        font-size: clamp(32px, 4vw, 4vw);
    }

    .s2 .content-s2 p {
        font-size: clamp(16px, 1.8vw, 1.6vw);
        font-weight: 300;
    }

    .s2 .img-s2 {
        width: 100%;
    }

    /* --- S3: SERVIÇOS --- */
    .s3 .content-s3 {
        flex-direction: column;
        align-items: center;
        gap: 6vh;
        padding: 20vh 6vw 8vh 6vw;
    }

    .s3 .content-s3 .card-s3 {
        width: 80%;
        height: auto;
        padding: 3vh 4vw;
    }

    .s3 .content-s3 h2 {
        font-size: 3.5vw;
    }

    .s3 .content-s3 h4 {
        font-size: 1.8vw;
    }

    .s3 .content-s3 h3 {
        font-size: 1.6rem;
    }

    .s3 .content-s3 p {
        font-size: 1rem;
    }

    /* --- S4: REGIÕES — cards ficam menores --- */
    .s4 {
        height: auto;
        padding: 4vh 4vw;
    }

    .s4 h2 {
        font-size: clamp(32px, 3vw, 3vw);
        margin-bottom: 4vh;
    }

    .s4 h2::after {
        width: 30vw;
    }

    @keyframes desenharLinha {
        100% { width: 30vw; opacity: 1; }
    }

    .s4 .flex-s4 {
        gap: 2vw;
    }

    .s4 .flex-s4 .cards-s4 {
        height: 45vh;
        width: 30vw;
    }

    .s4 .flex-s4 .cards-s4 .sobreposicao a {
        font-size: clamp(20px, 1.4vw, 1.4vw);
    }

    /* --- S5: ESTRUTURA OPERACIONAL — empilha verticalmente --- */
    .s5 {
        padding: 2vh 5vw;
    }

    .s5 h2 {
        font-size: clamp(32px, 3vw, 3vw);
        margin-top: 6vh;
    }

    .s5 .card-s5 {
        flex-direction: column;
        align-items: center;
        gap: 2vh;
    }

    /* Alterna a ordem: texto e imagem alternam posição */
    

    .s5 .card-s5 .content-s5 {
        width: 100%;
        padding: 2vh 3vw;
    }

    .s5 .card-s5 .content-s5 h3 {
        font-size: 1.8rem;
    }

    .s5 .card-s5 .content-s5 p {
        font-size: 1rem;
        line-height: 1.6;
    }

    .s5 .card-s5 img {
        width: 100%;
        height: 35vw;
        border-radius: 12px;
    }

    /* --- S6: FALE CONOSCO --- */
    .s6 {
        grid-template-columns: 1fr;
        margin: 6vh 5vw;
        padding: 50px 5vw;
        gap: 40px;
    }

    .s6 .content-s6 {
        align-items: center;
        text-align: center;
    }

    .s6 .content-s6 h3 {
        margin-left: 0;
    }

    .s6 .content-s6 p {
        margin-left: 0;
    }

    .s6 .content-s6 a {
        margin-left: 0;
        justify-content: center;
    }

    .s6 .form-s6 .btn-s6 {
        flex-direction: column;
        width: 100%;
        gap: 1rem;
    }

    .s6 .form-s6 .btn-s6 .btn-s1-saibamais,
    .s6 .form-s6 .btn-s6 .btn-s1-orcamento {
        width: 100%;
        justify-content: center;
    }
}


/* ============================================================
   BREAKPOINT 3: 768px — Tablets / iPads
   Menu hambúrguer, layouts completamente verticais
   ============================================================ */
@media screen and (max-width: 768px) {

    /* --- HEADER: Menu Hambúrguer --- */
    .s1 .img-fundo header {
        position: relative;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }

    .s1 .img-fundo header .abas {
        /* Esconde o menu horizontal */
        display: none;
        flex-direction: column;
        position: absolute;
        top: calc(100% + 12px);
        left: 0;
        right: 0;
        width: 100%;
        background-color: rgba(30, 30, 30, 0.95);
        backdrop-filter: blur(20px);
        border-radius: 12px;
        padding: 1.5rem 2rem;
        gap: 1.2rem;
        z-index: 100;
        box-shadow: 0 8px 30px rgba(0,0,0,0.4);
    }

    /* Ativo via JS (classe .menu-aberto) */
    .s1 .img-fundo header .abas.menu-aberto {
        display: flex;
    }

    .s1 .img-fundo header .abas a {
        font-size: 1rem;
        text-align: center;
        padding: 0.4rem 0;
        border-bottom: 1px solid rgba(255,255,255,0.08);
    }

    .s1 .img-fundo header .abas a:last-child {
        border-bottom: none;
    }

    /* Botão hambúrguer (inserido via CSS + JS) */
    .btn-hamburger {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5px;
        background: rgba(85, 85, 85, 0.55);
        backdrop-filter: blur(10px);
        border: none;
        border-radius: 10px;
        cursor: pointer;
        padding: 10px 12px;
        z-index: 101;
    }

    .btn-hamburger span {
        display: block;
        width: 24px;
        height: 2px;
        background-color: white;
        border-radius: 2px;
        transition: all 0.3s ease;
        font-size: 0; /* Esconde texto */
    }

    .btn-hamburger.ativo span:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }

    .btn-hamburger.ativo span:nth-child(2) {
        opacity: 0;
    }

    .btn-hamburger.ativo span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }

    /* --- S1: HERO --- */
    .s1 {
        min-height: 80vh;
        padding: 0.2vw;
    }

    .s1 .img-fundo .content-s1 {
        margin-top: 50vh;
    }

    /* H1 hero — impacto máximo em tablet: letras grandes,
       tight tracking, sombra forte para destacar sobre a foto */
    .s1 .img-fundo .content-s1 h1 {
        font-size: clamp(40px, 7.5vw, 7.5vw);
        font-weight: 600;
        letter-spacing: -0.03em;
        line-height: 1.05;
        text-shadow: -2px 3px 20px rgba(0, 0, 0, 0.5);
    }

    .s1 .img-fundo .content-s1 p {
        font-size: clamp(16px, 1.8vw, 1.8vw);
        width: 80%;
        margin-left: 0;
    }

    .s1 .img-fundo .content-s1 .button-s1 {
        margin-left: 0;
        gap: 1rem;
    }

    /* --- CONTAINER (estatísticas) --- */
    .container {
        flex-wrap: wrap;
        justify-content: center;
        gap: 0;
        padding: 24px 5vw;
    }

    .item {
        width: 30%;
        padding: 1rem;
        text-align: center;
        align-items: center;
    }

    /* Redefine bordas para grade 2x2 */
    .item + .item {
        border-left: none;
    }

   
  
    .item strong {
        font-size: 5vw;
        justify-content: center;
    }

    .item strong img {
        width: 5vw;
        margin-right: 8px;
    }

    span {
        font-size: 0.8rem;
        text-align: center;
    }

    /* --- S2: TECNOLOGIA --- */
    .s2 {
        padding: 5vh 6vw;
        margin-bottom: 6vh;
    }

    .s2 .content-s2 h2 {
        font-size: clamp(32px, 5vw, 5vw);
        text-align: start;
    }

    .s2 .content-s2 p {
        font-size: clamp(15px, 1.8vw, 1.8vw);
        text-align: start;
    }

    .s2 .content-s2 .btn-saibamais-red {
        font-size: 14px;
    }

    /* Grid das imagens S2: simplifica para 2 colunas */
    .s2 .img-s2 {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: auto;
    }

    .s2 .img-s2 #img-1-s2 {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        height: 200px;
    }

    .s2 .img-s2 #img-2-s2 {
        grid-column: 2 / 3;
        grid-row: 1 / 2;
        height: 200px;
    }

    .s2 .img-s2 #img-3-s2 {
        grid-column: 1 / 3;
        grid-row: 2 / 3;
        height: 200px;
    }

    /* --- S3: SERVIÇOS --- */
    .s3 .content-s3 {
        padding: 16vh 5vw 6vh 5vw;
        border-radius: 15px;
    }

    .s3 .content-s3 h2 {
        font-size: 7vw;
        top: 6vh;
    }

    .s3 .content-s3 h4 {
        font-size: 2.5vw;
        top: 1.5vh;
    }

    .s3 .content-s3 .card-s3 {
        width: 90%;
        padding: 2.5vh 5vw;
    }

    .s3 .content-s3 h3 {
        font-size: 1.3rem;
    }

    .s3 .content-s3 p {
        font-size: 0.9rem;
    }

    /* --- S4: REGIÕES — empilha os cards --- */
    .s4 {
        padding: 4vh 5vw;
    }

    .s4 h2 {
        font-size: 5vw;
        margin-bottom: 3vh;
    }

    .s4 h2::after {
        width: 40vw;
    }

    @keyframes desenharLinha {
        100% { width: 40vw; opacity: 1; }
    }

    .s4 .flex-s4 {
        flex-direction: column;
        align-items: center;
        gap: 2vh;
    }

    .s4 .flex-s4 .cards-s4 {
        height: 35vh;
        width: 100%;
        border-radius: 10px;
    }

    .s4 .flex-s4 .cards-s4 .sobreposicao a {
        font-size: 1.1rem;
    }

    /* --- S5: ESTRUTURA OPERACIONAL --- */
    .s5 {
        padding: 0 4vw;
        gap: 2vh;
    }

    .s5 h2 {
        font-size: 5vw;
        margin-top: 10vh;
    }

    .s5 .card-s5 {
        flex-direction: column;
        gap: 2vh;
        margin-bottom: 1vh;
    }

    .s5 .card-s5:nth-child(even) {
        flex-direction: column;
    }

    .s5 .card-s5 .content-s5 {
        width: 100%;
        text-align: start;
        padding: 2vh 4vw;
    }

    .s5 .card-s5 .content-s5 h3 {
        font-size: 1.5rem;
    }

    .s5 .card-s5 .content-s5 p {
        font-size: 0.95rem;
        line-height: 1.6;
    }

    .s5 .card-s5 .content-s5 a {
        justify-content: center;
        display: inline-flex;
    }

    .s5 .card-s5 img {
        width: 100%;
        height: 40vw;
    }

    /* --- S6: FALE CONOSCO --- */
    .s6 {
        margin: 5vh 4vw;
        padding: 40px 5vw;
        border-radius: 15px;
    }

    .s6 .content-s6 .logo-rdo {
        max-width: 200px;
        margin: 0 auto;
    }

    .s6 .content-s6 h3 {
        font-size: clamp(1.5rem, 4vw, 4vw);
        text-align: center;
    }

    /* Desativa hover em touch — sem transform problemático */
    @media (hover: none) {
        .s1 .img-fundo header .btn-contato-vermelho:hover,
        .s1 .img-fundo .content-s1 .button-s1 .btn-s1-saibamais:hover,
        .s1 .img-fundo .content-s1 .button-s1 .btn-s1-orcamento:hover,
        .s2 .content-s2 .btn-saibamais-red:hover,
        .s3 .content-s3 .card-s3:hover,
        .s4 .flex-s4 .cards-s4:hover .sobreposicao,
        .s5 .card-s5 .content-s5:hover,
        .s6 .form-s6 .btn-s6 .btn-s1-saibamais:hover,
        .s6 .form-s6 .btn-s6 .btn-s1-orcamento:hover {
            transform: none;
            box-shadow: inherit;
        }
    }
}


/* ============================================================
   BREAKPOINT 4: 480px — Mobile
   Layout de coluna única, tipografia grande e legível
   ============================================================ */
@media screen and (max-width: 480px) {

    /* --- S1: HERO --- */
    .s1 {
        height: 80vh;
       
    }

    .s1 .img-fundo {
        border-radius: 10px;
        padding: 3vw 4vw;
    }

    .s1 .img-fundo header .logo-header {
        width: 100px;
    }

    header{
        justify-content: space-between;

        .a-contato{
            display: none;
        }
    }

    .s1 .img-fundo header .btn-contato-vermelho {
        display: none;
    }

    .s1 .img-fundo header .btn-contato-vermelho img {
        height: 34px;
        width: 34px;
    }

    .s1 .img-fundo .content-s1 {
        margin-top: 25vh;
    }

    /* H1 hero — mobile: ocupa bem a tela, sombra intensa
       para garantir leitura sobre qualquer fundo fotográfico */
    .s1 .img-fundo .content-s1 h1 {
        font-size: clamp(24px, 8vw, 9.5vw);
        font-weight: 600;
        letter-spacing: -0.03em;
        line-height: 1.3;
        text-shadow: -1px 3px 22px rgba(0, 0, 0, 0.55);
    }

    .s1 .img-fundo .content-s1 p {
        font-size: 0.85rem;
        width: 95%;
        margin-left: 0;
        line-height: 1.3;
    }

    .s1 .img-fundo .content-s1 .button-s1 {
        
        align-items: flex-start;
        gap: 0.8rem;
        margin-left: 0;
    }

    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-saibamais,
    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-orcamento {
        font-size: 0.9rem;
        width: 100%;
        justify-content: space-between;
        max-width: 220px;
    }

    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-saibamais img,
    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-orcamento img {
        height: 38px;
        width: 38px;
    }

    /* --- CONTAINER (estatísticas): coluna única --- */
    .container {
       justify-content: space-between;
        align-items: center;
        gap: 0;
        padding: 2px 2vw;
    }


    .item:nth-child(even) {
        border-left: none;
    }

    

    .item strong {
        font-size: 2rem;
        justify-content: center;
    }

    .item strong img {
        width: 1.6rem;
        margin-right: 10px;
    }

    span {
        font-size: 0.85rem;
    }

    /* --- S2: TECNOLOGIA --- */
    .s2 {
        padding: 4vh 5vw;
        margin-bottom: 4vh;
        gap: 4vh;
    }

    .s2 .content-s2 h2 {
        font-size: clamp(28px, 7vw, 7vw);
        text-align: start;
    }

    .s2 .content-s2 p {
        font-size: 0.9rem;
        line-height: 1.7;
        text-align: start;
    }

    .s2 .content-s2 .btn-saibamais-red {
        font-size: 0.9rem;
        padding: 2px 8px 2px 14px;
    }

    .s2 .content-s2 .btn-saibamais-red img {
        height: 42px;
        width: 42px;
    }

    /* Grid das imagens S2: coluna única */
    .s2 .img-s2 {
        display: flex;
        flex-direction: column;
        gap: 1rem;
        width: 100%;
    }

    .s2 .img-s2 #img-1-s2{
        width: 100%;
        height: 45vw;
        grid-column: unset;
        grid-row: unset;
    }

    .s2 .img-s2 #img-2-s2, #img-3-s2{
        display: none;
    }

    /* --- S3: SERVIÇOS --- */
    .s3 .content-s3 {
        padding: 14vh 4vw 5vh 4vw;
        border-radius: 12px;
    }

    .s3 .content-s3 h2 {
        font-size: 9vw;
        top: 5vh;
        text-align: center;
        width: 100%;
    }

    .s3 .content-s3 h4 {
        font-size: 3.5vw;
        top: 1.5vh;
        text-align: center;
        width: 100%;
        left: 0;
        right: 0;
    }

    .s3 .content-s3 .card-s3 {
        width: 100%;
        padding: 2.5vh 5vw;
        border-radius: 8px;
    }

    .s3 .content-s3 h3 {
        font-size: 1.2rem;
    }

    .s3 .content-s3 p {
        font-size: 0.88rem;
    }

    /* Card hover → tap-friendly (escurece via active) */
    .s3 .content-s3 .card-s3:active {
        background-color: #4b0202;
    }

    .s3 .content-s3 .card-s3:active h3,
    .s3 .content-s3 .card-s3:active p {
        color: #EDF2F4;
    }

    /* --- S4: REGIÕES --- */
    .s4 {
        padding: 3vh 4vw;
    }

    .s4 h2 {
        font-size: 7vw;
        margin-bottom: 3vh;
    }

    .s4 h2::after {
        width: 55vw;
    }

    @keyframes desenharLinha {
        100% { width: 60vw; opacity: 1; }
    }

    .s4 .flex-s4 .cards-s4 {
        height: 30vh;
        width: 100%;
        min-height: 180px;
    }

    .s4 .flex-s4 .cards-s4 .sobreposicao a {
        font-size: 1.2rem;
        left: 5%;
        bottom: 5%;
    }

    /* --- S5: ESTRUTURA OPERACIONAL --- */
    .s5 {
        padding: 0 4vw;
        gap: 1.5vh;
    }

    .s5 h2 {
        font-size: 7vw;
        margin-top: 8vh;
        text-align: center;
    }

    .s5 .card-s5 .content-s5 h3 {
        font-size: 1.5rem;
        text-align: start;
    }

    .s5 .card-s5 .content-s5 p {
        font-size: 0.9rem;
        line-height: 1.6;
        text-align: start;
    }

    .s5 .card-s5 img {
        height: 50vw;
        border-radius: 10px;
    }

    /* --- S6: FALE CONOSCO --- */
    .s6 {
        margin: 4vh 3vw;
        padding: 35px 5vw;
        border-radius: 12px;
        gap: 30px;
    }

    .s6 .content-s6 .logo-rdo {
        max-width: 160px;
    }

    .s6 .content-s6 h3 {
        font-size: 1.6rem;
        text-align: center;
    }

    .s6 .content-s6 p {
        font-size: 0.9rem;
        text-align: center;
    }

    .s6 .content-s6 a {
        font-size: 0.85rem;
        text-align: center;
    }

    .s6 .form-s6 .linha label {
        font-size: 0.85rem;
    }

    .s6 .form-s6 .linha input {
        height: 48px;
        font-size: 0.9rem;
    }

    .s6 .form-s6 .btn-s6 {
        margin-top: 10px;
        gap: 0.8rem;
    }

    .s6 .form-s6 .btn-s6 .btn-s1-saibamais,
    .s6 .form-s6 .btn-s6 .btn-s1-orcamento {
        font-size: 1rem;
        padding: 5px 19px;
        justify-content: center;
    }

    .s6 .form-s6 .btn-s6 .btn-s1-saibamais img,
    .s6 .form-s6 .btn-s6 .btn-s1-orcamento img {
        height: 40px;
        width: 40px;
    }
}


/* ============================================================
   UTILITÁRIO: Desativa hover em qualquer dispositivo touch
   Evita estados "presos" após tap
   ============================================================ */
@media (hover: none) and (pointer: coarse) {

    .s1 .img-fundo header .btn-contato-vermelho:hover,
    .s2 .content-s2 .btn-saibamais-red:hover,
    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-saibamais:hover,
    .s1 .img-fundo .content-s1 .button-s1 .btn-s1-orcamento:hover,
    .s6 .form-s6 .btn-s6 .btn-s1-saibamais:hover,
    .s6 .form-s6 .btn-s6 .btn-s1-orcamento:hover {
        transform: none !important;
        box-shadow: -4px 5px 16px 0px rgba(0, 0, 0, 0.3) !important;
    }

    .s3 .content-s3 .card-s3:hover {
        background-color: #f0f4f7 !important;
        box-shadow: 0px 0px 2px 4px white !important;
    }

    .s3 .content-s3 .card-s3:hover h3,
    .s3 .content-s3 .card-s3:hover p {
        color: inherit !important;
    }

    .s4 .flex-s4 .cards-s4:hover .sobreposicao {
        background-color: rgba(0, 0, 0, 0.55) !important;
    }

    .s5 .card-s5 .content-s5:hover {
        box-shadow: none !important;
    }
}
