@import url('https://fonts.googleapis.com/css2?family=Fjalla+One&family=Jost:wght@300;400;500;600&display=swap');
:root{--ind:#1B2D68;--cie:#4E82F0;--coi:#ACD5A1;--mes:#EADF72;--tin:#16181A;--hue:#FAF8F4;--are:#E7E3DA;--pie:#8B9098;--t70:#41464C;--t55:#5C6167;--coi-t:#2E4A2A;--mes-t:#524A18;--ease:cubic-bezier(.2,.7,.1,1);--ease-io:cubic-bezier(.65,0,.35,1);--gut:20px;--hdr:64px}
@media(min-width:760px){:root{--gut:40px;--hdr:76px}}
@media(min-width:1100px){:root{--gut:72px}}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--hue);color:var(--t70);font:300 17px/1.7 'Jost',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:var(--ind);text-decoration:none;transition:color .18s}
a:hover{color:var(--cie)}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--mes);color:var(--tin)}
.wrap{max-width:1320px;margin:0 auto;padding:0 var(--gut)}
.sec{padding:80px 0}
@media(min-width:760px){.sec{padding:120px 0}}
.bg-hue{background:var(--hue)}.bg-white{background:#fff}.bg-ind{background:var(--ind);color:rgba(255,255,255,.82)}.bg-cie{background:var(--cie);color:#fff}.bg-coi{background:var(--coi);color:var(--tin)}.bg-mes{background:var(--mes);color:var(--tin)}
.h-xl,.h1,.h2,.h3,.num{font-family:'Fjalla One',sans-serif;font-weight:400;color:var(--ind);text-wrap:balance;letter-spacing:-.005em}
.h-xl{font-size:clamp(42px,11.5vw,104px);line-height:.98}
.h1{font-size:clamp(36px,8.4vw,72px);line-height:1.02}
.h2{font-size:clamp(30px,6.2vw,52px);line-height:1.06}
.h3{font-size:clamp(24px,4.6vw,32px);line-height:1.12}
.bg-ind .h-xl,.bg-ind .h1,.bg-ind .h2,.bg-ind .h3,.bg-ind .num,.bg-cie .h1,.bg-cie .h2,.bg-cie .h3,.bg-cie .h-xl,.on-photo .h-xl,.on-photo .h1{color:#fff}
.bg-mes .h-xl,.bg-mes .h1,.bg-mes .h2,.bg-mes .h3,.bg-coi .h1,.bg-coi .h2,.bg-coi .h3,.bg-coi .num,.bg-mes .num{color:var(--tin)}
.kicker{font-family:'Fjalla One',sans-serif;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--cie);display:flex;align-items:center;gap:12px}
.kicker::before{content:"";width:28px;height:2px;background:currentColor;transform-origin:left;transform:scaleX(var(--k,1));transition:transform .8s var(--ease) .1s}
body.anim .reveal:not(.in) .kicker::before,body.anim .kicker.reveal:not(.in)::before{--k:0}
.bg-ind .kicker,.on-photo .kicker{color:var(--mes)}.bg-mes .kicker{color:var(--mes-t)}.bg-coi .kicker{color:var(--coi-t)}.bg-cie .kicker{color:#fff}
.lead{font-size:clamp(19px,2.6vw,23px);line-height:1.5;font-weight:300;color:var(--t70);max-width:34em;text-wrap:pretty}
.bg-ind .lead,.on-photo .lead{color:rgba(255,255,255,.86)}.bg-mes .lead,.bg-coi .lead{color:var(--tin)}.bg-cie .lead{color:#fff}
.body{max-width:38em;text-wrap:pretty}.body+.body{margin-top:1em}
.bg-mes .body,.bg-coi .body{color:var(--tin)}
strong,b{font-weight:500;color:var(--tin)}.bg-ind strong{color:#fff}
.stack>*+*{margin-top:var(--s,24px)}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;font:500 17px/1 'Jost',sans-serif;border:1.5px solid transparent;transition:background .18s,color .18s,border-color .18s,transform .12s;position:relative;overflow:hidden;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn .arr{display:inline-block;transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-mes{background:var(--mes);color:var(--tin)}.btn-mes:hover{background:#DFD25B;color:var(--tin)}
.btn-ind{background:var(--ind);color:#fff}.btn-ind:hover{background:#263A80;color:#fff}
.btn-cie{background:var(--cie);color:#fff}.btn-cie:hover{background:#3D70DC;color:#fff}
.btn-tin{background:var(--tin);color:#fff}.btn-tin:hover{background:#000;color:#fff}
.btn-white{background:#fff;color:var(--ind)}.btn-white:hover{opacity:.88;color:var(--ind)}
.btn-line-w{border-color:rgba(255,255,255,.7);color:#fff}.btn-line-w:hover{background:#fff;color:var(--ind)}
.btn-line{border-color:var(--ind);color:var(--ind)}.btn-line:hover{background:var(--ind);color:#fff}
.btn-line-t{border-color:var(--tin);color:var(--tin)}.btn-line-t:hover{background:var(--tin);color:#fff}
.btn-lg{min-height:60px;padding:0 32px;font-size:18px}
.btn-block{width:100%}
.link-arr{font-weight:500;display:inline-flex;gap:8px;align-items:center}
.link-arr .arr{transition:transform .3s var(--ease)}.link-arr:hover .arr{transform:translateX(4px)}
.band{display:grid;grid-template-columns:repeat(4,1fr);height:var(--bh,10px)}
.band i{display:block;transform-origin:left;transition:transform .9s var(--ease)}body.anim .band:not(.in) i{transform:scaleX(0)}
.band i:nth-child(1){background:var(--ind)}.band i:nth-child(2){background:var(--cie);transition-delay:.08s}.band i:nth-child(3){background:var(--coi);transition-delay:.16s}.band i:nth-child(4){background:var(--mes);transition-delay:.24s}
.band.in i,.in .band i{transform:scaleX(1)}
/* reveal */
.reveal{transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--i,0)*90ms)}
body.anim .reveal:not(.in){opacity:0;transform:translateY(28px)}
.reveal-clip>*{transition:clip-path 1.2s var(--ease-io),transform 1.6s var(--ease);transition-delay:calc(var(--i,0)*90ms)}
body.anim .reveal-clip:not(.in)>*{clip-path:inset(0 0 100% 0)}
.reveal-clip img.islot{transition:transform 1.6s var(--ease)}body.anim .reveal-clip:not(.in) img.islot{transform:scale(1.15)}

.split .w{display:inline-block;overflow:hidden;vertical-align:top;padding:.12em 0 .1em;margin:-.12em 0 -.1em}
body.anim .split:not(.in) .w>span{transform:translateY(135%)}
.split .w>span{display:inline-block;transition:transform .9s var(--ease);transition-delay:calc(var(--wi)*45ms + var(--d,0ms))}

.fill .fw{transition:color .25s}body.anim .fill .fw{color:var(--are)}
body.anim .fill .fw.on{color:var(--ind)}
/* header */
.hdr{position:fixed;inset:0 0 auto;z-index:50;height:var(--hdr);transition:background .3s,transform .4s var(--ease),border-color .3s;border-bottom:1px solid transparent}
.hdr .wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
.hdr .logo{position:relative;height:34px;width:86px;display:block}
@media(min-width:760px){.hdr .logo{height:42px;width:106px}}
.hdr .logo img{position:absolute;inset:0;height:100%;width:auto;transition:opacity .3s}
.hdr .logo .lw{opacity:0}
.hdr.over .logo .lw{opacity:1}.hdr.over .logo .ld{opacity:0}
.hdr.solid{background:var(--hue);border-bottom-color:var(--are)}
.hdr.hide{transform:translateY(-100%)}
.nav{display:none;align-items:center;gap:30px}
.nav a{font-weight:400;font-size:16px;color:var(--tin);position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--cie);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
.nav a:hover{color:var(--ind)}.nav a:hover::after,.nav a.on::after{transform:scaleX(1);transform-origin:left}
.hdr.over .nav a{color:#fff}.hdr.over .nav a::after{background:var(--mes)}
.nav .btn{min-height:44px;padding:0 20px;font-size:16px}
.nav .btn::after{display:none}
@media(min-width:1000px){.nav{display:flex}.menu-btn{display:none!important}}
.menu-btn{display:flex;align-items:center;gap:10px;height:44px;padding:0 4px;font-weight:500;font-size:16px;color:var(--tin)}
.hdr.over .menu-btn{color:#fff}
.menu-btn .bars{width:22px;height:12px;position:relative}
.menu-btn .bars i{position:absolute;left:0;right:0;height:2px;background:currentColor;transition:transform .35s var(--ease),top .35s var(--ease)}
.menu-btn .bars i:first-child{top:0}.menu-btn .bars i:last-child{top:10px}
body.menu-open .menu-btn{color:#fff}
body.menu-open .menu-btn .bars i:first-child{top:5px;transform:rotate(45deg)}body.menu-open .menu-btn .bars i:last-child{top:5px;transform:rotate(-45deg)}
body.menu-open .hdr{background:transparent;border-color:transparent}
body.menu-open .hdr .logo .lw{opacity:1}body.menu-open .hdr .logo .ld{opacity:0}
.mnav{position:fixed;inset:0;z-index:45;background:var(--ind);display:flex;flex-direction:column;padding:calc(var(--hdr) + 24px) var(--gut) 0;clip-path:inset(0 0 100% 0);transition:clip-path .6s var(--ease-io);visibility:hidden}
body.menu-open .mnav{clip-path:inset(0 0 0 0);visibility:visible}
.mnav ul{list-style:none;display:flex;flex-direction:column;gap:4px}
.mnav li{overflow:hidden}
.mnav li a{display:block;font-family:'Fjalla One';font-size:clamp(36px,10vw,56px);line-height:1.2;color:#fff;transform:translateY(110%);transition:transform .6s var(--ease)}
.mnav li a.on{color:var(--mes)}
body.menu-open .mnav li a{transform:none;transition-delay:calc(.15s + var(--i)*.06s)}
.mnav .mfoot{margin-top:auto;padding:28px 0;display:flex;flex-direction:column;gap:18px;opacity:0;transition:opacity .4s .45s}
body.menu-open .mnav .mfoot{opacity:1}
.mnav .mfoot a{color:rgba(255,255,255,.82);font-size:15px}
.mnav .band{margin:0 calc(var(--gut)*-1);--bh:14px}
body.menu-open .mnav .band i{transform:scaleX(1);transition-delay:calc(.3s + var(--bi,0)*.08s)}
body.menu-open{overflow:hidden}
/* sticky donate */
.dbar{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));background:var(--hue);border-top:1px solid var(--are);transform:translateY(110%);transition:transform .5s var(--ease)}
.dbar.show{transform:none}
.dbar .btn{width:100%}
@media(min-width:1000px){.dbar{display:none}}
body.menu-open .dbar{transform:translateY(110%)}
/* curtain */
.curtain{position:fixed;inset:0;z-index:100;display:grid;grid-template-columns:repeat(4,1fr);pointer-events:none}
.curtain i{transform:scaleY(0);transform-origin:bottom}
.curtain i:nth-child(1){background:var(--ind)}.curtain i:nth-child(2){background:var(--cie)}.curtain i:nth-child(3){background:var(--coi)}.curtain i:nth-child(4){background:var(--mes)}
.curtain.enter i{transform:scaleY(1);transform-origin:top}
.curtain.leave i{transform:scaleY(0);transform-origin:top;transition:transform .55s var(--ease-io);transition-delay:calc(var(--ci)*60ms)}
.curtain.go i{transform:scaleY(1);transform-origin:bottom;transition:transform .45s var(--ease-io);transition-delay:calc(var(--ci)*50ms)}
/* footer */
.ftr{background:var(--ind);color:rgba(255,255,255,.78);padding:72px 0 0}
.ftr .grid{display:grid;gap:40px}
@media(min-width:760px){.ftr .grid{grid-template-columns:1.2fr 1fr 1fr}}
.ftr img{height:64px;width:auto}
.ftr h4{font:400 13px 'Fjalla One';letter-spacing:.2em;text-transform:uppercase;color:var(--mes);margin-bottom:14px}
.ftr ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.ftr a{color:#fff;font-weight:400}.ftr a:hover{color:var(--mes)}
.ftr .legal{margin-top:56px;padding:22px 0;border-top:1px solid rgba(255,255,255,.16);font-size:14px;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
.ftr .band{--bh:20px}
@media(max-width:999px){.ftr{padding-bottom:0}.ftr .band{margin-bottom:calc(72px + env(safe-area-inset-bottom))}}
/* cards & misc */
.grid-3{display:grid;gap:16px}
@media(min-width:760px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
.grid-2{display:grid;gap:16px}
@media(min-width:760px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
.card{background:#fff;border:1px solid var(--are);padding:28px}
.num{font-size:clamp(64px,16vw,112px);line-height:.9;display:block}
.rev{border:1.5px dashed var(--pie);color:var(--t55);background:transparent;font:400 13px/1.5 'Jost';padding:10px 14px;margin-top:16px;max-width:40em}
.rev::before{content:"Revisión · ";font-weight:600}
.bg-ind .rev{color:rgba(255,255,255,.7);border-color:rgba(255,255,255,.4)}
body.limpio .rev{display:none!important}
.toast{position:fixed;left:50%;bottom:96px;z-index:90;background:var(--tin);color:#fff;padding:14px 22px;font-weight:400;font-size:15px;transform:translate(-50%,20px);opacity:0;transition:all .35s var(--ease);pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}
.page-top{padding-top:calc(var(--hdr) + 56px)}
@media(min-width:760px){.page-top{padding-top:calc(var(--hdr) + 96px)}}
.photo{position:relative;overflow:hidden;background:var(--are)}
.photo img.islot{position:absolute;inset:0}
.cap{font-size:14px;color:var(--pie);margin-top:10px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;transition-delay:0ms!important}.reveal,.split .w>span{opacity:1!important;transform:none!important}.reveal-clip>*{clip-path:none!important}.curtain{display:none}}

.islot{display:block;width:100%;height:100%;object-fit:cover}
[hidden]{display:none!important}

/* idioma */
.lang-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;font:500 15px/1 'Jost',sans-serif;color:var(--tin);border:1.5px solid currentColor;border-radius:999px;background:transparent;cursor:pointer;transition:background .18s,color .18s}
.hdr.over .lang-btn,body.menu-open .lang-btn{color:#fff}
.lang-btn:hover{background:rgba(78,130,240,.14)}
@media(min-width:1000px){.nav{margin-left:auto}.lang-btn{margin-left:0}}
.lmodal{position:fixed;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(22,24,26,.6);opacity:0;transition:opacity .25s}
.lmodal[hidden]{display:none}.lmodal.show{opacity:1}
.lbox{position:relative;width:min(440px,100%);background:var(--hue);padding:36px 28px 28px;transform:translateY(16px);transition:transform .35s var(--ease);border-top:6px solid var(--ind)}
.lmodal.show .lbox{transform:none}
.lbox h2{font-family:'Fjalla One',sans-serif;font-weight:400;font-size:30px;color:var(--ind);margin:0 0 6px}
.lbox p{margin:0 0 22px;color:var(--t70)}
.lx{position:absolute;top:8px;right:10px;width:44px;height:44px;font-size:30px;line-height:1;color:var(--tin);background:none;border:0;cursor:pointer}
.lopts{display:grid;gap:12px}
.lopts a{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border:1.5px solid var(--are);background:#fff;color:var(--ind)}
.lopts a b{font-family:'Fjalla One',sans-serif;font-weight:400;font-size:22px}
.lopts a span{font-size:14px;color:var(--t55)}
.lopts a:hover{border-color:var(--cie)}.lopts a.cur{border-color:var(--ind);box-shadow:inset 4px 0 0 var(--mes)}
