@charset "UTF-8";
@import url("bootstrap.min.css");
@import url("fontawesome.min.css");
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Anton&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&display=swap');

html {overflow-x: hidden; overflow-y: auto;}
body {background-color: #fff; color: #4d4d4d; font-family: 'Roboto', sans-serif; font-weight:300; font-size: 18px; line-height: 1.5; margin: 0;}
@media (max-width: 767px) {body{font-size: 16px; line-height: 1.4; }}
@media (min-width: 576px) and (max-width: 992px) {.container {max-width:95%;} }


/* === HEADER === */
header {position:absolute; width: 100%; top: 0; left: 0; z-index: 991; transition: background 0.4s, all 0.3s linear; -webkit-transform: translate3d(0,0,0); -moz-transform: translate3d(0,0,0); -ms-transform: translate3d(0,0,0); 	transform: translate3d(0,0,0);  }
.header-main {position: relative;}

/* Logo */
header .logo {margin: 0; padding: 10px 0; -webkit-transition: 0.2s; transition: 0.2s;}
header .logo img {position: relative; display: inline-block; z-index: 2; width: 100%; height: 100%; max-height: 75px;}
@media (min-width: 992px) { header .logo img {max-height: 70px;} }

  /* STICKY NAVIGATION */
@media (min-width: 992px) { 
  header.sticky-nav {background:#ffffff; width: 100%; position: fixed; -webkit-animation-name: growTop; -moz-animation-name: growTop; -o-animation-name: growTop; animation-name: growTop; -webkit-animation-fill-mode: both; -moz-animation-fill-mode: both; -ms-animation-fill-mode: both; -o-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration: 1s; -moz-animation-duration: 1s; -ms-animation-duration: 1s; -o-animation-duration: 1s; animation-duration: 1s; box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1); -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15); box-shadow: 0 2px 3px rgba(0, 0, 0, 0.15); z-index: 999; -webkit-transition: 0.4s ease; transition: 0.4s ease;  }
  header.sticky-nav .header-top { display: none; }
  header.sticky-nav .logo {padding:0;}
  header.sticky-nav .logo img {max-height: 75px;}
 }
 
 /* ===== SITCKY NAV ANIMATION  ====== */
@-webkit-keyframes growTop {0% { opacity: 1; -webkit-transform: translateY(-300px); -moz-transform: translateY(-300px); -moz-transform: translateY(-300px); } 100% { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); } }
@-moz-keyframes growTop {0% { opacity: 1; -webkit-transform: translateY(-300px); -moz-transform: translateY(-300px); -moz-transform: translateY(-300px); } 100% { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); } }
@-o-keyframes growTop {0% { opacity: 1; -webkit-transform: translateY(-300px); -moz-transform: translateY(-300px); -moz-transform: translateY(-300px); } 100% { opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); } }
@keyframes growTop {0% {opacity: 1; -webkit-transform: translateY(-300px); -moz-transform: translateY(-300px); -moz-transform: translateY(-300px); } 100% {opacity: 1; -webkit-transform: translateY(0); -moz-transform: translateY(0); } }


