:root {
--primary:#005e9d;
--primary-light:#0077c2;
--secondary:#007bff;
--accent:#00d4ff;
--light:#f8fdff;
--dark:#1a1a1a;
--white:#ffffff;
--radius:12px;
--shadow:0 8px 20px rgba(0,0,0,0.08);
--transition:all .3s ease;
}

*{
font-family:'Montserrat',sans-serif;
box-sizing:border-box;
}

/* TEXT */

.texto-300{font-weight:300}
.texto-400{font-weight:400}
.texto-600{font-weight:600}
.texto-700{font-weight:700}
.texto-800{font-weight:800}

/* HERO CAROUSEL */

.banner-carousel{
position:relative;
height:400px;
overflow:hidden;
margin-bottom:3rem;
}

.carousel-container{
position:relative;
width:100%;
height:100%;
max-width:1400px;
margin:auto;
}

.carousel-slide{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
opacity:0;
transition:opacity .8s;
}

.carousel-slide.active{
opacity:1;
}

.desktop-banner{display:block;}
.mobile-banner{display:none;}

.carousel-image{
width:100%;
height:100%;
object-fit:cover;
}

/* TEXTO HERO */

.carousel-text{
position:absolute;
top:50px;
left:50px;
color:#005e9d;
max-width:600px;
z-index:2;
}

.carousel-text h1{
font-size:2rem;
margin-bottom:10px;
line-height:1.2;
}

/* CONTROLES */

.carousel-controls{
position:absolute;
bottom:20px;
left:50%;
transform:translateX(-50%);
display:flex;
gap:10px;
z-index:10;
}

.carousel-dot{
width:12px;
height:12px;
border-radius:50%;
background:rgba(255,255,255,.5);
border:none;
cursor:pointer;
}

.carousel-dot.active{
background:var(--primary);
transform:scale(1.2);
}

.carousel-arrow{
position:absolute;
top:50%;
transform:translateY(-50%);
background:var(--primary);
border:none;
color:white;
width:50px;
height:50px;
border-radius:50%;
font-size:1.4rem;
cursor:pointer;
display:flex;
align-items:center;
justify-content:center;
}

.carousel-arrow.prev{left:20px;}
.carousel-arrow.next{right:20px;}

/* TITULOS */

.titulo-moderno{
font-size:2rem;
font-weight:700;
color:#111;
margin-bottom:10px;
}

/* FEATURES */

.features-horizontal{
max-width:1400px;
margin:40px auto;
padding:0 20px;
display:grid;
grid-template-columns:repeat(5,1fr);
gap:24px;
}

.feature-item{
background:white;
border-radius:10px;
padding:24px;
text-align:center;
box-shadow:var(--shadow);
}

.feature-item .icon{
font-size:28px;
color:#0f172a;
margin-bottom:10px;
}

.feature-item h3{
font-size:.95rem;
font-weight:600;
margin-bottom:6px;
}

.feature-item p{
font-size:.85rem;
color:#666;
}

/* BOTON CTA */

.proyecto-btn{
background:#0f172a;
color:white!important;
padding:14px 20px;
border-radius:6px;
font-weight:600;
text-decoration:none;
display:inline-block;
}

.proyecto-btn:hover{
opacity:.9;
}

/* BANNER PROMO */

.banner-plan-container{
position:relative;
width:100%;
max-width:1400px;
height:180px;
margin:3rem auto;
overflow:hidden;
border-radius:15px;
box-shadow:0 10px 30px rgba(0,0,0,.15);
}

.banner-plan-imagen{
width:100%;
height:100%;
object-fit:cover;
}

