/*-----
* 
* base stylesheet 
* by Matthew Boyles
* https://www.embeemedialab.com
* 
-----*/

@font-face {
  font-family: 'Hind';
  src: url('/assets/fonts/Hind-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: 'Hind';
  src: url('/assets/fonts/Hind-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: 'Hind';
  src: url('/assets/fonts/Hind-Bold.ttf') format('truetype'); 
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'Montserrat';
  src: url('../assets/fonts/Montserrat-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
}

:root {
  --primary: ##003049; 
  --secondary: #00141E;
  --accent: #6f1a07;
  --gold: #c7b151;
	--alt-blue: #bfd7ea;
	--gray: #5a5e67;
  --white: #f8f8f8;
  --white-2: #fdf0d5;
  --black: #121212;
  --heading: "Montserrat", serif;
  --text: 'Hind', sans-serif;
  --text-color: #121212;

}

/**-reset-**/
*, *::before, *::after {
  box-sizing: border-box;
}
* {
  margin: 0;
}
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}
input, button, textarea, select {
  font: inherit;
}
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
#root, #-next {
  isolation: isolate;
}
/*--common.styles--*/
html {
  font-size: 16px;
}
body {
	font-family: var(--text);
	font-size: 1rem;
	color: #121212;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--heading);
}
a,
a:hover,
a:active,
a:focus {
	text-decoration: none;
}
.page-wrapper {
	position: relative;
	margin: 0 auto;
	width: 100%;
	min-width: 300px;
	overflow: hidden;
}

@media (min-width: 1200px) {
	.container {
		max-width: 1200px;
	}
}
.hapl-heading {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}
.hapl-display {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 800;
  font-style: normal;
}
.hapl-sub {
  font-family: "Montserrat", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.hapl-text {
  font-family: "Hind", serif;
  font-weight: 500;
  font-style: normal;
}
/* Block Title */
.block-title p {
	margin: 0;
	font-size: 1rem;
	line-height: 1rem;
	font-weight: bold;
	color: var(--text-color);
	text-transform: uppercase;
	letter-spacing: 0.15em;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
}
.block-title p::before {
	content: "";
	width: 60px;
	height: 2px;
	background-color: var(--gold);
	display: block;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.block-title h3 {
	font-family: var(--heading);
	font-weight: bold;
	color: var(--text-color);
	font-size: 3rem;
	margin: 0;
	margin-top: 25px;
}
.block-title-two {
	margin-bottom: 60px;
	position: relative;
	padding-top: 170px;
}
@media (max-width: 767px) {
	.block-title-two {
		padding-top: 120px;
	}
}
.block-title-two-line {
	width: 2px;
	height: 110px;
	background-color: var(--gold);
	position: absolute;
	top: -55px;
	left: calc(50% - 1px);
}
.block-title-two p {
	margin: 0;
	font-size: 1rem;
	line-height: 1em;
	font-weight: bold;
	color: var(--text-color);
	text-transform: uppercase;
	letter-spacing: 0.15em;
	margin-bottom: 30px;
}
.block-title-two h3 {
	font-family: var(--heading);
	font-weight: bold;
	color: var(--secondary);
	font-size: 44px;
	margin: 0;
}
/*--helpers--*/
.text-sm {
  font-size: 0.875rem; /* 14px */
  color: #454545;
}
.text-lg {
  font-size: 1.25rem; /* 20px */
}
.text-xl {
  font-size: 1.5rem; /* 24px */
}

/*-shadows-*/
.section-shadow{
	box-shadow: rgba(0, 0, 0, 0.45) 0px 25px 20px -20px; 
}
/*--preloader--*/
.preloader {
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: #fff;
	top: 0;
	left: 0;
	z-index: 99999999;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	        justify-content: center;
}
.lds-ripple {
	display: inline-block;
	position: relative;
	width: 80px;
	height: 80px;
}
.lds-ripple div {
	position: absolute;
	border: 4px solid var(--primary);
	opacity: 1;
	border-radius: 50%;
	-webkit-animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
	        animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
.lds-ripple div:nth-child(2) {
	-webkit-animation-delay: -0.5s;
	        animation-delay: -0.5s;
}
@-webkit-keyframes lds-ripple {
	0% {
		top: 36px;
		left: 36px;
		width: 0;
		height: 0;
		opacity: 1;
	}
	100% {
		top: 0px;
		left: 0px;
		width: 72px;
		height: 72px;
		opacity: 0;
	}
}
@keyframes lds-ripple {
	0% {
		top: 36px;
		left: 36px;
		width: 0;
		height: 0;
		opacity: 1;
	}
	100% {
		top: 0px;
		left: 0px;
		width: 72px;
		height: 72px;
		opacity: 0;
	}
}
/*-cursor-*/
.cursor {
	position: absolute;
	background-color: #fff;
	width: 6px;
	height: 6px;
	border-radius: 100%;
	z-index: 1;
	-webkit-transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	transition: 0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform,
		0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity;
	transition: 0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform,
		0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.3s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	z-index: 10000;
	-webkit-transform: scale(1);
	transform: scale(1);
	visibility: hidden;
}
.cursor {
	visibility: visible;
}
.cursor.active {
	opacity: 0.5;
	-webkit-transform: scale(0);
	transform: scale(0);
}
.cursor.hovered {
	opacity: 0.08;
}
.cursor-follower {
	position: absolute;
	background-color: RGBA(255, 255, 255, 0.3);
	width: 50px;
	height: 50px;
	border-radius: 100%;
	z-index: 1;
	-webkit-transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	transition: 0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform,
		0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity;
	transition: 0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) transform,
		0.2s cubic-bezier(0.75, -0.27, 0.3, 1.33) opacity,
		0.6s cubic-bezier(0.75, -1.27, 0.3, 2.33) -webkit-transform;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	z-index: 10000;
	visibility: hidden;
}
.cursor-follower {
	visibility: visible;
}
.cursor-follower.active {
	opacity: 0.7;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.cursor-follower.hovered {
	opacity: 0.08;
}
.cursor-follower.close-cursor:before {
	position: absolute;
	content: "";
	height: 25px;
	width: 2px;
	background: #fff;
	left: 48%;
	top: 12px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	display: inline-block;
}
.cursor-follower.close-cursor:after {
	position: absolute;
	content: "";
	height: 25px;
	width: 2px;
	background: #fff;
	right: 48%;
	top: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*--navigation--*/
.navbar{
  padding-top: 20px; 
  padding-bottom: 20px;
	position: relative;
}
.navbar .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1050;
}

/* For nested dropdowns (like .dropend) */
.navbar .dropdown-menu .dropdown-menu {
  left: 100%;
  top: 0;
}


/*-buttons-*/
.btn {
	display: inline-block;
	vertical-align: middle;
	border: none;
	outline: none;
	color: #ffffff;
	font-size: 17px;
	font-weight: 600;
	background-color: var(--primary);
	padding: 13.5px 36.5px;
	text-align: center;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
}
.btn:hover {
	background-color: #fff;
	color: var(--primary);
}
.btn-two{
  background-color: #c7b151;
	color: #121212;
}
.btn-two:hover{
	background-color: var(--secondary);
	color: var(--gold);
}
.btn-menu {
  background-color: var(--primary);
  color: var(--white);     /* #003049 */
  font-size: 1.1rem;
  padding: 0.75rem 1.5rem;
  border: 2px solid var(--primary);
  transition: 
    background-color 0.3s ease,
    color 0.3s ease,
    transform 0.2s ease,
    box-shadow 0.3s ease;
}

.btn-menu:hover {
  background-color: var(--white);
  color: var(--primary);
  border: 2px solid var(--primary);
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.3);
}
/*-img-*/
.side-img{
	padding: 0;
	margin: 0;
	border-radius: 14px;
}
/*-dividers-*/
.seperation{
	height: 75px; 
	background-color: #000;
}
/*--- 
forms
---*/
/*-contact.one.box-*/
.contact-one-box+.contact-one-box {
	margin-top: 40px;
}
.contact-one-box h3 {
	font-size: 1.9rem;
	font-weight: bold;
	margin: 0;
	color: var(--white);
	margin-bottom: 20px;
}
.contact-one-box p {
	margin: 0;
	font-size: 1.2rem;  
	line-height: 28px;
	color: #fff;
}
.contact-one-box p+p {
	margin-top: 15px;
}
.contact-one-box p a {
	color: inherit;
	-webkit-transition: all 500ms ease;
	transition: all 500ms ease;
}
.contact-one-box p a:hover {
	color: var(--gold);
}
.contact-one-box-social {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
}
.contact-one-box-social a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	        justify-content: center;
	width: 45px;
	height: 45px;
	color: #fff;
	font-size: 14px;
	background-color: rgba(199, 177, 91, .09);
	-webkit-transition: 500ms;
	transition: 500ms;
  border-radius: 24px; 
}
.contact-one-box-social a:hover {
	background-color: var(--gold);
	color: var(--primary);
}
.contact-one-box-social a+a {
	margin-left: 10px;
}
.contact-one-form textarea,
.contact-one-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]) {
	width: 100%;
	border: none;
	height: 60px;
	border: 1px solid #e5e5e5;
	color: #444444;
	outline: none;
	padding-left: 20px;
	margin-bottom: 30px;
  border-radius: 8px;
}
.contact-one-form textarea,
.contact-one-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):active {
  border: 2px solid var(--gold);
}
.contact-one-form ::-webkit-input-placeholder {
	opacity: 1;
	color: #000;
}
.contact-one-form ::-moz-placeholder {
	opacity: 1;
	color: #444;
}
.contact-one-form :-ms-input-placeholder {
	opacity: 1;
	color: #444;
}
.contact-one-form ::-ms-input-placeholder {
	opacity: 1;
	color: #444;
}
.contact-one-form ::placeholder {
	opacity: 1;
	color: #444;
}
.contact-one-form textarea {
	height: 165px;
	padding-top: 15px;
  border-radius: 24px;
}
.contact-one-btn:hover {
	background-color: var(--alt);
	color: #fff;
}
.contact-sub-btn{
  background-color: var(--alt);
}
.contact-sub-btn:hover{
  background-color: #ffffff;
  color: var(--primary);
}
.contact-one-form .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn) {
	width: 100%;
}
.contact-one-form .bootstrap-select>.dropdown-toggle {
	height: 60px;
	border-radius: 0;
	border: 1px solid #e5e5e5;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
	padding-left: 20px;
	background-color: transparent;
}
.contact-one-form .bootstrap-select .dropdown-toggle .filter-option {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	        align-items: center;
}
.contact-one-form .dropdown-toggle::after {
	position: absolute;
	top: 50%;
	right: 20px;
	-webkit-transform: translateY(-3px);
	        transform: translateY(-3px);
}
.btn-contact{
	background-color: var(--white-2);
}
.btn-contact-alt{
	background-color: var(--alt-blue);
	color: var(--secondary);
}
.btn-contact-alt:hover{
	background-color: var(--gold);
	color: var(--secondary);
}
/*-pre.footer-*/
.pre-footer {
	padding-top: 117px;
	padding-bottom: 127px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-image: linear-gradient( 177.6deg,  rgba(1,0,62,1) 15.3%, rgba(20,0,113,1) 91.3% );  	box-shadow: 0px 20px 50px 0px rgba(33, 37, 43, 0.1);
}
.pre-footer-btn-block {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	        align-items: center;
	margin-top: 35px;
}
.pre-footer h3 {
	margin: 0;
	color: var(--white);
	font-size: 50px;
	margin-bottom: 20px;
}
.pre-footer p {
	margin: 0;
	font-size: 1.5rem;
	line-height: 28px;
	color: var(--white-2);
}
.pre-footer-btn-one {
	border: 2px solid var(--secondary);
	color: var(--secondary);
	background-color: var(--white); 
	padding: 11.5px 34.5px;
	margin-right: 15px;
}
.pre-footer-btn-one:hover {
	border: 2px solid var(--secondary);
	color: var(--white);
	background-color: var(--secondary); 
	padding: 11.5px 34.5px;
	margin-right: 15px;
}
/*-footer-*/
.footer-nav{
	font-family: var(--text);
	font-size: 1.3rem;
	color: var(--secondary);
	font-weight: 500;
}

/* ------- Divider -------- */
.footer-divider {
  display: block;
  width: 90%;
  height: 1px;
  background: var(--secondary);
  margin: 1rem auto 1rem;
}



