/* Loaded only for Gestión de Proyectos y Fuentes de Financiación. */
.pc-projects{--projects-blue:#12344e;--projects-line:#dce5e8;--projects-gold:#f5c400}
.pc-projects .pc-projects-hero{min-height:620px;padding:145px 0 52px;background-position:center 65%;position:relative}
.pc-projects .pc-projects-hero{background-image:url('../images/proyectos-financiacion-hero-20260924.webp')!important;background-position:center center}
.pc-projects .pc-projects-hero:before{background:linear-gradient(90deg,rgba(5,26,43,.92),rgba(5,26,43,.7) 58%,rgba(5,26,43,.22));opacity:1}
.pc-projects .pc-projects-hero h1{max-width:980px;font-size:clamp(32px,4vw,55px);line-height:1.1}
.pc-projects .pc-projects-hero .pc-container>p:not(.pc-eyebrow){max-width:860px;font-size:17px;line-height:1.75}
.pc-projects-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:26px}
.pc-projects .pc-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-radius:7px;background:#f5c400;color:#102e43;font-size:13px;line-height:1.5;font-weight:800;text-decoration:none;min-height:48px}
.pc-projects a:focus-visible{outline:3px solid #ba8d00;outline-offset:4px}.pc-projects .pc-btn:hover{background:#ffda35}
.pc-projects-textlink{color:#fff;font-size:14px;font-weight:700;text-decoration:none}
.pc-projects-photo-note{display:block;font-size:11px;color:#dce6ed;margin-top:38px;letter-spacing:.04em}
.pc-projects h2{font-size:clamp(25px,2.4vw,36px);line-height:1.2;color:var(--projects-blue)}
.pc-projects .pc-area-intro{align-items:center;gap:52px}
.pc-projects .pc-area-lead{margin-top:24px}
.pc-projects .pc-area-lead__first{font-size:19px}
.pc-projects-thread{border-top:1px solid var(--projects-line);padding-top:20px;margin-top:24px;display:flex;flex-wrap:wrap;gap:9px;color:var(--projects-blue);font-weight:800;font-size:12px}
.pc-projects-thread span{color:#94770b}
.pc-projects-photos{display:grid;gap:16px;min-width:0}
.pc-projects-photos figure{position:relative;margin:0;overflow:hidden;border-radius:14px;isolation:isolate;background:#12344e;aspect-ratio:2/1}
.pc-projects-photos img{display:block;width:100%;height:100%;object-fit:cover}
.pc-projects-photos figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 20px 17px;background:linear-gradient(transparent,rgba(5,26,43,.94));color:white;font-size:13px;line-height:1.5}
.pc-projects-photos figcaption span{display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#f3d654}
.pc-projects-components{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.pc-projects-components .pc-info-card{padding:26px 22px;border:1px solid var(--projects-line);box-shadow:none;border-radius:12px}
.pc-projects-cardtop{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;color:#176276}
.pc-projects-cardtop span{font:600 12px 'Roboto Mono',monospace;color:#617786}
.pc-projects-cardtop svg{width:32px;height:32px}
.pc-projects-components h3{font-size:19px;line-height:1.3;color:var(--projects-blue);margin:0 0 14px}
.pc-projects-components p{font-size:14px;line-height:1.75;margin:0}
.pc-projects-route{margin-top:36px;padding:30px;border-radius:12px;background:#11354e;color:#fff;scroll-margin-top:100px}
.pc-projects-route .pc-eyebrow{color:#f5d75a}.pc-projects-route h3{color:#fff;margin:8px 0 26px;font-size:22px}
.pc-projects-route ol{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:0;counter-reset:route}
.pc-projects-route li{position:relative;font-size:12px;font-weight:700;line-height:1.5;counter-increment:route;padding-top:38px}
.pc-projects-route li:before{content:counter(route,decimal-leading-zero);position:absolute;top:0;left:0;font:600 11px 'Roboto Mono',monospace;color:#f5d75a;border-top:2px solid #f5c400;padding-top:8px;width:100%}
.pc-projects-route li:not(:last-child):after{content:'→';position:absolute;right:-14px;top:9px;color:#8da8b8}
.pc-projects-services-intro{max-width:790px;line-height:1.8;color:#536779;margin:-4px 0 26px}
.pc-projects-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pc-projects-tools article{display:flex;flex-direction:column;align-items:flex-start;background:white;border:1px solid var(--projects-line);border-radius:12px;padding:28px}
.pc-projects-status{display:inline-block;padding:5px 9px;border-radius:5px;background:#fff4cf;color:#705911;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.pc-projects-status--technical{background:#edf3f6;color:#416071}
.pc-projects-tools h3{font-size:21px;line-height:1.3;color:var(--projects-blue);margin:20px 0 10px}
.pc-projects-tools p{font-size:14px;line-height:1.75;margin:0 0 24px;color:#536779}
.pc-projects-tools a,.pc-projects-tool-note{margin-top:auto;font-size:13px;font-weight:800;color:#126479}.pc-projects-tool-note{color:#737b7e}
.pc-projects-contact{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:32px;padding-top:30px;border-top:1px solid var(--projects-line)}
.pc-projects-contact h3{font-size:21px;margin:0 0 8px;color:var(--projects-blue)}.pc-projects-contact p{max-width:680px;margin:0;font-size:14px;line-height:1.75;color:#536779}
.pc-projects-contact .pc-btn{flex-shrink:0}
.pc-projects #tableros{scroll-margin-top:90px}
@media(max-width:480px){.pc-projects .pc-projects-hero h1{max-width:calc(100% - 42px);font-size:30px}}
@media(max-width:1050px){.pc-projects-components{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-projects-route ol{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:24px}.pc-projects-route li:nth-child(4):after{display:none}.pc-projects .pc-area-intro{gap:28px}.pc-projects-tools article{padding:20px}}
@media(max-width:700px){.pc-projects .pc-projects-hero{padding:118px 0 34px;min-height:0}.pc-projects .pc-projects-hero .pc-container>p:not(.pc-eyebrow){font-size:15px}.pc-projects-actions{gap:18px}.pc-projects .pc-area-intro{display:block}.pc-projects-photos{margin-top:28px}.pc-projects-components,.pc-projects-tools{grid-template-columns:1fr}.pc-projects-components .pc-info-card{padding:22px}.pc-projects-cardtop{margin-bottom:16px}.pc-projects-route{padding:24px 18px}.pc-projects-route ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.pc-projects-route li:nth-child(even):after{display:none}.pc-projects-contact{align-items:flex-start;flex-direction:column}.pc-projects-photo-note{margin-top:28px}}

/* Project portfolio: full sheets remain available in the lightbox. */
.pc-portfolio{margin-bottom:56px;padding-bottom:44px;border-bottom:1px solid var(--projects-line)}
.pc-portfolio>p:not(.pc-eyebrow){margin:16px 0 26px;color:#536779}
.pc-portfolio-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:5px 4px 18px}
.pc-portfolio-card{flex:0 0 calc((100% - 66px)/4);min-width:0;scroll-snap-align:start;background:#fff;border:1px solid #dce5e8;border-radius:12px;overflow:hidden;text-decoration:none;color:#12344e;transition:box-shadow .2s}
.pc-portfolio-card:hover{box-shadow:0 8px 20px #12344e22}
.pc-portfolio-card img{display:block;width:100%;height:auto;aspect-ratio:2/3;object-fit:contain;background:#fff}
.pc-portfolio-card>span{display:flex;justify-content:space-between;padding:16px;font-size:14px;font-weight:800;border-top:1px solid #dce5e8}
.pc-portfolio-controls{display:flex;align-items:center;gap:12px;margin-top:16px}.pc-portfolio-controls>span{margin-left:6px;font-size:13px;color:#536779}
.pc-portfolio button{cursor:pointer;font:inherit;color:#12344e;background:#fff;border:1px solid #c7d5df;padding:10px 16px;border-radius:8px}
.pc-portfolio button:focus-visible,.pc-portfolio-dialog a:focus-visible,.pc-portfolio-image img:focus-visible{outline:3px solid #00699a;outline-offset:3px}
.pc-portfolio-controls button{border-radius:50%;width:46px;height:46px;padding:0;font-size:22px}.pc-portfolio button:disabled{opacity:.4;cursor:default}
.pc-portfolio-dialog{box-sizing:border-box;width:min(1100px,calc(100% - 32px));height:calc(100dvh - 32px);max-height:none;max-width:none;padding:0;border:0;border-radius:12px;background:#edf1f4;color:#12344e;overflow:hidden}
.pc-portfolio-dialog[open]{display:flex;flex-direction:column}.pc-portfolio-dialog::backdrop{background:#031525dc}
.pc-portfolio-dialog header,.pc-portfolio-dialog footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;background:white;flex-shrink:0}
.pc-portfolio-dialog header strong{font-size:16px}.pc-portfolio-dialog header>span{margin-left:auto;font-size:13px}.pc-portfolio-dialog footer a{color:#126479;font-size:13px;font-weight:700}
.pc-portfolio-image{flex:1;min-height:0;overflow:auto;text-align:center;padding:12px}
.pc-portfolio-image img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain;margin:auto;cursor:zoom-in}
.pc-portfolio-image img.is-zoomed{width:1024px;height:auto;max-width:none;cursor:zoom-out}
@media(max-width:1000px){.pc-portfolio-card{flex-basis:calc((100% - 44px)/3)}}
@media(max-width:700px){.pc-portfolio-track{gap:16px}.pc-portfolio-card{flex-basis:76%}.pc-portfolio{margin-bottom:36px;padding-bottom:30px}.pc-portfolio-dialog{width:calc(100% - 16px);height:calc(100dvh - 16px)}.pc-portfolio-dialog header,.pc-portfolio-dialog footer{gap:8px;padding:10px}.pc-portfolio-dialog header strong{font-size:13px}.pc-portfolio-dialog button{padding:10px;font-size:12px}.pc-portfolio-dialog footer a{font-size:11px}.pc-portfolio-image{display:flex;align-items:center}.pc-portfolio-image img{height:auto;max-height:100%;width:100%}.pc-portfolio-image img.is-zoomed{max-height:none;width:1024px;flex-shrink:0;align-self:flex-start}}

#portafolio-proyectos{scroll-margin-top:100px}
