:root {
    --verde-oscuro:#2D6B22;
    --verde-medio:#8AB448;
    --verde-claro:#ACC864;
    --negro:#0f1a0b;
    --blanco:#f8fdf5;
    --gris-claro:#eaf3e0;
    --gris-medio:#c8ddb0;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;background:var(--blanco);color:var(--negro);overflow-x:hidden}
h1,h2,h3,h4,h5{font-family:'Playfair Display',serif}

/* REVEAL */
.reveal,.reveal-left,.reveal-right{opacity:0;transition:opacity .75s ease,transform .75s ease}
.reveal{transform:translateY(40px)}
.reveal-left{transform:translateX(-55px)}
.reveal-right{transform:translateX(55px)}
.reveal.visible,.reveal-left.visible,.reveal-right.visible{opacity:1;transform:none}
.delay-1{transition-delay:.1s}.delay-2{transition-delay:.22s}.delay-3{transition-delay:.34s}.delay-4{transition-delay:.46s}.delay-5{transition-delay:.58s}

/* NAVBAR */
.navbar{background:rgba(15,26,11,.96);backdrop-filter:blur(14px);transition:padding .3s}
.navbar.scrolled{padding-top:.4rem;padding-bottom:.4rem}
.navbar-brand{font-family:'Playfair Display',serif;font-size:1.65rem;font-weight:900;letter-spacing:-1px;color:var(--verde-claro)!important}
.navbar-brand span{color:var(--blanco)}
.nav-link{color:rgba(248,253,245,.8)!important;font-weight:500;font-size:.9rem;letter-spacing:.4px;padding:.4rem 1rem!important;position:relative;transition:color .3s}
.nav-link::after{content:'';position:absolute;bottom:0;left:1rem;right:1rem;height:2px;background:var(--verde-claro);transform:scaleX(0);transition:transform .3s}
.nav-link:hover{color:var(--verde-claro)!important}
.nav-link:hover::after{transform:scaleX(1)}
.btn-cta-nav{background:var(--verde-medio)!important;color:var(--negro)!important;border-radius:50px;font-weight:700;padding:.42rem 1.4rem!important;transition:background .3s,transform .2s}
.btn-cta-nav:hover{background:var(--verde-claro)!important;transform:translateY(-2px)}
.btn-cta-nav::after{display:none}
.navbar-toggler{border-color:var(--verde-medio)}
.navbar-toggler-icon{filter:invert(1)}

/* HERO */
#hero{min-height:100svh;background:linear-gradient(155deg,rgba(15,26,11,.84) 45%,rgba(45,107,34,.55) 100%),url('https://images.unsplash.com/photo-1416879595882-3373a0480b5b?w=1600&q=80') center/cover no-repeat;display:flex;align-items:center;position:relative;overflow:hidden}
#hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%238AB448' fill-opacity='0.06'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E")}
.hero-badge{display:inline-block;background:rgba(172,200,100,.14);border:1px solid rgba(172,200,100,.38);color:var(--verde-claro);font-size:.78rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;padding:.35rem 1.1rem;border-radius:50px;margin-bottom:1.6rem}
#hero h1{font-size:clamp(2.8rem,5.5vw,5.4rem);color:var(--blanco);line-height:1.1;margin-bottom:1.4rem}
#hero h1 em{font-style:normal;color:var(--verde-claro)}
#hero .lead{color:rgba(248,253,245,.78);font-size:clamp(.98rem,1.8vw,1.18rem);max-width:540px;font-weight:300;line-height:1.85;margin-bottom:2.4rem}
.btn-hero-primary,.btn-hero-outline{display:inline-block;font-weight:700;font-size:1rem;padding:.85rem 2.2rem;border-radius:50px;text-decoration:none;transition:all .3s}
.btn-hero-primary{background:var(--verde-medio);color:var(--negro);border:none}
.btn-hero-primary:hover{background:var(--verde-claro);color:var(--negro);transform:translateY(-3px);box-shadow:0 12px 30px rgba(138,180,72,.42)}
.btn-hero-outline{background:transparent;color:var(--blanco);border:2px solid rgba(248,253,245,.32)}
.btn-hero-outline:hover{border-color:var(--verde-claro);color:var(--verde-claro);transform:translateY(-3px)}
.hero-stats{margin-top:4rem;display:flex;gap:3rem;flex-wrap:wrap}
.stat-item strong{display:block;font-family:'Playfair Display',serif;font-size:2.5rem;color:var(--verde-claro);line-height:1}
.stat-item span{font-size:.8rem;color:rgba(248,253,245,.55);text-transform:uppercase;letter-spacing:1px}
.hero-img-placeholder{width:100%;max-width:460px;aspect-ratio:4/5;border-radius:24px;background:rgba(255,255,255,.05);border:2px dashed rgba(172,200,100,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;color:rgba(172,200,100,.55);font-size:.9rem;gap:.6rem;text-align:center;padding:1rem}
.hero-img-placeholder i{font-size:3rem}
.scroll-ind{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.4rem;color:rgba(248,253,245,.38);font-size:.74rem;letter-spacing:1.5px;text-transform:uppercase;animation:bob 2s infinite}
@keyframes bob{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(9px)}}

/* TICKER */
.ticker-wrap{background:var(--verde-medio);overflow:hidden;padding:.72rem 0}
.ticker{display:flex;white-space:nowrap;animation:tick 35s linear infinite}
.ticker-item{color:var(--negro);font-weight:700;font-size:.84rem;letter-spacing:2px;text-transform:uppercase;padding:0 2.4rem}
.ticker-item i{margin-right:.45rem}
@keyframes tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* SECTIONS common */
section{padding:7rem 0}
.section-eyebrow{font-size:.77rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--verde-medio);margin-bottom:.7rem}
.section-title{font-size:clamp(2rem,3.8vw,3rem);line-height:1.2;margin-bottom:1.4rem}
.section-title span{color:var(--verde-oscuro)}
.section-body{color:#4d6245;line-height:1.9;font-size:1.04rem}

/* NOSOTROS */
#nosotros{background:var(--blanco)}
.img-placeholder{width:100%;aspect-ratio:1;border-radius:22px;background:var(--gris-claro);border:2px dashed var(--gris-medio);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gris-medio);gap:.5rem;font-size:.85rem}
.img-placeholder i{font-size:2.5rem}
.glow-circle{position:absolute;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(138,180,72,.14),transparent 70%);pointer-events:none}
.mv-card{background:var(--negro);color:var(--blanco);border-radius:18px;padding:2rem;height:100%;position:relative;overflow:hidden;transition:transform .3s}
.mv-card::before{content:'';position:absolute;top:-40px;right:-40px;width:110px;height:110px;border-radius:50%;background:rgba(138,180,72,.1)}
.mv-card:hover{transform:translateY(-6px)}
.mv-card h5{color:var(--verde-claro);margin-bottom:.7rem}
.mv-card p{font-size:.9rem;color:rgba(248,253,245,.72);line-height:1.8;margin:0}

