@media (max-width: 1780px) {


  .about-home {
      background-position: 0px 0px;
  }
}

@media (max-width: 1367px) {

  .pillars a {
      height: 373px;
  }

  .pillars a span {
      font-size: 36px;
  }

  .pillars a span em {
      font-size: 21px;
  }

  .book-lead .btn {
      width: 100%;
      font-size: 18px;
  }

  .book-lead h2 {
      font-size: 38px;
      margin: 9px 0 0;
  }

  .about-home h2 {
      font-size: 26px;
      margin: 0 0 17px;
  }

  .about-home h2 em {
      font-size: 37px;
  }

  .about-home p {
      font-size: 20px;
      margin: 0 0 23px;
  }

  .about-home {
      height: 484px;
      -webkit-background-size: 130%;
      background-size: 130%;
      background-position: -105px 0px;
  }

  .banner h2 span {
      font-size: 87px;
      margin: -21px 0 0;
  }

  .banner h2 {
      font-size: 51px;
  }

  .brand a i.icon-logo {
      width: 203px;
      height: 134px;
  }

  .header .brand a em {
      top: 10px;
      font-size: 30px;
      left: 220px;
      right: auto;
  }

  .page-title h1 {
      font-size: 47px;
  }

  .page-title p {
      font-size: 22px;
  }

  .about-intro .about-intro-content p {
      font-size: 20px;
      margin: 0 0 26px;
      line-height: 1.5;
  }

  .about-intro {
      height: auto;
      padding: 80px 0;
  }

  .about-intro .about-intro-img {
      top: 35px;
      bottom: 35px;
  }

  .testimonials .testimonials-intro h2 {
      font-size: 38px;
  }

  .testimonials .testimonials-intro p {
      font-size: 19px;
  }

  .testimonials .testimonials-intro p:after {
      width: 70px;
      height: 3px;
      margin: 15px auto 50px;
  }

  .testimonials ul li {
      font-size: 22px;
  }

  .testimonials ul li strong {
      margin: 25px 0 0;
      font-size: 13px;
  }

  .testimonials ul {
      padding: 0 70px;
  }

  .slick-dots {
      padding: 0;
      margin: 30px 0 0;
  }

  .service-content p, .service-content li {
      font-size: 21px;
  }

  .service-content p, .service-content ul {
      margin: 0 0 35px;
  }

  .service .service-heading h2 {
      font-size: 38px;
  }

}

@media (max-width: 1199px) {

  .brand a i.icon-logo {
      width: 183px;
      height: 123px;
  }

  .header .brand a em {
      top: -3px;
      font-size: 27px;
      left: 198px;
      right: auto;
  }

  .header nav ul li a {
      padding: 24px 18px;
      font-size: 20px;
  }

  .header nav ul li a:after {
      left: 18px;
      right: 18px;
  }

  .header nav ul li a:hover:after, .header nav ul li a:focus:after, .header nav ul li a.nav-selected:after {
      height: 6px;
  }

  .banner h2 span {
      font-size: 67px;
      margin: -19px 0 0;
  }

  .banner h2 {
      font-size: 38px;
  }

  .preheader {
      padding: 5px 0;
  }

  .banner {
      height: 800px;
      height: 100vh;
      height: calc(100vh - 116px);
  }

  .about-home {
    background-position: -45px 0px;
    -webkit-background-size: cover;
    background-size: cover;
  }

  .book-lead .btn {
      padding: 22px 16px;
      font-size: 14px;
  }

  .book-lead h2 {
      font-size: 30px;
      margin: 11px 0 0;
  }

  .book-lead {
      padding: 25px 0;
  }

  i.icon-pillar-1, i.icon-pillar-2, i.icon-pillar-3, i.icon-pillar-4 {
      width: 115px;
      height: 115px;
      -webkit-background-size: 60px;
      background-size: 60px;
  }

  .why-choose ul li h3 {
      font-size: 29px;
  }

  .why-choose ul li p {
      font-size: 24px;
  }

  .why-choose ul li {
      padding: 0 60px;
  }
  .preheader a {
      font-size: 15px;
  }

  .footer .brand {margin: 0 0 20px;}

  .footer .brand a i.icon-logo {
      width: 151px;
      height: 93px;
  }

  .footer .brand a em {
      top: 0;
  }

  .footer .brand a {
      height: 94px;
      width: 350px;
      margin: 0 auto;
  }

  .footer .text-right {
      text-align: center !important;
  }

  .footer ul {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      -ms-justify-content: center;
      -o-justify-content: center;
      justify-content: center;
  }

  .footer {
      padding: 40px 0;
  }

  .copy {
      font-size: 16px;
      padding: 23px 0;
  }

  .service-content p, .service-content li {
      font-size: 19px;
  }

  .service-content p, .service-content ul {
      margin: 0 0 25px;
  }

  .service .service-heading h2 {
      font-size: 31px;
  }

  .faq-entry-content h3 {
    font-size: 26px;
    margin: 0 0 5px;
}

.faq-entry-content p {
    font-size: 19px;
}

.faq-entry-content {
    margin: 0 0 45px;
}
.contact-content .contact-right h3 {
    font-size: 19px;
    padding: 20px;
}
}

