/* ===================================
   RESET
=================================== */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, Helvetica, sans-serif;
}

html{
scroll-behavior:smooth;
}

body{
background:#0a3528;
color:white;
overflow-x:hidden;
}

/* ===================================
   HERO
=================================== */

.hero{

padding:15px 5% 60px;

background:
linear-gradient(
180deg,
#0d5b42 0%,
#084533 50%,
#062f23 100%
);

position:relative;

overflow:hidden;

}

.hero::before{

content:'';

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

background:

repeating-linear-gradient(
-45deg,
rgba(255,255,255,.02) 0px,
rgba(255,255,255,.02) 2px,
transparent 2px,
transparent 22px
);

pointer-events:none;

}
/* ===================================
   MENU
=================================== */

.menu{

display:flex;

justify-content:space-between;

align-items:center;

padding:5px 0;

margin-bottom:30px;

position:relative;

z-index:2;

}

.logo-menu{

width:280px;

height:auto;

display:block;

}

.menu-links{

display:flex;

align-items:center;

gap:35px;

}

.menu-links a{

text-decoration:none;

color:white;

font-weight:600;

font-size:1rem;

position:relative;

transition:.3s;

}

.menu-links a:hover{

color:#32d25f;

}

.menu-links a::after{

content:'';

position:absolute;

left:0;

bottom:-6px;

width:0;

height:2px;

background:#32d25f;

transition:.3s;

}

.menu-links a:hover::after{

width:100%;

}
/* ===================================
   HERO CONTENIDO
=================================== */

.hero-contenido{

margin-top:-60px;

text-align:center;

max-width:1200px;

margin:auto;

}

.hero-contenido p{

font-size:1.8rem;

line-height:1.6;

max-width:1100px;

margin:auto;

margin-bottom:40px;

font-weight:500;

}

/* ===================================
   BOTONES
=================================== */

