@font-face {
  src: url("fonts/Archivo_Black/ArchivoBlack-Regular.ttf") format("truetype");
  font-family: archivo-black;
  font-style: normal; }
@font-face {
  src: url("fonts/Open_Sans/OpenSans-Bold.ttf") format("truetype");
  font-family: open-sans;
  font-weight: bold; }
@font-face {
  src: url("fonts/Open_Sans/OpenSans-Regular.ttf") format("truetype");
  font-family: open-sans;
  font-style: normal; }
@font-face {
  src: url("fonts/Open_Sans/OpenSans-LightItalic.ttf") format("truetype");
  font-family: open-sans;
  font-weight: normal;
  font-style: italic; }
*, *:before, *:after {
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box; }

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

a {
  color: inherit;
  text-decoration: none; }

html, body {
  font-family: open-sans; }
  html.non-scrollable, body.non-scrollable {
    overflow: hidden; }

mark {
  background-color: transparent; }

.temp-intro,
.temp-end {
  background-color: #414042;
  display: flex;
  justify-content: space-between;
  padding: 15px 0;
  color: #808285;
  font-size: 15px; }
  .temp-intro .temp-name,
  .temp-end .temp-name {
    margin-left: 80px; }
    @media screen and (max-width: 1024px) {
      .temp-intro .temp-name,
      .temp-end .temp-name {
        margin-left: 20px; } }
    .temp-intro .temp-name mark,
    .temp-end .temp-name mark {
      color: white; }
  .temp-intro .temp-social,
  .temp-end .temp-social {
    display: flex;
    margin-right: 80px; }
    @media screen and (max-width: 1024px) {
      .temp-intro .temp-social,
      .temp-end .temp-social {
        margin-right: 20px; } }
    .temp-intro .temp-social li,
    .temp-end .temp-social li {
      list-style: none;
      align-self: center;
      padding: 0 10px;
      font-size: 12px; }
  .temp-intro small,
  .temp-end small {
    font-size: 15px; }
    @media screen and (max-width: 1024px) {
      .temp-intro small,
      .temp-end small {
        display: block;
        text-align: center;
        padding: 5px 0; } }
    .temp-intro small:first-child,
    .temp-end small:first-child {
      margin-left: 80px; }
      @media screen and (max-width: 1024px) {
        .temp-intro small:first-child,
        .temp-end small:first-child {
          margin: 0; } }
    .temp-intro small:last-child,
    .temp-end small:last-child {
      margin-right: 80px; }
      @media screen and (max-width: 1024px) {
        .temp-intro small:last-child,
        .temp-end small:last-child {
          margin: 0; } }
    .temp-intro small mark,
    .temp-end small mark {
      color: #d1d3d4; }

@media screen and (max-width: 1024px) {
  .temp-end {
    display: block; } }

#page-header {
  display: flex;
  justify-content: space-around;
  height: 20vh;
  position: sticky;
  top: 0;
  left: 0;
  background-color: white;
  z-index: 5;
  transition: height 500ms linear; }
  @media screen and (max-width: 1024px) {
    #page-header {
      height: 10vh; } }
  #page-header.minimize {
    height: 10vh;
    padding: 10px 0; }
  #page-header .temp-brand {
    display: flex;
    align-self: center;
    width: 25%;
    justify-content: center; }
    #page-header .temp-brand figure {
      margin-right: 15px; }
      #page-header .temp-brand figure img {
        width: 100%; }
    #page-header .temp-brand h1 {
      font-size: 32px;
      align-self: center;
      letter-spacing: -0.65px;
      font-family: 'Archivo Black', sans-serif; }
      #page-header .temp-brand h1 mark {
        color: #27aae1; }
  #page-header #desktop-navigation-menu {
    width: 50%;
    align-self: center; }
    @media screen and (max-width: 1024px) {
      #page-header #desktop-navigation-menu {
        display: none; } }
    #page-header #desktop-navigation-menu ul {
      display: flex;
      justify-content: space-between; }
      #page-header #desktop-navigation-menu ul li {
        list-style: none;
        font-weight: bold;
        color: #58595b; }
        #page-header #desktop-navigation-menu ul li.active {
          color: #27aae1; }
  #page-header #mobile-hamburger-menu {
    display: none;
    position: relative;
    height: 25px; }
    #page-header #mobile-hamburger-menu.active .icon-line:nth-child(1) {
      transform: rotate(45deg) translate(2px, 10px);
      top: 0; }
    #page-header #mobile-hamburger-menu.active .icon-line:nth-child(2) {
      opacity: 0; }
    #page-header #mobile-hamburger-menu.active .icon-line:nth-child(3) {
      transform: rotate(-45deg) translate(4px, -12px);
      bottom: 0; }
    @media screen and (max-width: 1024px) {
      #page-header #mobile-hamburger-menu {
        display: block;
        align-self: center; } }
    #page-header #mobile-hamburger-menu .icon-line {
      display: inline-block;
      width: 35px;
      height: 5px;
      background-color: black;
      position: absolute;
      transition: transform 500ms ease; }
      #page-header #mobile-hamburger-menu .icon-line:nth-child(1) {
        top: 0; }
      #page-header #mobile-hamburger-menu .icon-line:nth-child(2) {
        top: 50%;
        transform: translateY(-50%);
        background-color: #27aae1; }
      #page-header #mobile-hamburger-menu .icon-line:nth-child(3) {
        bottom: 0; }