@media (max-width: 991px) {

  .contact-content .contact-right ul {
      text-align: center;
  }

  .contact-content .contact-right h3 {
      text-align: center;
      margin: 0 0 50px;
  }

  .contact-content {
      padding: 60px 0;
  }
  .page-title {
      padding: 50px 0 35px;
  }
  .page-title h1 {
      font-size: 37px;
  }
  .page-title p {
      font-size: 19px;
  }
  .ccm-faq-block-links {
      padding: 20px;
  }

  div.ccm-faq-block-links a {
      font-size: 16px;
      line-height: 1;
  }
  .footer .brand {margin: 0 0 20px;}

  .footer .brand a i.icon-logo {
      width: 151px;
      height: 93px;
  }

  .footer .brand a em {
      top: 0;
  }

  .footer .brand a {
      height: 94px;
      width: 350px;
      margin: 0 auto;
  }

  .footer .text-right {
      text-align: center !important;
  }

  .footer ul {
      -webkit-justify-content: center;
      -moz-justify-content: center;
      -ms-justify-content: center;
      -o-justify-content: center;
      justify-content: center;
  }

  .footer {
      padding: 40px 0;
  }

  .copy {
      font-size: 16px;
      padding: 23px 0;
  }

  .brand a i.icon-logo {
      width: 123px;
      height: 95px;
  }

  .header .brand a em {
      top: 2px;
      font-size: 20px;
      left: 146px;
  }

  .header nav ul li a {
      padding: 13px 15px;
      font-size: 17px;
  }

  .header nav ul li a:after {
      left: 15px;
      right: 15px;
  }

  .header .brand {
      margin: -19px 0 -45px;
  }

  .preheader a {
      font-size: 14px;
      padding-left: 27px;
  }

  .preheader .icon-phone {
      width: 15px;
      height: 15px;
  }

  .preheader .icon-email {
      width: 18px;
      height: 12px;
  }

  .preheader a:first-child {
      margin-right: 20px;
  }

  .preheader {
      padding: 3px 0;
  }

  .banner {
      height: 600px;
      height: calc(100vh - 83px);
  }

  .banner h2 {
      font-size: 33px;
      bottom: 30px;
      right: 30px;
  }

  .banner h2 span {
      font-size: 52px;
      margin: -11px 0 0;
  }

  .pillars a {
      height: 265px;
  }

  .pillars a span {
      font-size: 27px;
  }

  .pillars a span em {
      font-size: 17px;
  }

  .about-home h2 em {
      font-size: 29px;
  }

  .about-home h2 {
      font-size: 21px;
      margin: 0 0 13px;
  }

  .about-home p {
      font-size: 18px;
      margin: 0 0 17px;
  }

  .btn {
      padding: 17px 16px;
      font-size: 12px;
  }

  .about-home p .btn-secondary {
      margin-right: 0px;
  }

  .about-home {
      height: 414px;
  }

  .book-lead .btn {
      width: auto;
  }

  .book-lead, .book-lead .text-right {
      text-align: center !important;
  }

  .book-lead h2 {
      margin: 0 0 10px;
  }

  i.icon-pillar-1, i.icon-pillar-2, i.icon-pillar-3, i.icon-pillar-4 {
      width: 90px;
      height: 90px;
      -webkit-background-size: 50%;
      background-size: 50%;
  }

  .why-choose ul li h3 {
      font-size: 22px;
  }

  .why-choose ul li {
      padding: 0 50px;
  }

  .why-choose ul li p {
      font-size: 20px;
  }

  .why-choose ul li.last {
      margin: 45px 0 0;
  }

  .why-choose {
      padding: 65px 0;
  }

  .footer ul li:nth-child(1), .footer ul li:nth-child(2) {
      display: block;
      margin: 0;
  }

  .footer ul {
      display: block;
  }

  .footer ul li {
      display: inline-block;
      margin: 0 5px;
  }

  .footer ul li:nth-child(2) {
      margin: 0 0 30px;
  }

  .service .service-heading h2 {
      font-size: 31px;
  }

  .service {
      -webkit-flex-direction: column;
      flex-direction: column;
      height: auto;
  }

  .service .service-heading, .service .service-content {
      -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
      display: block;
      width: 100%;
  }

  .service.service-2 .service-heading {
      -webkit-order: 0;
      -ms-order: 0;
      order: 0;
  }

  .service .service-heading i {
      display: none;
  }

  .service .service-heading {
      text-align: center;
      padding: 100px 0;
  }

  .service-content p:last-child {
      margin: 0;
  }

  .service-content {
      padding: 80px 30px;
  }

}

