/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Vars
# Colors
# Typography & Resets
# Utility Classes
# Lazy Load
# Header
# Navigation
# Button Styling
# General Styles
# General Sections
# Footer
# Media Queries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Vars
--------------------------------------------------------------*/
:root {
    --color-white: #fff;
    --color-offwhite: rgba(242, 239, 235, 0.4);
    --color-cream: #EEE9E1;
    --color-black: #000;
    --color-slate: #3E4C5E;
    --color-sage: #627264;
    --color-forest-green: #313932;   
    --color-burnt-mauve: #6F6159;
    --color-tan: #D4C7B4;
    --color-dark-tan: #D9D0C7;
    --plyr-color-main: #627264;
    --font-size-primary-heading: 65px;  /* 65px */
    --font-size-secondary-heading: min(calc(1.4rem + 1.2vw), 2.814rem);  /* 45px */   
    --font-size-tertiary-heading: min(calc(2.1rem + 1.5vw), 2.2rem); /* 35px */
    --font-size-quartary-heading: 20px;  /* 20px */
    --font-size-quinary-heading: 18px; /* 18px */ 
    --font-size-subheadline: 17px;
    --font-size-button: 17px;
    --font-size-body: 17px; 
    --font-size-large-body: 20px; 
    --font-family-headline: abhaya-libre, sans-serif;
    --font-family-content: 'Raleway', sans-serif;
}

/*--------------------------------------------------------------
# Colors
--------------------------------------------------------------*/
.cl-white,
.cl-white-h:hover,
.cl-white-h:focus{
    color: var(--color-white) !important;
}
.bg-white,
.bg-white-h:hover,
.bg-white-h:focus{
  background-color: var(--color-white);
}
.cl-black,
.cl-black-h:hover,
.cl-black-h:focus{
    color: var(--color-black) !important;
}
.bg-black,
.bg-black-h:hover,
.bg-black-h:focus{
  background-color: var(--color-black);
}
.cl-slate,
.cl-slate-h:hover,
.cl-slate-h:focus{
    color: var(--color-slate) !important;
}
.bg-slate,
.bg-slate-h:hover,
.bg-slate-h:focus{
  background-color: var(--color-slate);
}
.cl-sage,
.cl-sage-h:hover,
.cl-sage-h:focus{
    color: var(--color-sage) !important;
}
.bg-sage,
.bg-sage-h:hover,
.bg-sage-h:focus{
  background-color: var(--color-sage);
}
.cl-forest-green,
.cl-forest-green-h:hover,
.cl-forest-green-h:focus{
    color: var(--color-forest-green) !important;
}
.bg-forest-green,
.bg-forest-green-h:hover,
.bg-forest-green-h:focus{
  background-color: var(--color-forest-green);
}
.cl-burnt-mauve,
.cl-burnt-mauve-h:hover,
.cl-burnt-mauve-h:focus{
    color: var(--color-burnt-mauve) !important;
}
.bg-burnt-mauve,
.bg-burnt-mauve-h:hover,
.bg-burnt-mauve-h:focus{
  background-color: var(--color-burnt-mauve);
}
.cl-dark-tan,
.cl-dark-tan-h:hover,
.cl-dark-tan-h:focus{
    color: var(--color-dark-tan) !important;
}
.bg-dark-tan,
.bg-dark-tan-h:hover,
.bg-dark-tan-h:focus{
  background-color: var(--color-dark-tan);
}
/*--------------------------------------------------------------
# Typography & Resets
--------------------------------------------------------------*/
body,
html {   
    scroll-behavior: smooth !important;
    max-width: 100vw;
    overflow-x: hidden;
}
body.responsive-menu-open {
  overflow: hidden;
}
.responsive-menu-open .site-header {
  transform: unset !important;
}
body {
    font-family: var(--font-family-content);
    overflow-x: hidden;
    overflow-wrap: normal;	
    color: var(--color-forest-green);
    font-size: var(--font-size-body);
    margin-bottom: 0 !important;  
   background-color: var(--color-offwhite);  
}
body::-webkit-scrollbar {
  width: 10px;
}

body::-webkit-scrollbar-thumb {
  background-color: var(--color-slate); 
  border-radius: 20px; 
}

body::-webkit-scrollbar-track {
  background-color: var(--color-sage); 
  border-radius: 20px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.1em;
}

h1 {
    font-size: var(--font-size-primary-heading);
    font-family: var(--font-family-headline); 
    font-style: normal;
    font-weight: 500;
    line-height: 1.1;
}
h2 {
    font-size: var(--font-size-secondary-heading);
    font-family: var(--font-family-headline); 
    font-style: normal;
    font-weight: 500;
    line-height: 1.1;
    letter-spacing: 0.45px;
}

h3 {
    font-size: var(--font-size-tertiary-heading);
    font-family: var(--font-family-headline);        
    font-style: normal;  
    font-weight: 500;
    line-height: 1.1;
    
}
h4 {
    font-size: var(--font-size-quartary-heading);
    font-family: var(--font-family-headline);   
    font-style: normal;
    font-weight: 500;
    line-height: 1.1;   
}
h5{
  font-family: var(--font-family-headline);  
  font-size: var(--font-size-quinary-heading);
  font-style: normal;
  font-weight: 500;
  line-height: 1.1; 
}
h5,
h6 {
    font-size: var(--font-size-quinary-heading);
}
.subheadline{
  font-family: var(--font-family-content);
  font-size: var(--font-size-subheadline);
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.17px;
}
.error-404{
	background-size: cover !important;  
    background-attachment: fixed !important;
}
a,
a:active,
a:focus {
    outline: none;
    text-decoration: none;
    transition: 0.3s ease all;
}
a:visited {
    color: unset;
}
section,
.row-back-forth {   
    padding: 150px 0;
    position: relative;
}
section.w-margin{
  margin: 150px 0;
}
.dp-2.m-b30 p{
  margin-bottom: 30px;
}
.uk-link-toggle:hover .uk-link, .uk-link:hover, a:hover {  
  text-decoration: none;
}
b, strong {
  font-weight: 600;
}
.bold-burnt-mauve b,
.bold-burnt-mauve strong,
.bold-burnt-mauve a{
  color: var(--color-burnt-mauve);
}
/*--------------------------------------------------------------
# Stops Some Of Looms Issues on Certain Browsers
--------------------------------------------------------------*/
section#shadow-host-companion {
    padding: 0;
    margin: 0;
}

/*--------------------------------------------------------------
# Button Styling
--------------------------------------------------------------*/
.button-list{
  display: flex;
  gap: 15px;
  align-items: center;
}
:active,
:hover,
:focus {
  outline: 0 !important;
  outline-offset: 0;
}
.btn::before, .btn::after {
  position: absolute;
  content: "";
}
.btn{  
  text-align: center;
  margin-bottom: 0;
  height: 54px;
  width: auto;
  display: inline-block; 
  padding: 0 22px; 
  background-color: transparent;
  position: relative;
  border-radius: 0;  
}

.btn span{
  color: var(--color-forest-green); 
  font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2; 
  letter-spacing: 0.51px;
  text-transform: uppercase;   
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.2s;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.btn:hover,
.btn:focus,
.btn:hover span,
.btn:focus span{
  color: var(--color-cream) !important;
}

.btn::before{
  position: absolute;
  content: "";
  outline: 0!important;
  outline-offset: 0;
  bottom: 0; left: 0; right: 0; 
  height: 0; width: 100%;  
    transition: 0.3s ease-out;
    border-radius: 0;
}
.btn:hover::before {
  height: 100%;
}
/*Btn Tan With Sage Hover*/
.btn.btn-tan-sh{
  background-color: var(--color-tan);
  color: var(--color-forest-green);
}
.btn.btn-tan-sh:hover span,
.btn.btn-tan-sh:focus span{
  color: var(--color-cream) !important;
}
.btn.btn-tan-sh::before{
  background-color: var(--color-sage);
}
.btn.btn-tan-sh:hover::before {
  height: 100%;
  background-color: var(--color-sage) !important;
}
/*Btn Tan*/
.btn.btn-tan{
  background-color: var(--color-tan);
  color: var(--color-forest-green);
}
.btn.btn-tan:hover span,
.btn.btn-tan:focus span{
  color: var(--color-cream) !important;
}
.btn.btn-tan::before{
  background-color: var(--color-forest-green);
}
.btn.btn-tan:hover::before {
  height: 100%;
  background-color: var(--color-forest-green) !important;
}

/*Btn Forest Green*/
.btn.btn-forest-green{
  background-color: var(--color-forest-green);
  color: var(--color-cream);
}
.btn.btn-forest-green span{
  color: var(--color-cream);
}
.btn.btn-forest-green:hover span,
.btn.btn-forest-green:focus span{
  color: var(--color-cream) !important;
}
.btn.btn-forest-green::before{
  background-color: var(--color-sage);
}
.btn.btn-forest-green:hover::before {
  height: 100%;
  background-color: var(--color-sage) !important;
}
#sb_instagram #sbi_load{
	display: none;
}

/*BTN General Styles*/

/* hover-slide-down */
.btn.hover-slide-down::before {
  top: 0; left: 0; right: 0; 
  height: 0%; width: 100%;
}
.btn.hover-slide-down:hover::before {
  height: 100%;
}

/* hover-slide-up */
.btn.hover-slide-up::before {
  bottom: 0; left: 0; right: 0; 
  height: 0%; width: 100%;
}
.btn.hover-slide-up:hover::before {
  height: 100%;
}

/* hover-slide-left */
.btn.hover-slide-left::before {
  top: 0; bottom: 0; right: 0; 
  height: 100%; width: 0%;
}
.btn.hover-slide-left:hover::before {
  width: 100%;
}

/* hover-slide-right */
.btn.hover-slide-right::before {
  top: 0; bottom: 0; left: 0; 
  height: 100%; width: 0%;
}
.btn.hover-slide-right:hover::before {
  width: 100%;
}

/* hover-opacity */
.btn.hover-opacity::before {
  top:0; bottom: 0; right: 0;
  height: 100%; width: 100%;
  opacity: 0;
}
.btn.hover-opacity:hover::before {
  opacity: 1;
}