.banner-plan-btn{
position:absolute;
bottom:15px;
right:20px;
background:linear-gradient(135deg,#005e9d,#0077c2);
color:white!important;
padding:10px 18px;
border-radius:25px;
font-weight:600;
text-decoration:none;
}

/* PROYECTOS */

.proyectos-section{
background:#f7f7f7;
padding:80px 20px;
}

.proyecto-container{
max-width:1400px;
margin:auto;
padding:0 20px;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.proyecto-imagen img{
width:100%;
height:auto;
border-radius:10px;
}

.proyecto-contenido h3{
font-size:1.6rem;
font-weight:700;
margin-bottom:15px;
}

.proyecto-contenido p{
color:#666;
line-height:1.6;
margin-bottom:20px;
}


/* SATEL SECTION */

.satel-section{
padding:80px 20px;
background:#f7f7f7;
}

.satel-container{
max-width:1400px;
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:center;
}

.satel-text h2{
font-size:2rem;
font-weight:700;
margin-bottom:20px;
color:#111;
}

.satel-intro{
font-weight:600;
margin-bottom:10px;
}

.satel-text p{
color:#555;
line-height:1.6;
margin-bottom:15px;
}

.satel-benefits{
list-style:none;
padding:0;
margin:25px 0;
}

.satel-benefits li{
margin-bottom:10px;
padding-left:22px;
position:relative;
font-weight:500;
}

.satel-benefits li::before{
content:"✔";
position:absolute;
left:0;
color:#005e9d;
font-weight:bold;
}

.satel-btn{
display:inline-block;
background:#005e9d;
color:white;
padding:12px 20px;
border-radius:6px;
text-decoration:none;
font-weight:600;
margin-top:10px;
}

.satel-btn:hover{
background:#0077c2;
}

.satel-image img{
width:100%;
border-radius:10px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}

.satel-section{
position:relative;
background:none;
overflow:hidden;
}

.satel-section::before{
content:"";
position:absolute;
inset:0;
background:url("/files/Tapeta LUNA 1920 x 1080.jpg") center/cover no-repeat;
filter:blur(6px);
transform:scale(1.1);
z-index:0;
}

.satel-section::after{
content:"";
position:absolute;
inset:0;
background:rgba(0,0,0,0.55);
z-index:1;
}

.satel-container{
position:relative;
z-index:2;
color:white;
}

.satel-text h2{
color:white;
}

.satel-text p{
color:#e5e5e5;
}

.satel-benefits li::before{
color:#00d4ff;
}

.satel-image{
position:relative;
padding-bottom:56.25%;
height:0;
overflow:hidden;
border-radius:10px;
}

.satel-image iframe{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border:none;
}

/* MOBILE */

@media(max-width:900px){

.satel-container{
grid-template-columns:1fr;
gap:30px;
text-align:center;
}

.satel-benefits li{
padding-left:0;
}

.satel-benefits li::before{
display:none;
}

}

/* PRODUCTOS */

.productos-preview{
background:var(--light);
padding:4rem 0;
}

.preview-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:1.5rem;
max-width:1200px;
margin:auto;
padding:0 20px;
}

.preview-card{
background:white;
border-radius:15px;
overflow:hidden;
box-shadow:var(--shadow);
}

.preview-image{
width:100%;
height:200px;
object-fit:contain;
background:white;
padding:20px;
}

.preview-content{
padding:1.2rem;
}

.preview-title{
font-size:1rem;
font-weight:600;
margin-bottom:6px;
}

.preview-description{
font-size:.85rem;
color:#666;
margin-bottom:10px;
}

.preview-btn{
display:inline-block;
background:linear-gradient(135deg,var(--primary),var(--primary-light));
color:white!important;
padding:6px 14px;
border-radius:20px;
font-size:.85rem;
text-decoration:none;
}

/* WHATSAPP */

.whatsapp-chat{
position:fixed;
bottom:20px;
right:20px;
z-index:1000;
}

.whatsapp-button{
display:block;
width:60px;
height:60px;
background:#25D366;
border-radius:50%;
text-align:center;
box-shadow:0 4px 10px rgba(0,0,0,.3);
}

.whatsapp-button i{
color:white;
font-size:30px;
line-height:60px;
}

/* RESPONSIVE */

@media(max-width:1100px){

.features-horizontal{
grid-template-columns:repeat(3,1fr);
}

.preview-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media(max-width:768px){

.banner-carousel{
height:260px;
}

.desktop-banner{
display:none;
}

.mobile-banner{
display:block;
}

.carousel-text{
display:none;
}

/* FEATURES */

.features-horizontal{
grid-template-columns:1fr;
}

/* PROYECTOS */

.proyecto-container{
grid-template-columns:1fr;
gap:30px;
text-align:center;
}

/* PRODUCTOS */

.preview-grid{
grid-template-columns:1fr 1fr;
}

.preview-image{
height:160px;
}

.banner-plan-container{
height:120px;
}

}

@media(max-width:480px){

.preview-grid{
grid-template-columns:1fr;
}

.banner-plan-container{
height:110px;
}

.banner-plan-btn{
font-size:6px;
padding:6px 12px;
}

}