/* === NAVIGATION === */
.header-main nav {width: 100%;}
.header-main #mainNav {font-family: 'Open Sans', Helvetica, sans-serif;}
.header-main nav .navbar-toggler {margin: 0; padding: 9px; height: 40px; width: 40px; background: #2f2f2f; position: absolute; top: 20px; right: 0; z-index: 8; border: none;}
.header-main nav .navbar-toggler:hover {filter: brightness(150%);}
.header-main nav .navbar-toggler .fa {color: #fff; font-size: 14px;}
#auth .header-main nav .navbar-toggler {background: #0054A6;}

.header-main nav .navbar-collapse {margin: 0 -15px; position: relative !important; padding-left: 0; padding-right: 0;}
.header-main nav .navbar-nav {background: #2f2f2f; margin: 0;}
.header-main nav .navbar-nav > li > a {text-decoration: none; text-transform: uppercase; -webkit-transition: 0.2s; transition: 0.2s; font-family: 'Open Sans', Helvetica, sans-serif; }


@media all and (min-width: 576px) {/* TABLETS & DESKTOPS */
  .header-main nav .navbar-nav {background: none; }
  .header-main nav .navbar-nav > li { position:relative; border: none; text-align: left; list-style: none; display: inline-block; overflow: visible; -webkit-transition: background 0.2s ease-in-out; transition: background 0.2s ease-in-out; -webkit-transition: 0.2s; transition: 0.2s; }
  .header-main nav .navbar-nav > li > a { margin:0 10px; font-size: 15px; color: #8cc63f; padding: 5px 15px; }
  .header-main nav .navbar-nav > li > a:hover,
  .header-main nav .navbar-nav > li > a:focus{background: #0054A6; color: #fff !important; border-radius: 6px; }
  #auth .header-main nav .navbar-nav > li > a {font-size: 0.9rem;}
}

@media all and (max-width: 576px) {/* SMALL PHONES */
  .header-main nav .navbar-toggler {display: inline-flex; justify-content: center; align-items: center; }
  .header-main nav .dropdown-toggle:after {display:none; }
  .header-main nav .navbar-nav li a {position: relative; display:block; z-index: 2; overflow: hidden; font-size: .9rem; color: #fff; text-decoration: none; padding: 12px 15px; font-size: 16px; }
  .header-main nav .navbar-nav li a:hover {background: #4f4f4f; }
  .header-main nav .navbar-nav li a.nav-link-caret {position: absolute; right: 20px;}
}
/* ===== AUTHENTICATED SECTION ===== */
header#auth {background:#2f2f2f;}
.main-auth {margin-top:130px;}

@media all and (min-width: 768px) {/* TABLETS & DESKTOPS | AUTH SECTION */
  .header-main nav .navbar-nav > li > a.active {border-bottom: 2px solid #0054A6;}
  .header-main nav .navbar-nav > li > a:after {content: '|';  color: #8cc63f; position: absolute; right:0; top: 50%; transform: translateY(-50%); margin-right: -5px;}
  .header-main nav .navbar-nav > li:last-child > a:after {content: "" }
}
@media all and (max-width: 768px) { /* PHONES */
  .header-main nav .navbar-nav > li > a {border-bottom: 2px dotted #8cc63f; padding: 8px 15px;}
  .header-main nav .navbar-nav > li:last-child > a {border-bottom: none;}
}


/* Sroll to Top */
.scrollToTop {background: #a3a3a3; color: #ffffff !important; display: none; font-size: 22px; line-height: 35px; position: fixed; bottom: 20px; right: 20px; text-align: center; text-decoration: none; width: 35px; height: 35px; border-radius: 6px; z-index: 999; -webkit-transition: all 0.5s ease 0s; transition: all 0.5s ease 0s;}
.scrollToTop:hover, .scrollToTop:focus {background: #777777; color: #2f2f2f;}


/* ===== HERO BANNERS ===== */

.hero .hero-content {margin-top:120px; }
.hero .hero-content h1 span {color:#000000;}
.hero .hero-img { position: relative; }

.hero .hero-img span.img-ani1, .hero .hero-img span.img-ani2, .hero .hero-img span.img-ani3 { 
    width: 100%; height: 100%; position: absolute; top: 0px; left: 0px; color: transparent;  z-index: 0;
    background-size: cover; background-position: 50% 50%; background-repeat: none;}

.hero .hero-img span.img-ani1 { background-image: url('../img/hero/sign-doc.jpg'); animation: heroAnimation 27s linear 1 0s;}
.hero .hero-img span.img-ani2 { background-image: url('../img/hero/house-deed.jpg'); opacity: 0; animation: heroAnimation 27s linear 1 25s; }
.hero .hero-img span.img-ani3 { background-image: url('../img/hero/hands-house.jpg'); opacity: 0; animation: heroAnimation 27s linear 1 50s;  }

@keyframes heroAnimation  { 
	0% {opacity: 0; animation-timing-function: ease-in;	}
	8% {opacity: 1; transform: scale(1.05); animation-timing-function: ease-out;}
	100% { opacity: 1; }
}

.auth0-lock-submit {background-color:#8cc63f !important; }
.auth0-label-submit {font-weight:bold;}
.auth0-lock.auth0-lock img.auth0-lock-header-logo {display:none;}
.auth0-lock.auth0-lock .auth0-lock-header-bg {background: #8cc63f !important; }
.auth0-lock.auth0-lock .auth0-lock-name {color:#ffffff;}

@media all and (min-width: 992px) {/* DESKTOPS */
    .hero .hero-img {height:100vh; clip-path: polygon(100% 0%, 100% 89%, 25% 100%, 0 60%, 15% 0); }

    @keyframes heroAnimation  { 
        0% {opacity: 0; animation-timing-function: ease-in;	}
        8% {opacity: 1; transform: scale(1.05); animation-timing-function: ease-out;}
        35% {opacity: 1; transform: scale(1.1) rotate(10deg);}
        100% { opacity: 1; transform: scale(1.1) rotate(10deg);}
    }
}

@media all and (max-width: 991px) {/* TABLETS & SMALLER */
    .hero .hero-img {padding:80px; margin-top:50px; }
}

img.bkg-img {position:absolute; top:50px; clip-path: polygon(0 0, 70% 0%, 100% 38%, 100% 80%, 70% 100%, 30% 100%, 0 83%, 0% 30%); z-index:-1;}


/* ===== FOOTER GLOBAL ===== */
footer { background: #2f2f2f; color: #a3a3a3;}
footer a { color: #fff;}

.footer-main input[type="submit"] {min-width:150px;}

    /* Contact Us */
.footer-main .contact-us {border-right:1px solid #707070;}
.footer-main .contact-us label {color: #ffffff; font-size: 0.9rem; font-weight:300;}
.footer-main .contact-us .alert-success {font-size:0.9rem}
.footer-main .contact-us .form-group {margin-bottom: 10px;}

.footer-logo img {width:100px;}
.footer-copyright { border-top: 1px solid #191919; background: #212121; font-size: 12px; padding: 15px 0;}


/* ========== GENERAL ELEMENTS ========== */

a {color: #0054A6; text-decoration: none;}
a:hover {color:#8cc63f; text-decoration: none;}
a.sm-link {text-transform: uppercase; font-weight: bold; font-size: .85rem; font-family: 'Open Sans', sans-serif;}

h1, h2, h3, h4, .h1, .h2, .h3, .h4 { line-height: 1.2em; color: #2f2f2f; text-transform: uppercase;}
h1, .h1 {font-size: 36px; margin-bottom: .75em; font-family: 'Anton', sans-serif;}
h1 span {color: #0054A6;}
h2, .h2 {font-size: 30px; font-family: 'Anton', sans-serif;}
h3, .h3 {font-size: 22px; font-family: 'Roboto', sans-serif;}
h4, .h4 {font-size: 18px; font-family: 'Roboto', sans-serif;}

@media (max-width: 767px) {
  h1, .h1 {font-size: 30px; margin-bottom: .75em; }
  h2, .h2 {font-size: 22px; }
  h3, .h3 {font-size: 18px; }
  h4, .h4 {font-size: 17px;}
}


img {border: 0; max-width: 100%; height: auto;}
.clear {clear: both; float: none !important; margin: 0; padding: 0;}
.txt-trans-none {text-transform: none;}
.hand, a.hand {cursor: hand; cursor: pointer;}
.no-hand {cursor: default;}
.dnone {display: none; visibility: hidden;}
.blue-main {color:#0054A6;}
.text-black {color:#000000;}
.imgDiv{ position: relative; overflow: hidden;}

.section-main {padding: 60px 0;}


  /* === TITLES === */

.title-decorated {position: relative; padding-bottom: 0; margin-bottom: 30px;}
.title-decorated:before,
.title-decorated:after {content: ""; display: block; position: absolute; left: 50%; bottom: 3px; border-radius: 50%; width: 8px; height: 8px; background: #dcdcdc; display: none;}
.title-decorated:before {margin-left: -22px;}
.title-decorated:after {margin-left: 14px;}
.title-decorated h1,
.title-decorated .h1 {margin-bottom: 0; position: relative; text-align: center;}
.title-decorated h1:before
.title-decorated .h1:before {content: ""; display: block; position: absolute; left: 50%; bottom: -40px; width: 14px; height: 14px; margin-left: -7px; border-radius: 50%; background: #dcdcdc; display: none;}
.title-decorated span {font-weight: normal; color: #0054A6;}

  /* === BUTTONS === */
.btn  {font-family: 'Open Sans', Helvetica, sans-serif; text-transform: uppercase; font-size:1.2rem;}
.btn-primary, .btn-blue {font-family: 'Open Sans', Helvetica, sans-serif; text-transform: uppercase; border-bottom-color: transparent; -webkit-box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.06); box-shadow: inset 0 -3px 0 rgba(0, 0, 0, 0.06);}
.btn-primary:active, .btn-blue:active {-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);}
.btn:active, .btn.active {background-image: none;}

.btn-primary {background: #8cc63f;  background: linear-gradient(129deg, #8cc63f 0%, #0054a6 82%); border:0;}
.btn-primary:hover, .btn-primary:focus {filter: contrast(150%);}
.btn-primary:active, .btn-primary.active {background-color: #8cc63f; border-color: #8cc63f; -webkit-box-shadow: inset 0 3px 0 rgba(0, 0, 0, 0.12); box-shadow: inset 0 3px 0 rgba(0, 0, 0, 0.12);}

.btn-blue {background: #0054a6; color:#fff;}
.btn-blue:hover, .btn-blue:focus { color:#fff; background:#8cc63f;}
.btn-blue:active, .btn-blue.active {background-color: #0054a6; border-color: #0054a6; -webkit-box-shadow: inset 0 3px 0 rgba(0, 0, 0, 0.12); box-shadow: inset 0 3px 0 rgba(0, 0, 0, 0.12);}

.btn-md { padding: .6rem 2rem; font-size: 1.2rem;}
.btn:focus,  .btn:active{ outline: none; box-shadow: none;}

@media (min-width: 992px) {.btn-lg {padding: 12px 24px; font-size: 1.4em; }}

  /* === Forms === */
label {display: inline-block; margin-bottom: 5px; color: #2f2f2f; }
.required {color: #e74c3c;}
label.error {color: #a94442;}
.form-group {margin-bottom: 30px;}
.form-control:focus {border-color: #cacaca; outline: 0; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(202, 202, 202, 0.6); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(202, 202, 202, 0.6);}
select.form-control.is-invalid, .was-validated select.form-control:invalid,
select.form-control.is-valid, .was-validated select.form-control:valid {background-position: right calc(.375em + .8rem) center;}

  /* === Line Marks === */
.lineMark { width: 4px; height: 60px; background: #0054A6; display: inline-block; border-radius: 8px; margin-right: 8px; margin-bottom: -14px;}


  /* === ICON BOXES === */

.icon-box {position: relative; margin-bottom: 30px; text-align: left; border: 1px solid #dcdcdc; background: #fafafa; -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06); padding: 20px;}
.icon-box .icon {color: #fff; border-radius: 50%; float: left; width: 70px; height: 70px; line-height: 70px; margin: 0 30px 20px 0; font-size: 28px; text-align: center; color: #0054A6; position: relative; -webkit-transition: 0.3s; transition: 0.3s;}
.icon-box .icon:before {content: ""; display: block; position: absolute; width: 100%; height: 100%; z-index: 2; background: #0054A6; border-radius: 50%;-webkit-transition: 0.3s; transition: 0.3s;}
.icon-box .icon:after {content: ""; display: block; position: absolute; left: -6px; right: -6px; top: -6px; bottom: -6px; z-index: 1; border-radius: 50%; background: #ebebeb; -webkit-transition: 0.3s; transition: 0.3s;}
.icon-box .icon:hover:before {background: #2f2f2f; -webkit-transform: scale(0.9, 0.9); -ms-transform: scale(0.9, 0.9); transform: scale(0.9, 0.9);}
.icon-box .icon .fa {position: relative; z-index: 2;}
.icon-box .icon .fas {color: #ffffff; position:relative; z-index:2; font-size:35px;}
.icon-box .icon img {position: relative; z-index: 2; max-width: 100%; height: auto;}

.icon-box .icon-box-body {overflow: hidden; position: relative; z-index: 2;}
.icon-box .icon-box-body h3,
.icon-box .icon-box-body h4 {padding-top: 6px; margin-bottom: .75em; font-family: 'Roboto', sans-serif; font-weight: bold;}

@media (min-width: 992px) {
  .icon-box { text-align: center; padding: 28px;} 
  .icon-box .icon { float: none; margin: 0 auto 25px auto; width: 100px; height: 100px; font-size: 42px; line-height: 100px;   display: inline-flex; justify-content: center; align-items: center;} 
}
@media (max-width: 992px) { .icon-box .icon {margin-bottom:0;} }

  /* === INFO BOXES === */
.info-box {position: relative; margin-bottom: 30px; text-align: left; border: 1px solid #dcdcdc; background: #fafafa; -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.2); box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06); padding: 20px;}
.info-box .info-box-body {overflow: hidden; position: relative; z-index: 2;}
.info-box .info-box-body h3,
.info-box .info-box-body h4 {padding-top: 6px; margin-bottom: .75em; font-family: 'Roboto', sans-serif; font-weight: bold;}

  /* === BULLETED LISTS === */
.list {list-style: none; padding-left:20px; font-size:1rem;}
.list li {padding:5px;}
.list li:nth-of-type(2n+1) {background:#f3f9eb;}
.list li:before {content: '\f0da';  margin: 0 5px 0 -15px; color: #8cc63f; font-weight: 900; font-family: 'Font Awesome 5 Free';}


/* ===== HOME PAGE ===== */
.about-content-section, .about-items-section{ padding: 40px;}
.about-content-section { padding-right: 150px; position: relative; background: #f2f2f2;}

.about-items-section { background: #d9e6f2; padding-right: 75px;}
.home-about-item { align-items: center;}
.home-about-item h3{ font-weight: 700;}
.home-about-item .imgDiv{ width: 90px; height: 90px; background: #212121; border-radius: 50px; margin-right: 40px;}
.home-about-item .imgDiv__img{ max-height: 70%;}
.home-about-item p {font-size: 18px; margin-bottom: 0;}
.home-about-item:not(:last-child){ margin-bottom: 40px;}

.about-content-section .about-content {height:90%;}

.home-about-item .imgDiv .fas  {color: #ffffff; position:relative; z-index:2; font-size:35px;}
@media (min-width: 992px) { .about-items-section .home-about-item { margin-left: -82px;} }
@media (min-width: 767px) {.home-about-item .imgDiv .fas, .icon-box .icon .fas {font-size:50px;}}

/* ===== ORDERS PAGE ===== */

table.orders {font-size:1rem;}
table.orders .thead-dark {text-transform: uppercase;}
table.orders tbody tr td:first-child {font-weight: bold;}

a.view {text-transform:uppercase; font-weight:bold;}
a.view:after {content: '\00BB'; font-size:1.3rem; margin-left:4px;}

.details-hd {/* margin:2rem 0; */}
.details-hd span {display:block; font-weight:bold; color:#000000; text-transform:uppercase; font-size:1rem; margin-bottom:10px; padding:2px 5px; background:rgba(140,198,63,0.2); border-radius:2px;}
.details-hd pre {overflow-x: auto; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;}

.modal-body #newOrderForm label {text-transform:uppercase; font-size:1rem; font-weight:400;}

@media (max-width: 576px) { 
  table.orders {font-size:0.9rem;}
  table.orders thead tr th:nth-child(3),
  table.orders tbody tr td:nth-child(3) {display:none}
}