.simple-link{
  position: relative;
  font-family: var(--font-family-button);
  font-size: var(--font-size-large-body);
  font-style: normal;
  font-weight: 400;
  line-height: 1; 
  letter-spacing: 0.2px;
}
.simple-link.link-white{
  color: var(--color-white);
}
.simple-link.link-mauve{
  color: var(--color-burnt-mauve);
}
.simple-link::after{
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(1);
  height: 1px;
  bottom: -5px;
  left: 0;     
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}
.simple-link.link-white::after{
  background-color: var(--color-white);
}
.simple-link.link-mauve::after{
  background-color: var(--color-burnt-mauve);
}
.simple-link:hover::after, .simple-link:focus::after {
  transform: scaleX(0);
  transform-origin: bottom left;
}
#sb_instagram .sbi_follow_btn a{
	background-color: var(--color-cinder-rose) !important;
}
#sb_instagram .sbi_follow_btn a:hover,
#sb_instagram .sbi_follow_btn a:focus{
	    background-color: var(--color-sage) !important;
	opacity: 1;
		 box-shadow: inset 0 0 10px 20px var(--color-sage) !important;
}
#sb_instagram #sbi_load .sbi_load_btn{
	    background: var(--color-slate) !important;	
   
}
#sb_instagram #sbi_load .sbi_load_btn:hover,
#sb_instagram #sbi_load .sbi_load_btn:focus{
	background-color: var(--color-cinder-rose) !important;	
	 box-shadow: inset 0 0 10px 20px var(--color-sage) !important;
}
/*--------------------------------------------------------------
# Utility Classes
--------------------------------------------------------------*/
.page-content, .entry-content, .entry-summary {
  margin: 0;
}
.text-center{
  text-align: center;
}
.relative{
    position: relative;
}
.over-hide{
  overflow: hidden;
}
.h-100{
    height: 100% !important;
}

.w-100{
    width: 100%;
}
.gap-05{
  gap: 0.5em;
}
.gap-1{
    gap: 1em;
  }
  .gap-2{
    gap: 2em;
  }
  .gap-3{
    gap: 3em;
  }
  .p-0{
    padding: 0 !important;
  }
  .ps-0{
    padding-left: 0 !important;
  }
  .pe-0{
    padding-right: 0 !important;
  }
  .pe-1{
    padding-right: 1em !important;
  }
  .p-t0{
    padding-top: 0 !important;
  }
  .p-t05{
    padding-top: 0.5em;
  }
  .p-t1{
    padding-top: 1em !important;
  }
  .p-t2{
    padding-top: 2em !important;
  }
  .p-t3{
    padding-top: 3em !important;
  }
  .p-t4{
    padding-top: 4em !important;
  }
  .p-b0{
    padding-bottom: 0 !important;
  }
  .p-b1{
    padding-bottom: 1em;
  }
  .p-b2{
    padding-bottom: 2em;
  }
  .p-b3{
    padding-bottom: 3em;
  }
  .p-b4{
    padding-bottom: 4em;
  }
  .p-b5{
    padding-bottom: 5em;
  }
  .p-y6{
    padding: 6em 0;
  }
  .m-0{
    margin: 0 !important;
  }
  .ms-0{
    margin-left: 0 !important;
  }
  .me-0 {
    margin-right: 0 !important;
  }
  .mb-0 {
    margin-bottom: 0 !important;
  }
  .mb-2 {
    margin-bottom: 2em !important;
  }
  .mt-10px{
    margin-top: 10px;
  }
  .mb-10px{
    margin-bottom: 10px;
  }
  .mt-02 {
    margin-top: 0.2em !important;
  }
  .mb-01 {
    margin-bottom: 0.1em !important;
  }
  .mb-02 {
    margin-bottom: 0.2em !important;
  }
  .mb-03 {
    margin-bottom: 0.3em !important;
  }
  .m-b0{
    margin-bottom: 0 !important;
  }
  .m-b1{
    margin-bottom: 1em !important;
  }
  .m-b2{
    margin-bottom: 2em;
  }
  .m-b3{
    margin-bottom: 3em;
  }
  .m-b4{
    margin-bottom: 4em;
  }
  .m-t0 {
    margin-top: 0 !important;
  }
  .m-t05{
    margin-top: 0.5em;
  }
  .m-t1{
    margin-top: 1em;
  }
  .m-t2{
    margin-top: 2em;
  }
  .m-t3{
    margin-top: 3em;
  } 
  .m-t4{
    margin-top: 4em;
  } 
  .m-b30{
    margin-bottom: 30px;
  }
  .m-b20{
     margin-bottom: 20px;
  }
  .m-t20{
    margin-top: 20px;
 }
.hide{
    visibility: hidden;
    width: 0;
    height: 0;
  }
  .text-left{
    text-align: left;
  }
  .flex{
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;  /* NEW, Spec - Opera 12.1, Firefox 20+ */
  }
  .flex-row { 
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .flex-column{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
  }
  .justify-center{
    -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  }
  .align-items-center{
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
  }
  
  .text-uppercase{
    text-transform: uppercase;
  }
 
  .fit-cover-center{
    object-fit: cover;
    object-position: center;
  }
  .fit-cover-top{
    object-fit: cover;
    object-position: top;
  }
  .fit-contain-center{
    object-fit: contain;
    object-position: center;
  }
  .img-fluid {
    height: auto;
    max-width: 100%;
  }
  .overlay{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;   
    z-index: 2;
  }
.overlay-bg1{ 
  background: rgba(62, 76, 94, 0.20);
}

/*--------------------------------------------------------------
# Lazy Load
--------------------------------------------------------------*/
img[data-lazy-src] {
    opacity: 0;
}

img.lazyloaded {
    transition: opacity .5s linear 0.2s;
    -o-transition: opacity .5s linear 0.2s;
    -ms-transition: opacity .5s linear 0.2s;
    -moz-transition: opacity .5s linear 0.2s;
    -webkit-transition: opacity .5s linear 0.2s; 
    opacity: 1;
}

/*--------------------------------------------------------------
# Progress
--------------------------------------------------------------*/

.progress-wrap {
	position: fixed;
	right: 30px;
	bottom: 30px;
	height: 46px;
	width: 46px;
	cursor: pointer;
	display: block;
	border-radius: 50px;
	box-shadow: inset  0 0 0 2px rgba(0,0,0,0.2);
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	transform: translateY(15px);
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}
.progress-wrap.active-progress {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.progress-wrap::after {
	position: absolute;
	content: "";
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAICAYAAADN5B7xAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAB9SURBVHgBdZBLEYAwDESzxUhlcAQHWKgDpOCgFnDQKzIwAqE7MJR+yKnNvpfJBP00W0XnoYfb1mWXRn0Zw4eIDgoTGLRhE24G3tCKH062pZRgsWSg6pACxACEY3CO7BfwyJWRT0vS085gNlDv+0pSwpWQSzEs4N+i1LoY6wLzkFUyUESrAwAAAABJRU5ErkJggg==");
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center;
	text-align: center;
	line-height: 46px;
	font-size: 24px;
	stroke: rgba(98, 114, 100, 0.6); 
	left: 0;
	top: 0;
	height: 46px;
	width: 46px;
	cursor: pointer;
	display: block;
	z-index: 1;
  opacity: 0.7;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
    transform: rotate(180deg);
}
.progress-wrap:hover::after {
	opacity: 1;
}
.progress-wrap::before {
	position: absolute;
	content: "";
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAICAYAAADN5B7xAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAB9SURBVHgBdZBLEYAwDESzxUhlcAQHWKgDpOCgFnDQKzIwAqE7MJR+yKnNvpfJBP00W0XnoYfb1mWXRn0Zw4eIDgoTGLRhE24G3tCKH062pZRgsWSg6pACxACEY3CO7BfwyJWRT0vS085gNlDv+0pSwpWQSzEs4N+i1LoY6wLzkFUyUESrAwAAAABJRU5ErkJggg==");
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: center;
	text-align: center;
	line-height: 46px;
	font-size: 24px;
	opacity: 0;
	background: var(--color-slate); 
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	left: 0;
	top: 0;
	height: 46px;
	width: 46px;
	cursor: pointer;
	display: block;
	z-index: 2;
  opacity: 0.7;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
    transform: rotate(180deg);
}
.progress-wrap:hover::before {
	opacity: 1;
}
.progress-wrap svg path { 
	fill: none; 
}
.progress-wrap svg.progress-circle path {
	stroke: rgba(98, 114, 100, 0.6); 
	stroke-width: 4;
	box-sizing:border-box;
	-webkit-transition: all 200ms linear;
    transition: all 200ms linear;
}
/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.site-header{
  padding: 0;
  position: fixed;
  width: 100%;
  z-index: 100;
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: transparent;    
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -o-transition: transform .5s linear;
  -ms-transition: transform .5s linear;
  -moz-transition: transform .5s linear;
  -webkit-transition: transform .5s linear;
  transition: transform .5s linear;
}
.site-header.header-inner{
  background-color: var(--color-white);
  position: fixed;
}
.site-header img.logo{
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.front-header .logo{
  background-color: var(--color-cinder-rose);
}
.site-header.header-scrolled{ 
 
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  transform: translateY(-100%);
}
.site-header.header-scrolled #menu-button span {  
  background-color: var(--color-sage);
}
.site-header.header-scrolled #menu-button.open span {  
  background-color: var(--color-sage);
}
.site-header.header-scrolled-top{  
  background-color: var(--color-white); 
 
}
.site-header.header-scrolled-top #menu-button.open span {
  background-color: var(--color-sage);
}
.header-fluid{
  border-bottom: 2px solid var(--color-white);
  padding: 0 100px;
 border-top: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.site-branding{  
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.site-menu{
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.header-cta{
  color: var(--color-white);
  text-align: center;
  font-family: var(--font-family-content);
  font-size: 19px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.57px;
  text-transform: uppercase;
  margin-bottom: 0;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 80px;
  border-right: 2px solid var(--color-white);
  border-left: 2px solid var(--color-white);
  background-color: transparent;
  position: relative;
}
.header-cta:hover,
.header-cta:focus{
  color: var(--color-white) !important;
}
.header-cta::before{
  position: absolute;
  content: "";
  outline: 0!important;
  outline-offset: 0;
  bottom: 0; left: 0; right: 0; 
  height: 0; width: 100%;  
  background-color: transparent;
    transition: 0.3s ease-out;
}
.header-cta:hover::before,
.header-cta:focus::before {
  height: 100%;
  background-color: var(--color-black);
}
.header-cta span{
  color: var(--color-white);  
  transition: 0.2s;
  position: relative;
  display: inline-block; 
  top: 0;
  left: 0;
  width: 100%;
}
/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
.main-navigation ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
#site-navigation {
  z-index: 20;
  position: relative;
  padding: 1em;
  max-width: 100%;
  width: auto;
  margin: 0 auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: end;
  flex-direction: column;
  padding: 0;
}
.offcanvas-logo {  
  margin-bottom: 0;
  position: absolute;
  top: 1.5em;
}
main {
  display: block; 
  padding-top: 103px;
}
#primary-menu li:hover ul {
opacity: 1;
}

#primary-menu > li {
  padding-left: 0;
  padding-right: 0;
  margin: 0 0 0 26px;
}
#primary-menu > li:last-child{
  padding-right: 0 !important;
}
#primary-menu li a {
  color: var(--color-slate);
  text-align: center;
  font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.34px;
  padding: 0;
}
#primary-menu li a:hover,
#primary-menu li a:focus{
  color: var(--color-sage);
}
.site-navigation .navigation {
position: relative;
display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: horizontal;
  -moz-box-orient: horizontal;
  -webkit-box-direction: normal;
  -moz-box-direction: normal;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
align-content: center;
justify-content: center;
align-items: center;
}
.navigation{
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;   
  justify-content: center;
}
.main-navigation ul ul {  
  min-width: 100%;
  width: auto;
}
.main-navigation ul ul a {
  width: 100%;
  text-align: left !important;
  padding: 0 !important;
}
#primary-menu li a::after {
  content: '';
  position: absolute;
  width: 2em;
  transform: scaleX(0);
  height: 1px;
  bottom: -4px;
  left: 0;
  background-color: var(--color-sage);
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
  right: 0;
  margin: 0 auto;
}
#primary-menu .sub-menu li a::after{
  display: none;
}
.main-navigation li {
  position: relative;
}
#primary-menu li a:hover::after,
#primary-menu li.current-menu-item a::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}
ul.responsive-menu-items li.menu-item-has-children.open::after {
  top: 30px;
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
#primary-menu .sub-menu {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  padding: 1em;
  background: var(--color-white) !important;	
  min-width: 12em;
  gap: 15px;
}

