:root{--navy:#082a43;--navy2:#0d3859;--ink:#172633;--muted:#61717c;--line:#dfe6ea;--paper:#f7f9fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.project-page{margin:0;font-family:"DM Sans",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.7}.project-page h1,.project-page h2,.project-page h3{font-family:Montserrat,"DM Sans",Arial,sans-serif;line-height:1.15;margin:0}.project-shell{width:min(1160px,calc(100% - 40px));margin:auto}.project-header{position:sticky;top:0;z-index:20;background:rgba(8,42,67,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.1)}.project-header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.project-brand img{width:205px;height:auto;display:block}.project-nav{display:flex;align-items:center;gap:24px}.project-nav a{color:#fff;text-decoration:none;font-size:.92rem;font-weight:600}.project-nav .project-contact{border:1px solid rgba(255,255,255,.7);padding:10px 17px;border-radius:999px}.project-hero{background:linear-gradient(135deg,#082a43,#0f456d);color:#fff;padding:78px 0 64px}.project-breadcrumb{font-size:.82rem;margin-bottom:22px;color:rgba(255,255,255,.72)}.project-breadcrumb a{color:#fff;text-decoration:none}.project-eyebrow{font-size:.76rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase;opacity:.8;margin:0 0 16px}.project-hero h1{font-size:clamp(2.2rem,5vw,4.7rem);max-width:1000px;letter-spacing:-.04em}.project-hero .lead{font-size:clamp(1rem,1.7vw,1.2rem);max-width:820px;color:rgba(255,255,255,.82);margin:24px 0 0}.project-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.project-meta span{border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:7px 11px;font-size:.8rem}.project-cover{margin-top:38px;border-radius:18px;overflow:hidden;background:#0b2234;aspect-ratio:16/9}.project-cover img{width:100%;height:100%;display:block;object-fit:cover}.project-content{padding:72px 0}.project-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:70px;align-items:start}.project-copy h2{font-size:clamp(1.45rem,2.4vw,2.15rem);letter-spacing:-.02em;margin:52px 0 15px}.project-copy h2:first-child{margin-top:0}.project-copy p{color:#465965;margin:0 0 22px}.project-facts{position:sticky;top:120px;border-top:2px solid var(--navy);padding-top:14px}.project-facts dl{margin:0}.project-facts div{padding:12px 0;border-bottom:1px solid var(--line)}.project-facts dt{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700}.project-facts dd{margin:4px 0 0;font-weight:600}.project-gallery{padding:0 0 76px}.project-gallery h2,.project-plans h2,.project-process h2{font-size:clamp(1.6rem,2.7vw,2.4rem);margin-bottom:24px}.project-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-gallery-grid figure{margin:0;background:var(--paper);border-radius:14px;overflow:hidden}.project-gallery-grid img,.project-gallery-grid video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.project-gallery-grid figcaption{padding:12px 14px;font-size:.86rem;color:var(--muted)}.project-plans,.project-process{padding:0 0 76px}.project-note{background:var(--paper);padding:24px 26px;border-left:3px solid var(--navy);color:#465965}.project-cta{background:#061e31;color:#fff;padding:54px 0}.project-cta-inner{display:flex;justify-content:space-between;gap:28px;align-items:center}.project-cta h2{font-size:clamp(1.5rem,2.6vw,2.3rem)}.project-cta p{color:rgba(255,255,255,.72);max-width:680px;margin:10px 0 0}.project-btn{display:inline-flex;white-space:nowrap;text-decoration:none;border-radius:999px;padding:12px 18px;background:#fff;color:var(--navy);font-weight:700}.project-footer{padding:26px 0;background:#041521;color:rgba(255,255,255,.68);font-size:.84rem}.project-footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.project-footer a{color:#fff}@media(max-width:880px){.project-grid{grid-template-columns:1fr;gap:40px}.project-facts{position:static}.project-gallery-grid{grid-template-columns:1fr}.project-shell{width:min(100% - 28px,1160px)}.project-header-inner{height:74px}.project-brand img{width:165px}.project-nav a:not(.project-contact){display:none}.project-hero{padding:60px 0 50px}.project-content{padding:52px 0}.project-cta-inner{align-items:flex-start;flex-direction:column}}


/* ====== Estilos para páginas internas de proyectos (v1.3.3) ====== */
body.project-case-page{margin:0;font-family:'DM Sans',Arial,sans-serif;background:#f4f7fa;color:#173246;line-height:1.6}
.project-case-page *{box-sizing:border-box}
.project-case-page a{text-decoration:none;color:inherit}
.project-case-page img{display:block;max-width:100%}
.project-case-page .shell{width:min(1160px,calc(100% - 36px));margin-inline:auto}
.project-case-page .hdr{position:sticky;top:0;z-index:50;background:rgba(8,42,67,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.project-case-page .hdr .shell{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.project-case-page .hdr img{width:205px;height:auto;object-fit:contain}
.project-case-page nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.project-case-page nav a{color:#fff;font-weight:700;font-size:.94rem;opacity:.92}
.project-case-page nav a:hover{opacity:1}
.project-case-page .hero{background:linear-gradient(135deg,#082a43,#0f456d);color:#fff;padding:78px 0 58px}
.project-case-page .ey{font-size:.78rem;letter-spacing:.18em;font-weight:800;text-transform:uppercase;color:#d8c39f;margin-bottom:16px}
.project-case-page .hero h1{font-family:'Montserrat',Arial,sans-serif;font-size:clamp(2.2rem,5vw,4.3rem);line-height:1.08;letter-spacing:-.04em;margin:0;max-width:980px}
.project-case-page .hero p{font-size:clamp(1rem,1.7vw,1.15rem);max-width:860px;margin:22px 0 0;color:rgba(255,255,255,.82)}
.project-case-page .facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:-26px;position:relative;z-index:2}
.project-case-page .facts>div{background:#fff;border:1px solid #dfe6ea;border-radius:18px;padding:18px 18px 16px;box-shadow:0 14px 34px rgba(3,20,33,.08)}
.project-case-page .facts span{display:block;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#61717c;font-weight:800;margin-bottom:6px}
.project-case-page .facts strong{display:block;font-size:.98rem;color:#173246}
.project-case-page .section{padding:58px 0 0}
.project-case-page .story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.project-case-page .story article{background:#fff;border:1px solid #dfe6ea;border-radius:20px;padding:24px 22px;box-shadow:0 10px 26px rgba(3,20,33,.05)}
.project-case-page .story h2{font-family:'Montserrat',Arial,sans-serif;font-size:1.55rem;letter-spacing:-.02em;margin:0 0 12px}
.project-case-page .story p{margin:0;color:#4a5e6c}
.project-case-page .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.project-case-page .gallery figure{margin:0;position:relative;overflow:hidden;border-radius:20px;background:#fff;border:1px solid #dfe6ea;box-shadow:0 10px 26px rgba(3,20,33,.05)}
.project-case-page .gallery figure.wide{grid-column:1/-1}
.project-case-page .gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#eef3f6}
.project-case-page .gallery figure.wide img{aspect-ratio:16/9;object-fit:contain;background:#f6f8fa}
.project-case-page .gallery figcaption{padding:14px 16px;color:#4a5e6c;font-size:.92rem}
.project-case-page .stage-badge{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;justify-content:center;padding:7px 11px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#fff;box-shadow:0 8px 18px rgba(0,0,0,.18)}
.project-case-page .stage-before{background:rgba(124,104,74,.95)}
.project-case-page .stage-process{background:rgba(15,69,109,.95)}
.project-case-page .stage-after{background:rgba(25,135,84,.95)}
.project-case-page .stage-propuesta{background:rgba(111,66,193,.95)}
.project-case-page .stage-plan{background:rgba(13,110,253,.95)}
.project-case-page .cta{margin-top:76px;background:#061e31;color:#fff;padding:52px 0}
.project-case-page .cta .shell{display:flex;align-items:center;justify-content:space-between;gap:24px}
.project-case-page .cta h2{font-family:'Montserrat',Arial,sans-serif;font-size:clamp(1.55rem,2.6vw,2.25rem);margin:4px 0 0}
.project-case-page .btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 18px;border-radius:999px;background:#fff;color:#082a43;font-weight:800}
@media(max-width:900px){.project-case-page .facts{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.project-case-page .story,.project-case-page .gallery{grid-template-columns:1fr}.project-case-page .gallery figure.wide{grid-column:auto}.project-case-page .gallery figure.wide img{aspect-ratio:4/3}.project-case-page .hdr .shell{min-height:74px}.project-case-page .hdr img{width:164px}.project-case-page nav a{font-size:.88rem}}
@media(max-width:640px){.project-case-page .shell{width:min(100% - 24px,1160px)}.project-case-page .hero{padding:64px 0 44px}.project-case-page .facts{grid-template-columns:1fr}.project-case-page .cta .shell{flex-direction:column;align-items:flex-start}.project-case-page nav{gap:12px}}

/* v1.3.7 - videos en páginas individuales */
.project-video-section{margin-top:40px}.project-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:18px}.project-video-grid article{background:#fff;border:1px solid rgba(12,45,64,.13);border-radius:14px;overflow:hidden;box-shadow:0 10px 28px rgba(8,32,47,.07)}.project-video-grid video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#071d2b}.project-video-grid p{margin:0;padding:14px 16px;color:#233640;font-size:.94rem;line-height:1.5}@media(max-width:760px){.project-video-grid{grid-template-columns:1fr}.project-video-grid video{aspect-ratio:9/16;max-height:620px}}

/* v1.3.9 project pages */
.project-case-page .gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-case-page .gallery figure{display:flex;flex-direction:column;position:relative}.project-case-page .gallery img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;background:#eef3f6}.project-case-page .gallery figure::after{content:"AAP Construcciones";position:absolute;top:12px;right:12px;z-index:5;padding:4px 8px;border-radius:999px;background:rgba(5,29,48,.82);border:1px solid rgba(255,255,255,.78);color:#fff;font:700 10px/1.1 "DM Sans",sans-serif;pointer-events:none;white-space:nowrap}.project-case-page .project-video-grid video{width:100%;height:auto;object-fit:contain;background:#000}@media(max-width:900px){.project-case-page .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.project-case-page .gallery{grid-template-columns:1fr}.project-case-page .gallery figure::after{top:auto;bottom:44px;right:10px}}

/* AAP CMS dynamic media */
.project-case-page .cms-media-item{position:relative}.project-case-page .cms-media-item img{width:100%;height:auto;object-fit:contain;background:#eef3f6}.project-case-page .cms-media-item::after{content:"AAP Construcciones";position:absolute;top:14px;right:14px;z-index:3;padding:4px 8px;border-radius:999px;background:rgba(5,29,48,.82);border:1px solid rgba(255,255,255,.78);color:#fff;font:700 10px/1.1 "DM Sans",sans-serif;pointer-events:none}
