:root{
  --color-petrol-900:#062f2c;
  --color-petrol-800:#0a3f3b;
  --color-mustard-500:#f2a63d;
  --color-mustard-600:#dd8f24;
  --color-purple-500:#8a63c9;
  --color-white:#ffffff;
  --color-cream:#fbfaf6;
  --color-gray-100:#f2f2ee;
  --color-gray-200:#e6e6e0;
  --color-gray-400:#a3a89f;
  --color-ink:#122421;
  --font-display:'Anton', 'Oswald', sans-serif;
  --font-heading:'Oswald', sans-serif;
  --font-body:'Work Sans', sans-serif;
  --container-w:1200px;
  --space-lg:4rem;
  --space-xl:7rem;
  --radius-md:20px;
  --radius-lg:38px;
  --ease:cubic-bezier(.22,.68,0,1);
  --dur:.7s;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-white);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul,ol{list-style:none;}
button{font:inherit;background:none;border:none;cursor:pointer;color:inherit;}
h1,h2,h3,h4{font-family:var(--font-heading);line-height:1.1;}
.container{max-width:var(--container-w);margin-inline:auto;padding-inline:1.5rem;}
:focus-visible{outline:3px solid var(--color-purple-500);outline-offset:3px;}
@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}}

.eyebrow{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:600;color:var(--color-mustard-600);margin-bottom:.6rem;}
.section-title{font-family:var(--font-display);font-size:clamp(2.2rem,4.2vw,3.4rem);text-transform:uppercase;color:var(--color-petrol-900);letter-spacing:.01em;}
.section-title--light{color:var(--color-white);}
.section-head{max-width:760px;margin-bottom:var(--space-lg);}
.section-lead{margin-top:1rem;font-size:1.05rem;color:#3d504c;max-width:640px;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-heading);font-weight:600;letter-spacing:.03em;text-transform:uppercase;font-size:.85rem;padding:.9rem 1.8rem;border-radius:999px;transition:transform .35s var(--ease), box-shadow .35s var(--ease), background .3s var(--ease);}
.btn:hover{transform:translateY(-3px);}
.btn--mustard{background:var(--color-mustard-500);color:var(--color-petrol-900);box-shadow:0 6px 0 var(--color-mustard-600);}
.btn--mustard:hover{box-shadow:0 9px 0 var(--color-mustard-600);}
.btn--teal{background:var(--color-petrol-900);color:var(--color-white);box-shadow:0 6px 0 #041f1c;}
.btn--teal:hover{box-shadow:0 9px 0 #041f1c;}

.reveal-up{opacity:0;transform:translateY(36px);transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease);}
.reveal-up.is-visible{opacity:1;transform:translateY(0);}
.program__grid .program-item:nth-child(2){transition-delay:.08s;}
.program__grid .program-item:nth-child(3){transition-delay:.16s;}
.program__grid .program-item:nth-child(4){transition-delay:.24s;}
.process__grid .process-step:nth-child(2){transition-delay:.1s;}
.process__grid .process-step:nth-child(3){transition-delay:.2s;}
.process__grid .process-step:nth-child(4){transition-delay:.3s;}
.results__grid .result-item:nth-child(2){transition-delay:.1s;}
.results__grid .result-item:nth-child(3){transition-delay:.2s;}
.characters-strip__grid .character-chip:nth-child(2){transition-delay:.08s;}
.characters-strip__grid .character-chip:nth-child(3){transition-delay:.16s;}
.characters-strip__grid .character-chip:nth-child(4){transition-delay:.24s;}

/* HEADER */
.site-header{position:fixed;inset-inline:0;top:0;z-index:200;background:rgba(255,255,255,.75);border-bottom:1px solid transparent;transition:background .4s var(--ease), box-shadow .4s var(--ease), border-color .4s var(--ease);}
.site-header.is-scrolled{background:rgba(255,255,255,.95);box-shadow:0 8px 24px rgba(6,47,44,.08);border-bottom-color:var(--color-gray-200);}
.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:.9rem;}
.site-header__logo img{height:80px;width:auto;}
.site-nav__list{display:flex;gap:1.9rem;}
.site-nav__link{font-family:var(--font-heading);font-size:.92rem;font-weight:500;letter-spacing:.02em;color:var(--color-petrol-900);position:relative;padding-bottom:4px;}
.site-nav__link::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--color-mustard-500);transition:width .3s var(--ease);}
.site-nav__link:hover::after,.site-nav__link.is-active::after{width:100%;}
.site-header__actions{display:flex;align-items:center;gap:.9rem;}
.hamburger{display:none;flex-direction:column;gap:5px;width:26px;}
.hamburger span{display:block;height:2px;background:var(--color-petrol-900);transition:transform .3s var(--ease), opacity .3s var(--ease);}

