.glass-header {
    position: sticky;
    top: 12px;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 12px;
    padding: 14px 16px;
    border-radius: 24px;
    background: linear-gradient(
        180deg,
        rgba(255,255,255,.18),
        rgba(255,255,255,.05)
    );
    backdrop-filter: blur(26px);
    -webkit-backdrop-filter: blur(26px);
    border: 1px solid rgba(255,255,255,.15);
 	box-shadow:
        0 20px 60px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.25);

    overflow: hidden;
    transition: all .45s cubic-bezier(.2,.8,.2,1);
}

.glass-header::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 70%;
    height: 100%;
    background: linear-gradient(
        110deg,
        transparent,
        rgba(255,255,255,.28),
        transparent
    );
    animation: headerShine 8s linear infinite;
}

@keyframes headerShine {
    100% {
        left: 180%;
    }
}

.glass-header::after {
    content: "";
    position: absolute;
	width: 220px;
    height: 220px;
    right: -90px;
    top: -110px;
    border-radius: 50%;
    background: radial-gradient(
        circle,
        rgba(0,212,255,.35),
        transparent 70%
    );
    filter: blur(40px);
    pointer-events: none;
}

.header-logo {
    display: flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
    color: white;
    z-index: 2;
}

.header-logo-icon {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    font-size: 1.6rem;
    background: linear-gradient(
        135deg,
        #4F7EFF,
        #00D9FF
    );
    box-shadow: 0 10px 35px rgba(0,180,255,.35);
    transition: .4s;
}

.header-logo:hover .header-logo-icon {
    transform: rotate(-8deg) scale(1.08);
}

.header-logo-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.header-logo-text strong {
    font-size: 1.35rem;
    font-weight: 700;
}

.header-logo-text span {
    font-size: 1.2rem;
    color: #e6eefb;
}

.header-call {
    display: flex;
    align-items: center;
    gap: 10px;
	font-size: 1.3rem;
    padding: 12px 16px;
    border-radius: 18px;
    text-decoration: none;
    font-weight: 350;
    color: #ebf0ee;
    background: linear-gradient(
        135deg,
        #0110b4,
        #0a42f8ec
    );
    box-shadow: 0 10px 35px rgba(0,255,120,.08);
    transition: .29s;
    z-index: 2;
}

.header-call:hover {
    transform: translateY(-3px) scale(1.04);
}

.glass-header.scrolled {
    padding: 10px 14px;
    background: rgba(7,17,29,.82);
    backdrop-filter: blur(34px);
    border-color: rgba(255,255,255,.08);
    box-shadow: 0 25px 60px rgba(0,0,0,.45);
}

.glass-header.scrolled .header-logo-icon {
    width: 46px;
    height: 46px;
    font-size: 1.3rem;
}

@media (min-width: 900px) {
    .glass-header {
        max-width: 1250px;
        margin: 18px auto;
        padding: 16px 24px;
    }
    .header-logo-text strong {
        font-size: 1.3rem;
    }
    .header-logo-text span {
        font-size: 1.1rem;
    }
}










@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:"Inter",sans-serif;
    background:#07111d;
    color:#fff;
    overflow-x:hidden;
}

.logo{
    display:flex;
    align-items:center;
    gap:14px;
    font-size:1.2rem;
    font-weight:669;
}

