@charset "utf-8";
@font-face {
  font-family: cardo;
  src: url('/templates/zoom/webfonts/Cardo-Regular.ttf'); }

.header {
  height: 100vh;
  display: table;
  width: 100%; }
  .header .vcenter {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    background: rgba(255, 255, 255, 0.7);
    padding-bottom: 10vh; }
  .header .head-underlay {
    position: fixed;
    top: 0;
    max-height: 100vh;
    width: 100%;
    z-index: -1; }
    .header .head-underlay video {
      object-fit: cover;
      width: 100%;
      min-height: 100vh; }
  .header .logo p {
    margin: 0; }
    .header .logo img {
      max-height: 35vh;
      height: 350px; }
    .header .logo h1 {
      font-family: cardo;
      font-size: 70px;
      font-weight: 200;
      margin: 0;
      position: relative; }
      .header .logo h1::after {
        content: "";
        height: 2px;
        width: 100px;
        background: #000;
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: -10px; }
        @media (max-width: 767px) {
  .header .logo h1::after {
    bottom: -15px;
    width: 50px; } }
      @media (max-width: 767px) {
  .header .logo h1 {
    font-size: 35px; } }
  .header .quicknavs {
    font-family: 'Caveat', cursive; }
    .header .quicknavs .quicknav {
      display: inline-block;
      margin: 0 10px 10px;
      line-height: 45px;
      font-size: 22px;
      padding: 0 50px;
      transition: 0.5s;
      background: #000;
      cursor: pointer;
      color: #fff;
      border: solid 1px #000;
      border-radius: 100px; }
      .header .quicknavs .quicknav a {
        font-family: inherit;
        font-size: inherit; }
      .header .quicknavs .quicknav:hover {
        background: #fff;
        color: #000; }
  .header .punchline {
    font-family: cardo;
    margin: 40px 0 50px; }
    @media (max-width: 767px) {
  .header .punchline {
    margin: 30px 0 40px; } }
    .header .punchline p {
      margin: 0;
      font-size: 30px; }
      @media (max-width: 767px) {
  .header .punchline p {
    font-size: 22px; } }

.main-menu {
  position: fixed;
  width: calc(100% - 40px);
  height: 50px;
  transition: 0.5s;
  padding: 0 20px;
  z-index: 999;
  top: 0; }
  .main-menu.scroll {
    background: #000; }
    .main-menu.scroll li {
      color: #fff; }
      .main-menu.scroll li:hover {
        background: #111; }
        @media (max-width: 767px) {
  .main-menu.scroll li:hover {
    background: none; } }
    .main-menu.scroll .contact-buttons .contact-but i {
      color: #fff; }
      .main-menu.scroll .contact-buttons .contact-but i:hover {
        background: #111; }
    .main-menu.scroll .menu-button {
      color: #fff; }
      .main-menu.scroll .menu-button #open {
        color: #fff; }
  .main-menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
    float: right;
    height: 50px; }
    @media (max-width: 767px) {
  .main-menu ul {
    width: 100%;
    position: absolute;
    top: 50px;
    background: #fff;
    left: 0;
    height: 0;
    transition: 0.5s;
    overflow: hidden;
    padding-top: 0; } }
  .main-menu li {
    display: inline-block;
    height: 50px;
    transition: 0.5s;
    color: #000;
    background: transparent; }
    @media (max-width: 767px) {
  .main-menu li {
    display: block;
    color: #000 !important;
    height: 70px; } }
  .main-menu a {
    display: block;
    color: inherit;
    padding: 0 20px;
    line-height: 50px;
    position: relative; }
    @media (max-width: 767px) {
  .main-menu a {
    line-height: 70px; } }
  .main-menu .contact-buttons {
    float: left;
    height: 50px;
    overflow: hidden; }
    .main-menu .contact-buttons .contact-but {
      float: left;
      cursor: pointer; }
      .main-menu .contact-buttons .contact-but i {
        line-height: 50px;
        padding: 0 20px;
        color: #000;
        transition: 0.5s; }
        @media (max-width: 767px) {
  .main-menu .contact-buttons .contact-but i {
    padding: 0 15px; } }
  .main-menu .menu-button {
    display: none; }
    @media (max-width: 767px) {
  .main-menu .menu-button {
    display: block;
    color: #000;
    line-height: 50px;
    font-family: cardo;
    font-size: 18px;
    position: absolute;
    right: 0;
    padding: 0 45px 0 20px;
    transition: 0.5s; }
    .main-menu .menu-button #open {
      transition: 0.5s;
      color: #000;
      position: absolute;
      top: 14px;
      right: 21px; }
    .main-menu .menu-button #close {
      position: absolute;
      top: 14px;
      right: 21px;
      transition: 0.5s;
      opacity: 0;
      color: #000; } }

.menu-open {
  overflow: hidden; }
  .menu-open .main-menu ul {
    height: calc(100vh - 50px);
    padding-top: 50px; }

.nav-contact-details {
  position: fixed;
  height: 50px;
  width: 50%;
  max-width: 300px;
  left: 0;
  z-index: 998;
  overflow: hidden;
  text-align: left;
  top: 50px;
  transition: 0.5s;
  transform: translateX(-100%);
  padding: 0 40px; }
  @media (max-width: 767px) {
  .nav-contact-details {
    width: 100%;
    text-align: center;
    padding: 0;
    max-width: 100%;
    background: #fff; } }
  .nav-contact-details.scroll {
    background: #111;
    text-align: center; }
    .nav-contact-details.scroll p {
      color: #fff; }
  .nav-contact-details p {
    margin: 0;
    float: left;
    width: 0;
    overflow: hidden;
    color: #fff;
    cursor: pointer;
    line-height: 50px;
    transition: 0.5s;
    font-family: sans-serif;
    color: #000;
    font-size: 18px; }
    .nav-contact-details p a {
      color: inherit;
      font-family: inherit;
      font-size: inherit; }

.menu-open-one .nav-contact-details, .menu-open-two .nav-contact-details, .menu-open-three .nav-contact-details, .menu-open-four .nav-contact-details {
  transform: translateX(0); }

.menu-open-one .nav-contact-details p:nth-child(1), .menu-open-two .nav-contact-details p:nth-child(2), .menu-open-three .nav-contact-details p:nth-child(3), .menu-open-four .nav-contact-details p:nth-child(4) {
  width: 100%; }

.menu-open-one .main-menu .contact-but.one, .menu-open-two .main-menu .contact-but.two, .menu-open-three .main-menu .contact-but.three, .menu-open-four .main-menu .contact-but.four {
  color: #333; }

.menu-spacer {
  height: 49px;
  background: rgba(255, 255, 255, 0.7); }

@media (max-width: 767px) {
    .ba-gallery {
      padding: 0 !important;
      padding-left: 5px !important; } }

.floating-bkg {
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
  background: #fff;
  z-index: -1;
  background-image: url(/templates/zoom/images/sitebkg.jpg);
  background-size: cover;
  background-position: center; }

@media (max-width: 767px) {
  .menu-open .menu-button {
    color: #000 !important;
    box-shadow: inset 0px -50px 0 #fff; }
    .menu-open .menu-button #open {
      opacity: 0;
      transform: rotate(180deg); }
    .menu-open .menu-button #close {
      opacity: 1;
      transform: rotate(180deg); } }
