/*
Theme Name: Clef Aix
Author: ArmWebs.fr
Author URI: http://armwebs.fr/
*/
@import url(css/grid-gallery.min.css);
@import url(js/fancybox-master/dist/jquery.fancybox.min.css);
@import url(css/slick.css);
@font-face {
  font-family: "ArmWebs-Regular, Arial, Sans-Serif";
  src: url("fonts/Kanit-Regular.ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "ArmWebs-Bold, Arial, Sans-Serif";
  src: url("fonts/Kanit-Bold.ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "ArmWebs-Light, Arial, Sans-Serif";
  src: url("fonts/Kanit-Light.ttf");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "ArmWebs-Medium, Arial, Sans-Serif";
  src: url("fonts/Kanit-Medium.ttf");
  font-weight: normal;
  font-style: normal; }

* {
  box-sizing: border-box;
  user-select: none; }

html, body {
  width: 100%;
  height: 100%; }

body {
  padding: 0;
  margin: 0;
  font-family: "ArmWebs-Light, Arial, Sans-Serif";
  font-size: 16px;
  color: #333;
  background: #f4f4f4; }
  @media only screen and (max-width: 480px) {
    body {
      font-size: 16px; } }

.full-height {
  height: 100%;
  max-height: 750px;
  position: relative; }
  @media only screen and (min-width: 768px) {
    .full-height {
      min-height: 700px; } }
  @media only screen and (min-width: 1900px) {
    .full-height {
      min-height: 850px; } }
  .full-height.real-height {
    max-height: none; }

.full-height-slide .slick-list, .full-height-slide .slick-track, .full-height-slide .slick-slide {
  height: 100%; }

.container-main, .container {
  padding-left: 15px;
  padding-right: 15px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px; }

.with-flex, .withFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .with-flex .half-col, .with-flex .leftSection, .with-flex .rightSection, .withFlex .half-col, .withFlex .leftSection, .withFlex .rightSection {
    width: 50%; }
    @media only screen and (max-width: 480px) {
      .with-flex .half-col, .with-flex .leftSection, .with-flex .rightSection, .withFlex .half-col, .withFlex .leftSection, .withFlex .rightSection {
        width: 100%;
        padding-left: 0;
        padding-right: 0; } }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.section-padding {
  padding-top: 50px;
  padding-bottom: 50px; }
  @media only screen and (max-width: 992px) {
    .section-padding {
      padding-top: 30px;
      padding-bottom: 30px; } }

.description p {
  margin-top: 0;
  margin-bottom: 10px; }
  .description p:last-child {
    margin-bottom: 0; }

.section-padding-top {
  padding-top: 50px; }
  @media only screen and (max-width: 992px) {
    .section-padding-top {
      padding-top: 30px; } }

.under-header {
  height: 75px;
  width: 100%; }
  @media only screen and (max-width: 992px) {
    .under-header {
      height: 70px; } }

.background-cover {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
  .background-cover.position-top {
    background-position: top center; }

.bg-white {
  background-color: #fff; }

.seo-hidden {
  width: 0 !important;
  height: 0 !important;
  display: block;
  overflow: hidden !important;
  color: transparent !important;
  margin: 0 !important;
  padding: 0 !important; }

ul {
  padding: 0;
  margin: 0; }

.parallax {
  position: relative;
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media only screen and (max-width: 992px) {
    .parallax {
      background-attachment: unset; } }

.main-btn {
  width: 200px;
  padding: 10px;
  display: block;
  text-align: center;
  text-decoration: none;
  margin: 50px auto 0px;
  background-color: #f01f21;
  color: #fff;
  border: 2px solid #f01f21;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s; }
  .main-btn:hover {
    background-color: transparent;
    color: #f01f21;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
  .main-btn.align-left {
    margin-left: 0; }
  @media only screen and (max-width: 992px) {
    .main-btn {
      margin: 30px auto 0px !important; } }

.slick-dots {
  text-align: center;
  margin: 0;
  padding: 0;
  margin-top: 50px;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .slick-dots {
      margin-top: 30px; } }
  .slick-dots li {
    display: inline-block;
    margin: 0px 10px;
    width: 13px;
    height: 13px;
    border-radius: 15px;
    background-color: #f01f21;
    opacity: 0.6;
    cursor: pointer;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
    .slick-dots li.slick-active, .slick-dots li:hover {
      opacity: 1;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
    @media only screen and (max-width: 480px) {
      .slick-dots li {
        margin: 0px 5px; } }
    .slick-dots li button {
      display: none; }

.central {
  margin: 0;
  padding: 0;
  text-align: center; }
  .central li {
    list-style: none;
    float: none;
    display: inline-block; }

.centered {
  text-align: center; }

.clearfix:before,
.clearfix:after {
  content: "";
  display: table; }

.clearfix:after {
  clear: both; }

.in-mobile {
  display: none; }
  @media only screen and (max-width: 767px) {
    .in-mobile {
      display: block; } }

.aligned:before, .aligned:after {
  content: "";
  display: table; }

.aligned:after {
  clear: both; }

.aligned .left {
  float: left; }

.aligned .right {
  float: right; }

.page404 {
  margin: 100px auto 200px auto; }
  .page404 h1 {
    font-size: 50px; }
  .page404 a {
    text-decoration: none; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: inherit; }

.button {
  border: 1px solid #333;
  -webkit-border-radius: 33px;
  -moz-border-radius: 33px;
  -ms-border-radius: 33px;
  border-radius: 33px;
  outline: none;
  padding: 0 30px;
  text-decoration: none;
  display: inline-block;
  line-height: 40px;
  text-align: center;
  font-family: "ArmWebs-Light, Arial, Sans-Serif";
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer; }
  .button.plain {
    color: #333; }
    .button.plain:hover {
      background: #333;
      color: #ffffff; }
    .button.plain.white {
      background: #ffffff;
      color: #333; }
      .button.plain.white:hover {
        background: #333;
        color: #ffffff;
        border: 1px solid #ffffff; }
  .button:not(.plain) {
    background-color: #333;
    color: #ffffff; }
    .button:not(.plain):hover {
      background: #ffffff;
      color: #333; }

a:focus, a:hover {
  color: #333; }

img {
  max-width: 100%;
  max-height: 100%; }

.section-title {
  font-size: 32px;
  color: #f01f21;
  margin: 0;
  margin-bottom: 50px;
  font-family: "ArmWebs-Regular, Arial, Sans-Serif";
  text-align: center; }
  .section-title.align-left {
    text-align: left; }
  @media only screen and (max-width: 992px) {
    .section-title {
      margin-bottom: 30px;
      text-align: center !important; } }

.row.no-space {
  margin: 0;
  padding: 0; }
  .row.no-space > div {
    padding: 0; }

#header {
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  padding-top: 40px;
  z-index: 9999;
  background-color: rgba(51, 51, 51, 0.5);
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s; }
  @media only screen and (max-width: 992px) {
    #header {
      background-color: #333333; } }
  #header .container {
    position: relative; }
    #header .container .logo {
      position: absolute;
      left: 15px;
      height: 50px;
      user-select: none;
      top: 13px;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
      @media only screen and (max-width: 1020px) {
        #header .container .logo {
          top: 18px;
          height: 50px; } }
      #header .container .logo img {
        width: 90px;
        height: 50px;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
        @media only screen and (max-width: 1020px) {
          #header .container .logo img {
            width: 70px;
            height: 40px; } }
      #header .container .logo .logo-white {
        position: absolute;
        left: 0;
        opacity: 0;
        visibility: hidden;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
    #header .container .header-menu {
      text-align: right;
      padding: 5px 0; }
      @media only screen and (max-width: 1020px) {
        #header .container .header-menu {
          padding: 15px;
          padding-top: 45px; } }
      #header .container .header-menu ul {
        text-align: right;
        display: inline-block;
        margin: 0;
        user-select: none;
        padding: 20px 0px 0px; }
        @media only screen and (max-width: 1020px) {
          #header .container .header-menu ul {
            padding: 0;
            text-align: left; } }
        #header .container .header-menu ul li {
          display: inline-block;
          margin-left: 20px;
          padding-bottom: 20px;
          position: relative;
          user-select: none;
          /*&.current-menu-item,*/ }
          @media only screen and (max-width: 1020px) {
            #header .container .header-menu ul li {
              width: 100%;
              padding: 10px;
              border-bottom: 1px solid #fff;
              margin: 0; } }
          #header .container .header-menu ul li a {
            font-size: 16px;
            text-decoration: none;
            color: #fff;
            user-select: none;
            -moz-transition: all 0.3s;
            -o-transition: all 0.3s;
            -webkit-transition: all 0.3s;
            -ms-transition: all 0.3s;
            transition: all 0.3s; }
            @media only screen and (max-width: 1020px) {
              #header .container .header-menu ul li a {
                color: #fff !important; } }
          #header .container .header-menu ul li:before {
            content: '';
            display: block;
            position: absolute;
            width: 0px;
            height: 2px;
            border-radius: 5px;
            background-color: #fff;
            bottom: 13px;
            left: 0;
            right: 0;
            margin: auto;
            -moz-transition: all 0.3s;
            -o-transition: all 0.3s;
            -webkit-transition: all 0.3s;
            -ms-transition: all 0.3s;
            transition: all 0.3s; }
            @media only screen and (max-width: 1020px) {
              #header .container .header-menu ul li:before {
                display: none; } }
          #header .container .header-menu ul li:hover:before, #header .container .header-menu ul li.active:before {
            width: 100%;
            -moz-transition: all 0.3s;
            -o-transition: all 0.3s;
            -webkit-transition: all 0.3s;
            -ms-transition: all 0.3s;
            transition: all 0.3s; }
          #header .container .header-menu ul li:hover a, #header .container .header-menu ul li.active a {
            -moz-transition: all 0.3s;
            -o-transition: all 0.3s;
            -webkit-transition: all 0.3s;
            -ms-transition: all 0.3s;
            transition: all 0.3s; }
        #header .container .header-menu ul.number-menu li a {
          color: #f01f21; }
    #header .container #top_language_list {
      display: inline-block;
      color: #fff;
      position: relative;
      margin-left: 20px; }
      @media only screen and (max-width: 1020px) {
        #header .container #top_language_list {
          margin: 0;
          display: block;
          width: 100%; } }
      @media only screen and (max-width: 1020px) {
        #header .container #top_language_list ul {
          display: block;
          width: 100%; } }
      #header .container #top_language_list ul li {
        text-transform: capitalize; }
        @media only screen and (max-width: 1020px) {
          #header .container #top_language_list ul li {
            display: inline-block;
            width: auto;
            color: #333; }
            #header .container #top_language_list ul li.active:before {
              display: block !important;
              width: 30px;
              bottom: 5px;
              background-color: #333; } }
        #header .container #top_language_list ul li img {
          margin-right: 7px; }
      #header .container #top_language_list:before {
        content: '';
        display: block;
        width: 2px;
        height: 15px;
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        margin: auto;
        background-color: #fff;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
        @media only screen and (max-width: 1020px) {
          #header .container #top_language_list:before {
            display: none; } }
  #header.sticky, #header.header-fixed {
    background-color: #333333;
    padding-top: 0;
    -webkit-box-shadow: 0px -10px 22px 0px rgba(51, 51, 51, 0.5);
    -moz-box-shadow: 0px -10px 22px 0px rgba(51, 51, 51, 0.5);
    box-shadow: 0px -10px 22px 0px rgba(51, 51, 51, 0.5);
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
    #header.sticky .container .logo, #header.header-fixed .container .logo {
      height: 40px;
      top: 18px;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
      #header.sticky .container .logo img, #header.header-fixed .container .logo img {
        width: 70px;
        height: 40px;
        opacity: 0;
        visibility: hidden;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
      #header.sticky .container .logo .logo-white, #header.header-fixed .container .logo .logo-white {
        opacity: 1;
        visibility: visible;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
    #header.sticky .header-menu ul li:before, #header.header-fixed .header-menu ul li:before {
      background-color: #fff; }
    #header.sticky .header-menu ul li a, #header.header-fixed .header-menu ul li a {
      color: #fff; }
    #header.sticky #top_language_list, #header.header-fixed #top_language_list {
      color: #333; }
      #header.sticky #top_language_list:before, #header.header-fixed #top_language_list:before {
        background-color: #333;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
    #header.sticky #mobileMenu span, #header.header-fixed #mobileMenu span {
      background-color: #fff; }
    @media only screen and (max-width: 1020px) {
      #header.sticky .for-mobile, #header.header-fixed .for-mobile {
        background-color: #333; } }
  @media only screen and (max-width: 1020px) {
    #header {
      height: 70px;
      top: 0;
      padding-top: 0; } }

