/*======================================================

MAGNIPACK

Empaques Flexibles

======================================================*/

:root{

--azul:#0A4F93;

--azulOscuro:#083A6C;

--amarillo:#F4C21A;

--gris:#F4F6F9;

--texto:#333333;

--blanco:#FFFFFF;

}

*{

margin:0;

padding:0;

box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

font-family:'Poppins',sans-serif;

color:var(--texto);

background:white;

overflow-x:hidden;

}

img{

max-width:100%;

display:block;

}

a{

text-decoration:none;

}

.container{

width:90%;

max-width:1250px;

margin:auto;

}

/*==========================

HEADER

===========================*/

.header{

position:fixed;

top:0;

left:0;

width:100%;

background:rgba(255,255,255,.95);

backdrop-filter:blur(10px);

box-shadow:0 8px 25px rgba(0,0,0,.08);

z-index:999;

}

.nav{

height:90px;

display:flex;

align-items:center;

justify-content:space-between;

}

.logo img{

height:120px;

}

.menu{

display:flex;

gap:35px;

}

.menu a{

color:var(--azulOscuro);

font-weight:600;

transition:.30s;

}

.menu a:hover{

color:var(--amarillo);

}

.nav-btn{

background:var(--amarillo);

padding:14px 28px;

border-radius:40px;

font-weight:700;

color:var(--azulOscuro);

transition:.30s;

}

.nav-btn:hover{

transform:translateY(-3px);

box-shadow:0 10px 25px rgba(0,0,0,.18);

}

/*==========================

HERO

===========================*/

.hero{

position:relative;

padding-top:150px;

padding-bottom:90px;

background:

linear-gradient(135deg,#ffffff 0%,#eef5fb 100%);

overflow:hidden;

}

.hero-grid{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:70px;

}

.badge{

display:inline-block;

background:#EAF3FF;

color:var(--azul);

padding:10px 18px;

border-radius:30px;

font-size:14px;

font-weight:600;

margin-bottom:25px;

}

.hero h1{

font-size:60px;

line-height:1.08;

color:var(--azulOscuro);

margin-bottom:25px;

font-weight:800;

}

.hero p{

font-size:20px;

line-height:1.8;

margin-bottom:35px;

color:#555;

}

.hero-botones{

display:flex;

gap:18px;

flex-wrap:wrap;

}

.btn-principal{

background:var(--amarillo);

color:var(--azulOscuro);

padding:18px 38px;

border-radius:50px;

font-weight:700;

transition:.35s;

}

.btn-principal:hover{

transform:translateY(-4px);

box-shadow:0 18px 40px rgba(0,0,0,.18);

}

.btn-secundario{

border:2px solid var(--azul);

padding:18px 38px;

border-radius:50px;

font-weight:700;

color:var(--azul);

transition:.35s;

}

.btn-secundario:hover{

background:var(--azul);

color:white;

}

.hero-imagen img{

width:100%;

animation:flotar 5s ease-in-out infinite;

}

@keyframes flotar{

0%{transform:translateY(0);}

50%{transform:translateY(-12px);}

100%{transform:translateY(0);}

}



/*==========================

CINTA DE CONFIANZA

===========================*/

.confianza{

background:var(--azulOscuro);

padding:35px 0;

}

.confianza-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

color:white;

}

.confianza h3{

color:var(--amarillo);

font-size:20px;

margin-bottom:8px;

}

.confianza p{

font-size:14px;

opacity:.9;

}

/*==========================

TÍTULOS

===========================*/

.titulo-seccion{

text-align:center;

max-width:760px;

margin:0 auto 60px;

}

.titulo-seccion span{

color:var(--amarillo);

font-weight:800;

text-transform:uppercase;

letter-spacing:2px;

}

.titulo-seccion h2{

font-size:42px;

color:var(--azulOscuro);

margin:15px 0;

}

.titulo-seccion p{

font-size:18px;

color:#666;

}

