/* =========================================
   RESET E ESTILOS GERAIS
   ========================================= */
body {
    margin: 0;
    padding: 0;
}

.ep-lamina {
    max-width: 1920px;
    margin: 0 auto;
    display: grid;
    overflow-x: hidden;
}

.ep-lamina * {
    font-family: "elza", sans-serif;
    font-weight: 400;
    font-style: normal;
    box-sizing: border-box;
}

.ep-lamina h3, .ep-lamina h4, .ep-lamina h5, .ep-lamina h6, .ep-lamina p {
    margin: 0;
    padding: 0;
}

/* =========================================
   UTILITÁRIOS (Mobile/Desktop)
   ========================================= */
.only-desktop {
    display: flex !important;
}
.only-desktop-block {
    display: block !important;
}
.only-mobile {
    display: none !important;
}

@media screen and (max-width: 900px) {
    .only-desktop {
        display: none !important;
    }
    .only-desktop-block {
        display: none !important;
    }   
    .only-mobile {
        display: flex !important;
    }
}

/* =========================================
   SEÇÃO FICHA TÉCNICA (TECLADO/SPECS)
   ========================================= */

/* --- BASE (MOBILE) --- */
.kb-specs-section {
    width: 100%;
    background-color: #fff;
    padding: 0 0 60px 0;
    max-width: 430px; 
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    font-family: "elza", sans-serif;
    color: #000;
}

.kb-specs-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

/* --- Coluna Visual --- */
.kb-visual-col {
    width: 100%;
    position: relative;
    display: flex;
    justify-content: center;
    padding-top: 40px; 
    margin-bottom: 40px;
}

/* Fundo M Azul */
.kb-bg-m {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 0;
}

.bg-m-mobile {
    width: 100%;
    display: block;
    height: 450px;
    object-fit: contain;
    object-position: top;
}

/* Imagem do Produto Specs */
.kb-prod-specs-img {
    position: relative;
    z-index: 1;
    width: 90%;
    max-width: 425px;
    height: auto;
    margin-top: -20px;
    display: block;
}

/* --- Coluna Texto --- */
.kb-text-col {
    width: 100%;
    padding: 0 0px 0px 20px;
    text-align: left;
    z-index: 2;
}

.specs-title {
    color: #0050DC;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 25px !important;
}

.specs-list {
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
}

.specs-list li {
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 8px;
    color: black;
}

.specs-list strong {
    font-weight: 700;
    color: #000;
}

#d10{
    align-items: center;
}

/* --- MEDIA QUERY DESKTOP (> 991px) --- */
@media screen and (min-width: 991px) {
    
    #d10{
        align-items: self-start !important;
    }
    .kb-specs-section {
        max-width: none;
        margin: 0;
        padding: 80px 0;
        display: flex;
        justify-content: center;
        min-height: 1000px;
    }

    .kb-specs-wrapper {
        width: 100%;
        max-width: 1400px;
        flex-direction: row; 
        align-items: flex-start;
        justify-content: space-between;
        position: relative;
    }

    /* Coluna Texto (Esquerda) */
    .kb-text-col {
        width: 40%;
        text-align: left;
        padding: 40px 0 0 50px;
        background-color: transparent;
        order: 1;
    }

    .specs-title {
        font-size: 36px;
        margin-bottom: 30px !important;
    }

    .specs-list {
        text-align: left;
    }

    .specs-list li {
        font-size: 25px;
        margin-bottom: 5px;
    }

    /* Coluna Visual (Direita) */
    .kb-visual-col {
        width: 55%;
        order: 2;
        margin-bottom: 0;
        padding-top: 0;
        position: absolute;
        right: 0;
        top: 0;
        height: 100%;
        display: block;
    }

    .kb-bg-m {
        position: absolute;
        top: -50px;
        right: -250px;
        width: 135%;
        height: 120%;
        z-index: 0;
    }

    .bg-m-desktop {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: right top;
    }

    .kb-prod-specs-img {
        width: 110%;
        max-width: 1400px;
        margin-top: 0px;
        margin-left: 0px;
    }
}

