:root {
	--white: #FFF;
	--brown: #8A5E34;
	--light-brown: #D4A276;
	--green: #5A6552;
	--beige: #F9F5F2;
}

html {
  scroll-behavior: smooth;
}

.bg-green {
	background-color: var(--green);
}

.bg-beige {
	background-color: var(--beige);
}

.scrolling-banner {
 	overflow: hidden;
 	white-space: nowrap;
 	padding: 10px 0;
  	position: relative;
	color: var(--white);
}

.scrolling-track {
  display: flex;
  animation: scroll-loop 20s linear infinite;
}

.scrolling-text {
  flex-shrink: 0;
  padding-right: 100px; /* space between repeats */
  font-size: 1.2rem;
  font-style: italic;
	font-family: "Prata", serif;
}

/* Animation keyframes */
@keyframes scroll-loop {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

.tab {
  padding: 10px 0;
  transition: all 0.3s ease;
  border-bottom: 2px solid transparent;
}

.tab.active {
  border-bottom: 2px solid #d5a6bd;
  font-weight: bold;
}

.left-column p {
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  padding: 8px 0;
}

.left-column p.active {
  border-bottom: 2px solid var(--green);
  font-weight: bold;
}

.left-column h3 {
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
  padding: 8px 0;
}

.left-column h3.active {
  border-bottom: 2px solid var(--green);
  font-weight: bold;
}


.scroll-section {
  background: var(--white);
  padding: 60px 0;
}

.scroll-container {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

.left-column {
  flex: 1;
  position: sticky;
  top: 100px; /* adjust as needed */
  align-self: flex-start;
}


.right-column {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.content-block {
  background: var(--beige);
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
  font-size: 1.1rem;
}
/* ----------------------------------------------------- Background Styles ------------------------------------------------- */
.bg-purple {
	background-image: linear-gradient(to right, rgba(69,29,52,1), rgba(128,52,136,1));
}


.background-centered {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.min-height {
	/*min-height: 55vh;*/
	min-height: 25vw;
}
.min-height-intro {
	min-height: 22vw;
}

/* ----------------------------------------------------- Menu Styles ------------------------------------------------- */

.menu ul {
	padding: 0px;
	margin: 0;
}
.menu li {
	list-style: none;
	display: inline-block;
	padding: 3px 15px;
	background-image: none;
	margin-bottom: 10px;
}
.menu a {
	color: var(--white);
	font-size: 17px;
	font-weight: 600;
	text-decoration: none; 
}

/* ----------------------------------------------------- Service Banner Styles ------------------------------------------------- */

.service-text {
	width: 50%;
}

.quote-box {
	right: 5%; 
	bottom: -40%;
	width: max-content;
}

.quote-box-left {
	left: 5%; 
	bottom: -40%;
}

.right-image {
	/*margin-left: -75px;*/
	position: absolute;
 	right: 6%;
}


/* ----------------------------------------------------- FAQ Styles ------------------------------------------------- */


.accordion-container {
	display: flex;
}
.accordion {
	width: 50%;
}

.accordion .accordion-item {
  border-bottom: 1px solid var(--green);
	width: calc(100% - 40px);
	margin: 10px 20px;
}
.accordion .accordion-item button[aria-expanded='true'] {
}
.accordion button {
  position: relative;
  display: block;
  text-align: left;
  width: 100%;
  padding: 1em 0;
  color: var(--green);
  font-size: 1.15rem;
  font-weight: 400;
  border: none;
  background: none;
  outline: none;
}
.accordion button:hover, .accordion button:focus {
  cursor: pointer;
  color: var(--green);
}
.accordion button:hover::after, .accordion button:focus::after {
  cursor: pointer;
  color: var(--green);
  border: 1px solid var(--green);
}
.accordion button .accordion-title {
  padding: 1em 1.5em 0 0;
	font-size: 18px;
	font-weight: 300;
	color: var(--green);
}
.accordion button .icon {
  display: inline-block;
  position: absolute;
  top: 50%;
	transform: translateY(-50%);
  right: 0;
  width: 22px;
  height: 22px;
}
.accordion button .icon::before {
	display: block;
	position: absolute;
	content: '\f078';
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	transition-duration: 0.4s;
	color: var(--green);
}
.accordion button[aria-expanded='true'] {
  color: var(--green);
}
.accordion button[aria-expanded='true'] .icon::before {
	transform: rotate(-180deg);
	transition-duration: 0.4s;
}
.accordion button[aria-expanded='true'] + .accordion-content {
  opacity: 1;
  /*max-height: 9em;*/
  max-height: max-content;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
  will-change: opacity, max-height;
	padding-bottom: 30px;
}
.accordion .accordion-content {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  -webkit-transition: opacity 200ms linear, max-height 200ms linear;
  transition: opacity 200ms linear, max-height 200ms linear;
  will-change: opacity, max-height;
}
.accordion .accordion-content p {
  font-weight: 300;
}


/* ----------------------------------------------------- Contact Banner Styles ------------------------------------------------- */

.contact-danielle-wrapper {
  position: relative;
  height: 400px;
  margin-bottom: 50px; /* So overlap looks natural */
}

.bg-green-bar {
  background-color: #5a6450;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: 1;
}

.z-2 {
  z-index: 2;
}

.danielle-image-wrapper {
  width: 600px;
  height: 600px;
  border-radius: 50%;
  overflow: hidden;
  position: relative;
  top: -60px;
  z-index: 3;
}

.danielle-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.contact-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* ----------------------------------------------------- Home Hero Styles ----------------------------------------------------- */

#video-container {
  position: relative;
  /*padding-bottom: 56.25%;*/
  padding-bottom: 51.5%;
  height: 0;
  width: 100%;
  overflow: hidden;
}
#home_hero #video-container iframe {
	position: absolute;
 	top: -5%;
 	left: -5%;
 	width: 110%;
	height: 110%;
}


#video-container video-youtube-inner {
	position: absolute;
 	top: 0%;
	left: -5%;
	width: 110%;
	height: 110%;
}

/*other video styles*/
	.video-youtube {
		width: 100%;
		height: 800px;	
	}

	#video-container iframe {
		position: absolute;
		top: 0%;
      	left: 0%;
      	width: 100%;
      	height: 100%;
	}
