* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Segoe UI', sans-serif;
    background-color: #F4F9FF;
    color: #333;
    line-height: 1.6;
}

a {
    text-decoration: none;
}

/* ===== NAVBAR ===== */

.logo {
    color: white;
    font-size: 20px;
    font-weight: bold;
}

.menu {
    list-style: none;
    display: flex;
    gap: 30px;
}

.menu li {
    position: relative;
}

.menu a {
    color: rgb(248, 247, 247);
    font-weight: 500;
    transition: 0.3s ease;
}

.menu a:hover {
    color: #1B6CA8;
}

/* ===== DROPDOWN ===== */

.submenu {
    display: none;
    position: absolute;
    background: rgb(243, 242, 242);
    top: 35px;
    left: 0;
    width: 260px;
    padding: 15px;
    border-radius: 6px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.1);
}

.submenu li {
    margin-bottom: 10px;
}

.submenu a {
    color: #f5f3f3;
    font-size: 14px;
    display: block;
    padding: 6px 0;
}

.dropdown:hover .submenu {
    display: block;
    z-index: 2000;
}

.hero h1 {
    font-size: 56px;
    font-weight: 700;
    margin-bottom: 20px;
    letter-spacing: 1px;
    color: #eceaf0;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

.hero p {
    font-size: 20px;
    opacity: 0.9;
}

body {
    margin: 0;
    font-family: Arial, sans-serif;
}

section {
    padding: 80px 20px;
}

.container {
    max-width: 1200px;
    margin: auto;
}

.btn-primaryy,
.btn-secondary {
    display: inline-block;
    padding: 12px 30px;
    margin-top: 20px;
    background: #012b49;
    color: white;
    text-decoration: none;
    border-radius: 5px;
}

.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
}

.card {
    padding: 30px;
    background: #f8f4f4;
    border-radius: 10px;
    text-align: center;
}

.footer {
    background: #88c7f5;
    color: white;
    text-align: center;
    padding: 20px;
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 30px;
    background: #041020;
    color: rgb(243, 238, 238);
}

.logo {
    font-weight: bold;
    font-size: 1.3rem;
}

.menu {
    display: flex;
    list-style: none;
    gap: 20px;
}

.menu li {
    position: relative;
}

.menu a {
    text-decoration: none;
    color: rgb(249, 248, 252);
    font-size: 1.2rem;
}

.submenu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;

    background: #616161; /* sólido, más oscuro */
    list-style: none;
    padding: 15px;
    width: 260px;

    border-radius: 8px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.3);

    z-index: 3000;
}

.submenu li {
    margin-bottom: 8px;
}

.dropdown:hover .submenu {
    display: block;
    z-index: 2000;
    position:absolute;
}

/* HAMBURGUESA */
.hamburger {
    display: none;
    font-size: 1.8rem;
    cursor: pointer;
}

@media (max-width: 992px) {

    .hamburger {
        display: block;
    }

    .menu {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 70px;
        right: 0;
        width: 100%;
        background: #030c18;
        padding: 20px;

    }

    .menu.active {
        display: flex;
    }

    .submenu {
        position: static;
        width: 100%;
        display: none;
        background: #2c3e50;
        padding: 10px;
        z-index: 2000;
    }

    .dropdown.active .submenu {
        display: block;
    }

    .dropdown:hover .submenu {
        display: none;
    }
}

body {
    margin: 0;
    font-family: Arial, sans-serif;
    background: #f7fafd;
    color: #222;
}

section {
    padding: 80px 20px;
    text-align: center;
}

.btn-primary {
    display: inline-block;
    margin-top: 20px;
    padding: 12px 25px;
    background: white;
    color: #4a6579;
    text-decoration: none;
    font-weight: bold;
    border-radius: 6px;
}

.beneficios .container,
.experiencia .container,
.grid-productos {
    display: grid;
    gap: 20px;
    max-width: 1100px;
    margin: auto;
}

