@import url('https://fonts.googleapis.com/css2?family=Barlow&family=Barlow+Condensed:wght@300;400;600;700;800&display=swap');
/*** DEFAULT ***/

html {
 height:100%;
 min-height:100%;
}

body {
	font-family:'Barlow';
	margin:0px;
	background-color:#f5f5f5;
	color:#000F08;
  height: 100vh;
}
.hidden {
	display:none!important;
}
h1 {
	font-family:'Barlow Condensed';
	font-size:2.2em;
	font-weight:600;
	color:white!important;
}
h2 {
	font-family:'Barlow Condensed';
	font-size:2.6em;
	font-weight:600;
	color:#1C3738!important;
	letter-spacing:0.001em;
	margin-bottom:0px;
}
h3 {
	font-size:1.1em;
	text-align:center;
}
.container {
	padding:1em;
}
.container-fluid {
	padding:0;
}
.col-8 {
	flex:0 0 100%;
	max-width:100%;
}
main {
	height:auto;
	padding-top: 2.5em;
}

a {
  color: inherit;
}

a:hover {
  color: #4D4847;
  text-decoration: none;
}
/*** HEADER ***/
@media (min-width:0px) {
	.top {
		background-image:url("../img/top.jpeg");
		background-size:cover;
		background-repeat:no-repeat;
		background-position:center center;
		box-shadow:inset 0 0 0 1000px #000F08d0;
		height:90vh;
	}
	.header-desc {
		display:none;
	}
	.header-desc-mob {
		color:white;
		padding-left:2em;
		padding-right:2em;
	}
	.header-l {
		display:flex;
		align-items:center;
		height:70vh;
	}
	.header-r {
		display:flex;
		align-items:center;
		height:70vh;
	}
	.navbar {
		padding-left:0px;
		padding-right:0px;
	}
	.bg-light {
		background-color:transparent!important;
	}
	.navbar-brand {
		font-family:'Barlow Condensed';
		font-weight:600;
		padding-left:0px;
		font-size:1.5rem;
		display:contents;
		color:white!important;
	}
	.text-muted {
		font-family:'Barlow'
	}
	.navbar-brand .text-muted {
		font-size:0.6em;
		color:white!important;
	}
	.nav-link {
		margin-left:2vw;
		padding:0px!important;
		font-family: 'Barlow Condensed';
		font-size:2em;
		color:white!important;
    width: inherit;
	}
  .navbar-collapse {
    text-align: right;
    font-size: 0.75em;
    right: 0;
    position: relative;
  }

  .navber-nav {
    position: absolute;
  }

  .navbar-toggler i {
    padding: 0;
    color: white;
  }

	.badge {
		width:6em!important;
		margin-top:3em;
		margin-bottom:3em;
	}
	.sequence {
		font-size:2em;
		text-align:center;
	}
	.align-middle {
		text-align:center;
	}
	#headerDesc {
		display: none;
	}



  .navbar {
    -webkit-transition: all 0.6s ease-out;
    -moz-transition: all 0.6s ease-out;
    -o-transition: all 0.6s ease-out;
    -ms-transition: all 0.6s ease-out;
    transition: all 0.6s ease-out;
    border-radius: 0px;
  }

  .navbar-brand {
    height: 400px;
  }

  .navbar-default .navbar-nav>li>a {
    color: #07d4de;
  }

  .navbar-default .navbar-nav>li>a:hover {
    color: #fff;

  }

  .navbar-default .navbar-toggle {
    border-color: #07d4de;
  }

  .navbar-toggler {
    padding: 0;
  }

  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: #07d4de;
    text-align: center;
  }

  @media screen and (max-width:992px){
  .navbar .navbar-collapse {
    position: relative;
    width: 100%;
  }
  }

}
@media (min-width:992px) {
	.top {
		background-image:url("../img/top.jpeg");
		background-size:cover;
		/* <------ */
		background-repeat:no-repeat;
		background-position:center center;
		box-shadow:inset 0 0 0 1000px #000F08d0;
		height:90vh;
		padding-top:2em;
	}
	.header-desc {
		display:block;
		color:white;
		text-align:left;
    font-size: 1.2em;
	}
	.header-desc-mob {
		display:none!important;
	}
	.header-l {
		display:flex;
		align-items:center;
		height:70vh;
    bottom: 3rem;
	}
	.header-r {
		display:flex;
		align-items:center;
		height:70vh;
	}
	.navbar {
		padding-left:0px;
		padding-right:0px;
	}
	.bg-light {
		background-color:transparent!important;
	}
	.navbar-brand {
		font-family:'Barlow Condensed';
		font-weight:600;
		padding-left:0px;
		font-size:2.2em;
		display:grid;
		color:white!important;
    height: auto;
	}
	.navbar-brand .text-muted {
		font-size:0.6em;
		color:white!important;
	}
	.nav-link {
		margin-left:2vw;
		padding:0px!important;
		font-family:Barlow Condensed;
		font-size:2.4em;
		color:white!important;
    border-bottom: 3px solid transparent;
	}
  .nav-link:hover {
    border-bottom: 3px solid white;
  }
	.badge {
		width:6em!important;
		margin-top:3rem;
		margin-bottom:3rem;
	}
	.badge-main {
		background-color:#1C3738;
	}
	.sequence {
		text-align:left;
		width:max-content;
		font-size:3em;
	}
	.align-middle {
		text-align: left;
	}
	/*** HEADER FORM ***/
	.form {
		background-color:#f5f5f5;
		margin:8.0em!important;
		margin-right:0!important;
		margin-left:auto!important;
		padding:2.0em!important;
		position:relative;
		height:auto;
		color:#37474f;
		display:inline!important;
		border-radius:0.5rem;
	}
	.form-header {
		text-align:center;
		font-size:2.2em;
		font-weight:600;
		line-height:1.2em;
		color:#3D5452!important;
		font-family:'Barlow Condensed'
	}
	.form-desc {
		text-align:center;
		color:#000F08;
		font-size:1.1em;
	}
	.form-i {
		color:#3D5452;
		font-size:2.2em!important;
		text-align:center;
		width:100%;
	}
	.form-p {
		text-align:center;
		font-size:1.1em;
		font-weight:bold;
		margin-bottom:0px;
	}

  .r-menu {
    display: none;
  }
}