#primary-menu .sub-menu li a {
  position: relative;
  color: var(--color-slate);
  text-align: center;
  font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.34px;
  -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
#primary-menu .sub-menu li a:hover {
 margin-left: 10px !important;
}
#primary-menu .sub-menu li a:hover,
#primary-menu .sub-menu li a:focus,
#primary-menu .sub-menu li.current-menu-item > a{ 
  color: var(--color-forest-green);
}
#primary-menu li ul {
opacity: 0;
background-color: var(--color-offwhite) !IMPORTANT;
-moz-transition: opacity 0.5s linear 0s;
-o-transition: opacity 0.5s linear 0s;
-webkit-transition: opacity 0.5s linear 0s;
transition: opacity 0.5s linear 0s;
}
.desktop .menu-item-has-children>a:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 11px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3e%3cmask id='mask0_43_249' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3e%3crect x='24' width='24' height='24' transform='rotate(90 24 0)' fill='%23D9D9D9'/%3e%3c/mask%3e%3cg mask='url(%23mask0_43_249)'%3e%3cpath d='M2 8.025L3.775 6.25L12 14.475L20.225 6.25L22 8.025L12 18.025L2 8.025Z' fill='%23313932'/%3e%3c/g%3e%3c/svg%3e");
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  margin-left: 5px;
  margin-top: -3px;
  transition: all ease .25s;
  position: absolute;
  right: -20px;
  top: 50%;
}

.desktop .menu-item-has-children:hover>a:before {
  transform: rotate(180deg);
}
/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/

#page-preloader {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: var(--color-white);
  z-index: 100500;
}

#page-preloader .spinner {
  width: 32px;
  height: 32px;
  position: absolute;
  left: 50%;
  top: 50%; 
color: var(--color-white);
transform:translate(-50%, -50%);
}
#page-preloader .spinner:after{
	display: none;
}
.circle-pulse {
  width: 40px;
  height: 40px;
	 position: absolute;
  left: 50%;
  top: 50%; 
	transform:translate(-50%, -50%);
  background-color: var(--color-sage);
  border-radius: 100%;
  -webkit-animation: sk-scaleout 1s infinite ease-in-out;
  animation: sk-scaleout 1s infinite ease-in-out;
}

@-webkit-keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 0;
  }
}
@keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
}
/*--------------------------------------------------------------
# General Styles
--------------------------------------------------------------*/

.scrollToTopBtn {
    background-color: transparent;
    border: none;
    color: white;
    cursor: pointer;
    position: fixed;
    bottom: 57px;
    right: 66px;
    z-index: 100;
    opacity: 0;
    transform: translateY(100px);
    -webkit-transform: translateY(100px);
    -moz-transform: translateY(100px);
    -ms-transform: translateY(100px);
    -o-transform: translateY(100px);
    -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
  }
  .showBtn {
    opacity: 1;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
  }
  .showBtn:hover svg rect,
  .showBtn:focus svg rect{
    fill: #000;
  }
  .dp-1,
  .dp-1 p,
  .dp-1 ul,
  .dp-1 ol{
    font-family: var(--font-family-content);
    font-size: var(--font-size-body);  
    font-style: normal;
    font-weight: 400;
    line-height: 28px; 
    letter-spacing: 0.17px;
  }
.sm-size,
.sm-size p,
.sm-size ul,
.sm-size ol{
	font-size: 14px;
	line-height: 1.6;
}
.gform-body .sm-size p{
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}
  .dp-1 p:first-child,
  .dp-2 p:first-child{
    margin-block-start: 20px;
  }
  .dp-list p:first-child{
    margin-block-start: 0;
  }
 .image-content{
  height: 45em;
  border-radius: 10px;
 }
 .image-content img{
  border-radius: 10px;
 }
  .dp-1 a{
    color: var(--color-slate);
	  text-decoration: none !important;
  }
 .dp-1 a:hover,
.dp-1 a:focus{
	color: var(--color-forest-green);
}
  .dp-1 ul{
    margin-top: 1em;
  }
 
  .dp-2,
  .dp-2 p,
  .dp-2 ul,
  .dp-2 ol{
    font-family: var(--font-family-content);
    font-size: var(--font-size-large-body) !important;   
    font-style: normal;
    font-weight: 400;
    line-height: 30px; 
    letter-spacing: 0.21px;
  } 
  .dp-1 ul,
  .dp-1 ol,
  .dp-2 ul,
  .dp-2 ol{
    margin: 0 auto;
  }
  .dp-1 a,
  .dp-2 a{
    text-decoration: underline;
  }
  .dp-1.cl-white a,
  .dp-2.cl-white a{
    color: var(--color-white);
  }
/*--------------------------------------------------------------
# General Sections
--------------------------------------------------------------*/
.subheading{
  font-family: var(--font-family-content);
  font-size: var(--font-size-subheadline);
  font-style: normal;
  font-weight: 900;
  line-height: 18px; 
  letter-spacing: 0.3px;
}
/*--------------------------------------------------------------
# Instagram Feed
--------------------------------------------------------------*/
.sbi_item,
.sbi_item *{
	border-radius: 0;
}
.sb_instagram_header{
	display: none;
}
/*--------------------------------------------------------------
# Main Slider
--------------------------------------------------------------*/

.media-banner video,
.featured-video,
#background-video{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.plyr__poster{
  background-size: cover;
}
.media-slider{
  position: relative;
  height: calc(100vh - 103px);
} 
.box-slider{
  display: flex;
  align-items: start;
  justify-content: center;
  flex-direction: column;
  padding-left: 100px;
  max-width: 40em;
}