@media screen and (min-width: 991px) and (max-width: 1440px) {
    .kb-prod-specs-img {
        width: 100%;
        max-width: 1400px;
        margin-top: 00px;
        margin-right: 100px;
    }
}

/* =========================================
   SEÇÃO TECLADO (DOBRA 01 - HERO)
   ========================================= */

/* --- BASE (MOBILE) --- */
.keyboard-section {
    width: 100%;
    max-width: 430px; 
    margin: 0 auto;
    background-image: url('assets/images/teclado-mobile.png');
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
    min-height: 660px; 
    padding: 20px 20px;
    position: relative;
    overflow: hidden;
}

.keyboard-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    height: 100%;
    width: 100%;
}

.kb-text-col {
    display: flex;
    flex-direction: column;
    align-items: left;
    margin-top: 10px; 
}

.kb-logo {
    width: 160px;
    margin-bottom: 30px;
}

.kb-title {
    color: #0050DC;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.1;
    margin-bottom: 5px;
    margin-top: 10px;
}

.kb-subtitle {
    color: #555555;
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 90px!important;
}

.kb-pill {
    display: inline-block;
    background-color: #0050DC;
    color: #fff;
    font-weight: 400;
    font-size: 22px;
    padding: 10px 25px;
    border-radius: 40px;
    text-transform: uppercase;
    margin-top: 0px;
}

/* --- MEDIA QUERY DESKTOP (> 991px) --- */
@media screen and (min-width: 991px) {
    
    .keyboard-section {
        max-width: none;
        margin: 0;
        background-image: url('assets/images/teclado-desktop.png');
        background-size: cover;
        background-position: center center;
        min-height: 950px;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 80px 0;
    }

    .keyboard-wrapper {
        width: 100%;
        max-width: 1400px;
        padding: 0 50px;
        flex-direction: row;
        justify-content: flex-start; 
        align-items: center;
        text-align: left;
    }

    .kb-text-col {
        align-items: flex-start;
        margin-top: 0;
        max-width: 500px; 
    }

    .kb-logo {
        margin-top: 60px;
        width: 260px;
        margin-bottom: 40px;
    }

    .kb-title {
        font-size: 70px;
        margin-bottom: 20px;
    }

    .kb-subtitle {
        font-size: 34px;
        margin-bottom: 50px!important;
    }

    .kb-pill {
        font-size: 38px;
        padding: 14px 30px;
        margin-bottom: 150px!important;
    }
}

@media screen and (min-width: 991px) and (max-width: 1250px) {
    .kb-text-col {
        max-width: 350px;
    }
}

/* =========================================
   SEÇÃO FEATURES (ÍCONES)
   ========================================= */

/* --- BASE (MOBILE) --- */
.kb-features-section {
    width: 100%;
    background-color: #fff;
    padding: 50px 20px;
    max-width: 430px; 
    margin: 0 auto;
    font-family: "elza", sans-serif;
    box-sizing: border-box;
}

.features-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr; 
    gap: 40px 20px; 
    justify-items: center;
}

.feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
}

.feature-icon {
    width: 60px;
    height: auto;
    display: block;
    margin-bottom: 15px;
    max-width: 100%; 
}

.feature-text {
    color: #000;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 400;
    text-transform: uppercase;
    margin: 0;
}

/* --- MEDIA QUERY DESKTOP (> 991px) --- */
@media screen and (min-width: 991px) {
    
    .kb-features-section {
        max-width: none;
        margin: 0;
        padding: 80px 0;
        display: flex;
        justify-content: center;
    }

    .features-wrapper {
        width: 100%;
        max-width: 1400px;
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        align-items: flex-start;
        gap: 0;
    }

    .feature-icon {
        width: 85px;
        margin-bottom: 20px;
    }

    .feature-text {
        font-size: 24px;
        font-weight: 400;
    }
}

/* =========================================
   DOBRA 09 (Footer)
   ========================================= */
.ep-lamina .dobra-09 {
    margin: 0px auto;
    margin-top: 0px;
    padding: 2.5% 56px;
    background-color: #0050DC;
    border-radius: 20px 20px 0 0 ;
    width: 100%;
    max-width: 1920px;
}

