@font-face{font-family: "socialico"; src: url("fonts/socialico-webfont.woff.woff2") format("woff2"), url("fonts/socialico-webfont.woff.woff") format("woff");}

.suspension-contain {max-height: 980px;overflow:hidden;position: relative;}
html.suspended {background: rgba(0,0,0,0.6);}
* {box-sizing: border-box;}
html{overflow-x: hidden;}
body {max-width: 100%;min-width: 1200px;margin: 0 auto;text-align: left; color: #333; background: #FFF; font-size: 18px; overflow-x: hidden; font-family: 'Poppins', sans-serif;}
a {color:inherit;text-decoration: none; transition: all ease-out 0.3s; color: #0455A6;}
a.email{word-break: break-all;}
a:hover {text-decoration: none; color: #000;}
h1,h2,h3,h4,h5,h6{padding:0; margin:0 0 20px; line-height: 120%; color: #0455A6; font-weight: 400; font-family: "Staatliches", sans-serif; line-height: 100%;}
h1{font-size: 90px;}
h2{font-size: 90px;}
h3{font-size: 70px;}  
h4{font-size: 50px;}
h5{font-size: 40px;}
h6{font-size: 30px;}
ul{padding-left: 25px; margin-top: 0;}
p{margin: 0 0 20px; line-height: 120%;}
.row {max-width: 1740px;margin: 0 auto; padding: 0 10px; width: 100%;}

/*button*/
.btn{min-width: 240px; max-width: max-content; height: 60px; border: 0; border-radius: 60px; font-family: 'Poppins', sans-serif; font-size: 20px; font-weight: 400; color:#FFF; padding: 10px; display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex;justify-content: center;align-items: center; line-height: 1; transition: all ease 0.3s; text-align: center; column-gap: 10px; background: linear-gradient(to bottom, #0254A5, #3FA9F5); box-shadow: inset 0 0 8px 2px rgba(63,169,245,1);}
.btn:hover{color: #FFF;}

/*image*/
img{display: block; max-width: 100%;}
.img-responsive{width: 100%;}

/*floats*/
.fl {float:left;}
.fr {float:right;}

.d-flex{display: flex; gap: 20px;}
.a-center{align-items: center;}
.a-start{align-items: flex-start;}
.a-end{align-items: flex-end;}
.j-between{justify-content: space-between;}
.j-center{justify-content: center;}

.service-img{max-width: 50%;}

.half{width: calc(100% / 2);}
.thirds{width: calc(100% / 3);}

/*typography*/
.text-primary{ color: #0455A6; }
.text-bold{ font-weight: 700; }
.text-uppercase{ text-transform: uppercase }
.text-center{ text-align: center !important; }
.text-left{ text-align: left; }
.text-right{ text-align: right; }

.center-block{margin-left: auto; margin-right: auto; display: block;}

/*clearings*/
.clear{ clear:both;}
.clearfix:after {content:"."; display:block; height:0; clear:both;visibility:hidden;font-size: 0;}
.clearfix {display:block;}

/*cookie*/
.cc-animate.cc-revoke.cc-bottom{font-size: 14px; padding: 5px 10px; position: fixed; display: block!important; transform: none!important; bottom: 0!important; left: 20px!important;}

/*call to action*/
.destroy-on-load, .cta {display: none;}

/*contact form messages*/
form .messages p {display: none; font-weight: 400 !important;letter-spacing: 0 !important;font-size: 16px !important;}
form .loading {display: none;}
form .alert {padding: 15px;margin-bottom: 20px;border: 1px solid transparent;border-radius: 4px;}
form .alert-success {color: #3c763d;background-color: #dff0d8;border-color: #d6e9c6;}
form .alert-danger {color: #a94442;background-color: #f2dede;border-color: #ebccd1;}
form [type="submit"] {margin:10px auto 0;}

/*gallery*/
#content .gallery-container {text-align: center;}
#content .gallery {list-style-type: none;margin: 0;padding: 0;}
#content .gallery li {display: inline-block;}
#content .thumbnail {background-color: #fff;border: 1px solid #ddd;border-radius: 4px;display: block;line-height: .42857; margin-bottom: 20px;padding: 4px;transition: border 0.5s ease-in-out 0s;}
#content .thumbnail img{height: 225px; width: 225px; object-fit: cover;}
#content .thumbnail:hover {transform: scale(1.02);}
#content .page_navigation {display: inline-block;}
#content .page_link,#content .previous_link,#content .next_link,#content  .first_link,#content  .last_link, #content .ellipse {background-color: #fff;border: 1px solid #ddd;color:  #0275d8;display: inline-block;line-height: 1.25;margin-left: -1px;padding: 0.5rem 0.75rem;position: relative;}
#content .page_navigation > a:hover , .page_navigation > a.active_page {background-color: #eceeef;border-color: #ddd;color: #014c8c;text-decoration: none;}

/* general */
.mobile{display: none;}

/*header*/
#header{background: url('../images/common/hd-bg.png') center center no-repeat; min-height: 1140px; background-size: cover; padding: 20px 0 370px;}
#header .row{max-width: 1650px;}
#header .top .content{display: flex; align-items: center; justify-content: space-between; gap: 20px; border-radius: 65px; border: 1px solid #000; min-height: 66px; background: #FFF; padding: 5px; margin-top: 5px; box-shadow: 0 11px 11px rgba(0, 0, 0, 0.4);}
#header .top .social{background: #3FA9F5; color: #FFF; width: 405px; max-width: 100%; height: 52px; font-size: 16px; font-weight: 500; border-radius: 52px; display: flex; align-items: center; gap: 15px; justify-content: center;}
#header .top .social .in{display: flex; align-items: center; gap: 10px;}
#header .top .phone{font-weight: 500; font-size: 16px; color: #FFF; display: flex; justify-content: flex-end; align-items: center; gap: 25px; margin-right: 20px;}
#header .top .phone a{font-weight: 400; font-size: 50px; color: #FFF; font-family: "Staatliches", sans-serif;}
#header .bot{margin-top: 35px;}
#header .bot .logo{margin-bottom: 60px;}
#header .bot .txt{width: 1240px; margin: 0 auto;}
#header .bot small{color: #3FA9F3; font-weight: 500; font-size: 25px; letter-spacing: 12px; text-shadow: 0 4px 7px rgba(0, 0, 0, 0.65);}
#header .bot h2{color: #FFF; margin: 10px 0 20px; text-shadow: 0 4px 7px rgba(0, 0, 0, 0.65);}
#header .bot p{line-height: 155%; font-size: 18px; font-weight: 600; margin-bottom: 30px;}
#header nav{width: 890px; max-width: 100%; margin: 0 0 0 130px;}
#header nav #pull{display: none;}
#header nav ul{list-style: none; padding: 0; margin: 0; display: flex; align-items: center; justify-content: space-between; width: 100%;}
#header nav ul li a:after{position: absolute; content: ''; bottom: 0; left: 0; height: 7px; width: 100%; border-radius: 7px; background-color: #FFf;}
#header nav ul li a{font-size: 20px; text-align: center; display: block; line-height: 120%; color: #666666; position: relative; font-family: "Staatliches", sans-serif; padding: 10px 7px;}
#header nav ul li a:hover:after, #header nav ul li.active-menu a:after{background: #3FA9F5;}
#header nav ul li a:hover, #header nav ul li.active-menu a{color: #3FA9F5;}

/*banner*/

/*content*/
#welcome{padding: 420px 0 130px; background: url('../images/common/wc-bg.png') center left no-repeat; min-height: 1224px; background-size: cover; margin: -375px 0 10px;}
#welcome .row{max-width: 1540px;}
#welcome .txt{width: 940px; max-width: 100%; text-align: center;}
#welcome small{background: url('../images/common/wc-tt.png') center center no-repeat; height: 54px; width: 363px; background-size: cover; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 20px; letter-spacing: 10px; margin: 0 auto 30px; color: #FFF;}
#welcome p{font-size: 20px; line-height: 150%; margin: 0 0 50px;}
#welcome h2{margin: 0 0 10px;}
#welcome p:first-of-type{color: #3FA9F3; font-size: 30px; font-weight: 700; margin: 0 0 30px; line-height: 120%;}
#welcome p:last-of-type{font-size: 18px; font-weight: 500; line-height: 120%; width: 500px; margin: 0 auto 50px; max-width: 100%;}
#welcome .phone span{color: #0B5FAE; font-size: 20px; letter-spacing: 3px;}
#welcome .phone a{display: flex; align-items: center; justify-content: center; background: url('../images/common/btn-bg.png') center center no-repeat; min-height: 79px; background-size: cover; width: 439px; max-width: 100%; margin: 0 auto; font-family: "Staatliches", sans-serif; font-size: 65px; line-height: 100%;}

#services{padding: 60px 0; background: url('../images/common/sv-bg.png') center center no-repeat; min-height: 1002px; background-size: cover; margin-bottom: 10px;}
#services .row{max-width: 1680px;}
#services .content{display: flex; justify-content: space-between; gap: 20px; align-items: center; position: relative;}
#services .content:before {position: absolute;content: 'OUR SERVICES';color: #FFF;top: 380px;left: -430px;font-size: 90px;font-family: "Staatliches", sans-serif;transform: rotate(270deg);letter-spacing: 27px;text-shadow: 0 7px 4px rgba(0 0 0 / 65%)}
#services .item{position: relative;}
#services .item .in{width: 490px; max-width: 100%; min-height: 200px; display: flex; align-items: center; justify-content: center; padding: 20px; flex-direction: column; background: rgba(255,255,255,0.8); border-radius: 15px; text-align: center; margin: 0 auto; box-shadow: 0 7px 7px rgb(0 0 0 / 35%); position: absolute; bottom: 25px; left: 50%; transform: translateX(-50%);}
#services .item .in:after{background: url('../images/common/sv-bd.png') center center no-repeat; height: 10px; width: 225px; position: absolute; top: 0; left: 50%; transform: translateX(-50%); content: '';}
#services .item h5{margin: 0;}
#services .item p{font-size: 18px; line-height: 167%; margin: 0 auto; max-width: 440px;}
#services .item .btn{bottom: -20px; left: 50%; transform: translateX(-50%); position: absolute;}
#services .item .btn:hover{bottom: -30px;}

#choose{padding: 80px 0 250px; background: url('../images/common/ch-bg.png') center right no-repeat; min-height: 1234px; background-size: cover; position: relative;}
#choose .row{max-width: 1800px;}
#choose .content{display: flex; justify-content: flex-end; gap: 75px; align-items: flex-start;}
#choose .top{width: 790px; max-width: 100%; margin: 0 0 60px auto; margin-right: 230px; text-align: center;}
#choose .top h2{margin: 0;}
#choose .top p{font-size: 20px; line-height: 150%; text-shadow: 0 0 4px rgba(255,255,255,0.65);}
#choose .txt{width: 890px; max-width: 100%;}
#choose .txt .item{display: flex; justify-content: flex-end; gap: 50px; align-items: flex-start;}
#choose .txt .item:not(:last-of-type){margin-bottom: 30px;}
#choose .txt .item h4{margin: 0;}
#choose .txt .item p{line-height: 167%; margin: 0; text-shadow:0 0 4px rgba(255,255,255,0.65)}
#choose .imgs{display: flex; justify-content: center; gap: 5px; align-items: center; width: 515px; max-width: 100%;}
#choose .imgs .in{display: flex; justify-content: center; gap: 5px; align-items: center; flex-direction: column;}
#choose .imgs img{width: 255px; height: auto; max-width: 100%; object-fit: contain;}

#reviews{padding: 210px 0 175px; background: url('../images/common/rv-bg.png') center center no-repeat; min-height: 1224px; background-size: cover; margin-top: -360px;}
#reviews .row{max-width: 1580px;}
#reviews .in{width: 950px; max-width: 100%;}
#reviews .txt small{font-weight: 700; font-size: 20px; letter-spacing: 10px; color: #FFF;}
#reviews .txt h2{color: #FFF; margin: 20px 0 50px;}
#reviews .item{display: flex; gap: 30px;}
#reviews .item:first-of-type{border-bottom: 2px solid #FFF; padding-bottom: 30px; margin-bottom: 40px;}
#reviews .item .in{width: 133px;}
#reviews .item .in span{display: block; font-weight: 700; font-size: 22px; margin: 20px 0 10px; line-height: 120%; color: #FFF;}
#reviews .item p{font-size: 18px; color: #FFF; font-style: italic; font-weight: 500; width: 790px; max-width: 100%; margin: 0; line-height: 167%;}
#reviews .bot{display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-top: 70px;}
#reviews .bot a{color: #FFF; text-decoration: underline; font-weight: 500; font-size: 20px;}
#reviews .bot a:hover{color: #333;}
#reviews .bot .nav{display: flex; justify-content: space-between; gap: 20px; align-items: center; width: 240px;}

#gallery{padding-bottom: 35px; margin-top: -150px;}
#gallery .content{display: flex; justify-content: space-between; gap: 20px; align-items: center; margin-bottom: 20px;}
#gallery .bot{display: flex; justify-content: space-between; gap: 20px; align-items: center;}
#gallery .bot a{color: #43B8F3; text-decoration: underline; font-weight: 500; font-size: 18px;}
#gallery .bot a:hover{color: #777777;}
#gallery .bot .nav{display: flex; justify-content: space-between; gap: 20px; align-items: center; width: 240px;}
#gallery .item{width: 415px; background: #FFF; border-radius: 10px; display: flex; align-items: center; justify-content: center; padding: 5px; box-shadow: 0 11px 11px rgb(0 0 0 / 40%);}

/*form*/
.ctc-form {margin: 0 auto;text-align: center; font-family: 'Poppins', sans-serif;}
.ctc-form input[type="text"], .ctc-form textarea {font-family: 'Poppins', sans-serif; border: 0; border-radius: 10px; font-size: 18px; height: 60px;display: block;width: 100%;padding: 10px 20px;box-sizing: border-box;margin: 0 auto 10px; font-weight: 500; background: #EEEEEE; color: #333;}
.ctc-form textarea {height: 160px;padding-top:10px; width: 100%;}
.ctc-form .btn{margin: 10px auto 0;}
.ctc-form ::placeholder{color: #868686;}
.ctc-form label{font-size: 15px;}
.ctc-form .flex {display: -webkit-box;display: -moz-box;display: -ms-flexbox;display: -webkit-flex;display: flex; column-gap: 10px; align-items: center; justify-content: space-between;}
.ctc-form .flex label{width: 100%;}
.ctc-form .recap {display: inline-block;}
.ctc-form .g-recaptcha {padding: 0;}
.ctc-form .g-recaptcha div {line-height: 0;  margin: 0 auto;}
.ctc-form .ctc-hide {display: none;}
.ctc-form .cap{margin-bottom: 10px;}
.ctc-form .consent{margin-bottom: 10px;}
.ctc-form>label{font-size: 0;margin: 0;display: block}
.contact-page #footer .form{display: none;}

/*footer*/
#footer{background: url('../images/common/ft-bg.png') bottom center no-repeat; padding: 0 0 40px;}
#footer .content{display: flex; align-items: center; justify-content: space-between; gap: 20px; width: 690px; max-width: 100%; margin: 0 auto 90px;}
#footer .form{width: 100%; text-align: center; background: #3FA9F5; display: flex; align-items: center; justify-content: center; padding: 20px; min-height: 590px; margin: 0; color: #FFF; border-radius: 30px; box-shadow: 0 11px 11px rgb(0 0 0 / 40%);}
#footer .form h2{margin: 0 0 10px; color: #FFF;}
#footer .form .in{width: 1350px; max-width: 100%;}
#footer .form .consent{text-align: left; font-size: 16px;}
#footer .form .consent a{color: #FFF;}
#footer .form .btn{margin: 0;}
#footer .item a{font-size: 18px; font-weight: 500; display: flex; gap: 20px; align-items: center; color: #FFF;word-break: break-all;}
#footer .item span{display: block; font-size: 14px; letter-spacing: 1px; font-weight: 500; color: #3FA9F4;}
#footer .logo img{margin: 115px auto 50px;}
#footer .social{width: 260px; font-size: 14px; letter-spacing: 1px; font-weight: 500; color: #3FA9F4;}
#footer .social .in{display: flex; align-items: center; justify-content: space-between; margin: 10px 0 0;}
#footer .left .item:first-of-type, #footer .right .item:first-of-type{margin-bottom: 50px;}
#footer .top .content{width: 1340px; max-width: 100%; margin: 0 auto; padding: 55px 0 30px;}
#footer .copy{font-weight: 500; font-size: 18px; line-height: 120%; color: #FFF; text-align: center;}
#footer .copy img{vertical-align: middle; display: inline-block; height: 25px; margin-left: 5px;}
#footer .cards{font-weight: 400; font-size: 14px; color: #FFF; width: 240px; gap: 10px; justify-content: space-between; align-items: center; display: flex; width: 340px; max-width: 100%;}

/*inner pages*/
.inner #content .row{max-width:1320px;}
.inner #content {min-height: 300px;padding: 40px 0; position: relative;}
.inner #content .row{margin:0 auto;}
.inner #content ul li{text-align: left;}
.inner #content h1{padding: 0;margin: 0 0 20px;line-height: 130%; color: #0455A6; text-align: center;}
.inner #content h2{padding: 0;margin: 0 0 20px;line-height: 120%; color: #0455A6; text-align: left; text-transform: initial;}
.inner #content h3{padding: 0;margin: 0 0 20px;line-height: 120%; color: #0455A6; text-align: left;}
.inner #content p{text-align: left; line-height: 180%; font-size: 19px;}
.inner .test .item{border-radius: 10px; background: #FFF; padding: 40px; box-shadow: 0 0 5px 5px rgba(0,0,0,0.1); text-align: left;}
.inner .test .item:not(:last-of-type){margin-bottom: 20px;}
.inner .test h2{margin-bottom: 40px; color: #0455A6;}
.inner .test span{display: flex; align-items: flex-start; column-gap: 5px; margin-bottom: 10px; font-weight: 600; font-size: 18px;}
.inner .test small{color: #FFDB58; font-weight: 700; font-size: 20px; line-height: 1;}
.inner .test p{font-style: italic; line-height: 32px; letter-spacing: 0.03em;}
.inner .test p:first-of-type{display: flex; align-items: center; gap: 10px; font-weight: 700;}
.inner .test p:last-of-type{margin: 0;}
.inner .test .item{display: flex; gap: 20px; justify-content: space-between; align-items: center;}
.inner .test .txt{width: 600px; max-width: 100%;}
.inner .test .item iframe{width: 400px;}
.inner #content .flex{display: flex; align-items: center; gap: 20px;}
.inner #content .flex:not(:last-of-type){margin-bottom: 20px;}
.inner #content .flex ul{margin-bottom: 20px;}
.inner #content .flex.flex-start{align-items: flex-start;}
.inner #content .flex .txt{width: 800px;}
.inner #content .flex .img{width: 100%;}
.inner #content .flex h6{margin: 0;}
.inner .imgs{display: flex;flex-wrap: wrap;gap: 20px;}
.inner .imgs img{height: 285px; width: 285px; object-fit: cover;}
.inner .imgs .after{position: relative;}
.inner .imgs .after:after{position: absolute; content: 'After'; bottom: 10px; left: 0; right: 0; font-size: 20px; color: #FFF; text-align: center; font-family: 'Poppins', sans-serif;  text-shadow: 0 0 5px rgba(0,0,0,0.5);}
.inner .imgs .before{position: relative;}
.inner .imgs .before:after{position: absolute; content: 'Before'; bottom: 10px; left: 0; right: 0; font-size: 20px; color: #FFF; text-align: center; font-family: 'Poppins', sans-serif; text-shadow: 0 0 5px rgba(0,0,0,0.5);}
.inner blockquote strong{display: block; text-align: right;}
.inner #footer .form{margin: 0 0 40px;}

/*privacy policy*/
.inPrivacyBox {max-width: 850px; margin: 0 auto 20px;}
.inPrivacyBox p {text-align: justify!important;}

.mobile-bn{display: none;}


/** Responsive
-------------------------------------------------------*/
@media screen and (max-width: 1199px){
  #reviews{background-color: #65c6f2; margin-top: 0;}
  #choose{background-size: 240% 170%;}
  #reviews .in, #welcome .txt{margin: 0 auto;}
  #services .item h5{font-size: 30px;}
  #header .top .social .in{gap: 5px;}
  #header nav{margin-left: 40px;}
  #choose{padding: 80px 0;}
  #services{min-height: 1px;}
  #header .top .social{font-size: 12px;}
}
/* @media screen and (max-width: 1199px){
 body {min-width: 320px;}
  h1,h2,h3,h4,h5,h6{text-align: center !important; letter-spacing: initial !important; margin-bottom: 20px !important;}
  h1,h2{font-size: 35px !important;}
  h1 span, h2 span{font-size: 40px !important;}
  h3{font-size: 30px !important;}
  h4{font-size: 25px !important;}
  h1 span,h2 span{letter-spacing: initial !important;}
  h1 small,h2 small{letter-spacing: initial !important;}
  p{letter-spacing: initial !important; margin-bottom: 20px !important;}
  li{font-size: 20px;}
  a{word-break: break-word;}
  .desktop{display: none;}
  .mobile{display: block; margin-left: auto; margin-right: auto;}
  .ctc-form .flex{flex-wrap: wrap;}
  .inner #content h1{font-size: 35px !important;}
  .inner #content h2{font-size: 30px !important;}
  .inner #content h3{font-size: 25px !important;}
  .inner #content h4{font-size: 20px !important;}
  .inner #content h5{font-size: 18px !important;}
  .inner #content h6{font-size: 16px !important;}
  .inner #content{padding: 20px 0;}
  .btns{justify-content: center !important;}
  .btn{max-width: 100%; margin: 0 auto;}
  #header {padding: 40px 0 0; position: relative; z-index: 9999;}
  #header nav {display: block;height: auto;position: fixed;width: 100%;top: 0;box-shadow: 0 0 5px rgb(0 0 0 / 70%); left: 0; z-index: 999;}
  #header nav ul {  display: none; height: auto;border-bottom:5px solid #0455A6; padding: 10px; margin: 0; width: 100%; border-radius: 0; background: #202020;}
  #header nav ul li { width: 100%;position: relative; }
  #header nav ul li a {float:none; padding: 10px 20px; border-radius: 0; width: 100%; display: block; color: #FFF; font-size: 18px; padding: 0; height: auto; line-height: 180%; text-align: left;}
  #header ul li:hover a, #header ul li.active-menu a{background: none; color: #0455A6;}
  #header nav a {text-align: left; width: 100%;}
  #header nav a strong {position: absolute; top: 50%; transform: translateY(-50%); left: 15px;}
  #header nav a#pull {display: block; color: #fff; background-color: #111; height: 40px;padding: 10px 15px; width: 100%; position: relative; font-size: 20px; line-height: 20px;}
  #header nav a#pull:after { content:""; background: url('../images/nav-icon.png') no-repeat; width: 20px; height: 20px; display: inline-block; position: absolute; right: 15px; top: 50%; transform: translateY(-50%);}
  .btns{flex-wrap: wrap; gap: 10px;}
  .cta{box-shadow: 0 0 5px #000; background: #0455A6  url("../images/common/phonecall.png") no-repeat center center;border-bottom-left-radius: 40px;border-top-left-radius: 40px;bottom: 1%;display: block;height: 80px;position: fixed;right: 0;text-decoration: none; text-indent: -9999em;width: 100px;z-index: 999;}
  #about .btns, #projects .in, #footer .left, .content{flex-direction: column; align-items: center !important; justify-content: center !important; width: 100%;}
  #footer .copy{text-align: center;}
  #footer .cards{order: -1;}
  .home #footer{margin: 0;}
  .home #footer .top{background-size: cover;}
  #footer .left{gap: 20px;}
  #footer .left .item a{flex-direction: column; text-align: center;}
  #footer .top{padding: 20px 0;}
  #projects{padding: 40px 0; margin: 0;}
  #projects .in{margin: 0;}
  #about .txt small, #projects small{display: block; text-align: center;}
  #projects .item:last-of-type{order: -1;}
  #projects .box{padding: 20px;}
  #header .bot, #about, #services, #choose, #reviews{padding: 40px 0; min-height: 1px;}
  #header .mid{padding: 0; min-height: 0;}
  #header .bot .txt{min-height: 1px;}
  #header .logo{order: -1;}
  #about .txt{margin: 0 auto; background: rgba(255,255,255,0.6); padding: 20px;}
  #services .item p{font-size: 30px;}
  #reviews .item, #services .item{min-height: 1px;}
  #reviews .item{padding: 20px;}
} */