.main-slider .owl-dots{  
  display: flex;
  flex-direction: column; 
  border-radius: 70px;
  background: rgba(255, 255, 255, 0.40);
}
.main-slider .owl-dots .owl-dot span { 
  background: transparent;
  width: 8px;
  height: 166px;
  margin: 0;
  padding: 0;
  -o-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.main-slider .owl-dots .owl-dot.active span,
.main-slider .owl-dots .owl-dot span:hover{
  background: rgba(255, 255, 255, 0.40);
}
.list-slider{
  display: flex;
    flex-direction: column;
    position: absolute;
    gap: 10px;
    top: 50%;
    left: calc(50% - 68px);
    transform: translate(-50%, calc(-50% - 68px));
    width: 8px;
    color: #fff;
    justify-content: center;
    align-items: center;
    text-align: center;
font-family: var(--font-family-content);
font-size: 15px;
font-style: normal;
font-weight: 700;
line-height: 15px; 
letter-spacing: 1.5px;
}
.list-slider::before{
  content: '01';
}
/*--------------------------------------------------------------
# Slick Slider
--------------------------------------------------------------*/
.section-logo-slider{
  background-size: cover !important; 
  overflow-x: hidden;
}
.logo-partner{
  max-height: 10em;
  object-fit: contain;
  margin: 0 auto;
}
.slick-arrow{
  cursor: pointer;
}
.slick-prev, .slick-next {
  position: absolute;
  top: 33%; 
}

.slick-prev {
  left: 0;
}

.slick-next {
  right: 0;
}

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
      touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.slide {
    transition: filter .4s;
    margin: 0px 40px;
}
/*--------------------------------------------------------------
# Info Text Section
--------------------------------------------------------------*/
.section-info-text {
  background-size: cover !important;
  overflow-x: hidden;
}
/*--------------------------------------------------------------
# Internal Hero Section
--------------------------------------------------------------*/
.page-internal-hero{
  height: 47em;
  background-size: cover !important;
  background-position: center!important;
  background-attachment: fixed !important;
}
.section-internal-banner .media-content{
  height: 29em;
}
/*--------------------------------------------------------------
# Project Hero Section
--------------------------------------------------------------*/
.section-project-banner{
  position: relative;
  height: calc(100vh - 103.55px);
  padding: 0 !important; 
}
.project-title{
  background-color: var(--color-cream);
  padding: 1.5rem 5rem 1.5rem 2rem;
  max-width: fit-content;
}
.section-project-banner .overlay{
  display: flex;
  align-items: end;
}
/*--------------------------------------------------------------
# Single Project Slider
--------------------------------------------------------------*/
.slide-products{
  display: flex;
  flex-direction: column-reverse;
}
#content-slide{
  margin-bottom: 8px;
}
#content-slide div{
  width: 100%;
  height: 35em;
  padding: 0;
}
#content-slide div a{
  height: 100%;
  width: 100%;
}
#content-slide div img
{
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}
#info-slide div{
  height: 151px;
  padding: 0;
  border: 0;
  cursor: pointer;
}
#info-slide{
  gap: 8px;
}
#info-slide div img{
  object-fit: cover;
  object-position: center;
  height: 100%;
  width: 100%;
}
.slide-products .uk-slidenav{
  padding: 0;
}
.uk-icon:not(.uk-preserve) [stroke*='#']:not(.uk-preserve) {
  stroke: #3E4C5E !important;
}
.slide-products .uk-icon:not(.uk-preserve) [stroke*='#']:not(.uk-preserve) {
  stroke: #3E4C5E !important;
}
.section-project-info p{
  margin-bottom: 0;
}
.uk-lightbox-toolbar-icon.uk-icon:not(.uk-preserve) [stroke*="#"]:not(.uk-preserve) {
  stroke: #fff !important;
}
.uk-lightbox-panel .uk-icon:not(.uk-preserve) [stroke*="#"]:not(.uk-preserve) {
  stroke: #fff !important;
}
/*--------------------------------------------------------------
# Contact Info Section
--------------------------------------------------------------*/
.section-contact-info{
  height: 47em;
  background-size: cover !important;
  background-position: center!important;
  background-attachment: fixed !important;
}
.media-content{
  height: 32em;
  position: relative;
}
.shape-bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.shape-container{
  z-index: 2;
  position: relative;
}
.section-contact.md .media-content,
.section-contact.md .media-back-forth{
  height: 42em;
}
.box-map {
  height: 40em;
}
/*--------------------------------------------------------------
# Contact Back & Forth
--------------------------------------------------------------*/
.media-back-forth{
  height: 42em;
  position: relative;
}
.section-back-forth-full.md .media-back-forth{
  height: 56em;
}
/*--------------------------------------------------------------
# Team Section
--------------------------------------------------------------*/