@media (max-width: 1198px) {
  .form {
    margin: 2rem!important;
  }

  .form-header {
    font-size: 1.5em!important;
  }

  .form-desc {
    text-align:center;
    color:#000F08;
    font-size: 1em!important;
  }

  .form-p {
    font-size: 1em;
  }

  .permission {
    font-size: 0.85em;
  }
}
/*** FORM ***/
@media (min-width:0px) {
	.module-form {
		display: none;
	}
}
@media (min-width:992px) {
	.module-form {
		display:flex!important;
	}
	.col-4 {
		padding: 0;
	}
}
/*** READ ARROW ***/
.arrow {
	position:relative;
	bottom:-2em;
	left:50%;
	width:40px;
	height:40px;
	color:white!important;
}
.arrow .form-i {
	color:white!important;
}
@media (min-width:0px) {
	.arrow {
		width:80px;
		height:40px;
		margin-left:-20px;
	}
	.arrow .form-i {
		color:white!important;
		font-size:2.4em!important;
	}
}
@media (min-width:992px) {
	.arrow {
		display: none;
	}
}
/*** PERMISSIONS ***/
@media (min-width:0px) {
	.permissions {
		display:block;
		position:relative;
		background-color:#4D4847;
		padding-top:2.5rem;
		padding-bottom:5rem;
		max-width:100%;
	}
	.permissions-row {
		height:100%;
		display:grid!important;
	}
	.permissions p {
		margin-bottom:0px;
		font-size:1rem;
		font-weight:bold;
		text-align:left;
		display:table-cell;
		vertical-align:middle;
		height:5rem;
	}
	.permissions .permission {
		display:inline!important;
		align-items:center;
		background-color:white;
		padding:16px;
		margin-bottom:10px;
		border-radius:0.5rem;
	}
	.permissions i {
		float:left;
		font-size:3em;
		text-align:center;
		padding-right:31px;
		padding-top:15px;
		padding-bottom:15px;
		padding-left:15px;
		height:5rem;
	}
	.permissions .permission-label {
		color:white;
		font-weight:normal!important;
		background:transparent;
		max-width:100%;
	}
	.permissions .permission-label p {
		font-size:2.6em;
		color:white;
		text-align:center;
		font-family:'Barlow Condensed';
		font-weight:600;
		letter-spacing:0.001em;
		text-transform:uppercase;
		display:block;
	}
	.permission-label i {
		display:none;
	}
	.permission > i {
		position:relative;
	}
}
@media (min-width:992px) {
	.permissions {

		position:relative;
		border-radius:0.5em;
		height:7em;
		top:-4em;
		padding:0px !important;
		max-width:100%;
		background:transparent;
    margin-left: auto!important;
    margin-right: auto!important;
    display: table;
	}
	.permissions-row {
		display:flex!important;
		height:100%;
		-webkit-box-shadow:0px 0px 20px 10px #1C373840;
		-moz-box-shadow:0px 0px 20px 10px #1C373840;
		box-shadow:0px 0px 20px 10px #1C373840;
		border-radius:0.5em;
		background:transparent;
    padding: 0!important;
	}
	.permissions p {
		width:100%;
		margin-bottom:0px;
		font-size:1em;
		font-weight:bold;
		text-align:left;
		padding:0px;
    height: auto;
	}
	.permissions .permission {
		padding-left:0;
		height:100%;
		display:flex!important;
		align-items:center;
		background-color:white;
		box-shadow:inset -0.5em 0 1em -0.5em rgba(0,0,0,0.1);
		border-radius:0px;
		margin-left:0;
		padding-right:15px;
    margin-bottom: 0px;
	}
	.permissions i {
		padding-right:0.7em;
		padding-left:0.7em;
		width:auto;
		font-size:1.6em;
    height: auto;
	}
	.permissions .permission-label {
		border-radius:0.5em 0px 0px 0.5em!important;
		color:white;
		font-weight:normal!important;
		background-color:#4D4847;
	}
	.permissions .permission:last-of-type {
		border-radius:0em 0.5em 0.5em 0em;
		box-shadow:none;
	}
	.permissions .permission-label p {
		font-size:1.4em;
		color:white;
		max-width:100%;
		padding:0;
	}
	.permission:first-of-type i {
		display: inline;
	}

  .permission > i {
		position:relative;
		top: auto;
	}
}
/*** ABOUT ***/
@media (min-width:0px) {
	.about {
		margin-bottom:5em;
	}
	.about-row {
		padding:0 25px;
	}
	.about-row .col {
		display: contents;
	}
	.about-img {
		background-image:url("../img/about.jpg");
		background-size:cover;
		background-repeat:no-repeat;
		background-position:center center;
    -webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
		height:30vh;
		width:100%;
		max-width:100%;
		border-radius:0.5rem;
	}
	.about h2 {
		text-align:center;
		padding-top:1rem;
		padding-bottom:2rem;
	}
	.about p {
		position:relative;
		top:2em;
		font-size:1em;
		text-align:justify;
		text-justify:inter-word;
	}
	.about span {
		margin-left:auto!important;
		margin-right:0!important;
	}
	.image-container {
		padding:0;
	}
	.badge-main {
		background-color:#1C3738;
	}
}
@media (min-width:992px) {
	.about {
		margin-bottom:5rem;
		padding:0!important;
	}
	.about-row {
		padding:1em;
	}
	.about-row .col {
		display:block;
		padding:0;
		height: auto;
	}
	.about-img {
		background-image:url("../img/about.jpg");
		background-size:cover;
		/* <------ */
		background-repeat:no-repeat;
		background-position:center center;
		width:95%;
		position:relative;
		height:100%;
		-webkit-box-shadow:0px 0px 20px 10px #8BAAAD25;
		-moz-box-shadow:0px 0px 20px 10px #8BAAAD25;
		box-shadow:0px 0px 20px 10px #1C373820;
	}
	.about h2 {
		text-align:right;
		font-size:3.2rem;
		padding-bottom:1rem;
	}
	.about p {
		top:0rem;
		position:relative;
		font-size:1.2rem;
		text-align:justify;
		text-justify:inter-word;
		margin-bottom:0px;
	}
	.about span {
		margin-left:auto!important;
		margin-right: 0!important;
	}
}
/*** LOCATION ***/
@media (min-width:0px) {
	.location {
		margin-bottom:4rem;
	}
	.location-row {
		padding:0 25px;
	}
	.location-row .col {
		display:contents;
	}
	.location-map {
		height:30vh;
		width:100%;
		max-width:100%;
		border-radius:0.5rem;
	}
	.location h2 {
		text-align:center;
		padding-top:3rem;
		padding-bottom:2rem;
	}
	.location p {
		position:relative;
		top:2em;
		font-size:1em;
		text-align:justify;
		text-justify:inter-word;
	}
	.location span {
		margin-left:auto!important;
		margin-right:0!important;
	}
	.image-container {
		padding:0;
	}
	.badge-main {
		background-color:#1C3738;
	}
}
@media (min-width:992px) {
	.location {
		margin-bottom:5rem;
	}
	.location {
		padding:0!important;
	}
	.location-row {
		padding:1em;
	}
	.location-row .col {
		display:block;
		padding:0;
		height:auto;
	}
	.location-map {
		display:block;
		width:94%;
		height:100%;
		position:relative;
	}
	.location h2 {
		text-align:right;
		font-size:3.2rem;
		padding-top:5rem;
		padding-bottom:1rem;
	}
	.location p {
		top:0rem;
		position:relative;
		font-size:1.2rem;
		text-align:justify;
		text-justify:inter-word;
		margin-bottom:0px;
	}
	.location span {
		margin-left:auto!important;
		margin-right: 0!important;
	}
}
/*** SERVICES ***/
@media (min-width:0px) {
	.services {
		padding-top:4rem;
		padding-bottom:4rem;
		background:white;
	}
	.services .label {
		text-align:center;
	}
	.services .container {
		padding:0!important;
	}
	.services h2 {
		text-align:center;
		padding-bottom:1rem;
	}
	.services i {
		text-align:center;
		font-size:3rem;
	}
	.services p {
		padding:1em;
	}
	.services-row {
		margin:0!important;
	}
  .services-target-row {
    margin: 0!important;
  }
	.services-type {
		align-content:center;
		color:white;
		background-color:#1C3738;
		-webkit-box-shadow:0px 0px 20px 10px #8BAAAD25;
		-moz-box-shadow:0px 0px 20px 10px #8BAAAD25;
		box-shadow:0px 0px 20px 10px #1C373820;
		margin-bottom:10px;
		border-radius:0.5rem;
	}
	.services-type p {
		font-size:1em;
		font-weight:normal;
	}
	.icon-row {
		align-content:center;
		height:50%;
	}
	.p-row {
		height:50%;
	}
	.services-target {
		color:white;
		align-content:center;
	}
	.nested-type .col-sm-2 {
		max-width:20%;
	}
	.nested-type .col-sm-10 {
		max-width:80%;
	}
	.nested-type p {
		margin-bottom:0;
	}
	.nested-type i {
		position:absolute;
		top:50%;
		-ms-transform:translateY(-50%);
		transform:translateY(-50%);
	}
	.services-target .row {
		background-color:#4D4847;
		margin-left:0px!important;
		margin-right:0px!important;
		margin-bottom:1rem;
		border-radius:0.5rem;
	}
	.services-target .row .col-1 {
		padding-top:10px;
		padding-bottom:10px;
	}
	.services-target .row .col-10 {
		padding-left:0;
		font-size:0.925rem;
		padding-top:10px;
		padding-bottom: 10px;
	}

  .services-target-row .mx-3 {
      margin-left: 0rem!important;
  }

  .services-target-row .mx-3 {
      margin-right: 0rem!important;
  }
}
@media (min-width:992px) {
	/*** SERVICES ***/
	.services {
		padding-top:5em;
		padding-bottom:7.5em;
		background:white;
	}
	.services h2 {
		text-align:center;
		font-size:3.2rem;
	}
	.services i {
		text-align:center;
		font-size:6em;
		width:100%;
		color:#1C3738;
	}
	.services p {
		padding:1em;
		font-size:1.2em;
		text-align:center;
		font-weight:bold;
	}
	.services-type {
		align-content:center;
		color:#1C3738;
		background-color:#f5f5f5;
		-webkit-box-shadow:0px 0px 20px 10px #8BAAAD25;
		-moz-box-shadow:0px 0px 20px 10px #8BAAAD25;
		box-shadow:0px 0px 20px 10px #1C373820;
		animation:hover-bounce-back 1s forwards,bg-green-back 1s forwards;
	}
	.services-type p {
		font-size:1.15em;
		font-weight:normal;
	}
	.icon-row {
		align-content:center;
		height:50%;
	}
	.p-row {
		height:50%;
	}
	.services-target {
		padding:1.5rem!important;
		color:#1C3738;
		align-content:center;
		background-color:#f5f5f5;
		border-radius:0.5rem;
		-webkit-box-shadow:0px 0px 20px 10px #8BAAAD25;
		-moz-box-shadow:0px 0px 20px 10px #8BAAAD25;
		box-shadow:0px 0px 20px 10px #1C373820;
		animation:hover-bounce-back 1s forwards,bg-brown-back 1s forwards;
	}
	.services-type:hover {
		animation:hover-bounce 1s forwards,bg-green 1s forwards;
	}
	.services-target:hover {
		animation:hover-bounce 1s forwards,bg-brown 1s forwards;
	}
	.services-type:hover {
		color:white!important;
		background-color:#1C3738;
	}
	.services-type:hover i {
		color:white!important;
	}
	.services-target:hover {
		background-color:#4D4847;
		color:white!important;
	}
	.services-target:hover i {
		color:white!important;
	}
	.nested-type .col-sm-2 {
		max-width:100%;
	}
	.nested-type .col-sm-10 {
		max-width:100%;
	}
	.nested-type i {
		position:relative;
		top:60%;
	}
	.services-target .row {
		font-size:1.15rem!important;
		background-color:transparent;
		margin-bottom:0rem;
	}
	.services-target .col-lg-11 {
		font-size:1.15rem!important;
	}
	.services-target .row .col-1 {
		padding-top:0px;
		padding-bottom:0px;
	}
	.services-target .row .col-lg-11 {
		padding-top:0px;
		padding-bottom: 0px;
	}

  .services-target-row .mx-3 {
      margin-left: 1rem!important;
  }

  .services-target-row .mx-3 {
      margin-right: 1rem!important;
  }
}
/*** FOOTER ***/
@media (min-width:0px) {
	footer {
		background-color:#1C3738;
		height:auto;
	}
	footer .label {
		font-size:1.75em;
		font-weight: 600;
		color:white;
    font-family:'Barlow Condensed';
    text-align: center;
	}
	footer .label p {
		margin-bottom:0.35em!important;
	}
	.label-desc {
		font-size: 1rem!important;
    text-align: center;
		color:white;
	}

  footer a p{
    padding-top:0.2em;
    list-style:none;
    color:white;
    font-size:1.25rem;
    font-family:'Barlow Condensed';
    text-align: center;
  }
	.footer-nav i {
		padding-left:0em;
		font-size:1em;
    text-align: center;
    color: white;
	}
	.footer-contact {
		color:white;
		font-size:1.15em;
		padding-top:0.2em;
		padding-left:0;
		list-style:none;
		text-align: center;
	}
	.footer-contact i {
		position:relative;
		padding-right:0em;
		font-size:1.5em;
	}
	.contact-li {
		padding-left:0;
		padding-bottom:1.5em;
		height:100%;
		display: contents;
		align-items: center;
    text-align: center;

	}
	.contact-li p {
		margin-bottom: 0;
	}

  .footer-nav .contact-li i{
    width: 100%;
  }

  .footer-contact .contact-li p {
  		margin-bottom: 2rem;
  	}
	/*** ANIMATIONS ***/

	.loadme {
		opacity:0;
		padding-top:100px;
	}

  .d-load, .hideme, .fade-in {
    opacity:0;
  }

  .m-hidden {
    display: none;
  }
}