.ep-lamina .dobra-09 .feature__content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.ep-lamina .dobra-09 .feature__content > .image {
    max-width: 242px;
    height: 91px;
    border-radius: 0 !important;
}

.ep-lamina .dobra-09 .feature__content > .text__content {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.ep-lamina .dobra-09 .feature__content > .text__content > .line > .feature__description {
    color: #ffffff;
    font-weight: 400;
    font-size: 24px;
}

.ep-lamina .dobra-09 .feature__content > .text__content > .line > .feature__description > span {
    font-weight: 600;
}

@media screen and (max-width: 900px) {
    .ep-lamina .dobra-09 {
        margin: 0 11px;
        margin-top: 60px;
        border-radius: 10px;
        padding: 12px 13px;
        width: 100%;
        justify-self: center;
        height: 70px;
        align-items: center;
    }

    .ep-lamina .dobra-09 .feature__content > .image {
        max-width: 122px;
        height: auto;
    }

    .ep-lamina .dobra-09 .feature__content > .text__content {
        gap: 4px;
    }

    .ep-lamina .dobra-09 .feature__content > .text__content > .line > .feature__description {
        font-size: 10px;
    }
}

@media screen and (max-width: 360px) {
    .ep-lamina section {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        width: 100% !important;
    }
}

/* =========================================
   SEÇÃO POWER BANK (BANNER)
   ========================================= */

/* --- BASE (MOBILE) --- */
.powerbank-section {
    width: 100%;
    max-width: 430px; 
    margin: 0 auto;
    background-image: url('assets/images/powerbank-mobile.png'); 
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    min-height: 630px; 
    border-radius: 30px;
    padding: 60px 60px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    font-family: "elza", sans-serif;
    color: #fff;
    box-sizing: border-box;
    margin-bottom: 40px;
}

.powerbank-wrapper {
    width: 100%;
    text-align: center;
}

.pb-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 20px 0;
    margin-bottom: 20px !important;
}

.pb-desc {
    font-size: 16px;
    font-weight: 300;
    line-height: 1.4;
    margin: 0;
}

/* --- MEDIA QUERY DESKTOP (> 991px) --- */
@media screen and (min-width: 991px) {
    .powerbank-wrapper {
        width: 100%;
        text-align: left;
    }
    .powerbank-section {
        max-width: 1400px; 
        margin: 0 auto;
        margin-bottom: 80px;
        background-image: url('assets/images/powerbank-desktop.png'); 
        background-position: center center;
        min-height: 480px;
        justify-content: center;
        padding-left: 120px;
    }
    
    .pb-title {
        font-size: 40px;
        margin-bottom: 25px!important;
    }

    .pb-desc {
        font-size: 24px;
        line-height: 1.5;
    }
}

/* =========================================
   SEÇÃO CAPACIDADE (CARD AZUL)
   ========================================= */

/* --- BASE (MOBILE) --- */
.capacity-section {
    width: 100%;
    background-color: #fff;
    padding: 20px 0px;
    
    /* TRAVA MOBILE */
    max-width: 430px; 
    margin: 0 auto;
    
    font-family: "elza", sans-serif;
    box-sizing: border-box;
}

.capacity-wrapper {
    width: 100%;
}

/* O Card Azul */
.capacity-card {
    background-color: #0050DC; /* Azul Vibrante */
    border-radius: 30px;
    padding: 20px 30px 0 30px; /* Padding bottom 0 para colar a imagem no mobile */
    color: #fff;
    display: flex;
    flex-direction: column; /* Empilha verticalmente */
    align-items: center;
    text-align: center;
    
    /* IMPORTANTE: Remover overflow: hidden para permitir o "vazamento" no desktop */
    /* No mobile, podemos manter hidden se quisermos cortar a base, mas no desktop precisa ser visible */
    overflow: hidden; 
}

/* --- Área de Texto --- */
.cap-text-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
    order: 1; /* Texto primeiro no mobile */
}

/* Ícone */
.cap-icon {
    width: 60px;
    height: auto;
    display: block;
    margin-bottom: 15px !important;
}

/* Títulos */
.cap-title {
    font-size: 26px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 15px 0;
    margin-bottom: 15px !important;
}

.cap-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
   
}