/*END other video styles*/

#home_hero {
	display: flex;
	align-items: flex-end;
	position: relative;
	padding: 0;
	/*padding: max(7%, 40px) 5% 5% 5%;*/
}

.header-text {
	padding: 6%;
}
.video-content.header-text {
	padding: 2% 6%;
}

#home_hero * {
	transition-duration: 0.3s !important;
}
.overlay {
	width: 100%; 
	height: 100%; 
	background-color: #000; 
	background-color: rgba(0,0,0,0.40);
}
.overlay-gradient {
	width: 100%; 
	height: 50%; 
	bottom: 0;
	background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.6));
	margin-left: -15px;
}
#home_hero .image-on-hover {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #9BA4AD;
	opacity: 0;
	will-change: opacity;
}
#home_hero .image-on-hover.active {
	opacity: 1;
}

#home_hero h1 {
	max-width: 1500px;
	color: var(--white) !important;
}
#home_hero h1 a {
	text-decoration: none !important;
	color: var(--white) !important;
}

#home_hero.service2-active h1 *, #home_hero.service1-active h1 *, #home_hero.service3-active h1 *,
#home_hero.service2-active .accordion-tab *, #home_hero.service1-active .accordion-tab *, #home_hero.service3-active .accordion-tab * {
	color: var(--white) !important;
}
#home_hero.service2-active h1 *:not(#service2_btn), #home_hero.service1-active h1 *:not(#service1_btn), #home_hero.service3-active h1 *:not(#service3_btn) {
	opacity: 0.22 !important;
}


.home-hero-content {
	display: flex;
	justify-content: space-between;
	width: 100%;
	height: 100%;
}
.video-content {
	width: 60%;
	height: auto;
	top: 46%;
}

.home-hero-content #title {
	width: 60%;
	position: absolute;
  	bottom: 5%;
	margin-bottom: 0;
}
.video-content #title {
	font-size: 4vw;
}


.home-hero-content-home #title {
	width: 60%;
	position: absolute;
  	bottom: 5%;
	margin-bottom: 0;
	font-size: 40px;
}


.home-hero-content #buttons {
	width: 30%;
	display: flex;
	justify-content: center;
	position: absolute;
	bottom: 5%;
  	right: 5%;
}

.header-title-mobile {
		display: none;
	}

#home_services {
	min-height: 80vh;
	display: flex;
	align-items: flex-end;
	position: relative;
	padding: max(7%, 40px) 5% 5% 5%;
}
#home_services * {
	transition-duration: 0.3s !important;
}
.overlay {
	width: 100%; 
	height: 100%; 
	background-color: #000; 
	background-color: rgba(0,0,0,0.40);
}
.overlay-gradient {
	width: 105%; 
	height: 100%;
	background-image: linear-gradient(to right, rgba(69,29,76,0.8), rgba(69,29,76,0));
	margin-left: -15px;
}