/*==========================

PRODUCTOS

===========================*/

.productos{

padding:100px 0;

background:white;

}

.producto-destacado{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

background:linear-gradient(135deg,#083A6C,#0A4F93);

border-radius:35px;

padding:55px;

margin-bottom:60px;

color:white;

overflow:hidden;

}

.etiqueta{

display:inline-block;

background:var(--amarillo);

color:var(--azulOscuro);

padding:9px 18px;

border-radius:30px;

font-weight:800;

margin-bottom:18px;

}

.producto-destacado h3{

font-size:38px;

margin-bottom:18px;

}

.producto-destacado p{

font-size:18px;

line-height:1.8;

margin-bottom:30px;

}

.producto-destacado-img img{

border-radius:25px;

filter:drop-shadow(0 25px 35px rgba(0,0,0,.25));

}

.productos-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.producto-card{

background:white;

border-radius:25px;

padding:28px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

transition:.35s;

border-top:5px solid transparent;

}

.producto-card:hover{

transform:translateY(-8px);

border-top:5px solid var(--amarillo);

}

.producto-card img{

height:190px;

width:100%;

object-fit:contain;

margin-bottom:22px;

}

.producto-card h3{

color:var(--azulOscuro);

font-size:21px;

margin-bottom:12px;

}

.producto-card p{

color:#666;

font-size:15px;

}



/*==========================

INDUSTRIAS

===========================*/

.industrias{

padding:100px 0;

background:var(--gris);

}

.industrias-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:28px;

}

.industria{

background:white;

border-radius:25px;

padding:30px;

text-align:center;

box-shadow:0 12px 35px rgba(0,0,0,.07);

transition:.35s;

}

.industria:hover{

transform:translateY(-8px);

}

.industria img{

height:150px;

width:100%;

object-fit:contain;

margin-bottom:20px;

}

.industria h3{

color:var(--azulOscuro);

}

/*==========================

PROCESO

===========================*/

.proceso{

padding:100px 0;

background:white;

}

.proceso-grid{

display:grid;

grid-template-columns:repeat(5,1fr);

gap:22px;

}

.paso{

background:#f7fbff;

border-radius:24px;

padding:28px;

border-bottom:5px solid var(--amarillo);

}

.paso span{

font-size:34px;

font-weight:800;

color:var(--azul);

}

.paso h3{

color:var(--azulOscuro);

margin:14px 0;

}

.paso p{

font-size:14px;

color:#666;

}

/*==========================

CALIDAD

===========================*/

.calidad{

padding:100px 0;

background:linear-gradient(135deg,#083A6C,#0A4F93);

color:white;

}

.calidad-grid{

display:grid;

grid-template-columns:.8fr 1.2fr;

gap:60px;

align-items:center;

}

.calidad-imagen{

background:white;

border-radius:30px;

padding:40px;

}

.calidad-imagen img{

max-width:280px;

margin:auto;

}

.calidad-texto span{

color:var(--amarillo);

font-weight:800;

text-transform:uppercase;

letter-spacing:2px;

}

.calidad-texto h2{

font-size:44px;

margin:15px 0 20px;

}

.calidad-texto p{

font-size:18px;

line-height:1.8;

opacity:.95;

}

.calidad-lista{

margin-top:28px;

display:grid;

gap:14px;

}

.check{

background:rgba(255,255,255,.12);

padding:14px 18px;

border-radius:14px;

}

/*==========================

CONTACTO

===========================*/

.contacto{

padding:100px 0;

background:white;

}

.contacto-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

}

.contacto-texto span{

color:var(--amarillo);

font-weight:800;

text-transform:uppercase;

letter-spacing:2px;

}

.contacto-texto h2{

font-size:44px;

color:var(--azulOscuro);

margin:15px 0;

}

.contacto-texto p{

font-size:17px;

color:#555;

line-height:1.8;

}

.datos-contacto{

margin:28px 0;

}

.datos-contacto p{

margin-bottom:18px;

}

