
:root {
  --tierra:    #3d2b1f;
  --musgo:     #2d4a22;
  --oliva:     #5a7a3a;
  --lima:      #8fb84e;
  --paja:      #e8dfc8;
  --crema:     #f5f0e8;
  --arena:     #c9b99a;
  --hoja:      #d4e8b0;
  --blanco:    #ffffff;
  --acento:    #a0522d;
  --noche:     #0f1f2e;
  --noche2:    #162333;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:var(--blanco);color:var(--tierra);overflow-x:hidden;}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:999;opacity:0.4;}
h1,h2,h3,.serif{font-family:'Playfair Display',serif;}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
@keyframes leafFloat{0%,100%{transform:translateY(0) rotate(-3deg);}50%{transform:translateY(-10px) rotate(3deg);}}
.reveal{opacity:1;transform:none;}

/* NAV */
nav{position:sticky;top:0;z-index:100;background:rgba(45,74,34,0.97);backdrop-filter:blur(12px);padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:150px !important;border-bottom:1px solid rgba(143,184,78,0.18);}
.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
.nav-logo img {
    height: 120px;
    width: auto;
    object-fit: contain;
    /* background: #fff; */
    border-radius: 8px;
    padding: 5px 12px;
    margin-top: 0rem;
    transition: opacity 0.5s ease;
}
.nav-links{display:flex;gap:2px;flex:1;justify-content:center;}
.nav-links a{font-size:1.2rem;color:rgba(212,232,176,0.8);text-decoration:none;padding:6px 9px;border-radius:4px;transition:all 0.2s;letter-spacing:0.02em;white-space:nowrap;}
.nav-links a:hover{color:var(--hoja);background:rgba(143,184,78,0.12);}
.nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0;}
.nav-social{display:flex;gap:7px;}
.nav-social a{width:28px;height:28px;border-radius:50%;border:1px solid rgba(143,184,78,0.3);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--lima);text-decoration:none;transition:all 0.2s;font-weight:500;}
.nav-social a:hover{background:rgba(143,184,78,0.15);border-color:var(--lima);}
.nav-login{font-size:1rem;font-weight:500;background:var(--lima);color:var(--musgo);padding:7px 14px;border-radius:20px;text-decoration:none;transition:all 0.2s;border:1px solid transparent;white-space:nowrap;}
.nav-login:hover{background:transparent;color:var(--lima);border-color:var(--lima);}

