/* ==========================================================
   HOSPEDAGEM GERENCIADA
   INOVATECH FLOW
========================================================== */

.hero{

    position:relative;

    overflow:hidden;

    padding:170px 0 120px;

    background:

    radial-gradient(circle at 20% 20%,rgba(26,130,255,.18),transparent 28%),

    radial-gradient(circle at 80% 10%,rgba(4,97,203,.22),transparent 30%),

    linear-gradient(135deg,#000a20,#00173d);

}



.hero::before{

    content:"";

    position:absolute;

    width:550px;

    height:550px;

    right:-180px;

    top:-180px;

    border-radius:50%;

    background:#0461cb;

    filter:blur(120px);

    opacity:.12;

}



.hero-grid{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:80px;

    align-items:center;

}



.tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 22px;

    border-radius:40px;

    border:1px solid rgba(77,163,255,.25);

    background:rgba(77,163,255,.08);

    color:#69b4ff;

    font-weight:600;

    margin-bottom:28px;

}



.hero h1{

    color:#fff;

    font-size:3.5rem;

    line-height:1.15;

    margin-bottom:28px;

}



.hero p{

    color:#c6d6eb;

    font-size:1.08rem;

    line-height:1.9;

    margin-bottom:45px;

}



.hero-buttons{

    display:flex;

    gap:18px;

    flex-wrap:wrap;

}