.overlay-gradient-home {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.2));
}

.overlay-gradient-inner {
	background-image: linear-gradient(to top, rgba(0,0,0,0.8), rgba(0,0,0,0)); /*was linear-gradient(to top, rgba(69,29,76,0.8), rgba(69,29,76,0)) */
	min-height: 35vw;
}
.overlay-gradient-video {
	background-image: linear-gradient(to right, rgba(0,0,0,0.2), rgba(0,0,0,0));
}
.overlay-gradient-top {
	background-image: linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0)); 
	height: 200px; 
	position: absolute; 
	width: 100%;
}

#home_services .image-on-hover {
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #9BA4AD;
	opacity: 0;
	will-change: opacity;
	overflow: hidden;
}
#home_services .image-on-hover.active {
	opacity: 1;
}
#home_services .text-on-hover {
	opacity: 0;
	position: absolute;
	left: 5%;
	bottom: 100px;
	width: 50%;
}
#home_services .text-on-hover.active {
	opacity: 1;
}

#home_services h2 {
	max-width: 1500px;
	color: var(--white) !important;
}
#home_services h2 a {
	text-decoration: none !important;
	color: var(--white) !important;
}

#home_services.service2-active h1 *, #home_services.service1-active h1 *, #home_services.service3-active h1 *,
#home_services.service2-active .accordion-tab *, #home_services.service1-active .accordion-tab *, #home_services.service3-active .accordion-tab * {
	color: var(--white) !important;
}
#home_services.service2-active h1 *:not(#service2_btn), #home_services.service1-active h1 *:not(#service1_btn), #home_services.service3-active h1 *:not(#service3_btn) {
	opacity: 0.22 !important;
}


.home-services-content {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.home-services-content #title {
	/*width: 60%;*/
	padding-right: 5%;
}
.home-services-content #buttons {
	width: 40%;
	display: flex;
	justify-content: center;
	padding-bottom: 100px;
	position: absolute;
	right: 5%;
	bottom: 20px;
}


/* ----------------------------------------------------- Header And Banner Image Styles ---------------------------------------------------------------- */

header {
	/*position: absolute;*/
	width: 100%;
	top: 0;
	left: 0;
	right: 0;
	/*padding: 50px 5%;*/
}

.logo {
	width: 60%;
	max-width: 300px;
	z-index: 99999;
  	position: relative;
}
.overlay-gradient {
	width: 100%; 
	height: 100%; 
	background-image: linear-gradient(to right, rgba(69,29,76,0.8), rgba(69,29,76,0));
	mix-blend-mode: multiply;
	position: absolute;
	margin-left: -25px;
}

.banner-image {
	width: 100%;
	height: auto;
	min-height: 35vw; /*was 65vh*/
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	display: flex;
	flex-direction: column;
}


.banner-image-text {
  position: absolute;
  bottom: 5%;
  width: 70%;
  color: var(--white);
  font-weight: 400;
  font-size: 35px;
  line-height: initial;
}
.blog {
	position: relative;
	margin-bottom: 50px;
}
.blog:after {
	content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 93%; /* Change this to whatever width you want. */
    padding-top: 20px; /* This creates some space between the element and the border. */
    border-bottom: 1px solid var(--light-green); /* This creates the border. Replace black with whatever color you want. */
	position: absolute;
	bottom: 0;
}
.cat-post-image {
	width: 100%;
	height: 20vw;
	object-fit: cover;
	object-position: center;
	margin-bottom: 20px;
}/* ----------------------------------------------------- Contact Form Styles ---------------------------------------------------------------- */

.nf-before-form-content {
	padding-left: 0;
}
.nf-form-content button, .nf-form-content input[type="button"], .nf-form-content input[type="submit"] {
	background-color: var(--green) !important;
	cursor: pointer;
	width: 100% !important;
	color: white !important;
	border: none;
	padding: 10px;
}
.nf-form-content button:hover, .nf-form-content input[type="button"]:hover, .nf-form-content input[type="submit"]:hover {
	color: var(--green) !important;
	background-color: var(--beige) !important;
}
.nf-before-form-content {
	max-width: 1000px;
	margin: 0 auto;
	padding: 20px 5px;
}
.field-wrap select {
	background-color: white !important;
	border: solid 1px var(--green) !important;
}
.nf-field-element textarea {
	border: solid 1px var(--green) !important;
}

	
/* ----------------------------------------------------- Generic Content Styles ---------------------------------------------------------------- */