.hero-botones{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn-principal{

background:#32d25f;

color:white;

padding:18px 40px;

border-radius:15px;

text-decoration:none;

font-weight:bold;

transition:.3s;

}

.btn-principal:hover{

transform:translateY(-3px);

}

.btn-secundario{

background:white;

color:#0c5d42;

padding:18px 40px;

border-radius:15px;

text-decoration:none;

font-weight:bold;

transition:.3s;

}

.btn-secundario:hover{

transform:translateY(-3px);

}

/* ===================================
   BANNER PERFILES
=================================== */

.banner-perfiles{

position:relative;

height:850px;

overflow:hidden;

}

.banner-perfiles img{

width:100%;
height:100%;

object-fit:cover;

display:block;

filter:
brightness(.60)
contrast(1.10);

}

.banner-perfiles::before{

content:'';

position:absolute;

inset:0;

background:
linear-gradient(
90deg,
rgba(0,0,0,.55),
rgba(0,0,0,.15),
rgba(0,0,0,.55)
);

}

.banner-overlay{

position:absolute;

top:50%;

right:80px;

transform:translateY(-50%);

width:650px;

z-index:2;

}

.subtitulo-banner{

font-size:.9rem;

letter-spacing:6px;

font-weight:700;

color:#32d25f;

text-align:right;

margin-bottom:20px;

}

.banner-overlay h2{

font-size:4.5rem;

line-height:.95;

font-weight:900;

text-align:right;

margin-bottom:25px;

}

.banner-overlay span{

color:#32d25f;

}

.banner-overlay p{

font-size:1.3rem;

line-height:1.8;

text-align:right;

}

/* ===================================
   FABRICACION
=================================== */

.fabricacion{

position:relative;

height:900px;

overflow:hidden;

}

.fabricacion-imagen{

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

}

.fabricacion-imagen img{

width:100%;
height:100%;

object-fit:cover;

display:block;

filter:
brightness(.75)
contrast(1.05);

}

/* SOMBRA DERECHA */

.fabricacion::before{

content:'';

position:absolute;

top:0;
right:0;

width:60%;
height:100%;

background:
linear-gradient(
90deg,
rgba(0,0,0,0),
rgba(0,0,0,.20),
rgba(0,0,0,.75)
);

z-index:1;

}

/* TEXTO */

.fabricacion-texto{

position:absolute;

top:50%;

right:8%;

transform:translateY(-50%);

width:650px;

z-index:2;

}

.etiqueta{

display:inline-block;

margin-bottom:20px;

color:#32d25f;

font-size:1rem;

font-weight:700;

letter-spacing:6px;

text-transform:uppercase;

}

.fabricacion-texto h2{

font-size:4rem;

line-height:1.05;

margin-bottom:30px;

font-weight:900;

}

.fabricacion-texto p{

font-size:1.2rem;

line-height:1.9;

margin-bottom:25px;

}

.btn-fabricacion{

display:inline-block;

padding:18px 40px;

background:#32d25f;

color:white;

text-decoration:none;

font-weight:bold;

border-radius:15px;

transition:.3s;

}

.btn-fabricacion:hover{

transform:translateY(-3px);

}

/* ===================================
   RESPONSIVE
=================================== */

@media(max-width:1100px){

.menu{

flex-direction:column;

gap:25px;

}

.menu-links{

flex-wrap:wrap;

justify-content:center;

}

.banner-overlay{

width:90%;

right:5%;

}

.banner-overlay h2{

font-size:3rem;

}

.fabricacion{

height:auto;

}

.fabricacion-imagen{

position:relative;

height:500px;

}

.fabricacion::before{

display:none;

}

.fabricacion-texto{

position:relative;

top:auto;
right:auto;

transform:none;

width:90%;

margin:auto;

padding:60px 0;

text-align:center;

}

.fabricacion-texto h2{

font-size:2.8rem;

}

}

@media(max-width:768px){

.logo-menu{

width:170px;

height:auto;

display:block;

transition:.35s ease;

}
.hero-contenido p{

font-size:1.2rem;

}

.banner-perfiles{

height:600px;

}

.banner-overlay h2{

font-size:2.3rem;

}

.fabricacion-texto h2{

font-size:2.2rem;

}

.fabricacion-texto p{

font-size:1rem;

}

}
/* ===================================
   VENTAJAS EMC
=================================== */

.ventajas{

padding:120px 8%;

background:
linear-gradient(
180deg,
#061f18,
#0a3528
);

position:relative;

overflow:hidden;

}

.ventajas::before{

content:'';

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

background:

repeating-linear-gradient(
-45deg,
rgba(255,255,255,.02) 0px,
rgba(255,255,255,.02) 2px,
transparent 2px,
transparent 25px
);

pointer-events:none;

}

.titulo-seccion{

text-align:center;

position:relative;

z-index:2;

margin-bottom:70px;

}

.titulo-seccion span{

color:#32d25f;

font-size:.95rem;

font-weight:700;

letter-spacing:5px;

}

.titulo-seccion h2{

font-size:3rem;

margin-top:20px;

}

.grid-ventajas{

display:grid;

grid-template-columns:
repeat(2,1fr);

gap:35px;

position:relative;

z-index:2;

}

.tarjeta-ventaja{

background:
rgba(255,255,255,.03);

padding:40px;

border-radius:25px;

border:
1px solid rgba(255,255,255,.08);

transition:.3s;

backdrop-filter:blur(4px);

}

.tarjeta-ventaja:hover{

transform:translateY(-8px);

border-color:#32d25f;

}

.icono{

font-size:3rem;

margin-bottom:20px;

}

.tarjeta-ventaja h3{

font-size:1.5rem;

margin-bottom:15px;

}

.tarjeta-ventaja p{

line-height:1.8;

color:#d8e8df;

}

/* RESPONSIVE */

@media(max-width:900px){

.grid-ventajas{

grid-template-columns:1fr;

}

}
/* ===================================
   PRODUCTOS DESTACADOS
=================================== */

.productos-destacados{

padding:120px 8%;

background:
linear-gradient(
180deg,
#08271f,
#0a3528
);

}

.grid-productos{

display:grid;

grid-template-columns:
repeat(2,1fr);

gap:40px;

margin-top:70px;

}

.producto-card{

background:
rgba(255,255,255,.03);

border-radius:25px;

overflow:hidden;

border:
1px solid rgba(255,255,255,.08);

transition:.35s;

}

.producto-card:hover{

transform:
translateY(-10px);

border-color:#32d25f;

box-shadow:
0 20px 40px rgba(0,0,0,.25);

}

.producto-card img{

width:100%;

height:320px;

object-fit:cover;

display:block;

}

.producto-info{

padding:30px;

}

.producto-info h3{

font-size:1.8rem;

margin-bottom:15px;

}

.producto-info p{

line-height:1.8;

color:#d7e4dd;

}

.catalogo-btn{

text-align:center;

margin-top:70px;

}

/* RESPONSIVE */

@media(max-width:1000px){

.grid-productos{

grid-template-columns:1fr;

}

}
/* ===================================
   CTA EMC
=================================== */

.cta-emc{

height:700px;

background-image:
linear-gradient(
rgba(0,0,0,.55),
rgba(0,0,0,.65)
),
url("img/banner-emc.png");

background-size:cover;

background-position:center;

background-repeat:no-repeat;

display:flex;

align-items:center;

justify-content:center;

text-align:center;

padding:0 30px;

}

.cta-overlay{

max-width:1000px;

}

.cta-overlay span{

display:block;

font-size:1rem;

font-weight:700;

letter-spacing:10px;

color:#39d96f;

margin-bottom:25px;

text-transform:uppercase;

}

.cta-overlay h2{

font-size:3.5rem;

font-weight:900;

line-height:1.05;

margin-bottom:30px;

color:white;

text-transform:uppercase;

text-shadow:
0 10px 30px rgba(0,0,0,.35);

}

.cta-overlay p{

font-size:1.2rem;

line-height:1.8;

color:#e2ece7;

max-width:650px;

margin:auto;

margin-bottom:50px;

}

.cta-botones{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn-secundario{

display:inline-flex;

align-items:center;

justify-content:center;

padding:18px 40px;

border-radius:14px;

background:white;

color:#053827;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.btn-secundario:hover{

transform:translateY(-3px);

box-shadow:
0 15px 30px rgba(0,0,0,.25);

}

/* RESPONSIVE */

@media(max-width:768px){

.cta-emc{

height:auto;

padding:120px 20px;

}

.cta-overlay h2{

font-size:2.6rem;

}

.cta-overlay p{

font-size:1.05rem;

}

}
/* ===================================
CONTACTO
=================================== */

.contacto{

padding:120px 5%;

background:
linear-gradient(
180deg,
#063527 0%,
#04291f 100%
);

text-align:center;

}

.contacto-header{

max-width:900px;

margin:0 auto 70px;

}

.contacto-tag{

display:block;

color:#39d96f;

font-weight:700;

letter-spacing:8px;

margin-bottom:20px;

}

.contacto-header h2{

font-size:4rem;

color:white;

margin-bottom:25px;

}

.contacto-header p{

font-size:1.2rem;

line-height:1.8;

color:#cfd8d3;

}

.contacto-grid{

display:grid;

grid-template-columns:
repeat(4,1fr);

gap:30px;

max-width:1400px;

margin:auto;

}

.contacto-card{

background:
rgba(255,255,255,.04);

border:
1px solid rgba(255,255,255,.08);

border-radius:25px;

padding:45px 25px;

transition:.35s;

}

.contacto-card:hover{

transform:
translateY(-8px);

border-color:
rgba(57,217,111,.4);

}

.contacto-icono{

font-size:2.8rem;

color:#39d96f;

margin-bottom:20px;

}

.contacto-card h3{

color:white;

font-size:1.5rem;

margin-bottom:15px;

}

.contacto-card p{

color:#d5ddd8;

line-height:1.8;

}

.btn-contacto-whatsapp{

display:inline-block;

margin-top:60px;

padding:18px 40px;

background:#39d96f;

color:white;

text-decoration:none;

font-weight:700;

border-radius:16px;

transition:.3s;

}

.btn-contacto-whatsapp:hover{

transform:
translateY(-4px);

}

@media(max-width:1000px){

.contacto-grid{

grid-template-columns:
repeat(2,1fr);

}

}

@media(max-width:768px){

.contacto-header h2{

font-size:2.6rem;

}

.contacto-grid{

grid-template-columns:1fr;

}

}

/* ===================================
   FOOTER
=================================== */

.footer{

background:#02130e;

padding-top:180px;

border-top:
1px solid rgba(255,255,255,.06);

}

.footer-contenedor{

width:90%;

max-width:1400px;

margin:auto;

display:grid;

grid-template-columns:
2fr 1fr 1fr;

gap:60px;

padding-bottom:60px;

}

.footer-logo{

height:80px;

margin-bottom:25px;

}

.footer-columna p{

color:#b7c9c0;

line-height:1.8;

}

.footer-columna h3{

color:white;

font-size:1.3rem;

margin-bottom:25px;

}

.footer-columna a{

display:block;

color:#b7c9c0;

text-decoration:none;

margin-bottom:15px;

transition:.3s;

}

.footer-columna a:hover{

color:#39d96f;

padding-left:5px;

}

.footer-copy{

border-top:
1px solid rgba(255,255,255,.06);

text-align:center;

padding:25px;

color:#7d948a;

font-size:.95rem;

}

/* RESPONSIVE */

@media(max-width:900px){

.footer-contenedor{

grid-template-columns:1fr;

text-align:center;

}

.footer-logo{

margin:auto auto 25px;

}

}
/* ===================================
   MODAL PRODUCTOS
=================================== */

.modal-producto{

display:none;

position:fixed;

top:0;
left:0;

width:100%;
height:100%;

background:rgba(0,0,0,.92);

justify-content:center;

align-items:center;

z-index:99999;

}

.modal-producto img{

max-width:90%;

max-height:90%;

border-radius:20px;

}

.cerrar-modal{

position:absolute;

top:25px;

right:40px;

font-size:55px;

color:white;

cursor:pointer;

}


/* ===================================
   WHATSAPP
=================================== */

.whatsapp-float{

position:fixed;

bottom:25px;

right:25px;

width:70px;

height:70px;

background:#25D366;

color:white;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:34px;

text-decoration:none;

box-shadow:
0 15px 35px rgba(0,0,0,.35);

z-index:9999;

transition:.3s;

}

.whatsapp-float:hover{

transform:scale(1.08);

}
/* ===================================
   SCROLL ANIMATION
=================================== */

.animar{

opacity:0;

transform:translateY(60px);

transition:
opacity .8s ease,
transform .8s ease;

}

.animar.visible{

opacity:1;

transform:translateY(0);

}
.hero-tag{

display:block;

color:#32d25f;

font-size:.95rem;

font-weight:700;

letter-spacing:8px;

text-transform:uppercase;

margin-bottom:20px;

}
/* ===================================
   MOBILE PREMIUM
=================================== */

@media(max-width:768px){

/* HERO */

.hero{

padding:15px 5% 40px;

}

.hero-contenido{

margin-top:0;

}

.hero-contenido p{

font-size:1rem;

line-height:1.8;

}

/* MENU */

.menu{

gap:15px;

}

.menu-links{

gap:20px;

}

.menu-links a{

font-size:.95rem;

}

/* BANNER PERFILES */

.banner-perfiles{

height:520px;

}

.banner-overlay{

width:90%;

right:5%;

left:5%;

}

.banner-overlay h2{

font-size:2rem;

line-height:1.05;

}

.banner-overlay p{

font-size:1rem;

line-height:1.6;

}

/* FABRICACION */

.fabricacion{

position:relative;

height:700px;

overflow:hidden;

}

.fabricacion-imagen{

position:absolute;

top:0;
left:0;

width:100%;
height:100%;

}

.fabricacion-imagen img{

width:100%;
height:100%;

object-fit:cover;

object-position:center;

}

.fabricacion-texto{

position:absolute;

left:50%;

top:50%;

transform:translate(-50%,-50%);

width:95%;

max-width:500px;

padding:0;

text-align:center;

z-index:3;

}

.fabricacion-texto h2{

font-size:2rem;

line-height:1;

}

.fabricacion-texto p{

font-size:1rem;

line-height:1.7;

}
/* VENTAJAS */

.ventajas{

padding:80px 6%;

}

.tarjeta-ventaja{

padding:28px;

}

/* PRODUCTOS */

.productos-destacados{

padding:80px 6%;

}

.producto-card img{

height:240px;

}

.producto-info{

padding:22px;

}

.producto-info h3{

font-size:1.5rem;

}

/* CTA */

.cta-emc{

padding:90px 20px;

}

.cta-overlay span{

letter-spacing:4px;

}

.cta-overlay h2{

font-size:2rem;

line-height:1.1;

}

.cta-overlay p{

font-size:1rem;

}

/* CONTACTO */

.contacto{

padding:80px 6%;

}

.contacto-header h2{

font-size:2.2rem;

}

.contacto-card{

padding:30px 20px;

}

/* FOOTER */

.footer{

padding-top:100px;

}

/* WHATSAPP */

.whatsapp-float{

width:60px;

height:60px;

right:15px;

bottom:15px;

font-size:28px;

}

}