/* --- Área de Imagem --- */
.cap-img-col {
    width: 100%;
    display: flex;
    justify-content: center;
    order: 2; /* Imagem depois no mobile */
}

.cap-prod-img {
    width: 80%;
    height: auto;
    display: block;
    margin-bottom: 0px; /* Cola no fundo do card mobile */
}


/* =========================================
   MEDIA QUERY DESKTOP (> 991px)
   ========================================= */
@media screen and (min-width: 991px) {
    
    .capacity-section {
        max-width: none;
        margin: 0;
        padding: 80px 0; /* Espaço externo generoso */
        display: flex;
        justify-content: center;
    }

    .capacity-wrapper {
        width: 100%;
        max-width: 1400px;
        padding: 0;
        /* Adiciona margem top para compensar a imagem que vai subir */
        margin-top: 50px; 
    }

    .capacity-card {
        flex-direction: row; /* Lado a lado */
        justify-content: space-between;
        align-items: center;
        text-align: left;
        padding: 0 80px; /* Padding lateral */
        border-radius: 40px;
        
        /* AQUI ESTÁ O SEGREDO: Permitir que a imagem saia */
        overflow: visible !important; 
        position: relative;
        min-height: 400px; /* Altura mínima para o card */
    }

    /* Coluna Imagem (Esquerda) */
    .cap-img-col {
        order: 1;
        width: 45%;
        justify-content: flex-start;
        position: relative; /* Para controle de z-index */
    }

    /* Imagem Sobreposta */
    .cap-prod-img {
        width: 130%; /* Aumenta largura para parecer grande */
        max-width: 600px;
        height: auto;
        
        /* Posicionamento para "vazar" */
        margin-top: -100px; /* Sobe a imagem para fora do topo */
        margin-bottom: 0px; /* Desce a imagem para fora da base */
        margin-left: -50px; /* Puxa para a esquerda */
        
        position: relative;
        z-index: 10; /* Garante que fique acima de tudo */
        
    }

    /* Coluna Texto (Direita) */
    .cap-text-col {
        order: 2;
        width: 45%;
        align-items: flex-start; /* Alinha à esquerda */
        margin-bottom: 0;
        padding: 60px 0; /* Espaço vertical interno */
    }

    .cap-icon {
        width: 100px; /* Ícone maior */
        margin-bottom: 25px !important;
    }

    .cap-title {
        font-size: 42px;
        margin-bottom: 20px !important;
    }

    .cap-desc {
        font-size: 20px;
        max-width: 500px;
    }
}

/* =========================================
   SEÇÃO AGILIDADE E DIA A DIA
   ========================================= */

/* --- BASE (MOBILE) --- */
.agility-section {
    width: 100%;
    background-color: #fff;
    padding: 40px 0px;
    
    /* TRAVA MOBILE */
    max-width: 430px; 
    margin: 0 auto;
    
    font-family: "elza", sans-serif;
    box-sizing: border-box;
}

.agility-wrapper {
    width: 100%;
}

/* Card Cinza de Fundo */
.agility-card {
    background-color: #E6E7E9; /* Cinza claro da imagem */
    border-radius: 0px;
    padding: 40px 40px;
    
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
    /* overflow: visible é crucial para a imagem sair da borda no desktop */
    overflow: visible; 
}

/* Blocos de Texto/Ícone */
.agility-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin-bottom: 0px;
    z-index: 2; /* Fica acima da imagem se encostar */
}

.ag-icon {
    width: 60px;
    height: auto;
    display: block;
    margin-bottom: 10px;
}

/* Títulos */
.ag-title {
    color: #0050DC;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
    margin: 0 0 10px 0;
    margin-bottom: 10px !important;
}

/* Descrição */
.ag-desc {
    color: #707070; /* Cinza escuro */
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    max-width: 280px;
}

/* Imagem Central */
.agility-img-col {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 20px 0; /* Espaço entre os textos no mobile */
    z-index: 1;
}