.content-padding {
	padding: 6% 6% 6% 6%;
}
.content-padding-sm {
  padding: 2.5%;
  padding-top: 2.5%;
}
.content-padding-purple {
	padding: 4%;
}
.content-margin {
	margin: 5% 0;
}
.content-padding-extra {
	padding-left: 10%;
	padding-right: 10%;
}
.solution-box {
	width: 32%;
	height: 75vh;
}
.overlay-text {
	position: absolute;
	bottom: 0;
	background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.8));
	color: var(--white);
	padding: 15% 8% 8% 8%;
	width: 100%;
}
.overlay-text h1, .overlay-text h2, .overlay-text h3, .overlay-text h4, .overlay-text h5, .overlay-text p {
	color: var(--white);
}
.overlay-text p {
	font-size: 16px;
	line-height: 22px;
}
.background-center {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.header-padding {
		padding-top: 7%;
	}


/* ----------------------------------------------------- Button and A Styles ---------------------------------------------------------------- */

button {
	transition-property: all;
	transition-duration: 500ms;
}
button:hover {
	cursor: pointer;
}

.btn-outline {
	font-weight: 300 !important;
	text-align: center;
	border: 2px solid #8A5E34;
	color: #D4A276;
	font-size: 16px;
	display: block;
	padding: 10px;
	text-decoration: none !important;
	margin-top: 5%;
	text-transform: uppercase;
	border-radius: 35px;
  background-color: white;
	padding-left: 20px;
  padding-right: 20px;
}
a .btn-outline {
	text-decoration: none;
	color: #D4A276 !important;
}

.btn-outline:hover {
	color: white;
	cursor: pointer;
	background-color: #8A5E34;
}


/* ----------------------------------------------------- Nav Styles ------------------------------------------------- */

.overlay-menu {
	min-height: 60vh;
	width: 100%;
	position: absolute;
	z-index: 3;
	top: -300vh;
	left: 0;
	overflow: hidden;
	transition: 0.3s;
	display: flex;
	background: var(--grey);
	padding: 185px 5% 0 5%;
}
.overlay-inner {
	margin: auto;
	/*display: flex;*/
	width: 100%;
}
.open-menu {
	top: 0 !important;
}
.overlay-inner .menu-section {
	width: 21.5%;
	margin: 0 20px;
}
.overlay-inner .menu-section-lrg {
	width: 18%;
}
.overlay-inner div h3{
	margin-bottom: 12px;
	color: #fff;
}
.menu {
	padding: 0px !important;
	margin-bottom: 0 !important;
}
.menu ul {
	padding: 0;
}
.menu-row {
	display: flex; 
	margin-bottom: 3.5vh; 
	margin-top: 0;
}
.menu-section ul li {
	list-style: none;
	padding: 0;
	display: block;
	margin-bottom: 7px;
	text-decoration: none;
	line-height: 20px;
}

.menu-section a {
	color: white !important;
}
.menu-margin-top {
	margin-top: 51px !important;
}
.menu-section ul li a {
	text-decoration: none;
}

.desktop-hidden {
	display: none;
}

/**** testimonial ****/
.testimonial-card {
  background-color: #f7f3f0;
  border-radius: 20px;
  padding: 30px;
  margin: 15px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
  height: 100%;
  position: relative;
}

.testimonial-stars {
  position: absolute;
  top: 20px;
  right: 30px;
  font-size: 60px;
  color: #7c4c1f;
}

.testimonial-stars i {
  margin-left: 2px;
}

.quote-mark {
  font-size: 100px;
  color: #e4b284;
  font-weight: bold;
  margin-bottom: -50px;
}

.testimonial-card p {
  font-size: 0.95rem;
  color: #5b4b3b;
  margin-bottom: 15px;
}

.testimonial-name {
  color: #7c4c1f;
  font-weight: bold;
  font-size: 0.95rem;
}


/* ----------------------------------------------------- 2200px + ---------------------------------------------------------------- */

@media only screen and (min-width : 2200px) {
}


/* ----------------------------------------------------- Smaller than 2200px ----------------------------------------------------- */

@media only screen and (max-width : 2200px) {
}


/* ----------------------------------------------------- Smaller than 1800px ----------------------------------------------------- */

@media only screen and (max-width : 1800px) {
}


/* ----------------------------------------------------- Smaller than 1750px ----------------------------------------------------- */

@media only screen and (max-width : 1750px) {
}


/* ----------------------------------------------------- Smaller than 1650px ----------------------------------------------------- */

@media only screen and (max-width : 1650px) {	
}


/* ----------------------------------------------------- Smaller than 1550px ----------------------------------------------------- */

@media only screen and (max-width : 1550px) {

}


/* ----------------------------------------------------- Smaller than 1450px ----------------------------------------------------- */

@media only screen and (max-width : 1450px) {

}


/* ----------------------------------------------------- Smaller than 1350px ----------------------------------------------------- */

@media only screen and (max-width : 1350px) {
	.min-height {
		min-height: 40vw;
	}
	.danielle-image-wrapper {
	  width: 450px;
	  height: 450px;
	  top: -22px;
	}
}


/* ----------------------------------------------------- Smaller than 1300px ----------------------------------------------------- */

@media only screen and (max-width : 1300px) {
	.right-image {
		right: 3%;
	}
} 


/* ----------------------------------------------------- Smaller than 1200px - Bootstrap XL ----------------------------------------------------- */

@media only screen and (max-width : 1200px) {
	.sm-screen-hidden {
		display: none;
	}
	.mobmenur-container {
		top: 35px !important;
	}
	.min-height {
		min-height: 43vw;
	}
	
}

/* ----------------------------------------------------- Smaller than 1125px ----------------------------------------------------- */

@media only screen and (max-width : 1125px) {
	.min-height {
		min-height: 48vw;
	}
	.banner-image-text {
		bottom: 0%;
		width: 100%;
	}

	
}

/* ----------------------------------------------------- Smaller than 1080px ----------------------------------------------------- */
@media only screen and (max-width : 1080px) {

}

/* ----------------------------------------------------- Smaller than 1024px - iPad landscape ----------------------------------------------------- */

@media only screen and (max-width : 1024px) {	
	.mobile-padding-bottom {
		padding-bottom: 7% !important;
	}	
	
	.header-padding {
		padding-top: 25%;
	}
	
	.overlay-inner .menu-section {
	  width: 90%;
	  margin: 0 20px;
	}	
	
	.banner-image-text {
		bottom: 0%;
		width: 90%;
	}
	
	.home-hero-content #buttons  {
		padding-bottom: 0;
	}
	
	.service-text {
		width: 70%;
		margin-left: 6%;
		margin-right: 6%;
		margin-bottom: 5%;
	}	
	
	.quote-box {
		left: 7.5%;
    	bottom: -40px;
		position: relative !important;
	}
	
	.quote-box-left {
		bottom: 0;
	}
	
	.right-image {
		position: relative;
    	right: 0;
		padding: 0;
	}
	.intro {
		padding: 0;
	}
	.banner-image {
		height: 62vh;
		min-height: 400px;
		background-position: center center !important;
	}
	.banner-image-inner {
		height: fit-content !important;
		min-height: 62vh !important;
	}
	.overlay-gradient-inner {
		height: 62vh;
		min-height: 400px;
	}

}

