/* Estilos extraídos de los archivos HTML originales */
:root{
  --verde:#34C759;
  --verde-deep:#1E8A3B;
  --amarillo:#FFC94D;
  --rosa:#FF73C0;
  --lila:#C7A3FF;
  --negro:#221F20;
  --crema:#FDF8EE;
  --crema-deep:#F7EFDB;
}
html{scroll-behavior:smooth;}
body{
  font-family:'Montserrat',sans-serif;
  background:var(--crema);
  color:var(--negro);
}
h1,h2,h3,h4,.display-font{
  font-family:'Quicksand',sans-serif;
  font-weight:700;
}
.eyebrow{
  font-family:'Montserrat',sans-serif;
  font-weight:700;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.stripe-bar{height:6px;display:flex;width:100%;}
.stripe-bar span{flex:1;}
.stripe-verde{background:var(--verde);} 
.stripe-amarillo{background:var(--amarillo);} 
.stripe-rosa{background:var(--rosa);} 
.stripe-lila{background:var(--lila);} 

/* Navbar */
.navbar-brand-wrap{display:flex;align-items:center;gap:.7rem;}
.navbar-brand-wrap img{height:52px;width:auto;}
.brand-title{font-family:'Quicksand',sans-serif;font-weight:700;color:var(--verde-deep);font-size:1.15rem;line-height:1.1;}
.brand-sub{font-size:.62rem;letter-spacing:.08em;color:var(--amarillo);font-weight:700;text-transform:uppercase;}
.nav-link-custom{font-weight:600;color:var(--negro)!important;font-size:.92rem;}
.nav-link-custom:hover,.nav-link-custom.active{color:var(--verde-deep)!important;}
.btn-donar{
  background:var(--verde);border:none;color:#fff;font-weight:700;
  border-radius:50px;padding:.55rem 1.4rem;font-size:.92rem;
  box-shadow:0 6px 16px rgba(52,199,89,.35);
  transition:transform .15s ease, box-shadow .15s ease;
}
.btn-donar:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(52,199,89,.45);color:#fff;}

/* Page header (banner used on interior pages) */
.page-header{
  position:relative;padding:3.2rem 0 2.6rem;overflow:hidden;
  background:
    radial-gradient(circle at 15% 20%, rgba(255,201,77,.18) 0, transparent 45%),
    radial-gradient(circle at 85% 10%, rgba(255,115,192,.16) 0, transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(199,163,255,.18) 0, transparent 45%),
    var(--crema);
}
.page-header-box{
  background:#fff;border-radius:24px;padding:2.4rem 2rem;
  box-shadow:0 10px 28px rgba(0,0,0,.05);text-align:center;
}
.page-header-box h1{color:var(--verde-deep);font-size:2.1rem;}
.page-header-box p{color:#5a5650;max-width:640px;margin:.6rem auto 0;}

/* Hero (home only) */
.hero{
  position:relative;
  padding:5.5rem 0 4rem;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 20%, rgba(255,201,77,.18) 0, transparent 45%),
    radial-gradient(circle at 85% 10%, rgba(255,115,192,.16) 0, transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(199,163,255,.18) 0, transparent 45%),
    var(--crema);
}
.hero img.hero-logo{max-width:340px;width:100%;filter:drop-shadow(0 18px 30px rgba(0,0,0,.12));}
.hero h1{font-size:2.6rem;color:var(--verde-deep);}
.hero p.lead{font-size:1.05rem;color:#4a4640;}
.hero-cta .btn-outline-brand{
  border:2px solid var(--verde-deep);color:var(--verde-deep);font-weight:700;
  border-radius:50px;padding:.55rem 1.4rem;background:transparent;
}
.hero-cta .btn-outline-brand:hover{background:var(--verde-deep);color:#fff;}

/* Metric pills */
.metric-card{
  background:#fff;border-radius:18px;padding:1.15rem 1.15rem;height:100%;
  box-shadow:0 8px 24px rgba(0,0,0,.05);border-top:5px solid var(--verde);
}
.metric-card.c2{border-top-color:var(--amarillo);} 
.metric-card.c3{border-top-color:var(--rosa);} 
.metric-card.c4{border-top-color:var(--lila);} 
.metric-year{font-weight:700;color:var(--verde-deep);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;}
.metric-title{font-family:'Quicksand',sans-serif;font-weight:700;font-size:1.05rem;margin:.25rem 0 .4rem;}
.metric-text{font-size:.85rem;color:#5a5650;margin:0;}

section{padding:4.5rem 0;}
.section-title{color:var(--verde-deep);}
.section-lead{color:#5a5650;max-width:680px;}

/* Objetivo */
.objetivo-box{
  background:#fff;border-radius:24px;padding:2.5rem;
  box-shadow:0 10px 30px rgba(0,0,0,.05);
  border-left:8px solid var(--rosa);
}

/* Mision / vision */
.mv-card{background:#fff;border-radius:22px;padding:2rem;height:100%;box-shadow:0 8px 24px rgba(0,0,0,.05);} 
.mv-icon{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;margin-bottom:1rem;} 
.mv-icon.verde-bg{background:rgba(52,199,89,.15);color:var(--verde-deep);} 
.mv-icon.amarillo-bg{background:rgba(255,201,77,.25);color:#a5730c;}

/* Valores */
.valor-card{background:#fff;border-radius:18px;padding:1.6rem 1.3rem;height:100%;text-align:center;box-shadow:0 6px 18px rgba(0,0,0,.05);transition:transform .15s ease;}
.valor-card:hover{transform:translateY(-5px);} 
.valor-emoji{font-size:1.9rem;margin-bottom:.6rem;display:block;} 
.valor-card h5{font-family:'Quicksand',sans-serif;font-weight:700;font-size:1rem;} 
.valor-card p{font-size:.82rem;color:#5a5650;margin:0;}

/* Timeline */
.timeline{position:relative;padding-left:2.2rem;} 
.timeline::before{content:"";position:absolute;left:9px;top:6px;bottom:6px;width:3px;background:linear-gradient(var(--verde),var(--amarillo),var(--rosa),var(--lila));border-radius:3px;} 
.timeline-item{position:relative;margin-bottom:1.8rem;} 
.timeline-item::before{content:"";position:absolute;left:-2.2rem;top:6px;width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid var(--verde-deep);} 
.timeline-card{background:#fff;border-radius:16px;padding:1.2rem 1.4rem;box-shadow:0 6px 16px rgba(0,0,0,.05);} 
.timeline-year{font-family:'Quicksand',sans-serif;font-weight:700;color:var(--rosa);font-size:1.15rem;} 
.badge-soft{font-weight:700;border-radius:50px;padding:.35rem .8rem;font-size:.7rem;} 
.badge-inicio{background:rgba(255,115,192,.18);color:#a5306f;} 
.badge-presente{background:rgba(52,199,89,.18);color:var(--verde-deep);} 

/* Equipo */
.team-card{background:#fff;border-radius:20px;padding:1.8rem;height:100%;box-shadow:0 8px 22px rgba(0,0,0,.05);border-top:6px solid var(--verde);} 
.team-card.dir{border-top-color:var(--amarillo);} 
.team-card.lid{border-top-color:var(--lila);} 
.team-tag{font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--verde-deep);} 
.team-role{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#8a8580;letter-spacing:.04em;margin-top:.5rem;} 
.team-name{font-family:'Quicksand',sans-serif;font-weight:700;font-size:1.15rem;margin:.15rem 0 .5rem;} 
.team-desc{font-size:.85rem;color:#5a5650;} 

/* Donar section */
.donar-section{background:linear-gradient(135deg, rgba(52,199,89,.10), rgba(255,201,77,.10) 40%, rgba(255,115,192,.10) 70%, rgba(199,163,255,.12));border-radius:32px;margin:0 auto;max-width:1140px;text-align:center;padding:3.5rem 2rem;} 
.btn-donar-grande{background:var(--rosa);border:none;color:#fff;font-weight:700;border-radius:50px;padding:.85rem 2.2rem;font-size:1.05rem;box-shadow:0 10px 24px rgba(255,115,192,.4);} 
.btn-donar-grande:hover{background:#e6579f;color:#fff;} 

/* Modal */
.modal-content{border-radius:22px;overflow:hidden;border:none;} 
.modal-header-custom{background:var(--crema-deep);padding:1.4rem 1.6rem 1rem;border:none;} 
.modal-header-custom h5{color:var(--verde-deep);font-family:'Quicksand',sans-serif;font-weight:700;} 
.donar-tabs .nav-link{border-radius:50px!important;font-weight:700;color:var(--negro);font-size:.85rem;border:none;padding:.55rem 1rem;} 
.donar-tabs .nav-link.active{background:var(--verde);color:#fff;} 
.donar-info-box{background:var(--crema);border-radius:16px;padding:1.3rem 1.4rem;} 
.cuenta-box{background:var(--negro);color:#fff;border-radius:16px;padding:1.4rem;} 
.cuenta-box .numero{color:var(--amarillo);font-weight:700;font-size:1.3rem;letter-spacing:.04em;} 
.btn-copiar{background:var(--amarillo);border:none;color:var(--negro);font-weight:700;border-radius:50px;font-size:.82rem;} 
.contact-line{background:var(--crema);border-radius:50px;padding:.75rem 1.2rem;font-size:.88rem;} 
.especie-card{background:var(--crema);border-radius:16px;padding:1.1rem 1.2rem;height:100%;} 
.especie-card h6{font-family:'Quicksand',sans-serif;font-weight:700;font-size:.92rem;} 

/* Footer icons */
.footer-icons{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.footer-icons img{width:36px;height:36px;object-fit:contain;border-radius:6px;background:#fff;padding:4px;box-shadow:0 4px 12px rgba(0,0,0,.06)}
.foot-links{padding-left:1rem;margin:0}
.foot-links li{margin:.3rem 0}
.foot-links a{color:var(--negro);text-decoration:none}
.foot-links a:hover{text-decoration:underline}
.especie-card p{font-size:.8rem;color:#5a5650;margin:0;} 

/* Nuevos estilos para iconos en programas y footer */
.program-icon{width:72px;height:72px;object-fit:contain;border-radius:10px;background:#fff;padding:6px;box-shadow:0 8px 18px rgba(0,0,0,.06)}
.program-note{font-size:.85rem;color:#6b6661;margin-top:.5rem}
.foot-link-icon{width:20px;height:20px;vertical-align:middle;margin-right:.5rem}
.especie-icon{width:56px;height:56px;object-fit:contain;border-radius:8px;background:#fff;padding:5px;box-shadow:0 6px 16px rgba(0,0,0,.06);margin-right:.6rem}


.impact-box{background:#fff;border:2px dashed var(--lila);border-radius:16px;padding:1.3rem 1.4rem;} 
.impact-amount{font-family:'Quicksand',sans-serif;font-weight:700;color:var(--verde-deep);font-size:1.3rem;} 
.form-range::-webkit-slider-thumb{background:var(--verde);} 
.form-range::-moz-range-thumb{background:var(--verde);} 
.impact-stat{background:var(--crema);border-radius:12px;padding:.9rem;text-align:center;} 
.impact-stat .num{font-family:'Quicksand',sans-serif;font-weight:700;font-size:1.4rem;color:var(--rosa);} 
.impact-stat .lbl{font-size:.72rem;color:#5a5650;} 

footer{background:var(--negro);color:#f2ece0;padding:1.6rem 0 0.8rem;} 
footer a{color:var(--amarillo);text-decoration:none;} 
footer h6{font-family:'Quicksand',sans-serif;font-weight:700;color:#fff;} 
footer .foot-sub{font-size:.85rem;color:#c9c4bb;} 

/* Mejoras de responsividad para el footer */
.site-footer .row{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;align-items:flex-start;}
.site-footer .col-md-4{flex:1 1 280px;max-width:340px;}
.site-footer .col-md-4 > *{text-align:left}
.site-footer .mb-3{margin-bottom:.45rem !important}

/* reducir espacio entre hr y texto */
.site-footer hr{margin:.8rem 0}

/* Si el espacio se reduce, mostrar 2 columnas centradas */
@media (max-width: 992px){
  .site-footer .col-md-4{flex:1 1 45%;max-width:48%;}
  .site-footer .col-md-4 > *{text-align:center}
  .footer-icons{justify-content:center}
}

/* En pantallas pequeñas, una columna centrada */
@media (max-width: 576px){
  .site-footer .col-md-4{flex:1 1 100%;max-width:100%;}
  .site-footer .col-md-4 > *{text-align:center}
}

@media (max-width:767px){
  .hero h1{font-size:2rem;}
  section{padding:3rem 0;}
}
