/* Experiencia ampliada: narrativa, impacto, recetas y acabados. */

.hero-background-video{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover}.hero:has(.hero-background-video)::before{display:none}
.hero:has(.hero-background-video)::after,.recipes-hero:has(.hero-background-video)::after{z-index:1}.hero:has(.hero-background-video)>:not(.hero-background-video),.recipes-hero:has(.hero-background-video)>:not(.hero-background-video){position:relative;z-index:2}
.recipes-hero:has(.hero-background-video)::before{display:none}.recipes-hero .hero-background-video{filter:saturate(.9) contrast(1.08)}

/* Transiciones organicas y patron propio */
.featured-stories,.welcome,.story,.transparency,.journal,.community,.community-voices{position:relative}.featured-stories::before,.journal::before,.community-voices::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.045;background-image:radial-gradient(circle at center,var(--deep) 1.5px,transparent 1.5px);background-size:24px 24px}.featured-stories::after,.journal::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:42px;background:var(--paper);clip-path:polygon(0 68%,9% 48%,18% 72%,28% 45%,39% 70%,50% 42%,61% 68%,72% 44%,83% 69%,92% 47%,100% 66%,100% 100%,0 100%)}

/* Capitulos */
.story-chapters{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:clamp(2rem,7vw,7rem);align-items:center;margin-top:5rem;padding:clamp(1.5rem,4vw,3rem);border-radius:16px;background:var(--deep);color:#fff;overflow:hidden}.story-chapters figure{position:relative;min-height:470px;margin:0;border-radius:10px;overflow:hidden}.story-chapters img{position:absolute;width:100%;height:100%;object-fit:cover}.story-chapters figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:1rem;border-left:5px solid var(--coral);background:#fff;color:var(--deep)}.story-chapters small,.story-chapters strong{display:block}.story-chapters small{color:var(--coral);font-size:.7rem;font-weight:800;text-transform:uppercase}.story-chapters strong{font-family:var(--serif);font-size:1.25rem}.story-chapters>div{max-width:620px}.story-chapters h3{font-size:clamp(2rem,4vw,3.6rem)}.story-chapters>div>p:not(.eyebrow){color:#c7d8d2}.story-chapters a{color:#ffb08f;font-weight:800}

/* Cita fotografica */
.quote-break{position:relative;min-height:520px;display:grid;place-items:center;padding:clamp(3rem,8vw,8rem);isolation:isolate;overflow:hidden;color:#fff}.quote-break img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.quote-break::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#071f1adf,#173f34ad)}.quote-break blockquote{max-width:980px;margin:0;text-align:center;font-family:var(--serif);font-size:clamp(2rem,4.8vw,4.8rem);line-height:1.15}.quote-break cite{display:block;margin-top:1.5rem;color:#ffb08f;font-family:var(--sans);font-size:.9rem;font-style:normal;font-weight:800;letter-spacing:.14em;text-transform:uppercase}

/* Proyectos */
.campaign-image{isolation:isolate;overflow:hidden}.campaign-image img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.campaign-image::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#173f3422,#173f34c7)}.campaign-card:hover .campaign-image img{transform:scale(1.06)}.campaign-image::after{z-index:0}.campaign-image span{z-index:2}.campaign-image.terracotta{background:#a85b3d}.campaign-image.green{background:#315c4c}.campaign-image.terracotta:after,.campaign-image.green:after{content:"";position:absolute;inset:auto 1.25rem 1.25rem auto;width:58px;height:58px;background:center/contain no-repeat}.campaign-image.terracotta:after{background-image:url("images/icon-wheel.svg")}.campaign-image.green:after{background-image:url("images/icon-heart.svg")}.campaign-state{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.campaign-state span{padding:.3rem .55rem;border-radius:99px;background:#dff3e7;color:#20764c;font-size:.68rem;font-weight:800;text-transform:uppercase}.campaign-state small{color:var(--muted);text-align:right}
.impact-comparison{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr auto 1fr;gap:1.2rem;align-items:stretch;margin-top:3rem;padding:clamp(1.4rem,3vw,2.4rem);border-radius:14px;background:var(--deep);color:#fff}.impact-comparison-copy{padding:1rem}.impact-comparison-copy h3{font-size:clamp(1.8rem,3vw,2.8rem)}.impact-comparison-copy p:last-child{color:#bfd0ca}.impact-side{display:flex;flex-direction:column;justify-content:center;padding:1.5rem;border-radius:10px;background:#ffffff10;border:1px solid #ffffff1f}.impact-side span{color:#ffb08f;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.impact-side strong{margin:.45rem 0;font-family:var(--serif);font-size:1.5rem}.impact-side p{margin:0;color:#c7d8d2;font-size:.9rem}.impact-side.outcome{background:#42b8791f;border-color:#42b87966}.impact-arrow{display:grid;place-items:center;color:var(--coral);font-size:2rem}

/* Galeria */
.moment-gallery{margin-top:5rem}.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:1.5rem}.gallery-heading h3{font-size:clamp(1.8rem,3vw,3rem);margin:0}.gallery-controls{display:flex;gap:.5rem}.gallery-controls button,.voice-controls button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--deep);cursor:pointer;transition:.2s}.gallery-controls button:hover,.voice-controls button:hover{background:var(--coral);border-color:var(--coral);color:#fff}.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,36%);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:1rem}.gallery-track figure{position:relative;min-height:340px;margin:0;overflow:hidden;border-radius:12px;scroll-snap-align:start}.gallery-track img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.gallery-track figure:hover img{transform:scale(1.05)}.gallery-track figcaption{position:absolute;left:1rem;right:1rem;bottom:1rem;padding:.85rem 1rem;background:#fff;color:var(--deep);border-left:4px solid var(--coral);font-family:var(--serif);font-weight:700}

/* Mapa de alcance */
.impact-map-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center;background:#e9f2ed}.impact-map-copy>p:not(.eyebrow){color:var(--muted);font-size:1.08rem}.map-legend{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.map-legend span{display:flex;gap:.5rem;align-items:center;font-size:.8rem;font-weight:700}.map-dot{width:10px;height:10px;border-radius:50%;background:var(--coral)}.map-dot.digital{background:var(--mint)}.impact-map{position:relative;min-height:480px;border-radius:50% 46% 52% 44%;overflow:hidden;background:radial-gradient(circle at 55% 58%,#6db88b 0 5%,transparent 5.5%),radial-gradient(circle at 50% 50%,#285a4a 0 24%,#173f34 24.5% 44%,#0e2c24 44.5%);box-shadow:inset 0 0 80px #051a1566,0 30px 70px #173f3425}.impact-map::before,.impact-map::after{content:"";position:absolute;border:1px solid #ffffff26;border-radius:50%}.impact-map::before{inset:12%}.impact-map::after{inset:25%}.map-location{position:absolute;z-index:3;left:50%;top:55%;translate:-50% -50%;padding:1rem 1.2rem;border-left:5px solid var(--coral);background:#fff;color:var(--deep);box-shadow:0 15px 35px #0004}.map-location b,.map-location small{display:block}.map-pulse{position:absolute;z-index:2;width:14px;height:14px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 10px #ef6b3b2e}.pulse-one{left:30%;top:30%}.pulse-two{right:22%;top:24%;background:var(--mint);box-shadow:0 0 0 12px #42b87929}.pulse-three{right:27%;bottom:20%;background:var(--mint);box-shadow:0 0 0 8px #42b87929}

/* Bitacora */
.journal{background:var(--paper)}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.journal-card{position:relative;min-height:330px;padding:2rem;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 14px 35px #173f3410;transition:transform .25s,box-shadow .25s}.journal-card:hover{transform:translateY(-7px);box-shadow:var(--soft-shadow)}.journal-card time,.journal-card>span{display:inline-block;margin-right:.5rem;color:var(--coral-dark);font-size:.7rem;font-weight:800;letter-spacing:.08em}.journal-card h3{margin-top:2.8rem;font-size:1.8rem}.journal-card p{color:var(--muted)}.journal-card a{position:absolute;left:2rem;bottom:2rem;color:var(--mint-dark);font-weight:800}.journal-card-next{color:#fff;background:linear-gradient(135deg,var(--deep),#225847);border:0}.journal-card-next p{color:#c7d8d2}.journal-card-next a{color:#ffb08f}

/* Voces */
.community-voices{background:#f0e5d2}.voice-slider{max-width:1000px;margin:0 auto;padding:clamp(2rem,5vw,4rem);border-radius:16px;background:var(--deep);color:#fff;box-shadow:var(--strong-shadow)}.voice-card{display:none}.voice-card.is-active{display:block}.voice-card blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.8rem,3.5vw,3.2rem);line-height:1.25}.voice-card p{margin:2rem 0 0}.voice-card strong,.voice-card span{display:block}.voice-card span{color:#ffb08f;font-size:.8rem}.voice-controls{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem}.voice-controls button{background:#ffffff12;border-color:#ffffff44;color:#fff}

/* Piezas de campaña en su proporción original */
.campaign-image{aspect-ratio:3/2;height:auto}.campaign-image::before{background:linear-gradient(180deg,#173f3408 58%,#173f3466)}

/* Identidad visual y footer ampliado */
.brand-logo{width:58px;height:58px;flex:none;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 5px 18px #173f3422}.brand-logo-footer{width:64px;height:64px;box-shadow:none}
.expanded-footer{grid-template-columns:1.2fr repeat(3,minmax(150px,.55fr));align-items:start;padding-top:4.5rem}.expanded-footer .footer-column>strong{display:block;margin-bottom:1rem;color:#ffb08f;font-family:var(--serif);font-size:1.1rem}.expanded-footer .footer-column nav,.expanded-footer>nav.footer-column,.footer-social>div{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem}.expanded-footer .footer-column a{color:#cbd9d4;text-decoration:none}.expanded-footer .footer-column a:hover{color:#fff}.share-project{margin-top:1.2rem;padding:.7rem 1rem;border:1px solid #ffffff4a;border-radius:5px;background:transparent;color:#fff;cursor:pointer}.share-project:hover{background:var(--coral);border-color:var(--coral)}.share-status{min-height:1.2em;margin:.5rem 0 0;color:#91bba9;font-size:.75rem}

.admin-lock{display:inline-flex;margin-left:.35rem;color:inherit;text-decoration:none;opacity:.38;filter:grayscale(1);font-size:.78rem;line-height:1;vertical-align:middle;transition:opacity .2s ease,filter .2s ease,transform .2s ease}.admin-lock:hover,.admin-lock:focus-visible{opacity:1;filter:none;transform:translateY(-1px)}

/* Recetas: buscador, etiquetas, modo cocina y relacionadas */
.recipe-search{display:flex;align-items:center;gap:.65rem;max-width:1160px;margin:0 auto .8rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:8px;background:#fff}.recipe-search::before{content:"⌕";color:var(--coral);font-size:1.5rem}.recipe-search input{width:100%;border:0;background:transparent;color:var(--deep);outline:0}.recipe-empty{max-width:700px;margin:3rem auto;padding:2rem;text-align:center;border:1px dashed var(--line);border-radius:12px;background:#fff}.recipe-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}.recipe-tags span,.recipe-visual-facts span{padding:.3rem .55rem;border-radius:99px;font-size:.66rem;font-weight:800;text-transform:uppercase}.recipe-tags span{background:#fff0e9;color:var(--coral-dark)}.recipe-visual-facts{position:absolute;z-index:3;left:1rem;right:1rem;bottom:1rem;display:flex;gap:.4rem}.recipe-visual-facts span{background:#fff;color:var(--deep);box-shadow:0 6px 16px #0003}.recipe-card-visual>.recipe-visual-facts+span{top:1rem;bottom:auto;position:absolute}.cooking-mode-launch{margin-left:.7rem;background:var(--mint-dark);border-color:var(--mint-dark)}.cooking-mode{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:1rem;background:#071d19e8;backdrop-filter:blur(10px)}.cooking-mode[hidden]{display:none}.cooking-panel{width:min(900px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:clamp(1.5rem,5vw,4rem);border-radius:16px;background:var(--paper);box-shadow:0 30px 90px #0008}.cooking-top{display:flex;justify-content:space-between;gap:1rem}.cooking-close{width:44px;height:44px;border:0;border-radius:50%;background:var(--deep);color:#fff;cursor:pointer}.cooking-progress{height:8px;margin:1.5rem 0;background:#deddd6;border-radius:10px;overflow:hidden}.cooking-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--coral),var(--mint));transition:width .25s}.cooking-step{min-height:220px;display:grid;align-content:center}.cooking-step small{color:var(--coral-dark);font-weight:800;text-transform:uppercase}.cooking-step p{font-family:var(--serif);font-size:clamp(1.6rem,4vw,3rem);line-height:1.3}.cooking-actions{display:flex;justify-content:space-between;gap:1rem}.related-recipes{padding:85px clamp(1.2rem,10vw,12rem);background:#edf5f1}.related-recipes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.related-mini{display:grid;grid-template-columns:170px 1fr;min-height:170px;overflow:hidden;border-radius:10px;background:#fff;color:var(--deep);text-decoration:none;box-shadow:0 12px 30px #173f3414}.related-mini img{width:100%;height:100%;object-fit:cover}.related-mini div{padding:1.25rem}.related-mini small{color:var(--coral-dark);font-weight:800}.related-mini strong{display:block;margin:.4rem 0;font-family:var(--serif);font-size:1.35rem}

@media(max-width:1000px){.impact-comparison{grid-template-columns:1fr 1fr}.impact-comparison-copy{grid-column:1/-1}.impact-arrow{display:none}.impact-map-section{grid-template-columns:1fr}.journal-grid{grid-template-columns:1fr 1fr}.expanded-footer{grid-template-columns:1fr 1fr}.expanded-footer .copyright{grid-column:1/-1}}
@media(max-width:700px){.story-chapters{grid-template-columns:1fr}.story-chapters figure{min-height:380px}.gallery-track{grid-auto-columns:85%}.gallery-heading{align-items:start}.impact-comparison{grid-template-columns:1fr}.journal-grid{grid-template-columns:1fr}.impact-map{min-height:360px}.expanded-footer{grid-template-columns:1fr}.related-recipes-grid{grid-template-columns:1fr}.related-mini{grid-template-columns:120px 1fr}.cooking-mode-launch{margin:1rem 0 0;width:100%}.recipe-detail-hero .button{width:100%}.quote-break{min-height:430px}.campaign-state{flex-direction:column}.campaign-state small{text-align:left}}
@media(prefers-reduced-motion:reduce){.map-pulse{box-shadow:none}.campaign-image img,.gallery-track img,.journal-card{transition:none}}