/* ----------------------------------------------------- Smaller than 991px ------------------------------------------------------ */

@media only screen and (max-width : 991px) {
	.mobmenur-container {
		top: 30px !important;
	}
	.min-height {
		min-height: 56vw;
	}
	.home-services-content #buttons {
		width: 90%;
		padding-bottom: 10px;
		bottom: 45px;
	}
	#home_services .text-on-hover {
		bottom: 130px;
		width: 90%;
	}
	
  .scroll-section .scroll-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  .scroll-section .left-column {
    position: static;   
    overflow: visible;   
  }

  .scroll-section .left-column [data-tab] {
    display: none !important;
  }

  .scroll-section .right-column {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    width: 100%;
  }

  .scroll-section .content-block {
    width: 100%;
    border-radius: 12px; 
    padding: 16px;      
  }
	
.contact-danielle-wrapper .row {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Make green bar deeper to contain image */
  .bg-green-bar {
    height: 550px; 
    display: flex;
    align-items: center;
    justify-content: center;
  }

   .danielle-image-wrapper {
    position: relative;
    margin: 0 auto 20px auto; /* centers wrapper block-level */
    width: 55vw;
    height: 55vw;
    max-width: 260px;
    max-height: 260px;
  }

  .danielle-image-wrapper {
    margin: 0 auto 10px auto; /* was 20px — reduce space under image */
    width: 55vw;
    height: 55vw;
    max-width: 260px;
    max-height: 260px;
  }

  /* Center content under image */
  .contact-danielle-wrapper .col-md-7 {
    display: flex;
    flex-direction: column;
    align-items: center;
	  padding-top: 0;
	  margin-top: -30px;
  }

	.contact-danielle-text {
		padding-top: 15px;
	}
  .contact-info {
    justify-content: center;
    gap: 18px !important;
    flex-wrap: wrap;
  }
	
	.contact-danielle-wrapper {
		margin-bottom: 180px;
	}
	
	.testimonial-card {
		margin-bottom: 5% !important;
	}
	.testimonial-stars {
	  font-size: 40px;
	}
	.accordion {
		width: 100%;
	}
	
}