/* VALORES */
#valores{background:var(--negro)}
#valores .section-title{color:var(--blanco)}
#valores .section-body{color:rgba(248,253,245,.6)}
.valor-card{border:1px solid rgba(138,180,72,.18);border-radius:18px;padding:2rem 1.5rem;height:100%;background:rgba(255,255,255,.028);transition:border-color .3s,background .3s,transform .3s}
.valor-card:hover{border-color:var(--verde-medio);background:rgba(138,180,72,.07);transform:translateY(-6px)}
.valor-icon{width:52px;height:52px;background:rgba(138,180,72,.14);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:var(--verde-claro);margin-bottom:1.2rem}
.valor-card h5{font-size:1.08rem;color:var(--blanco);margin-bottom:.55rem}
.valor-card p{font-size:.88rem;color:rgba(248,253,245,.52);line-height:1.8;margin:0}

/* VENTAJAS */
#ventajas{background:var(--gris-claro)}
.ventaja-card{background:var(--blanco);border-radius:22px;padding:2.2rem;height:100%;box-shadow:0 4px 28px rgba(45,107,34,.07);transition:box-shadow .3s,transform .3s;position:relative;overflow:hidden}
.ventaja-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--verde-oscuro),var(--verde-claro));transform:scaleX(0);transition:transform .4s;transform-origin:left}
.ventaja-card:hover{box-shadow:0 14px 40px rgba(45,107,34,.14);transform:translateY(-7px)}
.ventaja-card:hover::after{transform:scaleX(1)}
.ventaja-num{font-family:'Playfair Display',serif;font-size:4rem;font-weight:900;color:rgba(45,107,34,.07);position:absolute;top:.8rem;right:1.1rem;line-height:1}
.ventaja-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--verde-oscuro),var(--verde-medio));border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--blanco);margin-bottom:1.2rem}
.ventaja-card h5{font-size:1.12rem;color:var(--negro);margin-bottom:.35rem}
.ventaja-benefit{font-size:.78rem;font-weight:700;color:var(--verde-oscuro);text-transform:uppercase;letter-spacing:1px;margin-bottom:.7rem}
.ventaja-card p{font-size:.9rem;color:#5a6e52;line-height:1.75;margin:0}

/* USOS */
#usos{background:var(--blanco)}
.uso-pill{background:var(--gris-claro);border:1px solid var(--gris-medio);border-radius:50px;padding:.58rem 1.25rem;font-size:.87rem;font-weight:500;color:var(--verde-oscuro);display:flex;align-items:center;gap:.5rem;transition:all .25s;cursor:default}
.uso-pill:hover{background:var(--verde-medio);border-color:var(--verde-medio);color:var(--negro);transform:scale(1.05)}
.usos-img-placeholder{width:100%;aspect-ratio:4/3;border-radius:24px;background:var(--gris-claro);border:2px dashed var(--gris-medio);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gris-medio);gap:.5rem;font-size:.9rem}
.usos-img-placeholder i{font-size:3rem}
.floating-tag{position:absolute;font-size:.78rem;font-weight:700;padding:.4rem .9rem;border-radius:50px;letter-spacing:1px}
.floating-tag.t1{top:1.2rem;left:1.2rem;background:var(--verde-oscuro);color:var(--blanco)}
.floating-tag.t2{bottom:1.5rem;right:1.2rem;background:var(--verde-medio);color:var(--negro)}

