@charset "UTF-8";
@font-face{font-family:Montserrat;font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/montserrat.woff') format('woff')}
:root{--green:#06E41F;--ink:#f5f5f5;--muted:#b5b5b5;--line:#303030;--paper:#000000;--font:Montserrat,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,summary,svg text{font-family:inherit}button,a,summary{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{font:inherit;color:inherit}::selection{background:var(--green);color:#000}:focus-visible{outline:2px solid var(--ink);outline-offset:6px}[hidden]{display:none!important}.page-width,.section-wrap{width:min(100%,1440px);padding-inline:64px;margin-inline:auto}.eyebrow{font-size:9px;font-weight:550;letter-spacing:1.3px;line-height:1.65;text-transform:uppercase;margin:0}.skip-link{position:fixed;top:12px;left:12px;z-index:100;padding:12px;background:var(--ink);color:#000;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{width:min(100%,1440px);height:118px;margin:auto;padding:15px 64px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #292929}.brand{display:block;flex-shrink:0}.architecture-logo{display:block;width:265px;height:auto}.site-header nav{display:flex;align-items:center;gap:31px;font-size:10px;font-weight:550}.site-header nav>a{position:relative;padding:10px 0;white-space:nowrap}.site-header nav>a[aria-current="page"]:after{content:"";height:2px;width:15px;background:var(--green);position:absolute;left:0;bottom:3px}.site-header .nav-cta{display:flex;align-items:center;gap:17px;background:none;color:var(--ink);border-bottom:2px solid var(--green);padding:9px 0;font-weight:600}.site-header .nav-cta>span{font-size:18px}.site-header nav>a:hover{color:#bcbcbc}
.home-introduction{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;padding-top:43px;padding-bottom:32px}.home-introduction .eyebrow{display:flex;gap:9px;align-items:center;font-size:8px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block;flex-shrink:0}.home-introduction h1{font-size:27px;font-weight:500;letter-spacing:-.9px;line-height:1.3;margin:13px 0 0}.home-introduction>p{max-width:415px;margin:0;font-size:11px;line-height:1.9;color:var(--muted)}
.editorial-stage{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:54px;position:relative;align-items:center;padding-top:18px;padding-bottom:59px;isolation:isolate;scroll-margin-top:28px}.menu-composition{min-width:0}.menu-caption{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding-bottom:19px}.menu-caption .eyebrow{font-size:8px;letter-spacing:1.2px}.desktop-instruction{font-size:8px;line-height:1.6;color:var(--muted);margin:0}.service-menu{display:flex;flex-direction:column}.menu-item{position:relative;border-top:1px solid #303030}.menu-item:last-child{border-bottom:1px solid #303030}.service-link{display:grid;grid-template-columns:26px minmax(0,1fr) 26px;gap:15px;align-items:center;min-height:136px;padding:29px 0}.service-index{font-size:10px;color:#bcbcbc;align-self:center;letter-spacing:.4px}.service-name{display:inline-block;justify-self:center;text-align:center;font-size:clamp(30px,3.7vw,57px);font-weight:550;letter-spacing:-1.8px;line-height:1.08;transition:color .22s,box-shadow .22s;position:relative}.service-direction{font-size:24px;font-weight:400;line-height:1;justify-self:end;color:#c6c6c6;transition:transform .25s}.menu-item[data-selected="true"] .service-name{color:var(--green);box-shadow:none}.menu-item[data-selected="true"] .service-direction{transform:translate(3px,-3px)}.menu-item[data-selected="true"] .service-index{background:var(--green);color:#111;padding:4px 2px}.editorial-stage[data-active]:not([data-active="none"]) .menu-item:not([data-selected="true"]) .service-name{color:#999999}.menu-bottom-note{display:flex;align-items:center;gap:12px;font-size:7px;letter-spacing:1.4px;color:#b5b5b5;margin:18px 0 0}.menu-bottom-note>span{font-size:18px;font-weight:350;color:var(--ink);line-height:1}.mobile-preview{display:none}
.technical-figure{min-width:0;margin:0;position:relative;--drawing-base:#d0d0d0;--drawing-construction:#454545;--drawing-detail:#858585;--drawing-note:#bdbdbd}.desktop-preview{align-self:center;min-height:440px;padding-top:8px}.architectural-drawing{display:block;width:100%;height:auto;overflow:visible;max-height:370px}.drawing-model{stroke:var(--drawing-base)}.drawing-windows{stroke:var(--drawing-detail)}.drawing-construction,.drawing-dimensions{stroke:var(--drawing-construction)}.drawing-construction text{fill:#aaaaaa;stroke:none;font-size:6px;letter-spacing:.2px}.drawing-levels{fill:#a0a0a0;font-size:7px;letter-spacing:.7px}.diagram-layer{opacity:0;transition:opacity .28s}.technical-figure[data-state="control"] [data-diagram="control"],.technical-figure[data-state="estructuras"] [data-diagram="estructuras"],.technical-figure[data-state="instalaciones"] [data-diagram="instalaciones"]{opacity:1}.accent-line{stroke:var(--green);stroke-width:2.4}.checkpoints{stroke:#cccccc;stroke-width:1;fill:var(--green)}.check-marks{stroke:#111;stroke-width:1.3}.callout{stroke:#999999;stroke-width:.65}.diagram-note{fill:var(--drawing-note);stroke:none;font-size:7px;font-weight:500;letter-spacing:.25px}.structure-details{stroke:#cccccc;stroke-width:.7}.load-arrows{stroke:#cccccc;stroke-width:.9}.secondary-network{stroke:#cccccc;stroke-width:1;stroke-dasharray:3 2}.network-endpoints{fill:var(--green);stroke:#cccccc;stroke-width:.65}.technical-figure[data-state="overview"]{--drawing-base:#777777;--drawing-construction:#333333;--drawing-detail:#4d4d4d;--drawing-note:#a0a0a0}.technical-figure[data-state="overview"] .drawing-levels{fill:#858585}.technical-figure figcaption{padding-top:23px;min-height:140px}.figure-kicker{font-size:8px;letter-spacing:1.25px;text-transform:uppercase;color:#b5b5b5;line-height:1.8;margin:0 0 11px}.technical-figure figcaption h2{font-size:18px;font-weight:550;letter-spacing:-.45px;line-height:1.4;margin:0 0 9px}.technical-figure figcaption>p:not(.figure-kicker){font-size:11px;line-height:1.85;color:#bcbcbc;margin:0;max-width:370px}.desktop-preview[data-state="overview"] figcaption h2{color:#b5b5b5}.desktop-preview[data-state="overview"] figcaption>p:not(.figure-kicker){color:#b5b5b5}.technical-figure[data-state="control"] .draw-line,.technical-figure[data-state="estructuras"] .draw-line,.technical-figure[data-state="instalaciones"] .draw-line{animation:trace-line .85s cubic-bezier(.3,.2,.25,1) both}.technical-figure[data-state="control"] [data-diagram="control"] .draw-line[stroke-dasharray]{animation:none}.technical-figure .draw-line:not([stroke-dasharray]){stroke-dasharray:100;stroke-dashoffset:0}@keyframes trace-line{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.home-contact{display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid #303030;padding-top:26px;padding-bottom:38px}.home-contact .eyebrow{font-size:8px;color:#b5b5b5}.home-contact h2{font-size:23px;font-weight:500;letter-spacing:-.7px;line-height:1.4;margin:12px 0 0}.contact-link{display:inline-flex;justify-content:space-between;align-items:center;gap:40px;border-bottom:3px solid var(--green);padding:12px 0;font-size:13px;font-weight:550;line-height:1.6;white-space:nowrap}.contact-link>span{font-size:24px;font-weight:400;transition:transform .2s}.contact-link:hover>span{transform:translate(2px,-2px)}.plain-link{display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #858585;padding:8px 0;font-size:10px;font-weight:550}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #292929;padding-top:22px;padding-bottom:26px}.footer-logo{display:block;width:150px;height:auto}.site-footer div>span{display:block;font-size:8px;color:#b5b5b5;margin-top:2px}.site-footer p{font-size:8px;line-height:1.8;color:#b5b5b5;margin:0}.site-footer>a{font-size:9px;font-weight:500}.site-footer>a span{margin-left:10px}
.detail-navigation{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:19px;padding-bottom:19px}.back-to-menu{font-size:10px;font-weight:500}.detail-navigation nav{display:flex;gap:25px;font-size:9px;color:#b5b5b5}.detail-navigation nav>a{padding:7px 0}.detail-navigation nav>a[aria-current="page"]{color:var(--ink);border-bottom:2px solid var(--green)}.detail-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:75px;align-items:center;padding-top:35px;padding-bottom:53px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.2px}.green-dot{width:6px;height:6px;background:var(--green);border-radius:50%;display:inline-block;margin-right:6px}.detail-hero h1{font-size:clamp(36px,4.5vw,61px);font-weight:500;line-height:1.15;letter-spacing:-2.3px;margin:23px 0}.detail-hero h1>span{box-shadow:inset 0 -.12em 0 var(--green)}.hero-lead{font-size:17px;font-weight:450;line-height:1.7;letter-spacing:-.3px;max-width:480px;margin:0 0 16px}.hero-description{font-size:12px;color:#b5b5b5;line-height:1.9;max-width:480px;margin:0 0 21px}.detail-drawing .architectural-drawing{max-height:380px}.detail-drawing figcaption{min-height:0;padding-top:15px}.technical-figure .drawing-disclaimer{font-size:7px!important;letter-spacing:1px;margin-top:12px!important}.service-details{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:85px;border-top:1px solid #303030;padding-top:35px;padding-bottom:50px}.detail-summary .eyebrow,.consultation-card .eyebrow{font-size:8px;color:#b5b5b5}.detail-summary h2,.consultation-card h2{font-size:29px;line-height:1.3;font-weight:500;letter-spacing:-.9px;margin:16px 0}.detail-summary>p:not(.eyebrow){font-size:12px;line-height:1.9;color:#b5b5b5;max-width:520px;margin:0}.scope{margin-top:27px;padding:0 0 0 17px;border-left:2px solid var(--green)}.scope>span{font-size:8px;font-weight:550;letter-spacing:.8px;color:#b5b5b5}.scope>p{font-size:11px;line-height:1.85;margin:8px 0 0}.consultation-card{background:none;padding:0}.consultation-card>p:not(.eyebrow){font-size:11px;color:#b5b5b5;line-height:1.8}.consultation-card ul{font-size:11px;line-height:1.8;color:#bcbcbc;padding-left:16px;margin:16px 0 20px}.consultation-card li{padding-block:4px}.related-section{padding-bottom:40px}.related-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px}.related-heading .eyebrow{font-size:8px;color:#b5b5b5}.related-heading>a{font-size:9px;color:#b5b5b5}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:35px}.related-link{display:flex;align-items:center;gap:19px;border-top:1px solid #303030;padding-block:22px}.related-link>span:first-child{font-size:9px;color:#b5b5b5}.related-link>strong{font-size:20px;font-weight:500;letter-spacing:-.6px}.related-link>span:last-child{font-size:23px;font-weight:400;margin-left:auto}.related-link:hover strong{box-shadow:inset 0 -.13em 0 var(--green)}
@media(min-width:1500px){.service-name{font-size:60px;letter-spacing:-2px}.service-link{min-height:148px}.home-introduction{padding-top:50px}.editorial-stage{padding-top:30px;padding-bottom:65px}.desktop-preview{padding-left:8px}}
@media(max-width:1120px){.page-width,.section-wrap{padding-inline:40px}.site-header{padding-inline:40px;height:106px}.architecture-logo{width:235px}.editorial-stage{gap:32px;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.service-name{font-size:clamp(30px,3.65vw,43px);letter-spacing:-1.3px}.service-link{gap:11px;min-height:128px}.desktop-preview{min-height:405px}.desktop-instruction{display:none}.home-introduction{gap:30px}.home-introduction h1{font-size:24px}.home-introduction>p{font-size:10px;max-width:345px}.detail-hero{gap:45px}.detail-hero h1{font-size:46px}.service-details{gap:50px}.technical-figure figcaption h2{font-size:16px}.technical-figure figcaption>p:not(.figure-kicker){font-size:10px}}
@media(max-width:900px){.page-width,.section-wrap{padding-inline:30px}.site-header{padding-inline:30px;gap:22px}.home-introduction{align-items:flex-start;flex-direction:column;gap:18px;padding-top:30px;padding-bottom:30px}.home-introduction>p{font-size:11px;max-width:480px}.editorial-stage{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:26px}.service-name{font-size:clamp(29px,3.7vw,36px);letter-spacing:-1.1px}.service-link{grid-template-columns:20px minmax(0,1fr) 18px;gap:9px;min-height:130px}.service-direction{font-size:21px}.menu-caption .eyebrow{font-size:7px;letter-spacing:.8px}.menu-bottom-note{font-size:6px;letter-spacing:.9px}.desktop-preview{min-height:370px}.technical-figure figcaption{padding-top:18px;min-height:140px}.figure-kicker{font-size:7px;letter-spacing:.8px}.technical-figure figcaption h2{font-size:15px}.technical-figure figcaption>p:not(.figure-kicker){font-size:10px}.site-header nav{gap:23px}.site-header .nav-cta{gap:13px}.detail-hero h1{font-size:39px;letter-spacing:-1.5px}.hero-lead{font-size:14px}.hero-description{font-size:11px}.detail-summary h2,.consultation-card h2{font-size:25px}.service-details{gap:35px}.detail-hero{gap:30px}}
@media(max-width:720px),(hover:none),(pointer:coarse){.page-width,.section-wrap{padding-inline:25px}.site-header{height:96px;padding-inline:25px}.architecture-logo{width:220px}.site-header nav{gap:19px;font-size:9px}.site-header nav>a:first-child{display:none}.site-header .nav-cta{font-size:9px;gap:12px}.home-introduction{padding-top:24px;padding-bottom:25px}.home-introduction .eyebrow{font-size:7px;letter-spacing:.8px}.home-introduction h1{font-size:24px}.editorial-stage{display:block;padding-top:15px;padding-bottom:32px}.menu-caption{padding-bottom:18px}.menu-caption .eyebrow{font-size:8px}.desktop-preview{display:none}.service-link{grid-template-columns:22px minmax(0,1fr) 23px;gap:13px;min-height:115px;padding-top:24px;padding-bottom:18px}.service-name{font-size:clamp(31px,5.9vw,44px);letter-spacing:-1.2px}.service-index{font-size:9px}.service-direction{font-size:23px}.mobile-preview{display:block;margin-top:-7px}.mobile-preview summary{display:flex;justify-content:flex-end;align-items:center;gap:11px;list-style:none;font-size:9px;color:#b5b5b5;padding:10px 0 20px;min-height:44px;cursor:pointer}.mobile-preview summary::-webkit-details-marker{display:none}.summary-sign{font-size:21px;font-weight:350;line-height:12px;transition:transform .2s}.mobile-preview[open] .summary-sign{transform:rotate(45deg)}.mobile-preview-body{padding:5px 9px 24px;animation:reveal .25s ease-out}.mobile-preview-body .technical-figure{max-width:470px;margin-inline:auto}.mobile-preview-body .architectural-drawing{max-height:330px}.mobile-preview-body figcaption{min-height:0;padding-top:13px}.mobile-preview-body figcaption h2{font-size:19px}.mobile-preview-body figcaption>p:not(.figure-kicker){font-size:12px;max-width:none}.mobile-preview-body .figure-kicker{font-size:8px}.mobile-preview-body .plain-link{margin-top:13px;font-size:11px}.menu-bottom-note{font-size:7px;letter-spacing:1px;margin-top:20px}.home-contact{align-items:flex-start;gap:22px;flex-direction:column;padding-top:25px;padding-bottom:29px}.home-contact h2{font-size:23px}.contact-link{font-size:12px;gap:40px}.site-footer{flex-wrap:wrap;align-items:center;gap:18px}.site-footer p{order:3;width:100%;font-size:7px}.footer-logo{width:135px}.site-footer div>span{font-size:7px}.site-footer>a{font-size:8px}.detail-navigation{align-items:flex-start;flex-direction:column;gap:15px;padding-block:17px}.detail-navigation nav{gap:23px;font-size:9px}.detail-hero{grid-template-columns:1fr;gap:32px;padding-top:22px;padding-bottom:28px}.detail-hero h1{font-size:clamp(36px,6.8vw,48px);letter-spacing:-1.7px;line-height:1.18}.hero-lead{font-size:16px;max-width:520px}.hero-description{font-size:12px;max-width:520px}.detail-drawing{width:min(100%,530px);margin:auto}.detail-drawing .architectural-drawing{max-height:360px}.detail-drawing figcaption>p:not(.figure-kicker){font-size:11px;max-width:none}.service-details{grid-template-columns:1fr;gap:36px;padding-top:28px;padding-bottom:34px}.detail-summary h2,.consultation-card h2{font-size:29px}.detail-summary>p:not(.eyebrow){font-size:12px;max-width:none}.consultation-card{border-top:1px solid #292929;padding-top:25px}.consultation-card ul,.consultation-card>p:not(.eyebrow){font-size:12px}.related-links{gap:20px}.related-link>strong{font-size:18px}.related-heading .eyebrow{font-size:7px}.related-heading>a{font-size:8px}@keyframes reveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}}
@media(max-width:480px){.page-width,.section-wrap{padding-inline:20px}.site-header{height:87px;padding-inline:20px;gap:16px}.architecture-logo{width:190px}.site-header nav{gap:0}.site-header nav>a:not(.nav-cta){display:none}.site-header .nav-cta{display:flex;font-size:8px;gap:8px;border-bottom-width:2px}.site-header .nav-cta>span{font-size:17px}.home-introduction .eyebrow{font-size:6px;letter-spacing:.7px;gap:6px}.home-introduction h1{font-size:22px;letter-spacing:-.7px}.home-introduction>p{font-size:10px;line-height:1.85}.menu-caption .eyebrow{font-size:7px;letter-spacing:.8px}.service-link{grid-template-columns:18px minmax(0,1fr) 17px;gap:10px;min-height:110px;padding-top:23px;padding-bottom:15px}.service-name{font-size:clamp(27px,7.3vw,35px);letter-spacing:-1px;line-height:1.08}.service-direction{font-size:19px}.service-index{font-size:8px}.mobile-preview summary{font-size:8px;padding-bottom:19px;gap:9px}.summary-sign{font-size:19px}.mobile-preview-body{padding-inline:0}.mobile-preview-body .architectural-drawing{max-height:285px}.mobile-preview-body figcaption h2{font-size:18px}.mobile-preview-body figcaption>p:not(.figure-kicker){font-size:11px}.menu-bottom-note{font-size:6px;letter-spacing:.8px}.home-contact .eyebrow{font-size:7px;letter-spacing:.8px}.home-contact h2{font-size:22px}.contact-link{font-size:11px;gap:33px}.detail-hero h1{font-size:clamp(31px,8.4vw,39px);letter-spacing:-1.4px}.hero-lead{font-size:14px}.hero-description{font-size:11px}.detail-summary h2,.consultation-card h2{font-size:26px}.detail-summary>p:not(.eyebrow),.consultation-card ul,.consultation-card>p:not(.eyebrow){font-size:11px}.detail-navigation nav{gap:16px;font-size:8px}.related-heading{align-items:flex-start;flex-direction:column;gap:11px}.related-links{grid-template-columns:1fr;gap:0}.related-link{padding-block:20px}.related-link>strong{font-size:21px}.related-link>span:first-child{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.contact-link:hover>span,.menu-item[data-selected="true"] .service-direction{transform:none}}