/* ----------------------------------------------------- Smaller than 870px ------------------------------------------------------ */

@media only screen and (max-width : 870px) {	
	.min-height {
		min-height: 71vw;
	}
	.category {
		margin-top: 40%;
	}
	.cat-post-image {
		height: 50vw;
	}
	/*.d-flex {
		display: block !important;
	}*/
	.home-hero-content {
	  display: block;
	}
	.home-hero-content #title {
		width: 90%;
		bottom: 20%;
	}
	.home-hero-content #buttons {
	  width: 90%;
	}

}

/* ----------------------------------------------------- Smaller than 800px ------------------------------------------------------ */

@media only screen and (max-width : 800px) {	
	.caption h1 {
	  margin-bottom: -25px;
	  width: 100%;
	  line-height: 7vw;
	}
}


/* ----------------------------------------------------- Smaller than 768px - iPad portrait ------------------------------------------------------ */

@media only screen and (max-width : 768px) {
	.mobile-center {
		text-align: center !important;
	}
	.mobile-left {
		text-align: left !important;
	}
	.mobile-hidden {
		display: none;
	}
	.mobile-padding {
		padding: 7%;
	}
	.desktop-hidden {
		display: block;
	}

	.mobmenur-container {
		top: 10px !important;
		margin-right: 0 !important;
	}
	.min-height {
		min-height: 30vh;
	}
	.accordion button .accordion-title {
		font-size: 18px;
	}
	.video-youtube {
		width: 100%;
		height: 200px;	
	}
	
	.home-hero-content #buttons {
		display: none;
	}
	.header-section {
		position: relative;
		background-color: var(--dark-purple); 
	}
	.header-title {
		display: none;
	}
	
	.header-title-mobile {
		display: flex;
	}
	
	.logo {
	  	width: 180%;
    	max-width: 180px;
		min-width: 100px;
	}
	
	.padding-none-bot {
		padding-bottom: 0;
	}
	.overlay-gradient-top {
		/*background-image: linear-gradient(to bottom, rgba(0,0,0,0.4), rgba(0,0,0,0));
  		height: 80px;*/
		display: none;
	}
	
		.accordion-container {
		flex-wrap: wrap
	}
	.accordion {
		width: 100%;
	}
	.accordion .accordion-item {
	width: calc(100%);
	margin: 10px 0px;
}
	.scrolling-text {
		padding-right: 50px;
	}
	.scrolling-track {
		animation: scroll-loop 10s linear infinite;
	}

}


/* ----------------------------------------------------- Smaller than 700px ------------------------------------------------------ */

@media only screen and (max-width : 700px) {

}

/* ----------------------------------------------------- Smaller than 600px ----------------------------------------------------- */

@media only screen and (max-width : 600px) {
	.banner-image {
		background-position-x: right 35% !important;
		height: 45vh;
		min-height: 300px;
	}
	.overlay-gradient-inner {
		height: 45vh;
		min-height: 300px;
	}
	.service-text {
		width: 80%;
	}
	.quote-box {
		bottom: 0;
		max-width: 100%;
	}
	.small-quote {
		font-size: 16px !important;
		line-height: 18px;
	}
	.large-quote {
		font-size: 30px !important;
		line-height: inherit;
	}
	.xl-large-quote {
		font-size: 88px !important;
	}
	.mobile-padding-none {
		padding: 0;
	}
	.sp-testimonial-free-section {
		margin: 0 !important;
	}
}


/* ----------------------------------------------------- Smaller than 540px ------------------------------------------------------ */

@media only screen and (max-width : 540px) {	

	a.btn-white {
		font-size: 14px;
	}
	.testimonial-stars {
	  font-size: 30px;
	}

}

/* ----------------------------------------------------- Smaller than 450px ------------------------------------------------------ */

@media only screen and (max-width : 450px) {	

	.mobile-justify-left {
		justify-content: left !important;
	}

}