
:root{
  --green-950:#26330f;
  --green-850:#344715;
  --green-700:#557016;
  --green-600:#6f8f1d;
  --green-200:#e5efbd;
  --green-100:#f4f8e7;
  --yellow:#f5d84b;
  --cream:#fffdf2;
  --ink:#1f2617;
  --muted:#626b58;
  --line:#d9e1c7;
  --shadow:0 18px 50px rgba(38,51,15,.12);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}.container{width:min(1140px,92vw);margin-inline:auto}.skip-link{position:absolute;left:-999px;top:0;background:#fff;padding:.7rem 1rem;z-index:1000}.skip-link:focus{left:1rem;top:1rem}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,242,.93);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:1rem}.brand img{width:280px;display:block}.nav{display:flex;align-items:center;gap:.35rem}.nav-link{padding:.7rem .9rem;border-radius:999px;font-weight:700;color:var(--green-850);font-size:.95rem}.nav-link:hover,.nav-link.active{background:var(--green-100);color:var(--green-950)}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:.45rem .7rem;font-size:1.4rem}.hero{background:radial-gradient(circle at 85% 20%,rgba(245,216,75,.45),transparent 30%),linear-gradient(135deg,var(--green-950),var(--green-700));color:#fff;padding:86px 0 74px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(290px,.65fr);gap:3rem;align-items:center}.eyebrow,.section-label{display:inline-flex;letter-spacing:.08em;text-transform:uppercase;font-weight:900;font-size:.78rem;color:var(--green-600);margin-bottom:.65rem}.hero .eyebrow,.section-label.light{color:var(--yellow)}h1,h2,h3{line-height:1.08;margin:0 0 1rem}h1{font-size:clamp(2.4rem,6vw,5.4rem);letter-spacing:-.055em}h2{font-size:clamp(1.8rem,3vw,3.1rem);letter-spacing:-.04em}h3{font-size:1.15rem}.hero p{font-size:1.18rem;max-width:720px;color:rgba(255,255,255,.88)}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.7rem}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.85rem 1.15rem;font-weight:900;border:1px solid transparent;transition:.2s ease}.btn.primary{background:var(--yellow);color:var(--green-950)}.btn.ghost{border-color:rgba(255,255,255,.45);color:#fff}.btn.light{background:#fff;color:var(--green-950)}.btn.small{padding:.65rem .9rem;background:var(--green-850);color:#fff;font-size:.9rem}.btn:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.hero-panel{display:grid;gap:1rem}.stat{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);padding:1.35rem;backdrop-filter:blur(10px)}.stat strong{display:block;font-size:2.4rem;line-height:1;color:var(--yellow)}.stat span{color:rgba(255,255,255,.84);font-weight:700}.intro-section{padding:72px 0 46px}.intro-section p,.content-page p{font-size:1.08rem;color:var(--muted)}.intro-section h2{max-width:850px}.feature-band{background:var(--green-100);padding:34px 0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.feature-grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;box-shadow:0 10px 25px rgba(38,51,15,.06)}.section{padding:62px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.text-link{font-weight:900;color:var(--green-700);border-bottom:2px solid var(--yellow)}.cards{display:grid;gap:1rem}.cards.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;box-shadow:0 12px 28px rgba(38,51,15,.07);display:flex;flex-direction:column;min-height:210px}.card-meta,.pill{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--green-600);margin-bottom:.65rem}.card p{color:var(--muted);margin:.1rem 0 1rem}.card-link{margin-top:auto;font-weight:900;color:var(--green-700)}.cta{background:linear-gradient(135deg,var(--green-850),var(--green-600));color:#fff;margin-top:40px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:54px 0}.cta p{color:rgba(255,255,255,.84)}.page-hero{background:linear-gradient(135deg,var(--green-100),#fff);padding:74px 0 48px;border-bottom:1px solid var(--line)}.page-hero p{font-size:1.15rem;max-width:860px;color:var(--muted)}.content-page{padding:60px 0;max-width:920px}.content-page h2{font-size:2rem;margin-top:2rem}.objective-list{display:grid;gap:1rem;margin:1.4rem 0}.objective-list article{display:grid;grid-template-columns:58px 1fr;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.objective-list span{display:grid;place-items:center;background:var(--green-100);border-radius:16px;font-weight:950;color:var(--green-700)}.objective-list p{margin:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.toolbar span{font-weight:800;color:var(--muted)}.search-input{width:min(520px,100%);border:1px solid var(--line);border-radius:999px;padding:1rem 1.15rem;font-size:1rem;background:#fff}.resource-list{display:grid;gap:.75rem}.resource-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid var(--line);border-radius:18px;padding:1rem 1.1rem;box-shadow:0 8px 22px rgba(38,51,15,.05)}.resource-row h3{margin:.2rem 0}.resource-row p{margin:0;color:var(--muted)}.publication-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.publication-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 28px rgba(38,51,15,.07);display:flex;flex-direction:column}.publication-card img,.cover-placeholder{width:100%;height:230px;object-fit:contain;background:var(--green-100);display:grid;place-items:center;font-weight:950;color:var(--green-700);font-size:2rem}.publication-card div:last-child{padding:1.1rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.contact-card.accent{background:var(--green-100)}.big-link{display:inline-block;font-size:1.25rem;font-weight:950;color:var(--green-700);margin-top:.5rem}.note-box{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem!important}.site-footer{background:var(--green-950);color:#fff;margin-top:0;padding:46px 0}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:2rem}.footer-logo{width:260px;background:#eef7c9;border-radius:10px}.site-footer p,.site-footer a{color:rgba(255,255,255,.78)}.site-footer a{display:block;margin:.45rem 0}.site-footer h3{color:var(--yellow)}.small{font-size:.88rem}.hidden{display:none!important}@media (max-width:860px){.menu-toggle{display:block}.nav{display:none;position:absolute;left:4vw;right:4vw;top:76px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:.65rem;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav-link{border-radius:12px}.brand img{width:220px}.hero-grid,.feature-grid,.cards.three,.publication-grid,.contact-grid,.footer-grid{grid-template-columns:1fr}.hero{padding:58px 0}.section-head,.cta-inner,.toolbar,.resource-row{align-items:flex-start;flex-direction:column}.publication-card img,.cover-placeholder{height:190px}}

/* Ajuste estético del encabezado: identidad RALLT visible sin saturar el menú */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  overflow:hidden;
  border-bottom:1px solid rgba(85,112,22,.18);
  background:
    radial-gradient(circle at 12% 15%, rgba(245,216,75,.24), transparent 32%),
    radial-gradient(circle at 96% 15%, rgba(111,143,29,.14), transparent 34%),
    linear-gradient(90deg,#fbffe2 0%, #fffdf2 42%, #f0f6d7 100%);
  backdrop-filter:blur(14px);
}
.site-header::before{
  content:none;
}
.site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:linear-gradient(90deg,var(--yellow),var(--green-600),var(--green-850));
  opacity:.72;
}
.header-inner{
  min-height:88px;
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem;
}
.brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.brand img{
  width:280px;
  display:block;
  border-radius:14px;
  background:#f7fbce;
  border:1px solid rgba(85,112,22,.16);
  box-shadow:0 12px 28px rgba(38,51,15,.10);
}
.nav{
  display:flex;
  align-items:center;
  gap:.25rem;
  padding:.42rem;
  border-radius:999px;
  background:rgba(255,253,242,.84);
  border:1px solid rgba(217,225,199,.9);
  box-shadow:0 12px 28px rgba(38,51,15,.08);
  backdrop-filter:blur(16px);
}
.nav-link{
  padding:.72rem 1rem;
  border-radius:999px;
  font-weight:800;
  color:var(--green-850);
}
.nav-link:hover,
.nav-link.active{
  background:linear-gradient(135deg,var(--green-100),#fffbea);
  color:var(--green-950);
  box-shadow:inset 0 0 0 1px rgba(85,112,22,.08);
}
.menu-toggle{
  border:1px solid rgba(85,112,22,.18);
  background:rgba(255,253,242,.92);
  box-shadow:0 8px 20px rgba(38,51,15,.08);
}
@media (max-width:980px){
  .brand img{width:235px;}
  .nav-link{padding:.65rem .75rem;font-size:.9rem;}
}
@media (max-width:860px){
  .site-header::before{content:none;}
  .header-inner{min-height:78px;}
  .brand img{width:210px;border-radius:12px;}
  .nav{
    display:none;
    position:absolute;
    left:4vw;
    right:4vw;
    top:78px;
    background:rgba(255,253,242,.98);
    border-radius:18px;
    padding:.7rem;
    box-shadow:var(--shadow);
    flex-direction:column;
    align-items:stretch;
  }
  .nav.open{display:flex;}
  .nav-link{border-radius:12px;}
}


/* Ajustes visuales home más atractiva */

.hero-grid-collage{grid-template-columns:minmax(0,1.05fr) minmax(320px,.9fr);}
.hero-collage-wrap{position:relative}
.hero-collage{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:stretch}
.hero-cover{display:block;overflow:hidden;border-radius:20px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);box-shadow:0 18px 40px rgba(0,0,0,.16);min-height:160px}
.hero-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.hero-cover:hover img{transform:scale(1.04)}
.hero-cover.tall{grid-row:span 2;min-height:338px}
.hero-cover.wide{grid-column:span 2;min-height:160px}
.hero-collage-badge{position:absolute;right:-8px;bottom:-16px;background:#fff;color:var(--green-950);border-radius:20px;padding:1rem 1.15rem;box-shadow:var(--shadow);border:1px solid var(--line);max-width:220px}
.hero-collage-badge strong{display:block;font-size:2.2rem;line-height:1;color:var(--green-700)}
.hero-collage-badge span{display:block;font-weight:800;color:var(--muted)}
.section-tight{padding-top:42px}
.intro-tight{padding-top:16px}
.message-band{padding:16px 0 10px}
.message-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.message-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem;box-shadow:0 10px 28px rgba(38,51,15,.06)}
.message-card h3{font-size:1.08rem;line-height:1.3;margin:0;color:var(--green-950)}
.message-feature-band{padding-top:18px}
.spotlight-card{background:linear-gradient(180deg,#fff,#f7fbef)}
.home-publication-grid .publication-card img{height:290px;object-fit:cover;background:#eef3d7}
@media (max-width:980px){
  .hero-grid-collage{grid-template-columns:1fr;}
  .hero-collage{margin-top:1rem;}
  .message-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .hero-collage{grid-template-columns:repeat(2,1fr);}
  .hero-cover.tall,.hero-cover.wide{grid-column:auto;grid-row:auto;min-height:180px;}
  .hero-collage-badge{position:static;margin-top:12px;max-width:none;}
  .home-publication-grid .publication-card img{height:220px;}
}


/* Ajustes 5: más impacto visual y carga más liviana */
.hero-copy{max-width:760px}
.hero-pills{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0 1rem}
.hero-pill{display:inline-flex;align-items:center;padding:.45rem .75rem;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);font-weight:800;color:#fff;font-size:.92rem;backdrop-filter:blur(6px)}
.hero-collage{grid-template-columns:1.02fr .98fr .98fr;gap:12px}
.hero-cover{min-height:150px}
.hero-cover.tall{min-height:322px}
.hero-cover.wide{grid-column:span 2;min-height:170px}
.hero-collage-wrap{padding:8px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.09)}
.hero-collage-badge{backdrop-filter:blur(8px)}
.hero h1{max-width:8ch}
.pdf-note{margin:.5rem 0 0;color:var(--muted);font-size:.95rem;max-width:720px}
.publication-card img{object-fit:cover}
@media (max-width:980px){.hero h1{max-width:none}.pdf-note{max-width:none}}


/* Ajustes 6: PDFs locales más rápidos y hero más corto */
.hero{padding:54px 0 42px}
.hero-grid{gap:2rem}
.hero-copy p{margin-bottom:.35rem}
.hero h1{font-size:clamp(2.2rem,5vw,4.8rem)}
.hero-cover.tall{min-height:280px}
.hero-cover.wide{min-height:150px}
.hero-cover{min-height:138px}
.pdf-note{font-size:.92rem;color:var(--muted);margin:.45rem 0 0;max-width:760px}
.toolbar-note{margin:0 0 1rem}
@media (max-width:860px){
  .hero{padding:42px 0 32px}
}


/* Ajustes 7: collage con más imágenes y una sola cápsula informativa */
.hero-pills{margin:1rem 0 .8rem}
.hero-collage{grid-template-columns:1.12fr repeat(3,.92fr);gap:12px;align-items:stretch}
.hero-cover{min-height:128px}
.hero-cover.tall{grid-row:span 2;min-height:268px}
.hero-cover.wide{grid-column:span 2;min-height:140px}
.hero-cover img{width:100%;height:100%;object-fit:cover;display:block}
.hero-collage-wrap{padding:10px}
.hero-collage-badge{right:-2px;bottom:-10px}
@media (max-width:980px){
  .hero-collage{grid-template-columns:repeat(3,1fr)}
  .hero-cover.tall{grid-row:span 2;min-height:220px}
}
@media (max-width:640px){
  .hero-collage{grid-template-columns:repeat(2,1fr)}
  .hero-cover,.hero-cover.tall,.hero-cover.wide{grid-column:auto;grid-row:auto;min-height:160px}
}


/* Ajustes 8: dos imágenes extra en collage y año actualizado */
.hero-collage{grid-template-columns:1.12fr repeat(4,.88fr);gap:12px;align-items:stretch}
.hero-cover{min-height:120px}
.hero-cover.tall{grid-row:span 2;min-height:270px}
.hero-cover.wide{grid-column:span 2;min-height:138px}
.hero-collage-badge{max-width:230px}
.hero-pills{display:flex;gap:.6rem;flex-wrap:wrap}
@media (max-width:1100px){
  .hero-collage{grid-template-columns:repeat(4,1fr)}
}
@media (max-width:860px){
  .hero-collage{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:640px){
  .hero-collage{grid-template-columns:repeat(2,1fr)}
  .hero-cover,.hero-cover.tall,.hero-cover.wide{grid-column:auto;grid-row:auto;min-height:155px}
}


/* Ajuste 9: dejar solo la cápsula de +25 años */
.hero-collage-badge{display:none !important;}


/* Ajuste 11: agregar panel 32 publicaciones en el espacio vacío del collage */
.hero-collage-panel{grid-column:span 3;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;background:#f4f3ef;color:var(--green-950);border-radius:24px;padding:1.2rem 1.35rem;box-shadow:0 18px 40px rgba(0,0,0,.12);border:1px solid rgba(255,255,255,.45);min-height:150px}
.hero-collage-panel strong{display:block;font-size:3rem;line-height:.95;color:var(--green-700);font-weight:900}
.hero-collage-panel span{display:block;font-size:1.45rem;line-height:1.15;font-weight:800;color:#6a6f60;max-width:12ch;margin-top:.45rem}
@media (max-width:1100px){.hero-collage-panel{grid-column:span 2;min-height:138px}.hero-collage-panel strong{font-size:2.5rem}.hero-collage-panel span{font-size:1.2rem}}
@media (max-width:640px){.hero-collage-panel{grid-column:1/-1;min-height:130px}.hero-collage-panel strong{font-size:2.2rem}.hero-collage-panel span{font-size:1.05rem}}


/* Cambios solicitados por cliente: noticias, nuevos materiales y nav ajustado */
.nav{gap:.18rem;}
.nav-link{padding:.68rem .78rem;font-size:.92rem;}
@media (max-width:1080px){.brand img{width:240px}.nav-link{padding:.62rem .62rem;font-size:.86rem}}
#home-noticias .card{background:linear-gradient(180deg,#fff,#f8fbef)}
.publication-card:nth-child(-n+3){border-color:rgba(111,143,29,.45);box-shadow:0 16px 36px rgba(38,51,15,.10)}
.resource-row .pill{white-space:nowrap}
/* FIX DEFINITIVO MENU MOVIL */
.site-header,
.header-inner{
  overflow: visible !important;
}
.menu-toggle{
  cursor: pointer;
  touch-action: manipulation;
}
@media (max-width: 860px){
  .site-header{
    overflow: visible !important;
    z-index: 99999 !important;
  }
  .header-inner{
    overflow: visible !important;
  }
  .menu-toggle{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    min-height: 54px;
    font-size: 1.8rem;
    z-index: 100001 !important;
    position: relative;
  }
  .nav{
    display: none !important;
    position: fixed !important;
    top: 112px !important;
    left: 16px !important;
    right: 16px !important;
    z-index: 100000 !important;
    background: #fffdf2 !important;
    border: 1px solid rgba(85,112,22,.22) !important;
    border-radius: 20px !important;
    padding: .75rem !important;
    box-shadow: 0 22px 60px rgba(0,0,0,.22) !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: .25rem !important;
    max-height: calc(100vh - 132px);
    overflow-y: auto;
  }
  .nav.open,
  body.menu-open .nav{
    display: flex !important;
  }
  .nav-link{
    display: block !important;
    width: 100%;
    padding: .95rem 1rem !important;
    border-radius: 14px !important;
    font-size: 1rem !important;
  }
}