@media (min-width: 992px) {
  .m-hidden {
    display: block;
  }

  footer .label {
    font-size: 2rem;
    font-weight: 600;
    color:white;
    font-family:'Barlow Condensed';
    text-align: left;
  }
  footer .label p {
    margin-bottom:0.35em!important;
  }
  .label-desc {
    font-size: 1.25rem!important;
    color:white;
    text-align: left;
  }

  footer .footer-nav a p {
    font-size:1.5rem;
    text-align: left;
    border-bottom: 2px solid transparent;
  }

  footer .footer-nav a p:hover {
    font-weight: 600;
  }

  .footer-nav a i {
    padding-left:0.25em;
    font-size: 1.75rem;
    text-align: center;
    padding-top: 0.2rem;
    color: white;
  }

.footer-nav a:hover p {
  font-weight: 500!important;
  border-bottom: 2px solid white;
  width: fit-content;
}

  .footer-contact {
    color:white;
    font-size:1.15em;
    padding-top:0.2em;
    padding-left:0;
    list-style:none;
    text-align: left;
  }
  .footer-contact i {
    position:relative;
    padding-right:1em;
    font-size:1.5em;
  }
  .contact-li {
    padding-left:0;
    padding-bottom:1.5em;
    height:100%;
    display: flex;
    align-items: center;
    text-align: left;

  }

  .footer-contact .contact-li p {
      margin-bottom: 0rem;
    }

  .footer-nav .contact-li i {
    width: auto;
  }
}


.bounce {
	animation: bounce 3s infinite;
}

@keyframes bounce {
	0%,20%,50%,80%,100% {
		transform:translateY(0);
	}
	40% {
		transform:translateY(-15px);
	}
	60% {
		transform:translateY(-10px);
	}
}
@keyframes hover-bounce {
	0% {
		transform:translateY(0);
	}
	100% {
		transform:translateY(-15px);
	}
}
@keyframes hover-bounce-back {
	0% {
		transform:translateY(-15px);
	}
	100% {
		transform:translateY(0px);
	}
}
@keyframes bg-green {
	0% {
		background-color:#f5f5f5;
	}
	100% {
		background-color:#1C3738;
	}
}
@keyframes bg-green-back {
	0% {
		background-color:#1C3738;
	}
	100% {
		background-color:#f5f5f5;
	}
}
@keyframes bg-brown {
	0% {
		background-color:#f5f5f5;
	}
	100% {
		background-color:#4D4847;
	}
}
@keyframes bg-brown-back {
	0% {
		background-color:#4D4847;
	}
	100% {
		background-color: #f5f5f5;
	}
}

html {
  scroll-behavior: smooth;
}