.ag-prod-img {
    margin-top: -30px; /* Sobe um pouco para colar no card */
    margin-bottom: -30px; /* Desce um pouco para colar no card */
    width: 100%; /* Tamanho contido no mobile */
    max-width: 400px;
    height: auto;
    display: block;
    /* Leve rotação conforme a imagem */
    
}
.text-left{
    text-align: left;
    align-items: flex-start;
    
}
.text-right{
   text-align: right;
    align-items: flex-end;
}

/* =========================================
   MEDIA QUERY DESKTOP (> 1150px)
   ========================================= */
@media screen and (min-width: 1150px) {
    
    .agility-section {
        /* RESET TRAVA */
        max-width: none;
        margin: 0;
        padding: 80px 0;
        
        display: flex;
        justify-content: center;
    }

    .agility-wrapper {
        width: 100%;
        max-width: 1400px;
        padding: 0 0px;
        /* Margem extra vertical para a imagem grande não bater em outras dobras */
        margin-top: 0px;
        margin-bottom: 0px;
    }

    .agility-card {
        flex-direction: row; /* Lado a lado */
        justify-content: space-between;
        align-items: center; /* Centraliza verticalmente */
        
        padding: 60px 50px;
        border-radius: 50px;
        min-height: 350px; /* Altura do bloco cinza */
    }

    /* Itens de Texto */
    .agility-item {
        width: 30%; /* Ocupa as laterais */
        margin-bottom: 0;
        
    }
    .text-left{
        text-align: right;
        align-items: flex-end;
    }
    .text-right{
        text-align: left;
        align-items: flex-start;
    }
    .ag-title {
        font-size: 42px;
        margin-bottom: 15px!important;
    }
    
    .ag-desc {
        font-size: 20px;
        max-width: 300px;
    }
    
    .ag-icon {
        width: 100px;
        margin-bottom: 20px;
    }

    /* Configuração da Imagem "Pop-out" (Central) */
    .agility-img-col {
        width: 40%; /* Ocupa o centro */
        margin: 0;
        position: relative;
    }

    .ag-prod-img {
        width: 140%; /* Faz a imagem ser maior que o espaço dela */
        max-width: 600px;
        margin-left: 0%; /* Compensa o width 140% */
        margin-top: -150px;
        margin-bottom: -150px;
       
    }
}
/* =========================================
   SEÇÃO VERSATILIDADE (CARD AZUL COM SETAS)
   ========================================= */

/* --- BASE (MOBILE) --- */
.versatility-section {
    width: 100%;
    background-color: #fff;
    padding: 40px 0px;
    
    /* TRAVA MOBILE */
    max-width: 430px; 
    margin: 0 auto;
    
    font-family: "elza", sans-serif;
    box-sizing: border-box;
}

.vers-wrapper {
    width: 100%;
}

/* O Card Azul */
.vers-card {
    background-color: #0050DC; /* Azul Multi */
    border-radius: 30px;
    padding-top: 50px;
    padding-bottom: 0; /* Imagem cola no chão */
    
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: #fff;
    overflow: hidden;
    position: relative;
}

/* Coluna de Texto */
.vers-text-col {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 2;
    padding: 0 20px;
}

.vers-block {
    margin-bottom: 30px;
}

.vers-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 10px 0;
    margin-bottom: 5px !important;
}

.vers-desc {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
    opacity: 0.9;
}

/* Setas (Imagens PNG transparentes) */
.vers-arrows {
    position: absolute;
    bottom: -140px; 
    left: 50%;
    transform: translateX(-50%);
    width: 65%; 
    height: auto;
    z-index: 1; 
    pointer-events: none;
}
@media screen and (max-width: 400px) {
    .vers-arrows {
            position: absolute;
            bottom: -140px; 
            left: 50%;
            transform: translateX(-50%);
            width: 73%; 
            height: auto;
            z-index: 1; 
            pointer-events: none;
    }
}
@media screen and (max-width: 340px) {
    .vers-arrows {
        width: 0%; /* Largura das setas */
    }
}
/* Coluna de Imagem */
.vers-img-col {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: -5px; /* Cola no fundo */
    z-index: 2;
    margin-top: 20px; /* Espaço para as setas aparecerem */
}

.vers-prod-img {
    width: 90%;
    max-width: 350px;
    height: auto;
    display: block;
}


/* =========================================
   MEDIA QUERY DESKTOP (> 1150px)
   ========================================= */