/* COMO USAR */
#como-usar{background:linear-gradient(140deg,var(--verde-oscuro),#1a4013);padding:7rem 0}
#como-usar .section-title{color:var(--blanco)}
#como-usar .section-eyebrow{color:var(--verde-claro)}
.metodo-card{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.11);border-radius:22px;padding:2.6rem 2rem;height:100%;text-align:center;transition:background .3s,transform .3s}
.metodo-card:hover{background:rgba(255,255,255,.1);transform:translateY(-7px)}
.metodo-num{font-family:'Playfair Display',serif;font-size:3.8rem;font-weight:900;color:var(--verde-claro);line-height:1;margin-bottom:1rem}
.metodo-card h4{color:var(--blanco);font-size:1.3rem;margin-bottom:1rem}
.metodo-card p{color:rgba(248,253,245,.68);font-size:.95rem;line-height:1.8;margin:0}

/* CTA */
#cta{background:linear-gradient(160deg,rgba(15,26,11,.88),rgba(45,107,34,.76)),url('https://images.unsplash.com/photo-1464226184884-fa280b87c399?w=1600&q=80') center/cover no-repeat;padding:7rem 0;text-align:center}
#cta h2{color:var(--blanco);font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1rem}
#cta .cta-lead{color:rgba(248,253,245,.72);font-size:1.1rem;max-width:540px;margin:0 auto 2.6rem;line-height:1.82}
.btn-cta-main{display:inline-block;background:var(--verde-medio);color:var(--negro);font-weight:700;font-size:1.1rem;padding:1rem 2.8rem;border-radius:50px;border:none;text-decoration:none;transition:all .3s}
.btn-cta-main:hover{background:var(--verde-claro);color:var(--negro);transform:translateY(-4px);box-shadow:0 16px 40px rgba(138,180,72,.45)}

