<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/*
Orange #f39200
Green #b0d9d2
Grey #e6e5e6
Blue #003554
*/

/* Common */
.white { color: #fff !important; }
.orange { color: #f39200 !important; }
.upper { text-transform: uppercase !important; }
.centred { text-align: center; }
.grey-line:after { position: absolute; left: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 1px; display: block; content: ''; background: #e6e5e6; z-index: -1; }
.text-uppercase { text-transform: uppercase !important; }
#wrapper #main .grid { background-size: 280px 280px !important; }
#wrapper #main .post-content ul { padding: 0 0 0 15px; margin: 0; }
a[href^="tel:"], #wrapper #main .post-content a[href^="tel:"] { cursor: default !important; color: #000; text-decoration: none !important; }
.hide { display: none !important; }
body.fusion-button_size-large #wrapper #main .fusion-button-default-size { padding: 12px 36px 12px 27px !important; text-decoration: none !important; min-width: 120px; z-index: 1; }
body.fusion-button_size-large #wrapper #main .fusion-button-default-size .fusion-button-text { position: relative; }
body.fusion-button_size-large #wrapper #main .fusion-button-default-size .fusion-button-text:after { position: absolute; top: 5px; right: -13px; display: block; content: ''; width: 0; height: 0; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; border-style: inset; -webkit-transform:rotate(360deg); }
#wrapper #main span.break { display: block; }
#wrapper #main .max880.fullwidth-box .fusion-row { max-width: 880px !important; margin-left: auto !important; margin-right: auto !important; }
#wrapper #main .max1300.fullwidth-box .fusion-row, #wrapper #main .max1300.fusion-layout-column { max-width: 1300px !important; margin-left: auto !important; margin-right: auto !important; }
#wrapper #main .max1360.fullwidth-box .fusion-row { max-width: 1360px !important; margin-left: auto !important; margin-right: auto !important; }
#wrapper #main .max650text { max-width: 650px !important; }
#wrapper #main .post-content a { font-weight: 700; text-decoration: underline; }
#wrapper #main .post-content a:hover { color: #000 !important; }
#wrapper #main .post-content p.linebreak { margin: 0 0 2px 0; }
#wrapper #main .post-content #google-map { -webkit-filter: grayscale(100%); filter: grayscale(100%); }

#wrapper #main .post-content .morebutton { color: #000; font-weight: 700; text-decoration: none; cursor: pointer; position: relative; padding: 12px 45px 12px 38px; display: inline-block; line-height: 1; z-index: 1; }
#wrapper #main .post-content .morebutton:hover { color: #f39200 !important; }
#wrapper #main .post-content .morebutton:after { position: absolute; top: 15px; right: 31px; display: block; content: ''; width: 0; height: 0; border-style: solid; width: 0;
height: 0; border-style: solid; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; }
#wrapper #main .post-content .morebutton.open:after { border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; }





#wrapper #main .post-content .software-line .morebuttonopen { color: #000; font-weight: 700; text-decoration: none; cursor: pointer; position: relative; padding: 12px 45px 12px 38px; display: inline-block; line-height: 1; z-index: 1; }
#wrapper #main .post-content .software-line .morebuttonopen:hover { color: #f39200 !important; }
#wrapper #main .post-content .software-line .morebuttonopen:after { position: absolute; top: 15px; right: 31px; display: block; content: ''; width: 0; height: 0; border-style: solid; width: 0;
height: 0; border-style: solid; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; }
#wrapper #main .post-content .software-line .morebuttonopen.open:after { border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; }
#wrapper #main .post-content .software-line .morebuttonopen { padding: 5px 0; width: 65px; }
#wrapper #main .post-content .software-line .morebuttonopen:after { right: 10px; top: 11px; border-width: 6px 5px 0 5px; border-color: #f39200 transparent transparent transparent; }
#wrapper #main .post-content .software-line .morebuttonopen.open:after { right: 16px; border-width: 0 5px 6px 5px; border-color: transparent transparent #f39200 transparent; }
#wrapper #main .post-content .software-line .moretext { display: none; }
#wrapper #main .post-content .software-line .moretext.open { display: block; }


#wrapper #main .post-content .fusion-flip-boxes .fusion-flip-box .flip-box-back .fusion-button { color: #000; font-weight: 700; text-decoration: none; cursor: pointer; position: relative; padding: 12px 45px 12px 38px; display: inline-block; line-height: 1; z-index: 1; }
#wrapper #main .post-content .fusion-flip-boxes .fusion-flip-box .flip-box-back .fusion-button:after { position: absolute; top: 15px; right: 31px; display: block; content: ''; width: 0; height: 0; border-style: solid; width: 0; height: 0; border-style: solid; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; }



#clientlogos .slick-slide, #clientlogos .slick-slide img { height: 100px !important; }
#wrapper #main .post-content #clientlogos .slick-prev, #wrapper #main .post-content #clientlogos .slick-next  { z-index: 9; width: 26px; height: 32px; background: #fff; -webkit-box-shadow: 0px 0px 12px 1px rgba(0,0,0,0.2); box-shadow: 0px 0px 12px 1px rgba(0,0,0,0.2); }
#wrapper #main .post-content #clientlogos .slick-prev { left: 25px !important; }
#wrapper #main .post-content #clientlogos .slick-next  { right: 25px !important; }
#wrapper #main .post-content #clientlogos .slick-prev:before, #wrapper #main .post-content #clientlogos .slick-next:before { opacity: 1; position: absolute; top: 0; bottom: 0; margin: auto; width: 10px; height: 20px; display: block; content: ''; }
#wrapper #main .post-content #clientlogos .slick-prev:before  { left: 7px; width: 0; height: 0; border-style: solid; border-width: 10px 10px 10px 0; border-color: transparent #f39200 transparent transparent; }
#wrapper #main .post-content #clientlogos .slick-next:before  { left: 9px; width: 0; height: 0; border-style: solid; border-width: 10px 0 10px 10px; border-color: transparent transparent transparent #f39200; }

#wrapper #main .orange-contact-icons { max-width: 1000px !important; margin-left: auto !important; margin-right: auto !important; }
#wrapper #main .orange-contact-icons .fusion-layout-column { text-align: center; }
#wrapper #main .orange-contact-icons .fusion_builder_column:first-child { border-right: 1px solid #d7d7d7; }
#wrapper #main .post-content .orange-contact-icons a { color: #000 !important; text-decoration: none !important; font-size: 22px; position: relative; padding: 60px 10px 30px 10px; display: inline-block; }

#wrapper #main .post-content .orange-contact-icons a:before { position: absolute; top: 10px; left: 0; right: 0; margin: auto; display: inline-block; font-size: 32px; color: #f39200; font-family: "Font Awesome 5 Free"; font-weight: 900; -moz-osx-font-smoothing: grayscale; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; text-align: center; }
#wrapper #main .post-content .orange-contact-icons a.phone:before { content: "\f095"; }
#wrapper #main .post-content .orange-contact-icons a.email:before { content: "\f0e0"; }
#wrapper #main .post-content .orange-contact-icons a.email:hover { color: #f39200 !important; }

#wrapper #main .post-content .contact-icon-left .phone,
#wrapper #main .post-content .contact-icon-left .phone-link,
#wrapper #main .post-content .contact-icon-left .email,

#wrapper #main .post-content .contact-icon-left .map-marker p { position: relative; padding: 0 0 0 35px; display: inline-block; margin: 0 0 10px 0; text-decoration: none !important; color: #000 !important; font-weight: 400 !important; }



#wrapper #main .post-content .contact-icon-left .phone:before,
#wrapper #main .post-content .contact-icon-left .phone-link:before,
#wrapper #main .post-content .contact-icon-left .email:before,
#wrapper #main .post-content .contact-icon-left .map-marker p:before { position: absolute; top: 0; left: 0; display: inline-block; content: ''; font-size: 20px; color: #f39200; font-family: "Font Awesome 5 Free"; font-weight: 900; -moz-osx-font-smoothing: grayscale; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; text-align: center; }


#wrapper #main .post-content .contact-icon-left .phone:before { content: "\f095"; }
#wrapper #main .post-content .contact-icon-left .phone-link:before { content: "\f095"; }
#wrapper #main .post-content .contact-icon-left .email:before { content: "\f0e0"; }
#wrapper #main .post-content .contact-icon-left .email:hover { color: #f39200 !important; }
#wrapper #main .post-content .contact-icon-left .map-marker p:before { content: "\f3c5"; }

#wrapper #main .get-in-touch a { text-decoration: none; }
#wrapper #main .get-in-touch a:hover { color: #b0d9d2 !important; }


/* Header */
.header .clients.fusion-layout-column { width: auto !important; margin-right: 10px; }
.header .clients a { font-size: 12px; font-weight: 700; position: relative; padding: 10px 20px 10px 10px; }
.header .clients a:hover { color: #fff; }
.header .clients a:after { position: absolute; top: 0; bottom: 0; margin: auto; right: 7px; display: block; content: ''; width: 0; height: 0; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; border-style: inset; -webkit-transform:rotate(360deg); }

.header .marker.fusion-layout-column { width: 30px !important; margin-right: 10px; }
.header .marker a { text-indent: -999999px; display: inline-block; position: relative; width: 30px; height: 30px; }
.header .marker a:after { position: absolute; top: 4px; margin: auto; right: 0; left: 0; display: inline-block; font-size: 20px; color: #fff; font-family: "Font Awesome 5 Free"; font-weight: 900; -moz-osx-font-smoothing: grayscale; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; text-align: center; content: "\f3c5"; text-indent: 0; }
.header .marker a:hover:after { color: #f39200; }
.header .email.fusion-layout-column { width: 30px !important; margin-right: 10px; }
.header .email a { text-indent: -999999px; display: inline-block; position: relative; width: 30px; height: 30px; }
.header .email a:after { position: absolute; top: 4px; margin: auto; right: 0; left: 0; display: inline-block; font-size: 20px; color: #fff; font-family: "Font Awesome 5 Free"; font-weight: 900; -moz-osx-font-smoothing: grayscale; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; text-align: center; content: "\f0e0"; text-indent: 0; }
.header .email a:hover:after { color: #f39200 !important; }

.header .phone.fusion-layout-column { width: auto !important; }
.header .phone a.phone-link { font-size: 13px; font-weight: 700; color: #fff !important; padding: 10px 10px 10px 30px; position: relative; }
.header .phone a.phone-link:before { position: absolute; top: 8px; left: 8px; display: inline-block; font-size: 16px; color: #fff; font-family: "Font Awesome 5 Free"; font-weight: 900; -moz-osx-font-smoothing: grayscale; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; content: "\f095"; }
.header .phone a.phone-link:hover,
.header .phone a.phone-link:hover:before { color: #fff !important; }

.fusion-body .fusion-menu-element-wrapper #menu-main.fusion-menu-element-list li.current-menu-item a,
.fusion-body .fusion-menu-element-wrapper #menu-main-1.fusion-menu-element-list li.current-menu-item a,
.post-type-archive-avada_portfolio .fusion-menu-element-wrapper #menu-main-1.fusion-menu-element-list li.menu-item-38 a,
.single-avada_portfolio .fusion-menu-element-wrapper #menu-main-1.fusion-menu-element-list li.menu-item-38 a { color: #b0d9d2 !important; }

.fusion-tb-header #sticky { position: fixed; top: -100px; left: 0; width: 100%; /*height: 70px;*/ height: auto; z-index: 100; transition: top 0.3s linear; }
.fusion-body .fusion-tb-header #sticky .fusion-menu-element-wrapper[data-count="0"] .fusion-menu-element-list { min-height: 70px !important; }
.fusion-tb-header #sticky.stuck { top: 0; }
.fusion-tb-header #sticky.header .phone a { padding: 10px; white-space: nowrap; overflow: hidden; text-indent: 9999999px; visibility: hidden; }
.fusion-tb-header #sticky.header .phone a:before { text-indent: 0; float: left; visibility: visible; }
.fusion-tb-header #sticky.header .phone.fusion-layout-column { width: 35px !important; }
.fusion-tb-header #sticky .sticky-logo.fusion-layout-column { width: auto !important; }

.fusion-tb-header .header .fusion-layout-column { margin-bottom: 0 !important; }
.fusion-tb-header .header .nav.fusion-layout-column { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
.fusion-tb-header .header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 297px !important; flex: 0 0 297px !important; }
.fusion-tb-header #sticky.stuck.header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 434px !important; flex: 0 0 434px !important; }
.hero-bg .fusion-layout-column.logo { position: absolute; top: 70px; right: 60px; }

/* Home */
.home .hero-bg .fusion-layout-column.heading { padding-top: 330px !important; padding-bottom: 220px !important; max-width: 1300px !important; margin-left: auto !important; margin-right: auto !important; }
.home .hero-bg .fusion-layout-column.heading .fusion-column-wrapper { margin-left: 0 !important; margin-right: 0 !important; }
#wrapper #main .no-padding p:last-child { margin: 0 !important; }
.home #wrapper #main .green-panel.fullwidth-box .fusion-row { background: #b0d9d2; margin-top: -55px; }
.home #wrapper #main .green-panel.fullwidth-box .fusion-row .fusion-column-wrapper { padding: 30px 30px !important; }
.home .hero-bg .heading h1 { max-width: 650px; }
.home .hero-bg .heading h1 span { display: block; }
.home .green-panel .fusion-column-wrapper { margin-left: 0 !important; margin-right: 0 !important; }


.home #wrapper #main .pebbles { min-height: 300px; }
.home #wrapper #main .pebbles .pebbles-image .fusion-column-wrapper { position: absolute; bottom: -180px; left: 50px; }


.home #wrapper #main .the-cube { min-height: 355px; }
.home #wrapper #main .the-cube .the-cube-image .fusion-column-wrapper { position: absolute; top: 0; bottom: 0; margin: auto; left: 140px; }


.home #wrapper #main .city { min-height: 240px; z-index: 4; }
.home #wrapper #main .city .city-image .fusion-column-wrapper { position: absolute; top: -220px; left: 50px; }




.home #wrapper #main .our-approach.fullwidth-box .fusion-row { position: absolute; left: 0; right: 0; margin: auto; bottom: -70px; }
.page-our-approach #wrapper #main .post-content .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p a.linkedin { margin: 5px 0 0 0; display: inline-block; padding: 5px; }
.page-our-approach #wrapper #main .post-content .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p a.linkedin img { transition: all 300ms ease; }
.page-our-approach #wrapper #main .post-content .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p a.linkedin:hover img { -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%);
-o-filter: grayscale(100%); }
.home #wrapper #main .white-line-button .fusion-column-wrapper { position: relative; }
.home #wrapper #main .white-line-button .fusion-column-wrapper:after { position: absolute; bottom: 60px; left: 80px; width: calc(100% - 160px); height: 1px; display: block; content: ''; background: #fff; z-index: 0; }
.home #wrapper #main .portfolio-home .fusion-flip-boxes .fusion-column { margin-bottom: 10px !important; }
.home #wrapper #main .portfolio-home .fusion-flip-boxes .fusion-flip-box .flip-box-inner-wrapper { min-height: 290px !important; }
.home #wrapper #main .portfolio-home .flip-box-front { }
.home #wrapper #main .portfolio-home .flip-box-front h2 { text-transform: uppercase; color: #f39200; margin: 0; font-size: 20px; }
.home #wrapper #main .portfolio-home .flip-box-front h3 { text-transform: uppercase; color: #fff; margin: 0; font-size: 13px; font-weight: 400 !important; }
.home #wrapper #main .portfolio-home .flip-box-back h2 { text-transform: uppercase; color: #fff; margin: 0; font-size: 20px; }
.home #wrapper #main .portfolio-home .flip-box-back h3 { text-transform: uppercase; color: #fff; margin: 0; font-size: 13px; font-weight: 400 !important; }
.home #wrapper #main .portfolio-home .flip-box-back .green { text-align: center; background: #b0d9d2; position: absolute; left: 0; bottom: 0; width: 100%; height: 75px; }
.home #wrapper #main .portfolio-home .flip-box-back .green .valign1KILL { position: relative; }
.home #wrapper #main .portfolio-home .flip-box-back .green .valign { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; }
.home #wrapper #main .portfolio-home .flip-box-back h4 { text-transform: uppercase; color: #000; margin: 0; font-size: 13px; font-weight: 400 !important; }
.home #wrapper #main .portfolio-home .flip-box-back h5 { color: #000; margin: 0; font-size: 13px; font-weight: 700 !important; }
.home #wrapper #main .portfolio-home .flip-box-back h5 span { width: 20px; display: inline-block; position: relative; }
.home #wrapper #main .portfolio-home .flip-box-back h5 span:after { position: absolute; top: 4px; left: 9px; width: 1px; height: 10px; display: block; content: ''; background: #fff; }







#wrapper #main #home-stats h3 { color: #fff; font-size: 30px; margin: 0; max-width: 230px; }
#wrapper #main #home-stats h4 { color: #003554; font-size: 19px; line-height: 1.3; font-weight: 300 !important; margin: 0; max-width: 240px; }
#wrapper #main #home-stats .slick-prev, .home #wrapper #main #home-stats .slick-next { display: none !important; }
#wrapper #main #home-stats .slick-slider .slick-track { min-height: 170px !important; }
#wrapper #main #home-stats .slick-list { min-height: 210px; }

#wrapper #main .definition .fusion-column-wrapper { background: #fff; width: 280px !important; height: 280px !important; position: relative; padding: 35px !important; margin: 0 auto !important; }
#wrapper #main .definition .fusion-column-wrapper:before { filter: drop-shadow(2px 2px 6px rgba(0,0,0,0.6)); -webkit-filter: drop-shadow(2px 2px 6px rgba(0,0,0,0.6)); -moz-filter: drop-shadow(2px 2px 6px rgba(0,0,0,0.6)); }
#wrapper #main .definition .fusion-column-wrapper:after { filter: drop-shadow(-2px -2px 6px rgba(0,0,0,0.6)); -webkit-filter: drop-shadow(-2px -2px 6px rgba(0,0,0,0.6)); -moz-filter: drop-shadow(-2px -2px 6px rgba(0,0,0,0.6)); }
#wrapper #main .definition .fusion-column-wrapper:before { position: absolute; top: -15px; left: -15px; display: block; content: ''; width: 0; height: 0; border-style: solid; border-width: 80px 80px 0 0; border-color: #b0d9d2 transparent transparent transparent; -webkit-transform:rotate(360deg); }
#wrapper #main .definition .fusion-column-wrapper:after { position: absolute; bottom: -15px; right: -15px; display: block; content: ''; width: 0; height: 0; border-style: solid; border-width: 0 0 80px 80px; border-color: transparent transparent #b0d9d2 transparent; -webkit-transform:rotate(360deg); }
#wrapper #main .definition .fusion-column-wrapper .fusion-title  { position: relative; }
#wrapper #main .definition .fusion-column-wrapper .fusion-title:before  { position: absolute; top: -85px; left: -75px; display: block; content: ''; width: 0; height: 0; border-style: solid; border-width: 130px 130px 0 0; border-color: #b0d9d2 transparent transparent transparent; -webkit-transform:rotate(360deg); }
#wrapper #main .definition .fusion-column-wrapper .fusion-title:after  { position: absolute; top: 140px; right: -80px; display: block; content: ''; width: 0; height: 0; border-style: solid; border-width: 0 0 130px 130px; border-color: transparent transparent #b0d9d2 transparent; -webkit-transform:rotate(360deg); z-index: 1; }
#our-services .our-services-panel .fusion-column-wrapper { padding: 35px 35px 65px 35px !important; margin-bottom: 45px !important; }
#our-services .our-services-panel .fusion-column-wrapper .button-default { position: absolute !important; left: -10px; bottom: 65px;  }
.page-our-approach #wrapper #main .green-panel-left-container .fusion-row {   }
.page-our-approach #wrapper #main .green-panel-left-container .fusion-row .fusion-layout-column { width: 355px !important; position: absolute; top: 50px; left: -30px;}

.page-our-approach #wrapper #main .the-team-flipboxes .fusion-column-wrapper { max-width: 660px !important; margin: 0 auto !important; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-column-wrapper .fusion-flip-box-wrapper { padding: 0 10px !important; display: inline-block !important;
float: none !important; }
.page-our-approach #wrapper #main .the-team-flipboxes .flip-boxes { margin: 0 !important; text-align: center; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front,
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back { padding: 220px 10px 10px 10px; background-size: 200px 200px; display: block; background-position: 0 0;
background-color: #e6e5e6 !important; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front { background-color: #e6e5e6 !important; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back { background-color: #fff !important; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front-inner { font-size: 12px; font-weight: 400; position: relative;  text-transform: none; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front-inner:after { position: absolute; bottom: -10px; left: 0; right: 0; margin: auto; width: 22px; height: 2px; display: block; content: ''; background: #f39200; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front-inner h2 { font-size: 13px; font-weight: 700; margin-bottom: 0; text-transform: uppercase; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box h3.flip-box-heading-back { font-size: 13px; font-weight: 700; margin-bottom: 0; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p:nth-child(2) { font-size: 12px; font-weight: 400; position: relative; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p:nth-child(2):after { position: absolute; bottom: -10px; left: 0; right: 0; margin: auto; width: 22px; height: 2px; display: block; content: ''; background: #f39200; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p:nth-child(3) { margin: 0; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p:nth-child(4) { margin: 0; }
.page-our-approach #wrapper #main .post-content .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p a { text-decoration: none; color: #000; font-size: 14px; }
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back-inner p:nth-child(4) a:hover { color: #f39200 !important; }

.page-our-approach #wrapper #main .grey-line-heading .fusion-column-wrapper { margin: 0 !important; }
.services-container .services-icon .orange-circle { padding: 40px; }
.services-container .services-icon h4 { max-width: 250px; text-align: center !important; }
.services-container .services-icon .orange-circle, .services-container .services-icon h4 { margin-left: 100px !important; }

.page-services #wrapper #main .services-container .services-icon .fusion-title.fusion-title-size-three { margin-bottom: 110px !important; }





.page-portfolio #wrapper #main .portfolio-halfpage .fusion-flip-boxes { margin-bottom: 0; }
.page-portfolio #wrapper #main .portfolio-halfpage .fusion-flip-boxes .fusion-flip-box .flip-box-inner-wrapper { margin-bottom: 0; min-height: 700px !important; }

.page-portfolio #wrapper #main .portfolio-halfpage h2,
.page-portfolio #wrapper #main .fusion-flip-boxes .fusion-flip-box .flip-box-heading-back { font-size: 29px !important; text-transform: uppercase !important; }

.page-portfolio #wrapper #main .portfolio-halfpage .fusion-flip-boxes .fusion-flip-box .flip-box-front-inner,
.page-portfolio #wrapper #main .fusion-flip-boxes .flip-box-back-inner p { font-size: 18px !important; text-transform: uppercase !important; }
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes { margin-bottom: 0; }
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes .fusion-flip-box-wrapper { padding: 0 !important; margin: 0 -1px !important; }
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes .fusion-flip-box .flip-box-inner-wrapper { margin-bottom: 0; min-height: 470px !important; }
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol h2,
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes .fusion-flip-box .flip-box-heading-back { font-size: 29px !important; text-transform: uppercase !important; }
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes .fusion-flip-box .flip-box-front-inner,
.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol .fusion-flip-boxes .flip-box-back-inner p { font-size: 18px !important; text-transform: uppercase !important; }

.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol h2 { padding: 0 20px !important; }




/* Individual portfolio page */
.single-avada_portfolio #wrapper .info .details { background: #b0d9d2; display: table; width: 100%; margin-top: 40px; }
.single-avada_portfolio #wrapper .info .details .details-left { display: table-cell; padding: 30px; vertical-align: middle; }
.single-avada_portfolio #wrapper .info .details .details-right { display: table-cell; position: relative; padding: 30px; vertical-align: middle; }
.single-avada_portfolio #wrapper .info .details .details-right:before { position: absolute; top: 0; bottom: 0; left: 0; margin: auto; width: 1px; height: 70px; display: block; content: ''; background: #fff; }

.single-avada_portfolio #wrapper .info .details h3 { color: #fff; font-size: 40px; margin: 0; line-height: 1.1 !important; }
.single-avada_portfolio #wrapper .info .details h3 span { font-size: 22px; padding: 0 0 0 3px; }

.single-avada_portfolio #wrapper #main a:hover { color: #fff !important; }

.single-avada_portfolio #wrapper .info .details.small h3 { font-size: 27px; }
.single-avada_portfolio #wrapper .info .details.small h3 span { font-size: 20px; }

/**
 * Stack: Hide the social sharing bar that overlays the iLightBox images.
 * Added on 29/08/2024.
 */
.ilightbox-social {height: 0px !important; width: 0px !important; padding: 0 !important; overflow: hidden !important; z-index: 0 !important; background: transparent !important;}

@media screen and (max-width: 500px) {
.single-avada_portfolio #wrapper .info .details.small h3 { font-size: 27px; }
.single-avada_portfolio #wrapper .info .details.small h3 span { font-size: 16px; }
}

@media screen and (max-width: 450px) {
.single-avada_portfolio #wrapper .info .details.small h3 { font-size: 23px; }
.single-avada_portfolio #wrapper .info .details.small h3 span { font-size: 14px; }
}





.single-avada_portfolio #wrapper #main .post-content .info .details ul { padding: 0; margin: 0; }
.single-avada_portfolio #wrapper #main .post-content .info .details ul li { color: #003554; text-transform: uppercase; list-style: none; position: relative; padding: 0 0 0 10px; margin: 0; font-weight: 700; }
.single-avada_portfolio #wrapper .info .details ul li:before { content:"\2022"; color: #003554; font-size: 15px; line-height: 1; position: absolute; top: 2px; left: 0; }
.single-avada_portfolio .portfolio-lightbox { padding: 20px 0 40px 0; text-align: center; }
.single-avada_portfolio .portfolio-lightbox a { margin-right: 3%; width: 31.33%; display: inline-block; }
.single-avada_portfolio .portfolio-lightbox a:last-child { margin-right: 0; }

.single-avada_portfolio #wrapper #main .post-content .orange-triangle a { color: #fff !important; font-weight: 400 !important; text-decoration: none !important; position: relative; }
.single-avada_portfolio #wrapper #main .post-content .orange-triangle a:hover { color: #f39200 !important; }
.single-avada_portfolio #wrapper #main .post-content .orange-triangle a:after { position: absolute; top: 6px; right: -14px; display: block; content: ''; width: 0; height: 0; border-width: 5px 0 5px 6px; border-color: transparent transparent transparent #f39200; border-style: inset; -webkit-transform: rotate(360deg); }

.single-avada_portfolio #wrapper .info .summary { max-width: 650px !important; }






/* Technology page */
.page-technology #wrapper #main .cityscape-right .fusion-column-wrapper { margin: 0 !important; position: relative; }
.page-technology #wrapper #main .cityscape-right .fusion-row { position: absolute; left: -35px; bottom: 70px;  }
.page-technology #wrapper #main .cityscape-container .cityscape-panel { width: 235px !important; }
.page-technology #wrapper .technology-subheading .fusion-flex-column { position: relative; }


.page-technology #wrapper .technology-subheading.blue .fusion-flex-column { background: #003554; position: absolute; top: 30px; left: 50%; transform: translate(-50%, -50%); }
.page-technology #wrapper .technology-subheading .fusion-flex-column:after { content: ''; position: absolute; top: 100%; left: 0; right: 0; padding-bottom: 10%; clip-path: polygon(0% 0%, 100% 0%, 50% 100%); }
.page-technology #wrapper .technology-subheading.orange .fusion-flex-column:after { background: #f39200; }
.page-technology #wrapper .technology-subheading.blue .fusion-flex-column:after { background: #003554; }

.page-technology #wrapper .technology-subheading:after { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 4px; height: calc(100% + 130px); display: block; content: ''; }
.page-technology #wrapper .technology-subheading.orange:after { background: #f1b065; }
.page-technology #wrapper .technology-subheading.blue:after { background: #7f9fb0; }

.page-technology #wrapper .contractor .fusion-row .fusion-title { margin-top: 0 !important; margin-bottom: 0 !important; }



#wrapper #main .blue.technology-subheading.backbone.fullwidth-box .fusion-row { position: absolute; top: 30px; }
#wrapper #main .blue.technology-subheading.assisting-heading.fullwidth-box .fusion-row { position: absolute; top: -30px; }

#wrapper #main .technology-subheading.fullwidth-box .fusion-row { max-width: 550px !important; margin-left: auto !important; margin-right: auto !important; z-index: 11; }
.page-technology #wrapper .software-line .fusion-row:after { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 4px; height: 100%; display: block; content: ''; }
.page-technology #wrapper .software-line.backbone .fusion-row:after { background: #f1b065; }
.page-technology #wrapper .software-line.assisting-panel .fusion-row:after { background: #7f9fb0; }
.page-technology #wrapper .software-line .fusion-builder-row-inner.fusion-row:after { display: none; }
.page-technology #wrapper .software-line .fusion-row .fusion-title { font-size: 18px !important; }
.page-technology #wrapper .software-line .fusion-row .fusion-title .break { display: inline; }
.page-technology #wrapper .software-line .fusion-builder-row-inner.fusion-row .fusion-layout-column .fusion-column-wrapper { background: #fff !important; margin-bottom: 80px; padding: 40px 55px !important; position: relative; -webkit-filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.2)); filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.2)); }
.page-technology #wrapper .software-line .fusion-builder-row-inner.fusion-row .fusion-layout-column .fusion-column-wrapper:after { position: absolute; bottom: -25px; left: 0; right: 0; margin: auto; width: 100%; height: 25px; display: block; content: ''; background: #fff; background-position-x: 0%; background-position-y: 0%; background-repeat: repeat; background-size: auto; clip-path: polygon(50% 25px,0% 0%,100% 0%); }
.page-technology #wrapper .software-line .left .fusion-layout-column:before { position: absolute; top: 46px; right: -6px; width: 12px; height: 12px; display: block; content: ''; border-radius: 50%; background: #f1b065; }
.page-technology #wrapper .software-line .right .fusion-layout-column:before { position: absolute; top: 46px; left: -6px; width: 12px; height: 12px; display: block; content: ''; border-radius: 50%; background: #f1b065; }
.page-technology #wrapper .backbone .left .fusion-layout-column:before,
.page-technology #wrapper .backbone .right .fusion-layout-column:before { background: #f1b065; }
.page-technology #wrapper .assisting-panel .left .fusion-layout-column:before,
.page-technology #wrapper .assisting-panel .right .fusion-layout-column:before { background: #7f9fb0; }
.page-technology #wrapper .software-line .left .fusion-layout-column:after { position: absolute; top: 50px; right: 0; width: 30px; height: 4px; display: block; content: ''; }
.page-technology #wrapper .software-line .right .fusion-layout-column:after { position: absolute; top: 50px; left: 0; width: 30px; height: 4px; display: block; content: ''; }
.page-technology #wrapper .backbone .left .fusion-layout-column:after,
.page-technology #wrapper .backbone .right .fusion-layout-column:after { background: #f1b065; }
#wrapper #main .fullwidth-box.assisting-panel .fusion-row { max-width: 1100px !important; }
.page-technology #wrapper .assisting-panel .left .fusion-layout-column:after,
.page-technology #wrapper .assisting-panel .right .fusion-layout-column:after { background: #7f9fb0; }
.page-technology #wrapper .user-portal-text .fusion-row { max-width: 480px !important; margin: 0 auto 65px auto !important; background: #fff; padding: 130px 50px 40px 50px !important;  position: relative; -webkit-filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.2)); filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.2)); }
.page-technology #wrapper .user-portal-text .fusion-row:after { position: absolute; bottom: -25px; left: 0; right: 0; margin: auto; width: 100%; height: 25px; display: block; content: ''; background: #fff; background-position-x: 0%; background-position-y: 0%; background-repeat: repeat; background-size: auto; clip-path: polygon(50% 25px,0% 0%,100% 0%); }
.page-technology #wrapper .user-portal-text .fusion-row:before { position: absolute; bottom: -65px; left: 0; right: 0; margin: auto; width: 8px; height: 40px; display: block; content: ''; background: #7f9fb0; }
.page-technology #wrapper #main .post-content .blue-circle .fusion-row h3 { display: inline-block; background: #003554; border-radius: 50%; width: 150px; height: 150px; position: relative; }
.page-technology #wrapper .client-tenant .fusion-row { max-width: 590px !important; margin: 0 auto 0 auto !important; }
.page-technology #wrapper .client-tenant .fusion-row:after { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 8px; height: 100%; display: block; content: ''; background: #7f9fb0; }
.page-technology #wrapper .client-tenant .fusion-row .client:after { position: absolute; top: 70px; right: 0; width: 80px; height: 8px; display: block; content: ''; background: #7f9fb0; z-index: -1; }
.page-technology #wrapper .client-tenant .fusion-row .tenant:after { position: absolute; top: 70px; left: 0; width: 80px; height: 8px; display: block; content: ''; background: #7f9fb0; z-index: -1; }
.page-technology #wrapper .client-tenant .fusion-row .client:before { position: absolute; top: 63px; right: -11px; width: 22px; height: 22px; display: block; content: ''; border-radius: 50%; background: #7f9fb0; }
.page-technology #wrapper .contractor .fusion-row { max-width: 480px !important; margin: 0 auto 0 auto !important; }
.page-technology #wrapper .contractor .fusion-row:before { position: absolute; top: -30px; left: 0; right: 0; margin: auto; width: 8px; height: 30px; display: block; content: ''; background: #7f9fb0; }
#wrapper #main .technology-subheading.user-portal-heading .fusion-row { position: absolute; top: 25px; }


/* Cookies Policy */
.page-cookie-policy a.link-external { padding-right: 20px; position: relative; }
.page-cookie-policy a.link-external:after { position: absolute; top: 4px; right: 2px; width: 12px; height: 12px; display: inline-block; content: ''; background: url(images/external.png) 0px 0px no-repeat; background-size: 12px 12px; border: none; }
.page-cookie-policy table th { font-weight: 700; border: 1px solid #dcdcdc; background: #f6f6f6; padding: 20px; text-align: left; }
.page-cookie-policy table { border-collapse: collapse; border-spacing: 0; }
.page-cookie-policy table td { border: 1px solid #dcdcdc; padding: 10px 20px; vertical-align: top; }
.page-cookie-policy .ch2-learn-more { display: none; }
.page-cookie-policy .cookiehub-declaration h3 { font-size: 20px; margin-top: 40px; margin-bottom: 5px; font-family: Montserrat; font-weight: 700; line-height: 1.3; letter-spacing: 0px; font-style: normal; }
.ch2-style-light .ch2-btn-primary,
.ch2-style-dark .ch2-btn-primary,
.ch2-style-light .ch2-switch input:checked + label { background: #f39200 !important; }

.ch2-style-light .ch2-btn-primary:hover, .ch2-style-dark .ch2-btn-primary:hover { -webkit-box-shadow: 0px 0px 20px 0 #777 !important; box-shadow: 0px 0px 20px 0 #777 !important; }
#ch2-settings .ch2-switch input:disabled + label:before { background: #fff !important; }
.ch2-style-light.ch2-icon a:hover svg { border: 2px solid #f39200 !important; fill: #f39200 !important; }


/* Privacy Policy */
.page-privacy-policy #wrapper #main h2 { text-transform: uppercase; font-size: 1.9em; margin: 20px 0 5px 0; }
.page-privacy-policy #wrapper #main h3 { text-transform: uppercase; font-size: 1.4em; margin: 40px 0 4px 0; }
.page-privacy-policy #wrapper #main h4 { text-transform: uppercase; font-size: 1.2em; margin: 0; padding: 30px 0 5px 0; }
.page-privacy-policy #wrapper #main ul { padding: 0 0 20px 40px; }
.page-privacy-policy #wrapper #main ul li { padding: 0 0 7px 0; }
.page-privacy-policy #wrapper #main ul li ul { padding: 10px 0 10px 40px; list-style: disc;}
.page-privacy-policy #wrapper #main ul li ul li { padding: 0 0 7px 0; }
.page-privacy-policy #wrapper #main ul li ul li ul { }
.page-privacy-policy #wrapper #main ul li ul li ul li { padding: 0 0 7px 0; list-style: lower-alpha; }
.page-privacy-policy #wrapper #main ol li, .page-privacy-policy #wrapper #main ol li ol li { list-style: none; }
.page-privacy-policy #wrapper #main ol li ol { padding: 10px 0 10px 40px;  }
.page-privacy-policy #wrapper #main ol li { padding: 0 0 12px 0; }
.page-privacy-policy #wrapper #main ol li ol li { padding: 0 0 7px 0; }
.page-privacy-policy #wrapper #main table tr th { text-align: left; padding: 10px; background: #e6e5e6; border: 1px solid #ccc; vertical-align: top; }
.page-privacy-policy #wrapper #main table tr td { border: 1px solid #ccc; padding: 10px; vertical-align: top; }
.page-privacy-policy #wrapper #main table tr td.subheading { text-align: left; background: #e6e5e6; font-weight: 700; }
.page-privacy-policy #wrapper #main table tr td p { margin: 0 0 9px 0; line-height: 1.4; }

/* Contact */
#wrapper #main .speech-bubble h3 { position: relative; padding: 60px 0 40px 0 !important; }
#wrapper #main .speech-bubble h3:before { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 50px; height: 50px; display: inline-block; content: ''; background: url(/wp-content/uploads/2021/05/speech-icon.png) 0 0 no-repeat; background-size: 50px 50px; }
.wpcf7-form { max-width: 650px; margin: 0 auto; }
.form-container { clear: both; }
.form-container .half { width: calc(50% - 10px); float: left; margin: 0 20px 20px 0; }
.form-container .half.last { margin-right: 0; }
#wrapper #main .wpcf7-form .wpcf7-submit { color: #fff !important; text-transform: uppercase; padding: 12px; width: 315px; margin: 50px auto; background: #f39200; font-size: 16px; letter-spacing: 0.5px; display: inline-block; -webkit-transition: background .3s; -o-transition: background .3s; transition: background .3s; }
#wrapper #main .wpcf7-form .wpcf7-submit:hover { background: #000; color: #fff !important; }
.wpcf7-form textarea, .wpcf7-captchar, .wpcf7-form .wpcf7-date, .wpcf7-form .wpcf7-number, .wpcf7-form .wpcf7-quiz, .wpcf7-form .wpcf7-select, .wpcf7-form .wpcf7-text { color: #000; border-radius: 3px; }
.wpcf7-form label { font-size: 15px; font-weight: 700; line-height: 2; }


/* Footer */
.fusion-tb-footer .fusion-row { max-width: 1330px !important; margin-left: auto !important; margin-right: auto !important; }
.fusion-tb-footer h3 { border-bottom: 1px solid #2d3030 !important; }
.fusion-tb-footer .hidden h3 { text-indent: -99999px; }
#wrapper .fusion-tb-footer .fusion-widget-area .current_page_item &gt; a { color: #fff !important; }
#wrapper .fusion-tb-footer a.phone-link { font-weight: 700; font-size: 17px; color: #f39200 !important; }
#wrapper .fusion-tb-footer a.email { display: inline-block; margin: 10px 0 0 0; color: #fff !important; font-weight: 700; font-size: 12px; }
#wrapper .fusion-tb-footer a.email:hover { color: #f39200 !important; }
#wrapper .fusion-tb-footer .head-office p { margin: 10px 0 0 0; }
#wrapper .fusion-tb-footer .address p { margin: 10px 0 25px 0; }



@media screen and (max-width: 1600px) {
#wrapper #main .grid { background-size: 200px 200px !important; }

.single-avada_portfolio .portfolio-hero { min-height: 0 !important; padding-bottom: 25% !important; }


}









@media screen and (max-width: 1400px) {
.home .hero-bg .fusion-layout-column.heading { padding-top: 19% !important; padding-bottom: 16% !important; }
#wrapper #main .grid { background-size: 150px 150px !important; padding-top: 60px !important; padding-bottom: 60px !important; }
#wrapper #main .grid.our-team { padding-top: 60px !important; }
.page-services #wrapper #main .hero-bg { padding-bottom: 0 !important; }

.single-avada_portfolio #wrapper .info .office-info { padding-left: 50px; }
}




@media screen and (max-width: 1200px) {
#wrapper .fusion-tb-footer .four-columns .empty,
#wrapper .fusion-tb-footer .footer-logo-container .empty { display: none; }

#wrapper .fusion-tb-footer .four-columns .fusion-layout-column,
#wrapper .fusion-tb-footer .footer-logo-container .fusion-layout-column { width: 33.33% !important; }
#wrapper .fusion-tb-footer .footer-logo-container .fusion-layout-column .fusion-column-wrapper { margin-left: 3px !important; }

.home #wrapper #main .green-panel.fullwidth-box .fusion-row .fusion-column-wrapper { padding: 20px 20px 20px 30px !important; }






}



@media screen and (max-width: 1100px) {
.fusion-tb-header .header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 225px !important; flex: 0 0 225px !important; }
.hero-bg .fusion-layout-column.logo { top: 40px; right: -7px; }

.fusion-tb-header #sticky.stuck.header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 275px !important; flex: 0 0 275px !important; }

.fusion-tb-header #sticky .sticky-logo .fusion-column-wrapper { margin-left: 20px !important; }
.fusion-tb-header #sticky .sticky-logo .fusion-column-wrapper .fusion-imageframe { max-width: 120px !important; }

.page-our-approach #wrapper #main .hero-bg { padding-bottom: 150px !important; }


}





@media screen and (max-width: 1000px) {
#wrapper #main #home-stats h3 { font-size: 26px; margin: 0 0 5px 0; }
#wrapper #main #home-stats h4 { font-size: 17px; }

.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: -170px; }
.home #wrapper #main .our-portfolio { padding-top: 220px !important; }



.page-services #wrapper #main .services-container { padding-bottom: 40px !important; }
.page-services #wrapper #main .services-container:not(.cpm) { padding-top: 40px !important; }
.page-services #wrapper #main .services-container .services-icon .orange-circle,
.page-services #wrapper #main .services-icon h4 { margin-left: 60px !important; max-width: 200px !important; }
.page-services #wrapper #main .services-icon .fusion-title.fusion-title-size-four { font-size: 24px !important; margin-top: 10px !important; margin-bottom: 110px !important; }

.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right .fusion-title-size-three { font-size: 20px !important; }


.post-type-archive-avada_portfolio #wrapper #main .portfolio-threecol h2 { font-size: 20px !important; }

#wrapper #main .max880.fullwidth-box.pebbles .fusion-row { max-width: none !important; }
.home #wrapper #main .pebbles .pebbles-image .fusion-column-wrapper { top: auto; bottom: auto; left: auto; padding-left: 30px !important; position: relative; }

#wrapper #main .max880.fullwidth-box.the-cube .fusion-row { max-width: none !important; }
.home #wrapper #main .the-cube .the-cube-image .fusion-column-wrapper { top: auto; bottom: auto; left: auto; padding-left: 30px !important; position: relative; }

#wrapper #main .max880.fullwidth-box.city .fusion-row { max-width: none !important; }
.home #wrapper #main .city .city-image .fusion-column-wrapper { top: auto; bottom: auto; left: auto; padding-left: 30px !important; position: relative; }
.home #wrapper #main .city { padding-bottom: 30px !important; }
}





@media screen and (max-width: 950px) {
#wrapper #main .max880.fullwidth-box.our-approach .fusion-row { max-width: none !important; }


.home #wrapper #main .our-approach { padding-top: 58% !important; }
.home #wrapper #main .our-approach .white-line-button { }




.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: 0; }
.home #wrapper #main .post-content .our-approach h3 { padding: 0 30px !important; }
.home #wrapper #main .our-approach .white-line-button .fusion-column-wrapper { padding: 30px !important; }
.home #wrapper #main .our-portfolio { padding-top: 40px !important; }
.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: 0; }

}



@media screen and (max-width: 900px) {
#wrapper .fusion-tb-footer .footer-logo-container { padding-top: 20px !important; }
#wrapper .fusion-tb-footer .footer-logo-container .fusion-layout-column { display: none !important; }
#wrapper .fusion-tb-footer .footer-logo-container .footer-logo { display: block !important; width: 200px !important; }
#wrapper .fusion-tb-footer .footer-logo-container .fusion-layout-column .fusion-column-wrapper { margin-left: -6px !important; }


#wrapper .fusion-tb-footer .info.fusion-layout-column,
#wrapper .fusion-tb-footer .management.fusion-layout-column { width: 50% !important; }

#wrapper .fusion-tb-footer .address.fusion-layout-column { width: 100% !important; }
#wrapper .fusion-tb-footer .address .fusion-column-wrapper { margin-left: 0 !important; }
#wrapper .fusion-tb-footer .fusion-title.hidden { margin: 0 0 20px 0 !important; }



.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right .fusion-title-size-three { font-size: 18px !important; }


}




@media screen and (max-width: 850px) {
.fusion-body #wrapper .fusion-tb-header .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li a { font-size: 13px !important; }
.fusion-tb-header #header { padding-left: 12px !important; z-index: 11; }
.fusion-tb-header #sticky { padding-left: 12px !important; z-index: 11; }
.fusion-body #wrapper #sticky .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li { margin-left: 8px !important; margin-right: 8px !important; }
.fusion-tb-header #header.header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 110px !important; flex: 0 0 110px !important; }
.header#header .phone.fusion-layout-column { width: 30px !important; }
.header#header .phone a.phone-link { visibility: hidden; font-size: 0; }
.header#header .phone a.phone-link:before { visibility: visible; }
.home .hero-bg { padding-right: 20px !important; }
.hero-bg .fusion-layout-column.logo { max-width: 340px; }


.home .hero-bg .heading h1 { max-width: 570px; font-size: 28px !important; }
#wrapper #main .grid { padding-top: 80px !important; padding-bottom: 80px !important; }



.single-avada_portfolio .portfolio-hero { padding-top: 40px !important; padding-right: 30px !important; }
.single-avada_portfolio .portfolio-hero .fusion-imageframe { max-width: 340px !important; }


}



@media screen and (max-width: 800px) {
.header .email.fusion-layout-column, .header .marker.fusion-layout-column { margin-right: 10px !important; }
.fusion-tb-header #sticky.stuck.header .contact-container.fusion-layout-column { -webkit-box-flex: 0; -ms-flex: 0 0 245px !important; flex: 0 0 245px !important; }
.fusion-tb-header #sticky .sticky-logo .fusion-column-wrapper { margin-left: 10px !important; }
.fusion-tb-header #sticky .sticky-logo .fusion-column-wrapper .fusion-imageframe { max-width: 100px !important; }
#wrapper .fusion-tb-footer .footer-logo-container .footer-logo { padding: 0 !important; }
.page-our-approach #wrapper #main .our-approach-assets { padding-top: 70px !important; padding-bottom: 70px !important; }
}

@media screen and (max-width: 768px) {
.page-technology #wrapper .cityscape-container .cityscape-right { padding: 20px 0 0 35px; clear: both; margin: 0 auto !important; width: auto !important; max-width: 430px; }
.page-technology #wrapper .cityscape-container .cityscape-left { width: 100% !important; }
.page-technology #wrapper .cityscape-container .cityscape-image {  }
.page-technology #wrapper #main .cityscape-container .cityscape-panel {  }
.page-technology #wrapper #main .cityscape-right .fusion-column-wrapper { }
.page-technology #wrapper #main .cityscape-container .cityscape-panel .fusion-column-wrapper {  }
.page-technology #wrapper #main .cityscape-right .fusion-row {  }

}





@media screen and (max-width: 767px) {
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-front,
.page-our-approach #wrapper #main .the-team-flipboxes .fusion-flip-boxes .fusion-flip-box .flip-box-back { max-width: 200px !important; margin: 0 auto !important; }
}

/* Burger menu */
@media screen and (max-width: 750px) {
.hero-bg .fusion-layout-column.logo { max-width: 260px; }
.hero-bg .fusion-layout-column.logo { top: 20px; right: -5px; }
.fusion-tb-header #header, .fusion-tb-header #sticky { padding-left: 0 !important; }

.fusion-body #wrapper .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li a { font-size: 14px !important; min-height: 0 !important; }
.fusion-body #wrapper .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li { margin-left: 0 !important; margin-right: 0 !important; }

.fusion-body #wrapper .fusion-tb-header .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li { border-bottom: 1px solid #525252; }
.fusion-tb-header .fusion-tb-header #header #menu-main-1 { border-top: 1px solid #525252 !important; border-bottom: 1px solid #525252 !important; }


.home #wrapper #main .our-approach .fusion-title h3 { font-size: 28px !important; }
.home #wrapper #main .our-approach .fusion-title { margin-bottom: 5px !important; }

#wrapper #main .our-portfolio .fusion-title h3 { font-size: 28px !important; }
#wrapper #main #our-services .fusion-title h3 { font-size: 28px !important; }


.page-our-approach #wrapper #main .fusion-layout-column { width: 100% !important; }

.page-technology #wrapper #main .fusion-layout-columnKILL { width: 100% !important; }
.page-technology #wrapper #main .hero-bg { padding-bottom: 120px !important; }


.page-technology #wrapper .software-line .fusion-layout-column:before,
.page-technology #wrapper .software-line .fusion-layout-column:after { display: none !important; }



.single-avada_portfolio .portfolio-hero .fusion-imageframe { max-width: 260px !important; }




.page-our-approach #main .our-approach .fusion-title h3 { font-size: 28px !important; }
.page-our-approach #wrapper #main .our-approach-assets .fusion-layout-column.our-approach-assets-image &gt; .fusion-column-wrapper { margin: 40px 50px 0 80px !important; width: auto !important; }
.page-our-approach #wrapper #main .our-approach-assets .fusion-layout-column.our-approach-assets-image .fusion-imageframe { max-width: 320px; }

.page-our-approach #main .our-team .fusion-title h3 { font-size: 28px !important; }
.page-technology #main .the-technology .fusion-title h3 { font-size: 28px !important; }

}

@media screen and (max-width: 700px) {
#wrapper #main .grid { padding: 60px 30px 70px 100px !important; background-size: 120px 120px !important; }
.page-services #wrapper #main #content .services-container.grid { padding: 90px 30px 40px 30px !important; }
#wrapper #main .grid .essence-text { padding-bottom: 40px !important; }




}

@media screen and (max-width: 650px) {
#wrapper .fusion-tb-footer .four-columns .fusion-layout-column { width: 100% !important; }
#wrapper .fusion-tb-footer .four-columns .fusion-column-wrapper { margin-right: 0 !important; }
#wrapper .fusion-tb-footer .four-columns .info .fusion-column-wrapper { margin: 30px 0 0 0 !important; }
#wrapper .fusion-tb-footer .four-columns .address .fusion-column-wrapper { margin: 0 !important; }

.home .hero-bg .fusion-layout-column.heading { padding-top: 110px !important; padding-bottom: 80px !important; }
.home .hero-bg .heading h1 { max-width: none; font-size: 24px !important; }

#wrapper #main #home-stats h3, #wrapper #main #home-stats h4 {  max-width: none; }
#wrapper #main #home-stats .slick-list { min-height: 0; padding-bottom: 20px; }

#wrapper #main #our-services { padding-right: 30px !important; padding-top: 30px !important; padding-bottom: 10px !important; }

.page-services #wrapper #main .services-container { padding-top: 120px !important; }
.page-services #wrapper #main .services-container .services-icon .orange-circle,
.page-services #wrapper #main .services-icon h4 { margin-left: 0 !important; max-width: 160px !important; }
.page-services #wrapper #main .services-icon .fusion-title.fusion-title-size-four { font-size: 17px !important; margin-bottom: 30px !important; }

.page-services #wrapper #main .services-container .services-icon .fusion-title.fusion-title-size-three { margin-bottom: 50px !important; }
.page-technology #wrapper #main .client-tenant .fusion-flex-column { width: 50% !important; }
.page-technology #wrapper #main .post-content .blue-circle .fusion-row h3 { line-height: 120px !important; width: 120px; height: 120px; }
.page-technology #wrapper #main .post-content .blue-circle .fusion-title-size-three { font-size: 13px !important; }
.page-technology #wrapper .client-tenant .fusion-row { max-width: 530px !important; }
.page-technology #wrapper #main .contractor { padding-top: 0 !important; }
.page-technology #wrapper .user-portal-text .fusion-row { max-width: 480px !important; margin: 0 auto 45px auto !important; }

.post-type-archive-avada_portfolio #wrapper #main .hero-bg { padding-bottom: 120px !important; }
.post-type-archive-avada_portfolio #wrapper #main .our-portfolio-container &gt; .fusion-column-wrapper { padding-top: 120px !important; }
}


@media screen and (max-width: 600px) {
.home #wrapper #main .pebbles .pebbles-image,
.home #wrapper #main .the-cube .the-cube-image,
.home #wrapper #main .city .city-image { padding: 30px 0 30px 0 !important; text-align: center; }
.home #wrapper #main .pebbles .pebbles-image .fusion-column-wrapper,
.home #wrapper #main .the-cube .the-cube-image .fusion-column-wrapper,
.home #wrapper #main .city .city-image .fusion-column-wrapper { padding-left: 0 !important; }


}


@media screen and (max-width: 500px) {
.page-our-approach #wrapper #main .grid { padding: 100px 30px 70px 30px !important; }

.page-technology #wrapper #main .cityscape-container .cityscape-panel { width: 200px !important; }
.page-technology #wrapper #main .cityscape-right .fusion-row { left: -20px; bottom: 20px; }
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right .fusion-title-size-three { font-size: 16px !important; }

.page-technology #wrapper #main .cityscape-container .cityscape-panel .fusion-column-wrapper .fusion-text { font-size: 15px !important; }
.page-technology #wrapper .cityscape-container .cityscape-right { padding: 20px 0 0 20px; }
.page-technology #wrapper .user-portal-text .fusion-row { padding: 100px 15px 0 15px !important; }

.page-privacy-policy #wrapper #main .hero-bg,
.page-cookie-policy #wrapper #main .hero-bg,
.page-terms-conditions #wrapper #main .hero-bg { padding-bottom: 120px !important; }




.page-privacy-policy #wrapper #main ul,
.page-privacy-policy #wrapper #main ul li ul,
.page-privacy-policy #wrapper #main ul li ul li ul,
.page-privacy-policy #wrapper #main ol,
.page-privacy-policy #wrapper #main ol li ol { padding-left: 13px; }
.page-privacy-policy #wrapper #main .scroll { overflow-x: scroll; }


}


@media screen and (max-width: 450px) {
.page-technology #wrapper #main .post-content .client-tenant { padding: 0 20px !important; }
.page-technology #wrapper #main .post-content .blue-circle .fusion-row h3 { line-height: 110px !important; width: 110px; height: 110px; }
.page-technology #wrapper #main .post-content .blue-circle .fusion-title-size-three { font-size: 12px !important; }
.page-technology #wrapper .client-tenant .fusion-row .client:before { top: 53px; }
.page-technology #wrapper .client-tenant .fusion-row .client:after,
.page-technology #wrapper .client-tenant .fusion-row .tenant:after { top: 60px; width: 90px; }
.page-technology #wrapper .client-tenant .fusion-row .client .fusion-title-size-three { text-align: left; }
.page-technology #wrapper .client-tenant .fusion-row .tenant .fusion-title-size-three { text-align: right; }


}

@media screen and (max-width: 400px) {
.page-our-approach #wrapper #main .our-approach-assets .green-panel-left .fusion-column-wrapper { padding: 20px 30px !important; }
.page-our-approach #wrapper #main .green-panel-left-container .fusion-row .fusion-layout-column { width: 190px !important; top: 20px; left: -30px; }
}





@media screen and (max-width: 320px) {
.hero-bg .fusion-layout-column.logo { max-width: 100%; }


}



@media screen and (min-width: 1201px) and (max-width: 1350px) {
#wrapper .fusion-tb-footer .footer-logo .fusion-column-wrapper { margin-left: 0 !important; }
}



@media screen and (min-width: 751px) and (max-width: 850px) {
.fusion-body #wrapper .fusion-tb-header .fusion-menu-element-wrapper .fusion-menu-element-list &gt; li { margin-left: 8px !important; margin-right: 8px !important; }
.page-our-approach #wrapper #main .our-approach-assets .fusion-layout-column.our-approach-assets-image { -webkit-box-flex: 0; -ms-flex: 0 0 360px !important; flex: 0 0 360px !important; }
.page-our-approach #wrapper #main .our-approach-assets .fusion-layout-column.our-approach-assets-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
}




@media screen and (min-width: 1201px) {
.home #wrapper #main .home-intro .fusion-layout-column.home-stats-container { -webkit-box-flex: 0; -ms-flex: 0 0 398px !important; flex: 0 0 398px !important; }
.home #wrapper #main .home-intro .fusion-layout-column.text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
}


@media screen and (min-width: 701px) and (max-width: 1200px) {
.home #wrapper #main .home-intro .fusion-layout-column.home-stats-container { -webkit-box-flex: 0; -ms-flex: 0 0 280px !important; flex: 0 0 280px !important; }
.home #wrapper #main .home-intro .fusion-layout-column.text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
.page-our-approach #wrapper #main .our-team .fusion-layout-column.our-team-heading { -webkit-box-flex: 0; -ms-flex: 0 0 340px !important; flex: 0 0 340px !important; }
.page-our-approach #wrapper #main .our-team .fusion-layout-column.our-team-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }



}


@media screen and (min-width: 651px) and (max-width: 800px) {
#wrapper #main .our-services-panel h2 p { font-size: 15px !important; }
}

@media screen and (min-width: 701px) and (max-width: 1000px) {
.page-our-approach #wrapper #main .essence .fusion-layout-column.definition { -webkit-box-flex: 0; -ms-flex: 0 0 280px !important; flex: 0 0 280px !important; padding-left: 50px !important; }
.page-our-approach #wrapper #main .essence .fusion-layout-column.essence-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }

}

@media screen and (min-width: 701px) and (max-width: 1500px) {
.page-our-approach #wrapper #main .our-team .fusion-layout-column.our-team-heading { padding-left: 80px !important; }
}

@media screen and (min-width: 500px) {
.page-our-approach #wrapper #main .grey-line-heading .title-heading-center { position: relative; }
.page-our-approach #wrapper #main .grey-line-heading .title-heading-center:before { position: absolute; left: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 1px; display: block; content: ''; background: #e6e5e6; z-index: -2; }
.page-our-approach #wrapper #main .grey-line-heading .title-heading-center:after { position: absolute; left: 0; right: 0; top: 0; margin: auto; width: 240px; height: 50px; display: block; content: ''; background: #fff; z-index: -1; }
}



@media screen and (min-width: 651px) and (max-width: 900px) {
.page-services #wrapper #main .services-container .fusion-layout-column.services-icon { -webkit-box-flex: 0; -ms-flex: 0 0 290px !important; flex: 0 0 290px !important; }
.page-services #wrapper #main .services-container .fusion-layout-column.services-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
.page-services #wrapper #main .services-container .services-icon .orange-circle, .page-services #wrapper #main .services-icon h4 { margin-left: 0 !important; max-width: 150px !important; }
.page-services #wrapper #main .services-icon .fusion-title.fusion-title-size-four { font-size: 19px !important; margin-top: 10px !important; margin-bottom: 20px !important; }
.page-services #wrapper #main .services-container.grid .fusion-layout-column.services-icon { margin-top: 60px !important; margin-left: 20px !important; }
}







@media screen and (min-width: 769px) and (max-width: 900px) {
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-left { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right { -webkit-box-flex: 0; flex: 0 0 340px !important; padding-left: 80px !important; padding-top: 30px !important; }
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right .cityscape-panel .fusion-column-wrapper { padding: 20px !important; }
.page-technology #wrapper #main .cityscape-right .fusion-row { bottom: auto; top: 20px; left: -25px; }
.page-technology #wrapper #main .cityscape-container .cityscape-panel { width: 200px !important; }

}


@media screen and (min-width: 901px) and (max-width: 1000px) {
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-left { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
.page-technology #wrapper #main .cityscape-container .fusion-layout-column.cityscape-right { -webkit-box-flex: 0; -ms-flex: 0 0 430px !important; flex: 0 0 430px !important; padding-left: 100px !important; }
}

@media screen and (min-width: 1001px) {
.page-technology #wrapper .cityscape-container .fusion-layout-column { width: auto !important; }
.page-technology #wrapper .cityscape-container .cityscape-right { -webkit-box-flex: 0; -ms-flex: 0 0 595px !important; flex: 0 0 595px !important; padding-left: 150px; }
.page-technology #wrapper .cityscape-container .cityscape-left { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }

}




@media screen and (max-width: 320px) {

}




@media screen and (min-width: 1250px) {
.single-avada_portfolio #wrapper .info .office-info { padding-left: 100px; }

}
@media screen and (min-width: 1400px) {
.single-avada_portfolio #wrapper .info .office-info { padding-left: 150px; }
}

@media screen and (min-width: 901px) {
.single-avada_portfolio #wrapper .info .lightbox-info { -webkit-box-flex: 0; -ms-flex: 0 0 640px !important; flex: 0 0 640px !important; }
.single-avada_portfolio #wrapper .info .office-info { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }
}




@media screen and (min-width: 901px) and (max-width: 1150px) {
.single-avada_portfolio #wrapper .info .lightbox-info { -webkit-box-flex: 0; -ms-flex: 0 0 550px !important; flex: 0 0 550px !important; }

}

@media screen and (max-width: 900px) {
.single-avada_portfolio #wrapper .info .fusion-layout-column { width: 100% !important; }
.single-avada_portfolio #wrapper .info { padding-top: 20px !important; padding-bottom: 50px !important; }
.single-avada_portfolio #wrapper .info .office-info { padding-top: 20px !important; }
}



@media screen and (min-width: 700px) and (max-width: 900px) {
.single-avada_portfolio #wrapper .info .details,
.single-avada_portfolio .portfolio-lightbox { width: 640px; }


}


@media screen and (max-width: 1300px) {
.single-avada_portfolio #wrapper .info .office-info { padding-left: 40px; }
}



@media screen and (max-width: 500px) {
.single-avada_portfolio #wrapper .info .office-info { padding-left: 0; }
.single-avada_portfolio #wrapper .info .details h3 { font-size: 30px; }
.single-avada_portfolio #wrapper .info .details h3 span { font-size: 16px; }
.single-avada_portfolio #wrapper .info .details .details-left,
.single-avada_portfolio #wrapper .info .details .details-right { padding: 30px 20px; }
.single-avada_portfolio #wrapper #main .post-content .info .details ul li { font-size: 13px; }

}


@media screen and (max-width: 450px) {
.single-avada_portfolio #wrapper .info .details h3 { font-size: 23px; }
.single-avada_portfolio #wrapper .info .details h3 span { font-size: 14px; }
.single-avada_portfolio #wrapper #main .post-content .info .details ul li { font-size: 12px; }

}

@media screen and (max-width: 370px) {
.single-avada_portfolio #wrapper .info .details { display: block; }
.single-avada_portfolio #wrapper .info .details .details-left,
.single-avada_portfolio #wrapper .info .details .details-right { display: block; padding: 30px; }
.single-avada_portfolio #wrapper .info .details h3 { font-size: 30px; }
.single-avada_portfolio #wrapper .info .details h3 span { font-size: 16px; }
.single-avada_portfolio #wrapper .info .details .details-right:before { bottom: auto; left: 30px; width: calc(100% - 60px); height: 1px; }


}

@media screen and (min-width: 601px) and (max-width: 1000px) {
.home #wrapper #main .pebbles .fusion-layout-column.pebbles-image { -webkit-box-flex: 0; -ms-flex: 0 0 250px !important; flex: 0 0 250px !important; }
.home #wrapper #main .pebbles .fusion-layout-column.pebbles-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }


.home #wrapper #main .the-cube .fusion-layout-column.the-cube-image { -webkit-box-flex: 0; -ms-flex: 0 0 250px !important; flex: 0 0 250px !important; }
.home #wrapper #main .the-cube .fusion-layout-column.the-cube-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }



.home #wrapper #main .city .fusion-layout-column.city-image { -webkit-box-flex: 0; -ms-flex: 0 0 250px !important; flex: 0 0 250px !important; }
.home #wrapper #main .city .fusion-layout-column.city-text { -webkit-box-flex: 1 !important; -ms-flex: 1 !important; flex: 1 !important; }


}



@media screen and (max-width: 1050px) {
.home #wrapper #main .our-portfolio { padding-top: 200px !important; }
.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: -170px; }
}

@media screen and (max-width: 550px) {
.home #wrapper #main .our-approach { padding-top: 86% !important; }
}

@media screen and (max-width: 450px) {
.home #wrapper #main .our-portfolio { padding-top: 250px !important; }
.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: -220px; }
}


@media screen and (max-width: 400px) {
.home #wrapper #main .our-portfolio { padding-top: 320px !important; }
.home #wrapper #main .our-approach.fullwidth-box .fusion-row { bottom: -300px; }
}


/**
 * Footer accreditation icons.
 */
#wrapper .fusion-tb-footer .iso9001 { height: 45px !important; }
#wrapper .fusion-tb-footer .rics { height: 45px !important; margin-right: 0; }
#wrapper .fusion-tb-footer .tpo { height: 45px !important; margin-top: 25px; clear: both; }
#wrapper .fusion-tb-footer .iwfm { height: 45px !important; margin-top: 25px; margin-right: 0 !important; }

@media screen and (min-width: 600px) {
#wrapper .fusion-tb-footer .tpo { clear: none; margin-top: 0; }
#wrapper .fusion-tb-footer .iwfm { margin-top: 0; }
}

@media screen and (min-width: 901px) {
#wrapper .fusion-tb-footer .rics { margin-right: 0; }
#wrapper .fusion-tb-footer .tpo { margin-top: 25px; }
#wrapper .fusion-tb-footer .iwfm { margin-top: 25px; }
}


/*
|-------------------------------------------------------------------------------
| Portal login page
|-------------------------------------------------------------------------------
|
| Bespoke styling for the portal login page.
|
| Developed by Stack Communications Ltd. [stackagency.co.uk]
|
*/

/* Base mobile first styles */
@media print, screen {

	.page-login .post-content {
		padding-top: 35px;
	}

	.page-login #wrapper #main .technology-subheading.user-portal-heading .fusion-row {
		position: absolute;
		top: 20px;
	}

}

/* 651px and up */
@media print, screen and (min-width: 651px) {

	.page-login .post-content {
		padding-top: 70px;
	}

}


/*
|-------------------------------------------------------------------------------
| Portfolio map
|-------------------------------------------------------------------------------
|
| Bespoke styling for the portfolio map plug-in.
|
| Developed by Stack Communications Ltd. [stackagency.co.uk]
|
*/
.mapHolder {
    height: 700px;
    position: relative;
    margin: var(--hundredp_padding-hundred_percent_negative_margin);
    display: flex;
    perspective: 1000px;
}
#map {
    width: 100%;
    height: 100%;
}
#infoWindow {
    aspect-ratio: 4 / 2.8;
    border-radius: 4px 4px 0px 0px;
    overflow-y: visible;
    margin-bottom: auto;
    margin-top: 1em;
    margin-left: 1em;
    width: 33.33333333%;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: all 0.8s;
    transition-timing-function: cubic-bezier(.2, .85, .4, 1.275);
    transform: rotateY(-180deg);
    backface-visibility: hidden;
    transform-style: preserve-3d;
    background-size: cover;
    background-position: center center;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #003554
}
#infoWindow.active {
    opacity: 1;
    transform: rotateY(0deg);
}
#infoWindow .closer {
    color: #fff;
    background-color: rgba(0, 0, 0, 0.4);
    width: 2em;
    height: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    cursor: pointer;
    position: absolute;
    top: 0.5em;
    right: 0.5em;
    font-size: 1.25rem;
}
#infoWindow .content .details {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    bottom: -100px;
    padding: 1.00rem 0;
    text-align: center;
    background: #b0d9d2;
    border-radius: 0px 0px 4px 4px;
}
#infoWindow h2 {
    text-transform: uppercase !important;
    color: #fff !important;
    margin: 0 0 8px 0;
    font-size: 20px !important;
    text-shadow: rgba(0, 0, 0, 1) 1px 1px 5px;
    text-align: center;
}
#infoWindow h3,
#infoWindow h4 {
    color: #000;
    margin: 0 0 5px 0;
    font-size: 13px !important;
    font-weight: 400 !important;
    text-align: center;
}
#infoWindow h4 {
    margin: 0 !important;
}
#infoWindow h4 span {
    display: inline-block;
    margin: 0px 10px;
    font-size: 1.25rem;
}

@media print, screen and (max-width: 900px) {
    #infoWindow {
        width: calc(100% - 2em);
    }
}
</pre></body></html>