#mobile-nav-menu {
  display: none; }
  @media screen and (max-width: 1024px) {
    #mobile-nav-menu {
      display: block;
      height: 0;
      overflow: hidden;
      position: sticky;
      top: 10vh;
      z-index: 5;
      background-color: white;
      transition: height 500ms ease; }
      #mobile-nav-menu.show {
        height: 90vh; }
        #mobile-nav-menu.show ul {
          margin-top: 50px; }
        #mobile-nav-menu.show li {
          opacity: 1; }
      #mobile-nav-menu ul li {
        list-style: none;
        font-size: 32px;
        text-align: center;
        padding: 10px 0;
        opacity: 0;
        transition: opacity 500ms ease; } }

.temp-contact-info {
  background-color: #f9f9f9;
  border-top: 1px solid #d1d3d4;
  color: #58595b; }
  .temp-contact-info ul {
    display: flex;
    width: 80%;
    margin: 0 auto; }
    @media screen and (max-width: 1024px) {
      .temp-contact-info ul {
        width: 100%; } }
    .temp-contact-info ul .owl-item img {
      width: 10%; }
    .temp-contact-info ul li {
      list-style: none;
      border-left: 2px solid #d1d3d4;
      font-size: 15px;
      display: flex;
      justify-content: center;
      width: 35%;
      padding: 20px 0; }
      @media screen and (max-width: 1024px) {
        .temp-contact-info ul li {
          width: 101%; } }
      .temp-contact-info ul li:last-child {
        border-right: 2px solid #d1d3d4; }
      .temp-contact-info ul li img {
        width: 10%;
        align-self: center;
        margin-right: 20px; }
      .temp-contact-info ul li .contact-content {
        font-weight: bold; }
        .temp-contact-info ul li .contact-content span {
          display: block; }
          .temp-contact-info ul li .contact-content span:last-child {
            color: #27aae1; }
        .temp-contact-info ul li .contact-content a {
          display: block;
          color: #27aae1; }

section h3 {
  font-size: 32px;
  font-family: 'Archivo Black', sans-serif;
  line-height: 1.2;
  color: #414042; }
  @media screen and (max-width: 1024px) {
    section h3 {
      text-align: center; } }
  section h3 mark {
    color: #27aae1; }
section p {
  color: #808285;
  font-size: 14px; }
section figure {
  width: 50%; }
  section figure img {
    width: 100%;
    height: 100%; }
section .description {
  width: 50%;
  align-self: center; }
  @media screen and (max-width: 1024px) {
    section .description {
      width: 100%; } }
  section .description p {
    line-height: 1.8; }

#home {
  box-shadow: 0 8px 20px -6px #a7a9ac;
  display: flex; }
  @media screen and (max-width: 1024px) {
    #home {
      flex-direction: column; } }
  #home p {
    padding: 30px 0;
    width: 75%; }
    @media screen and (max-width: 1024px) {
      #home p {
        margin: 0 auto; } }
  #home figure {
    opacity: 1;
    transition: opacity 500ms ease; }
    @media screen and (max-width: 1024px) {
      #home figure {
        width: 100%;
        margin-top: 30px; } }
    #home figure.hide {
      opacity: 0; }
  #home .description {
    overflow-x: hidden; }
    #home .description p,
    #home .description button {
      position: relative;
      left: 0;
      opacity: 1;
      transition: left 500ms ease, opacity 500ms ease; }
    #home .description h3 {
      opacity: 1;
      left: 0;
      position: relative;
      transition: left 500ms ease, opacity 500ms ease; }
      @media screen and (max-width: 1024px) {
        #home .description h3 {
          position: absolute;
          left: 50%;
          width: 100%;
          transform: translateX(-50%); } }
    #home .description p {
      transition-delay: 500ms; }
    #home .description button {
      transition-delay: 1000ms; }
    #home .description.hide h3,
    #home .description.hide p,
    #home .description.hide button {
      left: 10%;
      opacity: 0; }
  #home button {
    border: none;
    background-color: #27aae1;
    color: white;
    padding: 10px 18px;
    outline: none;
    cursor: pointer; }
    @media screen and (max-width: 1024px) {
      #home button {
        display: block;
        margin: 0 auto;
        margin-bottom: 40px; } }
    #home button .fas {
      padding-left: 12px;
      font-size: 14px;
      position: relative;
      left: 0;
      transition: left 500ms ease; }
    #home button:hover .fas {
      left: 10px; }