.phone{
    display:flex;
    align-items:center;
    gap:15px;
    padding:14px 24px;
    border-radius:18px;
    background:
    linear-gradient(
    135deg,
    #28b0ff,
    #0e00d9);
    font-weight:700;
    font-size:1.05rem;
    color:#04120c;
    text-decoration:none;
    box-shadow:
    0 15px 45px rgba(0,255,120,.28);
    transition:.35s;
}

.phone:hover{
    transform:
    translateY(-3px)
    scale(1.03);
    box-shadow:
    0 25px 60px rgba(0,255,120,.45);
}

:root{
--primary:#4F7EFF;
--secondary:#00D9FF;
--accent:#7DE7FF;
--success:#29ff87;
--bg:#040914;
--bg2:#071422;
--bg3:#0B1E35;
--text:#ffffff;
--text-light:#B8C7DA;
--glass:rgba(255,255,255,.07);
--glass2:rgba(255,255,255,.12);
--border:rgba(255,255,255,.16);
--shadow:
0 40px 120px rgba(0,0,0,.45);
}

.hero{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    overflow:hidden;
    padding:110px 24px;
    background:
    radial-gradient(circle at top left,#0f5cff25,transparent 40%),
    radial-gradient(circle at bottom right,#00d4ff20,transparent 45%),
    linear-gradient(140deg,#06111f,#10243d,#07111d);
}

.gradient{
    position:absolute;
    border-radius:50%;
    filter:blur(120px);
    opacity:.7;
    animation:blob 12s ease-in-out infinite;
}

.gradient-1{
    width:500px;
    height:500px;
    background:#2563eb;
    left:-120px;
    top:-150px;
}

.gradient-2{
    width:450px;
    height:450px;
    background:#0252b4;
    right:-100px;
    bottom:-120px;
    animation-delay:4s;
}

.gradient-3{
    position:absolute;
    width:550px;
    height:550px;
    top:-180px;
    left:40%;
    background:#7868ff;
    filter:blur(180px);
    opacity:.35;
    animation:blob 18s infinite ease-in-out;
}

@keyframes blob{
    0%{
        transform:
        translate(0,0)
        scale(1);
    }
    25%{
        transform:
        translate(40px,-25px)
        scale(1.08);
    }
    50%{
        transform:
        translate(-20px,40px)
        scale(1.15);
    }
    75%{
        transform:
        translate(30px,20px)
        scale(1.05);
    }
    100%{
        transform:
        translate(0,0)
        scale(1);
    }
}

/*==========================
        NOISE
==========================*/

.noise{
    position:absolute;
    inset:0;
    opacity:.05;
    pointer-events:none;
    background-image:
    radial-gradient(#ffffff 1px,transparent 1px);
    background-size:6px 6px;
}

/*==========================
        CONTAINER
==========================*/

.container{
    width:min(1200px,100%);
    margin:auto;
    display:grid;
    gap:60px;
    position:relative;
    z-index:2;
}

/*==========================
        TEXT
==========================*/

.hero-text{
    animation:fadeUp .9s ease;
}

.badge{
    display:inline-flex;
    align-items:center;
    padding:10px 18px;
    margin-bottom:28px;
    border-radius:999px;
    font-size:.88rem;
    font-weight:600;
    color:#9be5ff;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    backdrop-filter:blur(18px);
    box-shadow:
    inset0 1px 0 rgba(255,255,255,.08);
}

.hero h1{
    font-size:clamp(3rem,6vw,5rem);
    line-height:.95;
    font-weight:800;
    letter-spacing:-4px;
    text-shadow:
    0 0 40px rgba(0,210,255,.08);
}

.hero h1 span{
    background:
    linear-gradient(
        90deg,
        #ffffff,
        #7CD7FF,
        #eeff00,
        #0a8dff);
    background-size:300%;
    animation:gradientText 8s linear infinite;
    -webkit-background-clip:text;
    background-clip: text;
    color:transparent;
}

@keyframes gradientText{
    to{
        background-position:300%;
    }
}

.hero p{
    color:var(--text-light);
    font-size:1.08rem;
    line-height:1.8;
    max-width:600px;
    margin-bottom:42px;
}

.buttons{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
}

.btn{
    position:relative;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    padding:16px 32px;
    border-radius:18px;
    font-weight:600;
    text-decoration:none;
    overflow:hidden;
    transition:.35s;
}

.btn-primary{
    color:#fff;
    background:
    linear-gradient(
    135deg,
    #3b82f6,
    #00b4ff);
    box-shadow:
    0 15px 40px rgba(0,162,255,.35),
    inset 0 1px 0 rgba(255,255,255,.2);
}

.btn-primary:hover{
    transform:
    translateY(-6px);
    box-shadow:
    0 20px 55px rgba(0,162,255,.55);
}

.btn-glass{
    color:#fffcfc;
    border:1px solid rgba(255,255,255,.15);
    backdrop-filter:blur(18px);
    background-color:rgba(10, 66, 248, 0.927);
    font-size: 1.4rem;
}

.hero-card{
    position:relative;
    padding:34px;
    border-radius:32px;
    overflow:hidden;
    background:rgba(255,255,255,.08);
    backdrop-filter:blur(30px);
    border:1px solid rgba(255,255,255,.15);
    box-shadow:
    0 25px 80px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.1);
    transition:
    transform .35s ease;
}

.shine{
    position:absolute;
    inset:0;
    background:
    linear-gradient(
    120deg,
    transparent 39%,
    rgba(255,255,255,.26),
    transparent 70%);
    transform:translateX(-120%);
    animation:shine 5s linear infinite;
}

@keyframes shine{
    to{
        transform:translateX(120%);
    }
}

.icon{
    width:90px;
    height:90px;
    display:grid;
    place-items:center;
    border-radius:24px;
    font-size:2.6rem;
    margin-bottom:26px;
    background:
    linear-gradient(
    135deg,
    #3b82f6,
    #00d4ff);
    box-shadow:
    0 15px 35px rgba(0,162,255,.4);
    animation:
    floating 4s ease-in-out infinite;

}

@keyframes floating{
    50%{
        transform:
        translateY(-12px);
    }

}

.hero-card h3{
    font-size:1.7rem;
    margin-bottom:26px;
}

.feature{
    background:
    rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.08);
    transition:
    .35s ease;
}

.feature:hover{
    transform:
    translateX(10px)
    scale(1.02);
    border-color:#4F7EFF;
    background:
    rgba(255,255,255,.08);
}


.feature span{
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    border-radius:16px;
    font-size:1.2rem;
    background:
    linear-gradient(
    135deg,
    #3b82f6,
    #00d4ff);
}

.feature p{
    margin:0;
    color:#fff;
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:
        translateY(60px);
    }
    to{
        opacity:1;
        transform:none;
    }
}

@media(min-width:900px){
.container{
    grid-template-columns:
    1.1fr
    .9fr;
    align-items:center;
}

.hero{
    padding-inline:60px;
}
}

.header.scrolled{
    padding:10px 18px;
    background:rgba(6,18,34,.82);
    backdrop-filter:blur(40px);
    box-shadow:
    0 30px 70px rgba(0,0,0,.5);
}









/* ===================================
   SERVICES GLASS PRO
   MOBILE FIRST
=================================== */


.services-glass{

position:relative;

overflow:hidden;

padding:80px 20px;

background:

linear-gradient(
145deg,
#040915,
#0b1428
);

color:white;

isolation:isolate;

}




/* BACKGROUND LIGHTS */


.services-bg{

position:absolute;

width:350px;

height:350px;

border-radius:50%;

filter:blur(120px);

opacity:.25;

z-index:-1;

}



.bg-one{

background:#00d9ff;

top:-150px;

left:-120px;

}


.bg-two{

background:#743cff;

bottom:-150px;

right:-120px;

}





.services-container{

max-width:1200px;

margin:auto;

}





/* HEADER */


.services-header{

text-align:center;

max-width:750px;

margin:auto;

}



.services-tag{


display:inline-flex;

padding:10px 18px;

border-radius:50px;


background:

rgba(255,255,255,.08);


border:

1px solid rgba(255,255,255,.12);


backdrop-filter:blur(15px);


font-size:.8rem;

letter-spacing:1px;

margin-bottom:25px;


}





.services-header h2{


font-size:

clamp(
2rem,
6vw,
3.5rem
);


line-height:1.1;

margin-bottom:20px;


}



.services-header h2 span{

background:

linear-gradient(
90deg,
#00d9ff,
#7c5cff
);


-webkit-background-clip:text;
background-clip: text;

color:transparent;


}




.services-header p{


color:

rgba(255,255,255,.65);


line-height:1.7;

font-size:1rem;


}






/* GRID */


.services-grid{


display:grid;


grid-template-columns:1fr;


gap:22px;


margin-top:50px;


}






/* CARDS */


.service-card{


position:relative;


padding:30px;


border-radius:30px;


background:

linear-gradient(
145deg,
rgba(255,255,255,.14),
rgba(255,255,255,.04)
);


border:

1px solid rgba(255,255,255,.12);


backdrop-filter:blur(20px);


transition:

transform .45s,
border .45s;


overflow:hidden;


}





.service-card::before{


content:"";


position:absolute;


width:100px;

height:100px;


top:-50px;

right:-50px;


background:#00d9ff;


filter:blur(50px);


opacity:.3;


}





.service-icon{


width:65px;

height:65px;


display:flex;

align-items:center;

justify-content:center;


font-size:32px;


border-radius:22px;


background:

rgba(255,255,255,.1);


margin-bottom:25px;


}





.service-card h3{


font-size:1.35rem;

margin-bottom:15px;


}



.service-card p{


color:

rgba(255,255,255,.65);


line-height:1.7;


font-size:.95rem;


}



.service-card span{


display:inline-block;


margin-top:20px;


padding:8px 15px;


border-radius:30px;


font-size:.8rem;


background:

rgba(0,217,255,.12);


color:#00d9ff;


}





.service-card:hover{


transform:

translateY(-12px);


border-color:

rgba(0,217,255,.4);


}







/* CTA */


.services-action{


text-align:center;

margin-top:50px;


}



.services-action a{


display:inline-flex;


align-items:center;


justify-content:center;


height:60px;


padding:0 35px;


border-radius:20px;


text-decoration:none;


color:white;


font-weight:700;


background:

linear-gradient(
135deg,
#00d9ff,
#006eff
);


box-shadow:

0 20px 40px rgba(0,217,255,.25);


transition:.35s;


}



.services-action a:hover{


transform:translateY(-5px);


}

@media(min-width:768px){
.services-grid{
grid-template-columns:
repeat(2,1fr);
}
}
@media(min-width:1100px){
.services-glass{
padding:120px 40px;
}

.services-grid{
   grid-template-columns:
      repeat(4,1fr);
   }
   .service-card{
      min-height:350px;
   }
}

.reveal{
   opacity:0;
   transform:
   translateY(40px);
   transition:
   all .8s ease;
}


.reveal.active{
   opacity:1;
   transform:
   translateY(0);
}




:root {
    --primary: #2db8ff;
    --secondary: #0c6eff;
    --glass: rgba(255,255,255,.14);
    --border: rgba(255,255,255,.22);
    --text: #fff;
    --text2: rgba(255,255,255,.72);
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    margin:0;
    font-family:Inter,sans-serif;
    background:linear-gradient(135deg,#061320,#0d1d2e,#081420);
    color:var(--text);
    overflow-x:hidden;
}

/*==========================
        SECTION
==========================*/

.why-us{
    position:relative;
    overflow:hidden;
    padding:70px 18px;
}

.why-us::before,
.why-us::after{
    content:"";
    position:absolute;
    border-radius:50%;
    pointer-events:none;
}

.why-us::before{
    width:220px;
    height:220px;
    top:-120px;
    left:-120px;
    background:#21b6ff;
    filter:blur(110px);
    opacity:.18;
}

.why-us::after{
    width:220px;
    height:220px;
    bottom:-120px;
    right:-120px;
    background:#006eff;
    filter:blur(120px);
    opacity:.18;
}

/*==========================
        HEADER
==========================*/

.why-header{
    position:relative;
    z-index:2;
    max-width:760px;
    margin:0 auto;
    text-align:center;
}

.why-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 18px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.15);
    backdrop-filter:blur(15px);
    font-size:.75rem;
    letter-spacing:2px;
    margin-bottom:18px;
}

.why-header h2{
    margin:0;
    font-size:2rem;
    line-height:1.15;
    font-weight:800;
}

.why-header span{
    background:linear-gradient(90deg,#48d2ff,#2db8ff,#6de3ff);
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
}

.why-header p{
    margin:18px auto 0;
    max-width:650px;
    line-height:1.7;
    color:var(--text2);
}

/*==========================
          GRID
==========================*/

.why-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
    margin-top:45px;
    position:relative;
    z-index:2;
    align-items:stretch;
}

/*==========================
          CARD
==========================*/

.why-card{
    position:relative;
    overflow:hidden;

    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:flex-start;
    gap:16px;

    min-width:0;
    min-height:100%;

    padding:24px;

    border-radius:24px;
    border:1px solid var(--border);

    background:var(--glass);
    backdrop-filter:blur(20px);

    box-shadow:
        0 15px 40px rgba(0,0,0,.15),
        inset 0 1px rgba(255,255,255,.08);

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}

.why-card::before{
    content:"";
    position:absolute;
    width:180px;
    height:180px;
    top:-90px;
    right:-90px;
    border-radius:50%;
    background:linear-gradient(#48d2ff,#2db8ff);
    filter:blur(90px);
    opacity:0;
    transition:.4s;
}

.why-card:hover{
    transform:translateY(-8px);
    border-color:rgba(90,210,255,.55);
}

.why-card:hover::before{
    opacity:.4;
}

/*==========================
          ICON
==========================*/

.icon{
    flex-shrink:0;

    width:60px;
    height:60px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:18px;

    background:rgba(255,255,255,.12);
    backdrop-filter:blur(20px);

    font-size:28px;
}

.why-card h3{
    margin:0;
    font-size:1.25rem;
    line-height:1.3;
    word-break:break-word;
}

.why-card p{
    margin:0;
    color:var(--text2);
    line-height:1.7;
    word-break:break-word;
}

/*==========================
        ANIMATION
==========================*/

.reveal{
    opacity:0;
    transform:translateY(40px);
    transition:all .8s cubic-bezier(.22,1,.36,1);
}

.reveal.active{
    opacity:1;
    transform:none;
}

/*==========================
        TABLET
==========================*/

@media (min-width:768px){

    .why-us{
        padding:90px 24px;
    }

    .why-header h2{
        font-size:3rem;
    }

    .why-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:24px;
        margin-top:60px;
    }

    .why-card{
        padding:32px;
    }

    .icon{
        width:68px;
        height:68px;
        font-size:32px;
    }

    .why-us::before{
        width:320px;
        height:320px;
    }

    .why-us::after{
        width:320px;
        height:320px;
    }
}

/*==========================
        DESKTOP
==========================*/

@media (min-width:1200px){

    .why-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }

    .why-header h2{
        font-size:3.8rem;
    }

    .why-card{
        padding:35px;
    }
}







:root{

    --glass-bg:rgba(255,255,255,.12);
    --glass-border:rgba(255,255,255,.25);
    --text:#fff;
    --primary:#2dd4ff;
    --secondary:#7c3aed;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

.crystalglass{

    position:relative;
    overflow:hidden;

    padding:80px 20px;

    background:
    radial-gradient(circle at top left,#3b82f6 0%,transparent 45%),
    radial-gradient(circle at bottom right,#02089d 0%,transparent 45%),
    linear-gradient(135deg,#08111f,#111827,#0f172a);

}

.crystal-bg::before,
.crystal-bg::after{

    content:"";
    position:absolute;
    border-radius:50%;
    filter:blur(90px);
    opacity:.35;

}

.crystal-bg::before{

    width:260px;
    height:260px;
    background:#00d4ff;

    top:-60px;
    left:-60px;

}

.crystal-bg::after{

    width:280px;
    height:280px;
    background:#1a0ce2;

    bottom:-100px;
    right:-80px;

}

.glass-card{

    position:relative;
    z-index:2;

    max-width:1200px;
    margin:auto;

    display:flex;
    flex-direction:column;

    gap:30px;

    padding:25px;

    border-radius:28px;

    background:var(--glass-bg);

    border:1px solid var(--glass-border);

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:

    0 15px 40px rgba(0,0,0,.35),
    inset 0 1px 1px rgba(255,255,255,.3);

}
.glass-image{
    overflow:hidden;
    border-radius:20px;

    max-width:450px;
    margin:auto;
}

.glass-image img{

    width:100%;
    display:block;
    border: 10px;

    transition:.8s;

}

.glass-content{

    color:var(--text);

    display:flex;
    flex-direction:column;
    justify-content:center;

}

.glass-badge{

    align-self:flex-start;

    padding:8px 16px;

    border-radius:40px;

    background:rgba(255,255,255,.15);

    border:1px solid rgba(255,255,255,.3);

    font-size:.8rem;

    backdrop-filter:blur(10px);

    margin-bottom:18px;

}

.glass-content h2{

    font-size:2rem;
    line-height:1.1;

    margin-bottom:20px;

}

.glass-content p{

    font-size:1rem;
    line-height:1.8;

    opacity:.9;

    margin-bottom:30px;

}

.glass-btn{

    width:max-content;

    text-decoration:none;

    color:white;

    padding:15px 28px;

    border-radius:50px;

    background:linear-gradient(135deg,#00d4ff,#3ab1ed);

    font-weight:600;

    transition:.4s;

    box-shadow:
    0 10px 30px rgba(0,212,255,.35);

}

.glass-btn:hover{
    box-shadow:
    0 15px 40px rgba(0,212,255,.45);

}


.glass-card::before{

    content:"";

    position:absolute;

    top:0;
    left:-150%;

    width:100%;
    height:100%;

    background:

    linear-gradient(
        110deg,
        transparent,
        rgba(255,255,255,.4),
        transparent
    );
}

/* Animación */

.glass-card.active::before{

    animation:shine 2s ease;

}

@keyframes shine{

    to{

        left:180%;

    }

}

/* Tablet */

@media(min-width:768px){

    .glass-card{

        flex-direction:row;

        padding:40px;

        gap:50px;

    }

    .glass-image{

        flex:1;

    }

    .glass-content{

        flex:1;

    }

    .glass-content h2{

        font-size:3rem;

    }

}

/* Desktop */

@media(min-width:1200px){

    .crystalglass{

        padding:120px 40px;

    }

    .glass-content p{

        font-size:1.1rem;

    }

}


/*=========================================
WHATSAPP CTA
=========================================*/

.glass-whatsapp{

    position:relative;
    overflow:hidden;

    padding:120px 20px;

    text-align:center;

    background:
    radial-gradient(circle at 15% 20%,rgba(72,182,255,.08),transparent 35%),
    radial-gradient(circle at 85% 10%,rgba(138,92,255,.12),transparent 40%),
    var(--bg);

}

.glass-whatsapp::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    linear-gradient(130deg,
    transparent,
    rgba(255,255,255,.03),
    transparent);

    pointer-events:none;

}

.wa-content{

    max-width:850px;
    margin:auto;

    position:relative;
    z-index:2;

}

/* Badge */

.wa-badge{

    display:inline-flex;

    padding:10px 18px;

    border-radius:100px;

    background:rgba(72,182,255,.12);

    border:1px solid rgba(72,182,255,.25);

    color:#8fd6ff;

    font-weight:600;

    margin-bottom:25px;

    backdrop-filter:blur(15px);

}

/* Título */

.wa-title{

    color:#fff;

    font-size:clamp(2.2rem,5vw,4rem);

    line-height:1.15;

    margin-bottom:25px;

    font-weight:800;

}

.wa-title span{

    background:linear-gradient(135deg,#48b6ff,#8a5cff);

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

}

/* Texto */

.wa-text{

    color:var(--text2);

    font-size:1.1rem;

    line-height:1.9;

    max-width:720px;

    margin:0 auto 45px;

}

/* Botón */

.wa-btn{

    display:inline-flex;

    align-items:center;

    gap:14px;

    padding:18px 34px;

    border-radius:100px;

    text-decoration:none;

    color:#fff;

    font-weight:700;

    font-size:1.05rem;

    background:
    linear-gradient(135deg,#25D366,#128C7E);

    box-shadow:
    0 18px 40px rgba(37,211,102,.30);

    transition:.35s;

}

.wa-btn i{

    font-size:1.5rem;

}

.wa-btn:hover{

    transform:translateY(-6px);

    gap:20px;

    box-shadow:
    0 25px 55px rgba(37,211,102,.45),
    0 0 30px rgba(37,211,102,.35);

}

/*==========================
ANIMACIONES
==========================*/

.reveal{

    opacity:0;

    transform:translateY(45px);

    transition:1s cubic-bezier(.2,.8,.2,1);

}

.reveal.active{

    opacity:1;

    transform:none;

}

.wa-title{

    animation:titleFloat 5s ease-in-out infinite;

}

@keyframes titleFloat{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-8px);

    }

}

/* Responsive */

@media(max-width:768px){

    .glass-whatsapp{

        padding:90px 22px;

    }

    .wa-btn{

        width:100%;
        justify-content:center;

    }

}

.brands-sticky{
    position:sticky;
    top:0;
    z-index:1000;
    width:100%;
    padding:20px 10px;
    background:
    linear-gradient(
        135deg,
        rgba(15,23,42,.92),
        rgba(2,6,23,.88)
    );
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    border-bottom:1px solid rgba(255,255,255,.08);
    overflow:hidden;
}


.brands-sticky::before{
    content:"";
    position:absolute;
    width:220px;
    height:220px;
    top:-200px;
    left:-80px;
    background:#00d4ff;
    filter:blur(100px);
    opacity:.15;
}

.brands-container{
    width:100%;
    display:flex;
    flex-direction:column;
    gap:18px;
    padding:0 20px;
}

.brands-title{
    text-align:center;
}

.brands-title span{
    display:block;
    color:white;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
}

.brands-title p{
    margin:7px 0 0;
    color:rgba(255,255,255,.55);
    font-size:.82rem;
}

.brands-slider{
    width:100%;
    overflow:hidden;
    position:relative;
}

.brands-slider::before,
.brands-slider::after{
    content:"";
    position:absolute;
    top:0;
    width:45px;
    height:100%;
    z-index:2;
}

.brands-slider::before{
    left:0;
    background:
    linear-gradient(
        90deg,
        #07101f,
        transparent
    );
}


.brands-slider::after{
    right:0;
    background:
    linear-gradient(
        -90deg,
        #07101f,
        transparent
    );

}

.brands-track{

    display:flex;

    align-items:center;

    gap:45px;

    width:max-content;

    animation:
    brandsMove 25s linear infinite;

}



.brand{

    height:55px;

    min-width:110px;

    display:flex;

    justify-content:center;

    align-items:center;

    padding:12px 20px;


    background:

    linear-gradient(
        145deg,
        rgba(255,255,255,.08),
        rgba(255,255,255,.02)
    );


    border:

    1px solid rgba(255,255,255,.08);


    border-radius:16px;


    transition:.35s;

}



.brand img{

    max-width:80px;

    max-height:35px;

    object-fit:contain;

    opacity:1;

    transition:.35s;

}



.brand:hover{

    transform:translateY(-5px);

    background:
    rgba(255,255,255,.12);

}






/* ANIMACION */

@keyframes brandsMove{

    from{

        transform:translateX(0);

    }

    to{

        transform:translateX(-50%);

    }

}



/* TABLET */

@media(min-width:768px){


    .brands-container{

        flex-direction:row;

        align-items:center;

        gap:35px;

        padding:0 40px;

    }


    .brands-title{

        min-width:240px;

        text-align:left;

    }


    .brands-track{

        gap:60px;

    }


}



/* DESKTOP */

@media(min-width:1200px){


    .brands-sticky{

        padding:22px 0;

    }

    .brands-container{
        max-width:1400px;
        margin:29px;
    }

    .brand{
        min-width:130px;
        height:65px;
        border-radius:20px;
    }

    .brand img{
        max-width:95px;
    }
}





.footer-glass{
    position:relative;
    overflow:hidden;
    padding:70px 20px 25px;
    background:
    linear-gradient(
        145deg,
        #133785,
        #031546
    );
    color:white;
    isolation:isolate;
}

.footer-glow{
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    filter:blur(100px);
    opacity:.25;
    z-index:-1;
}

.glow-one{
    background:#00d9ff;
    top:-100px;
    left:-100px;
}

.glow-two{
    background:#7c3cff;
    bottom:-120px;
    right:-80px;
}

.footer-container{
    display:flex;
    flex-direction:column;
    gap:35px;
    max-width:1200px;
    margin:auto;
}

.footer-brand{
    padding:30px;
    background:
    linear-gradient(
        145deg,
        rgba(255,255,255,.12),
        rgba(255,255,255,.04)
    );
    border:
    1px solid rgba(255,255,255,.12);
    border-radius:28px;
    backdrop-filter:blur(20px);
}

.footer-logo{
    width:65px;
    height:65px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:32px;
    border-radius:20px;
    margin-bottom:20px;
    background:
    linear-gradient(
        135deg,
        #00d4ff,
        #645cff
    );
}

.footer-brand h2{
    font-size:1.7rem;
    margin:0 0 15px;
}

.footer-brand h2 span{
    color:#ffd500;
}

.footer-brand p{
    color:rgba(255,255,255,.65);
    line-height:1.6;
    font-size:1.2rem;
}

.footer-call{
    margin-top:25px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-size:1.3rem;
    height:55px;
    border-radius:18px;
    background:
    linear-gradient(
        135deg,
        #00d9ff,
        #0077ff
    );
    color:white;
    text-decoration:none;
    font-weight:700;
    transition:.35s;
}

.footer-call:hover{
    transform:translateY(-4px);
    box-shadow:
    0 15px 35px #00d9ff55;
}

.footer-column{
    padding:25px;
    border-radius:25px;
    background:
    rgba(255,255,255,.05);
    border:
    1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(15px);
}

.footer-column h3{
    margin-top:0;
    margin-bottom:20px;
    font-size:1.1rem;
}

.footer-column a{
    display:block;
    color:rgba(255,255,255,.65);
    text-decoration:none;
    margin-bottom:13px;
    transition:.3s;


}

.footer-column a:hover{
    color:#00d9ff;
    transform:translateX(5px);
}

.footer-bottom{
    max-width:1200px;
    margin:40px auto 0;
    padding-top:25px;
    border-top:
    1px solid rgba(255,255,255,.1);
    display:flex;
    flex-direction:column;
    gap:15px;
    text-align:center;
}

.footer-bottom p{
    color:rgba(255,255,255,.45);
    font-size:1.15rem;
}

.footer-social{
    display:flex;
    justify-content:center;
    gap:20px;
}

.footer-social a{
    color:white;
    text-decoration:none;
    font-size:1.10rem;
}

@media(min-width:768px){
.footer-container{
    display:grid;
    grid-template-columns:
    1.5fr 1fr 1fr;
}

.footer-bottom{
    flex-direction:row;
    justify-content:space-between;
    text-align:left;
}
}

@media(min-width:1200px){
.footer-glass{
    padding-left:40px;
    padding-right:40px;
}

.footer-brand{
    padding:40px;
}
}