/* HERO */
.hero{min-height:92vh;background:var(--musgo);position:relative;overflow:hidden;display:flex;align-items:center;padding:80px 60px;}
.hero-bg{position:absolute;inset:0;background-image:url('media/fondo.jpg');background-size:cover;background-position:center;filter:blur(4px) saturate(0.6);opacity:0.18;z-index:0;transform:scale(1.05);}
.hero-leaves{position:absolute;inset:0;pointer-events:none;}
.leaf{position:absolute;opacity:0.07;}
.leaf svg{fill:var(--lima);}
.l1{top:8%;right:12%;animation:leafFloat 7s ease-in-out infinite;}
.l2{top:55%;right:6%;animation:leafFloat 9s ease-in-out infinite 1s;}
.l3{bottom:10%;right:25%;animation:leafFloat 6s ease-in-out infinite 2s;}
.l4{top:20%;right:35%;animation:leafFloat 11s ease-in-out infinite 0.5s;}
.hero-content{position:relative;z-index:2;max-width:580px;animation:fadeUp 1s ease forwards;}
.hero-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(143,184,78,0.15);border:1px solid rgba(143,184,78,0.3);border-radius:20px;padding:5px 14px;margin-bottom:28px;}
.hero-tag-dot{width:6px;height:6px;border-radius:50%;background:var(--lima);}
.hero-tag span{font-size:11px;color:var(--lima);letter-spacing:0.1em;text-transform:uppercase;font-weight:500;}
.hero h1{font-size:clamp(40px,5.5vw,68px);font-weight:900;color:var(--blanco);line-height:1.05;margin-bottom:22px;letter-spacing:-1px;}
.hero h1 em{font-style:italic;color:var(--lima);display:block;}
.hero-sub{font-size:15px;color:rgba(212,232,176,0.8);line-height:1.8;max-width:460px;margin-bottom:36px;font-weight:300;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px;}
.btn-hero-primary{font-size:13px;font-weight:500;background:var(--lima);color:var(--musgo);padding:13px 26px;border-radius:30px;text-decoration:none;transition:all 0.25s;border:2px solid var(--lima);}
.btn-hero-primary:hover{background:transparent;color:var(--lima);}
.btn-hero-outline{font-size:13px;font-weight:400;border:1.5px solid rgba(212,232,176,0.4);color:var(--hoja);padding:13px 26px;border-radius:30px;text-decoration:none;transition:all 0.25s;}
.btn-hero-outline:hover{border-color:var(--hoja);}
.hero-stats{display:flex;gap:28px;align-items:center;}
.stat-num{font-family:'Playfair Display',serif;font-size:34px;font-weight:900;color:var(--lima);display:block;line-height:1;}
.stat-label{font-size:10px;color:rgba(212,232,176,0.55);text-transform:uppercase;letter-spacing:0.1em;margin-top:3px;}
.stat-divider{width:1px;height:36px;background:rgba(143,184,78,0.2);}
.hero-media{position:absolute;right:60px;top:50%;transform:translateY(-50%);width:50rem;height:380px;border-radius:20px;border:1.5px solid rgba(143,184,78,0.18);background:rgba(90,122,58,0.18);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);}
.hero-media-inner{text-align:center;color:rgba(212,232,176,0.45);}
.hero-media-inner p{font-size:12px;margin-top:10px;}

/* WAVES */
.wave-down,.wave-up{display:block;width:100%;overflow:hidden;line-height:0;}
.wave-down svg,.wave-up svg{display:block;width:100%;}
.wave-down{margin-bottom:-2px;}
.wave-up{margin-top:-2px;}

/* SECCIÓN BASE */
.section{padding:80px 60px;}
.section-alt{background:var(--crema);}
.section-dark{
  background:var(--noche);color:var(--paja);
  position:relative;overflow:hidden;
}
.section-dark::after{
  content:'';position:absolute;inset:0;
  background-image:url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?w=1400&q=60');
  background-size:cover;background-position:center;
  filter:blur(3px) saturate(0.6);
  opacity:0.18;z-index:0;transform:scale(1.05);
}
.section-dark > *{position:relative;z-index:1;}
.section-green{background:var(--musgo);}
.section-eyebrow{font-size:11px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--oliva);display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.section-eyebrow::before{content:'';display:block;width:24px;height:1.5px;background:var(--oliva);}
.section-eyebrow.light{color:var(--arena);}
.section-eyebrow.light::before{background:var(--arena);}
.section-eyebrow.lima{color:var(--lima);}
.section-eyebrow.lima::before{background:var(--lima);}
.section-title{font-size:clamp(30px,4vw,46px);font-weight:700;line-height:1.15;margin-bottom:14px;letter-spacing:-0.5px;}
.section-sub{font-size:14px;line-height:1.85;font-weight:300;max-width:540px;color:#5a4a3a;margin-bottom:48px;}
.section-chip{display:inline-block;font-size:9px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;background:rgba(90,122,58,0.1);color:var(--oliva);border:1px solid rgba(90,122,58,0.18);border-radius:20px;padding:3px 10px;margin-bottom:16px;}
.section-chip.light{background:rgba(143,184,78,0.1);color:var(--lima);border-color:rgba(143,184,78,0.2);}

/* QUIÉNES SOMOS */
.quienes-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;}
.quienes-texto p{font-size:14px;line-height:1.9;color:#4a3a2a;font-weight:300;margin-bottom:18px;}
.quienes-texto strong{font-weight:500;color:var(--musgo);}
.objetivo{padding:16px 0;border-bottom:1px solid rgba(90,122,58,0.13);display:flex;align-items:flex-start;gap:16px;transition:padding-left 0.2s;cursor:default;}
.objetivo:first-child{border-top:1px solid rgba(90,122,58,0.13);}
.objetivo:hover{padding-left:8px;}
.objetivo-num{font-family:'Playfair Display',serif;font-size:11px;font-weight:700;color:var(--lima);min-width:22px;margin-top:2px;letter-spacing:0.05em;}
.objetivo-body h4{font-size:13px;font-weight:500;color:var(--musgo);margin-bottom:2px;}
.objetivo-body p{font-size:11px;color:#7a6a5a;line-height:1.6;font-weight:300;}

/* 20 AÑOS */
.veinte-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;position:relative;}
.veinte-texto p{font-size:14px;line-height:1.9;color:var(--paja);font-weight:300;margin-bottom:14px;opacity:0.85;}
.veinte-num{font-family:'Playfair Display',serif;font-size:160px;font-weight:900;color:rgba(143,184,78,0.06);line-height:1;position:absolute;left:40px;top:50%;transform:translateY(-50%);pointer-events:none;user-select:none;}
.veinte-media{border-radius:16px;border:1px solid rgba(255,255,255,0.09);background:rgba(255,255,255,0.05);aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;backdrop-filter:blur(4px);}
.play-circle{width:56px;height:56px;border-radius:50%;background:var(--lima);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--musgo);cursor:pointer;transition:transform 0.2s;}
.play-circle:hover{transform:scale(1.1);}
.veinte-media span{font-size:12px;color:var(--arena);}