@media screen and (min-width: 1150px) {
    
    .versatility-section {
        /* RESET TRAVA */
        max-width: none;
        margin: 0;
        padding: 80px 0;
        
        display: flex;
        justify-content: center;
    }

    .vers-wrapper {
        width: 100%;
        max-width: 1400px;
        padding: 0 0px;
    }

    .vers-card {
        flex-direction: row; /* Lado a lado */
        align-items: center;
        justify-content: center;
        padding: 40px 0 0 0; /* Padding só no topo */
        border-radius: 40px;
        min-height: 500px;
    }

    /* Coluna Texto Desktop */
    .vers-text-col {
        flex-direction: row; 
        justify-content: space-between;
        width: 100%;
        padding: 0 50px;
        position: absolute; /* Texto flutua sobre o card */
        top: 35%; /* Ajuste vertical */
        left: 0;
    }

    .vers-block {
        width: 20%; /* Cada bloco ocupa um lado */
        text-align: left; /* Esquerda alinha esq */
    }
    
    .vers-block:last-child {
        text-align: right; /* Direita alinha dir (Fácil de usar) */
    }

    .vers-title {
        font-size: 40px;
        margin-bottom: 10px!important;
    }

    .vers-desc {
        font-size: 20px;
    }
    .first-block{
        width: 25%;
        text-align: right;
        margin-top: 70px;
    }
    /* Setas Desktop */
    .vers-arrows.only-desktop {
        /* As setas desktop são largas e conectam os lados ao centro */
        width: 45%; 
        top: -100px; /* Ajuste fino vertical em relação ao texto */
        left: 53%;
        bottom: auto; /* Reseta o bottom do mobile */
    }

    /* Coluna Imagem Desktop */
    .vers-img-col {
        width: 40%; /* Imagem no centro */
        margin-top: 100px; /* Empurra para baixo para não bater no texto */
        z-index: 1;
    }

    .vers-prod-img {
        width: 100%;
        max-width: 600px;
    }
}
/* =========================================
   SEÇÃO DESIGN COMPACTO (MOCHILA)
   ========================================= */

/* --- BASE (MOBILE) --- */
.compact-design-section {
    width: 100%;
    /* TRAVA MOBILE */
    max-width: 430px; 
    margin: 0 auto;
    /* Imagem de fundo Mobile (Foco na mochila) */
    background-image: url('assets/images/compact-mobile.png'); 
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;
    
    min-height: 600px; 
    border-radius: 30px;
    
    display: flex;
    flex-direction: column;
    padding: 60px 20px;
    
    font-family: "elza", sans-serif;
    color: #fff;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 40px !important;
    margin-top: 20px !important;
}

.compact-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.compact-content {
    display: flex;
    flex-direction: column;
    align-items: flex-end; /* Texto alinhado à direita */
    text-align: left;
    width: 100%;
    margin-bottom: auto; /* Empurra o que tiver abaixo para o fundo */
}

/* Títulos e Textos */
.compact-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 15px 0;
    margin-right: 35px !important;
    margin-bottom: 15px !important;
}
.leve{
    margin-right: 10px !important;
}
.compact-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 0 15px 0;
   
}

.compact-desc strong {
    font-weight: 700;
}

/* Box de Alerta (Mobile: Absoluto no Rodapé) */
.flight-alert-box {
    background-color: #fff;
    border-radius: 10px;
    padding: 15px 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 15px;
    
    /* No mobile, usamos absolute para fixar no rodapé do card */
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    width: 98%;
    
    box-shadow: 0 5px 15px rgba(0,0,0,0.2);
    text-align: left;
    color: #0050DC; /* Azul Multi */
}

.flight-icon {
    width: 60px;
    height: auto;
}

.flight-text {
    font-size: 14px;
    line-height: 1.3;
    margin: 0;
}

.flight-text strong {
    font-weight: 700;
}


/* =========================================
   MEDIA QUERY DESKTOP (> 1150px)
   ========================================= */