.box-team-design{
	overflow: hidden;
	 
}
.section-team-general .box-team-design{
	   height: 22em;
}
.box-team-design .img{
  height: 20em; 
	overflow: hidden;
}
.box-team-design img{
 width: 100%;;
  height: 100% !important;
transition: transform 1s, filter 2s ease-in-out; 
  transform: scale(1);
}
.box-team-design a:hover img,
.box-team-design:hover img{
	transform: scale(1.2);
}
.col-team{
  display: flex;
  flex-direction: column;
  height: 100%;
}
.col-team h3{
  flex-grow: 1;
}
.col-team .simple-link.link-mauve{
  max-width: fit-content;
  margin: 0 auto;
}
.section-team-general .col-team h3{
  flex-grow: unset;
}
.section-team-general .dp-1 p:first-child {
  margin-block-start: 0;
}
/*--------------------------------------------------------------
# Section Our Work
--------------------------------------------------------------*/
.media-work{
  width: 100%;
  height: 100%;
  min-height: 33em;
}
/*--------------------------------------------------------------
# Section Boxes List Hover
--------------------------------------------------------------*/
.ih-item {
  position: relative;
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}
.ih-item, .ih-item * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.ih-item.square,
.ih-item.square a{
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 30em;
  display: block;
}
.ih-item a:hover {
  text-decoration: none;
}
.ih-item.square.effect6 .img {
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.ih-item.square.effect6 a:hover .img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
}
.ih-item.square.effect6 a:hover .info {
  visibility: visible;
  opacity: 1;
}
.ih-item.square .info {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.ih-item.square.effect6 .info {
  background: rgba(98, 114, 100, 0.7);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}
.ih-item, .ih-item * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.ih-item.square.effect6 .info h2 {
  
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
}
.ih-item.square.effect6.from_top_and_bottom .info p {
  -webkit-transform: translateY(100%);
  -moz-transform: translateY(100%);
  -ms-transform: translateY(100%);
  -o-transform: translateY(100%);
  transform: translateY(100%);
}
.ih-item.square.effect6.from_top_and_bottom a:hover .info p {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
.ih-item.square.effect6.from_top_and_bottom .info h2 {
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  transform: translateY(-100%);
}
.ih-item.square.effect6.from_top_and_bottom a:hover .info h2 {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
/*--------------------------------------------------------------
# Section Services
--------------------------------------------------------------*/
.box-service{
  position: relative;
  height: 550px;
  cursor: pointer;
}
.space-services{
  flex-grow: 1;
}
.overlay-serv{
  background-color: rgba(62, 76, 94, 0.60);
  padding: 65px 65px 0;
  display: flex;
  align-items: start;
  flex-direction: column;
  justify-content: end;
}

.overlay-serv .header-services{
  min-height: 11em;
  height: auto;
  transform-origin: left top;
  -o-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease
}

.line-services{
  width: 103px;
height: 6px;
border-radius: 30px;
background: var(--color-cinder-rose);
margin-bottom: 10px;
}
.box-service .box-link-service,
.box-service .box-link-service a{
  min-height: 0;
  opacity: 0;
  height: 0;
  transform-origin: left top;
  -o-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  transform: scaleX(0);
}
.box-service:hover .box-link-service,
.box-service:hover .box-link-service a{
  min-height: inherit;
  opacity: 1;
  height: 54px;
  min-height: 54px;
  transform: scaleX(1);
  transform-origin: left top;
}
.box-colored{
  position: relative;
  border-radius: 10px;
  padding: 78px 117px;
}
.box-service:hover .header-services{
  margin-bottom: 30px;
}

/*--------------------------------------------------------------
# Section Gallery Mansory
--------------------------------------------------------------*/
.grid-wrapper > div {
  margin: 0;
  display: grid;
  grid-template-rows: 1fr auto;
  margin-bottom: 22px;
  break-inside: avoid;	
  overflow: hidden;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
}
.grid-wrapper > div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
  object-position: center;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  transition: transform 1s, filter 2s ease-in-out; 
   transform: scale(1);
}
.grid-wrapper > div:hover img { 
 transform: scale(1.2);
}
.grid-wrapper {
  column-count: 2;
  column-gap: 20px
}
.grid-wrapper .medium{
  height: 21em;
}
.grid-wrapper .default{
  height: 24em;
}
.grid-wrapper .tall{
  height: 29em;
}
.grid-wrapper .small{
  height: 12em;
}
.grid-wrapper div:first-child{
  margin-top: 41px;
}
em {
  color: inherit;
}
/*--------------------------------------------------------------
# Section Back & Forth Gallery
--------------------------------------------------------------*/
.section-back-forth-gallery .dp-1 p:last-child{
  margin-bottom: 0 !important;
}
/*--------------------------------------------------------------
# Parallax
--------------------------------------------------------------*/
.simpleParallax{
  width: 100%;
  height: 100%;
}
/*--------------------------------------------------------------
# Accordeon
--------------------------------------------------------------*/
.box-accordeon{
  background-color: var(--color-cream) !important;
  color: var(--color-forest-green) !important;
  border-radius: 10px;
}
.accordion {
  font-family: var(--font-family-headline);
  background-color: var(--color-cream) !important;
  color: var(--color-forest-green) !important;
  cursor: pointer;
  padding: 25px 51px 25px 25px;
  width: 100%;
  position: relative;
  border: none;
  text-align: left;
  outline: none;
  border: 0;
  border-radius: 0;
  font-size: 33px; 
  font-style: normal;
  font-weight: 500; 
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;   
}

.accordion.active, .accordion:hover, .accordion:focus {
  background-color: var(--color-cream) !important;
  color: var(--color-forest-green) !important;
}

.accordion:after {    
  content: '';
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3e%3cmask id='mask0_43_249' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3e%3crect x='24' width='24' height='24' transform='rotate(90 24 0)' fill='%23D9D9D9'/%3e%3c/mask%3e%3cg mask='url(%23mask0_43_249)'%3e%3cpath d='M2 8.025L3.775 6.25L12 14.475L20.225 6.25L22 8.025L12 18.025L2 8.025Z' fill='%23313932'/%3e%3c/g%3e%3c/svg%3e");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  color: var(--color-forest-green);
  font-weight: bold;
  float: none;
  margin-left: 5px;
  width: 22px;
  height: 22px;
  position: absolute;
  right: calc(3rem * .4);
  top: 34%;
  transform: rotate(180deg); /* W3C */
  -webkit-transform: rotate(180deg); /* Safari & Chrome */
  -moz-transform: rotate(180deg); /* Firefox */
  -ms-transform: rotate(180deg); /* Internet Explorer */
  -o-transform: rotate(180deg); /* Opera */  
}

.accordion.active:after {
  transform: rotate(0); /* W3C */
  -webkit-transform: rotate(0); /* Safari & Chrome */
  -moz-transform: rotate(0); /* Firefox */
  -ms-transform: rotate(0); /* Internet Explorer */
  -o-transform: rotate(0); /* Opera */   
}

.panel {    
  background-color: var(--color-cream);
  max-height: 0;
  overflow: hidden;   
  margin-bottom: 15px;   
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  text-align: left !important;
  -webkit-transition: max-height 0.2s ease-out;
  -moz-transition: max-height 0.2s ease-out;
  -o-transition: max-height 0.2s ease-out;
  transition: max-height 0.2s ease-out; 
}
.panel .row{
  padding: 10px 30px 40px;
}
.panel .dp-1{ 
  padding: 0 35px 0 30px; 
}
.section-flexible-accordeon:last-of-type{
  padding-top: 0 !important;
}
.panel .dp-1 p:first-child {
  margin-block-start: 0;
}
.accordion.active{
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
/*--------------------------------------------------------------
# Gravity Forms
--------------------------------------------------------------*/
.gform_wrapper.gform-theme .gfield_label{
  font-family: var( --font-family-content);
  color: var(--color-white);
  font-size: 17px;
  font-style: normal;
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.34px;
}
.gform_wrapper.gform-theme .full-w .ginput_complex{
  display:  block !important;
  margin-left: 0;
  margin-right: 0;
}
.gfield_required{
  color: var(--color-white) !important;
}
.gform_wrapper.gform-theme .full-w .ginput_container_address span {
  
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.gravity-form.center *{
  text-align: center;
}
.gform_confirmation_message{
	    text-align: center;
    color: #fff;
}
.gform_wrapper input[type="color"],
.gform_wrapper input[type="date"],
.gform_wrapper input[type="datetime-local"],
.gform_wrapper input[type="datetime"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="month"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="search"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="text"],
.gform_wrapper input[type="time"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="week"],
.gform_wrapper textarea,
.search-form input[type="search"],
.gform_wrapper.gravity-theme .gfield select.large{
	background: transparent;
	border: unset;
	border: 1px solid var(--color-cream);
	color: var(--color-white);	
	border-radius: 0;
  font-family: var(--font-family-content);
  font-size: 17px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 30px; 
  letter-spacing: 0.17px;
  height: 58px;
  padding: 15px 24px !important;
	text-transform: normal;
}
.gform_wrapper.gravity-theme .gfield_label{
  color: var(--color-white);		
  font-family: var(--font-family-text);
  font-size: 17px !important;
  font-style: normal;
  font-weight: 400 !important;
}
.gform_wrapper select{
  color: var(--color-white);	
	border-radius: 0;
  font-family: var(--font-family-text);
  font-size: 17px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 2.5; 
  letter-spacing: 0.17px;
  height: 58px;
}
.gform_wrapper.gravity-theme select{
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3e%3cmask id='mask0_33_200' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='24' height='24'%3e%3crect x='24' width='24' height='24' transform='rotate(90 24 0)' fill='%23D9D9D9'/%3e%3c/mask%3e%3cg mask='url(%23mask0_33_200)'%3e%3cpath d='M2 8.025L3.775 6.25L12 14.475L20.225 6.25L22 8.025L12 18.025L2 8.025Z' fill='%23D4C7B4'/%3e%3c/g%3e%3c/svg%3e") !important;
  background-repeat: no-repeat !important;
  background-size: 24px 24px !important;
  background-position: center right !important;
  background-origin: content-box !important;
}
.gform_wrapper.gravity-theme input:focus,
.gform_wrapper.gravity-theme input:focus-visible,
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper.gravity-theme select:focus-visible,
.gform_wrapper.gravity-theme textarea:focus,
.gform_wrapper.gravity-theme textarea:focus-visible{
	outline: none;
}
.gform_wrapper .gform_fields {
	grid-row-gap: 20px !important;
}
.gform_heading{
  display: none !important;
}
body .gform_wrapper.gravity-theme .gform_drop_instructions {
	display: inline-block;
	color: var(--color-white);
	font-weight: 400;
	font-family: var(--font-family-text);
}

body .gform_wrapper.gravity-theme .gform_drop_area {
	padding: 3em;
}

body .gform_button_select_files {
	background: unset;
	border: unset;
	padding: unset;
	text-transform: none;
	letter-spacing: inherit;
	color: var(--color-black);
	font-weight: 600;
	cursor: pointer;
}

body .custom-file-up {
	border: 1px solid var(--color-cream);
	border-radius: 0px;
}
.custom-file-up .gfield_label {
  font-size: 17px;
  font-weight: 400 !important;
  display: flex !important;
  margin-bottom: 8px;
  color: var(--color-cream);
  letter-spacing: 0.17px;
  padding: 0;
  align-items: center !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 0.5em;
  padding-top: 2em !important;
    padding-bottom: 2em !important;
}
body .custom-file-up  label::before {
  content: '';
  display: inline-block;
  width: 45px;
  height: 45px;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='46' height='46' viewBox='0 0 46 46' fill='none'%3e%3cmask id='mask0_33_452' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='46' height='46'%3e%3crect width='45.0625' height='45.0625' fill='%23D9D9D9'/%3e%3c/mask%3e%3cg mask='url(%23mask0_33_452)'%3e%3cpath d='M21.5926 29.2473V13.006L17.2163 17.3823L15.8876 16.0319L22.5314 9.388L29.1753 16.0319L27.8465 17.3823L23.4702 13.006V29.2473H21.5926ZM12.4212 35.6745C11.5571 35.6745 10.8355 35.385 10.2566 34.8061C9.67765 34.2271 9.38818 33.5056 9.38818 32.6414V28.0919H11.2658V32.6414C11.2658 32.9303 11.3861 33.1951 11.6269 33.4358C11.8676 33.6765 12.1324 33.7969 12.4212 33.7969H32.6416C32.9304 33.7969 33.1952 33.6765 33.436 33.4358C33.6767 33.1951 33.797 32.9303 33.797 32.6414V28.0919H35.6746V32.6414C35.6746 33.5056 35.3852 34.2271 34.8063 34.8061C34.2273 35.385 33.5058 35.6745 32.6416 35.6745H12.4212Z' fill='white'/%3e%3c/g%3e%3c/svg%3e");
  background-size: contain;
  cursor: pointer;
  padding: 10px;
}
body .custom-file-up .gfield_fileupload_filename, body .custom-file-up .dashicons-trash:before, body .custom-file-up .ginput_preview_list {
  color: var(--color-white);
  font-size: 17px;
  font-weight: 400 !important;
}
body .custom-file-up .gform_drop_instructions,
body .custom-file-up  .gform_button_select_files,
body .custom-file-up  .gfield_required{
  display: none !important;
}
body .custom-file-up .ginput_preview {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  gap: 5px;
}
body .custom-file-up .gform_delete_file{
  padding: 0 !important;
}
body .custom-file-up .gform_drop_area {
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}
body .gform_wrapper.gravity-theme .gform_fileupload_rules {
	display: none;
}

body .gform_button {
	background: var(--color-tan) !important;
	color: var(--color-forest-green) !important;
  padding: 12px 22px !important;
font-family: var(--font-family-content) !important;
font-size: 17px !important;
font-style: normal !important;
font-weight: 500 !important;
line-height: 30px !important;
letter-spacing: 0.34px !important;
border-radius: 0 !important;
border: 0 !important;
max-width: 100%;
width: 100%;
margin: 0 auto;
cursor: pointer;
text-transform: uppercase;
-o-transition: all 0.5s ease;
-ms-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
-webkit-transition: all 0.5s ease;
transition: all 0.5s ease;
}
body .gform_button:hover{
  background-color: var(--color-sage) !important;
  color: var(--color-cream) !important;
}
.gform_wrapper.gravity-theme .gform_footer, .gform_wrapper.gravity-theme .gform_page_footer {
  margin: 20px 0 0 0 !important;
  padding: 0 !important;
}
::-webkit-input-placeholder {
	/* WebKit, Blink, Edge */
	font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  color: var(--color-white);	
}

:-moz-placeholder {
	/* Mozilla Firefox 4 to 18 */
	font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
	opacity: 1;
  color: var(--color-white);	
}

::-moz-placeholder {
	/* Mozilla Firefox 19+ */
	font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
	opacity: 1;
  color: var(--color-white);	
}

:-ms-input-placeholder {
	/* Internet Explorer 10-11 */
	font-family: var(--font-family-content);
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  color: var(--color-white);	
}
.gform_footer{
  display: block !important;
  width: 100%;
}

.content-search{
    background-color: var(--color-green);
    box-shadow: 1em 1em 2em rgba(0,0,0,0);
    padding: 20px;
}
.content-search .search-field{
    border-color: rgba(255,255,255,0.2) !important;
    color: #292929;
    background: #FFFFFF !important;
    width: 80%;
    height: 40px;
    padding: 10px;
}
.gfield_checkbox li,
.ginput_container_consent {
    position: relative;
    padding-left: 40px;
	    text-align: left !important;
  }
  .gfield_checkbox li label:after,
  .ginput_container_consent label:after {
    content: "";
    background: transparent;
    width: 27px;
    height: 27px;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 0;
    z-index: 0;
    border: 1px solid var(--color-black);
  }
  .gfield_checkbox li label:before,
  .ginput_container_consent label:before {
    content: "";
    display: block;
    position: absolute;
    width: 8px;
    height: 16px;
    border: solid var(--color-black);
    border-width: 0 3px 3px 0;
    left: 11px;
    top: 4px !important;
    transform: rotate(45deg);
    opacity: 0;
    z-index: 1;
    transition: all 100ms;
  }
  
  input[type=checkbox] {
    opacity: 0;
    outline: none;
    z-index: 100;
    width: 27px;
    height: 27px;
    top: 0;
    left: 0;
    position: absolute;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    cursor: pointer;
  }
  input[type=checkbox] + label {
    cursor: pointer;
  }
  input[type=checkbox]:checked + label:before {
    opacity: 1;
    top: 3px;
  }
  .section-contact-home .gform_wrapper.gravity-theme #gform_fields_1_2.gform_fields {   
    grid-template-columns: repeat(10,1fr);    
  }
  .info-opt{
    padding-top: 15px !important;
    padding-bottom: 6px !important;
  }
  .section-contact-forms .gfield{
    margin-bottom: 16px;
  }
  .form-steps-home #gform_page_1_1 .gform_page_footer{
    text-align: right;
  }
  .box-contact{
    background-color: var(--color-green);
    padding: 40px;
  }
  .gform_fields {
    grid-column-gap: 35px !important;
    grid-row-gap: 15px !important;
}
/*--------------------------------------------------------------
# Contact Info
--------------------------------------------------------------*/
.contact-info {
  display: flex;
  align-items: flex-start;
  gap: 26px;
}
.contact-info .dp-1 p:first-child {
  margin-block-start: 0;
}
.contact-info .dp-1 p,
.contact-info .dp-2 p{
  margin-bottom: 10px;
}
.contact-info .dp-1 p a,
.contact-info .dp-2 p a{
  color: var(--color-white) !important;
  text-decoration: none;
}
.contact-info .dp-1 p a:hover,
.contact-info .dp-1 p a:focus,
.contact-info .dp-2 p a:hover,
.contact-info .dp-2 p a:focus{
  text-decoration: underline;
}
.code-content{
  border-radius: 5px;
  background: #EFEFEF;
  height: 100%;
  width: 100%;
  padding: 30px;
}
.contact-info .dp-1 p:first-child, .contact-info .dp-2 p:first-child {
  margin-block-start: 0;
}
.icon-contact{
  margin-top: 9px;
}
/*--------------------------------------------------------------
# Trading Accounts
--------------------------------------------------------------*/
.gravity-trade{
  background-color: var(--color-slate);
  border-radius: 10px;
  padding: 30px 55px;
}
.gravity-trade .gform_wrapper input[type="color"], 
.gravity-trade .gform_wrapper input[type="date"], 
.gravity-trade .gform_wrapper input[type="datetime-local"], 
.gravity-trade .gform_wrapper input[type="datetime"], 
.gravity-trade .gform_wrapper input[type="email"], 
.gravity-trade .gform_wrapper input[type="month"], 
.gravity-trade .gform_wrapper input[type="number"], 
.gravity-trade .gform_wrapper input[type="password"], 
.gravity-trade .gform_wrapper input[type="search"], 
.gravity-trade .gform_wrapper input[type="tel"], 
.gravity-trade .gform_wrapper input[type="text"], 
.gravity-trade .gform_wrapper input[type="time"], 
.gravity-trade .gform_wrapper input[type="url"],
.gravity-trade .gform_wrapper input[type="week"], 
.gravity-trade .gform_wrapper textarea, 
.gravity-trade .search-form input[type="search"],
.gravity-trade select{
  border: 0;
  color: var(--color-white); 
  padding: 12px;
  border-bottom: 2px solid var(--color-white);
  border-radius: 0;
  text-align: left;
  padding: 0 !important;
}
.gravity-trade select{
  background-color: transparent !important;
  height: 54px;
}
.gravity-trade select,
.gravity-trade select *{
  text-align: left !important;
}
.gravity-trade ::-webkit-input-placeholder {
	color: var(--color-white) !important; 
}
.gravity-trade :-moz-placeholder {
	color: var(--color-white) !important; 
}
.gravity-trade ::-moz-placeholder {
	color: var(--color-white) !important; 
}
.gravity-trade :-ms-input-placeholder {
	color: var(--color-white) !important; 
}
.gravity-trade .address_zip{
  width: 100% !important;
  flex: 100% !important;
}
.gravity-trade  .ginput_container--name{
  gap: 20px;
}
.gravity-trade  .ginput_container_address{
  gap: 15px;
  justify-content: space-between;
}
.gravity-trade  .gform_wrapper.gravity-theme .ginput_container_address span{
  flex: 0 0 48%;
}
.gravity-trade  .gform_wrapper.gravity-theme .ginput_container_address span{
  flex: 0 0 100%;
}
.gravity-trade .gform_drop_area {
  border: 2px solid var(--color-white) !important;
  border-radius: 0px;
  color: var(--color-white) !IMPORTANT;
}
.gravity-trade .gfield--input-type-fileupload label{
  color: var(--color-white);
font-family: var(--font-family-content);
font-size: 18px;
font-style: normal;
font-weight: 500;
line-height: 18px; 
letter-spacing: 0.54px;
}
.gravity-trade .gfield--input-type-fileupload *,
.gravity-trade  .gform_drop_instructions{
  color: var(--color-white) !important;
  font-family: var(--font-family-content);
  font-size: 13px;
font-style: normal;
font-weight: 500 !important;
line-height: 18px; 
letter-spacing: 0.39px;
}
.gravity-trade .gform_button{
  max-width: fit-content;
  margin-left: 0 !important;
}
/*--------------------------------------------------------------
# Mansory Layout
--------------------------------------------------------------*/

.mansory-wrapper > div {
	display: flex;
	justify-content: center;
	align-items: center;
  overflow: hidden;
}
.mansory-wrapper img {
	width: 100%;
	height: 100%;
  object-fit: cover;
  object-position: top;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  transition: transform 1s, filter 2s ease-in-out;
  transform: scale(1);
	border-radius: 0;
}
.mansory-wrapper > div:hover img {
  transform: scale(1.2);
}
.mansory-wrapper {
	display: grid;
	grid-gap: 15px;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  grid-auto-rows: 300px;
	grid-auto-flow: dense;
}
.mansory-wrapper .wide {
	grid-column: span 2;
}
.mansory-wrapper .tall {
	grid-row: span 2;
}
.mansory-wrapper .big {
	grid-column: span 2;
	grid-row: span 2;
}
/*--------------------------------------------------------------
# Section Our Team
--------------------------------------------------------------*/
.box-team-member{
  height: 23em;
  overflow: hidden;
  position: relative;
}
.box-team-member .img img{
  -moz-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}
.box-team-member .img:hover img{
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1)
}
.list-social{
  display: flex;
  align-items: center;
  gap: 25px;
}
.list-social a{
  transform: translatey(0px);
  -webkit-transform: translatey(0px);
  -moz-transform: translatey(0px);
  -ms-transform: translatey(0px);
  -o-transform: translatey(0px);
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.list-social a:hover{
  -webkit-transform: translatey(-10px) !important;
    -moz-transform: translatey(-10px) !important;
    -ms-transform: translatey(-10px) !important;
    -o-transform: translatey(-10px) !important;
}
.team-sidebar{
	 -moz-transition: 0.6s ease all;
  -o-transition: 0.6s ease all;
  -webkit-transition: 0.6s ease all;
  transition: 0.6s ease all;
}
/*--------------------------------------------------------------
# Slider History
--------------------------------------------------------------*/
.history-slide{
  background: var(--color-cream);
	align-content: start !important;
	    height: 32em !important;
}
.box-history{
  padding: 3em 52px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  height: 100%;
}
.box-history .description p:last-of-type{
  margin-bottom: 0 !important;
}
.description.m-start-0 p:last-child{
  margin-bottom: 0;
}
.glider-prev-history{
  top: unset;
  bottom: 50px;
  right: 200px;
  left: unset !important;
}
.glider-next-history{
  top: unset;
  bottom: 50px;
  right: 100px !important;
}
/*--------------------------------------------------------------
# Blog Post Banner
--------------------------------------------------------------*/
.page-post-banner{
  height: 23em; 
  display: flex;
  align-items: center;
}
.meta{
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 15px;
}
.post-line{
  width: 1px;
height: 18px;
background-color: var(--color-white);
}
.section-info-blog .dp-1 img{
  margin-top: 2em;
}
/*--------------------------------------------------------------
# Section News
--------------------------------------------------------------*/
.new-contain{
  background-color: var(--color-cream);
  display: flex; 
  justify-content: center;  
  flex-direction: column;
}
.new-contain .simple-link{
  max-width: fit-content;
}
.news-box{
  padding: 30px;  
  display: flex; 
  justify-content: center;
  flex: 1 0 auto;
  flex-direction: column;
}

.entry-date{
  font-family: var(--font-family-content);
  font-size: var(--font-size-body);
  font-style: normal;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.17px;
  margin-bottom: 10px;
}
  
.headline-news{
  flex: 1 0 auto;
  margin-bottom: 1em;
}
.box-news-single{
  height: 18em;
  overflow: hidden;
}
.box-news-single img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 1s, filter 2s ease-in-out;
  transform: scale(1);
}
.box-news-single a:hover img{
  transform: scale(1.2);
}
/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer{
  padding: 115px 0 0;
}
.site-footer a:hover{
  color: var(--color-sage);
}
.col-footer a
{
  color: var(--color-forest-green);
  font-family: var(--font-family-content);
  font-size: 17px;
font-style: normal;
font-weight: 500;
line-height: normal;
letter-spacing: 0.34px;
text-transform: uppercase;
}
.site-footer a{
  position: relative;
}
.site-footer a.link-logo::after{
  display: none;
}
.site-footer a::after{
  content: '';
  position: absolute;
  width: 2em;
  transform: scaleX(0);
  height: 1px;
  bottom: -4px;
  left: 0;
  background-color: var(--color-sage);
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
  right: 0;
  margin: 0 auto;
}
.site-footer a:hover::after,
.site-footer a:focus::after,
.site-footer li.current-menu-item a::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.col-footer a:hover,
.col-footer a:focus{
  color: var(--color-sage);
}
.col-footer p{
  margin-bottom: 22px;
  margin-block-start: 0;
}
.col-footer li{
  margin-bottom: 12px;
}
#footer-menu{
  margin: 45px 0 0 !important;
  margin-block-start: 0;
  margin-block-end: 0;
  padding-inline-start: 0;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 36px;
}
.line-footer{  
  margin: 70px auto 0 auto;
  background-color: var(--color-dark-tan);
  height: 1px;
}
.copyright-info{
  padding-top: 37px;
  padding-bottom: 40px;
}
.footer-contact p,
.footer-contact a{
  margin-bottom: 0;
  margin-block-start: 0;
  margin-block-end: 0;
  color: var(--color-slate);
font-family: var(--font-family-content);
text-align: center;
font-size: 17px;
font-style: normal;
font-weight: 500;
line-height: 1.5;
letter-spacing: 0.34px;
}
.footer-contact {
  padding-top: 10px;
}
.copyright-info p,
.copyright-info a{
  margin-bottom: 0;
  margin-block-start: 0;
  margin-block-end: 0;
  color: var(--color-slate);
font-family: var(--font-family-content);
text-align: center;
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 26px;
letter-spacing: 0.16px;
}
.copyright-info a:hover,
.copyright-info a:focus{
  color: var(--color-cinder-rose);
}
.description ul, .description ol {
  margin: 0 0 1.5em 0;
}
.row-social{
  padding-top: 30px;
}
.row-social span{
  color: var(--color-burnt-rose);
  font-family: var(--font-family-content);
  font-size: 17px;
font-style: normal;
font-weight: 600;
line-height: 26px; 
letter-spacing: 0.17px;
}
.social-icon{
  gap: 12px;
}
.social-icons{
  gap: 9px;
}
.social-icons svg{
  max-width: 25px;
  height: 25px;
}
.social-icons a{
  transform: translatey(0px);
  -webkit-transform: translatey(0px);
  -moz-transform: translatey(0px);
  -ms-transform: translatey(0px);
  -o-transform: translatey(0px);
  -webkit-transition: all 0.4s ease-out;
  -moz-transition: all 0.4s ease-out;
  -o-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
}
.social-icons a:hover{
  -webkit-transform: translatey(-10px) !important;
  -moz-transform: translatey(-10px) !important;
  -ms-transform: translatey(-10px) !important;
  -o-transform: translatey(-10px) !important;
}
.social-icon::after{
  display: none;
}
.social-icon:hover span,
.social-icon:focus span{
  color: var(--color-slate);
}

