@font-face{font-family:Industrial;src:url('assets/fonts/industrial-v2.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url('assets/fonts/barlow-condensed.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--purple:#6c2c91;--deep:#421a5e;--sand:#e9e3d9;--amber:#e0a22e;--pad:3.6vw}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--deep);font-family:Barlow,'Arial Narrow',sans-serif}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;border-radius:0}h1,h2,h3,p{margin:0}h1,h2,h3,.brand,nav,.equipment-title,.service-title{font-family:Industrial,Impact,sans-serif;font-weight:400}a:focus-visible,button:focus-visible{outline:3px solid var(--amber);outline-offset:-5px}.skip{position:absolute;top:-80px;background:#fff;padding:14px;z-index:20}.skip:focus{top:0}
.header{display:flex;align-items:center;justify-content:space-between;gap:20px;height:7.75vw;padding:0 3.2vw;background:#fff}.brand{font-size:2.55vw;white-space:nowrap}nav{display:flex;align-items:center;gap:2vw;font-size:1.7vw}nav>a{white-space:nowrap}nav>a:hover{color:var(--purple)}.header-phone{font-size:2vw;border-left:3px solid var(--deep);padding-left:2.7vw;margin-left:.5vw}.menu-toggle{display:none}
.hero{display:grid;grid-template-columns:40% 60%;height:85.35vw}.hero-copy{position:relative;background:var(--deep);color:#fff;padding:0 var(--pad);display:flex;align-items:center}.hero-logo{position:absolute;width:27vw;height:auto;left:var(--pad);top:4.3vw;display:block}.hero-words{width:100%;padding-bottom:1vw}.hero h1{font-size:14.4vw;line-height:.97;letter-spacing:-.12vw}.hero h1 span{display:block;white-space:nowrap}.accent{display:block;height:.95vw;width:9.7vw;background:var(--amber)}.hero .accent{margin:3.5vw 0 2.8vw;width:10.6vw}.hero p{font-size:3.35vw;line-height:1.2}.hero-photo,.services-photo{width:100%;height:100%;object-fit:cover;display:block}.hero-photo{object-position:53% 50%}
.equipment{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--sand)}.equipment-item{text-align:left;padding:6.5vw 3.5vw 7.8vw;background:var(--sand);border-right:1px solid #fff;min-height:40.3vw;transition:background .2s,color .2s}.equipment-item:last-child{border:0}.equipment-item.active{background:var(--purple);color:#fff}.equipment-title{display:block;font-size:7.7vw;line-height:1.05;white-space:nowrap}.equipment .accent{margin:2.7vw 0 2.6vw}.description{display:block;font-size:2.5vw;line-height:1.2}.equipment-item:hover:not(.active){background:#ddd3e1}
.planning{display:grid;grid-template-columns:35% 20% 24% 21%;padding:4.9vw var(--pad) 3.6vw;min-height:31.3vw;align-items:stretch}.planning h2{font-size:6.35vw;line-height:1.03;letter-spacing:-.1vw}.planning-heading .accent{margin-top:1.5vw}.planning article{border-left:1.5px solid var(--deep);padding:6.2vw 1.8vw 1vw;min-width:0}.planning h3{font-size:4.3vw;white-space:nowrap;line-height:1.1;margin-bottom:2vw}.planning p{font-size:1.95vw;line-height:1.2}
.services{display:grid;grid-template-columns:40.55% 59.45%;min-height:61.3vw;background:var(--sand)}.services-list{padding:2.6vw 2.9vw 3.6vw 3.6vw;display:flex;flex-direction:column}.service{background:none;text-align:left;width:100%;padding:2.3vw 0 2.6vw;display:flex;flex-direction:column;justify-content:center;min-height:12.2vw;border-bottom:1.5px solid var(--deep)}.service:last-child{border:0}.service-title{display:block;font-size:3.6vw;line-height:1.15;white-space:nowrap;transition:font-size .2s}.service.active{min-height:19.2vw}.service.active .service-title{font-size:10.5vw;line-height:1.2}.service:nth-child(1).active .service-title,.service:nth-child(3).active .service-title,.service:nth-child(4).active .service-title{font-size:4.85vw;white-space:normal}.service .description{margin-top:.35vw}.service:hover .service-title{color:var(--purple)}.services-photo{max-height:65vw;object-position:50% 52%}
.statement{background:var(--deep);color:#fff;text-align:center;padding:3.1vw 3.6vw 3.2vw;min-height:22.6vw}.statement .accent{margin:0 auto 2.5vw;width:11.4vw}.statement p{font-family:Industrial,Impact,sans-serif;font-size:5.65vw;line-height:1.15}
.contact{display:grid;grid-template-columns:35% 33% 32%;background:var(--sand);padding:3.1vw 3.6vw 4vw;min-height:18.1vw}.contact>div{padding:1vw 3.8vw;border-left:1.5px solid var(--deep);min-width:0}.contact>div:first-child{padding-left:0;border:0}.contact h2{font-size:3.6vw;line-height:1.2;margin-bottom:.35vw}.contact a,.contact address{font-size:2.5vw;line-height:1.2;font-style:normal}.contact a:hover{text-decoration:underline}#equipo,#servicios,#cobertura,#contacto{scroll-margin-top:20px}
@media(min-width:1600px){.hero{max-height:1365px}.hero h1{font-size:230px}.hero p{font-size:53px}.hero-logo{width:432px}.hero .accent{margin:56px 0 44px}}
@media(max-width:760px){:root{--pad:6vw}.header{height:auto;min-height:80px;padding:20px 6vw;position:relative;gap:15px;flex-wrap:wrap}.brand{font-size:22px;max-width:calc(100% - 50px);white-space:normal;line-height:1.15}.menu-toggle{display:flex;flex-direction:column;gap:5px;padding:10px;background:transparent;width:40px;height:40px;justify-content:center}.menu-toggle span{display:block;height:2px;width:23px;background:var(--deep)}nav{display:none;flex-basis:100%;font-size:21px;gap:0;flex-direction:column;align-items:stretch;padding-top:10px}nav.open{display:flex}nav>a{padding:12px 0;border-top:1px solid #e9e3d9}.header-phone{font-size:23px;margin:0;border-left:0;padding-left:0}.hero{grid-template-columns:46% 54%;height:90vw}.hero-copy{padding:0 4vw}.hero-logo{width:34vw;left:4vw;top:6vw}.hero h1{font-size:15.4vw}.hero .accent{margin:5vw 0 4vw}.hero p{font-size:3.8vw}.hero-photo{object-position:56% 50%}.hero-words{padding-top:10vw}.equipment-item{padding:7vw 3.5vw;min-height:40vw}.equipment-title{font-size:7.5vw}.equipment .description{font-size:3.1vw}.equipment .accent{margin:3.5vw 0}.planning{grid-template-columns:1fr 1fr 1fr;padding:8vw 6vw;gap:7vw 0}.planning-heading{grid-column:1/-1}.planning h2{font-size:9vw;line-height:1.05}.planning h2 br{display:none}.planning article{padding:1vw 3vw;border-left-width:1px}.planning article:nth-child(2){border:0;padding-left:0}.planning h3{font-size:5.2vw;white-space:normal;margin-bottom:3vw}.planning p{font-size:3.4vw}.planning-heading .accent{height:5px;width:55px;margin-top:20px}.services{grid-template-columns:46% 54%;min-height:74vw}.services-list{padding:2vw 3.5vw}.service{min-height:15vw;padding:3.5vw 0}.service-title{font-size:4vw;white-space:normal}.service.active{min-height:22vw}.service.active .service-title{font-size:10.8vw}.service .description{font-size:3.3vw}.service:nth-child(1).active .service-title,.service:nth-child(3).active .service-title,.service:nth-child(4).active .service-title{font-size:5.5vw}.services-photo{max-height:none;min-height:100%}.statement{padding:7vw 5vw}.statement .accent{height:5px;width:65px;margin-bottom:5vw}.statement p{font-size:7vw;line-height:1.2}.contact{grid-template-columns:1fr 1fr;padding:7vw 6vw;gap:6vw}.contact>div{padding:0 0 0 5vw}.contact>div:first-child{grid-column:1/-1}.contact>div:nth-child(2){padding:0;border:0}.contact h2{font-size:5.5vw}.contact a,.contact address{font-size:4.2vw}}
@media(max-width:420px){.brand{font-size:20px}.hero{grid-template-columns:1fr;height:auto}.hero-copy{min-height:143vw;padding:27vw 8vw 13vw;align-items:flex-start}.hero-logo{width:60vw;left:8vw;top:9vw}.hero-words{padding-top:5vw}.hero h1{font-size:28vw;line-height:1}.hero .accent{height:6px;width:75px;margin:7vw 0 6vw}.hero p{font-size:6.7vw}.hero-photo{height:113vw;object-position:50% 60%}.equipment{grid-template-columns:1fr}.equipment-item{padding:9vw 8vw;min-height:0;border-right:0;border-bottom:1px solid #fff}.equipment-title{font-size:14vw}.equipment .accent{width:65px;height:5px;margin:5vw 0}.equipment .description{font-size:6vw}.planning{grid-template-columns:1fr;padding:11vw 8vw;gap:0}.planning-heading{grid-column:auto;margin-bottom:7vw}.planning h2{font-size:12vw}.planning h2 br{display:block}.planning article,.planning article:nth-child(2){border:0;border-top:1px solid var(--deep);padding:6vw 0}.planning h3{font-size:9vw;margin-bottom:3vw}.planning p{font-size:6vw}.services{grid-template-columns:1fr}.services-list{padding:5vw 8vw}.service{padding:7vw 0;min-height:0}.service-title{font-size:8vw}.service.active{min-height:0}.service.active .service-title{font-size:22vw}.service:nth-child(1).active .service-title,.service:nth-child(3).active .service-title,.service:nth-child(4).active .service-title{font-size:10vw}.service .description{font-size:6vw;margin-top:2vw}.services-photo{height:116vw;min-height:0}.statement{padding:10vw 7vw}.statement p{font-size:9.1vw}.statement p br{display:none}.contact{grid-template-columns:1fr;gap:0;padding:5vw 8vw}.contact>div,.contact>div:first-child,.contact>div:nth-child(2){grid-column:auto;border:0;padding:6vw 0}.contact>div+div{border-top:1px solid var(--deep)}.contact h2{font-size:8vw;margin-bottom:2vw}.contact a,.contact address{font-size:6vw}.contact a{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@font-face{font-family:Anton;src:url('assets/fonts/anton.ttf') format('truetype');font-weight:400;font-display:swap}
.brand,nav{font-family:Anton,Impact,sans-serif}
@media(min-width:421px){.services{position:relative}.services-photo{position:absolute;top:0;right:0;width:59.45%;height:100%;max-height:none}.service .description{font-size:2.25vw}.equipment .description{font-size:2.3vw}}
@media(min-width:421px) and (max-width:760px){.services-photo{width:54%}.service .description{font-size:3.3vw}.equipment .description{font-size:3.1vw}}
@media(min-width:761px){.hero h1{font-size:13.4vw}}
.equipment-item{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}
.hero-copy{min-width:0;min-height:0}
@media(min-width:421px){.hero{grid-template-rows:minmax(0,1fr)}.hero-photo{min-height:0}}
@font-face{font-family:IndustrialWide;src:url('assets/fonts/industrial-wide-v2.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:BodyCondensed;src:url('assets/fonts/body-condensed-v2.ttf') format('truetype');font-weight:400;font-display:swap}
body{font-family:BodyCondensed,Barlow,'Arial Narrow',sans-serif}
h2,h3,.equipment-title,.service-title,.statement p{font-family:IndustrialWide,Impact,sans-serif}
@media(max-width:760px){.brand{flex:1;max-width:calc(100% - 60px)}.menu-toggle{flex-shrink:0}}