#home,
#about {
  position: relative; }
  @media screen and (max-width: 1024px) {
    #home,
    #about {
      padding-top: 100px; } }
  @media screen and (max-width: 1024px) {
    #home h3,
    #about h3 {
      position: absolute;
      top: 35px;
      left: 50%;
      transform: translateX(-50%);
      width: 100%; } }

#about {
  background-color: #efefef;
  display: block;
  margin-bottom: 225px; }
  @media screen and (max-width: 1024px) {
    #about {
      margin-bottom: 50px; } }
  #about .wrapper {
    width: 85%;
    margin: 0 auto;
    display: flex;
    justify-content: space-around; }
    @media screen and (max-width: 1024px) {
      #about .wrapper {
        flex-direction: column-reverse;
        padding-bottom: 30px; } }
  #about figure {
    width: 35%;
    position: relative;
    left: 8%;
    opacity: 0;
    transition: left 1000ms ease, opacity 1000ms ease; }
    #about figure.show {
      left: 0;
      opacity: 1; }
    @media screen and (max-width: 1024px) {
      #about figure {
        width: 100%;
        display: block;
        margin: 0 auto; } }
    #about figure img {
      transform: scale(1.2);
      top: 25%;
      position: relative;
      width: 100%; }
      @media screen and (max-width: 1024px) {
        #about figure img {
          transform: scale(1); } }
  #about .description {
    opacity: 0;
    transition: opacity 1000ms ease; }
    #about .description.show {
      opacity: 1; }
  #about p {
    padding: 14px 0; }
    #about p:nth-of-type(1) {
      font-style: italic;
      font-weight: bold;
      color: black; }

#service {
  display: block; }
  #service h3 {
    text-align: center; }
  #service p {
    width: 50%;
    margin: 0 auto;
    text-align: center;
    padding: 20px 0 40px;
    line-height: 1.8; }
    @media screen and (max-width: 1024px) {
      #service p {
        width: 90%; } }
  #service .owl-service {
    width: 85%;
    margin: 0 auto;
    display: block; }
    @media screen and (max-width: 1024px) {
      #service .owl-service {
        width: 100%; } }
    #service .owl-service li {
      list-style: none;
      background-color: #efefef;
      width: 90%; }
      #service .owl-service li .inner-contents {
        padding-top: 20px; }
        #service .owl-service li .inner-contents img {
          width: 50px;
          height: 50px;
          display: block;
          margin: 0 auto;
          padding-top: 20px; }
        #service .owl-service li .inner-contents p {
          width: 100%; }
        #service .owl-service li .inner-contents .title {
          text-align: center;
          padding-top: 20px;
          color: #414042;
          font-size: 15px;
          font-weight: bold; }
  #service .service-carousel-btn {
    margin: 20px auto;
    text-align: center;
    padding: 20px 0; }
    #service .service-carousel-btn i {
      font-size: 16px;
      padding: 0 10px;
      color: #27aae1;
      cursor: pointer; }

#testimonial {
  background-color: #efefef;
  padding: 20px 0; }
  #testimonial h3 {
    text-align: center;
    padding: 20px 0; }
  #testimonial p {
    text-align: center;
    width: 50%;
    margin: 0 auto; }
    @media screen and (max-width: 1024px) {
      #testimonial p {
        width: 90%; } }
  #testimonial .owl-testimonial {
    width: 80%;
    margin: 0 auto; }
    @media screen and (max-width: 1024px) {
      #testimonial .owl-testimonial {
        width: 100%; } }
    #testimonial .owl-testimonial .owl-item-testimonial {
      display: flex;
      width: 95%;
      background-color: white;
      margin: 50px auto; }
      @media screen and (max-width: 1024px) {
        #testimonial .owl-testimonial .owl-item-testimonial {
          width: 90%; } }
      #testimonial .owl-testimonial .owl-item-testimonial figure {
        width: 250px; }
        @media screen and (max-width: 1024px) {
          #testimonial .owl-testimonial .owl-item-testimonial figure {
            width: 350px; } }
        #testimonial .owl-testimonial .owl-item-testimonial figure img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      #testimonial .owl-testimonial .owl-item-testimonial .description {
        margin: 0 20px;
        padding: 10px 0; }
        #testimonial .owl-testimonial .owl-item-testimonial .description .person-name,
        #testimonial .owl-testimonial .owl-item-testimonial .description .person-info {
          font-size: 15px;
          font-weight: bold; }
        #testimonial .owl-testimonial .owl-item-testimonial .description .person-info {
          padding: 2px 0;
          color: #808285; }
        #testimonial .owl-testimonial .owl-item-testimonial .description .person-name {
          color: #27aae1;
          padding-top: 20px; }
      #testimonial .owl-testimonial .owl-item-testimonial blockquote {
        font-size: 14px;
        color: #808285;
        font-weight: bold;
        line-height: 1.8; }
  #testimonial .testimonial-carousel-btn {
    text-align: center;
    padding-bottom: 30px; }
    #testimonial .testimonial-carousel-btn i {
      padding: 10px;
      background-color: #d1d3d4;
      color: #58595b;
      margin: 0 8px;
      cursor: pointer; }

