.ima-content-page #ima-main{min-height:0}.ima-content-page #ima-main p,.ima-content-page #ima-main a,.ima-content-page #ima-main h1,.ima-content-page #ima-main h2,.ima-content-page #ima-main h3,.ima-content-page #ima-main h4{font-family:CamptonLight,Arial,sans-serif}.ima-page-section>.elementor-container{width:1435px;max-width:100%;margin:auto;padding:0 15px}.ima-page-section .elementor-column>.elementor-widget-wrap{padding:0}.ima-content-page .elementor-widget{margin-bottom:0}.ima-content-page #ima-main p{font-size:14px;line-height:24px;color:#000}.ima-content-page #ima-main h1,.ima-content-page #ima-main h2,.ima-content-page #ima-main h3,.ima-content-page #ima-main h4{font-weight:400;color:#000}.ima-content-page img{display:block}.ima-content-page .elementor-widget-text-editor{color:#000;font-family:CamptonLight,Arial,sans-serif}
/* Native Elementor sections form each independently editable slide. */
.ima-slider-page #ima-main>.elementor{position:relative;width:1405px;max-width:calc(100% - 30px);margin:0 auto;overflow:hidden}.ima-slide{height:75vh;background-size:cover;background-position:center right;background-repeat:no-repeat}.ima-slide>.elementor-container{height:100%;width:100%;max-width:100%}.ima-slide>.elementor-container>.elementor-column{position:static}.ima-slide>.elementor-container>.elementor-column>.elementor-widget-wrap{position:static;padding:0}.ima-slider-ready>.ima-slide{display:none}.ima-slider-ready>.ima-slide.is-active{display:block;animation:ima-slide-appear 1.2s ease both}.ima-slide-caption{position:absolute!important;right:0;bottom:0;width:50%!important;max-width:50%!important;height:24vh;background:rgba(255,255,255,.9);padding:15px!important;z-index:2}.ima-slide-caption>.elementor-container{width:100%}.ima-slide-caption .elementor-widget-wrap{padding:0!important;display:block!important}.ima-slide-title .elementor-heading-title{color:#4ca5e1!important;font:500 16px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.1em;margin:0 0 5px!important}.ima-slide-body p{font:14px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.7px;margin:0!important}.ima-slide-button{margin:15px 0!important}.ima-slide-button .elementor-button{border:0;border-radius:4px;padding:5px 15px;font:14px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.1em;color:white;background:#4ca5e1;background-image:linear-gradient(to right,rgba(0,0,0,.2),transparent);box-shadow:0 12px 28px rgba(0,0,0,.12)}.ima-slide-button .elementor-button:hover{background-color:#00135f}.ima-slider-nav{position:absolute;left:0;right:0;top:0;height:50vh;pointer-events:none;display:flex;align-items:center;justify-content:space-between;z-index:5;opacity:0;transition:opacity .2s}.ima-slider-ready:hover .ima-slider-nav,.ima-slider-ready:focus-within .ima-slider-nav{opacity:1}.ima-slider-nav button{pointer-events:auto;width:50px;height:50px;display:grid;place-items:center;border:0;border-radius:0;background:transparent;color:#fff;padding:0;font:38px/1 Arial;text-shadow:0 1px 4px #333}.ima-slider-nav button:focus-visible{outline:2px solid #4ca5e1;outline-offset:-4px}.ima-slide[aria-hidden=true] a{visibility:hidden}@keyframes ima-slide-appear{from{opacity:.35}to{opacity:1}}
/* Reference cards. */
.ima-grid-row>.elementor-container{align-items:stretch}.ima-reference-card>.elementor-widget-container{border:2px solid #fff;margin-bottom:15px;overflow:hidden}.ima-reference-card .elementor-image-box-img{display:block;width:100%!important;margin:0!important;overflow:hidden}.ima-reference-card .elementor-image-box-img a{display:block}.ima-reference-card .elementor-image-box-img img{width:100%!important;height:250px;object-fit:cover;object-position:50% 15%;transition:opacity .35s,transform .35s}.ima-reference-card:hover img{opacity:.5;transform:scale(1.12)}.ima-reference-card .elementor-image-box-content{background:#00aadb;background-image:linear-gradient(to right,rgba(0,0,0,.2),transparent);padding:10px}.ima-reference-card .elementor-image-box-title,.ima-reference-card .elementor-image-box-title a{margin:0!important;color:white!important;font:400 14px/1.2 CamptonLight,Arial,sans-serif!important;letter-spacing:.1em;text-align:center;text-transform:uppercase}.ima-reference-card .elementor-image-box-title{height:50px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ima-reference-card .elementor-image-box-description{display:none}
/* Document thumbnails retain their original 80vh portrait height. */
.ima-document-card>.elementor-widget-container{margin:5px;position:relative;overflow:hidden}.ima-document-card .elementor-image-box-img{display:block;width:100%!important;margin:0!important}.ima-document-card .elementor-image-box-img img{width:100%;height:80vh;object-fit:fill}.ima-document-card .elementor-image-box-img a{display:block}.ima-document-card .elementor-image-box-content{position:absolute;bottom:0;left:0;right:0;padding:10px;background:#00aadb;background-image:linear-gradient(to right,rgba(0,0,0,.2),transparent);pointer-events:none}.ima-document-card .elementor-image-box-title,.ima-document-card .elementor-image-box-title a{font:400 14px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.075em;text-align:center;color:#fff!important;text-transform:uppercase;margin:0!important}.ima-document-card .elementor-image-box-title{height:50px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ima-document-card .elementor-image-box-description{display:none}.ima-document-modal{position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center;padding:55px 25px;overscroll-behavior:contain}.ima-document-modal[hidden]{display:none}.ima-document-modal img{max-width:100%;max-height:calc(100vh - 110px);object-fit:contain;display:block}.ima-document-modal button{position:absolute;top:10px;right:15px;border:0;background:transparent;color:white;font:32px/1 Arial;padding:8px}.ima-modal-open{overflow:hidden}
/* Project detail content and related project carousel. */
.ima-project-hero img{width:100%!important;height:auto}.ima-project-info{margin-top:25px}.ima-project-info-column>.elementor-widget-wrap{padding:0 15px!important}.ima-project-info-title .elementor-heading-title{font:400 16px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.1em;margin:20px 0 15px}.ima-project-info-body p{font:14px/24px CamptonLight,Arial,sans-serif!important;margin:0 0 10px}.ima-related-heading{margin-top:25px;border-top:1px solid #eee;padding-top:20px}.ima-related-title .elementor-heading-title{font:700 14px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.1em;text-transform:uppercase;margin:0 0 15px}.ima-related-row>.elementor-container{display:flex;flex-wrap:nowrap!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.ima-related-row>.elementor-container::-webkit-scrollbar{display:none}.ima-related-row .elementor-column{flex:0 0 25%;width:25%;scroll-snap-align:start}.ima-related-row{margin-bottom:20px}
/* Original full-width contact map, three contact columns and form panel. */
.ima-map-frame{height:70vh!important;width:100%;display:block}.ima-contact-address{padding-top:55px;padding-bottom:35px}.ima-contact-info .elementor-icon-box-wrapper{text-align:center}.ima-contact-info .elementor-icon{font-size:32px;color:#4ca5e1}.ima-contact-info .elementor-icon svg{fill:#4ca5e1;width:32px;height:32px}.ima-contact-info .elementor-icon-box-title,.ima-contact-info .elementor-icon-box-title a{font:400 18px/24px CamptonLight,Arial,sans-serif!important;color:#000!important;letter-spacing:.1em;margin:10px 0 0!important}.ima-contact-info .elementor-icon-box-description{font:14px/24px CamptonLight,Arial,sans-serif!important;padding:8px 10px 0;color:#000}.ima-contact-form-section{margin:0 auto 30px}.ima-contact-form-section>.elementor-container{padding:50px 35px;max-width:1405px;box-shadow:0 10px 35px rgba(0,0,0,.1);border-radius:6px;background:white}.ima-contact-heading .elementor-heading-title{font:400 14px/24px CamptonLight,Arial,sans-serif!important;text-transform:uppercase;text-align:center;margin:0 0 45px}.ima-contact-form{width:100%}.ima-form-grid{display:flex;flex-wrap:wrap;margin:0 -15px}.ima-field{width:50%;padding:0 15px;margin-bottom:16px;position:relative}.ima-field-full{width:100%}.ima-field input:not([type=file]),.ima-field textarea{display:block;width:100%;padding:12px 16px;border:1px solid transparent;border-radius:5px;background:#f6f7f9;box-shadow:none;font:14px/24px CamptonLight,Arial,sans-serif;color:#000;letter-spacing:.7px;text-transform:uppercase;height:45px}.ima-field textarea{height:100px;resize:vertical;line-height:24px}.ima-field input:focus,.ima-field textarea:focus{outline:2px solid #4ca5e1;outline-offset:1px}.ima-file label{display:block;font:12px/24px CamptonLight,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}.ima-file input{font:12px/24px CamptonLight,Arial,sans-serif;max-width:100%}.ima-submit{text-align:right}.ima-submit button{border:0;border-radius:4px;padding:8px 30px;font:14px/24px CamptonLight,Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:white;background:#4ca5e1;background-image:linear-gradient(to right,rgba(0,0,0,.2),transparent)}.ima-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;left:-10000px}.ima-form-success{width:100%;background:#edf7ef;padding:15px;color:#246b32!important}.ima-legal{padding-top:40px;padding-bottom:40px}.ima-legal h1{font:700 24px/1.4 CamptonLight,Arial,sans-serif!important;margin-bottom:25px}.ima-legal p{margin-bottom:15px}.ima-languages a[aria-current=page]{color:#00135f}
/* Elementor's optimized DOM omits widget-container; these rules apply to both outputs. */
.ima-content-page .ima-reference-card{border:2px solid #fff;margin-bottom:15px!important;overflow:hidden}.ima-reference-card>.elementor-widget-container{border:0;margin-bottom:0}.ima-reference-card .elementor-image-box-content{width:100%;min-width:0}.ima-reference-card .elementor-image-box-title,.ima-reference-card .elementor-image-box-title a{white-space:normal!important;letter-spacing:1.4px!important}.ima-reference-card .elementor-image-box-title a{display:block;max-width:100%}.ima-content-page .ima-document-card{padding:5px}.ima-document-card>.elementor-widget-container{margin:0}.ima-document-card .elementor-image-box-content{left:5px;right:5px;bottom:5px}.ima-project-info{margin-top:0}.ima-project-info-column>.elementor-widget-wrap{padding:0!important}.ima-project-info-column:first-child{border-right:1px solid #dcdcdc}.ima-project-info-title .elementor-heading-title{font:700 14px/24px CamptonLight,Arial,sans-serif!important;letter-spacing:.7px;text-align:center;padding:15px 0;margin:0!important;border-bottom:1px solid #dcdcdc}.ima-project-info-body{padding:20px 15px 10px}.ima-project-info-body p{line-height:1.6!important;margin-bottom:20px!important}.ima-contact-address{padding-top:50px;padding-bottom:15px}.ima-contact-info .elementor-icon-box-title,.ima-contact-info .elementor-icon-box-title a{font-size:14px!important;letter-spacing:.7px;margin:5px 0!important;text-transform:uppercase}.ima-contact-info .elementor-icon-box-icon{margin-bottom:0!important}.ima-contact-info .elementor-icon-box-description{padding-top:8px}
.ima-document-modal button,.ima-document-modal button:hover,.ima-document-modal button:focus{background:transparent!important;color:#fff!important;border:0!important;box-shadow:none!important}.ima-related-row .elementor-column{flex:0 0 33.333333%;width:33.333333%!important}
.ima-field-icon{position:absolute;top:15px;right:25px;color:#4ca5e1;font-size:14px;line-height:14px;pointer-events:none}.ima-field-icon svg{width:14px;height:14px;fill:currentColor}.ima-field textarea{height:150px}.ima-file label{margin:10px 0 12px;display:inline-block;padding:10px 25px;border-radius:5px;color:white;background:#4ca5e1;background-image:linear-gradient(to right,rgba(0,0,0,.2),transparent);font:14px/24px CamptonLight,Arial,sans-serif;letter-spacing:.7px;cursor:pointer}.ima-file input[type=file]{position:absolute;top:0;left:15px;width:calc(100% - 30px);height:64px;opacity:0;cursor:pointer;z-index:1}.ima-submit button{padding:10px 25px;margin:10px 0 12px}
.ima-legal-banner{height:125px;padding:40px 0;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;background-repeat:no-repeat;background-position:center;background-size:cover}.ima-legal-banner .elementor-heading-title{font:700 28px/1.2 CamptonLight,Arial,sans-serif!important;margin:0}
@media(min-width:1001px){.ima-contact-address>.elementor-container{justify-content:center}.ima-contact-address .elementor-column:first-child{width:35%!important}.ima-contact-address .elementor-column:nth-child(2),.ima-contact-address .elementor-column:nth-child(3){width:20%!important}}
@media(max-width:1000px){.ima-project-info-column:first-child{border-right:0}.ima-related-row .elementor-column{flex:0 0 100%!important;width:100%!important}}
@media(min-width:1200px) and (max-width:1449px){.ima-page-section>.elementor-container{width:1200px}.ima-slider-page #ima-main>.elementor{width:1170px}.ima-contact-form-section>.elementor-container{max-width:1170px}}
@media(min-width:1001px) and (max-width:1199px){.ima-page-section>.elementor-container{width:960px}.ima-slider-page #ima-main>.elementor{width:930px}.ima-contact-form-section>.elementor-container{max-width:930px}}
@media(max-width:1000px){.ima-slider-page #ima-main>.elementor{width:100%;max-width:100%}.ima-slide{height:60vh;min-height:420px}.ima-slide-caption{width:100%!important;max-width:100%!important;height:auto;min-height:155px}.ima-slider-nav{display:none}.ima-page-section>.elementor-container{width:100%;padding:0 15px}.ima-grid-row .elementor-column,.ima-document-row .elementor-column{width:50%!important}.ima-reference-card .elementor-image-box-title,.ima-reference-card .elementor-image-box-title a{font-size:12px!important}.ima-project-info-column{width:100%!important}.ima-related-row .elementor-column{flex:0 0 50%;width:50%}.ima-contact-address .elementor-column{width:100%!important}.ima-contact-address{padding-top:25px;padding-bottom:20px}.ima-contact-info{padding:15px 0}.ima-contact-form-section{margin:0 15px 30px}.ima-contact-form-section>.elementor-container{padding:25px 15px}.ima-field{width:100%}.ima-file,.ima-submit{width:50%}.ima-document-card .elementor-image-box-img img{height:60vh}.ima-document-card .elementor-image-box-title,.ima-document-card .elementor-image-box-title a{font-size:11px!important;line-height:20px!important}.ima-map-frame{height:55vh!important}.ima-languages{letter-spacing:.7px}}
@media(max-width:600px){.ima-grid-row .elementor-column,.ima-document-row .elementor-column{width:100%!important}.ima-document-card .elementor-image-box-img img{height:80vh}.ima-reference-card .elementor-image-box-img img{height:250px}.ima-document-card .elementor-image-box-title,.ima-document-card .elementor-image-box-title a{font-size:14px!important;line-height:24px!important}.ima-related-row .elementor-column{flex:0 0 100%;width:100%}.ima-slide-title .elementor-heading-title{font-size:14px!important}.ima-slide-body p{font-size:12px!important;line-height:20px!important}.ima-slide-button .elementor-button{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.ima-slider-ready>.ima-slide.is-active{animation:none}.ima-reference-card img{transition:none}.ima-reference-card:hover img{transform:none}}