.contacto-mapa iframe{

width:100%;

height:430px;

border:0;

border-radius:30px;

box-shadow:0 18px 45px rgba(0,0,0,.12);

}

/*==========================

FOOTER

===========================*/

.footer{

background:var(--azulOscuro);

color:white;

padding:60px 0 0;

}

.footer-grid{

display:grid;

grid-template-columns:2fr 1fr 1fr;

gap:50px;

}

.footer-logo{

height:100px;

margin-bottom:20px;

background:white;

border-radius:14px;

padding:8px;

}

.footer h3{

color:var(--amarillo);

margin-bottom:15px;

}

.footer p{

opacity:.9;

margin-bottom:8px;

}

.footer-copy{

margin-top:40px;

padding:18px;

text-align:center;

background:rgba(0,0,0,.18);

font-size:14px;

}

/*==========================

RESPONSIVE CELULAR

===========================*/

@media(max-width:900px){

.nav{

height:auto;

padding:18px 0;

flex-direction:column;

gap:15px;

}

.menu{

flex-wrap:wrap;

justify-content:center;

gap:18px;

}

.logo img{

height:90px;

}

.hero{

padding-top:210px;

}

.hero-grid,

.producto-destacado,

.calidad-grid,

.contacto-grid{

grid-template-columns:1fr;

}

.hero h1{

font-size:40px;

}

.hero p{

font-size:17px;

}

.confianza-grid,

.productos-grid,

.industrias-grid,

.proceso-grid,

.footer-grid{

grid-template-columns:1fr;

}

.titulo-seccion h2,

.calidad-texto h2,

.contacto-texto h2{

font-size:32px;

}

.producto-destacado{

padding:35px 25px;

}

}



/*==========================

ACABADO PREMIUM

===========================*/

.hero::before{

content:"";

position:absolute;

width:520px;

height:520px;

border-radius:50%;

background:rgba(244,194,26,.18);

top:80px;

right:-160px;

z-index:0;

}

.hero::after{

content:"";

position:absolute;

width:360px;

height:360px;

border-radius:50%;

background:rgba(10,79,147,.10);

bottom:-120px;

left:-100px;

z-index:0;

}

.hero-grid{

position:relative;

z-index:1;

}

.producto-card,

.industria,

.paso{

position:relative;

overflow:hidden;

}

.producto-card::before,

.industria::before,

.paso::before{

content:"";

position:absolute;

top:0;

left:0;

width:100%;

height:5px;

background:linear-gradient(90deg,var(--amarillo),var(--azul));

transform:scaleX(0);

transform-origin:left;

transition:.35s;

}

.producto-card:hover::before,

.industria:hover::before,

.paso:hover::before{

transform:scaleX(1);

}

.menu-toggle{

display:none;

background:var(--azul);

color:white;

border:0;

font-size:28px;

padding:8px 16px;

border-radius:12px;

cursor:pointer;

}

.whatsapp-flotante{

position:fixed;

right:22px;

bottom:22px;

background:#25D366;

color:white;

padding:15px 24px;

border-radius:50px;

font-weight:800;

box-shadow:0 15px 35px rgba(0,0,0,.25);

z-index:9999;

transition:.3s;

}

.whatsapp-flotante:hover{

transform:translateY(-5px);

}

::selection{

background:var(--amarillo);

color:var(--azulOscuro);

}

@media(max-width:900px){

.nav-btn{

display:none;

}

.menu-toggle{

display:block;

}

.menu{

display:none;

width:100%;

background:white;

padding:15px;

border-radius:18px;

box-shadow:0 12px 30px rgba(0,0,0,.10);

}

.menu.activo{

display:flex;

flex-direction:column;

align-items:center;

}

.hero::before{

width:320px;

height:320px;

right:-120px;

}

.hero::after{

width:240px;

height:240px;

}

.whatsapp-flotante{

right:15px;

bottom:15px;

padding:13px 18px;

font-size:14px;

}

}