/* =====================================================
   APPCLOUD RESPONSIVE V2
   Responsive premium SaaS
===================================================== */

/* =========================
   <= 1280px
========================= */
@media (max-width: 1280px){

    .container{
        width:min(100% - 34px, 1180px);
    }

    .hero-content{
        gap:44px !important;
    }

    .hero-text h1{
        font-size:clamp(52px,5vw,72px) !important;
    }

    .operation-map{
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
        gap:14px !important;
    }

    .operation-arrow{
        display:none !important;
    }

    .sales-flow-clean{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .sales-flow-clean .flow-step::after{
        display:none !important;
    }

    .platform-showcase-pro,
    .trust-grid,
    .user-grid-showcase{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .industry-grid-pro{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

/* =========================
   <= 992px
========================= */
@media (max-width: 992px){

    .navbar-appcloud{
        padding:12px 0 !important;
    }

    .navbar-container-pro{
        position:relative !important;
    }

    .hero-section{
        padding:110px 0 70px !important;
        min-height:auto !important;
    }

    .hero-content{
        grid-template-columns:1fr !important;
        gap:54px !important;
        text-align:center !important;
    }

    .hero-text{
        max-width:760px;
        margin:0 auto;
    }

    .hero-text p,
    .hero-checks-list{
        margin-inline:auto !important;
    }

    .hero-checks-list{
        justify-content:center !important;
    }

    .hero-checks-list span{
        justify-content:center !important;
    }

    .hero-actions{
        justify-content:center !important;
    }

    .dashboard-device{
        margin:0 auto !important;
    }

    .phone-device{
        right:auto !important;
        left:50% !important;
        transform:translateX(-50%) !important;
        bottom:-42px !important;
    }

    .operation-map,
    .module-grid-compact,
    .catalog-layout-pro,
    .footer-grid-pro{
        grid-template-columns:1fr 1fr !important;
    }

    .sales-flow-clean,
    .platform-showcase-pro,
    .trust-grid,
    .industry-grid-pro,
    .user-grid-showcase{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }

    .final-cta,
    .footer-cta.glass-panel{
        grid-template-columns:1fr !important;
    }

    .final-cta-actions,
    .footer-cta-actions{
        width:100% !important;
    }

    .final-cta-actions a,
    .footer-cta-actions a{
        width:100% !important;
    }

    .catalog-visual{
        min-height:420px !important;
    }

    .catalog-order-card{
        right:0 !important;
    }
}

/* =========================
   <= 768px
========================= */
@media (max-width: 768px){

    .container{
        width:min(100% - 24px, 760px) !important;
    }

    .section{
        padding:72px 0 !important;
    }

    .section-title{
        margin-bottom:34px !important;
    }

    .section-title h2{
        font-size:clamp(32px,8vw,46px) !important;
        line-height:1.06 !important;
    }

    .section-title p{
        font-size:16px !important;
        line-height:1.7 !important;
    }

    .hero-section{
        padding:104px 0 60px !important;
    }

    .badge-soft{
        font-size:12px !important;
        line-height:1.35 !important;
        padding:9px 14px !important;
    }

    .hero-text h1{
        font-size:clamp(42px,11vw,58px) !important;
        line-height:1 !important;
        letter-spacing:-.06em !important;
    }

    .hero-text p{
        font-size:17px !important;
        line-height:1.72 !important;
    }

    .hero-checks-list{
        flex-direction:column !important;
        align-items:center !important;
        gap:10px !important;
    }

    .hero-actions{
        flex-direction:column !important;
        align-items:stretch !important;
        width:100% !important;
        max-width:360px !important;
        margin-inline:auto !important;
    }

    .btn-primary-app,
    .btn-outline-app,
    .btn-outline-footer{
        width:100% !important;
    }

    .dashboard-device{
        border-radius:28px !important;
    }

    .mock-body{
        padding:18px !important;
    }

    .kpi-grid{
        grid-template-columns:1fr 1fr !important;
    }

    .chart-placeholder{
        height:180px !important;
    }

    .flow-line{
        flex-wrap:wrap !important;
        justify-content:center !important;
        gap:10px !important;
    }

    .flow-line i{
        display:none !important;
    }

    .flow-line span{
        padding:8px 12px !important;
        border-radius:999px !important;
        background:rgba(255,255,255,.10) !important;
    }

    .operation-map,
    .module-grid-compact,
    .sales-flow-clean,
    .platform-showcase-pro,
    .trust-grid,
    .industry-grid-pro,
    .catalog-layout-pro,
    .footer-grid-pro,
    .user-grid-showcase{
        grid-template-columns:1fr !important;
    }

    .operation-node,
    .flow-step,
    .module-icon-card,
    .platform-card,
    .trust-card,
    .industry-card,
    .benefit-item{
        min-height:auto !important;
    }

    .module-grid-compact .module-icon-card,
    .trust-card,
    .benefit-item{
        grid-template-columns:1fr !important;
        text-align:center !important;
    }

    .module-grid-compact .module-icon-card > i,
    .trust-card i,
    .benefit-item > i{
        margin:0 auto !important;
    }

    .user-photo{
        height:220px !important;
        flex-basis:220px !important;
    }

    .catalog-content{
        text-align:center !important;
    }

    .feature-list{
        text-align:left !important;
    }

    .catalog-visual{
        min-height:360px !important;
    }

    .catalog-phone{
        transform:none !important;
    }

    .catalog-order-card{
        right:auto !important;
        left:50% !important;
        transform:translateX(-50%) !important;
        bottom:-10px !important;
    }

    .footer-appcloud{
        padding:64px 0 24px !important;
    }

    .footer-cta.glass-panel{
        padding:28px !important;
        border-radius:24px !important;
    }

    .footer-bottom-pro{
        flex-direction:column !important;
        align-items:flex-start !important;
    }
}

/* =========================
   <= 480px
========================= */
@media (max-width: 480px){

    .container{
        width:min(100% - 18px, 460px) !important;
    }

    .navbar-brand-app .navbar-logo{
        height:34px !important;
        max-width:132px !important;
    }

    .mobile-menu-btn-pro,
    .btn-demo-pro,
    .btn-login-pro{
        width:40px !important;
        height:40px !important;
        min-height:40px !important;
    }

    .hero-section{
        padding:98px 0 52px !important;
    }

    .hero-text h1{
        font-size:38px !important;
    }

    .hero-text p{
        font-size:15px !important;
    }

    .hero-checks-list span{
        font-size:13px !important;
    }

    .dashboard-device{
        border-radius:24px !important;
    }

    .mock-top{
        height:48px !important;
        padding:0 16px !important;
    }

    .mock-body{
        padding:14px !important;
    }

    .kpi-grid{
        grid-template-columns:1fr !important;
    }

    .kpi-card{
        padding:16px !important;
    }

    .kpi-card strong{
        font-size:24px !important;
    }

    .chart-placeholder{
        height:150px !important;
    }

    .phone-device{
        width:180px !important;
        height:340px !important;
    }

    .section{
        padding:58px 0 !important;
    }

    .section-title span{
        font-size:11px !important;
    }

    .section-title h2{
        font-size:30px !important;
    }

    .section-title p{
        font-size:15px !important;
    }

    .operation-node,
    .flow-step,
    .module-icon-card,
    .platform-card,
    .trust-card,
    .industry-card,
    .benefit-item,
    .user-card{
        border-radius:20px !important;
    }

    .catalog-phone{
        width:220px !important;
        height:430px !important;
    }

    .footer-cta.glass-panel,
    .final-cta{
        padding:24px !important;
    }

    .footer-cta h2,
    .final-cta h2{
        font-size:30px !important;
    }

    .footer-social{
        flex-wrap:wrap !important;
    }
}

/* =====================================================
   APPCLOUD RESPONSIVE FINAL FIX
   Ajuste fino para iPad, tablet y móvil
===================================================== */

/* iPad horizontal / notebooks pequeños */
@media (max-width: 1180px){
    .hero-content{
        grid-template-columns:1fr !important;
        max-width:920px !important;
        margin-inline:auto !important;
        text-align:center !important;
    }

    .hero-text,
    .hero-text h1,
    .hero-text p{
        margin-inline:auto !important;
    }

    .hero-checks-list,
    .hero-trust-row{
        margin-inline:auto !important;
    }

    .hero-actions{
        justify-content:center !important;
    }

    .hero-visual{
        width:100% !important;
        max-width:760px !important;
        margin-inline:auto !important;
    }

    .dashboard-device{
        max-width:720px !important;
        margin-inline:auto !important;
    }

    .operation-map{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }

    .operation-node:nth-of-type(4),
    .operation-node:nth-of-type(5){
        grid-column:auto !important;
    }

    .benefit-strip{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}

/* Tablet vertical */
@media (max-width: 900px){
    .navbar-actions-pro .btn-demo-pro span,
    .navbar-actions-pro .btn-login-pro span{
        display:none !important;
    }

    .navbar-actions-pro .btn-demo-pro,
    .navbar-actions-pro .btn-login-pro{
        width:44px !important;
        padding:0 !important;
    }

    .navbar-actions-pro .btn-demo-pro i,
    .navbar-actions-pro .btn-login-pro i{
        margin:0 !important;
    }

    .problem-solution-layout,
    .integrations-layout,
    .catalog-layout-pro{
        grid-template-columns:1fr !important;
        text-align:center !important;
    }

    .problem-column h2,
    .solution-column h2,
    .integrations-content h2,
    .catalog-content h2{
        margin-inline:auto !important;
    }

    .problem-list,
    .feature-list{
        max-width:620px !important;
        margin-inline:auto !important;
    }

    .packs-grid{
        grid-template-columns:1fr !important;
        max-width:640px !important;
    }

    .platform-showcase-pro,
    .trust-grid,
    .industry-grid-pro,
    .module-grid-compact,
    .user-grid-showcase{
        grid-template-columns:1fr 1fr !important;
    }

    .footer-grid-pro{
        grid-template-columns:1fr 1fr !important;
    }
}

/* Mobile general */
@media (max-width: 680px){
    html,
    body{
        max-width:100% !important;
        overflow-x:hidden !important;
    }

    .navbar-appcloud{
        padding:10px 0 !important;
    }

    .navbar-container-pro{
        min-height:52px !important;
        gap:8px !important;
    }

    .navbar-brand-app .navbar-logo{
        height:32px !important;
        max-width:126px !important;
    }

    .mobile-menu-btn-pro,
    .btn-demo-pro,
    .btn-login-pro{
        width:38px !important;
        height:38px !important;
        min-height:38px !important;
        border-radius:14px !important;
    }

    .navbar-menu-pro{
        top:58px !important;
        max-height:calc(100vh - 78px) !important;
        overflow-y:auto !important;
    }

    .hero-section{
        padding-top:92px !important;
    }

    .hero-text h1{
        font-size:clamp(34px,12vw,44px) !important;
        line-height:1.02 !important;
        letter-spacing:-.045em !important;
    }

    .hero-text p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .hero-checks-list{
        display:grid !important;
        grid-template-columns:1fr !important;
        width:100% !important;
        max-width:360px !important;
    }

    .hero-checks-list span{
        justify-content:flex-start !important;
        text-align:left !important;
    }

    .hero-trust-row{
        grid-template-columns:1fr !important;
        max-width:360px !important;
    }

    .dashboard-device{
        max-width:100% !important;
        border-radius:22px !important;
    }

    .mock-header-line{
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:8px !important;
    }

    .phone-device{
        display:none !important;
    }

    .operation-map,
    .benefit-strip,
    .sales-flow-clean,
    .module-grid-compact,
    .platform-showcase-pro,
    .trust-grid,
    .industry-grid-pro,
    .integrations-grid,
    .footer-grid-pro,
    .user-grid-showcase{
        grid-template-columns:1fr !important;
    }

    .operation-map{
        padding:14px !important;
        border-radius:22px !important;
    }

    .operation-node,
    .flow-step,
    .module-icon-card,
    .platform-card,
    .trust-card,
    .industry-card,
    .benefit-item,
    .user-card,
    .pack-card,
    .problem-column,
    .solution-column,
    .integration-card{
        width:100% !important;
    }

    .module-grid-compact .module-icon-card{
        grid-template-columns:1fr !important;
        text-align:center !important;
    }

    .module-grid-compact .module-icon-card > i{
        margin-inline:auto !important;
    }

    .catalog-visual{
        min-height:auto !important;
        padding-bottom:54px !important;
    }

    .catalog-phone{
        width:min(250px,82vw) !important;
        min-height:390px !important;
    }

    .catalog-order-card{
        width:min(260px,86vw) !important;
        position:relative !important;
        left:auto !important;
        right:auto !important;
        bottom:auto !important;
        transform:none !important;
        margin:-28px auto 0 !important;
    }

    .final-cta{
        text-align:center !important;
    }

    .final-cta-actions{
        width:100% !important;
    }

    .footer-cta.glass-panel{
        text-align:left !important;
    }

    .footer-feature-list,
    .footer-social{
        justify-content:flex-start !important;
    }

    .footer-mini-stats{
        grid-template-columns:1fr !important;
    }
}

/* Móviles pequeños */
@media (max-width: 420px){
    .container{
        width:calc(100% - 18px) !important;
    }

    .section{
        padding:52px 0 !important;
    }

    .section-title h2,
    .problem-column h2,
    .solution-column h2,
    .integrations-content h2,
    .catalog-content h2,
    .final-cta h2,
    .footer-cta h2{
        font-size:28px !important;
        line-height:1.1 !important;
    }

    .badge-soft,
    .section-title span,
    .section-mini-badge,
    .footer-eyebrow{
        max-width:100% !important;
        white-space:normal !important;
        text-align:center !important;
        justify-content:center !important;
    }

    .btn-primary-app,
    .btn-outline-app,
    .btn-outline-footer,
    .footer-login-btn{
        min-height:52px !important;
        padding-inline:18px !important;
        font-size:14px !important;
    }

    .kpi-card strong{
        font-size:22px !important;
    }

    .mock-activity-list div{
        grid-template-columns:10px 1fr !important;
    }

    .mock-activity-list strong{
        grid-column:2 !important;
        justify-self:start !important;
    }

    .problem-column,
    .solution-column,
    .pack-card,
    .final-cta,
    .footer-cta.glass-panel{
        padding:22px !important;
    }

    .footer-contact-card{
        grid-template-columns:38px 1fr !important;
    }

    .footer-contact-card > i{
        width:38px !important;
        height:38px !important;
    }
}