:root{--navy:#10234b;--deep:#0b1939;--blue:#2773a7;--orange:#f26422;--green:#159450;--cream:#f4f6fa;--ink:#18283b;--muted:#667487;--line:#dce2e9;--white:#fff;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope','DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%}.site-header{height:88px;padding:0 7.5%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:5;border-bottom:1px solid #edf0f4}.brand{display:flex;align-items:center;gap:12px;color:var(--navy)}.brand img{width:51px;height:51px;object-fit:cover;border-radius:11px}.brand>span{display:flex;flex-direction:column;gap:3px}.brand strong{font:800 16px var(--display);letter-spacing:.11em}.brand small{font-size:7px;font-weight:700;letter-spacing:.1em;color:#69778a}.main-nav{display:flex;align-items:center;gap:28px;font-size:11px;font-weight:700;color:#425168}.main-nav>a:hover{color:var(--orange)}.nav-cta{background:var(--navy);padding:12px 17px;color:#fff!important}.menu-toggle{display:none}.hero{background:var(--navy);color:#fff;min-height:645px;padding:60px 10% 75px;display:grid;grid-template-columns:1fr 365px;align-items:center;gap:8%;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:700px;height:700px;border:1px solid #ffffff12;border-radius:50%;right:-150px;top:-180px;box-shadow:0 0 0 54px #ffffff08,0 0 0 108px #ffffff05}.hero-copy{position:relative;z-index:1}.eyebrow,.overline,.section-label{font-size:9px;font-weight:800;letter-spacing:.15em}.eyebrow{color:#d5deec;display:flex;align-items:center;gap:10px}.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--green)}h1,h2,h3,h4,p{margin-top:0}.hero h1{font:800 clamp(48px,6vw,76px)/1.04 var(--display);letter-spacing:-.06em;margin:25px 0 18px}.hero h1 em,.campaign h2 em,.results h2 em,.roster h2 em{font-style:normal;color:#ff874f}.hero-copy>p{font-size:15px;line-height:1.7;color:#d8e0ed;max-width:500px;margin-bottom:25px}.button{display:inline-flex;align-items:center;gap:28px;padding:15px 19px;font-size:10px;font-weight:800;transition:transform .2s}.button:hover{transform:translateY(-2px)}.button-orange{background:var(--orange);color:#fff}.button-orange span{font-size:16px}.hero-date{margin-top:40px;display:flex;align-items:center;gap:14px}.hero-date b{font:800 38px var(--display);color:#ff874f}.hero-date span{font-size:8px;line-height:1.5;letter-spacing:.14em;color:#d4ddeb}.campaign-art{position:relative;z-index:1;margin:0;text-align:center}.campaign-art img{display:block;width:min(100%,360px);height:auto;margin:auto;box-shadow:0 24px 70px #030b1b66}.campaign-art figcaption,.proposal-art figcaption,.campaign-gallery figcaption{font-size:9px;color:#77849a;margin-top:10px}.campaign-art figcaption{color:#c5cfde}.hero-ribbon{position:absolute;left:0;right:0;bottom:0;height:8px;display:grid;grid-template-columns:repeat(4,1fr)}.hero-ribbon span:nth-child(1){background:#e31e37}.hero-ribbon span:nth-child(2){background:#1687c9}.hero-ribbon span:nth-child(3){background:var(--orange)}.hero-ribbon span:nth-child(4){background:var(--green)}.section-pad{padding:84px 10%}.section-label{display:flex;gap:13px;align-items:center;color:#65748a}.section-label i{height:2px;width:32px;background:var(--orange)}.section-label span:first-child{color:var(--orange)}.campaign{background:#fff}.campaign-grid{display:grid;grid-template-columns:1.05fr .85fr;gap:10%;margin-top:38px;align-items:center}.overline{color:var(--orange)}.campaign h2,.results h2,.roster h2{font:750 clamp(33px,4vw,49px)/1.14 var(--display);letter-spacing:-.055em;color:var(--navy);margin:13px 0 0}.campaign h2 em,.results h2 em,.roster h2 em{color:#2672a2}.campaign-copy p{font-size:13px;line-height:1.8;color:#506075}.campaign-copy p:first-child{font-size:17px;font-weight:700;color:var(--navy)}.arrow-link{display:inline-block;margin-top:6px;color:var(--navy);font-size:10px;font-weight:800;border-bottom:2px solid var(--orange);padding-bottom:8px}.proposal-layout{display:grid;grid-template-columns:minmax(230px,.75fr) 1.25fr;align-items:center;gap:6%;margin-top:57px}.proposal-art{margin:0}.proposal-art img{display:block;width:100%;max-width:440px;margin:auto;border-radius:10px;box-shadow:0 12px 35px #10234b18}.proposal-list{display:grid;gap:11px}.proposal-list article{display:flex;align-items:flex-start;gap:14px;background:var(--cream);padding:17px 19px;border-left:3px solid var(--line)}.proposal-list article:nth-child(1){border-color:#da2c3b}.proposal-list article:nth-child(2){border-color:#2584c5}.proposal-list article:nth-child(3){border-color:var(--orange)}.proposal-list article:nth-child(4){border-color:var(--green)}.proposal-n{font:800 12px var(--display);padding-top:2px}.proposal-n.red{color:#da2c3b}.proposal-n.blue{color:#2584c5}.proposal-n.orange{color:var(--orange)}.proposal-n.green{color:var(--green)}.proposal-list h3{font:800 14px var(--display);color:var(--navy);margin:0 0 4px}.proposal-list p{font-size:10px;line-height:1.65;color:#5d6c80;margin:0}.results{background:var(--cream)}.results-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:35px 0 28px}.results-heading h2{margin-top:12px}.results-heading>p{max-width:340px;font-size:12px;line-height:1.75;color:var(--muted);margin:0}.results-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.result-card,.metric{background:#fff;min-height:105px;padding:17px}.result-feature{grid-column:span 2;display:flex;align-items:center;gap:13px}.check{width:34px;height:34px;flex:0 0 34px;background:var(--green);border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px}.result-card h3{font:800 12px/1.45 var(--display);color:var(--navy);margin:0 0 4px}.result-card p{font-size:9px;color:#65748a;margin:0;line-height:1.5}.metric{display:flex;flex-direction:column;justify-content:center;border:1px solid #d6deea}.metric strong{font:800 27px var(--display);color:var(--navy);letter-spacing:-.04em}.metric span{font-size:9px;line-height:1.5;color:#65748a;margin-top:3px}.history-cards{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}.history-card{background:var(--navy);color:#fff;display:grid;grid-template-columns:145px 1fr;min-height:160px;overflow:hidden}.history-card img{height:100%;width:100%;object-fit:cover}.history-card>div{padding:17px}.history-card span{font-size:7px;letter-spacing:.15em;color:#ffa16f;font-weight:800}.history-card h3{font:800 14px/1.4 var(--display);margin:7px 0}.history-card p{font-size:9px;line-height:1.6;color:#d4deeb;margin:0}.roster{background:#fff}.roster-intro{margin:38px 0 35px;display:flex;align-items:end;justify-content:space-between;gap:28px}.roster h2{margin:0}.roster-intro>p{max-width:390px;margin:0;color:var(--muted);font-size:11px;line-height:1.8}.organ{border-top:1px solid var(--line);padding-top:22px;margin-top:34px}.organ-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.organ-heading>div>span{font-size:8px;letter-spacing:.15em;color:var(--orange);font-weight:800}.organ-heading h3{font:750 21px var(--display);letter-spacing:-.03em;color:var(--navy);margin:6px 0 0}.organ-heading>b{font:800 19px var(--display);color:var(--navy);text-align:right}.organ-heading small{display:block;font:800 7px var(--sans);letter-spacing:.13em;color:#8491a0}.member-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.member-card{position:relative;background:var(--navy);color:#fff;overflow:hidden;border-radius:8px;box-shadow:0 7px 17px #0b193911}.member-portrait{width:100%;height:205px;display:block;object-fit:cover;object-position:center 36%;background:#d9e2ef}.member-info{padding:12px 13px 16px;min-height:76px}.member-role{display:block;font-size:7px;text-transform:uppercase;letter-spacing:.13em;color:#ff9869;font-weight:800;margin-bottom:5px}.member-info h4{font:700 11px/1.4 var(--display);margin:0;max-width:90%}.member-number{position:absolute;top:9px;left:9px;background:#fff;color:var(--navy);padding:4px 6px;border-radius:2px;font-size:7px;font-weight:800}.source-note{margin:24px 0 0;padding:12px 15px;border-left:3px solid var(--green);font-size:9px;line-height:1.7;color:#5f6c7c;background:var(--cream)}.campaign-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:46px}.campaign-gallery figure{margin:0}.campaign-gallery img{display:block;width:100%;height:250px;object-fit:cover;object-position:center 26%;border-radius:7px;background:var(--cream)}.campaign-gallery figcaption{line-height:1.5;color:#667487}.vote{background:var(--deep);color:#fff;padding:70px 10%;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;overflow:hidden}.vote>div:not(.vote-number){position:relative;z-index:1}.vote h2{font:750 clamp(29px,4vw,43px)/1.18 var(--display);letter-spacing:-.05em;margin:15px 0 12px}.vote h2 em{font-style:normal;color:#ff874f}.vote p{font-size:10px;color:#ccd5e3;margin-bottom:20px}.vote-number{position:absolute;right:24%;top:-110px;color:#ffffff0a;font:800 420px/.9 var(--display)}.button-white{background:#fff;color:var(--navy)}.vote time{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.vote time b{font:800 58px var(--display);color:#ff874f}.vote time span{font-size:9px;font-weight:800;line-height:1.5;letter-spacing:.12em}.join{display:flex;align-items:center;justify-content:space-between;gap:25px}.join h2{font:750 25px var(--display);color:var(--navy);margin:8px 0}.join p{font-size:11px;color:var(--muted);margin:0}.button-navy{background:var(--navy);color:#fff}footer{background:#07142d;color:#fff;padding:45px 7.5% 19px}.footer-main{display:grid;grid-template-columns:1.1fr 1.4fr 1fr .5fr;align-items:center;gap:22px;padding-bottom:35px}.brand-footer{color:#fff}.brand-footer img{width:46px;height:46px}.brand-footer small{color:#9daabe}.footer-main>p{font-size:9px;line-height:1.7;color:#a9b8c9;margin:0}.footer-contact{display:flex;flex-direction:column;gap:9px;font-size:9px;color:#d2dbe5}.footer-social{font-size:9px;font-weight:700}.footer-bottom{border-top:1px solid #ffffff26;padding-top:16px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.12em;color:#8998ad}.footer-bottom a{color:#c6d0de}
@media(max-width:980px){.site-header{padding:0 5%}.main-nav{gap:15px}.hero{padding-left:7%;padding-right:7%;grid-template-columns:1fr 320px}.section-pad{padding:73px 7%}.member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.member-portrait{height:190px}.footer-main{grid-template-columns:1fr 1fr}.vote{padding-left:7%;padding-right:7%}}
@media(max-width:620px){.site-header{height:72px}.brand img{width:43px;height:43px}.brand strong{font-size:13px}.brand small{font-size:6px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:none;padding:10px}.menu-toggle span{width:22px;height:2px;background:var(--navy)}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:14px 7%;box-shadow:0 12px 22px #10234b16;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav>a{padding:12px 0;border-bottom:1px solid #edf0f4}.main-nav .nav-cta{padding:12px;margin-top:8px;text-align:center;border:0}.hero{display:flex;flex-direction:column;align-items:stretch;padding:52px 7% 48px;gap:32px}.hero h1{font-size:47px}.hero-copy>p{font-size:13px}.hero-date{margin-top:28px}.campaign-art img{width:min(100%,350px)}.section-pad{padding:60px 7%}.campaign-grid{grid-template-columns:1fr;gap:18px;margin-top:29px}.campaign h2,.results h2,.roster h2{font-size:35px}.proposal-layout{grid-template-columns:1fr;gap:24px;margin-top:37px}.proposal-art img{max-width:360px}.proposal-list article{padding:14px}.results-heading{display:block;margin:29px 0 22px}.results-heading>p{margin-top:14px}.results-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.result-card,.metric{padding:13px;min-height:92px}.result-feature{grid-column:span 2}.result-card h3{font-size:11px}.metric strong{font-size:23px}.history-cards{grid-template-columns:1fr;gap:10px}.history-card{grid-template-columns:112px 1fr;min-height:135px}.history-card>div{padding:13px}.roster-intro{display:block;margin:30px 0 22px}.roster-intro>p{margin-top:14px}.organ-heading h3{font-size:18px}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.member-portrait{height:175px}.member-info{padding:10px;min-height:72px}.member-info h4{font-size:10px}.campaign-gallery{grid-template-columns:1fr 1fr;gap:10px;margin-top:35px}.campaign-gallery figure:last-child{grid-column:span 2}.campaign-gallery img{height:215px}.vote{padding:56px 7%;display:block}.vote h2{font-size:31px}.vote-number{font-size:290px;right:-5%;top:110px}.vote time{margin-top:28px}.join{display:block}.join>.button{margin-top:19px}.footer-main{grid-template-columns:1fr;gap:19px;align-items:start;padding-bottom:28px}.footer-main>p{margin:0}.footer-bottom{flex-wrap:wrap;gap:11px;font-size:7px}footer{padding:38px 7% 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Las piezas gráficas de campaña se muestran completas; no usar recorte de portada. */
.campaign-gallery figure{margin:0;background:var(--cream);border:1px solid var(--line);border-radius:7px;overflow:hidden}
.campaign-gallery img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;object-position:center;border-radius:0;background:var(--cream)}
.campaign-gallery figcaption{padding:9px 12px 12px;margin:0;min-height:36px;line-height:1.5;color:#667487;background:#fff}
/* Las miniaturas y retratos conservan el arte y el encuadre completo. */
.history-card img{width:100%;height:auto;aspect-ratio:4/5;max-height:220px;object-fit:contain;object-position:center;background:var(--deep);align-self:center}
.member-portrait{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;background:#dfe7f2}

/* Jerarquía editorial: las propuestas se leen una sola vez, con espacio para explicar cada compromiso. */
.proposal-layout{display:block;margin-top:0}
.proposal-intro{max-width:760px;margin:52px auto 22px;padding:0 2px}
.proposal-intro p{font-size:13px;line-height:1.75;color:var(--muted);margin:9px 0 0}
.proposal-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1000px;margin:0 auto}
.proposal-list article{min-height:150px;padding:23px 24px;background:#f5f7fa;gap:17px;border-left-width:4px}
.proposal-list h3{font-size:17px;margin-bottom:9px}
.proposal-list p{font-size:12px;line-height:1.75}
.result-feature{align-items:flex-start;min-height:160px;padding:22px}
.result-card h3{font-size:14px;margin-bottom:8px}
.result-card p{font-size:11px;line-height:1.7}
.metric{min-height:118px;justify-content:center}
.metric span{font-size:9px;line-height:1.5}
.organ+.organ{margin-top:55px}
.member-card{border-radius:9px}
.member-portrait{height:auto;aspect-ratio:4/3;object-fit:contain;background:#e8edf4}
.member-info{min-height:106px;padding:14px}
.member-info h4{font-size:12px;line-height:1.45}
.campaign-gallery-section{margin-top:64px;padding-top:28px;border-top:1px solid var(--line)}
.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}
.gallery-heading h3{font:750 24px var(--display);color:var(--navy);margin:7px 0 0}
.gallery-heading>p{font-size:11px;line-height:1.6;color:var(--muted);margin:0}
.campaign-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:0}
.campaign-gallery figure{min-width:0;display:flex;flex-direction:column}
.campaign-gallery .gallery-wide{grid-column:span 2}
.campaign-gallery img{width:100%;height:auto;max-height:460px;aspect-ratio:4/5;object-fit:contain;object-position:center;background:#edf1f6;border-radius:5px}
.campaign-gallery figcaption{font-size:10px;font-weight:700;line-height:1.45;color:#627187;padding:8px 2px 0}
@media(max-width:620px){.proposal-intro{margin:35px auto 18px}.proposal-list{grid-template-columns:1fr}.proposal-list article{min-height:unset;padding:18px}.proposal-list h3{font-size:15px}.proposal-list p{font-size:11px}.result-feature{min-height:140px;padding:15px}.result-card h3{font-size:12px}.result-card p{font-size:10px}.organ+.organ{margin-top:40px}.member-info{min-height:96px;padding:10px}.member-info h4{font-size:10px}.campaign-gallery-section{margin-top:44px}.gallery-heading{display:block}.gallery-heading>p{margin-top:7px}.gallery-heading h3{font-size:21px}.campaign-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.campaign-gallery .gallery-wide{grid-column:span 2}.campaign-gallery img{max-height:360px}}

/* Afinado responsive para teléfonos pequeños y tabletas. */
@media(max-width:980px){
  .site-header{padding-inline:5%}
  .main-nav{gap:14px;font-size:10px}
  .hero{grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:5%;min-height:590px}
  .section-pad{padding-inline:7%}
  .results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .result-feature{grid-column:span 1}
  .member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .member-portrait{aspect-ratio:1/1}
}
@media(max-width:760px){
  .site-header{height:72px;padding-inline:5%;}
  .menu-toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;cursor:pointer;border-radius:4px}
  .main-nav{display:none;position:absolute;top:71px;left:0;right:0;padding:10px 5% 16px;background:#fff;box-shadow:0 14px 22px #10234b20;flex-direction:column;align-items:stretch;gap:0}
  .main-nav.open{display:flex}
  .main-nav>a{padding:14px 8px;border-bottom:1px solid #edf0f4;font-size:14px}
  .main-nav .nav-cta{margin-top:10px;text-align:center;border:0;padding:14px}
  .hero{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.68fr);align-items:center;gap:24px;padding:54px 6% 58px}
  .hero h1{font-size:clamp(39px,7vw,56px)}
  .hero-copy>p{font-size:14px}
  .hero-date{margin-top:26px}
  .campaign-art img{width:100%}
  .campaign-grid{grid-template-columns:1fr;gap:20px}
  .campaign-copy p:first-child{font-size:15px}
  .proposal-list{grid-template-columns:1fr}
  .proposal-list article{min-height:0}
  .results-heading{align-items:start}
  .roster-intro{align-items:start}
  .organ-heading h3{font-size:19px}
  .member-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .member-info{min-height:100px}
  .vote{padding:54px 7%}
  .footer-main{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .brand{gap:9px}
  .brand img{width:42px;height:42px}
  .brand strong{font-size:13px}
  .brand small{font-size:6px}
  .hero{grid-template-columns:1fr;gap:28px;padding:43px 6% 49px}
  .hero h1{font-size:clamp(42px,11vw,54px);margin:19px 0 14px}
  .hero-copy>p{font-size:13px}
  .button{min-height:46px;padding:13px 15px;font-size:11px}
  .campaign-art img{width:min(100%,310px)}
  .section-pad{padding:52px 6%}
  .section-label{font-size:8px;gap:9px;flex-wrap:wrap}
  .campaign h2,.results h2,.roster h2{font-size:clamp(31px,8.5vw,38px)}
  .campaign-copy p,.campaign-copy p:first-child{font-size:13px;line-height:1.75}
  .arrow-link{font-size:11px;line-height:1.5}
  .proposal-list article{padding:17px;gap:12px}
  .proposal-list h3{font-size:14px}
  .proposal-list p{font-size:11px}
  .results-heading{display:block;margin:27px 0 22px}
  .results-heading>p{margin-top:13px;font-size:12px}
  .results-grid{grid-template-columns:1fr 1fr;gap:8px}
  .result-feature{grid-column:span 2;min-height:0;padding:15px;gap:10px}
  .result-card h3{font-size:12px}
  .result-card p{font-size:10px}
  .metric{min-height:100px;padding:12px}
  .metric strong{font-size:23px}
  .metric span{font-size:9px}
  .roster-intro{display:block;margin:28px 0 26px}
  .roster-intro>p{margin-top:12px;font-size:11px}
  .organ{margin-top:28px;padding-top:18px}
  .organ+.organ{margin-top:36px}
  .organ-heading{gap:12px;align-items:center}
  .organ-heading h3{font-size:17px;line-height:1.3}
  .organ-heading>b{font-size:17px;flex:none}
  .member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .member-portrait{aspect-ratio:4/3}
  .member-info{min-height:88px;padding:10px}
  .member-info h4{font-size:10px}
  .member-role{font-size:7px;line-height:1.4}
  .source-note{font-size:10px}
  .campaign-gallery-section{margin-top:40px;padding-top:22px}
  .gallery-heading h3{font-size:20px}
  .campaign-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .campaign-gallery .gallery-wide{grid-column:span 2}
  .campaign-gallery img{max-height:330px;aspect-ratio:4/5}
  .campaign-gallery figcaption{font-size:9px;padding-top:6px}
  .vote{padding:45px 6%;display:block}
  .vote h2{font-size:clamp(27px,7.7vw,34px);line-height:1.2}
  .vote p{font-size:11px;line-height:1.6}
  .vote time{margin-top:25px}
  .vote time b{font-size:48px}
  .join{display:block}
  .join h2{font-size:23px}
  .join p{font-size:12px;line-height:1.6}
  .join>.button{margin-top:18px}
  .footer-main{grid-template-columns:1fr;gap:18px}
  .footer-contact{font-size:11px}
  .footer-social{font-size:11px}
  .footer-bottom{justify-content:flex-start;gap:12px 20px;font-size:8px}
}
@media(max-width:360px){
  .hero h1{font-size:40px}
  .member-grid{grid-template-columns:1fr 1fr;gap:7px}
  .member-info{padding:8px;min-height:88px}
  .member-info h4{font-size:9px}
  .campaign-gallery{gap:7px}
  .vote h2{font-size:27px}
}

/* Visor ampliado para afiches y retratos. */
.campaign-gallery img,.member-portrait{cursor:zoom-in}
.member-portrait:focus-visible,.campaign-gallery img:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
body.lightbox-open{overflow:hidden}
.lightbox[hidden]{display:none}
.lightbox{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:minmax(50px,1fr) minmax(0,1100px) minmax(50px,1fr);grid-template-rows:1fr auto;align-items:center;justify-items:center;gap:0 16px;padding:64px 24px 40px;background:#07142df2;backdrop-filter:blur(5px)}
.lightbox-content{grid-column:2;grid-row:1;margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}
.lightbox-content img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100vh - 145px);object-fit:contain;border-radius:3px;box-shadow:0 16px 70px #0008}
.lightbox-content figcaption{margin-top:12px;color:#fff;font-size:12px;text-align:center}
.lightbox button{border:1px solid #ffffff55;background:#ffffff12;color:#fff;width:46px;height:46px;border-radius:50%;font:400 32px/1 Arial,sans-serif;cursor:pointer;transition:background .18s ease,transform .18s ease}
.lightbox button:hover{background:#ffffff2b;transform:scale(1.05)}
.lightbox button:focus-visible{outline:3px solid #ff874f;outline-offset:3px}
.lightbox-close{position:absolute;top:18px;right:22px}
.lightbox-prev{grid-column:1;grid-row:1}
.lightbox-next{grid-column:3;grid-row:1}
.lightbox-count{grid-column:2;grid-row:2;color:#d8e0ed;font-size:11px;margin:16px 0 0}
@media(max-width:620px){.lightbox{grid-template-columns:42px minmax(0,1fr) 42px;gap:0 6px;padding:64px 8px 28px}.lightbox button{width:38px;height:38px;font-size:27px}.lightbox-close{top:13px;right:13px}.lightbox-content img{max-height:calc(100vh - 155px)}.lightbox-content figcaption{font-size:11px}.lightbox-count{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.lightbox button{transition:none}}

/* El archivo nuevo ya trae fondo blanco y márgenes limpios: mostrarlo completo y centrado. */
.brand img,.brand-footer img{display:block;width:58px;height:58px;flex:0 0 58px;object-fit:contain;object-position:center;background:#fff;border-radius:0;padding:0}
@media(max-width:760px){.brand img{width:46px;height:46px;flex-basis:46px}.brand-footer img{width:46px;height:46px;flex-basis:46px}}