/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/
/* Small devices (landscape phones, 576px and up)*/
@media (min-width: 576px) {
  .show-sm{
    display: none;
}
 }

/*Medium devices (tablets, 768px and up)*/
@media (min-width: 768px) { 
  .m-md-t2:first-child {
    margin-top: 2em;
}
.p-md-t5{
  padding-top: 5em;
}
.col-info-box{
  padding-right: 0.3rem;
  padding-left: 0.3rem;
}
.row-info-box{
  margin-right: -0.3rem;
  margin-left: -0.3rem;
}
.col-info-box{
  margin-bottom: 0.6rem;
}
 }

/* Large devices (desktops, 992px and up)*/
@media (min-width: 992px) { 
 
  .show-lg{
    display: none !important;
}
  .p-lg-t1{
    padding-top: 1em;
  }
  .p-lg-b1{
    padding-bottom: 1em;
  }
  .p-lg-t4{
    padding-top: 4em;
  }
  .p-lg-b4{
    padding-bottom: 4em;
  }
  .p-lg-t5{
    padding-top: 5em;
  }
  .p-lg-b5{
    padding-bottom: 5em;
  }
  .pb-lg-0{
    padding-bottom: 0 !important;
  }
  .ps-lg-0{
    padding-left: 0 !important;
  }    
  .pe-lg-0{
    padding-right: 0 !important;
  }
  .ms-lg-0{
    margin-left: 0 !important;
  }
  .me-lg-0{
    margin-right: 0 !important;
  }
  .ps-lg-3{
    padding-left: 3em;
  }
  .pe-lg-3{
    padding-right: 3em;
  }
  .ps-lg-4{
    padding-left: 4em;
  }
  .pe-lg-4{
    padding-right: 4em;
  }
  
  .ps-lg-6 {
    padding-left: 1em !important;
  }
  .pe-lg-6{
    padding-right: 1em !important;
  }
  .pe-lg-5 {
    padding-right: 1em !important;
  }
  .ps-lg-5 {
    padding-left: 1em !important;
  }
  .m-lg-t0{
    margin-top: 0;
  }
  .mt-lg-1{
    margin-top: 1em;
  }
	 .m-lg-t3{
    margin-top: 3em;
  }
  .mt-lg-0{
    margin-top: 0;
  }
  .mb-lg-0{
    margin-bottom: 0;
  }
  .mt-lg-4{
    margin-top: 4em !important;
  }
  .mb-lg-4{
    margin-bottom: 4em !important;
  }
  .p-lg-b3{
    padding-bottom: 3em;
  }
  .p-lg-b0{
    padding-bottom: 0 !important;
   } 
   .p-lg-t0{
    padding-top: 0 !important;
   } 
   .mt-lg-20px{
    margin-top: 20px !important;
  }
  .mb-lg-20px{
    margin-bottom: 20px !important;
  }
  .text-lg-end {
    text-align: right;
}    
.text-lg-start{
  text-align: left;
}
.text-lg-center{
  text-align: center;
}
.col-content{
  padding: 2rem 0;
}

 }
 @media (min-width: 1025px) {
  .pe-lg-5{
    padding-right: 5em !important;
  }
  .ps-lg-5{
    padding-left: 5em !important;
  }
  .pe-lg-6{
    padding-right: 6em !important;
  }
  .ps-lg-6{
    padding-left: 6em !important;
  }
  }
 /* X-Large devices (large desktops, 1024px and up)*/