#enquiry {
  background: linear-gradient(#27aae1, #2b3990); }
  #enquiry h3 {
    text-align: center;
    color: white;
    padding: 60px 0 30px; }
  #enquiry p {
    width: 50%;
    margin: 0 auto;
    text-align: center;
    color: #f9f9f9;
    line-height: 1.8; }
    @media screen and (max-width: 1024px) {
      #enquiry p {
        width: 90%; } }
  #enquiry form fieldset {
    border: none;
    width: 35%;
    margin: 0 auto;
    padding: 30px 0; }
    @media screen and (max-width: 1024px) {
      #enquiry form fieldset {
        width: 90%; } }
    #enquiry form fieldset input {
      background-color: transparent;
      border: 2px solid white;
      padding: 8px 18px;
      clear: both;
      width: 48%;
      margin: 10px 0; }
      #enquiry form fieldset input:nth-child(even) {
        float: right; }
    #enquiry form fieldset ::-webkit-input-placeholder {
      color: #f9f9f9; }
      @media screen and (max-width: 1024px) {
        #enquiry form fieldset ::-webkit-input-placeholder {
          padding-left: 13px; } }
    #enquiry form fieldset ::-moz-placeholder {
      color: #f9f9f9; }
      @media screen and (max-width: 1024px) {
        #enquiry form fieldset ::-moz-placeholder {
          padding-left: 13px; } }
    #enquiry form fieldset :-ms-input-placeholder {
      color: #f9f9f9; }
      @media screen and (max-width: 1024px) {
        #enquiry form fieldset :-ms-input-placeholder {
          padding-left: 13px; } }
    #enquiry form fieldset :-moz-placeholder {
      color: #f9f9f9; }
      @media screen and (max-width: 1024px) {
        #enquiry form fieldset :-moz-placeholder {
          padding-left: 13px; } }
    #enquiry form fieldset textarea {
      background-color: transparent;
      border: 2px solid white;
      width: 100%;
      padding: 8px;
      font-family: open-sans; }
    #enquiry form fieldset button {
      display: block;
      margin: 20px auto;
      padding: 8px 18px;
      width: 40%;
      background-color: transparent;
      border: none;
      border: 2px solid white;
      color: white;
      font-size: 15px; }

#contact {
  padding: 30px 0; }
  #contact h3 {
    text-align: center;
    padding: 10px 0 20px; }
  #contact p {
    width: 50%;
    margin: 0 auto;
    text-align: center;
    line-height: 1.8; }
    @media screen and (max-width: 1024px) {
      #contact p {
        width: 90%; } }
  #contact .inner-container {
    display: flex;
    width: 85%;
    margin: 40px auto;
    padding: 20px 0;
    justify-content: space-between; }
    @media screen and (max-width: 1024px) {
      #contact .inner-container {
        flex-direction: column;
        width: 90%; } }
    #contact .inner-container figure {
      width: 40%; }
    #contact .inner-container .description-container {
      width: 30%; }
      @media screen and (max-width: 1024px) {
        #contact .inner-container .description-container {
          width: 100%; } }
      #contact .inner-container .description-container li {
        display: flex;
        justify-content: space-evenly;
        padding: 15px 0; }
        #contact .inner-container .description-container li address {
          font-size: 14px;
          color: #58595b;
          font-family: open-sans;
          font-style: normal;
          line-height: 1.8; }
        #contact .inner-container .description-container li label {
          color: #58595b;
          font-weight: bold;
          font-size: 14px; }
        #contact .inner-container .description-container li address,
        #contact .inner-container .description-container li .contact-content {
          width: 70%; }
        #contact .inner-container .description-container li .contact-content {
          display: flex;
          font-size: 14px; }
          #contact .inner-container .description-container li .contact-content li {
            color: #58595b;
            padding: 0 15px 0 0; }
            #contact .inner-container .description-container li .contact-content li i {
              font-size: 18px; }

/*# sourceMappingURL=home.css.map */
