:root{--primary-blue:#210e56;--deep-blue:#210e56;--light-blue:#e5f1ff;--white:#ffffff;--text-dark:#0f1b2b;--body-font:'Montserrat','Raleway',sans-serif;--contact-carousel-speed:40s;--contact-carousel-distance:100%}*,::after,::before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--body-font);color:var(--text-dark);background-color:var(--white);line-height:1.6}body.hero-loading{overflow:hidden}body.modal-open{overflow:hidden}html.modal-open{overflow:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button{font-family:inherit}main{scroll-margin-top:80px}section{padding:1rem 1rem 2rem 1rem;scroll-margin-top:90px}.hero{background:var(--primary-blue);color:var(--white);padding:0 0 2rem;overflow:hidden}.hero-wrapper{width:100%}.carousel{position:relative;width:100vw;aspect-ratio:600/263.25;border-radius:0;overflow:hidden;box-shadow:0 28px 60px rgba(0,0,0,.35);margin-left:calc(50% - 50vw)}.carousel-track{position:relative;width:100%;height:100%}.carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}.carousel-slide img{width:100%;height:100%;object-fit:contain;display:block;background:var(--primary-blue)}.carousel-slide.active{opacity:1}body.hero-loading .duck,body.hero-loading footer,body.hero-loading main{opacity:0;visibility:hidden;pointer-events:none}.carousel-dots{display:none}.hero-intro{width:100%;max-width:960px;margin:2rem auto 0;text-align:center;padding:0 1.5rem;color:var(--white);display:flex;flex-direction:column;gap:2rem}.hero-callout{--hero-brand-height:clamp(72px, 12vw, 140px);display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:nowrap}.hero-title{display:flex;flex-direction:column;justify-content:space-between;min-height:var(--hero-brand-height);gap:clamp(.1rem,.8vw,.4rem)}.hero-title span{font-size:calc(var(--hero-brand-height) / 2);font-weight:800;letter-spacing:.08em;line-height:1}.hero-logo{display:flex;align-items:center}.hero-logo img{height:var(--hero-brand-height);width:auto}.hero-cta{margin-top:2rem;text-align:center}.hero-cta .note-button{display:inline-block}.election-grid{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;max-width:680px;margin-left:auto;margin-right:auto}.vota-section{background:var(--primary-blue);color:var(--white)}.vota-section .section-subtitle,.vota-section .section-title{color:var(--white)}.election-card{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:.9rem;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);box-shadow:0 10px 25px rgba(0,0,0,.2)}.election-info{flex:1 1 auto}.election-button{background:var(--white);color:var(--primary-blue);padding:.35rem 1.25rem;border-radius:999px;font-weight:700;letter-spacing:.05em}.election-card-highlight{background:rgba(255,255,255,.3);border-color:rgba(255,255,255,.5)}.election-icon{flex:0 0 60px;width:60px;height:60px;border-radius:12px;background:rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center}.election-icon img{width:34px;height:34px;filter:brightness(0) invert(1);object-fit:contain}.election-title{margin:0;font-weight:700;font-size:1rem}.election-date{margin:0;font-size:.9rem;opacity:.8}.section-title{font-size:2rem;color:var(--primary-blue);margin-top:.5rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em;text-align:center;font-weight:700}#quienes{background:var(--white)}#quienes p{font-size:1.125rem;max-width:1024px;margin:0 auto;text-align:justify;margin-bottom:1.25rem}#logros{background:var(--primary-blue);color:var(--white)}#logros .section-subtitle,#logros .section-title{color:var(--white)}#contacto{background:var(--white);color:var(--text-dark)}#contacto p{max-width:720px;margin:0 auto;font-size:1.1rem;text-align:center}.contact-carousel{max-width:800px;margin:2rem auto;border-radius:1.25rem;overflow:hidden;position:relative;box-shadow:0 15px 40px rgba(0,0,0,.15);aspect-ratio:16/9;background:var(--light-blue)}.contact-carousel__track{position:relative;width:calc(100% + 2px);height:100%;display:flex;align-items:center;gap:0;animation:contact-carousel var(--contact-carousel-speed,40s) linear infinite;will-change:transform}.contact-carousel__track.is-loading{animation-play-state:paused}.contact-carousel__slide{flex:0 0 auto;width:100%;height:100%}.contact-carousel__slide img{width:100%;height:100%;object-fit:contain}.contact-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1.5rem;max-width:800px;margin-left:auto;margin-right:auto}.contact-card{flex:1 1 calc(50% - 0.5rem);min-width:240px;display:flex;align-items:center;gap:.75rem;padding:1.25rem;border-radius:1rem;background:var(--light-blue);border:1px solid rgba(0,0,0,.08);text-decoration:none;color:var(--text-dark);transition:transform .2s ease,box-shadow .2s ease}.contact-card:focus-visible,.contact-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(0,0,0,.12)}.contact-card img{width:46px;height:46px;filter:brightness(0) saturate(100%) invert(15%) sepia(24%) saturate(2470%) hue-rotate(220deg) brightness(84%) contrast(103%)}.contact-card p{margin:0;font-weight:700}.contact-card span{font-size:.9rem;color:rgba(0,0,0,.7)}@keyframes contact-carousel{from{transform:translateX(0)}to{transform:translateX(calc(-1 * var(--contact-carousel-distance,100%)))}}.feed-link{color:var(--primary-blue);font-weight:700;text-transform:uppercase;font-size:.9rem;display:inline-block;text-align:center;width:100%}.vote-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:5000;min-height:100vh;padding:1.5rem;overflow-y:auto}.vote-modal.is-visible{display:flex}.vote-modal__overlay{position:fixed;inset:0;background:rgba(0,0,0,.55)}.vote-modal__dialog{position:relative;width:min(480px,90vw);background:var(--white);color:var(--text-dark);border-radius:1.25rem;padding:2rem;box-shadow:0 25px 60px rgba(0,0,0,.3);z-index:1;text-align:center}.vote-modal__close{position:absolute;top:.75rem;right:.75rem;background:0 0;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-dark)}.vote-modal__countdown{font-weight:700}.vote-modal__form{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.vote-modal__form input[type=email],.vote-modal__form input[type=text]{width:100%;padding:.85rem 1rem;border-radius:.6rem;border:1px solid rgba(0,0,0,.2);font-size:16px;line-height:1.2;min-height:46px;box-sizing:border-box;background-color:var(--white)}.vote-modal__form input[type=checkbox]{width:20px;height:20px;min-height:20px;margin-top:.2rem;accent-color:var(--primary-blue);-webkit-appearance:checkbox;appearance:checkbox;cursor:pointer}.vote-modal__form button{background:var(--primary-blue);color:var(--white);border:none;padding:.75rem;border-radius:999px;font-weight:700;cursor:pointer}.consent-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;text-align:left}.consent-row input{width:auto;margin-top:.2rem}.vote-modal__message{margin-top:.75rem;font-weight:600}.vote-modal__legal{margin-top:1rem;font-size:.85rem;color:rgba(0,0,0,.7)}.vote-modal__legal a{color:var(--primary-blue);text-decoration:underline}@media (max-width:768px){.vote-modal{align-items:flex-start;padding-top:3rem}.vote-modal__dialog{width:100%;margin:0 auto}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.duck{position:fixed;bottom:10px;left:-80px;z-index:3000;animation:duck-walk var(--duck-speed,20s) linear infinite;pointer-events:none;width:120px;height:120px}.duck.duck-paused{animation-play-state:paused}.duck-inner{position:relative;width:120px;height:120px;pointer-events:auto;transition:transform .3s ease;cursor:pointer}.duck-inner img{position:absolute;top:0;left:0;width:120px;height:auto;transition:opacity .1s linear}@keyframes duck-walk{0%{transform:translateX(0)}100%{transform:translateX(calc(100vw + 300px))}}.duck-inner.jump{animation:duck-hop .6s ease}@keyframes duck-hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-40px)}}.duck-hidden,.duck-hidden .duck-inner{pointer-events:none}.duck-hidden{opacity:0}#propuestas{background:var(--white);color:var(--text-dark)}.propuestas-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.propuesta-card{background:var(--light-blue);border:1px solid rgba(0,0,0,.05);border-radius:1rem;padding:1.5rem;box-shadow:0 10px 30px rgba(0,0,0,.08)}.propuesta-card h3{margin-top:0;font-size:1.4rem;color:var(--primary-blue);text-align:center}.propuesta-card ol,.propuesta-card ul{padding-left:1.25rem;margin:0}.propuesta-card li{margin-bottom:.6rem}.propuesta-card.protagonista{grid-column:1/-1;text-align:center;background:var(--primary-blue);color:var(--white)}.propuesta-card.protagonista h3{color:var(--white);font-size:clamp(1.6rem, 3vw, 2.2rem);margin-bottom:.35rem}.protagonista-label{font-size:clamp(1.2rem, 2.5vw, 1.6rem);font-weight:700;margin-bottom:.35rem}.protagonista-texto{font-size:1.1rem;margin:0}.section-subtitle{font-size:1.1rem;margin:0 auto 2.5rem;max-width:720px;color:var(--text-dark);text-align:center}.section-note{text-align:center;font-weight:700;font-size:1.2rem;margin:1.5rem auto 0;color:rgba(255,255,255,.95)}.section-note-cta{display:flex;justify-content:center;margin-top:1rem}.note-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 2.5rem;border-radius:999px;background:var(--white);color:var(--primary-blue);font-weight:700;letter-spacing:.05em;transition:transform .2s ease,box-shadow .2s ease}.note-button:focus-visible,.note-button:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(0,0,0,.2);outline:0}.impact-counters{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;max-width:1000px;margin:0 auto 2.5rem}.counter-card{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.15);border-radius:1.25rem;padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.counter-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.counter-icon img{max-width:100%;max-height:100%;display:block;filter:brightness(0) invert(1)}.counter-value{font-size:clamp(2rem, 4vw, 3rem);font-weight:800}.counter-label{margin:0;font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.counter-detail{margin:0;font-size:.95rem;color:rgba(255,255,255,.85)}footer{background:var(--deep-blue);color:var(--white);text-align:center;padding:2rem 1rem}.footer-links{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.social-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--white);font-weight:600;transition:color .3s ease}.social-link:focus-visible,.social-link:hover{color:var(--light-blue)}footer p{margin:1rem 0 0;font-size:.95rem}@media (max-width:1024px){.nav-container{padding:.75rem 1rem}}@media (max-width:768px){.hero{padding:0 0 2rem}.impact-counters{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-width:100%}section{padding:1rem 1rem 2rem 1rem}}@media (max-width:480px){.hero-callout p{font-size:1rem}}:focus-visible{outline:3px solid var(--light-blue);outline-offset:3px}.feed-avatar img{width:80%;height:80%;object-fit:contain}