@media (min-width: 1024px) { 
 .row.mobile{
  display: none !important;
}
#menu-button,
#responsive-menu{
  display: none !important;
}

}
/* X-Large devices (large desktops, 1200px and up)*/
@media (min-width: 1200px) { 
    .ps-xl-0{
      padding-left: 0 !important;
    }
    .pe-xl-0{
      padding-right: 0 !important;
    }
    .ms-xl-0{
      margin-left: 0 !important;
    }
    .me-xl-0{
      margin-right: 0 !important;
    }
    .pe-xl-3{
      padding-right: 3em;
    }
    .site-header .container-fluid{
      padding-left: 200px;
      padding-right: 200px;
    } 
 }

@media (min-width: 1300px) { 
  .ps-contain {
    padding-left: calc(((100% - 1369px) / 2) + 1rem) !important;
  }
  .pe-contain{
    padding-right: calc(((100% - 1369px) / 2) + 1rem) !important;
  }
  .container{
    width: 1369px;
  }
  .section-our-work .special-container{
    width: 83%;
  }
  }

/* XX-Large devices (larger desktops, 1400px and up)*/
@media (min-width: 1400px) { 
  .ps-contain {
    padding-left: calc(((100% - 1350px) / 2) + 1rem) !important;
  }
  .pe-contain{
    padding-right: calc(((100% - 1350px) / 2) + 1rem) !important;
  }
  .container{
    width: 1350px;
  }
 }

@media (min-width: 2000px) {  
  .page-main-hero .media-banner {
    height: 43em;
  } 
  .media-back-forth {
    height: 55em;
    position: relative;
}
  .fleet-slider .owl-item .item img{
    height: 20em;
  }
  .media-work{
    min-height: 46em;
  }
  .section-partners .box-partners {
    height: 45em;
}
.section-contact-info,
.page-internal-hero{
  height: 55em !important;
}

.box-service {
  height: 650px; 
}
.media-content {
  height: 40em;
}
 }
 @media (min-width: 2500px) {

   }
 @media (min-width: 3000px) {  
  .box-service {
    height: 750px; 
  }

 }
 @media (max-width: 1900px) { 
 
  #primary-menu > li {   
    margin: 0 0 0 25px;
}
#primary-menu li a
{
  font-size: 13px !important;
}
.site-header .container-fluid {
  padding-left: 150px;
  padding-right: 150px;
}
 }
 @media (max-width: 1599.98px) { 
  .site-header .container-fluid {
    padding-left: 100px;
    padding-right: 100px;
}
.media-work {
  min-height: 25em;
}
.btn{
  padding: 0px 14px;
}
.btn span{
  font-size: 14px;
}
 }
 @media (max-width: 1499.98px) { 

  #primary-menu > li {
    margin: 0 0 0 20px;
}
#primary-menu li a
{
  font-size: 13px !important;
}
.site-header .container-fluid {
  padding-left: 1rem;
  padding-right: 1rem;
}
.overlay-serv{
  padding: 50px;
}
.list-slider{
  top: 57%;
  transform: translate(-57%, calc(-50% - 68px));
}
 }

/* X-Large devices (large desktops, less than 1400px)*/
@media (max-width: 1399.98px) { 
  .box-slider{
    padding-left: 30px;
    max-width: 100%;
  }
  .overlay-serv .header-services {
    min-height: 8em;    
}
 }
 @media (max-width: 1299.98px) {
  .col-info{
    padding: 2rem 3rem !important;
  }
  .col-content{
    padding: 2rem 1rem;
  }
  }
/* Large devices (desktops, less than 1200px)*/
@media (max-width: 1199.98px) {  
  .site-footer {
    text-align: center;
}
ul.tabs li{
  font-size: 15px !important;
}
.logo-footer {
  max-width: 180px;
  margin-bottom: 30px;
}
.site-footer {
  padding: 50px 0 0;
}
.col-footer a{
  line-height: 2;
}
.line-footer{
  margin: 50px auto 0 auto;
}
.main-navigation ul {
  padding: 0 10px;
}
#primary-menu > li {
  margin: 0 5px;
}
#primary-menu li a, .header-cta {
  font-size: 14px;
}
.media-work {
  min-height: 26em;
}
h1 br,
h2 br,
h3 br,
h4 br,
h5 br,
h6 br,
p br{
display: none;
}
.history-slider .h-100{
  height: auto !important;
}
.box-history{
  padding: 2em 2em 4em;
}
.glider-prev-history{
  bottom: 30px;
  right: calc(1.5em + 50px) !important;
}
.glider-next-history{
  bottom: 30px;
  right: 1.5em !important;
}
h1,
h2.main-headline {
  font-size: 45px;
  line-height: normal;
  letter-spacing: 0.4px;
  text-shadow: none;
}
h2{
  font-size: 35px;
  line-height: normal;
  letter-spacing: 0.28px;
}
h3{
  font-size: 30px;
}
		#primary-menu li a
{
  font-size: 12px !important;
}
	    #primary-menu > li {
        margin: 0 4px;
    }
	.history-slide{
		height: auto !important;
	}
	.history-slider .box-media-history.h-100 {
		height: 20em !important;
	}
	.history-slider .box-media-history.h-100 img{
		height: 100% !important;
	}
}

