@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{--paper:#faf8f2;--ink:#242923;--red:#b6382f;--yellow:#edc453;--line:#deded4;--muted:#686d63}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:6px}.header,main,footer{max-width:1320px;margin:auto}.header{padding:30px 56px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;font-weight:700;font-size:14px;line-height:1.25}.brand-dot{color:var(--red)}.symbol{display:flex;gap:4px;align-items:center;height:38px;transform:rotate(-12deg)}.symbol i{display:block;width:9px;height:27px;background:var(--red);border-radius:7px}.symbol i:nth-child(2){height:38px;background:var(--yellow)}.symbol i:nth-child(3){height:32px}nav{display:flex;gap:34px;align-items:center;font-size:13px;font-weight:600}.nav-join{border:1px solid #bfc2b7;padding:12px 17px;border-radius:5px}.nav-join span{margin-left:15px}.hero{padding:76px 56px 64px;display:grid;grid-template-columns:1.2fr 1fr;gap:58px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 24px;display:flex;align-items:center;gap:8px}.eyebrow>span{width:7px;height:7px;background:var(--red);border-radius:50%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(44px,5.25vw,72px);font-weight:800;line-height:1.08;letter-spacing:-3.5px;margin-bottom:26px}h1 em{font-style:normal;color:var(--red)}.intro{font-size:18px;line-height:1.65;color:var(--muted);margin-bottom:28px}.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:25px;background:var(--red);color:white;border:0;border-radius:5px;padding:16px 20px;font:600 13px 'DM Sans',sans-serif}.button:hover{background:#952d25}.text-link{font-size:12px;font-weight:600}.text-link span{margin-left:8px}.hero-note{font-size:11px;color:var(--muted);margin:25px 0 0;max-width:350px;line-height:1.7}.hero-art{position:relative;min-height:478px;background:#e9e8dc;border-radius:140px 8px 8px 8px;overflow:hidden}.art-top{position:absolute;top:34px;right:28px;font-size:10px;letter-spacing:2px;font-weight:700}.ribbon{position:absolute;width:115px;height:480px;border-radius:100px;transform:rotate(34deg);top:14px}.ribbon-one{background:var(--red);left:35px;top:100px}.ribbon-two{background:var(--yellow);left:170px;top:-54px}.ribbon-three{background:#b6382f;left:305px;top:53px}.art-bottom{position:absolute;bottom:0;left:0;right:0;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);font-size:11px;letter-spacing:2px;line-height:1.6}.art-bottom strong{font-size:23px;letter-spacing:1px}.art-star{font-size:46px;color:var(--yellow)}.section-divider{margin:0 56px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:2px;font-weight:600}.section-divider>span:last-child{font-size:20px}.section{padding:70px 56px;display:grid;grid-template-columns:1fr 1fr;gap:80px}h2{font-size:39px;letter-spacing:-1.6px;line-height:1.2;font-weight:700}.section-intro{font-size:18px;line-height:1.65}.pending{border-top:1px solid var(--line);padding-top:25px}.status{display:inline-block;font-size:9px;letter-spacing:1.5px;font-weight:700;background:#ecece3;color:#525a4d;padding:7px 9px;border-radius:3px;margin-bottom:18px}h3{font-size:21px;letter-spacing:-.6px;margin-bottom:12px}.pending p,.signup>p{font-size:14px;color:var(--muted);line-height:1.8}.pending-line{display:block;width:40px;height:3px;background:var(--yellow);margin:23px 0}.pending .small{font-size:11px}.participate{background:#eeeee5;border-radius:8px;margin:0 24px;padding:58px 32px;align-items:center}.participate-copy{color:var(--muted);font-size:16px;line-height:1.8;max-width:340px}.membership-note{border-left:2px solid #bfc2b3;padding-left:15px;margin:28px 0 0;font-size:12px;line-height:1.8;color:var(--muted);max-width:340px}.signup{padding:28px;background:var(--paper);border:1px solid #e1e1d6;border-radius:7px}fieldset{padding:0;border:0;margin:0;min-width:0}label{display:block;font-size:12px;font-weight:600;margin:14px 0 8px}input{width:100%;border:1px solid #dcded3;background:#f3f3ec;border-radius:4px;padding:13px;font:13px 'DM Sans',sans-serif}input:disabled{opacity:1;color:#74796d;-webkit-text-fill-color:#74796d}.signup button{width:100%;margin-top:20px}.signup button:disabled{background:#e2e3d8;color:#666d5e;cursor:not-allowed}.signup .form-note{font-size:10px;line-height:1.7;margin:14px 0 0}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:35px 56px;font-size:10px;color:var(--muted)}footer p{margin:0}.footer-name{font-weight:700;color:var(--ink);font-size:11px}.footer-name span{color:var(--red)}@media(min-width:1400px){.hero{padding-top:90px;padding-bottom:80px}}@media(max-width:900px){.header{padding:24px}.hero{padding:50px 24px;gap:24px}.hero-art{min-height:440px}.ribbon{width:100px}.ribbon-one{left:0}.ribbon-two{left:115px}.ribbon-three{left:230px}.section-divider{margin:0 24px}.section{padding:50px 24px;gap:35px}.participate{padding:35px 24px;margin:0 16px}h2{font-size:32px}footer{padding:28px 24px;flex-wrap:wrap}}@media(max-width:620px){.header{padding:20px}.brand{font-size:11px}.symbol{transform:scale(.85) rotate(-12deg)}nav{gap:0}nav>a:first-child{display:none}.nav-join{font-size:10px;padding:10px}.nav-join span{margin-left:5px}.hero{grid-template-columns:1fr;padding:40px 20px;gap:35px}h1{font-size:52px;letter-spacing:-2.8px}.intro{font-size:16px}.hero-art{min-height:320px;border-top-left-radius:90px}.ribbon{height:410px;width:100px}.ribbon-one{left:45px;top:30px}.ribbon-two{left:170px;top:-100px}.ribbon-three{left:295px;top:-10px}.art-top{font-size:8px}.art-bottom{padding:14px 22px}.section-divider{margin:0 20px;font-size:8px;letter-spacing:1px}.section{grid-template-columns:1fr;padding:40px 20px;gap:10px}.section .eyebrow{margin-bottom:18px}h2{font-size:33px}.participate{padding:30px 18px;gap:28px}.signup{padding:22px}.membership-note{margin-top:20px}.actions{gap:18px}footer{padding:28px 20px;align-items:flex-start;flex-direction:column;gap:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.capital-proposal h4{font-size:14px;margin:24px 0 10px}.capital-proposal ul,.capital-proposal ol{padding-left:22px;color:var(--muted);font-size:14px;line-height:1.8}.capital-proposal li{margin-bottom:10px}.capital-proposal .small a{text-decoration:underline;text-underline-offset:3px}

/* Programa en una columna centrada y con mayor tamaño de lectura. */
.program.section {
  grid-template-columns: minmax(0, 1fr);
  gap: 24px;
}
.program > div:first-child {
  text-align: center;
}
.program > div:first-child .eyebrow {
  justify-content: center;
}
.program-copy {
  width: 100%;
  max-width: 820px;
  margin-inline: auto;
  min-width: 0;
}
.program .section-intro {
  text-align: center;
  font-size: 20px;
  margin-bottom: 36px;
}
.program .pending {
  padding-top: 32px;
  margin-top: 32px;
}
.program h3 {
  font-size: clamp(24px, 3vw, 28px);
  line-height: 1.35;
}
.program .pending p,
.program .pending li {
  font-size: 18px;
  line-height: 1.8;
}
.program .pending .small {
  font-size: 14px;
}
.program .status {
  font-size: 11px;
}
.program .capital-proposal h4 {
  font-size: 19px;
}
@media (max-width: 620px) {
  .program .pending p,
  .program .pending li {
    font-size: 17px;
  }
  .program .pending .small {
    font-size: 13px;
  }
  .program .section-intro {
    font-size: 18px;
  }
}

.program-principle{text-align:center;font-size:18px;line-height:1.7;margin-bottom:28px}
.program-index{border:1px solid var(--line);border-radius:8px;padding:20px 28px;margin:28px 0 40px}
.program-index ol{padding-left:22px;margin:0;display:grid;gap:12px}
.program-index a{font-size:16px;line-height:1.5;text-decoration:underline;text-underline-offset:4px}
.program .proposal-detail{margin:30px 0 0;padding:0;min-width:0}
.program .proposal-detail h4{font-size:22px;line-height:1.4;margin:0 0 16px}
.program .proposal-detail h5{font-size:19px;line-height:1.4;margin:24px 0 12px}
.program .program-block>h3{font-size:clamp(26px,3vw,32px)}
.program .proposal-detail .pending-line{margin:20px 0}
@media(max-width:620px){.program-index{padding:18px}.program .proposal-detail h4{font-size:21px}}

.salary-table-wrap{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid var(--line);border-radius:8px}
.salary-table-wrap:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.salary-table{width:100%;border-collapse:collapse;font-size:16px;font-variant-numeric:tabular-nums;min-width:620px}
.salary-table caption{text-align:left;padding:18px;font-weight:700;background:#eeeee5;line-height:1.5}
.salary-table th,.salary-table td{padding:14px 16px;text-align:right;border-bottom:1px solid var(--line);line-height:1.5}
.salary-table thead th{background:#f1f1e9;font-size:14px;vertical-align:bottom}
.salary-table th:first-child{text-align:left}
.salary-table tbody th{font-weight:500;white-space:nowrap}
.salary-table tbody tr:nth-child(even){background:#f5f4ed}
.salary-table tbody tr:last-child>*{border-bottom:0}
.program .small a{text-decoration:underline;text-underline-offset:3px}

.visit-counter{max-width:1320px;margin:0 auto;padding:0 56px 32px;color:var(--muted);font-size:12px}.visit-counter>p{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.visit-counter strong{color:var(--ink);font-size:18px;font-variant-numeric:tabular-nums}.visit-counter summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.visit-counter details p{max-width:760px;line-height:1.7;margin:12px 0 0}@media(max-width:620px){.visit-counter{padding:0 20px 28px}}

/* Contador visible al entrar en la web. */
.visit-counter{padding:12px 56px;background:#eeeee5;border-bottom:1px solid var(--line)}.visit-counter>p{margin:0 0 5px}.visit-counter summary{font-size:11px}@media(max-width:620px){.visit-counter{padding:12px 20px}}

.poll legend{font-family:Manrope,sans-serif;font-size:20px;font-weight:700;line-height:1.5;margin:16px 0}.poll .poll-option{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:6px;line-height:1.5;font-size:14px;cursor:pointer}.poll input[type=radio]{width:18px;height:18px;flex-shrink:0;accent-color:var(--red)}#poll-status{font-size:13px;line-height:1.6;margin:16px 0}#poll-results{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}#poll-results h3{font-size:18px}#poll-results p{display:flex;justify-content:space-between;gap:10px;font-size:13px;margin:12px 0 6px}#poll-results progress{display:block;width:100%;height:10px;accent-color:var(--red)}