/* FOOTER */
footer{background:var(--negro);padding:4rem 0 2rem}
.footer-brand{font-family:'Playfair Display',serif;font-size:2rem;font-weight:900;color:var(--verde-claro)}
.footer-brand span{color:var(--blanco)}
.footer-tagline{color:rgba(248,253,245,.45);font-size:.88rem}
.footer-links h6{color:var(--verde-medio);font-weight:700;font-size:.76rem;letter-spacing:2px;text-transform:uppercase;margin-bottom:1rem}
.footer-links a{display:block;color:rgba(248,253,245,.52);text-decoration:none;font-size:.9rem;margin-bottom:.5rem;transition:color .3s}
.footer-links a:hover{color:var(--verde-claro)}
.footer-divider{border-color:rgba(255,255,255,.07);margin:2rem 0 1.5rem}
.footer-bottom{color:rgba(248,253,245,.28);font-size:.8rem}
.social-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.14);display:inline-flex;align-items:center;justify-content:center;color:rgba(248,253,245,.5);text-decoration:none;transition:all .3s;font-size:1rem}
.social-btn:hover{border-color:var(--verde-medio);color:var(--verde-medio);background:rgba(138,180,72,.1)}

/* RESPONSIVE */
@media(max-width:767px){
    #hero{padding-top:5rem}
    .hero-stats{gap:1.6rem}
    .stat-item strong{font-size:1.9rem}
    .hero-img-wrap{margin-top:2.5rem}
    section{padding:5rem 0}
}

/* ── SABER MÁS BUTTON ─────────────────── */
.btn-saber{
    display:inline-flex;align-items:center;gap:.4rem;

    background:none;border:none;padding:0;
    font-family:'DM Sans',sans-serif;
    font-size:.8rem;font-weight:600;
    letter-spacing:.8px;text-transform:uppercase;
    color:var(--verde-medio);
    cursor:pointer;transition:gap .25s,color .25s;
}
.btn-saber i{font-size:.85rem;transition:transform .25s}
.btn-saber:hover{color:var(--verde-claro);gap:.65rem}
.btn-saber:hover i{transform:translateX(3px)}
/* versión oscura (sobre fondo negro) */
.btn-saber.light{color:var(--verde-claro)}
.btn-saber.light:hover{color:var(--blanco)}

/* ── MODAL MINIMALISTA ────────────────── */
.czm-overlay{
    position:fixed;inset:0;z-index:9999;
    background:rgba(10,18,8,.55);
    backdrop-filter:blur(6px);
    display:flex;align-items:center;justify-content:center;
    padding:1.5rem;
    opacity:0;pointer-events:none;
    transition:opacity .3s ease;
}
.czm-overlay.open{opacity:1;pointer-events:all}
.czm-modal{
    background:var(--blanco);
    border-radius:20px;
    max-width:540px;width:100%;
    padding:2.6rem 2.4rem;
    position:relative;
    transform:translateY(22px) scale(.97);
    transition:transform .32s cubic-bezier(.34,1.56,.64,1),opacity .28s ease;
    opacity:0;
    max-height:90svh;
    overflow-y:auto;
}
.czm-overlay.open .czm-modal{transform:none;opacity:1}
.czm-tag{
    display:inline-block;
    font-size:.7rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;
    color:var(--verde-oscuro);
    background:var(--gris-claro);
    border-radius:50px;padding:.28rem .85rem;
    margin-bottom:1.1rem;
}
.czm-modal h3{
    font-family:'Playfair Display',serif;
    font-size:1.55rem;line-height:1.25;
    color:var(--negro);margin-bottom:1.1rem;
}
.czm-modal .czm-body{
    font-size:.97rem;color:#4d6245;line-height:1.92;
}
.czm-modal .czm-body p{margin-bottom:.85rem}
.czm-modal .czm-body p:last-child{margin-bottom:0}
.czm-modal .czm-body ul{padding-left:1.2rem;margin-bottom:.85rem}
.czm-modal .czm-body ul li{margin-bottom:.45rem}
.czm-close{
    position:absolute;top:1.2rem;right:1.3rem;
    background:var(--gris-claro);border:none;border-radius:50%;
    width:34px;height:34px;
    display:flex;align-items:center;justify-content:center;
    color:#4d6245;font-size:1rem;cursor:pointer;
    transition:background .2s,color .2s;
}
.czm-close:hover{background:var(--negro);color:var(--blanco)}
.czm-divider{height:1px;background:var(--gris-claro);margin:1.3rem 0}
.czm-footer-note{
    font-size:.8rem;color:#8aaa7c;font-style:italic;
}