@media screen and (min-width: 1150px) {
    
    .compact-design-section {
        max-width: 1400px;
        margin: 0 auto;
        margin-bottom: 80px;
        
        background-image: url('assets/images/compact-desktop.png'); 
        background-position: center center;
        
        min-height: 500px;
        padding: 0 60px; /* Padding lateral */
    }

    .compact-wrapper {
        flex-direction: row; /* Layout horizontal */
        justify-content: space-between; /* Espalha: Selo Esq <-> Texto Dir */
        align-items: center; /* Centraliza verticalmente no geral */
        width: 100%;
        position: relative; /* Contexto de posicionamento */
    }

    /* 1. CONFIGURAÇÃO DO SELO (ESQUERDA) */
    .flight-alert-box {
        position: static; /* Remove o absolute do mobile */
        transform: none;
        
        /* Posicionamento no Desktop */
        align-self: flex-end; /* Encosta no fundo da seção */
        margin-bottom: 60px; /* Espaço do chão */
        
        width: auto;
        max-width: 550px;
        padding: 20px 30px;
    }
    
    /* 2. CONFIGURAÇÃO DO TEXTO (DIREITA) */
    .compact-content {
        padding-left: 30px;
        align-items: flex-start; /* Alinha o texto à esquerda DENTRO do bloco */
        text-align: left;
        
        /* Mas o bloco em si fica na direita da tela */
        max-width: 400px; 
        margin-bottom: 0;
       
    }

    .compact-title {
        font-size: 40px;
        margin-bottom: 20px !important;
    }

    .compact-desc {
        font-size: 20px;
    }
    
    .flight-icon {
        width: 40px;
    }
    
    .flight-text {
        font-size: 18px;
    }
}
/* =========================================
   SEÇÃO COMPATIBILIDADE LIFESTYLE
   ========================================= */

/* --- BASE (MOBILE) --- */
.comp-lifestyle-section {
    width: 100%;
    /* TRAVA MOBILE */
    max-width: 430px; 
    margin: 0 auto;
    
    /* Imagem de fundo Mobile */
    background-image: url('assets/images/lifestyle-comp-mobile.png'); 
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    
    /* Altura fixa */
    min-height: 600px; 
    border-radius: 30px; /* Bordas arredondadas */
    
    display: flex;
    flex-direction: column;
    justify-content: flex-start; /* Texto no topo */
    padding: 60px 30px;
    
    font-family: "elza", sans-serif;
    color: #fff;
    text-align: left;
    box-sizing: border-box;
    margin-bottom: 100px!important;
    margin-top: 20px!important;
}

.comp-life-wrapper {
    width: 100%;
}

.comp-life-content {
    max-width: 250px; /* Limita largura do texto no mobile */
}

/* Títulos e Textos */
.comp-life-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0 0 15px 0;
    margin-bottom: 15px !important;
    
}

.comp-life-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    margin: 0;
   
}


/* =========================================
   MEDIA QUERY DESKTOP (> 1150px)
   ========================================= */
@media screen and (min-width: 1150px) {
    
    .comp-lifestyle-section {
        /* RESET TRAVA */
        max-width: 1400px;
        margin: 0 auto;
        margin-bottom: 80px;
        
        /* Imagem Desktop */
        background-image: url('assets/images/lifestyle-comp-desktop.png'); 
        background-position: center center;
        
        min-height: 630px;
        
        /* Alinhamento: Centraliza verticalmente */
        justify-content: center;
        padding: 0 0 0 120px; /* Espaço na esquerda */
    }

    .comp-life-content {
        max-width: 400px; /* Texto mais largo no desktop */
    }

    .comp-life-title {
        font-size: 40px;
        margin-bottom: 20px !important;
    }

    .comp-life-desc {
        font-size: 20px;
    }
}
@media screen and (min-width: 991px) and (max-width: 1450px) {
     .powerbank-section {
        max-width: 1200px; 
     }
    .capacity-wrapper {
        max-width: 1200px;
    }
    .agility-wrapper {
        max-width: 1200px;
    }
    .vers-wrapper {
        max-width: 1200px;
    }
    .compact-design-section {
        max-width: 1200px;
    }
    .comp-lifestyle-section {
        max-width: 1200px;
    }
    .kb-specs-wrapper {
        max-width: 1200px;
    }
}
