:root{--green:#54762B;--green-dark:#2c3518;--green-mid:#3f5620;--btn:#697d39;--cream:#f7f5ee;--white:#ffffff;--text:#202A17;--text-soft:#5c6650;--gold:#c9a24b;--shadow:0 20px 50px -20px rgba(32,42,23,.35);--radius:20px;}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;color:var(--text);background:var(--cream);overflow-x:hidden;}
img{display:block;max-width:100%;}
h1,h2,h3,h4{font-family:'Montserrat',sans-serif;font-weight:700;line-height:1.12;}
a{text-decoration:none;color:inherit;}
button{font-family:inherit;cursor:pointer;border:none;background:none;}
.eyebrow{font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;color:var(--green);display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--gold);display:inline-block;}
.container{max-width:1240px;margin:0 auto;padding:0 32px;}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:100px;font-weight:700;font-size:.92rem;letter-spacing:.02em;text-transform:uppercase;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,background .3s ease;position:relative;overflow:hidden;}
.btn-primary{background:var(--btn);color:#fff;box-shadow:0 10px 26px -8px rgba(105,125,57,.65);}
.btn-primary:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 16px 34px -10px rgba(105,125,57,.75);}
.btn-primary::after{content:"\2192";margin-left:2px;transition:transform .3s ease;}
.btn-primary:hover::after{transform:translateX(4px);}
.btn-ghost{border:2px solid rgba(255,255,255,.75);color:#fff;background:rgba(255,255,255,.06);backdrop-filter:blur(6px);}
.btn-ghost:hover{background:rgba(255,255,255,.18);transform:translateY(-3px);}
.btn-dark{background:var(--green-dark);color:#fff;}
.btn-dark:hover{background:var(--green);transform:translateY(-3px);}
.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal.in{opacity:1;transform:translateY(0);}
.reveal-l{opacity:0;transform:translateX(-46px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal-l.in{opacity:1;transform:translateX(0);}
.reveal-r{opacity:0;transform:translateX(46px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal-r.in{opacity:1;transform:translateX(0);}
.stagger.in > *{transition-delay:calc(var(--i) * 90ms);}
@media (prefers-reduced-motion: reduce){.reveal,.reveal-l,.reveal-r{opacity:1;transform:none;transition:none;}html{scroll-behavior:auto;}}
.beta-bar{position:fixed;top:0;left:0;right:0;z-index:999;background:var(--green-dark);color:#fff;display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 16px;font-size:.78rem;flex-wrap:wrap;}
.beta-bar .tag{background:var(--gold);color:var(--green-dark);font-weight:800;padding:3px 10px;border-radius:100px;font-size:.68rem;letter-spacing:.08em;}
.beta-bar a{color:#fff;text-decoration:underline;text-underline-offset:3px;opacity:.9;}
.beta-bar a:hover{opacity:1;}
.beta-bar .sep{opacity:.35;}
.stage{container-type:inline-size;container-name:page;width:100%;}
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:16px 32px;background:rgba(255,255,255,.72);backdrop-filter:blur(14px);border-bottom:1px solid rgba(32,42,23,.06);transition:padding .3s ease,box-shadow .3s ease;}
.nav.scrolled{padding:10px 32px;box-shadow:0 8px 30px -14px rgba(0,0,0,.18);}
.nav-logo{display:flex;align-items:center;gap:10px;font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.05rem;color:var(--green-dark);}
.nav-logo img{height:42px;width:auto;}
.nav-links{display:flex;align-items:center;gap:30px;font-weight:600;font-size:.92rem;}
.nav-links a{position:relative;padding:4px 0;color:var(--text);}
.nav-links a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--green);transition:width .3s ease;}
.nav-links a:hover::after,.nav-links a.current::after{width:100%;}
.nav-cta{display:flex;align-items:center;gap:14px;}
.nav .btn{padding:11px 22px;font-size:.8rem;}
.burger{display:none;flex-direction:column;gap:5px;width:26px;cursor:pointer;}
.burger span{height:2px;background:var(--green-dark);border-radius:2px;transition:all .3s ease;}
.mobile-menu{position:fixed;inset:0;background:var(--green-dark);z-index:800;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transform:translateY(-100%);transition:transform .45s cubic-bezier(.2,.8,.2,1);}
.mobile-menu.open{transform:translateY(0);}
.mobile-menu a{color:#fff;font-family:'Montserrat',sans-serif;font-weight:700;font-size:1.4rem;}
.mobile-menu .close{position:absolute;top:22px;right:24px;color:#fff;font-size:1.6rem;cursor:pointer;}
.hero{position:relative;height:90vh;min-height:560px;display:flex;align-items:center;overflow:hidden;color:#fff;}
.hero-media{position:absolute;inset:0;z-index:0;background:var(--green-dark);}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,26,12,.55) 0%,rgba(20,26,12,.35) 45%,rgba(20,26,12,.82) 100%);z-index:1;}
.hero-content{position:relative;z-index:2;max-width:660px;padding:0 32px;}
.hero .eyebrow{color:#e7dfc6;}
.hero h1{font-size:3.4rem;margin-bottom:20px;letter-spacing:-.01em;}
.hero p{font-size:1.12rem;line-height:1.6;color:rgba(255,255,255,.9);margin-bottom:34px;max-width:520px;}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap;}
.hero-badges{position:absolute;z-index:2;right:6%;bottom:14%;display:flex;flex-direction:column;gap:14px;}
.float-icon{width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:12px;border:1px solid rgba(255,255,255,.25);animation:float 5s ease-in-out infinite;}
.float-icon svg{width:60%;height:60%;margin:auto;}
.float-icon:nth-child(2){animation-delay:1.2s;}
.float-icon:nth-child(3){animation-delay:2.4s;}
@keyframes float{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
.scroll-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;color:rgba(255,255,255,.8);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;}
.scroll-cue .line{width:1px;height:34px;background:rgba(255,255,255,.5);position:relative;overflow:hidden;}
.scroll-cue .line::after{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:#fff;animation:scrollline 2s ease-in-out infinite;}
@keyframes scrollline{0%{top:-100%;}50%{top:0;}100%{top:100%;}}
.trust{background:var(--green-dark);color:#fff;padding:26px 0;}
.trust-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px;text-align:center;}
.trust-item{flex:1;min-width:140px;}
.trust-item .num{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.9rem;color:var(--gold);}
.trust-item .lbl{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;opacity:.8;margin-top:4px;}
.somos{padding:120px 0;overflow:hidden;}
.somos-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
.somos-media{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/5;}
.somos-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.somos-media:hover img{transform:scale(1.06);}
.somos-media::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(20,26,12,.55));z-index:1;}
.somos-badge{position:absolute;left:-26px;bottom:34px;background:#fff;border-radius:16px;padding:18px 22px;box-shadow:var(--shadow);z-index:2;display:flex;align-items:center;gap:12px;}
.somos-badge .n{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.6rem;color:var(--green);}
.somos-badge .t{font-size:.72rem;color:var(--text-soft);line-height:1.3;max-width:110px;}
.somos-text h2{font-size:2.3rem;margin-bottom:20px;color:var(--green-dark);}
.somos-text p{color:var(--text-soft);line-height:1.75;margin-bottom:30px;font-size:1rem;}
.servicios{padding:100px 0 120px;background:linear-gradient(180deg,#fff,var(--cream));}
.servicios-head{max-width:640px;margin:0 auto 60px;text-align:center;}
.servicios-head h2{font-size:2.3rem;color:var(--green-dark);margin-bottom:16px;}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.s-card{position:relative;border-radius:var(--radius);overflow:hidden;height:400px;box-shadow:0 16px 34px -18px rgba(32,42,23,.35);transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s ease;display:block;}
.s-card:hover{transform:translateY(-10px);box-shadow:0 28px 50px -18px rgba(32,42,23,.45);}
.s-card .bg{position:absolute;inset:0;z-index:0;}
.s-card .bg img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.s-card:hover .bg img{transform:scale(1.12);}
.s-card .bg.placeholder{background:linear-gradient(135deg,var(--gold),#8a6d2f);}
.s-card .overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,26,12,.05) 0%,rgba(20,26,12,.35) 55%,rgba(20,26,12,.92) 100%);}
.s-card .content{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:26px 24px;color:#fff;}
.s-card .tag{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:6px;display:block;}
.s-card h3{font-size:1.28rem;margin-bottom:10px;}
.s-card .desc{font-size:.86rem;line-height:1.55;color:rgba(255,255,255,.85);max-height:0;opacity:0;overflow:hidden;transition:max-height .5s ease,opacity .4s ease,margin .4s ease;}
.s-card:hover .desc{max-height:140px;opacity:1;margin-bottom:12px;}
.s-card .link{display:inline-flex;align-items:center;gap:8px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;}
.s-card .link .arrow{display:inline-block;transition:transform .3s ease;}
.s-card:hover .link .arrow{transform:translateX(6px);}
.s-card .accent{position:absolute;top:0;left:0;width:4px;height:100%;background:var(--gold);transform:scaleY(0);transform-origin:top;transition:transform .5s ease;z-index:2;}
.s-card:hover .accent{transform:scaleY(1);}
.features{padding:100px 0;background:var(--white);}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;}
.f-item{padding:42px 30px;border-radius:var(--radius);border:1px solid rgba(32,42,23,.08);position:relative;transition:transform .4s ease,box-shadow .4s ease,border-color .4s ease;background:var(--cream);}
.f-item:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent;}
.f-icon{width:58px;height:58px;border-radius:16px;background:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:22px;transition:transform .4s ease,background .4s ease;}
.f-item:hover .f-icon{transform:rotate(-8deg) scale(1.08);background:var(--gold);}
.f-icon svg{width:28px;height:28px;}
.f-item h3{font-size:1.15rem;margin-bottom:10px;color:var(--green-dark);}
.f-item p{color:var(--text-soft);font-size:.92rem;line-height:1.6;}
.stats{position:relative;padding:110px 0;background:linear-gradient(120deg,var(--green-dark),var(--green-mid));color:#fff;overflow:hidden;}
.stats::before{content:"";position:absolute;inset:0;opacity:.08;background-image:radial-gradient(circle,#fff 1.5px,transparent 1.5px);background-size:26px 26px;}
.stats-inner{position:relative;z-index:1;text-align:center;max-width:720px;margin:0 auto;}
.stats p.lead{color:rgba(255,255,255,.82);line-height:1.7;margin-bottom:56px;font-size:1.05rem;}
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.stat-box .num{font-family:'Montserrat',sans-serif;font-weight:800;font-size:3.2rem;color:var(--gold);}
.stat-box .lbl{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;opacity:.85;}
.cta-final{position:relative;padding:130px 0;text-align:center;color:#fff;overflow:hidden;}
.cta-final .cta-bg{position:absolute;inset:0;z-index:0;}
.cta-final .cta-bg img{width:100%;height:100%;object-fit:cover;}
.cta-final .cta-ov{position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(84,118,43,.92),rgba(44,53,24,.94));}
.cta-final-inner{position:relative;z-index:2;max-width:620px;margin:0 auto;}
.cta-final h2{font-size:2.6rem;margin-bottom:18px;}
.cta-final p{color:rgba(255,255,255,.88);line-height:1.7;margin-bottom:38px;font-size:1.05rem;}
.cta-final .actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}
.footer{background:#161b0e;color:rgba(255,255,255,.75);padding:70px 0 26px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:50px;}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:16px;}
.footer-logo img{height:40px;filter:brightness(0) invert(1);}
.footer-logo span{font-family:'Montserrat',sans-serif;font-weight:800;color:#fff;}
.footer h4{color:#fff;font-family:'Montserrat',sans-serif;font-size:.86rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:18px;}
.footer ul{list-style:none;display:flex;flex-direction:column;gap:11px;font-size:.88rem;}
.footer ul a{transition:color .25s ease,padding-left .25s ease;}
.footer ul a:hover{color:#fff;padding-left:5px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.78rem;}
.c-hero{padding:130px 0 90px;background:linear-gradient(180deg,var(--green-dark),var(--green-mid));color:#fff;text-align:center;position:relative;overflow:hidden;}
.c-hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 20%,rgba(255,255,255,.08) 0,transparent 40%);}
.c-hero-inner{position:relative;z-index:1;max-width:600px;margin:0 auto;}
.c-hero h1{font-size:2.6rem;margin-bottom:16px;}
.c-hero p{color:rgba(255,255,255,.85);line-height:1.7;}
.c-hero .pill{display:inline-block;background:rgba(255,255,255,.12);padding:6px 16px;border-radius:100px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;border:1px solid rgba(255,255,255,.2);}
.c-body{padding:90px 0 120px;}
.c-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;}
.c-info{display:flex;flex-direction:column;gap:20px;}
.c-info-card{display:flex;gap:16px;padding:24px;border-radius:16px;background:#fff;border:1px solid rgba(32,42,23,.08);transition:transform .35s ease,box-shadow .35s ease;}
.c-info-card:hover{transform:translateX(6px);box-shadow:var(--shadow);}
.c-info-icon{width:46px;height:46px;border-radius:12px;background:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.c-info-icon svg{width:22px;height:22px;}
.c-info-card h4{font-size:.95rem;margin-bottom:4px;color:var(--green-dark);}
.c-info-card p{font-size:.86rem;color:var(--text-soft);}
.c-trust{margin-top:10px;padding:26px;border-radius:16px;background:var(--green-dark);color:#fff;}
.c-trust .n{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.8rem;color:var(--gold);}
.c-trust .t{font-size:.8rem;opacity:.85;margin-top:4px;line-height:1.5;}
.c-form{background:#fff;border-radius:24px;padding:44px;box-shadow:var(--shadow);border:1px solid rgba(32,42,23,.06);}
.c-form h3{font-size:1.3rem;color:var(--green-dark);margin-bottom:6px;}
.c-form .sub{color:var(--text-soft);font-size:.88rem;margin-bottom:30px;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;}
.field{position:relative;}
.field input,.field textarea{width:100%;padding:16px 16px 16px 46px;border:1.5px solid rgba(32,42,23,.14);border-radius:12px;font-family:'DM Sans',sans-serif;font-size:.94rem;background:var(--cream);transition:border-color .3s ease,background .3s ease,box-shadow .3s ease;}
.field textarea{padding-left:16px;min-height:120px;resize:vertical;}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 4px rgba(84,118,43,.12);}
.field .ic{position:absolute;left:15px;top:17px;width:18px;height:18px;opacity:.55;pointer-events:none;}
.field label{position:absolute;left:46px;top:16px;font-size:.94rem;color:var(--text-soft);pointer-events:none;transition:all .25s ease;}
.field textarea ~ label{left:16px;}
.field input:focus + label,.field input:not(:placeholder-shown) + label,.field textarea:focus + label,.field textarea:not(:placeholder-shown) + label{top:-9px;left:14px;font-size:.7rem;background:#fff;padding:0 6px;color:var(--green);font-weight:600;}
.field.full{grid-column:1/-1;}
.gdpr{display:flex;align-items:flex-start;gap:10px;margin:20px 0 26px;font-size:.82rem;color:var(--text-soft);line-height:1.5;cursor:pointer;}
.gdpr input{width:18px;height:18px;margin-top:2px;accent-color:var(--green);flex-shrink:0;}
.c-form .btn-primary{width:100%;justify-content:center;padding:17px;font-size:.95rem;}
.c-note{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:.8rem;color:var(--text-soft);}
.c-note svg{width:18px;height:18px;flex-shrink:0;}
.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(160%);background:var(--green-dark);color:#fff;padding:16px 26px;border-radius:100px;display:flex;align-items:center;gap:12px;box-shadow:0 20px 40px -14px rgba(0,0,0,.4);transition:transform .5s cubic-bezier(.2,.8,.2,1);z-index:900;font-size:.88rem;font-weight:600;}
.toast.show{transform:translateX(-50%) translateY(0);}
.toast svg{width:20px;height:20px;}
@container page (max-width: 980px){.card-grid{grid-template-columns:repeat(2,1fr);}.footer-grid{grid-template-columns:1fr 1fr;}.hero h1{font-size:2.6rem;}.c-grid{grid-template-columns:1fr;}}
@container page (max-width: 700px){
.nav-links,.nav .nav-cta .btn{display:none;}
.burger{display:flex;}
.container{padding:0 20px;}
.hero{height:auto;min-height:640px;padding:120px 0 70px;}
.hero h1{font-size:2.15rem;}
.hero p{font-size:1rem;}
.hero-badges{display:none;}
.hero-actions{flex-direction:column;align-items:stretch;}
.hero-actions .btn{justify-content:center;}
.trust-item{min-width:42%;}
.somos{padding:70px 0;}
.somos-grid{grid-template-columns:1fr;gap:40px;}
.somos-badge{left:14px;bottom:-20px;padding:14px 16px;}
.somos-text h2{font-size:1.7rem;}
.servicios{padding:70px 0;}
.servicios-head h2{font-size:1.7rem;}
.card-grid{grid-template-columns:1fr;gap:18px;}
.s-card{height:280px;}
.s-card .desc{max-height:140px;opacity:1;margin-bottom:12px;}
.features{padding:70px 0;}
.features-grid{grid-template-columns:1fr;gap:20px;}
.stats{padding:70px 0;}
.stats-grid{grid-template-columns:1fr;gap:34px;}
.stat-box .num{font-size:2.6rem;}
.cta-final{padding:80px 0;}
.cta-final h2{font-size:1.9rem;}
.cta-final .actions{flex-direction:column;}
.footer-grid{grid-template-columns:1fr 1fr;gap:30px;}
.footer-bottom{flex-direction:column;text-align:center;}
.c-hero{padding:110px 0 60px;}
.c-hero h1{font-size:1.9rem;}
.c-body{padding:60px 0 80px;}
.c-form{padding:26px;}
.field-row{grid-template-columns:1fr;gap:14px;}
}
/* ===== PAGINAS INTERIORES ===== */
.s-hero{position:relative;min-height:76vh;display:flex;align-items:center;color:#fff;overflow:hidden;padding:130px 0 80px;}
.s-hero .bgimg{position:absolute;inset:0;z-index:0;}
.s-hero .bgimg img{width:100%;height:100%;object-fit:cover;}
.s-hero .ov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,26,12,.62),rgba(20,26,12,.5) 40%,rgba(20,26,12,.92));}
.s-hero-inner{position:relative;z-index:2;max-width:760px;}
.s-hero h1{font-size:3.2rem;letter-spacing:-.01em;margin-bottom:8px;}
.s-hero .tagline{font-family:'Montserrat',sans-serif;font-weight:600;color:var(--gold);letter-spacing:.08em;text-transform:uppercase;font-size:.95rem;margin-bottom:22px;}
.s-hero p.intro{font-size:1.06rem;line-height:1.7;color:rgba(255,255,255,.9);margin-bottom:30px;max-width:620px;}
.chips{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:34px;}
.chip{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);padding:9px 20px 9px 12px;border-radius:100px;transition:background .3s ease,transform .3s ease;}
.chip:hover{background:rgba(255,255,255,.2);transform:translateY(-3px);}
.chip .ci{width:28px;height:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.chip .ci svg{width:100%;height:100%;}
.chip .ct{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;}
.chip .cs{font-size:.7rem;opacity:.75;display:block;text-transform:none;letter-spacing:0;font-weight:400;}
.crops{padding:100px 0;background:var(--cream);}
.crops-head{max-width:680px;margin:0 auto 56px;text-align:center;}
.crops-head h2{font-size:2.1rem;color:var(--green-dark);margin-bottom:16px;}
.crops-head p{color:var(--text-soft);line-height:1.7;}
.crops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.crop-card{background:#fff;border-radius:var(--radius);padding:34px 30px;border:1px solid rgba(32,42,23,.08);position:relative;overflow:hidden;transition:transform .4s ease,box-shadow .4s ease;}
.crop-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);}
.crop-card .n{font-family:'Montserrat',sans-serif;font-weight:800;font-size:2.8rem;color:rgba(84,118,43,.14);line-height:1;margin-bottom:4px;transition:color .4s ease;}
.crop-card:hover .n{color:rgba(201,162,75,.35);}
.crop-card .ic{width:44px;height:44px;margin-bottom:14px;}
.crop-card .ic svg{width:100%;height:100%;}
.crop-card h3{font-size:1rem;letter-spacing:.08em;color:var(--green-dark);margin-bottom:10px;}
.crop-card p{color:var(--text-soft);font-size:.9rem;line-height:1.65;}
.process{padding:100px 0;background:#fff;}
.process-head{max-width:680px;margin:0 auto 60px;text-align:center;}
.process-head h2{font-size:2.1rem;color:var(--green-dark);margin-bottom:16px;}
.process-head p{color:var(--text-soft);line-height:1.7;}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;}
.steps::before{content:"";position:absolute;top:27px;left:12%;right:12%;height:2px;background:linear-gradient(90deg,var(--green),var(--gold));opacity:.28;}
.step{position:relative;text-align:center;}
.step .num{width:54px;height:54px;border-radius:50%;background:var(--green);color:#fff;font-family:'Montserrat',sans-serif;font-weight:800;font-size:1rem;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;position:relative;z-index:1;border:4px solid #fff;transition:background .4s ease,transform .4s ease;}
.step:hover .num{background:var(--gold);transform:scale(1.1);}
.step h4{font-size:.9rem;letter-spacing:.06em;color:var(--green-dark);margin-bottom:10px;text-transform:uppercase;}
.step p{color:var(--text-soft);font-size:.86rem;line-height:1.6;}
.more{padding:0 0 110px;background:#fff;}
.more-card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:280px;display:flex;align-items:flex-end;box-shadow:var(--shadow);}
.more-card .bgimg{position:absolute;inset:0;z-index:0;}
.more-card .bgimg img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease;}
.more-card:hover .bgimg img{transform:scale(1.07);}
.more-card .ov{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,26,12,.92) 25%,rgba(20,26,12,.35));}
.more-card .inner{position:relative;z-index:2;padding:40px;color:#fff;max-width:620px;}
.more-label{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:10px;display:block;}
.more-card h3{font-size:1.5rem;margin-bottom:12px;}
.more-card p{color:rgba(255,255,255,.85);line-height:1.6;margin-bottom:22px;font-size:.94rem;}
.p-hero{position:relative;padding:150px 0 90px;color:#fff;overflow:hidden;text-align:center;}
.p-hero .bgimg{position:absolute;inset:0;z-index:0;}
.p-hero .bgimg img{width:100%;height:100%;object-fit:cover;}
.p-hero .ov{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,26,12,.72),rgba(20,26,12,.88));}
.p-hero-inner{position:relative;z-index:2;max-width:680px;margin:0 auto;}
.p-hero h1{font-size:2.9rem;margin-bottom:16px;}
.p-hero p{color:rgba(255,255,255,.88);line-height:1.7;font-size:1.05rem;}
.story{padding:110px 0;}
.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
.story-text h2{font-size:2.2rem;color:var(--green-dark);margin-bottom:20px;}
.story-text p{color:var(--text-soft);line-height:1.8;margin-bottom:20px;}
.why{padding:100px 0;background:var(--cream);}
.why-head{max-width:660px;margin:0 auto;text-align:center;}
.why-head h2{font-size:2.1rem;color:var(--green-dark);margin-bottom:16px;}
.why-head p{color:var(--text-soft);line-height:1.7;}
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:50px;}
.why-item{display:flex;gap:18px;padding:28px;background:#fff;border-radius:16px;border:1px solid rgba(32,42,23,.08);transition:transform .35s ease,box-shadow .35s ease;}
.why-item:hover{transform:translateY(-6px);box-shadow:var(--shadow);}
.why-item .wi{width:44px;height:44px;border-radius:12px;background:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .35s ease;}
.why-item:hover .wi{background:var(--gold);}
.why-item .wi svg{width:22px;height:22px;}
.why-item h4{font-size:1rem;color:var(--green-dark);margin-bottom:6px;}
.why-item p{color:var(--text-soft);font-size:.88rem;line-height:1.6;}
.serv-list{padding:100px 0 120px;background:linear-gradient(180deg,#fff,var(--cream));}
@container page (max-width: 980px){
  .crops-grid{grid-template-columns:1fr 1fr;}
  .steps{grid-template-columns:1fr 1fr;gap:40px 24px;}
  .steps::before{display:none;}
  .story-grid{grid-template-columns:1fr;gap:40px;}
  .s-hero h1{font-size:2.6rem;}
}
@container page (max-width: 700px){
  .s-hero{min-height:auto;padding:110px 0 60px;}
  .s-hero h1{font-size:2.05rem;}
  .s-hero .tagline{font-size:.82rem;}
  .s-hero p.intro{font-size:.98rem;}
  .chips{gap:8px;}
  .chip{padding:8px 14px 8px 10px;}
  .chip .ci{width:24px;height:24px;}
  .s-hero .btn{width:100%;justify-content:center;}
  .crops{padding:64px 0;}
  .crops-head h2,.process-head h2,.why-head h2{font-size:1.6rem;}
  .crops-grid{grid-template-columns:1fr;gap:16px;}
  .crop-card{padding:26px 24px;}
  .process{padding:64px 0;}
  .steps{grid-template-columns:1fr;gap:34px;}
  .more{padding:0 0 64px;}
  .more-card{min-height:auto;}
  .more-card .inner{padding:28px 24px;}
  .more-card h3{font-size:1.2rem;}
  .more-card .ov{background:linear-gradient(180deg,rgba(20,26,12,.55),rgba(20,26,12,.93));}
  .p-hero{padding:110px 0 60px;}
  .p-hero h1{font-size:1.95rem;}
  .story{padding:64px 0;}
  .story-text h2{font-size:1.6rem;}
  .why{padding:64px 0;}
  .why-grid{grid-template-columns:1fr;gap:16px;}
  .why-item{padding:22px;}
  .serv-list{padding:64px 0;}
}
.chip .ci img,.crop-card .ic img{width:100%;height:100%;object-fit:contain;}
.float-icon img{width:60%;height:60%;margin:auto;}

section[id]{scroll-margin-top:110px;}

/* ===== RESENAS ===== */
.reviews{padding:100px 0;background:var(--cream);}
.reviews-head{max-width:640px;margin:0 auto 20px;text-align:center;}
.reviews-head h2{font-size:2.1rem;color:var(--green-dark);margin-bottom:20px;}
.rating-summary{display:inline-flex;align-items:center;gap:14px;background:#fff;border:1px solid rgba(32,42,23,.1);padding:14px 24px;border-radius:100px;box-shadow:0 10px 26px -18px rgba(32,42,23,.4);}
.rating-summary .score{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1.6rem;color:var(--green-dark);line-height:1;}
.rating-summary .meta{text-align:left;line-height:1.3;}
.rating-summary .count{font-size:.76rem;color:var(--text-soft);}
.stars{display:inline-flex;gap:2px;}
.stars svg{width:15px;height:15px;fill:var(--gold);}
.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;}
.review-card{background:#fff;border-radius:var(--radius);padding:30px 28px;border:1px solid rgba(32,42,23,.08);transition:transform .4s ease,box-shadow .4s ease;display:flex;flex-direction:column;gap:14px;}
.review-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);}
.rc-top{display:flex;align-items:center;gap:12px;}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Montserrat',sans-serif;font-weight:700;font-size:1.05rem;flex-shrink:0;}
.rc-name{font-family:'Montserrat',sans-serif;font-weight:700;font-size:.94rem;color:var(--green-dark);line-height:1.2;}
.rc-date{font-size:.74rem;color:var(--text-soft);margin-top:2px;}
.rc-src{margin-left:auto;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);font-weight:600;}
.rc-text{color:var(--text-soft);font-size:.92rem;line-height:1.7;flex:1;}
.reviews-foot{text-align:center;margin-top:40px;}
.rev-pending{max-width:760px;margin:26px auto 0;background:#fff8e6;border:1px solid #e8d49a;border-left:4px solid var(--gold);border-radius:12px;padding:16px 20px;font-size:.86rem;color:#6b5720;line-height:1.6;text-align:left;}
.rev-pending strong{color:#4a3c12;}
.review-card.is-placeholder .rc-text{font-style:italic;opacity:.75;}
@container page (max-width: 980px){.reviews-grid{grid-template-columns:1fr 1fr;}}
@container page (max-width: 700px){
.reviews{padding:64px 0;}
.reviews-head h2{font-size:1.6rem;}
.reviews-grid{grid-template-columns:1fr;gap:16px;margin-top:32px;}
.review-card{padding:24px 22px;}
.rating-summary{padding:12px 18px;gap:10px;}
}
.c-info-card p a{color:var(--green);font-weight:600;}
.c-info-card p a:hover{text-decoration:underline;}
.footer ul a[href^="tel"],.footer ul a[href^="mailto"]{color:inherit;}

.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px;}
.trust-card{background:#fff;border-radius:var(--radius);padding:36px 30px;border:1px solid rgba(32,42,23,.08);transition:transform .4s ease,box-shadow .4s ease;}
.trust-card:hover{transform:translateY(-8px);box-shadow:var(--shadow);}
.trust-card:hover .tc-ic{background:var(--gold);transform:rotate(-8deg) scale(1.08);}
.tc-ic{width:54px;height:54px;border-radius:15px;background:var(--green);display:flex;align-items:center;justify-content:center;margin-bottom:20px;transition:background .4s ease,transform .4s ease;}
.tc-ic svg{width:26px;height:26px;}
.trust-card h3{font-size:1.1rem;color:var(--green-dark);margin-bottom:10px;}
.trust-card p{color:var(--text-soft);font-size:.92rem;line-height:1.7;}
@container page (max-width: 980px){.trust-grid{grid-template-columns:1fr 1fr;}}
@container page (max-width: 700px){.trust-grid{grid-template-columns:1fr;gap:16px;margin-top:32px;}.trust-card{padding:26px 24px;}}

body.beta{padding-top:38px;}
body.beta .nav{top:38px;}

.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}
.form-ok,.form-err{border-radius:12px;padding:16px 20px;margin-bottom:22px;font-size:.9rem;line-height:1.6;}
.form-ok{background:#eef5e4;border:1px solid #b7cf96;border-left:4px solid var(--green);color:#33471a;}
.form-err{background:#fdecec;border:1px solid #e9b4b4;border-left:4px solid #c0392b;color:#7d2820;}
.form-ok strong,.form-err strong{display:block;margin-bottom:2px;}

/* ===================== MODO OSCURO ===================== */
:root{color-scheme:light;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    color-scheme:dark;
    --cream:#141810;
    --white:#1c2116;
    --text:#e8e6dd;
    --text-soft:#a8b09c;
    --green:#8fb35c;
    --green-dark:#0f1309;
    --green-mid:#2a3618;
    --btn:#7a9142;
    --gold:#d9b565;
    --shadow:0 20px 50px -20px rgba(0,0,0,.7);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --cream:#141810;
  --white:#1c2116;
  --text:#e8e6dd;
  --text-soft:#a8b09c;
  --green:#8fb35c;
  --green-dark:#0f1309;
  --green-mid:#2a3618;
  --btn:#7a9142;
  --gold:#d9b565;
  --shadow:0 20px 50px -20px rgba(0,0,0,.7);
}

/* piezas que no dependen solo de los tokens */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .nav{background:rgba(20,24,16,.78);border-bottom-color:rgba(255,255,255,.07);}
  :root:not([data-theme="light"]) .nav-logo{color:var(--text);}
  :root:not([data-theme="light"]) .nav-logo img,
  :root:not([data-theme="light"]) .footer-logo img{filter:brightness(0) invert(1);}
  :root:not([data-theme="light"]) .burger span{background:var(--text);}
  :root:not([data-theme="light"]) .servicios{background:linear-gradient(180deg,#1c2116,#141810);}
  :root:not([data-theme="light"]) .features,
  :root:not([data-theme="light"]) .process,
  :root:not([data-theme="light"]) .more{background:#1c2116;}
  :root:not([data-theme="light"]) .f-item,
  :root:not([data-theme="light"]) .crop-card,
  :root:not([data-theme="light"]) .trust-card,
  :root:not([data-theme="light"]) .review-card,
  :root:not([data-theme="light"]) .c-info-card,
  :root:not([data-theme="light"]) .why-item,
  :root:not([data-theme="light"]) .c-form,
  :root:not([data-theme="light"]) .rating-summary,
  :root:not([data-theme="light"]) .somos-badge{background:#232a1b;border-color:rgba(255,255,255,.08);}
  :root:not([data-theme="light"]) .f-item{background:#1a2015;}
  :root:not([data-theme="light"]) .field input,
  :root:not([data-theme="light"]) .field textarea{background:#171c12;border-color:rgba(255,255,255,.12);color:var(--text);}
  :root:not([data-theme="light"]) .field input:focus,
  :root:not([data-theme="light"]) .field textarea:focus{background:#1c2216;}
  :root:not([data-theme="light"]) .field input:focus + label,
  :root:not([data-theme="light"]) .field input:not(:placeholder-shown) + label,
  :root:not([data-theme="light"]) .field textarea:focus + label,
  :root:not([data-theme="light"]) .field textarea:not(:placeholder-shown) + label{background:#232a1b;}
  :root:not([data-theme="light"]) .crop-card .n{color:rgba(143,179,92,.2);}
  :root:not([data-theme="light"]) .step .num{border-color:#1c2116;}
  :root:not([data-theme="light"]) .footer{background:#0d1008;}
  :root:not([data-theme="light"]) .btn-dark{background:#2a3618;}
}
:root[data-theme="dark"] .nav{background:rgba(20,24,16,.78);border-bottom-color:rgba(255,255,255,.07);}
:root[data-theme="dark"] .nav-logo{color:var(--text);}
:root[data-theme="dark"] .nav-logo img,
:root[data-theme="dark"] .footer-logo img{filter:brightness(0) invert(1);}
:root[data-theme="dark"] .burger span{background:var(--text);}
:root[data-theme="dark"] .servicios{background:linear-gradient(180deg,#1c2116,#141810);}
:root[data-theme="dark"] .features,
:root[data-theme="dark"] .process,
:root[data-theme="dark"] .more{background:#1c2116;}
:root[data-theme="dark"] .f-item,
:root[data-theme="dark"] .crop-card,
:root[data-theme="dark"] .trust-card,
:root[data-theme="dark"] .review-card,
:root[data-theme="dark"] .c-info-card,
:root[data-theme="dark"] .why-item,
:root[data-theme="dark"] .c-form,
:root[data-theme="dark"] .rating-summary,
:root[data-theme="dark"] .somos-badge{background:#232a1b;border-color:rgba(255,255,255,.08);}
:root[data-theme="dark"] .f-item{background:#1a2015;}
:root[data-theme="dark"] .field input,
:root[data-theme="dark"] .field textarea{background:#171c12;border-color:rgba(255,255,255,.12);color:var(--text);}
:root[data-theme="dark"] .field input:focus,
:root[data-theme="dark"] .field textarea:focus{background:#1c2216;}
:root[data-theme="dark"] .field input:focus + label,
:root[data-theme="dark"] .field input:not(:placeholder-shown) + label,
:root[data-theme="dark"] .field textarea:focus + label,
:root[data-theme="dark"] .field textarea:not(:placeholder-shown) + label{background:#232a1b;}
:root[data-theme="dark"] .crop-card .n{color:rgba(143,179,92,.2);}
:root[data-theme="dark"] .step .num{border-color:#1c2116;}
:root[data-theme="dark"] .footer{background:#0d1008;}
:root[data-theme="dark"] .btn-dark{background:#2a3618;}

/* interruptor */
.theme-toggle{width:38px;height:38px;border-radius:50%;border:1px solid rgba(32,42,23,.16);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text);transition:background .3s ease,transform .3s ease,border-color .3s ease;flex-shrink:0;}
.theme-toggle:hover{background:rgba(84,118,43,.1);transform:rotate(-15deg);}
.theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
.theme-toggle .i-sun{display:none;}
:root[data-theme="dark"] .theme-toggle{border-color:rgba(255,255,255,.18);}
:root[data-theme="dark"] .theme-toggle .i-sun{display:block;}
:root[data-theme="dark"] .theme-toggle .i-moon{display:none;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .theme-toggle{border-color:rgba(255,255,255,.18);}
  :root:not([data-theme="light"]) .theme-toggle .i-sun{display:block;}
  :root:not([data-theme="light"]) .theme-toggle .i-moon{display:none;}
}
@container page (max-width: 700px){.nav-cta .theme-toggle{display:flex;}}

/* --- correccion de contraste en modo oscuro --- */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){--btn:#5d7132;}
  :root:not([data-theme="light"]) .somos-text h2{color:var(--text);}
  :root:not([data-theme="light"]) .servicios-head h2{color:var(--text);}
  :root:not([data-theme="light"]) .f-item h3{color:var(--text);}
  :root:not([data-theme="light"]) .crops-head h2{color:var(--text);}
  :root:not([data-theme="light"]) .process-head h2{color:var(--text);}
  :root:not([data-theme="light"]) .step h4{color:var(--text);}
  :root:not([data-theme="light"]) .why-head h2{color:var(--text);}
  :root:not([data-theme="light"]) .why-item h4{color:var(--text);}
  :root:not([data-theme="light"]) .story-text h2{color:var(--text);}
  :root:not([data-theme="light"]) .crop-card h3{color:var(--text);}
  :root:not([data-theme="light"]) .c-info-card h4{color:var(--text);}
  :root:not([data-theme="light"]) .c-form h3{color:var(--text);}
  :root:not([data-theme="light"]) .reviews-head h2{color:var(--text);}
  :root:not([data-theme="light"]) .rc-name{color:var(--text);}
  :root:not([data-theme="light"]) .trust-card h3{color:var(--text);}
  :root:not([data-theme="light"]) .rating-summary .score{color:var(--text);}
  :root:not([data-theme="light"]) .p-hero h2{color:var(--text);}
}
:root[data-theme="dark"]{--btn:#5d7132;}
:root[data-theme="dark"] .somos-text h2{color:var(--text);}
:root[data-theme="dark"] .servicios-head h2{color:var(--text);}
:root[data-theme="dark"] .f-item h3{color:var(--text);}
:root[data-theme="dark"] .crops-head h2{color:var(--text);}
:root[data-theme="dark"] .process-head h2{color:var(--text);}
:root[data-theme="dark"] .step h4{color:var(--text);}
:root[data-theme="dark"] .why-head h2{color:var(--text);}
:root[data-theme="dark"] .why-item h4{color:var(--text);}
:root[data-theme="dark"] .story-text h2{color:var(--text);}
:root[data-theme="dark"] .crop-card h3{color:var(--text);}
:root[data-theme="dark"] .c-info-card h4{color:var(--text);}
:root[data-theme="dark"] .c-form h3{color:var(--text);}
:root[data-theme="dark"] .reviews-head h2{color:var(--text);}
:root[data-theme="dark"] .rc-name{color:var(--text);}
:root[data-theme="dark"] .trust-card h3{color:var(--text);}
:root[data-theme="dark"] .rating-summary .score{color:var(--text);}
:root[data-theme="dark"] .p-hero h2{color:var(--text);}

.lang-switch{display:flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 10px;border-radius:100px;border:1px solid rgba(32,42,23,.16);font-family:'Montserrat',sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.06em;color:var(--text);transition:background .3s ease,border-color .3s ease,color .3s ease;flex-shrink:0;}
.lang-switch:hover{background:var(--green);border-color:var(--green);color:#fff;}
:root[data-theme="dark"] .lang-switch{border-color:rgba(255,255,255,.18);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .lang-switch{border-color:rgba(255,255,255,.18);}}
@container page (max-width: 700px){.nav-cta .lang-switch{display:flex;}}

/* logo sin texto */
.nav-logo{gap:0;}
.footer-logo{gap:0;}
@container page (max-width: 700px){.nav-logo img{height:36px;}}

/* ===== VIDEO DE NOSOTROS ===== */
.video-box{position:relative;background:#0f1309;}
.video-box video{width:100%;height:100%;object-fit:cover;display:block;}
.video-box .vb-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;transition:opacity .4s ease;}
.video-box.playing .vb-poster,.video-box.playing .vb-play,.video-box.playing .vb-hint{opacity:0;pointer-events:none;}
.video-box .vb-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s ease,opacity .4s ease;box-shadow:0 12px 34px -10px rgba(0,0,0,.55);border:none;}
.video-box .vb-play:hover{transform:translate(-50%,-50%) scale(1.09);background:#fff;}
.video-box .vb-play svg{width:26px;height:26px;fill:var(--green-dark);margin-left:4px;}
.video-box .vb-play::after{content:'';position:absolute;inset:-10px;border-radius:50%;border:2px solid rgba(255,255,255,.55);animation:vbpulse 2.4s ease-out infinite;}
@keyframes vbpulse{0%{transform:scale(.9);opacity:.9;}100%{transform:scale(1.3);opacity:0;}}
.video-box .vb-hint{position:absolute;left:0;right:0;bottom:22px;z-index:3;text-align:center;color:#fff;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600;text-shadow:0 2px 10px rgba(0,0,0,.7);transition:opacity .4s ease;}
@media (prefers-reduced-motion: reduce){.video-box .vb-play::after{animation:none;}}
@container page (max-width: 700px){.video-box .vb-play{width:62px;height:62px;}.video-box .vb-play svg{width:21px;height:21px;}}

/* ===== REDES SOCIALES ===== */
.social-row{display:flex;gap:10px;margin-top:20px;}
.social-row a{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);transition:background .3s ease,transform .3s ease,border-color .3s ease;}
.social-row a:hover{background:var(--green);border-color:var(--green);transform:translateY(-3px);}
.social-row svg{width:19px;height:19px;fill:#fff;}
/* redes en la pagina de contacto (fondo claro) */
.c-social{display:flex;gap:10px;margin-top:16px;}
.c-social a{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--green);transition:background .3s ease,transform .3s ease;}
.c-social a:hover{background:var(--gold);transform:translateY(-3px);}
.c-social svg{width:20px;height:20px;fill:#fff;}

/* --- contraste de los iconos de redes --- */
:root{--social-bg:#54762B;--social-hover:#3f5620;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--social-bg:#3f5620;--social-hover:#54762B;}}
:root[data-theme="dark"]{--social-bg:#3f5620;--social-hover:#54762B;}
.c-social a{background:var(--social-bg);}
.c-social a:hover{background:var(--social-hover);transform:translateY(-3px);}
.c-social a svg,.c-social a:hover svg{fill:#fff;}
.social-row a:hover{background:var(--social-bg);border-color:var(--social-bg);}
.social-row a svg,.social-row a:hover svg{fill:#fff;}

/* redes: colores fijos, contraste garantizado en ambos temas */
:root,:root[data-theme="dark"],:root[data-theme="light"]{--social-bg:#3f5620;--social-hover:#6b8a3a;}
@media (prefers-color-scheme: dark){:root:not([data-theme]){--social-bg:#3f5620;--social-hover:#6b8a3a;}}

/* --- espaciado de los datos de contacto --- */
.c-info-card .c-lines{display:flex;flex-direction:column;}
.c-info-card .c-tel{display:block;font-size:.95rem;font-weight:600;color:var(--green);line-height:1.6;margin-bottom:14px;letter-spacing:.01em;}
.c-info-card .c-tel:last-of-type{margin-bottom:0;}
.c-info-card .c-tel:hover{text-decoration:underline;}
.c-info-card .c-sub{display:block;margin-top:18px;font-size:.84rem;line-height:1.7;color:var(--text-soft);}
.c-info-card{align-items:flex-start;padding:28px 26px;}
.c-info-card h4{margin-bottom:10px;}
:root[data-theme="dark"] .c-info-card .c-tel{color:#a7c96f;}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .c-info-card .c-tel{color:#a7c96f;}}

/* area tactil comoda para llamar desde el movil */
@container page (max-width: 700px){
  .c-info-card .c-tel{padding:9px 0;margin-bottom:6px;font-size:1rem;}
  .c-info-card .c-tel:last-of-type{margin-bottom:0;}
  .c-info-card .c-sub{margin-top:12px;}
  .footer ul a[href^="tel"],.footer ul a[href^="mailto"]{display:inline-block;padding:5px 0;}
}

/* ===== chapa dentro de la caja (antes se cortaba contra el borde) ===== */
.somos-media{position:relative;}
.somos-badge{left:20px;right:auto;bottom:20px;padding:14px 18px;max-width:calc(100% - 40px);box-sizing:border-box;align-items:flex-start;}
.somos-badge .n{line-height:1;flex-shrink:0;}
.somos-badge .t{max-width:none;line-height:1.35;}
@container page (max-width: 700px){
  .somos-badge{left:14px;right:auto;bottom:14px;padding:12px 15px;max-width:calc(100% - 28px);gap:10px;}
  .somos-badge .n{font-size:1.4rem;}
  .somos-badge .t{font-size:.7rem;line-height:1.35;}
}

/* ===== BANNER DE COOKIES ===== */
.ck-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;background:var(--white);border:1px solid rgba(32,42,23,.12);border-radius:18px;box-shadow:0 24px 60px -18px rgba(0,0,0,.4);padding:24px 26px;max-width:560px;margin:0 auto;display:none;font-size:.88rem;line-height:1.6;color:var(--text);}
.ck-banner.show{display:block;animation:ckUp .45s cubic-bezier(.2,.8,.2,1);}
@keyframes ckUp{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.ck-banner h4{font-family:'Montserrat',sans-serif;font-size:1rem;color:var(--text);margin-bottom:8px;}
.ck-banner p{color:var(--text-soft);margin-bottom:18px;font-size:.86rem;line-height:1.65;}
.ck-banner a.ck-link{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.ck-acciones{display:flex;gap:10px;}
.ck-btn{flex:1;padding:13px 18px;border-radius:100px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:.84rem;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border:2px solid transparent;transition:transform .25s ease,background .25s ease,border-color .25s ease;text-align:center;}
.ck-btn:hover{transform:translateY(-2px);}
.ck-aceptar{background:var(--btn);color:#fff;}
.ck-aceptar:hover{background:var(--green);}
.ck-rechazar{background:transparent;color:var(--text);border-color:rgba(32,42,23,.28);}
.ck-rechazar:hover{border-color:var(--text);background:rgba(32,42,23,.05);}
:root[data-theme="dark"] .ck-banner{background:#232a1b;border-color:rgba(255,255,255,.1);}
:root[data-theme="dark"] .ck-rechazar{border-color:rgba(255,255,255,.3);color:var(--text);}
:root[data-theme="dark"] .ck-rechazar:hover{background:rgba(255,255,255,.07);border-color:#fff;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .ck-banner{background:#232a1b;border-color:rgba(255,255,255,.1);}
  :root:not([data-theme="light"]) .ck-rechazar{border-color:rgba(255,255,255,.3);color:var(--text);}
  :root:not([data-theme="light"]) .ck-rechazar:hover{background:rgba(255,255,255,.07);border-color:#fff;}
}
@container page (max-width: 700px){.ck-banner{left:12px;right:12px;bottom:12px;padding:20px;}.ck-acciones{flex-direction:column;}.ck-btn{width:100%;}}
@media (max-width: 700px){.ck-banner{left:12px;right:12px;bottom:12px;padding:20px;}.ck-acciones{flex-direction:column;}.ck-btn{width:100%;}}
@media (prefers-reduced-motion: reduce){.ck-banner.show{animation:none;}.ck-btn:hover{transform:none;}}

/* ===== PAGINAS LEGALES ===== */
.legal{padding:70px 0 110px;}
.legal-inner{max-width:760px;margin:0 auto;}
.legal h2{font-size:1.5rem;color:var(--green-dark);margin:44px 0 14px;}
.legal h2:first-of-type{margin-top:0;}
.legal p{color:var(--text-soft);line-height:1.8;margin-bottom:16px;}
.legal ul{color:var(--text-soft);line-height:1.8;margin:0 0 18px 22px;}
.legal li{margin-bottom:8px;}
.legal a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:2px;}
.legal .tabla{width:100%;border-collapse:collapse;margin:18px 0 26px;font-size:.86rem;}
.legal .tabla th,.legal .tabla td{text-align:left;padding:12px 14px;border-bottom:1px solid rgba(32,42,23,.12);vertical-align:top;}
.legal .tabla th{font-family:'Montserrat',sans-serif;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--green-dark);}
.legal .tabla td{color:var(--text-soft);line-height:1.6;}
.legal .aviso{background:var(--cream);border-left:4px solid var(--green);border-radius:10px;padding:18px 22px;margin:26px 0;}
.legal .aviso p{margin:0;font-size:.88rem;}
.legal .fecha{font-size:.8rem;color:var(--text-soft);margin-top:40px;padding-top:20px;border-top:1px solid rgba(32,42,23,.12);}
:root[data-theme="dark"] .legal .tabla th{color:var(--text);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .legal .tabla th{color:var(--text);}}
:root[data-theme="dark"] .legal h2{color:var(--text);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .legal h2{color:var(--text);}}
.legal .tabla-wrap{overflow-x:auto;}
@container page (max-width: 700px){.legal{padding:50px 0 70px;}.legal h2{font-size:1.25rem;margin:32px 0 12px;}}

/* ===== LOGO SEGUN TEMA ===== */
.nav-logo .logo-oscuro{display:none;}
:root[data-theme="dark"] .nav-logo .logo-claro{display:none;}
:root[data-theme="dark"] .nav-logo .logo-oscuro{display:block;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .nav-logo .logo-claro{display:none;}
  :root:not([data-theme="light"]) .nav-logo .logo-oscuro{display:block;}
}

/* ===== BARRA DE ACCION EN MOVIL ===== */
.accion-movil{display:none;}
@media (max-width: 760px){
  .accion-movil{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:900;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-top:1px solid rgba(32,42,23,.1);}
  .accion-movil a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border-radius:100px;font-family:'DM Sans',sans-serif;font-weight:700;font-size:.88rem;letter-spacing:.02em;text-decoration:none;}
  .accion-movil svg{width:19px;height:19px;flex:none;}
  .accion-llamar{background:var(--btn);color:#fff;}
  .accion-wa{background:#15703b;color:#fff;}
  body{padding-bottom:74px;}
  .ck-banner{bottom:82px;}
}
:root[data-theme="dark"] .accion-movil{background:rgba(24,30,17,.94);border-top-color:rgba(255,255,255,.12);}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .accion-movil{background:rgba(24,30,17,.94);border-top-color:rgba(255,255,255,.12);}}

/* ===== WHATSAPP EN CONTACTO ===== */
.c-wa{display:inline-flex;align-items:center;gap:9px;margin-top:14px;padding:12px 20px;border-radius:100px;background:#15703b;color:#fff;font-family:'DM Sans',sans-serif;font-weight:700;font-size:.85rem;text-decoration:none;transition:transform .25s ease,background .25s ease;}
.c-wa:hover{background:#0f5c2f;transform:translateY(-2px);color:#fff;}
.c-wa svg{width:18px;height:18px;}

/* ===== SELECTOR DE SERVICIO ===== */
.campo-select select{width:100%;padding:16px 42px 16px 16px;border:1.5px solid rgba(32,42,23,.14);border-radius:12px;font-family:'DM Sans',sans-serif;font-size:.94rem;color:var(--text);background-color:var(--cream);background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2354762B' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:18px;-webkit-appearance:none;appearance:none;cursor:pointer;transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease;}
.campo-select select:focus{outline:none;border-color:var(--green);background-color:#fff;box-shadow:0 0 0 4px rgba(84,118,43,.12);}
.campo-select select:invalid,.campo-select select option[value=""]{color:var(--text-soft);}
:root[data-theme="dark"] .campo-select select{background-color:#171c12;color:#e8e6dd;border-color:rgba(255,255,255,.12);}
:root[data-theme="dark"] .campo-select select:focus{background-color:#1e2418;}
:root[data-theme="dark"] .campo-select option{background-color:#171c12;color:#e8e6dd;}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .campo-select select{background-color:#171c12;color:#e8e6dd;border-color:rgba(255,255,255,.12);}
  :root:not([data-theme="light"]) .campo-select select:focus{background-color:#1e2418;}
  :root:not([data-theme="light"]) .campo-select option{background-color:#171c12;color:#e8e6dd;}
}