/* PAGE HERO */
.page-hero{position:relative;padding:calc(var(--space-xl) + 3rem) 0 var(--space-lg);background:radial-gradient(circle at 85% 20%, rgba(242,166,61,.16), transparent 55%),radial-gradient(circle at 10% 90%, rgba(138,99,201,.14), transparent 50%),var(--color-white);text-align:center;overflow:hidden;}
.page-hero__crumbs{font-family:var(--font-heading);font-size:.85rem;color:var(--color-mustard-600);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.6rem;}
.page-hero__title{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(2.4rem,5.6vw,4.2rem);color:var(--color-petrol-900);line-height:1.02;}
.page-hero__lead{max-width:700px;margin:1.2rem auto 0;font-size:1.1rem;color:#3d504c;}
.page-hero__cta{margin-top:2rem;}

/* PROGRAMA (beneficios) */
.program{padding-block:var(--space-xl);}
.program__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;}
.program-item{background:var(--color-gray-100);border-radius:var(--radius-md);padding:1.8rem 1.5rem;transition:transform .4s var(--ease), box-shadow .4s var(--ease);}
.program-item:hover{transform:translateY(-6px);box-shadow:0 18px 30px rgba(6,47,44,.1);}
.program-item__icon{width:46px;height:46px;border-radius:50%;background:var(--color-mustard-500);color:var(--color-petrol-900);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.3rem;margin-bottom:1rem;}
.program-item h3{font-size:1.05rem;color:var(--color-petrol-900);margin-bottom:.5rem;}
.program-item p{font-size:.9rem;color:#4d5f5a;}

/* PROCESO */
.process{padding-block:var(--space-xl);background:var(--color-petrol-900);position:relative;overflow:hidden;}
.process__bg{position:absolute;inset:0;background:radial-gradient(circle at 15% 20%, rgba(242,166,61,.14), transparent 45%),radial-gradient(circle at 85% 80%, rgba(138,99,201,.18), transparent 45%);}
.process__grid{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;}
.process-step{background:var(--color-petrol-800);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:2.2rem 1.6rem;color:var(--color-white);}
.process-step__number{font-family:var(--font-display);font-size:2.2rem;color:var(--color-mustard-500);display:block;margin-bottom:.8rem;}
.process-step h3{font-size:1.05rem;margin-bottom:.5rem;}
.process-step p{font-size:.9rem;color:#b9cdc8;}

/* FRANJA PERSONAJES */
.characters-strip{padding-block:var(--space-xl);text-align:center;}
.characters-strip__lead{max-width:700px;margin:1rem auto 0;color:#3d504c;font-size:1.02rem;}
.characters-strip__grid{margin-top:var(--space-lg);display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;}
.character-chip{background:var(--color-gray-100);border-radius:var(--radius-md);padding:1.4rem 1rem 1.1rem;transition:transform .4s var(--ease), box-shadow .4s var(--ease);}
.character-chip:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:0 18px 30px rgba(6,47,44,.12);}
.character-chip img{aspect-ratio:1/1;object-fit:contain;margin-bottom:.8rem;}
.character-chip span{display:block;font-family:var(--font-heading);font-weight:600;color:var(--color-petrol-900);}
.characters-strip__link{display:inline-block;margin-top:1.6rem;}

/* RESULTADOS */
.results{padding-block:var(--space-xl);background:var(--color-cream);text-align:center;}
.results__grid{margin-top:var(--space-lg);display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.result-item__number{font-family:var(--font-display);font-size:clamp(2.4rem,5vw,3.6rem);line-height:1;color:var(--color-petrol-900);}
.result-item__number span{font-size:.45em;color:var(--color-mustard-600);margin-left:.15rem;}
.result-item__label{margin-top:.5rem;color:#4d5f5a;font-size:.92rem;}

/* FORMULARIO DE INSCRIPCIÓN */
.enroll{padding-block:var(--space-xl);}
.enroll__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:3rem;align-items:start;}
.enroll__list{display:flex;flex-direction:column;gap:.65rem;margin-top:1.4rem;max-width:480px;}
.enroll__list li{position:relative;padding-left:1.4rem;color:#37483f;font-size:.98rem;}
.enroll__list li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:2px;background:var(--color-mustard-500);transform:rotate(45deg);}

.simple-form{background:var(--color-white);border-radius:var(--radius-lg);padding:2.2rem;box-shadow:0 20px 50px rgba(6,47,44,.08);border:1px solid var(--color-gray-200);}
.simple-form h3{font-family:var(--font-heading);color:var(--color-petrol-900);font-size:1.3rem;margin-bottom:.4rem;}
.simple-form p{color:#5a6b66;font-size:.92rem;margin-bottom:1.4rem;}
.simple-form label{display:block;font-family:var(--font-heading);font-size:.82rem;font-weight:600;color:var(--color-petrol-900);margin-bottom:.35rem;}
.simple-form__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.simple-form input,.simple-form select,.simple-form textarea{width:100%;padding:.75rem .9rem;border:1px solid var(--color-gray-200);border-radius:12px;font-family:var(--font-body);font-size:.95rem;margin-bottom:1.1rem;background:var(--color-gray-100);}
.simple-form input:focus,.simple-form select:focus,.simple-form textarea:focus{outline:none;border-color:var(--color-mustard-500);background:var(--color-white);}
.simple-form textarea{resize:vertical;min-height:90px;}
.simple-form__note{font-size:.78rem;color:var(--color-gray-400);margin-top:.6rem;}

/* FOOTER */
.site-footer{background:var(--color-ink);color:#cddad6;padding-top:var(--space-xl);}
.site-footer__grid{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:3rem;padding-bottom:var(--space-lg);}
.site-footer__brand img{filter:brightness(0) invert(1);margin-bottom:1rem;height:40px;}
.site-footer__brand p{max-width:320px;font-size:.92rem;color:#a9bcb7;}
.site-footer__social{display:flex;gap:.8rem;margin-top:1.4rem;}
.site-footer__social a{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.06);transition:background .3s var(--ease), transform .3s var(--ease);}
.site-footer__social a:hover{background:var(--color-mustard-500);color:var(--color-ink);transform:translateY(-3px);}
.site-footer__col h3{font-family:var(--font-heading);color:var(--color-white);font-size:1rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em;}
.site-footer__col ul{display:flex;flex-direction:column;gap:.6rem;font-size:.92rem;}
.site-footer__col a:hover{color:var(--color-mustard-500);}
.site-footer__bottom{border-top:1px solid rgba(255,255,255,.08);padding:1.4rem 0;text-align:center;font-size:.8rem;color:#7d908b;}
.site-footer__bottom a{color:#9db3ad;text-decoration:underline;transition:color .3s var(--ease);}
.site-footer__bottom a:hover{color:var(--color-mustard-500);}

/* RESPONSIVE */
@media (max-width:1024px){
  .program__grid,.process__grid{grid-template-columns:repeat(2,1fr);}
  .characters-strip__grid{grid-template-columns:repeat(4,1fr);gap:1rem;}
  .results__grid{grid-template-columns:repeat(2,1fr);gap:1.6rem;}
  .enroll__grid{grid-template-columns:1fr;gap:2.2rem;}
  .site-footer__grid{grid-template-columns:1fr 1fr;}
  .site-footer__brand{grid-column:1 / -1;}
}
@media (max-width:768px){
  .hamburger{display:flex;}
  .site-nav{position:fixed;inset:0 0 0 auto;top:0;height:100vh;width:min(78vw,320px);background:var(--color-petrol-900);padding:6rem 2rem 2rem;transform:translateX(100%);transition:transform .45s var(--ease);z-index:150;}
  .site-nav.is-open{transform:translateX(0);}
  .site-nav__list{flex-direction:column;gap:1.6rem;}
  .site-nav__link{color:var(--color-white);font-size:1.2rem;}
  .site-header__donate{display:none;}
  .hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .hamburger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .nav-overlay{position:fixed;inset:0;background:rgba(6,47,44,.55);opacity:0;pointer-events:none;transition:opacity .4s var(--ease);z-index:140;}
  .nav-overlay.is-open{opacity:1;pointer-events:auto;}
  .program__grid,.process__grid,.characters-strip__grid,.results__grid{grid-template-columns:1fr;}
  .simple-form__row{grid-template-columns:1fr;}
  .site-footer__grid{grid-template-columns:1fr;gap:2rem;}
}

/* ===== Ajustes cliente (correcciones PPTX) ===== */
.ind-sec{padding-block:var(--space-xl);}
.ind-sec--alt{background:var(--color-gray-100);}
.ind-figure{margin:2.2rem auto 0;max-width:1100px;border-radius:24px;overflow:hidden;box-shadow:0 24px 60px rgba(6,47,44,.14);background:#fff;}
.ind-figure img{width:100%;height:auto;display:block;}
.page-hero__cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;}
.ind-cta{background:linear-gradient(135deg,#045c62,#062f2c);padding-block:var(--space-xl);text-align:center;overflow:hidden;}
.ind-cta__inner{display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:end;}
.ind-cta__inner>div{align-self:center;}
.ind-cta__hero{height:300px;width:auto;object-fit:contain;}
@media (max-width:820px){.ind-cta__inner{grid-template-columns:1fr;}.ind-cta__hero{display:none;}}
/* backdrop-filter en pseudo-elemento: evita que el header cree un bloque contenedor para el menú móvil (position:fixed) */
.site-header::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}