@media (max-width: 1023.98px) { 
.menu-list {
  gap: 2em;
  flex-direction: column;
}
.site-header{
  padding-top: 20px;
  padding-bottom: 20px;
}
.site-header {
  background-color: rgba(250, 249, 247, 1);
  position: relative;
}
.box-service a {
  min-height: inherit;
  opacity: 1;
  height: 54px;
  transform-origin: left top;
  -o-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  transform: scaleX(1);
}
.site-header img.logo{
  max-width: 190px;
}
.main-navigation ul {
  padding: 0 5px;
}
#primary-menu li a {
  font-size: 11px !important;
}
#primary-menu > li {
  margin: 0 7px;
}
main {
  padding-top: 81px;
}
.section-project-banner {
  height: calc(100vh - 81px); 
}

}

/* Medium devices (tablets, less than 992px)*/
@media (max-width: 991.98px) { 

#site-navigation{
  display: none;
}
.overlay-serv .header-services {
  min-height: auto;
}
.button{
  padding: 16px 25px;
}
section,
.row-back-forth {
  padding: 60px 0 !important;
}
section.section-our-work{
  padding: 1.5rem 0 !important;
}
section.w-margin {
  margin: 60px 0;
}
.section-team {
  min-height: inherit;
  margin-bottom: 0;
}
.column-reverse-mv{
  flex-direction: column-reverse !important;
}
.header-fluid{  
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.site-header img.logo {
  max-width: 149px;
}
.site-branding, .header-cta {
  padding: 0 27px;
 }
 .site-branding{
  border-right: 0;
 }
 ul.responsive-menu-items a{
  font-size: 17px;
  line-height: 1.5;
  font-weight: 600;
}

.p-mv-t1 {
  padding-top: 1em !important;
}
.p-mv-b1 {
  padding-bottom: 1em !important;
}
.p-mv-t0 {
  padding-top: 0 !important;
}
.p-mv-b0 {
  padding-bottom: 0 !important;
}
.m-mv-t0 {
  margin-top: 0 !important;
}
.m-mv-b0 {
  margin-bottom: 0 !important;
}
#footer-menu{
  margin: 0 !important;
  flex-direction: column;
    gap: 5px;
}
.copyright-info {
  padding-top: 16px;
  padding-bottom: 16px;
}
.col-footer p {
  margin-bottom: 12px;
}
.site-footer {
  padding: 40px 0 0;
}
.line-footer {
  margin: 40px auto 0 auto;
}
.hide-lg{
  display: none !important;
}
.media-slider{
  height: 50vh;
  width: 100vw;
  
}
.section-main-banner .media-slider{
  margin-left: -2rem;
}
.box-slider { 
  padding: 0 1rem 0;
}
.list-slider{
  width: 100%;
  bottom: 0;
  top: unset;
  left: unset;
  position: relative;
  margin: 0 auto;
  right: unset;
  flex-direction: row;
  transform: none;
  margin-top: 3em;
  margin-bottom: 3em;
  color: var(--color-forest-green);
  padding-right: 1rem;
  padding-left: 1rem;
}
.dots-box{
  width: 100%;
}
.main-slider .owl-dots .owl-dot.active span {
  background: rgba(49, 57, 50, 1) !important;
}
.main-slider .owl-dots .owl-dot span:hover{
  background: transparent;
}
.main-slider .owl-dots{
  background: rgba(49, 57, 50, 0.40);
  flex-direction: row;
}
.main-slider .owl-dots .owl-dot span{
  height: 8px;
  width: 100%;
}
.button-list{
  flex-direction: column;
}
h2 br{
  display: none;
}
.section-social .col-info {
  padding: 2rem !important;
}
.box-colored{
  padding: 2rem;
}
.image-content{
  height: auto;
}
.content-team{
  min-height: auto;
  margin-top: 0;
}
.overlay-team{
  top: 0;
  position: relative;
  padding-top: 2rem;
}
.image-content {
  height:30em;
}

	#welcome .button-list,
	#welcome-shop .button-list{ 
  align-items: center;
}
	.section-social .col-info{
		    padding-bottom: 0 !important;
	}
  .box-link-service,
.box-link-service a{
  opacity: 1 !important;
  height: 54px !important;
  min-height: 54px !important;
  transform: scaleX(1) !important;
  transform-origin: left top !important;
}
.box-cta,
.section-social{
  text-align: center;
}
	.section-contact .col-info {  
    text-align: center;
}
.media-work {
  min-height: 20em;
}
.hide-tb{
  display: none;
}
.media-content.accordion,
.media-back-forth{
  width: 100vw;
  margin-left: -2rem;
}
.col-content{
  padding: 60px 1rem;
}
.media-back-forth {
  height: 25em !important;
  position: relative;
}
main {
  display: block;
  padding-top: 81px;
}
.section-contact-map .row {
  flex-direction: column-reverse;
}
.box-map {
  height: 35em;
  width: 100vw;
  margin-left: -2rem;
}
.section-project-banner {
  height: 50vh;
}
.section-project-info .row{
  flex-direction: column-reverse;
}
.col-gallery{
  margin-bottom: 3em;
}
.slide-products .uk-slidenav {
  padding: 10px !important;
  background-color: rgba(238, 233, 225, 0.87) !important;
}
.uk-position-center-left-out {
  right: 94%;
  width: max-content; 
}
.uk-position-center-right-out {
  left: 94%;
  width: max-content; 
}
#content-slide div{
  height: 25em;
}
.project-title {
  background-color: var(--color-cream);
  padding: 1rem 1.5rem 1rem 1.5rem;
  max-width: fit-content;
}
.columnr-reverse-mv{
  flex-direction: column-reverse;
}

.glider-next svg, .glider-prev svg {
  max-width: 40px;
}
.page-post-banner {
  height: auto;
  padding: 3rem 0 !important;
}
.row{
  margin-right: -2rem;
  margin-left: -2rem;
}
.container-fluid, .container{
  padding-right: 2rem;
  padding-left: 2rem;
}
.footer-contact p{
  display: flex;
  flex-direction: column;
  gap: 5px;
}

}

/* Small devices (landscape phones, less than 768px)*/
@media (max-width: 767.98px) {  

ul.responsive-menu-items li ul.sub-menu a {
  padding: 6px 13px 4px 22px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
}
ul.responsive-menu-items li.menu-item-has-children::after
{
  top: 6px;
}
ul.responsive-menu-items li.menu-item-has-children.open::after{
  top: 5px;
}
.box-team-member .img{
  height: 20em;
}
.col-info-box{
  margin-bottom: 1em;
}
.ih-item.square.effect6 .info{
  visibility: visible;
    opacity: 1;
}
.ih-item.square.effect6.from_top_and_bottom a .info h2 {
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
}
	.section-team-general .box-team-design {
    height: 16em;
}
}
/* X-Small devices (portrait phones, less than 576px)*/
@media (max-width: 575.98px) {  
 
.button {
  padding: 13px 22px;
  font-size: 14px;
}
.hide-sm{
  display: none !important;
}
	.section-team-general .box-team-design {
    height: auto;
}
h1,
h2.main-headline {
  font-size: 40px;
  line-height: normal;
  letter-spacing: 0.4px;
  text-shadow: none;
}
h2{
  font-size: 32px;
  line-height: normal;
  letter-spacing: 0.28px;
}
h3{
  font-size: 28px;
}
.contact-headline{
  font-size: 30px;
}
.subheading{
  font-size: 13px;
}
.dp-1, .dp-1 p, .dp-1 ul, .dp-1 ol, .dp-1 li{
  font-size: 16px !important;
  line-height: 24px;
  letter-spacing: 0.16px;
}
.dp-2, .dp-2 p, .dp-2 ul, .dp-2 ol, .dp-2 li{
  font-size: 16px !important;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.16px;
}
.section-contact .media-content{
  height: 14em;
}
.header-fluid {
  padding: 0 39px;
}
.site-branding{
  padding: 0 19px;
}

.btn span{
    font-size: 16px;
    line-height: 18px;
    letter-spacing: 0.48px;
}
.box-service { 
  height: 350px;
}
.grid-wrapper {
  column-gap: 16px;
}
.grid-wrapper > div{
  margin-bottom: 16px;
}
.grid-wrapper .tall {
    height: 14em;
}
.grid-wrapper .default {
  height: 12em;
}
.grid-wrapper .medium {
  height: 10em;
}
.grid-wrapper .small {
    height: 8em;
}
.media-content{
  height: 25em !important;
}
.gravity-trade{
  padding: 30px;
}
.gravity-trade .gform_wrapper.gravity-theme .gform_fields{
  flex-direction: column;
  display: flex;
}
.gravity-trade .gform_wrapper.gravity-theme .ginput_container_address span {
  flex: 0 0 100%;
}
.gravity-trade .gform_wrapper .gform_fields {
  grid-row-gap: 15px 
}
.gravity-trade .gfield--type-fileupload{
  margin-top: 15px;
}
.gravity-trade .gform_button{
  max-width: 100%;
}
.accordion{
  font-size: 25px;
}
.image-content {
  height: 22em;
}
.gform_fields {
  grid-column-gap: 0 !important;
  grid-row-gap: 15px !important;
  max-width: 100%;
}
.slick-prev, .slick-next {  
  top: 42%;
}
.media-work {
  min-height: 15em;
}
.col-info {
  padding: 3rem 4rem !important;
}
.col-content{
  padding: 60px 0 !important;
}
ul.responsive-menu-items a {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 600;
}
.media-back-forth {
  height: 20em !important;
  position: relative;
}
.btn {
  padding: 0px 22px;
  width: 100%;
}
.box-map{
  height: 28em;
}
.ih-item.square, .ih-item.square a { 
  height: 25em;
}
.section-team-general .dp-1 p:first-child {
  margin-bottom: 0;
}
}

@media (max-width: 480px) { 
  .grid-wrapper,
  .mansory-wrapper {
    column-count: 1;
    display: flex;
    flex-direction: column;
}
.grid-wrapper div:first-child {
  margin-top: 0;
}
.grid-wrapper div{
  height: 20em !important;
}
#service-fabric .grid-wrapper .medium{
  order: 1;
}
.media-content{
  height: 20em !important;
}
#content-slide div {
  height: 20em;
}
}

@media (max-width: 390px) { 
  .grid-wrapper div{
    height: 13em !important;
  }
 }
 @media (max-width: 320px) { 

 }