.beneficios .container {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

.grid-productos {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.card {
    background: rgb(240, 234, 234);
    padding: 35px;
    border-radius: 14px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

.card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(0,0,0,0.12);
}

.experiencia {
    background: #4984bb;
    color: white;
}

.stat h2 {
    font-size: 40px;
}

.intro {
    background: white;
}

.beneficios {
    background: #f0f6fc;
}

.productos-destacados {
    background: white;
}

.experiencia {
    background: linear-gradient(135deg, #1e5f9c, #0a3d62);
    color: white;
}

section p {
    max-width: 800px;
    margin: auto;
}
body {
    margin: 0;
    font-family: 'Poppins', sans-serif;
    background: #f4f7fb;
    color: #1d2a3b;
    line-height: 1.7;
}

h1 {
    font-size: 58px;
    font-weight: 700;
    letter-spacing: -1px;
}

h2 {
    font-size: 38px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #185079;
}

h3 {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 10px;
}

p {
    font-size: 16px;
    opacity: 0.85;
}

section::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 60px;
    height: 3px;
    background: #c8d6e0;
    transform: translateX(-50%);
    opacity: 0.15;
}
.fade-section {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s ease;
}

.fade-section.visible {
    opacity: 1;
    transform: translateY(0);
}

.hero {
    min-height: 90vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(rgba(15, 20, 31, 0.685), rgba(0, 6, 12, 0.151)),
                url('../img/fondo.jpeg') center/cover no-repeat;
    text-align: center;
    color: white;
}

.card {
    background: rgb(235, 231, 241);
    padding: 40px;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.05);
    transition: all 0.3s ease;
    border-top: 4px solid #3c7075;
    position: relative;
}

.card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(0,0,0,0.12);
}

.navbar {
    background: rgba(26, 55, 75, 0.973);
    backdrop-filter: blur(8px);
}

.menu a {
    position: relative;
    font-weight: 500;
}

.menu a::after {
    content: "";
    position: absolute;
    bottom: -6px;
    left: 0;
    width: 0%;
    height: 2px;
    background: #00B3C6;
    transition: 0.3s ease;
}

.menu a:hover::after {
    width: 100%;
}

body {
    font-family: 'Inter', sans-serif;
    background: #F4F9FF;
    color: #2D3748;
    line-height: 1.8;
    margin: 0;
}

h1, h2 {
    font-family: 'Playfair Display', serif;
    letter-spacing: -1px;
}

h1 {
    font-size: 64px;
    font-weight: 700;
}

h2 {
    font-size: 38px;
    font-weight: 600;
}

.logo {
    font-family: 'Cinzel', serif;
    font-size: 26px;
    letter-spacing: 3px;
    display: flex;
    align-self: center;
}

.hero h1 {
    text-transform: uppercase;
    font-weight: 700;
} 

.blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: auto;
    padding: 80px 20px;
}

.blog-card {
    background: rgb(238, 168, 168);
    padding: 40px;
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.05);
    transition: 0.3s ease;
}

.blog-card:hover {
    transform: translateY(-10px);
}

.mision-vision {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    max-width: 1100px;
    margin: auto;
    padding: 80px 20px;
}

.mv-card {
    background: white;
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.05);
    border-left: 5px solid #3db8c5;
}

@media (max-width: 900px) {
    .mision-vision {
        grid-template-columns: 1fr;
    }
}

.producto {
  text-align: center;
  padding: 50px 20px;
}

.carrusel {
  overflow: hidden;
  width: 100%;
  max-width: 900px;
  margin: 30px auto;
}

.imagenes {
  display: flex;
  transition: transform 0.5s ease-in-out;
}

.imagenes img {
  width: calc(100% / 3);
  object-fit: cover;
}

.imagenes img {
  border-radius: 10px;
  margin: 0 5px;
}

.producto {
  text-align: center;
  padding: 60px 20px;
}

