:root{--navy:#173968;--blue:#244c82;--steel:#6482b4;--gold:#f2bd20;--ink:#172236;--muted:#f2f5f8;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65;background:#fff}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{background:var(--navy);color:#dfe8f4;font-size:.83rem}.topbar .wrap{min-height:36px;display:flex;align-items:center;justify-content:space-between}.topbar a{color:#fff}.nav-wrap{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:275px}.nav{display:flex;align-items:center;gap:27px;font-size:.92rem;font-weight:700}.nav a{padding:34px 0 29px;border-bottom:3px solid transparent}.nav a:hover,.nav a.active{color:var(--blue);border-color:var(--gold)}.menu-toggle{display:none;border:0;background:none;color:var(--navy);font-size:1.8rem}.hero{min-height:650px;position:relative;display:flex;align-items:center;color:#fff;background:url('../assets/metropolis/OBRAS-DE-INFRAESTRUCTURA-02.jpeg') center/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,31,58,.9),rgba(15,47,84,.48) 60%,rgba(0,0,0,.1))}.hero-copy{position:relative;padding:80px 0}.eyebrow{margin:0 0 12px;color:var(--gold);font-weightfont-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem}.eyebrow.blue{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1{font-size:clamp(2.8rem,6vw,5.3rem);max-width:850px;margin-bottom:22px}.hero h1 span{color:var(--gold)}.hero-copy>p:not(.eyebrow){font-size:1.35rem}.actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:0 25px;border:2px solid var(--gold);background:var(--gold);color:#132747;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;cursor:pointer}.btn:hover{background:#ffd34d;border-color:#ffd34d}.btn-outline{background:transparent;color:#fff;border-color:#fff}.btn.light{background:#fff;border-color:#fff;color:var(--navy)}.section{padding:95px 0}.section.muted{background:var(--muted)}h2{font-size:clamp(2rem,4vw,3.25rem);margin-bottom:25px;color:var(--navy)}h3{color:var(--navy)}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.intro-grid p,.split p,.contact-grid>div>p{font-size:1.08rem;color:#526073}.text-link{display:inline-block;color:var(--blue);font-weight:800;margin-top:12px;border-bottom:2px solid var(--gold)}.section-head{text-align:center;margin-bottom:45px}.section-head.left{text-align:left}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;box-shadow:0 12px 30px rgba(24,50,82,.1)}.card img{width:100%;height:235px;object-fit:cover}.card div{padding:27px}.card span,.service-list article span{color:var(--gold);font-weight:900;font-size:1.6rem}.card h3{font-size:1.35rem;margin:6px 0 12px;text-transform:uppercase}.card p{color:#5a6676}.cta{padding:58px 0;background:var(--blue);color:#fff}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{color:#fff;margin:0}.page-hero{min-height:330px;display:flex;align-items:end;color:#fff;background-position:center;background-size:cover;position:relative}.page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,34,64,.88),rgba(12,34,64,.25))}.page-hero .wrap{position:relative;padding-bottom:58px}.page-hero h1{font-size:clamp(2.7rem,5vw,4.3rem);margin:0}.page-hero.about{background-image:url('../assets/metropolis/IMG-20211228-WA0038.jpg')}.page-hero.services{background-image:url('../assets/metropolis/PAVIMENTOS-02.jpeg')}.page-hero.gallery{background-image:url('../assets/metropolis/DOS-PINOS-01-1.jpeg')}.page-hero.contact{background-image:url('../assets/metropolis/IMG-20211228-WA0045.jpg')}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img{width:100%;height:460px;object-fit:cover}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.values article{background:#fff;padding:40px;border-top:4px solid var(--gold)}.values strong{font-size:3rem;color:var(--blue)}.service-list{display:grid;gap:65px}.service-list article{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.service-list article:nth-child(even) img{order:2}.service-list img{width:100%;height:360px;object-fit:cover}.service-list h2{font-size:2.2rem;margin:8px 0 18px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid figure{margin:0;position:relative;overflow:hidden;background:var(--navy)}.gallery-grid img{width:100%;height:285px;object-fit:cover;transition:.35s}.gallery-grid figcaption{position:absolute;inset:auto 0 0;padding:35px 20px 18px;color:#fff;font-weight:800;background:linear-gradient(transparent,rgba(5,22,44,.9))}.gallery-grid figure:hover img{transform:scale(1.04);opacity:.82}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px}.contact-list{list-style:none;padding:0;margin:35px 0 0}.contact-list li{display:grid;grid-template-columns:110px 1fr;padding:16px 0;border-bottom:1px solid #dce2e8}.contact-list strong{color:var(--navy)}.contact-list a{color:var(--blue);font-weight:700}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:38px;background:var(--muted);border-top:4px solid var(--gold)}.contact-form label{display:grid;gap:6px;font-weight:700;color:var(--navy)}.contact-form label:nth-child(4){grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;padding:13px;border:1px solid #cdd6df;background:#fff;font:inherit}.contact-form textarea{resize:vertical}.contact-form .btn{justify-self:start}.form-note{grid-column:1/-1;margin:0;font-size:.85rem;color:#667286}.footer{background:#0e284d;color:#d6deea;padding-top:62px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:55px}.footer img{width:260px}.footer h3{color:#fff;margin-bottom:12px}.footer a{color:#fff}.copyright{margin-top:50px;padding:18px;text-align:center;background:#0a203f;color:#9cabc0;font-size:.85rem}
@media(max-width:900px){.topbar{display:none}.nav-wrap{min-height:78px}.brand img{width:215px}.menu-toggle{display:block}.nav{display:none;position:absolute;z-index:20;top:78px;left:0;right:0;background:#fff;padding:12px 24px 22px;box-shadow:0 12px 25px rgba(0,0,0,.15);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px 0;border-bottom:1px solid #e3e8ed}.hero{min-height:560px}.intro-grid,.split,.contact-grid{grid-template-columns:1fr;gap:35px}.cards,.values{grid-template-columns:1fr}.service-list article{grid-template-columns:1fr;gap:25px}.service-list article:nth-child(even) img{order:0}.gallery-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>img{grid-column:1/-1}}
@media(max-width:580px){.wrap{width:min(var(--max),calc(100% - 28px))}.section{padding:68px 0}.hero{min-height:530px}.hero-copy{padding:55px 0}h1{font-size:2.65rem}.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:260px}.cta .wrap{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}.contact-form{grid-template-columns:1fr;padding:25px}.contact-form label:nth-child(4){grid-column:auto}.contact-list li{grid-template-columns:1fr;gap:4px}.split img,.service-list img{height:300px}}
.hero.hero-wordpress{min-height:520px;background-image:url('../assets/metropolis/bannerfont-weight');background-position:center}.hero-wordpress .hero-shade{background:rgba(7,24,45,.28)}.hero-wordpress .hero-copy{text-align:center}.hero-wordpress h1{max-width:760px;margin:0 auto;color:#fff;font-size:clamp(2.8rem,5.2vw,4.6rem);font-weight:800;text-align:left}.hero-wordpress .actions{justify-content:center;margin-top:32px}@media(max-width:580px){.hero.hero-wordpress{min-height:440px;background-position:center}.hero-wordpress h1{font-size:2.55rem;text-align:left}}

/* Portada principal */
.hero.hero-wordpress {
  background-image: url('../assets/metropolis/image002.jpg');
  background-position: center center;
  background-size: cover;
}