/* SEMBLANZAS */
.semblanzas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.semblanza-card{background:var(--blanco);border:1px solid rgba(90,122,58,0.12);border-radius:16px;padding:28px;transition:all 0.3s;cursor:default;position:relative;overflow:hidden;}
.semblanza-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--lima),var(--oliva));opacity:0;transition:opacity 0.3s;}
.semblanza-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(45,74,34,0.1);}
.semblanza-card:hover::before{opacity:1;}
.semblanza-avatar{width:60px;height:60px;border-radius:50%;margin-bottom:14px;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:18px;font-weight:700;}
.semblanza-cargo{font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--oliva);font-weight:500;margin-bottom:3px;}
.semblanza-nombre{font-size:15px;font-weight:500;color:var(--tierra);margin-bottom:10px;}
.semblanza-bio{font-size:12px;color:#7a6a5a;line-height:1.7;font-weight:300;}
.semblanza-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;font-size:12px;color:var(--arena);}

/* BIOINSUMOS */
.bio-intro-text{font-size:14px;line-height:1.9;color:#5a4a3a;font-weight:300;max-width:620px;margin-bottom:40px;}
.bio-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.bio-card{background:var(--blanco);border:1px solid rgba(90,122,58,0.12);border-radius:14px;padding:22px 14px;text-align:center;transition:all 0.3s;cursor:default;}
.bio-card:hover{background:var(--musgo);border-color:var(--musgo);transform:translateY(-6px);}
.bio-card:hover .bio-card-title{color:var(--hoja);}
.bio-card:hover .bio-card-desc{color:rgba(212,232,176,0.65);}
.bio-card:hover .bio-icon-wrap{background:rgba(143,184,78,0.18);}
.bio-icon-wrap{width:50px;height:50px;border-radius:50%;background:var(--hoja);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;font-size:20px;transition:background 0.3s;}
.bio-card-title{font-size:11px;font-weight:500;color:var(--tierra);margin-bottom:5px;transition:color 0.3s;}
.bio-card-desc{font-size:10px;color:#8a7a6a;line-height:1.6;font-weight:300;transition:color 0.3s;}

/* ASOCIADOS */
.panal-intro-text {
  font-size: 14px;
  color: #5a4a3a;
  line-height: 1.8;
  font-weight: 300;
  max-width: 520px;
  margin-bottom: 36px;
}

.panal-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
}

.panal-cell {
  aspect-ratio: 3/2;
  border: 1px solid rgba(90, 122, 58, 0.15);
  border-radius: 12px;
  background: var(--blanco);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  color: var(--oliva);
  font-weight: 400;
  cursor: pointer;
  transition: all 0.25s;
  text-decoration: none;
  padding:2rem;
}
.panal-cell:hover {
  /* background: var(--hoja); */
  border-color: var(--oliva);
  /* color: var(--musgo); */
  transform: scale(1.05);
}
.panal-cell.add{border-style:dashed;color:var(--arena);}

/* BLOG */
.blog-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;}
.blog-main-card {
  background: var(--blanco);

  border: 1px solid rgba(90, 122, 58, 0.12);
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s;
}
.blog-main-card:hover{box-shadow:0 16px 40px rgba(45,74,34,0.1);}
.blog-main-img {
  height: 200px;
  background: linear-gradient(135deg, #c8dfa0, #a0c060);
  background: url('media/index/Novedades.jpg') center/cover no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: var(--musgo);
}
.blog-main-body{padding:22px;}
.blog-cat{font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--oliva);font-weight:500;margin-bottom:7px;}
.blog-main-body h3{font-size:19px;font-weight:700;color:var(--tierra);line-height:1.3;margin-bottom:9px;}
.blog-main-body p{font-size:13px;color:#6a5a4a;line-height:1.7;font-weight:300;}
.read-more{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--oliva);font-weight:500;margin-top:12px;text-decoration:none;border-bottom:1px solid transparent;transition:border-color 0.2s;}
.read-more:hover{border-color:var(--oliva);}
.blog-side{display:flex;flex-direction:column;gap:12px;}
.blog-side-card{background:var(--blanco);border:1px solid rgba(90,122,58,0.12);border-radius:12px;padding:16px;display:flex;gap:12px;transition:all 0.25s;cursor:default;}
.blog-side-card:hover{background:var(--crema);}
.blog-side-thumb{width:52px;height:52px;border-radius:8px;flex-shrink:0;background:linear-gradient(135deg,#c8dfa0,#8fb84e);}
.blog-side-body .date{font-size:10px;color:var(--arena);margin-bottom:3px;}
.blog-side-body h4{font-size:12px;font-weight:500;color:var(--tierra);line-height:1.4;margin-bottom:3px;}
.blog-side-body p{font-size:11px;color:#8a7a6a;font-weight:300;}

/* CTA AFÍLIATE */
.cta-afiliate{background:var(--noche2);padding:80px 60px;position:relative;overflow:hidden;}
.cta-afiliate::before{content:'';position:absolute;right:-80px;top:-80px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(143,184,78,0.08) 0%,transparent 70%);}
.cta-afiliate::after{
  content:'';position:absolute;inset:0;
  background-image:url('https://images.unsplash.com/photo-1500382017468-9049fed747ef?w=1400&q=60');
  background-size:cover;background-position:center bottom;
  filter:blur(4px) saturate(0.5);
  opacity:0.12;z-index:0;transform:scale(1.05);
}
.cta-afiliate > *{position:relative;z-index:1;}
.cta-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.cta-afiliate .section-title{color:var(--blanco);}
.cta-afiliate .section-sub{color:rgba(212,232,176,0.7);margin-bottom:0;}
.cta-form{background:rgba(255,255,255,0.06);border:1px solid rgba(143,184,78,0.2);border-radius:16px;padding:26px;backdrop-filter:blur(8px);}
.cta-form-title{font-size:13px;font-weight:500;color:var(--hoja);margin-bottom:16px;}
.form-group{margin-bottom:10px;}
.form-input{width:100%;background:rgba(255,255,255,0.07);border:1px solid rgba(143,184,78,0.2);border-radius:8px;padding:10px 14px;font-size:13px;color:var(--hoja);font-family:'DM Sans',sans-serif;outline:none;transition:border-color 0.2s;}
.form-input::placeholder{color:rgba(212,232,176,0.3);}
.form-input:focus{border-color:var(--lima);}
.form-submit{width:100%;background:var(--lima);color:var(--musgo);border:none;border-radius:8px;padding:12px;font-size:13px;font-weight:500;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all 0.25s;margin-top:4px;}
.form-submit:hover{background:var(--hoja);transform:translateY(-1px);}

/* CTA PRODUCTORES */
.cta-prod{padding:72px 60px;background:var(--crema);position:relative;overflow:hidden;}
.cta-prod-layout{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.cta-prod-text p{font-size:14px;line-height:1.85;color:#5a4a3a;font-weight:300;margin-bottom:26px;}
.cta-prod-btns{display:flex;gap:12px;flex-wrap:wrap;}
.btn-tierra{background:var(--tierra);color:var(--paja);font-size:13px;font-weight:500;padding:12px 22px;border-radius:25px;text-decoration:none;transition:all 0.25s;border:2px solid var(--tierra);}
.btn-tierra:hover{background:transparent;color:var(--tierra);}
.btn-wa{background:#25D366;color:#fff;font-size:13px;font-weight:500;padding:12px 22px;border-radius:25px;text-decoration:none;transition:all 0.25s;display:flex;align-items:center;gap:7px;}
.btn-wa:hover{opacity:0.88;}
.cta-prod-visual {
  /* background: linear-gradient(135deg, #d4e8b0, #a8cc6a); */
  background: url('media/index/agricultores.avif') center/cover no-repeat;
  border-radius: 20px;
  height: 440px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  color: var(--musgo);
  border: 1px solid rgba(90, 122, 58, 0.15);
}

/* FOOTER */
footer{background:var(--noche);padding:56px 60px 28px;}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid rgba(201,185,154,0.12);}
.footer-brand h3{font-family:'Playfair Display',serif;font-size:20px;color:var(--paja);margin-bottom:8px;}
.footer-brand p{font-size:12px;color:var(--arena);line-height:1.8;font-weight:300;margin-bottom:12px;}
.footer-contact span{display:block;font-size:12px;color:var(--arena);line-height:2.2;}
.footer-wa{color:#25D366 !important;}
.footer-col h4{font-size:10px;text-transform:uppercase;letter-spacing:0.1em;color:var(--arena);font-weight:500;margin-bottom:12px;}
.footer-col a{display:block;font-size:12px;color:rgba(201,185,154,0.6);text-decoration:none;line-height:2.2;transition:color 0.2s;font-weight:300;}
.footer-col a:hover{color:var(--paja);}
.footer-login-btn{display:inline-flex;align-items:center;gap:6px;margin-top:12px;background:rgba(143,184,78,0.1);border:1px solid rgba(143,184,78,0.22);color:var(--lima);font-size:11px;padding:7px 14px;border-radius:20px;text-decoration:none;transition:all 0.2s;}
.footer-login-btn:hover{background:rgba(143,184,78,0.18);}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:22px;}
.footer-copy{font-size:11px;color:rgba(201,185,154,0.35);font-weight:300;}
.footer-social{display:flex;gap:8px;}
.footer-social a{width:30px;height:30px;border-radius:50%;border:1px solid rgba(201,185,154,0.18);display:flex;align-items:center;justify-content:center;font-size:11px;color:rgba(201,185,154,0.45);text-decoration:none;transition:all 0.2s;font-weight:500;}
.footer-social a:hover{border-color:var(--lima);color:var(--lima);}

@media(max-width:860px){
  nav{padding:0 20px;}
  .nav-links{display:none;}
  .hero{padding:60px 24px;min-height:auto;}
  .hero-media{display:none;}
  .section{padding:56px 24px;}
  .quienes-layout,.veinte-layout,.cta-layout,.cta-prod-layout,.footer-top{grid-template-columns:1fr;}
  .bio-grid{grid-template-columns:repeat(3,1fr);}
  .blog-grid{grid-template-columns:1fr;}
  .semblanzas-grid{grid-template-columns:1fr;}
}

/* 
 */
 /* --- CONTROL DE MENÚS RESPONSIVOS --- */

/* Por defecto, ocultamos todo lo que sea del menú móvil en pantallas grandes */
.mobile-nav-container {
  display: none;
}



  /* --- NUEVA BARRA SUPERIOR MÓVIL CON LOGO --- */

.contenedor-nav-movil {
  display: none;
}

@media (max-width: 768px) {
  .nav-escritorio {
    display: none !important;
  }

  #inicio {
    padding-top: 60px;
  }
     .one_column{
    grid-template-columns:1fr !important;
  }
  
  /* El contenedor ahora es fijo arriba y abarca todo el ancho */
  .contenedor-nav-movil {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
  }

  /* La barra que contiene el Logo y la Hamburguesa */
  .barra-superior-movil {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #f5f0e8; /* Tu color --crema sólido */
    padding: 10px 20px;
    height: 60px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    width: 100%;
  }

  /* Ajuste del tamaño del logo en la barra */
  .barra-movil-logo-img {
    height: 35px;
    width: auto;
    display: block;
    object-fit: contain;
  }

  /* Botón hamburguesa plano (ya no es un círculo flotante) */
  .boton-hamburguesa {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    background: none;
    border: none;
    width: 40px;
    height: 40px;
    cursor: pointer;
    align-items: center;
    padding: 0;
    z-index: 99999; /* Asegura que quede por encima de la cortina */
  }

  .boton-hamburguesa span {
    display: block;
    width: 22px;
    height: 2px;
    background-color: var(--tierra);
    border-radius: 2px;
    transition: all 0.3s ease;
  }

  /* La cortina ahora baja justo detrás de la barra superior */
  .cortina-menu-movil {
    position: fixed;
    top: 60px; /* Empieza exactamente donde termina la barra del logo */
    right: -100%;
    width: 100%; /* Ahora puede ocupar todo el ancho o mantener los 320px si prefieres */
    max-width: 320px;
    height: calc(130vh - 60px) !important;
    background-color: #f5f0e8 !important;
    box-shadow: -10px 10px 30px rgba(0,0,0,0.15);
    display: flex;
    flex-direction: column;
    padding: 25px 20px;
    gap: 20px;
    transition: right 0.4s cubic-bezier(0.1, 0.8, 0.3, 1);
    z-index: 99998;
    overflow-y: auto;
  }

  .cortina-menu-movil.abierto {
    right: 0 !important;
  }

  /* Enlaces en 2 columnas */
  .movil-enlaces-grupo {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }

  .cortina-menu-movil a {
    color: var(--tierra) !important;
    text-decoration: none !important;
    font-size: 15px;
    font-weight: 600;
    padding: 8px 4px;
    border-bottom: 1px solid rgba(61, 43, 31, 0.08);
    display: block;
  }

  .nav-btn-movil {
    grid-column: span 2;
    background-color: var(--musgo) !important;
    color: var(--blanco) !important;
    text-align: center;
    padding: 10px !important;
    border-radius: 25px;
    border-bottom: none !important;
    margin-top: 5px;
  }

  /* Video */
  .movil-video-contenedor {
    margin-top: auto;
    padding-top: 10px;
  }

  .movil-video-titulo {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--oliva);
    font-weight: 700;
    margin-bottom: 6px;
  }

  .movil-video-element {
    width: 100%;
    max-width: 260px;
    margin: 0 auto;
    display: block;
    border-radius: 10px;
    aspect-ratio: 16 / 9;
    background: #000;
  }

  /* Transformación del botón a X (el del medio desaparece, los otros rotan) */
  .boton-hamburguesa.activo span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }
  .boton-hamburguesa.activo span:nth-child(2) {
    opacity: 0;
  }
  .boton-hamburguesa.activo span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }
}