.btn-primary{

    background:linear-gradient(135deg,#0461cb,#1a82ff);

    color:#fff;

    padding:16px 38px;

    border-radius:12px;

    text-decoration:none;

    font-weight:600;

    transition:.35s;

    box-shadow:0 20px 35px rgba(4,97,203,.35);

}



.btn-primary:hover{

    transform:translateY(-5px);

    box-shadow:0 25px 45px rgba(4,97,203,.5);

}



.btn-secondary{

    border:1px solid rgba(255,255,255,.15);

    background:rgba(255,255,255,.05);

    color:#fff;

    padding:16px 38px;

    border-radius:12px;

    text-decoration:none;

    transition:.35s;

}



.btn-secondary:hover{

    background:#fff;

    color:#00163d;

}



.hero-image{

    display:flex;

    justify-content:center;

    position:relative;

}



.hero-image::after{

    content:"";

    position:absolute;

    width:330px;

    height:330px;

    border-radius:50%;

    background:#1a82ff;

    filter:blur(90px);

    opacity:.22;

}



.hero-image img{

    position:relative;

    z-index:2;

    width:100%;

    max-width:520px;

    border-radius:22px;

    border:1px solid rgba(255,255,255,.1);

    box-shadow:0 35px 80px rgba(0,0,0,.45);

    transition:.4s;

}



.hero-image img:hover{

    transform:translateY(-10px);

}



/* ==========================================================
   BENEFÍCIOS
========================================================== */

.benefits{

    background:

    linear-gradient(180deg,#00163d,#000f2a);

}



section{

    padding:100px 0;

}



.section-title{

    text-align:center;

    margin-bottom:70px;

}



.section-title span{

    color:#58a9ff;

    text-transform:uppercase;

    font-weight:700;

    letter-spacing:1px;

}



.section-title h2{

    color:#fff;

    font-size:2.7rem;

    margin:18px 0;

}



.section-title p{

    max-width:720px;

    margin:auto;

    color:#b8c9df;

    line-height:1.8;

}



.cards{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:28px;
    

}



.card{

    position:relative;

    padding:40px 30px;

    border-radius:22px;

    background:

    linear-gradient(160deg,

    rgba(255,255,255,.08),

    rgba(255,255,255,.03));

    backdrop-filter:blur(10px);

    border:1px solid rgba(77,163,255,.15);

    transition:.4s;

    overflow:hidden;

}



.card::before{

    content:"";

    position:absolute;

    width:140px;

    height:140px;

    right:-70px;

    top:-70px;

    border-radius:50%;

    background:#0461cb;

    opacity:.15;

    filter:blur(40px);

}



.card:hover{

    transform:translateY(-10px);

    border-color:#1a82ff;

    box-shadow:

    0 20px 45px rgba(0,0,0,.35),

    0 0 30px rgba(26,130,255,.2);

}



.card-icon{

    width:72px;

    height:72px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:

    linear-gradient(135deg,#0461cb,#1a82ff);

    margin-bottom:28px;

    box-shadow:0 15px 35px rgba(4,97,203,.35);

}



.card h3{

    color:#fff;

    margin-bottom:15px;

}



.card p{

    color:#bfd1e6;

    line-height:1.8;

}



/* ==========================================================
   PLANOS
========================================================== */

.services{

    background:

    linear-gradient(
        180deg,
        #000d24,
        #001338
    );

}



.plans-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:35px;

}



.plan-card{

   display:flex;

    flex-direction:column;

    position:relative;

    padding:45px 35px;

    border-radius:24px;

    background:linear-gradient(
        160deg,
        rgba(255,255,255,.07),
        rgba(255,255,255,.03)
    );

    border:1px solid rgba(77,163,255,.15);

    transition:.35s;

}



.plan-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:

    linear-gradient(
        90deg,
        #0461cb,
        #1a82ff
    );

}



.plan-card:hover{

    transform:translateY(-10px);

    border-color:#1a82ff;

    box-shadow:

    0 20px 45px rgba(0,0,0,.35),

    0 0 35px rgba(26,130,255,.18);

}



.featured{

    border:2px solid #1a82ff;

    box-shadow:

        0 0 45px rgba(26,130,255,.18);

}



.featured:hover{

        transform:translateY(-10px);

}



.badge{

    position:absolute;

    top:22px;

    right:22px;

    background:#1a82ff;

    color:#fff;

    padding:6px 14px;

    border-radius:30px;

    font-size:.8rem;

    font-weight:600;

}



.plan-card h3{

    color:#fff;

    font-size:2rem;

    margin-bottom:20px;

}



.price{

    color:#58a9ff;

    font-size:2.4rem;

    font-weight:bold;

    margin-bottom:20px;

}



.price span{

    font-size:1rem;

    color:#bfd1e6;

}



.plan-desc{

    color:#bfd1e6;

    line-height:1.8;

    margin-bottom:30px;

}



.plan-card h4{

    color:#fff;

    margin-bottom:18px;

}



.plan-card ul{

    list-style:none;
    padding:0;
    margin-bottom:35px;
    flex:1;
    margin-bottom:30px;

}



.plan-card li{

    position:relative;

    padding-left:28px;

    margin:14px 0;

    color:#d6e5f5;

}



.plan-card li::before{

    content:"✓";

    position:absolute;

    left:0;

    color:#39d98a;

    font-weight:bold;

}



.btn-plan{

    display:block;

    text-align:center;

    text-decoration:none;

    padding:15px;

    border-radius:10px;

    background:

    linear-gradient(
        135deg,
        #0461cb,
        #1a82ff
    );
    color:#fff;
    font-weight:600;
    transition:.3s;
    margin-top:auto;
    display:block;
    text-align:center;
    padding:16px;


}



.btn-plan:hover{

    transform:translateY(-3px);

}
/* ==========================================================
   RECURSOS
========================================================== */

.process{

    position:relative;

    overflow:hidden;

    background:

    radial-gradient(circle at center,
    rgba(26,130,255,.12),
    transparent 45%),

    linear-gradient(
        180deg,
        #000d24,
        #001338
    );

}



.timeline{

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:28px;

}



.step{

    position:relative;

    padding:45px 25px 35px;

    text-align:center;

    border-radius:22px;

    background:

    linear-gradient(
        160deg,
        rgba(255,255,255,.08),
        rgba(255,255,255,.03)
    );

    border:1px solid rgba(77,163,255,.15);

    backdrop-filter:blur(12px);

    transition:.4s;

}



.step::before{

    content:"";

    position:absolute;

    width:120px;

    height:120px;

    left:50%;

    top:-60px;

    transform:translateX(-50%);

    background:#0461cb;

    border-radius:50%;

    opacity:.15;

    filter:blur(45px);

}



.step:hover{

    transform:translateY(-12px);

    border-color:#1a82ff;

    box-shadow:

    0 20px 45px rgba(0,0,0,.35),

    0 0 25px rgba(26,130,255,.25);

}



.step span{

    position:relative;

    z-index:2;

    width:68px;

    height:68px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:-78px auto 28px;

    border-radius:50%;

    background:

    linear-gradient(
        135deg,
        #0461cb,
        #1a82ff
    );

    border:4px solid #001338;

    color:#fff;

    font-size:1.4rem;

    font-weight:700;

    box-shadow:

    0 10px 30px rgba(4,97,203,.4);

}



.step h3{

    color:#fff;

    margin-bottom:15px;

    font-size:1.15rem;

}



.step p{

    color:#bfd1e6;

    line-height:1.8;

}



/* ==========================================================
   FAQ
========================================================== */

.faq{

    background:

    linear-gradient(
        180deg,
        #001338,
        #000f28
    );

}



.faq-item{

    background:

    linear-gradient(
        145deg,
        rgba(255,255,255,.06),
        rgba(255,255,255,.03)
    );

    border:1px solid rgba(77,163,255,.12);

    border-radius:18px;

    padding:30px;

    margin-bottom:25px;

    transition:.35s;

}



.faq-item:hover{

    transform:translateX(8px);

    border-left:5px solid #1a82ff;

    border-color:#1a82ff;

    box-shadow:

    0 15px 35px rgba(0,0,0,.25);

}



.faq-item h3{

    color:#fff;

    margin-bottom:15px;

}



.faq-item p{

    color:#bfd1e6;

    line-height:1.8;

}



/* ==========================================================
   CTA
========================================================== */

.cta{

    position:relative;

    overflow:hidden;

    text-align:center;

    background:

    radial-gradient(circle at center,
    rgba(26,130,255,.18),
    transparent 35%),

    linear-gradient(
        135deg,
        #001338,
        #00245e
    );

}



.cta::before{

    content:"";

    position:absolute;

    width:500px;

    height:500px;

    left:-220px;

    bottom:-220px;

    background:#0461cb;

    opacity:.12;

    filter:blur(120px);

    border-radius:50%;

}



.cta h2{

    position:relative;

    z-index:2;

    color:#fff;

    font-size:2.8rem;

    margin-bottom:20px;

}



.cta p{

    position:relative;

    z-index:2;

    max-width:720px;

    margin:0 auto 40px;

    color:#c7d5e8;

    line-height:1.9;

}



.cta .btn-primary{

    position:relative;

    z-index:2;

}



/* ==========================================================
   ANIMAÇÕES
========================================================== */

.card,

.service-box,

.step,

.faq-item{

    animation:fadeUp .8s ease both;

}



@keyframes fadeUp{

    from{

        opacity:0;

        transform:translateY(35px);

    }

    to{

        opacity:1;

        transform:translateY(0);

    }

}



@keyframes floating{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-10px);

    }

    100%{

        transform:translateY(0);

    }

}



