@import url(https://fonts.googleapis.com/css2?family=Marcellus&display=swap);
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Bold.eot");
  src: url("../fonts/Montserrat-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Bold.woff2") format("woff2"), url("../fonts/Montserrat-Bold.woff") format("woff"), url("../fonts/Montserrat-Bold.ttf") format("truetype");
  font-weight: 700;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Medium.eot");
  src: url("../fonts/Montserrat-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Medium.woff2") format("woff2"), url("../fonts/Montserrat-Medium.woff") format("woff"), url("../fonts/Montserrat-Medium.ttf") format("truetype");
  font-weight: 500;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-SemiBold.eot");
  src: url("../fonts/Montserrat-SemiBold.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-SemiBold.woff2") format("woff2"), url("../fonts/Montserrat-SemiBold.woff") format("woff"), url("../fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
}
@font-face {
  font-family: "Montserrat";
  src: url("../fonts/Montserrat-Regular.eot");
  src: url("../fonts/Montserrat-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Montserrat-Regular.woff2") format("woff2"), url("../fonts/Montserrat-Regular.woff") format("woff"), url("../fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
}
html {
  scroll-behavior: smooth;
}

body {
  font-family: "Montserrat", sans-serif !important;
  margin: 0px !important;
  padding: 0px !important;
  width: 100% !important;
}

a,
.row,
.navbar,
.container-fluid {
  padding: 0 !important;
  margin: 0 !important;
}

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4,
.col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg,
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2,
.col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7,
.col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1,
.col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3,
.col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8,
.col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10,
.col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4,
.col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9,
.col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11,
.col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5,
.col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
  padding: 0 !important;
  margin: 0 !important;
}

.heading4, .team p, .marketing h4, .businessService .businessLeft h4 {
  color: #bda481 !important;
  text-transform: uppercase;
  letter-spacing: 6px;
  margin-bottom: 24px;
  font-size: clamp(0.9rem, 1vw, 1rem);
}

.heading3, .ceo .portraitCeo .portraitText h3, .photoTriplex .triplexDiv .triplexText h3 {
  text-transform: capitalize;
  font-size: clamp(1.4rem, 2.5vw, 1.6rem);
}

.heading2, .team h4, .marketing h2, .businessService h2 {
  font-size: 40px;
  line-height: 50px;
  letter-spacing: 1px;
  margin-bottom: 66px !important;
  font-size: clamp(1.7rem, 3.3vw, 2.4rem);
  color: #14203B !important !important;
  font-family: "Marcellus", serif;
}

.heading1, .container-fluid .heroCta h1 {
  color: #fff !important;
  font-size: clamp(2rem, 5vw, 3.5rem);
}

.parFontSize, .ceo .portraitCeo .portraitText p, .marketing p, .photoTriplex .triplexDiv .triplexText p, .businessService .businessLeft p {
  font-size: clamp(0.9rem, 1.6vw, 1.1rem);
}

.container-fluid {
  background: url("../images/halsteinHero.jpg") no-repeat 50% 10%;
  background-size: cover;
  height: 100% !important;
  width: 100%;
}
.container-fluid nav {
  height: 140px;
  max-width: 1440px;
  border-bottom: solid 0.5px #bda481 !important;
}
.container-fluid nav img {
  width: 230px;
}
.container-fluid nav .imgSmall {
  display: none;
}
.container-fluid nav .imgLarge {
  display: block;
}
.container-fluid nav .navbarRight ul li {
  margin-left: 60px;
  padding-top: 58px !important;
  padding-bottom: 58px !important;
}
.container-fluid nav .navbarRight ul li .active {
  color: #fff !important;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.container-fluid nav .navbarRight ul li .active:before {
  content: "";
  width: 30px;
  position: absolute;
  top: calc(50% - 1px);
  background-color: currentColor;
  height: 1px;
  left: -40px;
  transform: scaleX(1);
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.container-fluid nav .navbarRight ul li .dropdown-menu {
  margin-top: 0;
  padding: 20px !important;
  border-radius: 0 !important;
  border: 1px solid #bda481 !important;
}
.container-fluid nav .navbarRight ul li .dropdown-menu a {
  color: #bda481 !important;
  padding-bottom: 15px !important;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  letter-spacing: 5px;
  width: 100%;
  left: 0;
  position: relative;
}
.container-fluid nav .navbarRight ul li .dropdown-menu a:before {
  content: "";
  opacity: 0;
}
.container-fluid nav .navbarRight ul li .dropdown-menu a:hover {
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  background-color: #fff !important;
  left: 12px !important;
  color: #bda481 !important;
}
.container-fluid nav .navbarRight ul li .dropdown-menu a:hover:before {
  content: "";
  opacity: 0;
}
.container-fluid nav .navbarRight ul li a {
  color: #fff !important;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.8px;
  display: flex;
  align-items: center;
}
.container-fluid nav .navbarRight ul li a:before {
  display: block;
  content: "";
  width: 30px;
  position: absolute;
  top: calc(50% - 1px);
  background-color: currentColor;
  height: 1px;
  left: -40px;
  transform: scaleX(0);
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transform-origin: 0% 100%;
}
.container-fluid nav .navbarRight ul li a:hover {
  color: #fff !important;
}
.container-fluid nav .navbarRight ul li a:hover:before {
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  transform: scaleX(1);
}
.container-fluid nav .desktopMenuIcon a {
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.container-fluid nav .desktopMenuIcon a:before {
  content: "";
  opacity: 0;
}
.container-fluid nav .desktopMenuIcon a:hover {
  transform: scale(1.4);
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.container-fluid nav .desktopMenuIcon a:hover:before {
  content: "";
  opacity: 0;
}
.container-fluid .dropdown:hover .dropdown-menu {
  display: block;
  opacity: 1;
}
.container-fluid .heroCta {
  padding-top: 7% !important;
  padding-bottom: 18% !important;
}
.container-fluid .heroCta p {
  color: #ecdfcc !important;
  text-transform: uppercase;
  font-weight: 500;
}
.container-fluid .heroCta img {
  width: 40% !important;
}
.container-fluid .heroCta button {
  width: 200px;
  margin-top: 5%;
  border: none;
  padding: 10px 25px;
  color: #bda481 !important;
  border: 1px solid transparent;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.container-fluid .heroCta button:hover {
  background-color: transparent;
  color: #fff !important;
  border: 1px solid #fff !important;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}

.desktopMenu {
  background: url("../images/sidearea-img-01.jpg") no-repeat;
  background-size: cover;
  width: 400px;
  height: 100%;
  position: fixed;
  top: 0;
  right: -400px;
  border-radius: 10px 0 0 10px;
  transition: right 0.8s;
  padding: 25vh 40px 40px 40px;
  z-index: 2;
}
.desktopMenu .hamburgerMenu {
  position: absolute;
  top: 5%;
  right: 15%;
  width: 35px;
  height: 30px;
  cursor: pointer;
}
.desktopMenu .sideMenuHeader .imgLarge {
  width: 150px;
}
.desktopMenu .sideMenuHeader p {
  margin-top: 10px;
  margin-bottom: 10px;
  color: #fff !important;
}
.desktopMenu .sideMenuList {
  display: flex;
  flex-direction: row;
}
.desktopMenu .sideMenuList a {
  margin: 10px !important;
  padding: 10px !important;
  text-decoration: none;
  color: #fff !important;
  border: 1px solid #bda481 !important;
}
.desktopMenu .sideMenuContacts {
  display: flex;
  flex-direction: column;
  margin-bottom: 40px !important;
}
.desktopMenu .sideMenuContacts a {
  margin-bottom: 5px !important;
  padding: 0 !important;
  text-decoration: none;
  color: #fff !important;
}

.line {
  width: 100%;
  height: 3px;
  background-color: #bda481 !important;
  transition: all 0.8s;
}

.change {
  right: 0;
}

.slider {
  margin-top: -10% !important;
}

.businessService {
  margin-top: 10% !important;
  margin-bottom: 8% !important;
  color: #14203B !important;
}
.businessService .businessLeft .businessFields {
  position: relative;
}
.businessService .businessLeft .businessFields .even {
  padding-bottom: 7% !important;
}
.businessService .businessLeft .businessFields .businessFieldsNumber {
  position: absolute;
  top: 0;
  color: #ecdfcc !important;
  font-size: 20px !important;
  font-weight: 700;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 80px;
  z-index: -2;
}

.photoTriplex {
  background-color: #B29063 !important;
  margin-top: 25% !important;
  padding-bottom: 10% !important;
}
.photoTriplex .triplexDiv {
  margin-top: -20% !important;
  background-position: center;
  position: relative;
  height: max(600px, 45vw);
}
.photoTriplex .triplexDiv:nth-child(1) {
  background: url("../images/triplex1.jpg") no-repeat 50% 50%;
  transform: scale(1);
  background-size: cover;
}
.photoTriplex .triplexDiv:nth-child(2) {
  background: url("../images/triplex2.jpg") no-repeat 50% 50%;
  transform: scale(1);
  background-size: cover;
}
.photoTriplex .triplexDiv:nth-child(3) {
  background: url("../images/triplex3.jpg") no-repeat 50% 50%;
  transform: scale(1);
  background-size: cover;
}
.photoTriplex .triplexDiv .triplexText {
  color: #fff !important;
  opacity: 0;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  margin-left: 7% !important;
}
.photoTriplex .triplexDiv .triplexText h3 {
  letter-spacing: -1px;
  margin-top: 60% !important;
  margin-left: 7% !important;
}
.photoTriplex .triplexDiv .triplexText p {
  text-transform: uppercase;
  letter-spacing: 5px;
  font-weight: 700;
  margin-left: 7% !important;
}
.photoTriplex .triplexDiv:hover .triplexText {
  opacity: 1;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.photoTriplex .triplexDiv:hover .overlay {
  opacity: 1;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}
.photoTriplex .overlay {
  position: absolute;
  bottom: 0%;
  left: 0%;
  width: 100%;
  height: 60%;
  opacity: 0;
  background: rgb(2, 0, 36);
  background: linear-gradient(0deg, rgb(23, 23, 23) 0%, rgba(59, 59, 59, 0.457) 43%, rgba(0, 0, 0, 0) 100%);
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}

.marketing {
  background-color: #B29063 !important;
  width: 100%;
  height: 600px;
  padding-bottom: 33% !important;
}
.marketing img {
  padding-right: 20px !important;
  padding-bottom: 20px !important;
  border-right: 1px solid #bda481 !important;
  border-bottom: 1px solid #bda481 !important;
}
.marketing h4 {
  color: #ecdfcc !important;
}
.marketing h2 {
  color: #fff !important;
}
.marketing p {
  color: #fff !important;
  padding: 30px 2em 20px 0 !important;
}
.marketing a {
  color: #fff !important;
  font-size: clamp(0.7rem, 1.2vw, 0.8rem);
}
.marketing a:after {
  content: " >";
  position: relative;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  left: 0;
}
.marketing a:hover {
  text-decoration: none;
  color: #fff !important;
}
.marketing a:hover:after {
  left: 3px !important;
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
}

.ceo {
  margin-top: -25% !important;
  margin-bottom: 5% !important;
}
.ceo .portraitCeo {
  background: url("../images/ceoportrait.png") no-repeat 50% 50%;
  background-size: cover;
  width: 100%;
  height: max(600px, 45vw);
  position: relative;
}
.ceo .portraitCeo .portraitText {
  position: absolute;
  bottom: 5%;
  left: 5%;
}
.ceo .portraitCeo .portraitText h3 {
  color: #fff !important;
}
.ceo .portraitCeo .portraitText p {
  color: #fff !important;
  font-weight: 500;
  letter-spacing: 5px;
}

.team {
  margin-bottom: 10% !important;
}
.team .card {
  border: none !important;
  width: 90% !important;
}
.team h4 {
  padding-top: 5% !important;
  font-size: clamp(1.3rem, 2vw, 1.4rem);
  letter-spacing: 1px;
  margin-bottom: 0 !important;
}
.team p {
  font-weight: 500;
  color: #14203B !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  font-size: clamp(0.6rem, 0.8vw, 0.9rem) !important;
  letter-spacing: 4px;
}
.team .lastRow {
  position: relative;
}
.team .inIcon {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: #B29063 !important;
  color: #fff !important;
  padding: 1px !important;
  letter-spacing: 0 !important;
  text-transform: lowercase;
}

footer {
  background: url("../images/footer.jpg") no-repeat 50% 50%;
  background-size: cover;
}
footer .footerContent {
  padding-top: 12% !important;
  padding-bottom: 12% !important;
  color: #fff !important;
  position: relative;
}
footer .footerContent .companyInfo img {
  padding-bottom: 30px !important;
}
footer .footerContent .companyInfo p {
  padding-bottom: 30px !important;
}
footer .footerContent .companyInfo a {
  color: #AF8D60 !important;
  padding: 5px !important;
  background-color: #fff !important;
  border-radius: 50%;
  border: 1px solid transparent;
}
footer .footerContent .companyInfo a:hover {
  text-decoration: none;
  background-color: #AF8D60 !important;
  color: #fff !important;
  border: 1px solid #fff !important;
}
footer .footerContent .links h5 {
  font-family: "Marcellus", serif;
  letter-spacing: 2px;
  padding-top: 10px !important;
  padding-bottom: 15px !important;
}
footer .footerContent .links a {
  color: #fff !important;
  padding-bottom: 10px !important;
  font-size: clamp(0.8rem, 1.3vw, 1rem);
}
footer .footerContent .links a:hover {
  text-decoration: none;
}
footer .footerContent .links .footerForm {
  border-bottom: 1px solid #fff !important;
  padding-bottom: 15px !important;
}
footer .footerContent .links input[type=text] {
  background: rgba(0, 0, 0, 0) !important;
  border: none !important;
  outline: none !important;
  width: 100px;
  color: #fff !important;
}
footer .footerContent .links input[type=text]::-moz-placeholder {
  color: #fff !important;
}
footer .footerContent .links input[type=text]:-ms-input-placeholder {
  color: #fff !important;
}
footer .footerContent .links input[type=text]::placeholder {
  color: #fff !important;
}
footer .footerContent .links button {
  border: none;
  background: transparent;
}
footer .footerContent .links button:after {
  color: #fff !important;
  content: "| >";
}
footer .arrow a {
  position: absolute;
  top: -5px;
  right: 0;
  font-size: 40px !important;
  color: #fff !important;
}
footer .arrow a a:hover {
  text-decoration: none;
}
footer .arrow a i:hover {
  transform: rotate(360deg);
  transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -webkit-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  -ms-transition: 0.3s ease-in-out;
  text-decoration: none;
}
footer .copyright {
  margin: 0 !important;
  padding: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: #fff !important;
}
footer .copyright p {
  margin: 0 !important;
  padding: 4% 0 !important;
  font-size: clamp(0.7rem, 1vw, 0.8rem);
}
footer .copyright a {
  color: #fff !important;
  text-transform: uppercase;
  padding-right: 10px !important;
  font-size: clamp(0.65rem, 1.1vw, 0.9rem);
}
footer .copyright a:hover {
  text-decoration: none;
}
footer .copyright a:not(:last-child):after {
  content: " |";
}

@media (max-width: 1199.9px) {
  .container-fluid {
    background: url("../images/halsteinHero.jpg") no-repeat 80% 0%;
  }
  .container-fluid .navWrapper {
    background-color: #fff !important;
    height: auto;
    padding-top: 25px !important;
    padding-bottom: 25px !important;
    padding-right: max(10px, 5%) !important;
    padding-left: max(10px, 5%) !important;
  }
  .container-fluid .navWrapper nav {
    border-bottom: none !important;
    height: auto;
  }
  .container-fluid .navWrapper nav .imgSmall {
    display: block;
    width: 180px;
  }
  .container-fluid .navWrapper nav .imgLarge {
    display: none;
  }
  .container-fluid .navWrapper nav .navbarRight {
    width: 100%;
  }
  .container-fluid .navWrapper nav .navbarRight ul li {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-left: 0 !important;
  }
  .container-fluid .navWrapper nav .navbarRight ul li .dropdown-menu {
    border: 0 !important;
  }
  .container-fluid .navWrapper nav .navbarRight ul li a {
    color: #bda481 !important;
    padding-top: 15px !important;
  }
  .container-fluid .navWrapper nav .navbarRight ul li a:before {
    content: "";
    opacity: 0;
  }
  .container-fluid .navWrapper nav .navbarRight ul li a .dropdown-item a {
    padding: 0 !important;
  }
  .desktopMenu,
.desktopMenuIcon {
    display: none;
  }
  .companyInfo {
    padding-bottom: 10% !important;
  }
  .links {
    padding-bottom: 8% !important;
  }
}
@media (max-width: 767.98px) {
  .heroCta {
    margin-top: 15% !important;
    height: 60vh;
  }
  .slider {
    padding: 0 5% 0 5% !important;
  }
  .businessService .businessLeft .businessFields p {
    padding-bottom: 5% !important;
  }
  .businessService .businessLeft .businessFields .even {
    padding-left: 0 !important;
    padding-bottom: 0 !important;
  }
  .photoTriplex .triplexDiv {
    max-height: 400px;
  }
  .marketing img {
    margin-top: 60px !important;
  }
  .marketing p {
    margin-right: 30% !important;
  }
  .copyright .copyrightRight {
    justify-content: start !important;
    padding-bottom: 10px !important;
  }
}
@media (max-width: 575.98px) {
  .slider {
    margin-top: -25% !important;
  }
  .photoTriplex .triplexDiv {
    max-height: 600px;
  }
  .photoTriplex .triplexDiv .triplexText h3 {
    margin-top: 30% !important;
  }
}