.carrusel {
  position: relative;
  max-width: 1000px;
  margin: 40px auto;
}

.contenedor-visible {
  overflow: hidden;
}

.imagenes {
  display: flex;
  transition: transform 0.5s ease;
  gap: 15px;
}

.imagenes img {
  width: calc((100% - 30px) / 3);
  height: 250px;
  object-fit: cover;
  border-radius: 10px;
}

.btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.6);
  color: white;
  border: none;
  font-size: 28px;
  padding: 10px 15px;
  cursor: pointer;
  border-radius: 8px;
  z-index: 10;
}

.prev { left: 10px; }
.next { right: 10px; }

.btn:hover {
  background: rgba(158, 10, 10, 0.8);
}

.btn.disabled {
  opacity: 0.3;
  cursor: not-allowed;
  pointer-events: none;
}

.fondo-producto {
    min-height: 50vh;
    padding: 10px 20px 60px 20px;

    background: linear-gradient(rgba(69, 69, 70, 0.733), rgba(3, 9, 15, 0.952)),
                url('../img/fondo_producto.jpg') center/cover no-repeat;

    color: white;
}

.producto h2 {
    font-family: 'Cinzel', serif;
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 15px;
    letter-spacing: 1px;
    margin-top: -15px;
    color: #FFD700;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

.producto p {
    max-width: 800px;
    margin: 0 auto 40px auto;
    font-size: 18px;
    line-height: 1.6;
    font-weight: 400;
    opacity: 0.9;
    color: #f8fafc;
}

.producto {
    margin-top: 0px;
}

header {
    position: relative;
    z-index: 5000;
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
    padding: 0 30px;
    background: #808080;
    color: white;
}

.logo img {
    height: 70px;
    width: auto;
    /*display: block;*/
    object-fit: contain;
    /*transition: transform 0.3s ease;*/
}

.logo img:hover {
    transform: scale(1.1);
}
/* -------------------------- */
/* ESTILOS GENERALES DE LA PÁGINA */
/* -------------------------- */
body {
    font-family: 'Inter', Arial, Helvetica, sans-serif;
    background: linear-gradient(135deg, #f4f6f9, #e2e8f0);
    margin: 0;
    padding: 0;
}

/* -------------------------- */
/* AJUSTES PARA EL HEADER DINÁMICO */
/* -------------------------- */
#header {
    width: 100%;
    margin: 0;
    padding: 0;
    transition: all 0.5s ease;
}

/* Efecto de sombra en header al hacer scroll */
body.scrolled #header {
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* -------------------------- */
/* CONTENEDOR PRINCIPAL */
/* -------------------------- */
.container {
    max-width: 900px;
    background: white;
    margin: 40px auto;
    padding: 40px;
    border-radius: 18px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    width: 90%;
    position: relative;
    overflow: visible;
}

/* Efecto de fondo con degradado sutil */
.container::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    height: 100%;
    background: linear-gradient(180deg, rgba(31, 60, 136, 0.03), transparent);
    border-radius: 18px;
    z-index: 0;
}

.container > * {
    position: relative;
    z-index: 1;
}

/* -------------------------- */
/* TÍTULOS Y TEXTOS */
/* -------------------------- */
.main-title {
    color: #1f3c88;
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 20px;
    font-family: 'Cinzel', serif;
    animation: fadeInUp 1s ease forwards;
    opacity: 0;
    transform: translateY(20px);
}

.section-title {
    color: #1f3c88;
    margin-top: 25px;
    border-bottom: 2px solid #e2e8f0;
    padding-bottom: 6px;
    font-size: 1.2rem;
    font-family: 'Orbitron', sans-serif;
    position: relative;
    transition: all 0.3s ease;
}

.section-title::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 50px;
    height: 2px;
    background: #1f3c88;
    transition: width 0.4s ease;
}

.section-title:hover::after {
    width: 100%;
}

