/* v17: mejoras sobre la v15 completa. Sin ocultar ni eliminar contenido. */
:root{--hairline:rgba(244,240,233,.17)}
.header{border-bottom-color:var(--hairline)}
.header nav>a{position:relative}
.header nav>a:not(.nav-contact):after{content:'';position:absolute;left:0;right:0;bottom:5px;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.header nav>a:hover:after,.header nav>a:focus-visible:after{transform:scaleX(1)}
.lang-btn{min-height:40px}
.hero-grid{gap:clamp(28px,4vw,64px);padding-top:52px;padding-bottom:54px}
.hero-description{font-size:clamp(15px,1.2vw,18px);max-width:460px;line-height:1.65}
.hero-image{box-shadow:0 0 0 1px rgba(182,207,89,.22),0 24px 70px rgba(0,0,0,.25)}
.hero-visual figcaption{padding-top:5px;letter-spacing:.1em}
.hero-stack{display:flex;flex-wrap:wrap;gap:8px 18px;border:0;padding:0;margin-top:30px;font-size:9px;letter-spacing:.12em}
.hero-stack li{display:flex;align-items:center;gap:8px}
.hero-stack li:before{content:'';width:4px;height:4px;background:var(--lime);flex-shrink:0}
.button.primary{min-height:50px;border:1px solid transparent;box-shadow:0 5px 24px rgba(182,207,89,.08)}
.eyebrow{letter-spacing:.13em}
.section{padding-top:clamp(70px,7vw,112px);padding-bottom:clamp(70px,7vw,112px)}
.why-copy{max-width:540px}
.reasons{margin-top:54px}
.reasons li{padding-top:26px;padding-bottom:20px}
.reasons p{line-height:1.55}
.film{gap:5vw;padding-top:90px;padding-bottom:72px;grid-template-columns:minmax(0,4fr) minmax(0,6fr)}
.film-media{aspect-ratio:5/4;box-shadow:0 0 0 1px var(--hairline),0 24px 70px rgba(0,0,0,.25)}
.film h2{font-size:clamp(34px,4.3vw,68px);line-height:1.06}
.film-tag{color:var(--lime);letter-spacing:.14em}
.film-note{line-height:1.7;max-width:320px}
.film + .plant .section-top{padding-top:40px}
.plant-photo{position:relative}
.plant-photo img{border:1px solid var(--hairline)}
.plant-photo figcaption{padding-top:4px}
.plant-facts>div{padding:19px 0}
.proposal h3{max-width:520px}
.pillars{gap:14px;border-top:0}
.pillars li,.pillars li+li{padding:28px 24px 26px;border:1px solid var(--hairline);background:linear-gradient(145deg,rgba(94,111,58,.26),rgba(94,111,58,.08));min-width:0}
.pillars .mono{top:27px;right:22px;color:var(--lime)}
.pillars img{margin-bottom:30px}
.pillars h3{line-height:1.25}
.pillars p{line-height:1.65}
.development-heading>p{line-height:1.65}
.timeline{gap:26px;align-items:stretch}
.timeline li{padding:28px 22px 26px;background:rgba(255,255,255,.24)}
.timeline li:before{left:22px}
.timeline .current{background:var(--night);color:var(--white);border-color:var(--lime);box-shadow:0 18px 34px rgba(94,111,58,.12)}
.timeline .current:before{background:var(--lime)}
.timeline .current .step,.timeline .current .stage{color:var(--lime)}
.timeline .current p{color:#f4f0e9}
.timeline .current .metric{margin:14px 0;color:var(--lime)}
.cultivo-frame{box-shadow:0 0 0 1px rgba(94,111,58,.18)}
.cultivo-info>p{line-height:1.65}
.product-tools{gap:18px;padding-bottom:16px;border-bottom:1px solid rgba(44,55,29,.16)}
.product-tools button{min-height:42px;opacity:.75}
.product-tools button[aria-pressed=true]{opacity:1}
.product-tools button:focus-visible{outline-color:var(--moss)}
.swatches{flex-wrap:wrap;gap:12px}
.swatches button{padding:10px 4px}
.sides button{padding:10px 12px}
.product figcaption{border-top:1px solid rgba(44,55,29,.16);padding-top:18px}
.product figcaption small{opacity:.8;line-height:1.65}
.vision-copy .vision-note{padding-top:4px;padding-bottom:4px}
.portrait{border:1px solid var(--hairline);height:clamp(260px,26vw,390px)}
.person:first-child .portrait img{object-position:50% 28%}
.person h3{letter-spacing:.015em}
.advisors img{border:1px solid var(--hairline)}
.advisors article:first-of-type img{object-position:50% 25%}
.support{padding-top:48px;padding-bottom:48px}
.support-list{gap:20px 36px}
.support-list li{line-height:1.5}
.contact-aud{line-height:2.2}
.contact-bottom{padding-top:30px;border-top:1px solid var(--hairline)}
.motion-toggle{min-height:28px;font-size:10px;bottom:0}
.marquee{padding-bottom:36px}
.hero-copy,.film-copy,.plant-copy,.vision-copy,.cultivo-info{min-width:0}
@media(hover:hover) and (pointer:fine){
 .portrait img{transition:filter .4s,scale .6s}
 .person:hover .portrait img{filter:grayscale(.35);scale:1.025}
 .pillars li:hover{border-color:rgba(182,207,89,.45)}
}
@media(max-width:1100px){
 .header nav{gap:16px;font-size:12px}
 .lang{margin-left:18px}
 .pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pillars li:nth-child(3){padding-left:24px;border-left:1px solid var(--hairline)}
 .film{gap:36px}
 .timeline{gap:16px}
 .timeline li{padding-left:18px;padding-right:18px}
}
@media(max-width:1000px){.film{grid-template-columns:1fr}.film-media{aspect-ratio:16/10}.film h2{font-size:clamp(36px,5.8vw,64px)}}
@media(max-width:700px){
 .section{padding-top:64px;padding-bottom:64px}
 .header nav{font-size:14px}
 .header .menu-toggle{min-height:40px}
 .hero-grid{padding-top:30px;padding-bottom:34px;gap:30px}
 .hero-description{margin-top:22px;font-size:15px}
 .hero-stack{margin-top:24px;gap:8px 14px;font-size:8px;line-height:1.8}
 .hero-image{height:clamp(330px,95vw,440px)}
 .hero-visual figcaption{font-size:9px}
 .film{padding:64px var(--pad) 44px;gap:32px}
 .film-media{aspect-ratio:4/5}
 .film h2{font-size:clamp(32px,9vw,48px)}
 .film-note{font-size:10px}
 .reasons{margin-top:36px}
 .reasons li,.reasons li+li{padding:22px 0}
 .pillars{gap:12px;margin-top:42px}
 .pillars li,.pillars li+li,.pillars li:nth-child(3){padding:22px 16px;border:1px solid var(--hairline)}
 .pillars .mono{top:22px;right:14px}
 .pillars img{width:42px;height:42px;margin-bottom:24px}
 .pillars h3{font-size:16px}
 .pillars p{font-size:13px}
 .timeline{gap:22px}
 .timeline li{padding:24px}
 .timeline li:before{left:24px}
 .product-tools{justify-content:center;gap:14px}
 .portrait{height:220px}
 .support-list{gap:18px 24px}
 .contact-bottom{padding-top:26px}
 .contact-aud{font-size:9px}
}
@media(max-width:370px){.portrait{height:190px}.pillars{grid-template-columns:1fr}.pillars h3{font-size:19px}}
@media(prefers-reduced-motion:reduce){.person:hover .portrait img{scale:1;filter:grayscale(1)}}