@media (max-width: 767px) {

  .banner {
      height: auto;
      position: relative;
      padding: 100px 0;
  }

  .banner h2 {
      position: relative;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 9;
  }

  .about-home:before,
  .banner:before {content: "";display: block;position: absolute;top: 0;left: 0;right: 0;bottom: 0;margin: auto;background: #FFF;opacity: 0.6;}

  .pillars a {
      -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
      width: 100%;
      height: 140px;
  }

  .pillars {
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
  }

  .pillars a:nth-child(2) {
      border-left: 0;
      border-right: 0;
      border-top: 3px solid #fff;
      border-bottom: 3px solid #fff;
  }

  .about-home {-webkit-background-size: cover;background-size: cover;background-position: center;text-align: center;overflow: hidden;position: relative;
      height: auto;
      padding: 60px 0;
  }
  .about-home .container {
      z-index: 3;
      position: relative;
  }

  .about-home section {
      -ms-align-items: center;
      align-items: center;
  }

  .why-choose ul li p {
      font-size: 17px;
  }

  .why-choose ul li h3 {
      font-size: 19px;
  }

  i.icon-pillar-1, i.icon-pillar-2, i.icon-pillar-3, i.icon-pillar-4 {
      width: 70px;
      height: 70px;
  }

  .footer ul li:nth-child(1) a, .footer ul li:nth-child(2) a {
      font-size: 20px;
  }

  .footer .icon-phone {
      width: 16px;
      height: 16px;
  }

  .footer .icon-email {
      width: 17px;
      height: 13px;
  }

  .footer .brand a em {
      position: relative;
      display: block;
  }

  .footer .brand a {
      height: auto;
      text-align: center;
      margin: 0 auto 30px;
  }

  .copy a {
      display: block;
  }

  .book-lead h2 {
      margin: 0 0 6px;
      font-size: 22px;
  }

  .why-choose ul li {
    padding: 0 15px;
}

.about-intro .about-intro-img {
    position: relative;
    top: 0;
    left: 0;
    bottom: 0;
    width: 320px;
    height: 240px;
    margin: 0 auto 30px;
}

.about-intro {
    padding: 60px 0;
    text-align: center;
}

.about-intro .about-intro-content p {
    width: 100%;
}

.testimonials .testimonials-intro h2 {
    font-size: 28px;
}

.testimonials .testimonials-intro p {
    font-size: 16px;
}

.testimonials ul li {
    font-size: 18px;
}

.testimonials ul li strong {
    margin: 20px 0 0;
    font-size: 11px;
}

.testimonials {
    padding: 60px 0;
}

.page-title h1 {
    font-size: 27px;
}

.page-title p {
    font-size: 16px;
}

.page-title {
    padding: 30px 0 22px;
}

.service .service-heading h2 {
    font-size: 24px;
}

.service .service-heading {
    padding: 50px 0;
}

.service .service-heading, .service .service-content {}

.service-content li {
    float: none;
    width: 100%;
    margin: 0 0 25px !important;
    padding: 0 0 0 25px;
}

.service-content li:before {
    font-size: 20px;
}

.service .service-content {
    padding: 40px 15px;
}

.ccm-faq-container {
    display: block;
    margin: 0 0 30px;
}

.ccm-faq-block-links {
    text-align: center;
    position: relative;
}

.ccm-faq-block-entries {
    max-width: 100%;
    padding: 0;
    margin: 40px 0 0;
}

.pg-content {
    padding: 60px 0;
}

.faq-entry-content h3 {
    font-size: 21px;
    margin: 0 0 3px;
}

.faq-entry-content p {
    font-size: 18px;
}

.faq-entry-content {
    margin: 0 0 35px;
}

.contact-content .contact-right h3 {
    margin: 0 0 30px;
    font-size: 16px;
    padding: 15px;
}

.contact-content .contact-right ul:nth-of-type(1) li a {
    font-size: 20px;
}

.icon-footer-1, .icon-footer-4, .icon-footer-5 {
    width: 20px;
    height: 20px;
}

.icon-footer-2 {
    width: 22px;
    height: 21px;
}

.icon-footer-3 {
    width: 17px;
    height: 22px;
}


.preheader {
    display: none;
}

.header .brand {
    margin: 0;
}

.header .brand a em {
    display: none;
}

.header .brand a i.icon-logo {
    width: 93px;
    height: 58px;
}

.header .text-right {
    text-align: center !important;
}

.header nav ul li {
    display: block;
}

.header nav ul li a {
    padding: 6px !important;
    font-size: 19px;
    border-top: 1px solid #eee;
}

.header nav ul li a:after {
    display: none;
}

.header .nav li a.nav-selected, .header .nav li a:hover, .header .nav li a:focus {background: #ed1c24;color: #fff;}

.header .nav {
    margin: 0 -15px;
    background: #fafafa;
    display: none;
}

.mopt a {
    display: inline-block;
    text-align: center;
    margin: 9px 0 0 6px;
}

.mopt a i, .mopt a span {
    display: block;
}

.header .text-right.mopt {
    text-align: right !important;
}

.mopt a i {
    background-color: #1f3a8e;
    width: 40px;
    height: 40px;
    color: #fff;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    font-size: 23px;
    line-height: 40px;
}

.mopt a span {font-size: 12px;text-transform: uppercase;color: #555;letter-spacing: 1px;}

.brand a {
    height: 60px;
    display: inline-block;
    margin: 5px 0 0;
}

.header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    z-index: 998;
}

.consult {
    width: 270px;
}

.consult h2 {
    font-size: 21px;
    margin: 0 0 10px;
}

.consult p {
    display: none;
}

.consult .form-control {
    font-size: 18px;
    padding: 6px;
}

.consult .form-group {
    margin: 0 0 7px;
}

.consult .form-group.captcha {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
}

.banner, .page-title {
    margin: 78px 0 0;
}

}

@media (max-width: 767px) and (max-height: 700px) {

.consult {
      padding: 20px;
}
.consult textarea.form-control {
    height: 62px;
}

.consult input[type="file"] {
    padding: 5px;
    font-size: 14px;
}

.consult .form-actions .btn {
    font-size: 15px;
    margin-top: -20px;
}

}

@media (max-width: 1199px) {
  .gallery a {
      max-width: 23%;
      flex: 0 0 23%;
      height: 150px;
  }

  .gallery a img {
      max-width: 100%;
  }


}


@media (max-width: 991px) {

  .gallery a {
      max-width: 23%;
      flex: 0 0 23%;
      height: 110px;
  }
  .section-title h2 {
      font-size: 28px;
  }

  .section-title p {
      font-size: 21px;
      margin: 1px 0 0;
  }
}

@media (max-width: 680px) {

  .gallery a {
      max-width: 21%;
      flex: 0 0 21%;
      margin: 3px;
      height: 50px;
  }

}


@media (min-width: 1200px) and (max-height: 700px) {

  .service {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      height: auto;
  }


  .service .service-heading, .service .service-content {
      height: auto;
      display: block;
      max-width: unset;
      width: 100%;
  }

  .service .service-heading {
      text-align: center;
      padding: 40px 0;
      height: auto;
  }

  .service .service-heading i {
      display: none;
  }

  .service .service-content {
      padding: 50px;
  }

  .service.service-2 .service-heading {
      -webkit-order: 0;
      -ms-order: 0;
      order: 0;
  }


}



@media (max-width: 991px) {

    .footer ul li {
        display: block;
        margin: 0 !important;
    }
  
    .footer ul li:last-child {
        margin-top: 10px !important;
    }
  
  }

  @media (max-width: 767px) {

    .footer ul li a {
        font-size: 19px !important;

    }
    
    .icon-map {width: 14px;position: relative;height: 18px;top: -2px;}
    
    .icon-footer-6 {
        width: 20px;
        height: 20px;
        margin-left: 10px;
    }

    .footer .brand a {
        width: 182px;
        margin: 0 auto !important;
        display: block;
    }

  }