#mobileMenu {
  display: none; }
  @media only screen and (max-width: 1020px) {
    #mobileMenu {
      display: block;
      z-index: 99999; } }

#mobileMenu {
  margin: 0;
  position: absolute;
  right: 15px;
  top: 22px;
  bottom: 0;
  width: 35px;
  height: 30px;
  cursor: pointer; }

#mobileMenu span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: #fff;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out; }

/* Icon 3 */
#mobileMenu span:nth-child(1) {
  top: 0px; }

#mobileMenu span:nth-child(2), #mobileMenu span:nth-child(3) {
  top: 10px; }

#mobileMenu span:nth-child(4) {
  top: 20px; }

#mobileMenu.open span {
  background-color: #fff; }

#mobileMenu.open span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%; }

#mobileMenu.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

#mobileMenu.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

#mobileMenu.open span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%; }

@media only screen and (max-width: 1020px) {
  .for-mobile {
    position: fixed;
    width: 300px;
    height: 100%;
    background: #333;
    right: -310px;
    padding-top: 15px;
    -webkit-box-shadow: 0px 0px 13px -6px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: 0px 0px 13px -6px rgba(0, 0, 0, 0.75);
    box-shadow: 0px 0px 13px -6px rgba(0, 0, 0, 0.75);
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
    .for-mobile.openMenu {
      right: 0px;
      overflow: auto;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; } }

.footer {
  padding: 15px;
  color: #fff;
  background-color: #333; }
  .footer p {
    margin: 0; }
  @media only screen and (min-width: 480px) {
    .footer .with-flex .half-col:first-child {
      order: 2; } }
  @media only screen and (max-width: 992px) {
    .footer .with-flex .half-col:first-child {
      width: 30%; } }
  @media only screen and (max-width: 480px) {
    .footer .with-flex .half-col:first-child {
      width: 100%; } }
  .footer .with-flex .half-col:first-child ul {
    margin: 0;
    padding: 0;
    text-align: right; }
    @media only screen and (max-width: 480px) {
      .footer .with-flex .half-col:first-child ul {
        text-align: center; } }
    .footer .with-flex .half-col:first-child ul li {
      margin-left: 10px;
      list-style-type: none;
      display: inline-block; }
      .footer .with-flex .half-col:first-child ul li a {
        text-decoration: none; }
        .footer .with-flex .half-col:first-child ul li a img {
          height: 30px; }
  @media only screen and (min-width: 480px) {
    .footer .with-flex .half-col:last-child {
      order: 1; } }
  @media only screen and (max-width: 992px) {
    .footer .with-flex .half-col:last-child {
      width: 70%; } }
  @media only screen and (max-width: 480px) {
    .footer .with-flex .half-col:last-child {
      width: 100%; } }
  .footer .with-flex .half-col:last-child p {
    text-align: left;
    margin-top: 6px; }
    @media only screen and (max-width: 480px) {
      .footer .with-flex .half-col:last-child p {
        text-align: center;
        padding: 0px 45px; } }
    .footer .with-flex .half-col:last-child p a {
      color: #f01f21; }

.fixed-phone {
  position: fixed;
  bottom: 50px;
  right: 50px;
  width: 50px;
  height: 50px;
  background-image: url("img/phone.svg");
  background-size: 25px;
  cursor: pointer;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 100px;
  background-color: #f01f21;
  z-index: 99;
  color: #fff !important;
  text-decoration: none;
  overflow: hidden;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -ms-transition: all 0.3s;
  transition: all 0.3s; }
  @media only screen and (min-width: 767px) {
    .fixed-phone:hover {
      background-image: none;
      width: 250px;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
      .fixed-phone:hover div {
        opacity: 1;
        visibility: visible;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; } }
  @media only screen and (max-width: 767px) {
    .fixed-phone {
      width: 100%;
      left: 0;
      right: 0;
      border-radius: 0;
      bottom: 0; } }
  .fixed-phone div {
    position: relative;
    padding-left: 40px; }
    @media only screen and (min-width: 767px) {
      .fixed-phone div {
        opacity: 0;
        visibility: hidden;
        font-size: 18px;
        width: 180px;
        margin: auto;
        position: relative;
        margin-top: 11px;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; } }
    .fixed-phone div img {
      position: absolute;
      left: 0;
      top: 2px;
      height: 20px; }
      @media only screen and (min-width: 767px) {
        .fixed-phone div img {
          top: 4px; } }
  .fixed-phone.is-bottom {
    opacity: 0;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
  @media only screen and (max-width: 767px) {
    .fixed-phone {
      width: 100%;
      border-radius: 0;
      left: 0;
      bottom: 0;
      height: auto;
      text-align: center;
      color: #fff;
      padding: 10px;
      background-image: none;
      font-weight: bold;
      font-style: italic;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
      .fixed-phone div {
        display: inline-block; } }

.banner {
  position: relative; }
  .banner .main-banner {
    position: relative;
    z-index: 1; }
    @media only screen and (max-width: 1020px) {
      .banner .main-banner {
        margin-top: 65px; } }
    .banner .main-banner .info {
      max-width: 700px;
      position: absolute;
      margin: auto;
      left: 0;
      right: 0;
      top: 50%;
      color: #fff;
      text-align: center;
      z-index: 3;
      -ms-transform: translateY(-50%);
      -webkit-transform: translatYe(-50%);
      transform: translateY(-50%); }
      @media only screen and (max-width: 767px) {
        .banner .main-banner .info {
          padding: 0px 40px;
          margin-top: 20px; } }
      @media only screen and (min-width: 992px) {
        .banner .main-banner .info {
          top: 60%; } }
      .banner .main-banner .info h4, .banner .main-banner .info h1, .banner .main-banner .info h2 {
        font-size: 50px;
        margin: 15px 0px;
        line-height: 55px;
        letter-spacing: 1px;
        color: #fff;
        font-family: "ArmWebs-Medium, Arial, Sans-Serif";
        position: relative;
        top: -40px; }
        @media only screen and (max-width: 767px) {
          .banner .main-banner .info h4, .banner .main-banner .info h1, .banner .main-banner .info h2 {
            font-size: 35px;
            line-height: 40px; } }
      .banner .main-banner .info p {
        margin: 0;
        line-height: 40px;
        font-size: 30px;
        opacity: 0;
        position: relative;
        top: 40px;
        -moz-transition: all 1.5s;
        -o-transition: all 1.5s;
        -webkit-transition: all 1.5s;
        -ms-transition: all 1.5s;
        transition: all 1.5s; }
        @media only screen and (max-width: 767px) {
          .banner .main-banner .info p {
            font-size: 18px;
            line-height: 26px; } }
    .banner .main-banner .banner-slider .items .item {
      position: relative;
      width: 100%;
      height: 100%; }
    .banner .main-banner .banner-slider .items .background-cover {
      height: 600px;
      position: relative;
      z-index: 1;
      width: 100%;
      background-position: center; }
      @media only screen and (max-width: 480px) {
        .banner .main-banner .banner-slider .items .background-cover {
          height: 500px; } }
    .banner .main-banner .banner-slider .items:before {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.6);
      position: absolute;
      left: 0;
      top: 0;
      z-index: 2; }
    @media only screen and (max-width: 767px) {
      .banner .main-banner .banner-slider .slick-arrow {
        margin-top: 0; } }
    .banner .main-banner.mini-banner .info {
      margin-top: 50px; }
      @media only screen and (max-width: 767px) {
        .banner .main-banner.mini-banner .info {
          margin-top: 20px; } }
    .banner .main-banner.mini-banner .items .background-cover {
      height: 500px; }
      @media only screen and (max-width: 1020px) {
        .banner .main-banner.mini-banner .items .background-cover {
          height: 450px; } }
      @media only screen and (max-width: 480px) {
        .banner .main-banner.mini-banner .items .background-cover {
          height: 400px; } }
  .banner .canvas {
    padding-top: 40px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 2; }
    @media only screen and (max-width: 480px) {
      .banner .canvas {
        text-align: center;
        height: 210px;
        bottom: 0;
        padding: 0; } }
    .banner .canvas #particle-slider {
      height: 600px !important; }
      @media only screen and (max-width: 480px) {
        .banner .canvas #particle-slider {
          display: none; } }
    .banner .canvas .mobile-banner-img {
      display: none; }
      @media only screen and (max-width: 480px) {
        .banner .canvas .mobile-banner-img {
          display: block; } }
      .banner .canvas .mobile-banner-img img {
        width: 80%; }

@media only screen and (max-width: 992px) {
  .about-section .container .with-flex .half-col {
    width: 100%; } }

.about-section .container .with-flex .half-col:first-child {
  padding-right: 100px; }
  @media only screen and (max-width: 992px) {
    .about-section .container .with-flex .half-col:first-child {
      padding-right: 0;
      margin-bottom: 30px; } }

@media only screen and (max-width: 992px) {
  .about-section .container .with-flex .half-col:last-child {
    height: 350px; } }

.choose-us-section .container .with-flex .items {
  padding: 20px;
  width: 25%;
  text-align: center; }
  @media only screen and (max-width: 992px) {
    .choose-us-section .container .with-flex .items {
      width: 33.333333%; } }
  @media only screen and (max-width: 767px) {
    .choose-us-section .container .with-flex .items {
      width: 50%; } }
  @media only screen and (max-width: 480px) {
    .choose-us-section .container .with-flex .items {
      width: 100%; } }
  .choose-us-section .container .with-flex .items img {
    height: 40px;
    margin: auto;
    margin-bottom: 20px; }
  .choose-us-section .container .with-flex .items h3 {
    font-size: 18px;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 20px;
    position: relative; }
    .choose-us-section .container .with-flex .items h3:before {
      content: '';
      width: 150px;
      height: 1px;
      display: block;
      position: absolute;
      bottom: -10px;
      left: 0;
      right: 0;
      margin: auto;
      background-color: #f01f21; }
  .choose-us-section .container .with-flex .items h4 {
    text-align: center;
    margin: 0;
    font-size: 16px;
    font-weight: normal; }

.services-section .container {
  text-align: center; }
  .services-section .container .section-title {
    margin-bottom: 30px; }
  .services-section .container .with-flex .items {
    width: 33.33333%;
    padding: 30px; }
    @media only screen and (max-width: 992px) {
      .services-section .container .with-flex .items {
        width: 50%; } }
    @media only screen and (max-width: 480px) {
      .services-section .container .with-flex .items {
        width: 100%;
        padding: 0px;
        margin-bottom: 30px; } }
    .services-section .container .with-flex .items a {
      color: #333;
      text-decoration: none; }
      .services-section .container .with-flex .items a:hover h3 {
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s;
        -ms-transform: scale(1.1);
        -webkit-transform: scale(1.1);
        transform: scale(1.1); }
    .services-section .container .with-flex .items .background-cover {
      width: 100%;
      height: 250px;
      border: 2px solid #f01f21; }
    .services-section .container .with-flex .items h3 {
      margin: 20px 0px;
      font-size: 18px;
      color: #f01f21;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
    .services-section .container .with-flex .items p {
      margin: 0; }

.review-section .container .review .items {
  padding: 0px 30px;
  text-align: center; }
  .review-section .container .review .items .background-cover {
    width: 250px;
    height: 250px;
    border: 2px solid #f01f21;
    border-radius: 100%;
    margin: auto; }
  .review-section .container .review .items p {
    margin: 30px 0; }
  .review-section .container .review .items span {
    display: block;
    text-align: right;
    color: #f01f21; }

.contact-section {
  background-color: #fff; }
  .contact-section .container > .with-flex > .half-col:first-child {
    order: 2;
    padding-left: 25px; }
    @media only screen and (max-width: 480px) {
      .contact-section .container > .with-flex > .half-col:first-child {
        padding-left: 0;
        order: 1;
        margin-bottom: 30px; } }
    .contact-section .container > .with-flex > .half-col:first-child .contact-form textarea {
      margin-top: 10px;
      height: 120px; }
    .contact-section .container > .with-flex > .half-col:first-child .contact-form .ajax-loader {
      left: 0; }
  .contact-section .container > .with-flex > .half-col:last-child {
    order: 1;
    padding-right: 25px; }
    @media only screen and (max-width: 480px) {
      .contact-section .container > .with-flex > .half-col:last-child {
        padding-right: 0;
        order: 2;
        height: 300px; } }
    .contact-section .container > .with-flex > .half-col:last-child #contactMap {
      width: 100%;
      height: 100%;
      border: 2px solid #f01f21; }

.contact-form {
  max-width: 750px;
  margin: auto;
  position: relative; }
  .contact-form p {
    margin: 0; }
  .contact-form br {
    display: none; }
  .contact-form input, .contact-form textarea {
    width: 100%;
    outline: none;
    border: none;
    background-color: transparent;
    padding: 10px;
    display: block;
    resize: none;
    border-radius: 0;
    border: 1px solid #333;
    font-family: "ArmWebs-Light, Arial, Sans-Serif";
    -webkit-appearance: none;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s; }
    .contact-form input[type=submit], .contact-form textarea[type=submit] {
      width: 170px;
      margin: auto;
      font-size: 16px;
      color: #fff;
      cursor: pointer;
      background-color: #f01f21;
      border: 2px solid #f01f21;
      margin-top: 30px; }
      .contact-form input[type=submit]:hover, .contact-form textarea[type=submit]:hover {
        background-color: transparent;
        color: #f01f21;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        -webkit-transition: all 0.3s;
        -ms-transition: all 0.3s;
        transition: all 0.3s; }
    .contact-form input.wpcf7-not-valid, .contact-form textarea.wpcf7-not-valid {
      border: 1px solid red; }
    @media only screen and (max-width: 480px) {
      .contact-form input, .contact-form textarea {
        font-size: 16px; } }
  .contact-form textarea {
    height: 134px; }
  .contact-form input {
    margin-bottom: 10px; }
  .contact-form .ajax-loader {
    position: absolute;
    right: 0;
    left: 0px;
    bottom: 15px;
    margin: auto; }
  .contact-form .wpcf7-response-output, .contact-form .wpcf7-not-valid-tip {
    display: none !important; }
  .contact-form .with-flex .half-col:first-child {
    padding-right: 5px; }
    @media only screen and (max-width: 480px) {
      .contact-form .with-flex .half-col:first-child {
        padding: 0; } }
  .contact-form .with-flex .half-col:last-child {
    padding-left: 5px; }
    @media only screen and (max-width: 480px) {
      .contact-form .with-flex .half-col:last-child {
        padding: 0;
        margin-top: 10px; } }
  .contact-form .with-flex .half-col .wpcf7-form-control-wrap {
    display: block; }
    .contact-form .with-flex .half-col .wpcf7-form-control-wrap:last-child input {
      margin-bottom: 0; }

.working-hour-section {
  padding-bottom: 30px; }
  .working-hour-section .container .with-flex .half-col {
    position: relative;
    padding-right: 50px;
    margin-bottom: 20px; }
    @media only screen and (max-width: 480px) {
      .working-hour-section .container .with-flex .half-col {
        padding-right: 0; } }
    .working-hour-section .container .with-flex .half-col:nth-child(2n) {
      padding-left: 50px;
      padding-right: 0; }
      @media only screen and (max-width: 480px) {
        .working-hour-section .container .with-flex .half-col:nth-child(2n) {
          padding-left: 0; } }
      .working-hour-section .container .with-flex .half-col:nth-child(2n) .time {
        right: 0; }
    .working-hour-section .container .with-flex .half-col > div {
      position: relative; }
    .working-hour-section .container .with-flex .half-col .line {
      display: block;
      width: 100%;
      height: 1px;
      border-bottom: 1px dashed #f01f21;
      position: absolute;
      left: 0;
      top: 12px; }
    .working-hour-section .container .with-flex .half-col .day {
      background-color: #fff;
      display: inline-block;
      position: relative;
      z-index: 1;
      padding-right: 10px; }
    .working-hour-section .container .with-flex .half-col .time {
      right: 0;
      display: inline-block;
      position: absolute;
      top: 0;
      background-color: #fff;
      z-index: 1;
      padding-left: 10px; }

#contactMap.contact-page-map {
  width: 100%;
  height: 350px;
  border: 2px solid #f01f21; }

.contact-section.contact-page .container .with-flex .half-col {
  width: 100%;
  padding: 0 !important;
  order: unset !important; }
  .contact-section.contact-page .container .with-flex .half-col:first-child {
    margin-bottom: 50px; }
    @media only screen and (max-width: 480px) {
      .contact-section.contact-page .container .with-flex .half-col:first-child {
        margin-bottom: 30px; } }
  .contact-section.contact-page .container .with-flex .half-col:last-child {
    height: auto; }
  .contact-section.contact-page .container .with-flex .half-col ul {
    margin: 0;
    padding: 0;
    text-align: center; }
    .contact-section.contact-page .container .with-flex .half-col ul li {
      margin: 0;
      list-style-type: none;
      display: inline-block;
      width: 100%;
      margin-bottom: 20px;
      text-align: center; }
      .contact-section.contact-page .container .with-flex .half-col ul li:last-child {
        margin-bottom: 0; }
      @media only screen and (max-width: 480px) {
        .contact-section.contact-page .container .with-flex .half-col ul li {
          width: 100%;
          margin-bottom: 20px; } }
      .contact-section.contact-page .container .with-flex .half-col ul li a {
        color: #333;
        text-decoration: none;
        font-size: 18px; }
        .contact-section.contact-page .container .with-flex .half-col ul li a span {
          color: #f01f21; }

.single-page .container .with-flex .half-col {
  padding-right: 50px; }
  .single-page .container .with-flex .half-col:last-child {
    padding-left: 50px;
    padding-right: 0;
    padding-bottom: 50px;
    padding-top: 50px; }
  .single-page .container .with-flex .half-col .bg-cover {
    width: 100%;
    height: 100%; }
  .single-page .container .with-flex .half-col .section-title {
    text-align: left; }

.gallery-section .gg-container {
  --gap-length: 10px;
  --row-height: 350px;
  --column-width: 350px; }
  @media only screen and (max-width: 480px) {
    .gallery-section .gg-container {
      --row-height: 200px; } }
  .gallery-section .gg-container .gg-box a {
    overflow: hidden;
    border: 2px solid #f01f21;
    /*border-radius: 10px;*/ }
    .gallery-section .gg-container .gg-box a img {
      border: 0;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s;
      -ms-transform: scale(1);
      -webkit-transform: scale(1);
      transform: scale(1); }
    .gallery-section .gg-container .gg-box a:hover img {
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      -webkit-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s;
      -ms-transform: scale(1.2);
      -webkit-transform: scale(1.2);
      transform: scale(1.2); }

.gg-box {
  margin-top: 0; }
  .gg-box img {
    border: 5px solid #fff; }

@media only screen and (max-width: 480px) {
  .gg-box {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    grid-auto-rows: calc(var(--row-height) - 5vh); } }