.hero-image img{

    animation:floating 6s ease-in-out infinite;

}


/* ==========================================================
   RESPONSIVO
========================================================== */

@media (max-width:1200px){

    .plans-grid{

        grid-template-columns:1fr;

        max-width:650px;

        margin:0 auto;

    }

    .featured{

        transform:none;

    }

    .featured:hover{

        transform:translateY(-10px);

    }

}


@media (max-width:1100px){

    .hero-grid{

        grid-template-columns:1fr;

        text-align:center;

        gap:50px;

    }

    .hero-image{

        order:-1;

    }

    .hero-image img{

        max-width:460px;

    }

    .hero-buttons{

        justify-content:center;

    }

    .cards{

        grid-template-columns:repeat(2,1fr);

    }

    .timeline{

        grid-template-columns:repeat(2,1fr);

    }

}


@media (max-width:768px){

    section{

        padding:75px 0;

    }

    .hero{

        padding:130px 0 80px;

    }

    .hero h1{

        font-size:2.4rem;

    }

    .hero p{

        font-size:1rem;

    }

    .section-title h2{

        font-size:2rem;

    }

    .cards{

        grid-template-columns:1fr;

    }

    .plans-grid{

        grid-template-columns:1fr;

    }

    .timeline{

        grid-template-columns:1fr;

    }

    .hero-buttons{

        justify-content:center;

    }

    .plan-card{

        padding:35px;

    }

    .cta h2{

        font-size:2rem;

    }

}


@media (max-width:480px){

    .hero{

        padding:115px 0 70px;

    }

    .hero h1{

        font-size:2rem;

    }

    .hero p{

        font-size:.95rem;

    }

    .hero-image img{

        max-width:100%;

    }

    .btn-primary,

    .btn-secondary,

    .btn-plan{

        width:100%;

        text-align:center;

    }

    .card{

        padding:28px;

    }

    .plan-card{

        padding:30px 25px;

    }

    .step{

        padding:35px 25px;

    }

    .section-title h2{

        font-size:1.7rem;

    }

    .cta h2{

        font-size:1.7rem;

    }

    .price{

        font-size:2.5rem;

    }

}