.intro-text {
    color: #555;
    line-height: 1.6;
    margin: 10px 0;
    animation: fadeIn 1.5s ease forwards;
    opacity: 0;
}

.info-text {
    color: #555;
    line-height: 1.6;
    margin: 10px 0;
    transition: color 0.3s ease;
}

/* -------------------------- */
/* SECCIÓN DE REDES SOCIALES */
/* -------------------------- */
.social {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: center;
    margin-top: 20px;
}

.social-btn {
    text-decoration: none;
    color: white;
    padding: 10px 16px;
    border-radius: 8px;
    transition: all 0.4s ease;
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
}

.social-btn .icon {
    font-size: 1.1rem;
}

/* Colores por red social */
.facebook { background: #1877f2; }
.youtube { background: #ff0000; }
.instagram { background: #e4405f; }
.linkedin { background: #0077b5; }
.tiktok { background: #000000; }
.twitter { background: #1da1f2; }

.social-btn:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 5px 12px rgba(0,0,0,0.2);
}

.facebook:hover { background: #166fe5; }
.youtube:hover { background: #cc0000; }
.instagram:hover { background: #d33a55; }
.linkedin:hover { background: #00669c; }
.tiktok:hover { background: #222222; }
.twitter:hover { background: #1a91da; }

/* -------------------------- */
/* SECCIÓN DE INFORMACIÓN */
/* -------------------------- */
.info {
    margin-top: 25px;
    line-height: 1.8;
    display: grid;
    gap: 20px;
}

.info-card {
    background: #f8fafc;
    padding: 15px;
    border-radius: 12px;
    border-left: 4px solid #1f3c88;
    transition: all 0.3s ease;
}

.info-card:hover {
    background: #19183d;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    transform: translateX(5px);
}

.info-card:hover .info-text {
    color: #2d3748;
}

/* -------------------------- */
/* MAPA DE GOOGLE */
/* -------------------------- */
.map-container {
    position: relative;
    margin-top: 20px;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

.map-container:hover {
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.map-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    background: rgba(31, 60, 136, 0.8);
    color: white;
    text-align: center;
    font-size: 0.9rem;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.map-container:hover .map-overlay {
    opacity: 1;
}

iframe {
    width: 100%;
    height: 350px;
    border: 0;
    transition: transform 0.3s ease;
}

.map-container:hover iframe {
    transform: scale(1.01);
}

/* -------------------------- */
/* ANIMACIONES */
/* -------------------------- */
@keyframes fadeInUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

/* -------------------------- */
/* AJUSTES RESPONSIVOS */
/* -------------------------- */
@media (max-width: 600px) {
    .main-title {
        font-size: 1.8rem;
    }

    .container {
        padding: 25px;
        margin: 20px auto;
    }

    iframe {
        height: 300px;
    }

    .social-btn {
        width: 100%;
        justify-content: center;
    }
}

/* CONTENEDOR */

.contacto-botones{
display:flex;
justify-content:center;
gap:30px;
flex-wrap:wrap;
margin-top:40px;
}

/* BOTONES */

.contacto-btn{
display:flex;
align-items:center;
gap:12px;
padding:14px 28px;
border-radius:10px;
color:white;
font-weight:500;
position:relative;
overflow:hidden;
transition:all 0.35s ease;
}

/* ICONOS */

.contacto-btn img{
width: 100px;
transition:transform 0.6s ease;
}

/* EFECTO 1: SUBE */

.contacto-btn:hover{
transform:translateY(-6px);
box-shadow:0 12px 30px rgba(0,0,0,0.25);
}

/* EFECTO 2: ICONO GIRA */

.contacto-btn:hover img{
transform:rotate(360deg);
}

/* EFECTO 3: BRILLO */

.contacto-btn::before{
content:"";
position:absolute;
top:0;
left:-100%;
width:100%;
height:100%;
background:linear-gradient(
90deg,
transparent,
rgba(255,255,255,0.4),
transparent
);
transition:0.7s;
}

.contacto-btn:hover::before{
left:100%;
}

/* COLORES */

.facebook{
background:#1877F2;
}

.instagram{
background:#E4405F;
}

.whatsapp{
background:#25D366;
}

.youtube{
background:#FF0000;
}

/* ===== REDES SOCIALES ===== */

.social-banner{
    width:90%;
    max-width:1000px;
    margin:60px auto;
    padding:40px;
    background:linear-gradient(135deg,#1877f2,#e4405f);
    border-radius:14px;

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
    gap:25px;
}

.social-card{
    text-align:center;
    color:white;
    padding:25px;
    border-radius:10px;

    /*background:rgba(255,255,255,0.1);*/
    backdrop-filter:blur(5px);

    animation:float 3s ease-in-out infinite alternate;
    transition:0.3s;
    cursor:pointer;
}

.social-card:hover{
    transform:translateY(-8px);
}

.card-facebook{animation-delay:0s;}
.card-instagram{animation-delay:0.4s;}
.card-youtube{animation-delay:0.8s;}
.card-whatsapp{animation-delay:1.2s;}

.social-img{
    width:80px;
    margin-bottom:15px;

    animation:rotate 6s linear infinite;
}

.social-title{
    font-size:20px;
    margin:10px 0;
}

.social-link{
    display:inline-block;
    margin-top:10px;
    padding:8px 18px;

    background:white;
    color:#1877f2;
    border-radius:20px;

    font-weight:600;
    transition:0.3s;
}

.social-link:hover{
    background:#f1f1f1;
}

/* Animaciones */

@keyframes float{
    from{transform:translateY(0);}
    to{transform:translateY(-12px);}
}

@keyframes rotate{
    from{transform:rotate(0);}
    to{transform:rotate(360deg);}
}

.social-btn{
color:white;
background:#333;
padding:12px;
border-radius:50%;
display:inline-flex;
align-items:center;
justify-content:center;
transition:0.3s;
}

.social-btn:hover{
color:#fff;
background:#ff7a00;
transform:scale(1.1);
}

.contacto-fondo{

    min-height:100vh;

    background:
    linear-gradient(rgba(30,30,30,0.8), rgba(10,10,10,0.85)),
    url("../img/fondo_contactos.jpeg") center/cover no-repeat;

    padding:80px 20px;

}

.contacto-container{

    max-width:1100px;
    margin:auto;

    padding:40px;

    background:rgba(255,255,255,0.95);

    border-radius:18px;

    box-shadow:0 20px 60px rgba(0,0,0,0.25);

}

.social-banner{

grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

gap:30px;

}

.contacto{
    padding:60px 20px;
    text-align:center;
    background:#f5f7fa;
}

.contacto h2{
    font-size:52px;
    margin-bottom:10px;
    color: #031972;
}

.contacto p{
    max-width:600px;
    margin:auto;
    margin-bottom:25px;
    color: #f8f8fa;
}

/* REDES */

.redes{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    margin-bottom:40px;
}

.btn-red{
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:26px;
    color:white;
    text-decoration:none;
    transition:0.3s;
}

.btn-red:hover{
    transform:scale(1.1);
}

/* COLORES REDES */

.facebook{
    background:#1877f2;
}

.instagram{
    background:#e4405f;
}

.youtube{
    background:#ff0000;
}

.whatsapp{
    background:#25d366;
}

/* INFO */

.info-contacto{
    margin-bottom:40px;
}

.info-contacto h3{
    margin-top:20px;
}

/* MAPA */

.mapa{
    max-width:800px;
    margin:auto;
}

.contacto{
padding:70px 20px;
text-align:center;
color:rgb(240, 239, 243);

background-image:url("../img/fondo_contactos.jpeg");
background-size:cover;
background-position:center;
background-repeat:no-repeat;
min-height:600px;
}

.intro{
max-width:900px;
margin:40px auto;
padding:30px;

text-align:center;

background:rgba(255,255,255,0.1);
backdrop-filter:blur(6px);

border-radius:15px;
}

.intro h1{
font-size:2.5rem;
margin-bottom:10px;
font-weight:700;
}

.intro p{
font-size:1.1rem;
opacity:0.9;
color: #00B3C6;
}
/* REDES */

.redes{
display:flex;
justify-content:center;
gap:25px;
margin-bottom:50px;
}

.social{
width:65px;
height:65px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:26px;
color:white;
text-decoration:none;
transition:0.4s;
position:relative;
}

.social:hover{
transform:translateY(-8px) scale(1.1);
box-shadow:0 10px 25px rgba(49, 48, 48, 0.3);
}

.social:hover i{
transform:rotate(360deg);
transition:0.6s;
}


/* COLORES */

.facebook{background:#1877f2;}
.instagram{background:#e4405f;}
.youtube{background:#ff0000;}
.whatsapp{background:#25d366;}



/* INFO CONTACTO */

.info-contacto{
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
margin-bottom:50px;
}

.info-card{
display:flex;
align-items:flex-start;
gap:15px;
background: rgba(55, 12, 104, 0.1);
padding:20px 25px;
border-radius:12px;
backdrop-filter:blur(6px);
transition:0.3s;
}

.info-card:hover{
transform:translateY(-6px);
box-shadow:0 10px 25px rgba(84, 110, 158, 0.2);
}

.info-card i{
font-size:28px;
color:#00c3ff;
margin-top:5px;
}

.info-card h3{
margin:0;
margin-bottom:5px;
font-size:18px;
}

.info-card p{
margin:0;
font-size:14px;
}


/* MAPA */

.mapa{
max-width:900px;
margin:auto;
border-radius:12px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,0.3);
}

/* =========================
   BLOG HERO
========================= */

.blog-hero{
    text-align:center;
    padding:80px 20px 40px 20px;
}

.blog-hero-content h1{
    font-family:'Orbitron', sans-serif;
    font-size:3rem;
    margin-bottom:10px;
    color: #d4d3d3;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

.blog-hero-content p{
    font-size:1.1rem;
    max-width:600px;
    margin:auto;
    opacity:0.9;
    color: #f8f4f4;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}


/* =========================
   CONTENIDO BLOG
========================= */

.blog-contenido{
    width:85%;
    max-width:1200px;
    margin:auto;
    padding:30px 0;
}



/* =========================
   IMAGENES DEL BLOG
========================= */

.blog-imagenes{
    display:flex;
    justify-content:center;
    gap:15px;
    margin-top:30px;
}

.blog-imagenes img{
    width:260px;
    height:180px;
    object-fit:cover;

    border-radius:10px;

    transition:transform 0.3s ease, box-shadow 0.3s ease;
}

.blog-imagenes img:hover{
    transform:scale(1.05);
    box-shadow:0 8px 20px rgba(0,0,0,0.4);
}



/* =========================
   VIDEO
========================= */

.blog-video{
    display:flex;
    justify-content:center;
    margin-top:40px;
}

.blog-video iframe{
    width:900px;
    height:500px;

    border:none;
    border-radius:10px;

    box-shadow:0 10px 30px rgba(0,0,0,0.5);
}



/* =========================
   TEXTO + IMAGEN
========================= */

.blog-texto{
    flex:1;
}

.blog-texto h2{
    font-family:'Orbitron', sans-serif;
    font-size:2rem;
    margin-bottom:10px;
    color: #faf6f6;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}

.blog-texto p{
    line-height:1.6;
    margin-bottom:10px;
    color: #f3efef;
    text-shadow: 0 2px 10px rgba(0,0,0,0.6);
}



.blog-img img{
    width:100%;
    max-width:500px;
    border-radius:10px;
}



/* poner texto e imagen lado a lado */
.blog-contenido:last-child{
    display:flex;
    align-items:center;
    gap:40px;
}

.blog-page{
    background-image:url("../img/fondo_blog.jpeg");
    background-size:cover;
    background-position:center;
    background-attachment:fixed;
}

.blog-page main{
    background: rgba(0,0,0,0.55);
    backdrop-filter: blur(2px);
}

.blog-video{
margin-top:50px;
display:flex;
justify-content:center;
}

.blog-video video{
width:900px;
max-width:90%;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,0.3);
}
/* =========================
   ABOUT PAGE
========================= */


/* HERO */

.about-hero{
    position:relative;
    height:55vh;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    text-align:center;
    color:white;

    background:
    linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)),
    url("../img/acerca_nosotros.jpeg");

    background-size:cover;
    background-position:center;
}

.about-hero h1{
    font-family:'Cinzel', serif;
    font-size:3rem;
    margin-bottom:10px;
}

.about-hero p{
    font-size:1.2rem;
    opacity:0.9;
}



/* INTRO */
.about-intro{
max-width:900px;
margin:120px auto;
text-align:center;
padding:0 20px;
}
.about-intro h2{
font-family:'Cinzel', serif;
font-size:2.3rem;
margin-bottom:30px;
position:relative;
}

.about-intro h2::after{
content:"";
display:block;
width:80px;
height:3px;
background:#1f3c88;
margin:15px auto;
}

.about-intro p{
font-size:1.1rem;
line-height:1.8;
color:#555;
margin-bottom:18px;
}

/* MISION VISION */
.about-mv{
display:grid;
grid-template-columns:1fr 1fr;
gap:80px;
max-width:1000px;
margin:120px auto;
text-align:center;
}

.mv-block i{
font-size:40px;
color:#1f3c88;
margin-bottom:20px;
}

.mv-block h3{
font-family:'Cinzel', serif;
font-size:1.7rem;
margin-bottom:15px;
}

.mv-block p{
color:#555;
line-height:1.7;
}
/* ========================
   PRESENCIA INTERNACIONAL
======================== */

.about-presence{
margin:120px 0;
text-align:center;
padding:80px 20px;
}

.about-presence-content{
max-width:1000px;
margin:auto;
}

.about-presence h2{
font-family:'Cinzel', serif;
font-size:2.2rem;
margin-bottom:20px;
}

.about-presence p{
max-width:700px;
margin:0 auto 50px auto;
line-height:1.7;
color:#e5e5e5;
}

/* BANDERAS */

.countries{
display:flex;
justify-content:center;
gap:40px;
flex-wrap:wrap;
}

.country-card{
display:flex;
flex-direction:column;
align-items:center;
transition:0.3s;
}

.country-card img{
width:70px;
margin-bottom:10px;
border-radius:4px;
}

.country-card span{
font-size:0.95rem;
letter-spacing:1px;
}
.country-card:hover{
transform:translateY(-6px);
}

.about-presence h2::after{
content:"";
display:block;
width:80px;
height:3px;
background:#28a745;
margin:15px auto 0;
}

.about-background{
background-image:
linear-gradient(rgba(0,0,0,0.65), rgba(0,0,0,0.65)),
url("../img/fondo_nosotros.jpeg");
background-size:cover;
background-position:center;
background-attachment:fixed;
padding-top:100px;
padding-bottom:120px;
color:white;
}

.about-background p{
color:#e5e5e5;
}

.about-background h2,
.about-background h3{
color:white;
}

/* ===== ARREGLAR Z-INDEX DEL MENÚ ===== */

header{
    position: sticky;
    top: 0;
    z-index: 9999;
    background: white;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08);
}
.navbar{
    position: sticky;
    top: 0;
    z-index: 9999;
}

.menu{
    position: relative;
    z-index: 9999;
}

.submenu{
    position: absolute;
    z-index: 10000;
}