
:root{
  --forest:#184c2e;--forest-2:#245f39;--leaf:#6f984f;--sage:#dce8cb;--cream:#fbf7ee;--paper:#fffdf8;
  --ink:#263229;--muted:#687068;--line:#e7dfd0;--shadow:0 9px 26px rgba(35,65,43,.09);--shadow-lg:0 18px 44px rgba(35,65,43,.12);
  --radius:20px;--max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,"Segoe UI",sans-serif;line-height:1.48;overflow-x:hidden}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:url('../img/paper-noise.png');opacity:.032;mix-blend-mode:multiply;z-index:9999}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input{font:inherit}.container{width:min(calc(100% - 44px),var(--max));margin:auto}.section{padding:54px 0}.section-tight{padding:34px 0}.muted{color:var(--muted)}
h1,h2,h3,.serif{font-family:Georgia,"Times New Roman",serif;color:var(--forest);line-height:1.08;margin:0}h1{font-size:clamp(2.65rem,5vw,4.85rem)}h2{font-size:clamp(2rem,3.3vw,3rem)}h3{font-size:clamp(1.18rem,1.65vw,1.48rem)}p{margin:0 0 1rem}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;font-weight:800;color:var(--leaf);margin-bottom:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:12px;padding:12px 21px;font-weight:700;transition:.2s ease;cursor:pointer}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:var(--forest-2);transform:translateY(-1px)}.btn-outline{background:rgba(255,255,255,.55);border-color:#91a77c;color:var(--forest)}.btn-outline:hover{background:#f0f5e9}.btn-ghost{padding:8px 0;border-radius:0;color:var(--forest);font-weight:700}.tag{display:inline-flex;padding:6px 10px;background:#eef4e7;border-radius:999px;color:var(--forest);font-size:.76rem;font-weight:700}
/* header */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(251,247,238,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(231,223,208,.85)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;gap:10px;color:var(--forest);min-width:250px}.brand-mark{width:43px;height:48px;display:grid;place-items:center}.brand-mark svg{width:100%;height:100%}.brand-name{display:flex;flex-direction:column;font-size:1.18rem;line-height:1.02}.brand-name span{font-weight:700}.brand-name strong{font-size:1.34rem;color:#5f8b3f}.main-nav{display:flex;align-items:center;gap:27px}.main-nav a{position:relative;padding:10px 0;font-size:.94rem;font-weight:500}.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--forest);transform:scaleX(0);transition:.2s}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}.search-trigger{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:rgba(255,255,255,.56);border-radius:999px;padding:11px 20px;color:#555;cursor:pointer}.mobile-toggle{display:none;width:44px;height:44px;border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;justify-content:center}.mobile-toggle span,.mobile-toggle span::before,.mobile-toggle span::after{width:21px;height:2px;background:var(--forest);display:block;position:relative}.mobile-toggle span::before,.mobile-toggle span::after{content:"";position:absolute;left:0}.mobile-toggle span::before{top:-7px}.mobile-toggle span::after{top:7px}.search-panel{position:fixed;inset:0;background:rgba(16,49,30,.46);z-index:1500;display:none;place-items:start center;padding-top:110px}.search-panel.open{display:grid}.search-box{width:min(720px,calc(100% - 30px));background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow-lg);position:relative}.search-box input{width:100%;border:1px solid var(--line);border-radius:12px;padding:15px 52px 15px 16px;background:#fff}.search-close{position:absolute;right:38px;top:35px;border:0;background:none;font-size:1.45rem;cursor:pointer}
/* hero */
.hero{padding:26px 0 18px}.hero-card{display:grid;grid-template-columns:1.12fr .88fr;min-height:344px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:var(--paper);box-shadow:var(--shadow)}.hero-media{position:relative;min-height:344px;background:#dfe7d7}.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:.55s}.hero-media img.active{opacity:1}.hero-copy{padding:42px 54px;display:flex;flex-direction:column;justify-content:center;position:relative}.hero-copy h1{font-size:clamp(2.35rem,4vw,4rem);margin:0 0 18px}.hero-copy p{font-size:1.03rem;color:var(--muted);max-width:410px;margin-bottom:24px}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.92);box-shadow:var(--shadow);display:grid;place-items:center;z-index:3;cursor:pointer}.hero-arrow.prev{left:18px}.hero-arrow.next{right:18px}.hero-arrow:hover{background:var(--forest);color:#fff}.hero-dots{display:flex;justify-content:center;gap:9px;margin-top:12px}.hero-dot{width:9px;height:9px;border:0;border-radius:50%;background:#d4cfc2}.hero-dot.active{background:var(--forest)}
.page-hero{padding:28px 0 16px}.page-hero-card{display:grid;grid-template-columns:.9fr 1.1fr;min-height:315px;overflow:hidden;background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.page-hero-copy{padding:48px 52px;display:flex;flex-direction:column;justify-content:center}.page-hero-copy h1{font-size:clamp(2.65rem,4.3vw,4.45rem);margin-bottom:22px}.page-hero-copy p{max-width:380px}.page-hero-media{min-height:315px}.page-hero-media img{width:100%;height:100%;object-fit:cover}.page-campanas .page-hero-card{grid-template-columns:1fr 1.45fr;min-height:410px}.page-campanas .page-hero-copy{position:relative;z-index:2}.page-campanas .page-hero-media{clip-path:ellipse(86% 100% at 100% 50%);margin-left:-110px;min-height:410px}
/* headings & cards */
.section-heading{text-align:center;margin-bottom:28px}.section-heading h2{font-size:clamp(1.85rem,3vw,2.65rem)}.flourish{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:7px;color:#7f9f62}.flourish::before,.flourish::after{content:"";width:37px;height:1px;background:currentColor}.flourish span{font-size:1rem}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.card{background:rgba(255,253,248,.94);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden;transition:.2s}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.card-media{display:block;aspect-ratio:16/9;overflow:hidden}.card-media img{width:100%;height:100%;object-fit:cover;transition:.4s}.card:hover .card-media img{transform:scale(1.025)}.card-body{padding:14px 15px 16px}.card-body h3{font-size:1.24rem;margin:5px 0 8px}.card-body p{font-size:.88rem;color:var(--muted);line-height:1.48}.card-meta{display:flex;gap:6px;flex-wrap:wrap;color:var(--forest);font-size:.74rem;font-weight:700;text-transform:none;letter-spacing:0}.card-footer{margin-top:8px}.info-card{padding:22px 23px;text-align:center;min-height:176px}.info-card h3{font-size:1.2rem;margin-bottom:9px}.info-card p{font-size:.9rem;color:var(--muted)}.info-icon{width:52px;height:52px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:#e5efd4;color:var(--forest)}.info-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* organic themes */
.organic-section{position:relative;padding:48px 0;background:#214f31;color:#fff;background-image:linear-gradient(rgba(33,79,49,.96),rgba(33,79,49,.96)),url('../img/paper-noise.png')}.organic-section::before,.organic-section::after{content:"";position:absolute;left:-2%;width:104%;height:34px;background:var(--cream);z-index:1}.organic-section::before{top:-17px;border-radius:50% 43% 52% 48%}.organic-section::after{bottom:-17px;border-radius:45% 55% 43% 57%}.organic-section h2{color:#fff}.organic-section .flourish{color:#c9d9ae}.theme-card{position:relative;aspect-ratio:1.18/1;border-radius:13px;overflow:hidden;border:1px solid rgba(255,255,255,.65);box-shadow:0 8px 18px rgba(0,0,0,.2)}.theme-card img{width:100%;height:100%;object-fit:cover}.theme-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 32%,rgba(10,37,21,.78))}.theme-card span{position:absolute;left:8px;right:8px;bottom:12px;z-index:2;color:#fff;font-family:Georgia,serif;font-weight:700;font-size:1rem;line-height:1.08;text-align:center}
/* filters */
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:22px}.filter-group{display:flex;gap:10px;flex-wrap:wrap}.filter-btn{border:1px solid #91a77c;background:rgba(255,255,255,.66);color:var(--forest);border-radius:9px;padding:9px 17px;font-weight:600;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--forest);color:#fff;border-color:var(--forest)}.inline-search{position:relative;min-width:260px}.inline-search input{width:100%;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.76);padding:11px 42px 11px 16px}.inline-search span{position:absolute;right:15px;top:50%;transform:translateY(-50%)}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:32px}.page-btn{width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;cursor:pointer}.page-btn.active,.page-btn:hover{background:var(--forest);color:#fff;border-color:var(--forest)}
/* transitions */
.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.split-feature img{width:100%;height:350px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}.split-feature h2{font-size:2.35rem;margin-bottom:8px}.split-feature .subtitle{font-family:Georgia,serif;font-style:italic;font-size:2.1rem;color:#5f8542;margin-bottom:18px}.definition-band{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:#245734;color:#fff;border-radius:16px;padding:28px 38px}.definition-band h2{color:#fff;font-size:1.85rem;margin-bottom:7px}.definition-icon{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:#dce9c8;color:var(--forest);font-size:1.7rem}.quote-card{padding:22px}.quote-card .quote{font-family:Georgia,serif;font-size:2.45rem;color:#769850;line-height:.65}.quote-card p{font-size:.88rem;margin-top:11px}.quote-card strong{font-size:.82rem;color:#5c813e}
/* details */
.back-row{padding:18px 0 0}.back-button{display:inline-flex;align-items:center;gap:8px;border:1px solid #a9b99a;border-radius:999px;background:#fff;padding:10px 17px;color:var(--forest);font-weight:700;box-shadow:var(--shadow)}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px 0 38px}.detail-hero img{width:100%;height:430px;object-fit:cover;border-radius:20px}.detail-copy{background:#245c38;color:#fff;border-radius:20px;padding:52px;display:flex;flex-direction:column;justify-content:center}.detail-copy h1{color:#fff;font-size:4rem;margin:12px 0 18px}.detail-content{display:grid;grid-template-columns:1fr 300px;gap:36px}.detail-main h2{font-size:2rem;margin:28px 0 10px}.sidebar-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px;margin-bottom:14px}.sidebar-card small{display:block;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:700;margin-bottom:6px}.sidebar-card strong{color:var(--forest)}
/* footer */
.site-footer{margin-top:55px;background:rgba(255,253,248,.93);border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.05fr 1fr 1.2fr 1.7fr;gap:28px;padding:35px 0}.footer-col:not(:first-child){border-left:1px solid var(--line);padding-left:27px}.footer-brand{display:flex;align-items:center;gap:11px;color:var(--forest)}.footer-emblem{width:56px;height:56px;display:grid;place-items:center}.footer-emblem svg{width:100%;height:100%}.footer-brand strong{font-family:Georgia,serif;font-size:1.28rem;line-height:1.05}.footer-col h4{font-family:Georgia,serif;color:var(--forest);font-size:1.05rem;margin:0 0 10px}.footer-col ul{list-style:none;padding:0;margin:0}.footer-col li{margin:5px 0;font-size:.86rem}.footer-email{font-size:.82rem;color:var(--forest);overflow-wrap:anywhere}.support-logos{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.support-logos img{max-width:105px;max-height:46px;object-fit:contain}.footer-bottom{background:#184c2e;color:#fff}.footer-bottom .container{display:flex;justify-content:space-between;align-items:center;padding:13px 0;font-size:.76rem}.to-top{border:0;background:none;color:#fff;cursor:pointer}.ambient-btn{position:fixed;right:16px;bottom:15px;z-index:1200;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(24,76,46,.92);color:#fff;padding:9px 13px;box-shadow:var(--shadow);font-size:.8rem;cursor:pointer}.ambient-btn[aria-pressed="true"]{background:#fff;color:var(--forest);border-color:var(--line)}.empty-state{grid-column:1/-1;padding:45px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}
/* specific */
.page-home .section-tight{padding-top:26px}.page-home #latest-publications .card-body{min-height:178px}.page-publicaciones #publications-grid .card,.page-politicas #policies-grid .card{min-height:100%}.page-politicas main>.section{padding-top:40px}.page-politicas .toolbar h1{font-size:3.25rem!important}.page-politicas .toolbar .eyebrow{display:none}
@media(max-width:1050px){.brand{min-width:210px}.main-nav{gap:15px}.main-nav a{font-size:.86rem}.grid-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:880px){.header-inner{min-height:72px}.mobile-toggle{display:flex}.main-nav{position:fixed;top:78px;left:14px;right:14px;display:none;flex-direction:column;align-items:stretch;gap:4px;padding:14px;background:var(--paper);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg)}.main-nav.open{display:flex}.main-nav a,.search-trigger{width:100%;padding:12px 13px;text-align:left}.hero-card,.page-hero-card,.page-campanas .page-hero-card{grid-template-columns:1fr}.hero-media{min-height:360px}.hero-copy{padding:38px 32px}.page-hero-media{order:-1;min-height:300px}.page-campanas .page-hero-media{clip-path:none;margin-left:0;min-height:300px}.grid-3{grid-template-columns:repeat(2,1fr)}.grid-5{grid-template-columns:repeat(2,1fr)}.split-feature,.detail-hero,.detail-content{grid-template-columns:1fr}.detail-hero img{height:350px}.footer-main{grid-template-columns:repeat(2,1fr)}.footer-col:nth-child(3){border-left:0;padding-left:0}}
@media(max-width:620px){.container{width:min(calc(100% - 24px),var(--max))}.brand{min-width:0}.brand-mark{width:36px;height:41px}.brand-name{font-size:.95rem}.brand-name strong{font-size:1.08rem}.hero{padding-top:14px}.hero-card{border-radius:16px}.hero-media{min-height:270px}.hero-copy{padding:30px 23px}.hero-copy h1{font-size:2.45rem}.hero-copy p{font-size:.95rem}.hero-arrow{width:38px;height:38px}.hero-arrow.prev{left:10px}.hero-arrow.next{right:10px}.grid-3,.grid-2,.grid-5{grid-template-columns:1fr}.section{padding:42px 0}.section-tight{padding:25px 0}.section-heading{text-align:center}.page-hero-card{border-radius:16px}.page-hero-copy{padding:30px 23px}.page-hero-media{min-height:245px}.toolbar{align-items:stretch}.filter-group{width:100%;display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.filter-btn{white-space:nowrap}.inline-search{width:100%;min-width:0}.split-feature{gap:24px}.split-feature img{height:250px}.split-feature h2{font-size:2rem}.split-feature .subtitle{font-size:1.65rem}.definition-band{grid-template-columns:1fr;padding:24px}.detail-hero img{height:280px}.detail-copy{padding:30px 24px}.detail-copy h1{font-size:3rem}.footer-main{grid-template-columns:1fr;padding:30px 0}.footer-col:not(:first-child){border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:18px}.footer-bottom .container{flex-direction:column;align-items:flex-start;gap:6px}.support-logos img{max-width:96px}.ambient-btn{right:10px;bottom:10px}}


/* Official identity logos — v2.1 */
.brand{
  display:flex;
  align-items:center;
  min-width:300px;
  flex:0 0 auto;
  padding:4px 0;
}
.brand-logo{
  display:block;
  width:292px;
  max-width:31vw;
  height:82px;
  object-fit:contain;
  object-position:left center;
}
.footer-brand{
  display:block;
  color:inherit;
}
.footer-logo{
  display:block;
  width:min(178px,100%);
  max-height:132px;
  object-fit:contain;
  object-position:left center;
}
.footer-col:first-child .muted{
  margin:10px 0 0;
  color:var(--forest);
  font-weight:600;
}
@media(max-width:1050px){
  .brand{min-width:238px}
  .brand-logo{width:232px;height:70px;max-width:28vw}
}
@media(max-width:880px){
  .brand{min-width:0;max-width:calc(100% - 58px)}
  .brand-logo{width:245px;max-width:72vw;height:70px}
}
@media(max-width:620px){
  .brand-logo{width:210px;max-width:70vw;height:60px}
  .footer-logo{width:155px;max-height:115px}
}

/* Clean official Acción Ecológica logo panel */
.footer-brand{background:#fff;border-radius:14px;padding:8px 10px;width:max-content;max-width:100%;}
.footer-logo{background:#fff;}


/* =========================================================
   Visual refinement v2.4 — same architecture, cleaner system
   ========================================================= */
:root{
  --cream:#faf6ed;
  --paper:#fffdf9;
  --forest:#174b2e;
  --forest-2:#27613b;
  --leaf:#7c9d5d;
  --sage:#e4edd6;
  --line:#e2dacb;
  --shadow:0 12px 32px rgba(23,75,46,.08);
  --shadow-lg:0 22px 55px rgba(23,75,46,.14);
}
body{background:
  radial-gradient(circle at 12% 4%,rgba(223,235,205,.36),transparent 24rem),
  radial-gradient(circle at 88% 34%,rgba(237,225,197,.30),transparent 26rem),
  var(--cream);
}
.site-header{box-shadow:0 8px 22px rgba(23,75,46,.035)}
.header-inner{min-height:88px}
.main-nav a{letter-spacing:.005em}
.search-trigger{transition:.2s ease}
.search-trigger:hover{background:#fff;border-color:#b6c5a4;color:var(--forest);box-shadow:0 7px 18px rgba(23,75,46,.07)}
.hero-card,.page-hero-card{border-color:rgba(117,137,97,.23);box-shadow:0 16px 46px rgba(23,75,46,.09)}
.hero-copy,.page-hero-copy{background:linear-gradient(135deg,rgba(255,253,249,.98),rgba(250,246,237,.94))}
.section-heading h2,.toolbar h2{letter-spacing:-.02em}
.card{border-color:rgba(117,137,97,.22);box-shadow:0 10px 28px rgba(23,75,46,.065)}
.card:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(23,75,46,.12);border-color:rgba(95,132,66,.36)}
.card-media{aspect-ratio:3/2;background:#e7ecdf}
.card-media img{object-fit:cover;object-position:center}
.card-body{padding:17px 18px 19px}
.card-body h3{margin-top:7px;letter-spacing:-.012em}
.card-meta{color:#587642}
.btn-outline{background:rgba(255,253,249,.78);box-shadow:0 5px 14px rgba(23,75,46,.04)}
.info-card{border-top:3px solid rgba(111,152,79,.34)}
.info-icon{box-shadow:inset 0 0 0 1px rgba(77,111,54,.10)}
.organic-section{padding:58px 0;background:
 linear-gradient(rgba(26,79,46,.97),rgba(26,79,46,.97)),
 url('../img/paper-noise.png');
}
.grid-5{gap:16px}
.theme-card{aspect-ratio:3/2;border-radius:16px;border-color:rgba(255,255,255,.72);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.theme-card img{object-fit:cover;object-position:center}
.theme-card::after{background:linear-gradient(180deg,rgba(9,35,20,.02),rgba(9,35,20,.78))}
.theme-card span{bottom:14px;font-size:1.08rem;text-shadow:0 2px 8px rgba(0,0,0,.35)}
.theme-card:hover img{transform:scale(1.025)}
.theme-card img{transition:.35s ease}

/* Beautiful footer, same 4-column architecture */
.site-footer{position:relative;margin-top:78px;background:linear-gradient(180deg,#e8f0dc 0,#f7f5ec 34%,#fffdf9 100%);border-top:0;padding-top:24px}
.footer-wave{position:absolute;left:-2%;top:-28px;width:104%;height:54px;background:var(--forest);border-radius:50% 50% 0 0 / 90% 90% 0 0;opacity:.98}
.footer-main{position:relative;display:grid;grid-template-columns:1.08fr .9fr 1.32fr 1.75fr;gap:20px;padding:36px 28px;margin-top:8px;margin-bottom:28px;background:rgba(255,253,249,.88);border:1px solid rgba(117,137,97,.22);border-radius:24px;box-shadow:0 18px 45px rgba(23,75,46,.08)}
.footer-col{min-width:0}
.footer-col:not(:first-child){border-left:1px solid rgba(117,137,97,.20);padding-left:24px}
.footer-brand{display:flex;align-items:center;justify-content:flex-start;background:#fff;border:1px solid rgba(117,137,97,.18);border-radius:16px;padding:12px;width:100%;max-width:205px;box-shadow:0 8px 22px rgba(23,75,46,.07)}
.footer-logo{width:100%;max-height:116px;object-fit:contain;background:#fff}
.footer-location{display:inline-flex;align-items:center;gap:8px;margin:14px 0 0;padding:8px 12px;border-radius:999px;background:#edf3e5;color:var(--forest);font-weight:700;font-size:.86rem}
.footer-col h4{display:flex;align-items:center;gap:8px;font-size:1.14rem;margin-bottom:14px}
.footer-col h4::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(111,152,79,.55),transparent)}
.footer-links ul{display:grid;gap:9px}
.footer-links li{margin:0}
.footer-links a{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;border:1px solid rgba(117,137,97,.18);border-radius:10px;background:#fff;color:var(--forest);font-weight:650;transition:.2s}
.footer-links a:hover{transform:translateX(3px);border-color:#9ab27f;background:#f4f8ef}
.footer-contact p{font-size:.82rem;color:var(--muted);margin-bottom:11px}
.footer-email{display:block;padding:11px 12px;border-radius:11px;background:var(--forest);color:#fff;font-weight:700;font-size:.79rem;line-height:1.35;box-shadow:0 8px 18px rgba(23,75,46,.14)}
.footer-email:hover{background:var(--forest-2)}
.support-logos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:stretch}
.support-logos span{min-height:62px;display:grid;place-items:center;background:#fff;border:1px solid rgba(117,137,97,.18);border-radius:11px;padding:8px}
.support-logos img{max-width:100%;max-height:42px;object-fit:contain}
.footer-bottom{background:linear-gradient(90deg,#123d26,#1d5835);box-shadow:inset 0 1px rgba(255,255,255,.08)}
.footer-bottom .container{padding:15px 0}
.to-top{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.08);transition:.2s}
.to-top:hover{background:rgba(255,255,255,.16)}

/* Public policies: empty fields ready for official information */
.policies-section{padding-top:44px}
.policies-heading{display:grid;grid-template-columns:1fr minmax(260px,340px);gap:28px;align-items:end;margin-bottom:24px}
.policies-heading h1{font-size:clamp(2.8rem,4vw,4.45rem)}
.policies-lead{max-width:760px;margin:14px 0 0;color:var(--muted);font-size:1rem}
.policies-search-disabled{opacity:.65}
.policies-search-disabled input{cursor:not-allowed}
.policy-template-note{display:flex;gap:13px;align-items:flex-start;margin:0 0 24px;padding:16px 18px;border:1px solid rgba(117,137,97,.25);border-radius:14px;background:linear-gradient(135deg,#f0f5e8,#fffdf9);color:var(--forest)}
.policy-template-note>span{width:31px;height:31px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--forest);color:#fff}
.policy-template-note p{margin:3px 0 0;font-size:.91rem}
.policy-placeholder-card{overflow:hidden;background:rgba(255,253,249,.88);border:1px dashed rgba(92,124,67,.38);border-radius:16px;box-shadow:0 8px 24px rgba(23,75,46,.045)}
.policy-placeholder-image{aspect-ratio:3/2;display:grid;place-items:center;background:
 linear-gradient(135deg,rgba(218,230,204,.58),rgba(247,244,233,.96));color:#819274;font-size:.75rem;text-transform:uppercase;letter-spacing:.14em}
.policy-placeholder-body{padding:17px}
.policy-placeholder-field{margin-bottom:14px}
.policy-placeholder-field small,.policy-placeholder-meta small{display:block;margin-bottom:7px;color:#7c867d;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem;font-weight:700}
.policy-placeholder-field span,.policy-placeholder-meta span{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#e4e9dd,#f2efe7)}
.policy-placeholder-field span+span{margin-top:7px;width:76%}
.policy-title-field span:first-of-type{height:14px;width:92%}.policy-title-field span+span{width:68%}
.policy-placeholder-meta{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.policy-template-pagination .page-btn{opacity:.55;cursor:default}

@media(max-width:1050px){
 .footer-main{grid-template-columns:1fr 1fr}.footer-col:nth-child(3){border-left:0;padding-left:0;border-top:1px solid rgba(117,137,97,.2);padding-top:20px}
 .support-logos{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:880px){
 .policies-heading{grid-template-columns:1fr;align-items:start}.policies-heading .inline-search{width:100%;max-width:420px}
 .grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .grid-5{grid-template-columns:1fr}
 .theme-card{aspect-ratio:16/9}
 .footer-main{grid-template-columns:1fr;padding:25px 19px}
 .footer-col:not(:first-child),.footer-col:nth-child(3){border-left:0;padding-left:0;border-top:1px solid rgba(117,137,97,.2);padding-top:18px}
 .footer-brand{max-width:190px}.support-logos{grid-template-columns:1fr 1fr}.support-logos span:last-child{grid-column:1/-1}
 .policies-lead{font-size:.94rem}.policy-template-note{padding:14px}
}


/* =========================================================
   Visual and sensory refinement v2.4
   ========================================================= */
:root{
  --hero-h:430px;
  --page-hero-h:380px;
  --ease-out:cubic-bezier(.22,1,.36,1);
}
::selection{background:#cfe0b9;color:#123d26}
:focus-visible{outline:3px solid rgba(111,152,79,.62);outline-offset:4px}
.scroll-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:2200;background:linear-gradient(90deg,#789d55,#174b2e);transform:scaleX(0);transform-origin:left center;pointer-events:none}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .62s var(--ease-out) var(--reveal-delay,0ms),transform .62s var(--ease-out) var(--reveal-delay,0ms)}
.reveal.is-visible{opacity:1;transform:none}
.is-pressed{transform:translateY(1px) scale(.992)!important}

/* Uniform, stable image geometry */
.hero-card{height:var(--hero-h);min-height:var(--hero-h)}
.hero-media,.hero-copy{height:var(--hero-h);min-height:0}
.hero-media{isolation:isolate;overflow:hidden}
.hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,48,27,.06),transparent 22%);pointer-events:none;z-index:1}
.hero-media img{object-fit:cover;object-position:center;height:100%;transform:scale(1.018);filter:saturate(.98) contrast(1.015);transition:opacity .58s ease,transform 7s linear}
.hero-media img.active{transform:scale(1.045)}
.hero-copy{overflow:hidden}
.page-hero-card{height:var(--page-hero-h);min-height:var(--page-hero-h)}
.page-hero-copy,.page-hero-media{height:var(--page-hero-h);min-height:0}
.page-hero-media{overflow:hidden}
.page-hero-media img{height:100%;object-fit:cover;object-position:center;transition:transform .7s var(--ease-out)}
.page-hero-card:hover .page-hero-media img{transform:scale(1.025)}
.page-campanas .page-hero-card,.page-campanas .page-hero-media{height:410px;min-height:410px}

.grid-3,.grid-2,.grid-5{align-items:stretch}
.card{height:100%;display:flex;flex-direction:column}
.card-media{flex:0 0 auto;height:220px;aspect-ratio:auto;background:#e7ecdf}
.card-media img{height:100%;object-fit:cover;object-position:center}
.card-body{display:flex;flex:1;flex-direction:column}
.card-footer{margin-top:auto}
.theme-card{height:190px;aspect-ratio:auto}
.theme-card img{height:100%;object-fit:cover;object-position:center}
.theme-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px rgba(0,0,0,.23)}
.hero-arrow,.page-btn,.mobile-toggle{transition:transform .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease}
.hero-arrow:hover{transform:translateY(-50%) scale(1.07)}
.hero-dot{transition:width .25s ease,background .25s ease;border-radius .25s ease}
.hero-dot.active{width:25px;border-radius:999px}
.btn,.filter-btn,.search-trigger,.back-button{transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
.btn:hover,.filter-btn:hover,.back-button:hover{box-shadow:0 10px 22px rgba(23,75,46,.11)}
.card a,.theme-card{touch-action:manipulation}

/* Rich definition panel */
.definition-section{padding-top:36px;padding-bottom:42px}
.definition-band{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:104px minmax(0,1fr);
  gap:28px;
  min-height:228px;
  padding:34px 42px;
  overflow:hidden;
  border:1px solid rgba(226,238,208,.44);
  border-radius:26px;
  background:
    radial-gradient(circle at 92% 18%,rgba(217,235,190,.17),transparent 15rem),
    linear-gradient(135deg,#123f27 0%,#205d38 58%,#17482c 100%);
  box-shadow:0 24px 56px rgba(23,75,46,.19);
}
.definition-band::before{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.18;
  background-image:
    linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.08) 49% 50%,transparent 51%),
    radial-gradient(circle at 15% 80%,rgba(255,255,255,.12) 0 1px,transparent 1.5px);
  background-size:68px 68px,20px 20px;
}
.definition-band::after{
  content:"";position:absolute;right:-70px;bottom:-100px;width:280px;height:280px;border:1px solid rgba(231,244,211,.20);border-radius:50%;box-shadow:0 0 0 34px rgba(231,244,211,.04),0 0 0 70px rgba(231,244,211,.025)
}
.definition-orbit{position:absolute;right:38px;top:28px;width:108px;height:108px;border-radius:50%;border:1px solid rgba(231,244,211,.17);pointer-events:none}
.definition-icon{
  width:92px;height:92px;border-radius:28px;display:grid;place-items:center;
  background:linear-gradient(145deg,#edf5dc,#cfe2b1);color:#174b2e;
  box-shadow:0 13px 30px rgba(7,35,19,.24),inset 0 1px rgba(255,255,255,.9);
  transform:rotate(-3deg)
}
.definition-icon svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.definition-content{align-self:center;max-width:880px}
.definition-kicker{display:block;margin-bottom:8px;color:#cfe2b5;text-transform:uppercase;letter-spacing:.18em;font-size:.69rem;font-weight:800}
.definition-band h2{font-size:clamp(1.7rem,2.6vw,2.45rem);margin:0 0 10px;color:#fff;letter-spacing:-.025em}
.definition-band p{max-width:850px;margin:0;color:rgba(255,255,255,.86);font-size:1rem;line-height:1.68}
.definition-pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}
.definition-pill-row span{display:inline-flex;align-items:center;min-height:32px;padding:7px 13px;border:1px solid rgba(227,241,207,.28);border-radius:999px;background:rgba(255,255,255,.08);color:#edf6e3;font-size:.78rem;font-weight:700;letter-spacing:.02em;backdrop-filter:blur(4px)}
.definition-pill-row span::before{content:"";width:6px;height:6px;margin-right:7px;border-radius:50%;background:#c8de9f;box-shadow:0 0 0 3px rgba(200,222,159,.12)}

/* Policies remain empty but feel intentional, not technical */
.policy-template-note{display:none!important}
.policy-template-grid{gap:20px}
.policy-placeholder-card{position:relative;overflow:hidden;min-height:420px;border:1px solid rgba(110,143,83,.24);border-radius:20px;background:rgba(255,253,249,.82);box-shadow:0 12px 32px rgba(23,75,46,.055)}
.policy-placeholder-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.48) 45%,transparent 65%);transform:translateX(-120%);animation:policy-shimmer 4.8s ease-in-out infinite}
.policy-placeholder-image{height:220px;aspect-ratio:auto;display:grid;place-items:center;background:
 radial-gradient(circle at 25% 20%,rgba(206,225,178,.62),transparent 12rem),
 linear-gradient(145deg,#edf3e4,#f8f5ec)}
.policy-watermark{font-family:Georgia,serif;font-size:3.2rem;color:rgba(77,111,54,.20)}
.policy-placeholder-body{display:grid;gap:12px;padding:20px}
.policy-skeleton,.policy-skeleton-meta span{display:block;height:10px;border-radius:999px;background:linear-gradient(90deg,#dfe7d6,#f1eee6)}
.policy-skeleton-label{width:34%;height:8px;background:#d1dfc3}
.policy-skeleton-title{width:93%;height:15px}.policy-skeleton-title.short{width:68%}
.policy-skeleton.medium{width:78%}
.policy-skeleton-meta{display:grid;grid-template-columns:1fr .64fr;gap:16px;margin-top:8px}
.policy-skeleton-meta span{height:9px}
@keyframes policy-shimmer{0%,55%{transform:translateX(-130%)}82%,100%{transform:translateX(130%)}}

/* Extra depth while preserving the original architecture */
.section-heading h2{position:relative}
.info-card{background:linear-gradient(180deg,rgba(255,253,249,.98),rgba(247,248,239,.92))}
.quote-card{position:relative;overflow:hidden}
.quote-card::after{content:"";position:absolute;right:-28px;bottom:-42px;width:100px;height:100px;border-radius:50%;background:rgba(220,233,200,.26)}
.ambient-btn{backdrop-filter:blur(12px);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.ambient-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(23,75,46,.20)}

@media(max-width:880px){
  :root{--hero-h:auto;--page-hero-h:auto}
  .hero-card,.page-hero-card,.page-campanas .page-hero-card{height:auto;min-height:0}
  .hero-media{height:350px;min-height:350px}
  .hero-copy{height:auto;min-height:310px}
  .page-hero-copy{height:auto;min-height:300px}
  .page-hero-media,.page-campanas .page-hero-media{height:320px;min-height:320px}
  .card-media{height:205px}
  .theme-card{height:205px}
  .definition-band{grid-template-columns:82px 1fr;padding:30px}
  .definition-icon{width:78px;height:78px;border-radius:23px}
  .definition-icon svg{width:44px;height:44px}
}
@media(max-width:620px){
  .hero-media{height:270px;min-height:270px}
  .hero-copy{min-height:330px}
  .page-hero-copy{min-height:280px}
  .page-hero-media,.page-campanas .page-hero-media{height:250px;min-height:250px}
  .card-media{height:210px}
  .theme-card{height:190px}
  .definition-band{grid-template-columns:1fr;gap:20px;padding:27px 23px;border-radius:21px}
  .definition-icon{width:74px;height:74px}
  .definition-orbit{right:-30px;top:-28px}
  .definition-band h2{font-size:1.78rem}
  .definition-band p{font-size:.94rem}
  .definition-pill-row{gap:7px}
  .policy-placeholder-card{min-height:395px}
  .policy-placeholder-image{height:205px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .reveal{opacity:1;transform:none}
}

/* =========================================================
   Organic brush transitions and territorial ribbon v2.5
   ========================================================= */
.organic-section{
  isolation:isolate;
  overflow:visible;
  padding-top:82px;
  padding-bottom:82px;
}
.organic-section::before,
.organic-section::after{
  left:0;
  width:100%;
  height:70px;
  border-radius:0;
  background-color:transparent;
  background-image:url('../img/brush-edge-cream.svg');
  background-repeat:no-repeat;
  background-position:center;
  background-size:100% 100%;
  pointer-events:none;
  z-index:2;
}
.organic-section::before{top:-1px}
.organic-section::after{bottom:-1px;transform:rotate(180deg)}
.organic-section>.container{position:relative;z-index:3}

.territory-ribbon{
  position:relative;
  isolation:isolate;
  min-height:228px;
  margin-top:58px;
  overflow:hidden;
  color:#fff;
  background:#143d25;
}
.territory-ribbon::before,
.territory-ribbon::after{
  content:"";
  position:absolute;
  left:0;
  width:100%;
  height:72px;
  z-index:4;
  background:url('../img/brush-edge-cream.svg') center/100% 100% no-repeat;
  pointer-events:none;
}
.territory-ribbon::before{top:-1px}
.territory-ribbon::after{bottom:-1px;transform:rotate(180deg)}
.territory-ribbon-photo{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(90deg,rgba(10,42,23,.74),rgba(10,42,23,.18) 52%,rgba(10,42,23,.54)),
    url('../img/campaign-yasuni.png');
  background-position:center 47%;
  background-size:cover;
  transform:scale(1.02);
  filter:saturate(.92) contrast(1.06);
}
.territory-ribbon-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(9,40,22,.26));
}
.territory-ribbon-content{
  position:relative;
  z-index:3;
  min-height:228px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:58px;
  padding-bottom:58px;
}
.territory-ribbon-copy{
  max-width:650px;
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}
.territory-ribbon-copy .eyebrow{color:#d9e8bd;margin-bottom:6px}
.territory-ribbon-copy strong{
  display:block;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.7rem,3vw,2.8rem);
  line-height:1.08;
  letter-spacing:-.02em;
}
.territory-ribbon-copy p{margin:9px 0 0;color:rgba(255,255,255,.84);font-size:.95rem}
.territory-ribbon-top{
  flex:0 0 auto;
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.58);
  border-radius:50%;
  background:rgba(255,255,255,.92);
  color:var(--forest);
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  cursor:pointer;
  transition:transform .24s ease,background .24s ease,color .24s ease,box-shadow .24s ease;
}
.territory-ribbon-top:hover{
  transform:translateY(-4px);
  background:var(--forest);
  color:#fff;
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.territory-ribbon+.site-footer{margin-top:0}
.territory-ribbon+.site-footer .footer-wave{display:none}

/* Brush texture on selected section headings without changing layout */
.section-heading .flourish,
.toolbar .flourish{
  position:relative;
}
.section-heading .flourish::before,
.toolbar .flourish::before{
  content:"";
  width:64px;
  height:8px;
  opacity:.52;
  background:linear-gradient(90deg,transparent,var(--leaf) 18% 82%,transparent);
  clip-path:polygon(0 42%,13% 24%,27% 39%,43% 17%,58% 37%,74% 15%,100% 42%,86% 66%,68% 49%,51% 78%,33% 54%,15% 72%);
}

@media(min-width:1100px) and (prefers-reduced-motion:no-preference){
  .territory-ribbon-photo{background-attachment:fixed}
}
@media(max-width:880px){
  .organic-section{padding-top:72px;padding-bottom:72px}
  .territory-ribbon{min-height:210px;margin-top:46px}
  .territory-ribbon-content{min-height:210px;padding-top:52px;padding-bottom:52px}
  .territory-ribbon-photo{background-attachment:scroll;background-position:center}
}
@media(max-width:620px){
  .organic-section{padding-top:64px;padding-bottom:64px}
  .organic-section::before,.organic-section::after,
  .territory-ribbon::before,.territory-ribbon::after{height:54px;background-size:180% 100%}
  .territory-ribbon{min-height:205px;margin-top:36px}
  .territory-ribbon-content{min-height:205px;padding-top:48px;padding-bottom:48px;align-items:flex-end}
  .territory-ribbon-copy p{display:none}
  .territory-ribbon-top{width:48px;height:48px}
}
.organic-section-compact{padding-top:72px;padding-bottom:72px}
.organic-section-compact .section-heading{margin:0}

/* =========================================================
   V2.6 — organic transitions faithful to the approved sketch
   ========================================================= */

/* One clean paper-brush edge: no stacked waves or doubled contours. */
.organic-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:78px 0 72px;
  background:
    radial-gradient(circle at 13% 22%,rgba(200,221,168,.10),transparent 21rem),
    radial-gradient(circle at 87% 72%,rgba(200,221,168,.08),transparent 19rem),
    linear-gradient(135deg,#173f29 0%,#1e5534 54%,#19472d 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.06),inset 0 -1px rgba(0,0,0,.08);
}
.organic-section::before,
.organic-section::after{
  content:"";
  position:absolute;
  left:-1px;
  width:calc(100% + 2px);
  height:48px;
  pointer-events:none;
  z-index:2;
  border:0;
  border-radius:0;
  background:transparent url('../img/brush-edge-single.svg') center/100% 100% no-repeat;
}
.organic-section::before{top:-1px;transform:none}
.organic-section::after{bottom:-1px;transform:rotate(180deg)}
.organic-section>.container{position:relative;z-index:3}
.organic-section .section-heading{margin-bottom:34px}
.organic-section .section-heading h2{font-size:clamp(2.15rem,3.2vw,3.05rem);letter-spacing:-.025em}
.organic-section .flourish{margin-top:10px}
.organic-section .grid-5{gap:18px}

/* Cards preserve the hand-drawn five-module rhythm, but look more editorial. */
.theme-card{
  aspect-ratio:1.08/1;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.74);
  background:#173b27;
  box-shadow:0 16px 34px rgba(4,25,13,.22);
  transform:translateZ(0);
}
.theme-card::before{
  content:"";
  position:absolute;
  inset:8px;
  z-index:2;
  border:1px solid rgba(255,255,255,.24);
  border-radius:13px;
  pointer-events:none;
}
.theme-card::after{background:linear-gradient(180deg,rgba(8,28,17,.02) 28%,rgba(8,30,18,.84) 100%)}
.theme-card img{object-position:center;filter:saturate(.94) contrast(1.02);transition:transform .55s cubic-bezier(.2,.75,.25,1),filter .35s ease}
.theme-card span{
  left:14px;right:14px;bottom:16px;
  font-size:clamp(.92rem,1.1vw,1.08rem);
  letter-spacing:-.01em;
  text-shadow:0 2px 10px rgba(0,0,0,.55);
}
.theme-card:hover{transform:translateY(-5px);box-shadow:0 23px 42px rgba(4,25,13,.30)}
.theme-card:hover img{transform:scale(1.055);filter:saturate(1.04) contrast(1.04)}

/* The original site's forest brush becomes a shallow divider, not an extra content block. */
.forest-divider{
  position:relative;
  isolation:isolate;
  height:126px;
  margin-top:52px;
  overflow:hidden;
  background:#173f29;
}
.forest-divider::before{
  content:"";
  position:absolute;
  left:-1px;top:-1px;
  width:calc(100% + 2px);
  height:48px;
  z-index:3;
  background:url('../img/brush-edge-photo.svg') center/100% 100% no-repeat;
  pointer-events:none;
}
.forest-divider::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(10,46,25,.44),rgba(10,46,25,.08) 48%,rgba(10,46,25,.30));
}
.forest-divider-image{
  position:absolute;
  inset:0;
  background:url('../img/campaign-yasuni.png') center 44%/cover no-repeat;
  filter:saturate(.92) contrast(1.05);
  transform:scale(1.015);
}
.forest-divider-top{
  position:absolute;
  z-index:4;
  left:50%;top:58%;
  transform:translate(-50%,-50%);
  width:46px;height:46px;
  display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.75);
  border-radius:50%;
  background:rgba(255,253,248,.94);
  color:var(--forest);
  box-shadow:0 10px 26px rgba(0,0,0,.24);
  cursor:pointer;
  transition:transform .22s ease,background .22s ease,color .22s ease;
}
.forest-divider-top:hover{transform:translate(-50%,calc(-50% - 4px));background:var(--forest);color:#fff}

/* Footer remains the same four-column architecture, now visually connected to the divider. */
.forest-divider+.site-footer{margin-top:0}
.site-footer{margin-top:58px;padding-top:0;background:linear-gradient(180deg,#eef3e5 0,#fbf8f0 30%,#fffdf9 100%)}
.site-footer .footer-wave{display:none}
.footer-main{margin-top:0;border-top-left-radius:0;border-top-right-radius:0;border-top:0;box-shadow:0 16px 42px rgba(23,75,46,.07)}

/* Better spacing so the approved order reads clearly. */
.organic-section + .section{padding-top:64px}
.section + .forest-divider{margin-top:34px}

@media(max-width:1040px){
  .organic-section .grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .theme-card{aspect-ratio:1.35/1}
}
@media(max-width:720px){
  .organic-section{padding:66px 0 62px}
  .organic-section::before,.organic-section::after{height:38px;background-size:150% 100%}
  .organic-section .grid-5{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:3px 2px 16px;gap:14px}
  .theme-card{min-width:72vw;max-width:310px;aspect-ratio:1.22/1;scroll-snap-align:center}
  .forest-divider{height:104px;margin-top:38px}
  .forest-divider::before{height:38px;background-size:155% 100%}
  .forest-divider-top{width:42px;height:42px}
}

/* =========================================================
   V2.8 — authentic Yasuní forest separator
   ========================================================= */
.forest-divider{
  height:164px;
  margin-top:52px;
  background:#173f29;
  box-shadow:inset 0 18px 34px rgba(0,0,0,.08),0 -8px 28px rgba(23,75,46,.05);
}
.forest-divider::before{
  height:54px;
  background:url('../img/brush-edge-photo.svg') center top/100% 100% no-repeat;
  filter:drop-shadow(0 5px 8px rgba(23,75,46,.07));
}
.forest-divider::after{
  background:
    linear-gradient(180deg,rgba(8,35,20,.06),rgba(8,35,20,.28)),
    linear-gradient(90deg,rgba(7,38,20,.34),rgba(7,38,20,.03) 46%,rgba(7,38,20,.18));
  box-shadow:inset 0 -18px 32px rgba(8,35,20,.12);
}
.forest-divider-image{
  background-image:url('../img/yasuni-forest-divider.webp');
  background-position:center 61%;
  background-size:cover;
  filter:saturate(1.08) contrast(1.06) brightness(.92);
  transform:scale(1.01);
}
.forest-divider-image::after{
  content:'Yasuní · Amazonía ecuatoriana';
  position:absolute;
  left:clamp(24px,6vw,88px);
  bottom:17px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(14,53,30,.62);
  backdrop-filter:blur(8px);
  color:#fff;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.045em;
  text-shadow:0 1px 8px rgba(0,0,0,.35);
}
.forest-divider-top{
  top:61%;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.84);
  background:rgba(255,253,248,.91);
  backdrop-filter:blur(10px);
  box-shadow:0 12px 30px rgba(0,0,0,.22),0 0 0 6px rgba(255,255,255,.10);
}
.forest-divider-top:hover{
  background:#fff;
  color:var(--forest);
  box-shadow:0 16px 34px rgba(0,0,0,.25),0 0 0 7px rgba(255,255,255,.14);
}
.photo-credit{
  display:inline;
  margin-left:8px;
  font-size:.66rem;
  opacity:.78;
  font-weight:400;
}
.photo-credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.photo-credit a:hover{opacity:1}
@media(max-width:720px){
  .forest-divider{height:122px;margin-top:38px}
  .forest-divider::before{height:40px;background-size:150% 100%}
  .forest-divider-image{background-position:center 58%}
  .forest-divider-image::after{left:16px;bottom:10px;font-size:.62rem;padding:5px 9px}
  .forest-divider-top{width:42px;height:42px;top:60%}
  .photo-credit{display:block;margin:4px 0 0}
}


/* =========================================================
   V2.8 — clean editorial transitions, no irregular cutouts
   ========================================================= */

/* The thematic block keeps the approved structure, but becomes a clean,
   premium editorial panel instead of using clipped brush graphics. */
.organic-section{
  width:min(calc(100% - 32px), 1400px);
  margin:40px auto;
  padding:68px 0 64px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:34px;
  background:
    radial-gradient(circle at 9% 16%,rgba(214,231,187,.13),transparent 25rem),
    radial-gradient(circle at 91% 82%,rgba(214,231,187,.10),transparent 23rem),
    linear-gradient(135deg,#173f29 0%,#205936 52%,#18472d 100%);
  box-shadow:0 24px 60px rgba(16,61,35,.16),inset 0 1px rgba(255,255,255,.07);
}
.organic-section::before,
.organic-section::after{display:none!important}
.organic-section>.container{padding-inline:clamp(22px,4vw,58px)}
.organic-section .section-heading{margin-bottom:36px}
.organic-section .grid-5{gap:18px}
.theme-card{border-radius:20px;box-shadow:0 15px 34px rgba(4,25,13,.22)}
.theme-card::before{inset:7px;border-radius:14px}

/* Clean, high-resolution Yasuní panorama. No labels, brush masks,
   negative offsets or edge artifacts. */
.forest-divider{
  position:relative;
  isolation:isolate;
  width:min(calc(100% - 32px), 1180px);
  height:238px;
  margin:52px auto 24px;
  overflow:hidden;
  border:1px solid rgba(31,92,55,.18);
  border-radius:26px;
  background:#173f29;
  box-shadow:0 22px 52px rgba(23,75,46,.16),inset 0 0 0 1px rgba(255,255,255,.18);
}
.forest-divider::before{display:none!important}
.forest-divider::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(10,43,24,.02) 28%,rgba(10,43,24,.20) 100%),
    linear-gradient(90deg,rgba(10,43,24,.10),transparent 30%,transparent 70%,rgba(10,43,24,.08));
  box-shadow:inset 0 -1px rgba(255,255,255,.13);
}
.forest-divider-image{
  position:absolute;
  inset:0;
  background-image:url('../img/yasuni-forest-divider.webp');
  background-position:center 68%;
  background-size:cover;
  filter:none;
  transform:none;
}
.forest-divider-image::after{display:none!important;content:none!important}
.forest-divider-top{
  left:50%;
  top:50%;
  width:52px;
  height:52px;
  border:1px solid rgba(255,255,255,.82);
  background:rgba(255,253,248,.93);
  color:var(--forest);
  box-shadow:0 14px 36px rgba(0,0,0,.20),0 0 0 7px rgba(255,255,255,.10);
  backdrop-filter:blur(10px);
}
.forest-divider-top:hover{
  transform:translate(-50%,calc(-50% - 4px));
  background:#fff;
  color:var(--forest);
  box-shadow:0 18px 42px rgba(0,0,0,.23),0 0 0 8px rgba(255,255,255,.13);
}
.forest-divider+.site-footer{margin-top:0}
.site-footer{margin-top:60px}
.footer-main{border-radius:24px 24px 0 0}

@media(max-width:1040px){
  .organic-section{width:min(calc(100% - 24px), 1400px);border-radius:28px}
  .forest-divider{width:min(calc(100% - 24px), 1180px);height:205px;border-radius:22px}
}
@media(max-width:720px){
  .organic-section{width:calc(100% - 18px);margin:24px auto;padding:56px 0 50px;border-radius:24px}
  .organic-section>.container{padding-inline:16px}
  .forest-divider{width:calc(100% - 18px);height:170px;margin:36px auto 18px;border-radius:20px}
  .forest-divider-image{background-position:center 68%}
  .forest-divider-top{width:44px;height:44px}
}


/* ==========================================================
   V2.9 — Yasuní as the closing background of Home
   The forest is no longer a separate panel. It belongs to the
   final Home section and fades naturally into the footer.
   ========================================================== */
.page-home .home-closing-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding-bottom:clamp(190px,17vw,255px);
  margin-bottom:0;
  background:var(--cream);
}
.page-home .home-closing-section>.container{
  position:relative;
  z-index:2;
}
.page-home .home-closing-section::before{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  bottom:0;
  height:clamp(205px,18vw,275px);
  background-image:
    linear-gradient(180deg,rgba(251,247,238,.18) 0%,rgba(251,247,238,0) 40%,rgba(17,55,32,.16) 100%),
    url('../img/yasuni-forest-divider.webp');
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center 58%;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.22) 14%,#000 42%,#000 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.22) 14%,#000 42%,#000 100%);
  transform:scale(1.01);
}
.page-home .home-closing-section::after{
  content:"";
  position:absolute;
  z-index:1;
  left:0;
  right:0;
  bottom:0;
  height:clamp(80px,8vw,118px);
  background:linear-gradient(180deg,transparent 0%,rgba(17,55,32,.24) 100%);
  pointer-events:none;
}
.page-home main + .site-footer{
  margin-top:0;
}
.page-home main + .site-footer .footer-main{
  margin-top:0;
}
/* The old standalone forest separator is retired everywhere. */
.forest-divider{display:none!important}

@media (max-width:900px){
  .page-home .home-closing-section{
    padding-bottom:205px;
  }
  .page-home .home-closing-section::before{
    height:225px;
    background-position:center 62%;
  }
}
@media (max-width:620px){
  .page-home .home-closing-section{
    padding-bottom:170px;
  }
  .page-home .home-closing-section::before{
    height:188px;
    background-position:58% center;
  }
}

/* ==========================================================
   V3.1 — visual polish: richer thematic band + refined footer
   Same approved architecture, stronger editorial finish.
   ========================================================== */

/* --- Temáticas: full-width editorial landscape, not a plain panel --- */
.organic-section{
  position:relative;
  width:100%;
  margin:54px 0 0;
  padding:72px 0 76px;
  overflow:hidden;
  border:0;
  border-radius:0;
  color:#fff;
  background:
    radial-gradient(circle at 8% 8%,rgba(210,231,180,.16),transparent 28rem),
    radial-gradient(circle at 92% 85%,rgba(207,229,180,.12),transparent 26rem),
    linear-gradient(120deg,#123d27 0%,#1d5735 48%,#17482d 100%);
  box-shadow:
    inset 0 1px rgba(255,255,255,.08),
    inset 0 -1px rgba(255,255,255,.07),
    0 24px 52px rgba(23,75,46,.10);
}
.organic-section::before,
.organic-section::after{
  content:""!important;
  display:block!important;
  position:absolute;
  width:360px;
  height:360px;
  border:1px solid rgba(218,234,193,.11);
  border-radius:50%;
  pointer-events:none;
  background:none;
  z-index:0;
}
.organic-section::before{left:-180px;top:-210px}
.organic-section::after{right:-190px;bottom:-230px}
.organic-section>.container{position:relative;z-index:1;padding-inline:0}
.organic-section .section-heading{margin-bottom:38px}
.organic-section .section-heading h2{
  color:#fff;
  font-size:clamp(2.2rem,3.2vw,3.2rem);
  letter-spacing:-.025em;
  text-shadow:0 2px 18px rgba(0,0,0,.12);
}
.organic-section .flourish{color:#cfdfa9}
.organic-section .grid-5{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:17px;
  align-items:stretch;
}
.theme-card{
  position:relative;
  display:block;
  min-height:224px;
  aspect-ratio:auto;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.58);
  border-radius:18px;
  background:#173f29;
  box-shadow:
    0 18px 36px rgba(4,25,13,.25),
    inset 0 0 0 1px rgba(255,255,255,.10);
  transform:translateZ(0);
  transition:transform .34s var(--ease-out),box-shadow .34s var(--ease-out),border-color .34s ease;
}
.theme-card::before{
  content:"";
  position:absolute;
  inset:8px;
  z-index:2;
  border:1px solid rgba(255,255,255,.24);
  border-radius:12px;
  pointer-events:none;
}
.theme-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(5,25,14,.02) 22%,rgba(5,25,14,.16) 50%,rgba(5,25,14,.89) 100%),
    linear-gradient(120deg,rgba(255,255,255,.05),transparent 45%);
  transition:background .3s ease;
}
.theme-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(1.03);
  transition:transform .75s var(--ease-out),filter .35s ease;
}
.theme-card span{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:3;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.02rem,1.15vw,1.2rem);
  font-weight:700;
  line-height:1.12;
  text-align:left;
  text-shadow:0 3px 12px rgba(0,0,0,.42);
}
.theme-card span::before{
  content:"";
  display:block;
  width:32px;
  height:2px;
  margin-bottom:10px;
  border-radius:999px;
  background:#d4e6b0;
  box-shadow:0 0 18px rgba(212,230,176,.35);
}
.theme-card:hover{
  transform:translateY(-7px);
  border-color:rgba(232,242,216,.86);
  box-shadow:0 25px 52px rgba(4,25,13,.35),0 0 0 1px rgba(232,242,216,.10);
}
.theme-card:hover img{transform:scale(1.065);filter:saturate(1.06) contrast(1.04)}
.theme-card:hover::after{
  background:
    linear-gradient(180deg,rgba(5,25,14,0) 18%,rgba(5,25,14,.12) 48%,rgba(5,25,14,.82) 100%),
    linear-gradient(120deg,rgba(255,255,255,.08),transparent 48%);
}

/* --- Footer: same 4 blocks, cleaner and more institutional --- */
.site-footer{
  position:relative;
  margin-top:0;
  padding-top:0;
  border-top:0;
  background:
    linear-gradient(180deg,#eef3e5 0,#f8f5ed 30%,#fffdf9 100%);
}
.site-footer::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(66,105,58,.42) 16%,rgba(66,105,58,.42) 84%,transparent);
}
.site-footer .footer-wave{display:none!important}
.footer-main{
  display:grid;
  grid-template-columns:1.05fr .92fr 1.28fr 1.75fr;
  align-items:start;
  gap:0;
  margin:0 auto;
  padding:46px 0 40px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.footer-col{
  position:relative;
  min-width:0;
  padding:0 28px;
}
.footer-col:first-child{padding-left:0}
.footer-col:last-child{padding-right:0}
.footer-col:not(:first-child){
  border-left:1px solid rgba(91,119,74,.18);
}
.footer-brand{
  display:block;
  width:min(178px,100%);
  max-width:none;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.footer-logo{
  width:100%;
  max-height:126px;
  object-fit:contain;
  object-position:left center;
  background:transparent;
  filter:drop-shadow(0 8px 15px rgba(23,75,46,.06));
}
.footer-location{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:16px 0 0;
  padding:0;
  border-radius:0;
  background:transparent;
  color:var(--forest);
  font-family:Georgia,"Times New Roman",serif;
  font-size:.98rem;
  font-weight:700;
}
.footer-location span{
  display:grid;
  width:25px;height:25px;
  place-items:center;
  border-radius:50%;
  background:#e9f0dd;
  font-family:Arial,sans-serif;
  font-size:.75rem;
}
.footer-col h4{
  display:block;
  position:relative;
  margin:0 0 20px;
  padding-bottom:12px;
  color:var(--forest);
  font-size:1.16rem;
  letter-spacing:-.01em;
}
.footer-col h4::after{
  content:"";
  position:absolute;
  left:0;bottom:0;
  width:42px;height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--leaf),#b9cf94);
}
.footer-links ul{display:grid;gap:11px}
.footer-links a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:7px 0 9px;
  border:0;
  border-bottom:1px solid rgba(91,119,74,.16);
  border-radius:0;
  background:transparent;
  color:var(--forest);
  font-weight:700;
  transition:padding-left .22s ease,color .22s ease,border-color .22s ease;
}
.footer-links a span{
  display:grid;
  width:26px;height:26px;
  place-items:center;
  border-radius:50%;
  background:#edf3e5;
  font-size:.76rem;
  transition:.22s ease;
}
.footer-links a:hover{padding-left:5px;color:var(--forest-2);border-color:#9cb383;background:transparent;transform:none}
.footer-links a:hover span{background:var(--forest);color:#fff;transform:translate(2px,-2px)}
.footer-contact p{
  max-width:230px;
  margin:0 0 15px;
  color:var(--muted);
  font-size:.86rem;
  line-height:1.55;
}
.footer-email{
  display:inline-flex;
  max-width:100%;
  align-items:center;
  padding:10px 0 8px;
  border:0;
  border-bottom:1px solid rgba(91,119,74,.34);
  border-radius:0;
  background:transparent;
  color:var(--forest);
  font-size:.8rem;
  font-weight:800;
  line-height:1.35;
  box-shadow:none;
}
.footer-email::before{
  content:"✉";
  display:grid;
  flex:0 0 auto;
  width:29px;height:29px;
  margin-right:9px;
  place-items:center;
  border-radius:50%;
  background:#e8f0dc;
  font-size:.76rem;
}
.footer-email:hover{background:transparent;color:var(--forest-2);border-color:var(--forest)}
.support-logos{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.support-logos span{
  display:grid;
  min-height:70px;
  place-items:center;
  padding:10px;
  border:1px solid rgba(117,137,97,.18);
  border-radius:13px;
  background:rgba(255,255,255,.76);
  box-shadow:0 8px 22px rgba(23,75,46,.045);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.support-logos span:hover{
  transform:translateY(-3px);
  border-color:rgba(91,119,74,.35);
  box-shadow:0 14px 30px rgba(23,75,46,.08);
}
.support-logos img{max-width:100%;max-height:46px;object-fit:contain}
.footer-bottom{
  background:linear-gradient(90deg,#123d26 0%,#1b5634 55%,#16452c 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
.footer-bottom .container{
  min-height:56px;
  padding:13px 0;
  font-size:.74rem;
}
.photo-credit{margin-left:12px;opacity:.66;font-size:.68rem}
.to-top{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  transition:background .2s ease,transform .2s ease;
}
.to-top:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}

/* Home forest ending remains the background of the closing section. */
.page-home main + .site-footer .footer-main{padding-top:44px}

@media(max-width:1080px){
  .organic-section .grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .theme-card{min-height:238px}
  .footer-main{grid-template-columns:1fr 1fr;row-gap:32px}
  .footer-col{padding:0 25px}
  .footer-col:first-child,.footer-col:nth-child(3){padding-left:0;border-left:0}
  .footer-col:nth-child(3),.footer-col:nth-child(4){padding-top:28px;border-top:1px solid rgba(91,119,74,.15)}
}
@media(max-width:720px){
  .organic-section{margin-top:34px;padding:58px 0 62px}
  .organic-section .grid-5{
    display:flex;
    gap:14px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding:2px 2px 18px;
    scrollbar-width:none;
  }
  .organic-section .grid-5::-webkit-scrollbar{display:none}
  .theme-card{flex:0 0 min(78vw,285px);min-height:226px;scroll-snap-align:center}
  .footer-main{grid-template-columns:1fr;padding:35px 0 30px}
  .footer-col,.footer-col:first-child,.footer-col:last-child{padding:0}
  .footer-col:not(:first-child),.footer-col:nth-child(3),.footer-col:nth-child(4){
    border-left:0;
    border-top:1px solid rgba(91,119,74,.16);
    padding-top:23px;
    margin-top:23px;
  }
  .footer-brand{width:165px}
  .support-logos{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-bottom .container{align-items:flex-start}
  .photo-credit{display:block;margin:5px 0 0}
}

/* ==========================================================
   V3.1 — Temáticas como galería editorial premium
   Mantiene los cinco apartados y la estructura aprobada.
   ========================================================== */
.thematic-showcase{
  position:relative;
  margin:56px 0 0;
  padding:72px 0 86px;
  overflow:hidden;
  color:var(--ink);
  background:
    linear-gradient(180deg,rgba(248,245,236,.98),rgba(241,245,232,.98)),
    url('../img/paper-noise.png');
  box-shadow:inset 0 1px rgba(68,98,56,.10),inset 0 -1px rgba(68,98,56,.08);
}
.thematic-showcase::before{
  content:""!important;
  display:block!important;
  position:absolute;
  inset:0 0 auto;
  width:100%;
  height:46%;
  border:0;
  border-radius:0;
  background:
    radial-gradient(circle at 10% 10%,rgba(196,218,173,.16),transparent 26rem),
    radial-gradient(circle at 88% 26%,rgba(211,227,191,.13),transparent 24rem),
    linear-gradient(118deg,#153f29 0%,#205c39 56%,#17472e 100%);
  z-index:0;
}
.thematic-showcase::after{
  content:""!important;
  display:block!important;
  position:absolute;
  left:50%;
  top:43%;
  width:min(1180px,92vw);
  height:1px;
  transform:translateX(-50%);
  border:0;
  border-radius:0;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.24),transparent);
  z-index:0;
}
.thematic-showcase>.container{position:relative;z-index:1}
.thematic-intro{
  max-width:760px;
  margin:0 auto 42px;
  text-align:center;
  color:#fff;
}
.thematic-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:10px;
  color:#dce8c2;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.thematic-eyebrow::before,.thematic-eyebrow::after{
  content:"";
  width:34px;
  height:1px;
  background:rgba(220,232,194,.56);
}
.thematic-showcase .section-heading{margin:0 0 12px}
.thematic-showcase .section-heading h2{
  color:#fff;
  font-size:clamp(2.45rem,4vw,3.55rem);
  letter-spacing:-.035em;
  text-shadow:0 4px 24px rgba(4,26,14,.18);
}
.thematic-showcase .flourish{color:#d8e8b8}
.thematic-lead{
  max-width:690px;
  margin:0 auto;
  color:rgba(255,255,255,.82);
  font-size:1rem;
  line-height:1.7;
}
.thematic-showcase .thematic-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.thematic-showcase .theme-card{
  position:relative;
  display:flex;
  min-height:318px;
  aspect-ratio:auto;
  flex-direction:column;
  overflow:hidden;
  padding:8px;
  border:1px solid rgba(69,103,58,.18);
  border-radius:24px;
  background:rgba(255,253,248,.98);
  box-shadow:
    0 22px 44px rgba(22,61,37,.13),
    0 2px 0 rgba(255,255,255,.84) inset;
  transition:transform .38s var(--ease-out),box-shadow .38s var(--ease-out),border-color .28s ease;
}
.thematic-showcase .theme-card::before,
.thematic-showcase .theme-card::after{content:none}
.thematic-showcase .theme-media{
  position:relative;
  display:block;
  height:218px;
  overflow:hidden;
  border-radius:17px;
  background:#dce7d1;
}
.thematic-showcase .theme-media::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,31,17,.02) 42%,rgba(7,31,17,.26) 100%);
  pointer-events:none;
}
.thematic-showcase .theme-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.96) contrast(1.02);
  transition:transform .72s var(--ease-out),filter .35s ease;
}
.thematic-showcase .theme-index{
  position:absolute;
  z-index:2;
  top:13px;
  left:13px;
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid rgba(255,255,255,.56);
  border-radius:50%;
  color:#fff;
  background:rgba(17,62,36,.72);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  box-shadow:0 8px 20px rgba(5,27,14,.18);
}
.thematic-showcase .theme-meta{
  position:relative;
  display:flex;
  min-height:82px;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:19px 13px 13px;
  color:#173f29;
  text-align:left;
}
.thematic-showcase .theme-meta::before{
  content:"";
  position:absolute;
  top:0;
  left:13px;
  width:40px;
  height:2px;
  border-radius:999px;
  background:#89a86d;
}
.thematic-showcase .theme-meta strong{
  display:block;
  max-width:calc(100% - 46px);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.08rem;
  line-height:1.14;
  letter-spacing:-.012em;
}
.thematic-showcase .theme-arrow{
  display:grid;
  flex:0 0 38px;
  width:38px;
  height:38px;
  place-items:center;
  border:1px solid rgba(44,91,52,.22);
  border-radius:50%;
  color:#17482d;
  background:#eef4e5;
  font-size:1rem;
  transition:transform .3s var(--ease-out),background .25s ease,color .25s ease;
}
.thematic-showcase .theme-card:hover{
  transform:translateY(-9px);
  border-color:rgba(52,93,48,.36);
  box-shadow:0 30px 60px rgba(22,61,37,.20),0 2px 0 rgba(255,255,255,.9) inset;
}
.thematic-showcase .theme-card:hover img{transform:scale(1.06);filter:saturate(1.05) contrast(1.04)}
.thematic-showcase .theme-card:hover .theme-arrow{
  transform:translate(3px,-3px);
  color:#fff;
  background:#1b5634;
}
.thematic-showcase .theme-card:focus-visible{
  outline:3px solid rgba(197,219,169,.96);
  outline-offset:4px;
}

@media(max-width:1080px){
  .thematic-showcase .thematic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .thematic-showcase .theme-card{min-height:330px}
}
@media(max-width:720px){
  .thematic-showcase{margin-top:36px;padding:58px 0 66px}
  .thematic-showcase::before{height:41%}
  .thematic-intro{margin-bottom:34px;padding:0 14px}
  .thematic-lead{font-size:.94rem}
  .thematic-showcase .thematic-grid{
    display:flex;
    gap:15px;
    overflow-x:auto;
    padding:4px 4px 22px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .thematic-showcase .thematic-grid::-webkit-scrollbar{display:none}
  .thematic-showcase .theme-card{
    flex:0 0 min(82vw,300px);
    min-height:314px;
    scroll-snap-align:center;
  }
  .thematic-showcase .theme-media{height:210px}
}
/* Reset legacy overlay rules inside the redesigned thematic cards. */
.thematic-showcase .theme-card .theme-media,
.thematic-showcase .theme-card .theme-meta,
.thematic-showcase .theme-card .theme-index,
.thematic-showcase .theme-card .theme-arrow{
  left:auto;
  right:auto;
  bottom:auto;
  color:inherit;
  font-family:inherit;
  font-size:inherit;
  line-height:normal;
  text-align:inherit;
  text-shadow:none;
}
.thematic-showcase .theme-card .theme-index{position:absolute;top:13px;left:13px;color:#fff;font-size:.72rem;line-height:1}
.thematic-showcase .theme-card .theme-arrow{position:static;color:#17482d;font-size:1rem;line-height:1}


/* ==========================================================
   V3.2 — Temáticas: regreso al diseño clásico, más elegante
   Mantiene la franja verde, cinco imágenes y títulos superpuestos.
   ========================================================== */
.thematic-classic{
  position:relative;
  margin:54px 0 0;
  padding:70px 0 76px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 12% 12%,rgba(210,231,180,.13),transparent 24rem),
    radial-gradient(circle at 88% 88%,rgba(201,224,170,.10),transparent 27rem),
    linear-gradient(118deg,#143d27 0%,#205b38 52%,#16462d 100%);
  box-shadow:inset 0 1px rgba(255,255,255,.08),inset 0 -1px rgba(255,255,255,.07),0 22px 52px rgba(23,75,46,.10);
}
.thematic-classic::before,
.thematic-classic::after{
  content:""!important;
  display:block!important;
  position:absolute;
  pointer-events:none;
  z-index:0;
  background:none;
}
.thematic-classic::before{
  inset:0;
  width:auto;
  height:auto;
  border:0;
  border-radius:0;
  opacity:.22;
  background-image:
    linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.035) 49% 50%,transparent 51%),
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.05) 0 1px,transparent 1.5px);
  background-size:86px 86px,24px 24px;
}
.thematic-classic::after{
  right:-145px;
  bottom:-185px;
  width:340px;
  height:340px;
  border:1px solid rgba(226,240,205,.12);
  border-radius:50%;
  box-shadow:0 0 0 38px rgba(226,240,205,.026),0 0 0 78px rgba(226,240,205,.018);
}
.thematic-classic>.container{position:relative;z-index:1}
.thematic-classic-heading{margin-bottom:38px}
.thematic-classic .section-heading h2{
  color:#fff;
  font-size:clamp(2.35rem,3.7vw,3.25rem);
  letter-spacing:-.03em;
  text-shadow:0 4px 22px rgba(4,25,13,.17);
}
.thematic-classic .flourish{color:#d4e3b4}
.thematic-classic-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.thematic-classic .theme-card{
  position:relative;
  display:block;
  height:230px;
  min-height:230px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.48);
  border-radius:20px;
  background:#173f29;
  box-shadow:0 18px 40px rgba(4,25,13,.27),inset 0 0 0 1px rgba(255,255,255,.08);
  transform:translateZ(0);
  transition:transform .38s var(--ease-out),box-shadow .38s var(--ease-out),border-color .28s ease;
}
.thematic-classic .theme-card::before{
  content:"";
  position:absolute;
  inset:8px;
  z-index:3;
  border:1px solid rgba(255,255,255,.22);
  border-radius:13px;
  pointer-events:none;
}
.thematic-classic .theme-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(5,25,14,.02) 20%,rgba(5,25,14,.10) 46%,rgba(5,25,14,.88) 100%),
    linear-gradient(120deg,rgba(255,255,255,.055),transparent 46%);
  transition:background .35s ease;
}
.thematic-classic .theme-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:saturate(.98) contrast(1.035);
  transition:transform .78s var(--ease-out),filter .38s ease;
}
.thematic-classic .theme-card span{
  position:absolute;
  left:19px;
  right:19px;
  bottom:18px;
  z-index:4;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.02rem,1.12vw,1.2rem);
  font-weight:700;
  line-height:1.12;
  text-align:left;
  text-shadow:0 3px 14px rgba(0,0,0,.48);
}
.thematic-classic .theme-card span::before{
  content:"";
  display:block;
  width:34px;
  height:2px;
  margin-bottom:9px;
  border-radius:999px;
  background:linear-gradient(90deg,#d9e9b8,#9cbe78);
  box-shadow:0 0 18px rgba(217,233,184,.33);
}
.thematic-classic .theme-card:hover{
  transform:translateY(-7px);
  border-color:rgba(236,245,222,.86);
  box-shadow:0 28px 58px rgba(4,25,13,.36),0 0 0 1px rgba(236,245,222,.08);
}
.thematic-classic .theme-card:hover img{transform:scale(1.055);filter:saturate(1.06) contrast(1.045)}
.thematic-classic .theme-card:hover::after{
  background:
    linear-gradient(180deg,rgba(5,25,14,0) 18%,rgba(5,25,14,.08) 45%,rgba(5,25,14,.81) 100%),
    linear-gradient(120deg,rgba(255,255,255,.08),transparent 48%);
}
.thematic-classic .theme-card:focus-visible{outline:3px solid rgba(215,232,182,.95);outline-offset:5px}

@media(max-width:1080px){
  .thematic-classic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .thematic-classic .theme-card{height:242px;min-height:242px}
}
@media(max-width:720px){
  .thematic-classic{margin-top:36px;padding:58px 0 64px}
  .thematic-classic-heading{margin-bottom:30px}
  .thematic-classic-grid{
    display:flex;
    gap:15px;
    overflow-x:auto;
    padding:4px 4px 20px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
  }
  .thematic-classic-grid::-webkit-scrollbar{display:none}
  .thematic-classic .theme-card{
    flex:0 0 min(78vw,286px);
    height:224px;
    min-height:224px;
    scroll-snap-align:center;
  }
}

/* ==========================================================
   V3.3 — thematic panel with lighter visual weight + centered
   footer headings. The approved content structure is unchanged.
   ========================================================== */

/* Temáticas: retain the classic green composition, but reduce its
   visual footprint and give it a more deliberate editorial frame. */
.page-home .organic-section.thematic-classic{
  width:min(1180px,calc(100% - 72px));
  margin:48px auto 0;
  padding:52px 44px 58px;
  border:1px solid rgba(230,240,214,.22);
  border-radius:30px;
  background:
    radial-gradient(circle at 8% 2%,rgba(218,234,193,.11),transparent 22rem),
    radial-gradient(circle at 96% 92%,rgba(207,229,180,.09),transparent 20rem),
    linear-gradient(125deg,#17482d 0%,#1d5735 54%,#16462c 100%);
  box-shadow:
    inset 0 1px rgba(255,255,255,.09),
    inset 0 -1px rgba(255,255,255,.06),
    0 22px 48px rgba(17,61,37,.12);
}
.page-home .organic-section.thematic-classic::before,
.page-home .organic-section.thematic-classic::after{
  width:260px;
  height:260px;
  opacity:.72;
}
.page-home .organic-section.thematic-classic::before{left:-150px;top:-172px}
.page-home .organic-section.thematic-classic::after{right:-150px;bottom:-178px}
.page-home .thematic-classic .section-heading{margin-bottom:30px}
.page-home .thematic-classic .section-heading h2{
  font-size:clamp(2rem,2.9vw,2.85rem);
}
.page-home .thematic-classic-grid{
  gap:16px;
  max-width:1060px;
  margin-inline:auto;
}
.page-home .thematic-classic .theme-card{
  min-height:212px;
  border-radius:17px;
  box-shadow:0 15px 30px rgba(4,25,13,.23),inset 0 0 0 1px rgba(255,255,255,.08);
}
.page-home .thematic-classic .theme-card span{
  left:16px;
  right:16px;
  bottom:16px;
  font-size:clamp(.98rem,1.05vw,1.12rem);
}

/* Footer headings: centered consistently over their own columns. */
.site-footer .footer-col h4{
  width:100%;
  text-align:center;
}
.site-footer .footer-col h4::after{
  left:50%;
  transform:translateX(-50%);
}

@media(max-width:1080px){
  .page-home .organic-section.thematic-classic{
    width:min(930px,calc(100% - 48px));
    padding:50px 34px 55px;
  }
  .page-home .thematic-classic-grid{max-width:840px}
}
@media(max-width:720px){
  .page-home .organic-section.thematic-classic{
    width:calc(100% - 28px);
    margin-top:34px;
    padding:46px 18px 48px;
    border-radius:24px;
  }
  .page-home .thematic-classic .section-heading{margin-bottom:25px}
  .page-home .thematic-classic-grid{max-width:none}
}

/* ==========================================================
   V3.4 — Identidad del pie de página centrada
   Mantiene la misma estructura de cuatro columnas.
   ========================================================== */
.footer-identity{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.footer-identity .footer-brand{
  width:min(164px,100%);
  margin:0 auto;
  padding:10px 12px;
  border:1px solid rgba(91,119,74,.12);
  border-radius:18px;
  background:rgba(255,255,255,.58);
  box-shadow:0 12px 30px rgba(23,75,46,.055);
}
.footer-identity .footer-logo{
  display:block;
  width:100%;
  max-height:126px;
  margin:0 auto;
  object-fit:contain;
  object-position:center;
}
.footer-identity .footer-location{
  justify-content:center;
  margin:14px auto 0;
  text-align:center;
}
@media(max-width:980px){
  .footer-identity{align-self:stretch}
}
@media(max-width:720px){
  .footer-identity .footer-brand{width:158px}
}



/* ==============================================================
   Propuesta visual — overrides sobre la estructura aprobada v3.4
   Mantiene navegación, contenidos, filtros, búsqueda, música y rutas.
   ============================================================== */
html{scroll-padding-top:96px}
body{min-height:100vh}
.site-header,.hero-card,.page-hero-card,.card,.info-card,.theme-card,.footer-main,.btn,.filter-btn,.search-trigger,.inline-search input{transition:background .3s ease,border-color .3s ease,color .3s ease,box-shadow .35s ease,transform .35s ease}
.brand-logo{height:auto!important;object-fit:contain}
.hero-media img,.page-hero-media img,.card-media img,.theme-card img{image-rendering:auto}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


:root{--forest:#163d2a;--forest-2:#23583c;--leaf:#7a9860;--sage:#e0e8d4;--cream:#f4efe5;--paper:#fffaf0;--ink:#253128;--muted:#6d726a;--line:#d9d1c3;--radius:18px;--max:1210px;--shadow:0 12px 34px rgba(45,58,47,.07);--shadow-lg:0 22px 60px rgba(45,58,47,.12)}
body{background:linear-gradient(180deg,#f6f1e7 0,#f1ecdf 100%);font-family:Arial,"Segoe UI",sans-serif}
body::before{opacity:.022}
h1,h2,h3,.serif,.footer-col h4{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;letter-spacing:-.025em}
.container{width:min(calc(100% - 56px),var(--max))}
.site-header{background:rgba(246,241,231,.93)!important;border-bottom:1px solid rgba(22,61,42,.12)!important;box-shadow:none!important;backdrop-filter:blur(18px)}
.header-inner{min-height:94px!important}.brand{min-width:286px!important}.brand-logo{width:282px!important;max-width:29vw!important}
.main-nav{gap:30px}.main-nav a{font-size:.91rem!important}.main-nav a::after{height:1px!important;bottom:4px!important}.search-trigger{background:transparent!important;border-color:rgba(22,61,42,.2)!important;padding:10px 18px!important}
.hero{padding:34px 0 28px!important}.hero-card{height:440px!important;min-height:440px!important;grid-template-columns:1.08fr .92fr!important;border-radius:30px!important;border:1px solid rgba(22,61,42,.15)!important;box-shadow:0 22px 60px rgba(43,55,45,.08)!important;background:#fffaf0!important}
.hero-media,.hero-copy{height:440px!important}.hero-copy{padding:52px 58px!important;background:linear-gradient(145deg,#fffaf0,#f7f0e2)!important}
.hero-copy h1{font-size:clamp(2.8rem,4.4vw,4.45rem)!important;font-weight:500!important}.hero-copy p{font-size:1rem!important;line-height:1.62}.eyebrow{color:#728b5c!important;letter-spacing:.19em!important}
.hero-arrow{border-radius:8px!important;box-shadow:none!important;border-color:rgba(22,61,42,.19)!important}.hero-arrow:hover{transform:translateY(-50%) translateX(2px)!important}.hero-arrow.prev:hover{transform:translateY(-50%) translateX(-2px)!important}
.section,.section-tight{position:relative}.section-heading h2,.toolbar h2{font-weight:500!important}.flourish{color:#7f956b!important}.flourish span{font-size:.82rem!important}
.info-card{background:rgba(255,250,240,.76)!important;border:0!important;border-top:1px solid rgba(22,61,42,.16)!important;border-radius:0!important;box-shadow:none!important;padding:30px 26px!important}.info-card:hover{transform:none!important;background:rgba(255,250,240,.96)!important}.info-icon{background:transparent!important;border:1px solid rgba(22,61,42,.22)!important;width:58px!important;height:58px!important}
.card{border-radius:18px!important;border-color:rgba(22,61,42,.14)!important;background:#fffaf2!important;box-shadow:0 12px 32px rgba(49,58,48,.055)!important}.card:hover{box-shadow:0 20px 46px rgba(49,58,48,.105)!important;transform:translateY(-4px)!important}.card-media{height:226px!important}.card-body{padding:20px 20px 22px!important}
.btn{border-radius:7px!important}.btn-primary{background:#163d2a!important}.btn-outline{background:transparent!important;border-color:#8ea07b!important}.filter-btn{border-radius:6px!important;background:transparent!important}
.organic-section{width:min(calc(100% - 56px),1260px)!important;margin:56px auto!important;padding:54px 46px!important;border-radius:30px!important;background:linear-gradient(145deg,#153d29,#214f36)!important;box-shadow:0 24px 60px rgba(22,61,42,.14)!important}.organic-section::before,.organic-section::after{display:none!important}.organic-section>.container{width:100%!important;padding:0!important}.organic-section .section-heading{margin-bottom:32px!important}.organic-section .section-heading h2{font-weight:500!important}.organic-section .grid-5{gap:15px!important}.theme-card{height:196px!important;border-radius:13px!important;border:1px solid rgba(255,255,255,.28)!important;box-shadow:0 10px 25px rgba(0,0,0,.17)!important}.theme-card::before{display:none!important}.theme-card span{font-size:1rem!important;left:14px!important;bottom:14px!important}.theme-card span::before{width:24px!important;height:1px!important;margin-bottom:7px!important}
.page-hero-card{border-radius:28px!important;border-color:rgba(22,61,42,.14)!important;box-shadow:0 20px 50px rgba(43,55,45,.07)!important}.page-hero-copy{background:#fffaf0!important}.page-campanas .page-hero-media{clip-path:none!important;margin-left:0!important}.definition-band{border-radius:22px!important;background:linear-gradient(135deg,#173e2b,#2a6141)!important;padding:34px 40px!important}.quote-card{border-radius:4px!important}
.site-footer{background:#efe8da!important;border-top:1px solid rgba(22,61,42,.12)!important}.footer-main{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:42px 0!important}.footer-col:not(:first-child){border-left:1px solid rgba(22,61,42,.13)!important}.footer-col h4{text-align:center!important;font-size:1.15rem!important;font-weight:500!important}.footer-identity{text-align:center!important}.footer-brand{justify-content:center!important}.footer-location{margin-inline:auto!important}.footer-bottom{background:#153d29!important}.support-logos span{background:rgba(255,255,255,.52)!important;border-color:rgba(22,61,42,.12)!important}
@media(max-width:880px){.container{width:min(calc(100% - 28px),var(--max))}.organic-section{width:calc(100% - 28px)!important;padding:44px 24px!important}.hero-card{height:auto!important;min-height:0!important}.hero-media,.hero-copy{height:auto!important;min-height:320px!important}}


/* ==========================================================
   HÍBRIDO FINAL — Editorial Botánica + Temáticas Inmersivas
   Solo la sección Temáticas adopta el tratamiento inmersivo.
   El resto del sitio conserva íntegramente Editorial Botánica.
   ========================================================== */
.organic-section.thematic-classic{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:64px 0!important;
  padding:76px 0 82px!important;
  border-radius:0!important;
  overflow:hidden!important;
  color:#fff!important;
  background:
    linear-gradient(180deg,rgba(7,43,26,.77),rgba(7,43,26,.90)),
    url('../img/yasuni-forest-divider.webp') center 48%/cover no-repeat!important;
  box-shadow:
    inset 0 36px 74px rgba(0,0,0,.06),
    inset 0 -42px 84px rgba(0,0,0,.14)!important;
  isolation:isolate;
}
.organic-section.thematic-classic::before,
.organic-section.thematic-classic::after{
  display:none!important;
  content:none!important;
}
.organic-section.thematic-classic>.container{
  position:relative!important;
  z-index:2!important;
  width:min(calc(100% - 48px),1260px)!important;
  max-width:1260px!important;
  margin:0 auto!important;
  padding:0!important;
}
.thematic-classic-heading{margin-bottom:38px!important}
.organic-section.thematic-classic .section-heading h2{
  color:#fff!important;
  font-size:clamp(2.5rem,3.5vw,3.8rem)!important;
  font-weight:500!important;
  letter-spacing:-.03em!important;
  text-shadow:0 8px 30px rgba(0,0,0,.22)!important;
}
.organic-section.thematic-classic .flourish{color:#dbe8c5!important}
.organic-section.thematic-classic .thematic-classic-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.organic-section.thematic-classic .theme-card{
  position:relative!important;
  display:block!important;
  height:220px!important;
  min-height:220px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.38)!important;
  border-radius:22px!important;
  background:rgba(11,48,30,.42)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.30),inset 0 0 0 1px rgba(255,255,255,.05)!important;
  backdrop-filter:blur(3px)!important;
  transition:transform .38s var(--ease-out),box-shadow .38s var(--ease-out),border-color .28s ease!important;
}
.organic-section.thematic-classic .theme-card::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:9px!important;
  z-index:2!important;
  pointer-events:none!important;
  border:1px solid rgba(255,255,255,.20)!important;
  border-radius:15px!important;
  background:none!important;
}
.organic-section.thematic-classic .theme-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(180deg,rgba(3,22,13,.02) 28%,rgba(4,28,17,.16) 58%,rgba(3,26,15,.84) 100%)!important;
}
.organic-section.thematic-classic .theme-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  filter:saturate(1.02) contrast(1.025)!important;
  transition:transform .72s cubic-bezier(.2,.7,.2,1),filter .5s ease!important;
}
.organic-section.thematic-classic .theme-card span{
  position:absolute!important;
  left:18px!important;
  right:16px!important;
  bottom:17px!important;
  z-index:3!important;
  color:#fff!important;
  font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif!important;
  font-size:1.08rem!important;
  line-height:1.04!important;
  font-weight:700!important;
  text-align:left!important;
  text-shadow:0 3px 12px rgba(0,0,0,.56)!important;
}
.organic-section.thematic-classic .theme-card span::before{
  content:""!important;
  display:block!important;
  width:28px!important;
  height:1px!important;
  margin-bottom:8px!important;
  background:rgba(224,237,205,.82)!important;
}
.organic-section.thematic-classic .theme-card:hover{
  transform:translateY(-7px)!important;
  border-color:rgba(255,255,255,.68)!important;
  box-shadow:0 28px 62px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.07)!important;
}
.organic-section.thematic-classic .theme-card:hover img{
  transform:scale(1.055)!important;
  filter:saturate(1.08) contrast(1.035)!important;
}
@media(max-width:1050px){
  .organic-section.thematic-classic .thematic-classic-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  .organic-section.thematic-classic{
    margin:44px 0!important;
    padding:58px 0 62px!important;
    background-position:center!important;
  }
  .organic-section.thematic-classic>.container{
    width:min(calc(100% - 28px),1260px)!important;
  }
  .organic-section.thematic-classic .thematic-classic-grid{
    display:flex!important;
    gap:14px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    padding:3px 2px 12px!important;
    scrollbar-width:none!important;
  }
  .organic-section.thematic-classic .thematic-classic-grid::-webkit-scrollbar{display:none!important}
  .organic-section.thematic-classic .theme-card{
    flex:0 0 min(78vw,280px)!important;
    height:230px!important;
    scroll-snap-align:center!important;
  }
}

/* V4.1 — footer email fit + external feature image polish */
.footer-contact .footer-email{
  font-size:.72rem!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  gap:7px!important;
  padding-left:0!important;
  padding-right:0!important;
}
.footer-contact .footer-email::before{
  flex:0 0 27px!important;
  width:27px!important;
  height:27px!important;
  font-size:.72rem!important;
  margin-right:0!important;
}
.page-transiciones #territorios .split-feature>img{
  object-fit:cover;
  object-position:center;
  aspect-ratio:15/8.58;
  width:100%;
  height:auto;
  min-height:310px;
  max-height:390px;
  border-radius:18px;
}
@media(max-width:1080px){
  .footer-contact .footer-email{font-size:.68rem!important;letter-spacing:-.02em!important}
}
@media(max-width:880px){
  .footer-contact .footer-email{font-size:.75rem!important}
}
@media(max-width:620px){
  .footer-contact .footer-email{font-size:.74rem!important;white-space:nowrap!important}
  .page-transiciones #territorios .split-feature>img{min-height:240px;max-height:300px}
}
