/* ==================================
   MOBILE OPTIMIZATION - MAXIMUM SCREEN USAGE
   ================================== */

@media(max-width: 768px) {
    /* ===== GLOBAL RESET ===== */
    * {
        box-sizing: border-box;
    }
    
    body {
        overflow-x: hidden;
        width: 100%;
    }
    
    /* ===== MAXIMIZE SCREEN USAGE - MINIMAL PADDING ===== */
    .e-con-boxed,
    .e-con-inner {
        max-width: 100% !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
    
    .e-con {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    /* ===== HERO SECTION - COMPACT ===== */
    .elementor-14242 .elementor-element.elementor-element-30b3abd {
        padding: 25px 12px 15px 12px !important;
        min-height: auto !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-34e4d39 {
        width: 100% !important;
        padding: 0 !important;
        margin-bottom: 16px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-c081bf4 {
        margin-bottom: 12px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-c081bf4 .elementor-heading-title {
        font-size: 26px !important;
        line-height: 1.25 !important;
        text-align: center !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-1fa91b0,
    .elementor-14242 .elementor-element.elementor-element-93ab4f9 p {
        font-size: 16px !important;
        line-height: 1.4 !important;
        text-align: center !important;
        margin-bottom: 16px !important;
        padding: 0 !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-0aab0fb {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-0aab0fb .elementor-button {
        width: 100% !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        padding: 16px 20px !important;
        text-align: center !important;
    }
    
    /* Texto do botão mais curto para mobile */
    .elementor-14242 .elementor-element.elementor-element-0aab0fb .elementor-button-text {
        font-size: 0 !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-0aab0fb .elementor-button-text::after {
        content: "QUERO ATIVAR AGORA" !important;
        font-size: 14px !important;
        font-weight: 700 !important;
    }
    
    /* ===== METRIC CARDS - COMPACT GRID ===== */
    .metric-cards-container {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        padding: 20px 12px !important;
        margin: 0 !important;
    }
    
    .metric-card {
        padding: 16px 12px !important;
        min-height: 48px !important;
        cursor: pointer !important;
        transition: transform 0.2s ease !important;
    }
    
    .metric-card:active {
        transform: scale(0.98) !important;
    }
    
    .metric-number {
        font-size: 24px !important;
        margin-bottom: 6px !important;
    }
    
    .metric-label {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }
    
    /* ===== CYCLE CHART SECTION - COMPACT ===== */
    .elementor-14242 .elementor-element.elementor-element-9638714 .elementor-heading-title {
        font-size: 24px !important;
        line-height: 1.3 !important;
        padding: 0 !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }
    
    .cycle-text,
    .cycle-highlight,
    .cycle-description {
        font-size: 15px !important;
        line-height: 1.4 !important;
        margin-bottom: 10px !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    .cycle-chart-container {
        padding: 15px 0 !important;
        margin: 15px 0 !important;
    }
    
    /* ===== iPHONE SIMULATION - OPTIMIZED ===== */
    .ai-chat-section {
        padding: 20px 16px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    .ai-section-title {
        font-size: 22px !important;
        line-height: 1.3 !important;
        margin-bottom: 8px !important;
        padding: 0 8px !important;
        text-align: center !important;
        width: 100% !important;
    }
    
    .ai-section-subtitle {
        font-size: 14px !important;
        line-height: 1.4 !important;
        margin-bottom: 15px !important;
        padding: 0 8px !important;
        text-align: center !important;
        width: 100% !important;
    }
    
    .iphone-mockup {
        width: 100% !important;
        max-width: 100vw !important;
        overflow: visible !important;
        display: flex !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 0 15px 0 !important;
    }
    
    .iphone-frame {
        width: 98% !important;
        max-width: calc(100vw - 16px) !important;
        height: auto !important;
        margin: 0 auto !important;
        display: block !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }
    
    .ai-chat-section {
        overflow-x: hidden !important;
        overflow-y: visible !important;
        padding: 15px 8px !important;
    }
    
    .whatsapp-interface {
        height: 620px !important;
        width: 100% !important;
        overflow: hidden !important;
    }
    
    .chat-messages {
        max-height: 550px !important;
        overflow-y: auto !important;
        padding: 10px 8px !important;
    }
    
    .ai-cta-button {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 15px !important;
        padding: 16px 20px !important;
        margin: 0 !important;
    }
    
    /* ===== OFFER SECTION - COMPACT PREMIUM CARD ===== */
    .offer-section {
        padding: 20px 12px !important;
    }
    
    .offer-section h2 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 16px !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    /* Ajustar badge no mobile para não sobrepor */
    .offer-section > div > div[style*="padding-top"] {
        padding-top: 40px !important;
    }
    
    .offer-section div[style*="ACESSO IMEDIATO"] {
        font-size: 11px !important;
        padding: 8px 20px !important;
        white-space: nowrap !important;
    }
    
    .offer-card {
        padding: 20px 16px !important;
        margin: 0 !important;
    }
    
    .offer-badge {
        font-size: 11px !important;
        padding: 6px 12px !important;
        margin-bottom: 12px !important;
    }
    
    .offer-title {
        font-size: 22px !important;
        line-height: 1.3 !important;
        margin-bottom: 10px !important;
    }
    
    .offer-item {
        font-size: 14px !important;
        padding: 10px 0 10px 28px !important;
        line-height: 1.4 !important;
    }
    
    .offer-item::before {
        width: 18px !important;
        height: 18px !important;
        left: 0 !important;
        font-size: 11px !important;
    }
    
    .offer-price-container {
        margin: 16px 0 !important;
        padding: 16px 0 !important;
    }
    
    .offer-old-price {
        font-size: 16px !important;
        margin-bottom: 6px !important;
    }
    
    .offer-current-price {
        font-size: 36px !important;
        margin-bottom: 6px !important;
    }
    
    .offer-installment {
        font-size: 14px !important;
    }
    
    .offer-cta {
        font-size: 15px !important;
        padding: 16px 20px !important;
        margin-bottom: 12px !important;
    }
    
    .offer-security {
        padding: 12px 0 0 0 !important;
        gap: 12px !important;
    }
    
    .security-icon {
        width: 35px !important;
        height: 35px !important;
    }
    
    /* ===== HOW IT WORKS SECTION - COMPACT ===== */
    .elementor-14242 .elementor-element.elementor-element-cdee796 h2 {
        font-size: 24px !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-7750609 p,
    .elementor-14242 .elementor-element.elementor-element-f78857b p {
        font-size: 15px !important;
        line-height: 1.4 !important;
        margin-bottom: 12px !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    /* ===== SAMUEL SECTION - COMPACT ===== */
    .samuel-section {
        padding: 20px 12px !important;
    }
    
    .founder-container {
        flex-direction: column !important;
        gap: 16px !important;
        display: flex !important;
    }
    
    /* Forçar a ordem: imagem primeiro, depois conteúdo */
    .founder-image-wrapper {
        order: 1 !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
        margin-bottom: 16px !important;
    }
    
    .founder-content {
        order: 2 !important;
        width: 100% !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    .founder-image {
        width: 140px !important;
        height: 140px !important;
        margin: 0 auto !important;
        display: block !important;
    }
    
    .founder-name {
        font-size: 24px !important;
        margin-bottom: 6px !important;
    }
    
    .founder-role {
        font-size: 14px !important;
        margin-bottom: 12px !important;
    }
    
    .founder-bio {
        font-size: 15px !important;
        line-height: 1.5 !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }
    
    .founder-cta-button {
        width: 100% !important;
        font-size: 15px !important;
        padding: 16px 20px !important;
        margin: 0 !important;
    }
    
    /* ===== DIFERENCIAL SECTION - COMPACT ===== */
    .differencial-section {
        padding: 20px 12px !important;
    }
    
    .differencial-section h2 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }
    
    .differencial-section p {
        font-size: 15px !important;
        line-height: 1.5 !important;
        margin-bottom: 10px !important;
        text-align: center !important;
    }
    
    /* ===== GUARANTEE SECTION - COMPACT ===== */
    .elementor-14242 .elementor-element.elementor-element-f46f6a5 {
        padding: 20px 12px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-f46f6a5 h2 {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-f46f6a5 p {
        font-size: 15px !important;
        line-height: 1.5 !important;
        margin-bottom: 16px !important;
        padding: 0 !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-f46f6a5 .elementor-button {
        width: 100% !important;
        font-size: 15px !important;
        padding: 16px 20px !important;
        margin: 0 !important;
    }
    
    /* ===== FAQ SECTION - COMPACT & CENTERED ===== */
    .elementor-14242 .elementor-element.elementor-element-758024e {
        padding: 20px 12px !important;
    }
    
    .faq-title {
        font-size: 26px !important;
        line-height: 1.3 !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }
    
    /* Centralizar título "Perguntas frequentes" e "F.A.Q" */
    .elementor-14242 .elementor-element.elementor-element-f96be53,
    .elementor-14242 .elementor-element.elementor-element-f96be53 p,
    .elementor-14242 .elementor-element.elementor-element-b17d81e,
    .elementor-14242 .elementor-element.elementor-element-b17d81e .elementor-heading-title {
        text-align: center !important;
        width: 100% !important;
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-bdd6abc {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }
    
    .e-n-accordion-item {
        margin-bottom: 10px !important;
    }
    
    .e-n-accordion-item-title {
        font-size: 15px !important;
        padding: 14px 16px !important;
        line-height: 1.4 !important;
        min-height: 48px !important;
        display: flex !important;
        align-items: center !important;
        cursor: pointer !important;
        transition: background-color 0.2s ease !important;
    }
    
    .e-n-accordion-item-title:active {
        background-color: rgba(186, 141, 246, 0.1) !important;
    }
    
    .e-n-accordion-item-title-text {
        font-size: 15px !important;
    }
    
    .elementor-element-b1942e8 {
        padding: 12px 14px !important;
    }
    
    .elementor-element-e2a0ce4 p {
        font-size: 14px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }
    
    /* ===== FINAL CTA SECTION - COMPACT ===== */
    .elementor-14242 .elementor-element.elementor-element-b3e2f7d {
        padding: 20px 12px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-b3e2f7d h2 {
        font-size: 24px !important;
        line-height: 1.3 !important;
        margin-bottom: 12px !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-b3e2f7d p {
        font-size: 15px !important;
        line-height: 1.4 !important;
        margin-bottom: 16px !important;
        text-align: center !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-b3e2f7d .elementor-button {
        width: 100% !important;
        font-size: 15px !important;
        padding: 16px 20px !important;
        margin: 0 !important;
    }
    
    /* ===== FOOTER - COMPACT ===== */
    footer {
        padding: 20px 12px !important;
        text-align: center !important;
    }
    
    footer p {
        font-size: 13px !important;
        line-height: 1.4 !important;
        margin: 0 !important;
    }
    
    /* ===== GLOBAL SECTION SPACING - MINIMAL ===== */
    .e-con.e-parent {
        margin-bottom: 0 !important;
    }
    
    section,
    .elementor-section {
        margin-bottom: 0 !important;
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }
    
    /* Reduzir espaçamento entre todos os blocos */
    .elementor-14242 .e-con {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    
    /* ===== BUTTONS - CONSISTENT STYLING ===== */
    .elementor-button,
    .founder-cta-button,
    .ai-cta-button,
    .offer-cta {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        padding: 16px 20px !important;
        margin: 0 !important;
        text-align: center !important;
        border-radius: 8px !important;
    }
    
    /* ===== TEXT OPTIMIZATION ===== */
    h1, h2, h3, h4, h5, h6 {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
        hyphens: auto !important;
    }
    
    p, span, div {
        word-wrap: break-word !important;
        overflow-wrap: break-word !important;
    }
}

/* ===== EXTRA SMALL DEVICES (< 480px) ===== */
@media(max-width: 480px) {
    .e-con-boxed,
    .e-con-inner {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-30b3abd {
        padding: 25px 10px 18px 10px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-c081bf4 .elementor-heading-title {
        font-size: 24px !important;
    }
    
    .elementor-14242 .elementor-element.elementor-element-1fa91b0,
    .elementor-14242 .elementor-element.elementor-element-93ab4f9 p {
        font-size: 15px !important;
    }
    
    .iphone-mockup {
        width: 100% !important;
        padding: 0 !important;
        margin: 0 0 12px 0 !important;
    }
    
    .iphone-frame {
        width: 98% !important;
        max-width: calc(100vw - 12px) !important;
        overflow: hidden !important;
        margin: 0 auto !important;
    }
    
    .whatsapp-interface {
        height: 650px !important;
        width: 100% !important;
    }
    
    .chat-messages {
        max-height: 580px !important;
        padding: 8px 6px !important;
    }
    
    .ai-section-title {
        font-size: 20px !important;
        margin-bottom: 6px !important;
        padding: 0 6px !important;
    }
    
    .ai-section-subtitle {
        font-size: 13px !important;
        margin-bottom: 12px !important;
        padding: 0 6px !important;
    }
    
    .ai-cta-button {
        max-width: calc(100vw - 12px) !important;
        font-size: 14px !important;
        padding: 14px 18px !important;
    }
    
    .ai-chat-section {
        padding: 12px 6px !important;
        overflow-x: hidden !important;
        overflow-y: visible !important;
    }
    
    .offer-current-price {
        font-size: 32px !important;
    }
    
    .metric-cards-container {
        gap: 8px !important;
        padding: 18px 10px !important;
    }
    
    .metric-card {
        padding: 10px !important;
    }
    
    .metric-number {
        font-size: 22px !important;
    }
    
    .metric-label {
        font-size: 10px !important;
    }
    
    section,
    .elementor-section {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }
    
    /* Reduzir ainda mais os espaços entre blocos em telas pequenas */
    .elementor-14242 .e-con {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }
}
