
* {
	
  box-sizing: border-box;
  font-size: 100%;
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  
}

@font-face {
	
	font-family:"drescher-grotesk-bt-semibold-regular" src:url("https://www.dafontfree.net/data/48/d/41620/Drescher Grotesk BT SemiBold.ttf") format("woff"),url("https://www.dafontfree.net/data/48/d/41620/Drescher Grotesk BT SemiBold.ttf") format("opentype"),url("https://www.dafontfree.net/data/48/d/41620/Drescher Grotesk BT SemiBold.ttf") format("truetype");
	font-display: swap;
	
}

html, body {
  height: auto;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto; /* Make sure vertical scroll is allowed */
}

body {
	
	background: #f3f4f6; /* Grey background */
	line-height: 1.5;
	font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
	color: #231F20; /* Raisin Black */
	
}

::selection {

	background: #231F20; /* Raisin Black */
	color: #ffd400;
	
}


/* === Shadow overlapping effect for decor === */

.or-spacer {
  margin: 0 auto;
  width: 75%;
  max-width: 900px;
  position: relative;
}

.or-spacer .mask {
  overflow: hidden;
  height: 20px;
}

.or-spacer .mask::after {
  content: '';
  display: block;
  margin: -25px auto 0;
  width: 100%;
  height: 25px;
  border-radius: 125px / 12px;
  box-shadow: 0 0 8px black;
}


/* === Flipped Version === */
.or-spacer-flipped {
  margin: 0 auto;
  width: 75%;
  max-width: 900px;
  position: relative;
  transform: rotate(180deg);
}

.or-spacer-flipped .mask {
  overflow: hidden;
  height: 20px;
}

.or-spacer-flipped .mask::after {
  content: '';
  display: block;
  margin: -25px auto 0;
  width: 100%;
  height: 25px;
  border-radius: 125px / 12px;
  box-shadow: 0 0 8px black;
}



/* ========== JAVASCRIPT HANDLERS ========== */

/* Default state: Hide ribbon when JS is enabled */
.no-js-ribbon {
  display: none;  /* Hidden by default when JS is enabled */
  /*visibility: hidden;*/
  background-color: #ffc107;
  color: #231F20;
  padding: 0.75em 1.5em;
  text-align: center;
  font-size: clamp(0.875rem, 1.5vw, 1rem);
  font-style: italic;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*transition: visibility 0.3s ease-in-out;  Optional: smooth transition for visibility change */
}

.no-js-dismiss-btn {
  background: none;
  border: none;
  font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
  font-size: 1.5em;
  color: #231F20;
  cursor: pointer;
}

.no-js-dismiss-btn:hover {
  color: #444;
}

.no-js-dismiss-btn:focus {
  outline: none;
}

/* Show the ribbon ONLY when JS is NOT enabled */
noscript + .no-js-ribbon {
  display: flex; /* Visible only when JS is disabled */
}

/* When the checkbox is checked (dismissed by user), hide the ribbon */
#dismiss-banner:checked + .no-js-ribbon {
  display: none;
}

/* Ensure the ribbon is invisible when JS is enabled */
.js-enabled + .no-js-ribbon {
  display: none;
}

/* Styles for any element that has the no-js-disabled class */
.no-js-disabled {
  background-color: #ccc;    /* Grey background */
  color: #666;               /* Muted text color */
  cursor: not-allowed;       /* Change the cursor to show that it's not clickable */
  pointer-events: none;      /* Prevent any mouse events (clicks, hovers, etc.) */
  opacity: 0.6;              /* Faded appearance */
  border: 1px solid #aaa;    /* Optional: a subtle border to indicate disabled state */
  /* Ensure that both <button> and <a> display their inner content nicely */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.75em 1.5em;     /* Match your default-button padding */
  text-decoration: none;     /* Especially for the <a> tag */
  transition: opacity 0.3s ease;
}

/* If you want to remove any hover effects on disabled buttons */
.no-js-disabled:hover {
  background-color: #ccc;
  color: #666;
  box-shadow: none;
}


.js-enabled .no-js-content {
  display: none; /* Hide content that should only show if JS is enabled */
}


/* ALL TEXT */

	.right-align-text {
		
		text-align: right;
		
	}
	
	.center-align-text {
		
		text-align: center;
		
	}
	
	
/* PARAGRAPHS */

	p {
		
		font-size: clamp(1rem, 1.25vw, 1.25rem); /* Base paragraph size */
		margin-bottom: 1.25em;
		line-height: 1.75;
		
	}

	p + p {
		
		margin-top: 2em;
		
	}
	
	.small-print {
		
		font-size: clamp(0.75rem, 1vw, 0.875rem) !important; /* Smaller but still readable */
		color: #666; /* Slightly muted color */
		/* text-align: center; */
		margin-top: 0.5em;
		display: block; /* Ensures it breaks below the button */
		
	}
	
	.newsletter-heading {
		
		font-size: clamp(1rem, 1.5vw, 1.25rem); /* Slightly more visible */
		color: #bbb;
		line-height: 1.3;
		
	}
	
	.privacy-small-print {
		font-style: italic;
		font-size: 1rem;
		margin-bottom: 0;		
	}
	
	.italic {
		font-style: italic;
	}
	


/* HEADINGS */

	h1, h2, h3, h4, h5, h6 {
		
		font-family: Georgia, Times, "Times New Roman", serif;
		letter-spacing: -0.02em; /* Slight tracking in for luxury feel */
		
	}

	h1 {
		
		font-size: clamp(2rem, 5vw, 3rem);
		margin-bottom: 1.25em;
		
	}

	h2 {
		
		font-size: clamp(1.75rem, 4vw, 2.5rem);
		margin-bottom: 1.2em;
		
	}

	h3 {
		
		font-size: clamp(1.5rem, 3vw, 2rem);
		margin-bottom: 1.1em;
		
	}

	h4 {
		
		font-size: clamp(1.125rem, 2.5vw, 2em);
		margin-bottom: 1.2em;
		
	}

	h5 {
		
		font-size: clamp(1rem, 2vw, 1.75em);
		margin-bottom: 1.1em;
		
	}

	h6 {
		
		font-size: clamp(0.875rem, 1.75vw, 1.5em);
		margin-bottom: 1em;
		
	}

/* ========== LINKS & BUTTONS ========== */
	
	a {
		text-decoration: none;
		color: #FFE566; /* Cyber Yellow 60 */
		
	}
	
	a.text-link:hover  {
		
		color: #ffd400; /* Cyber Yellow */
		
	}
	
	.nav-button {
		font-family: Georgia, Times, "Times New Roman", serif;
		font-weight: 500;

		font-size: clamp(0.95rem, 1.5vw, 1.125rem);
		letter-spacing: 0.4px;
		text-decoration: none;
		text-align: center;

		color: #231F20; /* Raisin Black */
		background-color: #fff;
		border: 2px solid #FFE566; /* Cyber Yellow outline */
		border-radius: 4px;

		padding: 0.65em 1.2em;
		margin: 0.5em;

		cursor: pointer;
		white-space: nowrap;
		transition: all 0.3s ease-in-out;

		display: inline-block;
	}

	.nav-button:hover,
	.nav-button:focus {
		background-color: #FFE566;
		color: #231F20;
	}

	.hero-button {
		font-family: Georgia, Times, "Times New Roman", serif;
		font-weight: 600;

		font-size: clamp(1.125rem, 2.5vw, 1.5rem);
		letter-spacing: 0.5px;
		text-decoration: none;
		text-align: center;

		color: #231F20; /* Raisin Black */
	
		background-color: #FFD400; /* Cyber Yellow 100 */

		border: none;
		border-radius: 4px;
		padding: 1rem 2rem;
		margin: 3rem auto;

		cursor: pointer;
		white-space: nowrap;
		display: inline-block;
		transition: background-color 0.3s ease, transform 0.3s ease;

		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
		
		text-transform: uppercase;
	}

	.hero-button:hover,
	.hero-button:focus {
		background-color: #FFE566; /* Cyber Yellow 60 */
		transform: translateY(-2px);
	}
	
	.default-button {
		
		font-family: Georgia, Times, "Times New Roman", serif;
		font-weight: 500;

		font-size: clamp(1rem, 1.5vw, 1.125rem);
		margin-bottom: 1.3em;
		text-decoration: none;		
		
		color: #231F20; /* Raisin Black */
		background-color: #FFE566; /*Cyber Yellow 60 */ 

		transition: background-color 0.3s ease, transform 0.3s ease;	

		border: none;
		border-radius: 2px;
		
		padding: 16px 16px;	
		margin: 16px 0px;

		cursor: pointer;
		tabindex: 0;
		white-space: nowrap;
		display: inline-flex;

	}
	
	.default-button:hover, .default-button:focus, .formbutton:hover, .formbutton:focus {
		
		background-color: #ffd400; /* Cyber Yellow */
		
	}
	
	.secondary-button {
		
		font-family: Georgia, Times, "Times New Roman", serif;
		font-weight: 500;

		font-size: clamp(1rem, 1.5vw, 1.125rem);
		margin-bottom: 1.3em;
		text-decoration: none;		
		
		color: #231F20; /* Raisin Black */
		background-color: #ffd400; /* Cyber Yellow */

		transition: background-color 0.3s ease, transform 0.3s ease;	

		border: none;
		border-radius: 2px;
		
		padding: 16px 16px;	
		margin: 16px 0px;

		cursor: pointer;
		tabindex: 0;
		white-space: nowrap;
		display: inline-flex;

	}
	
	.secondary-button:hover, .secondary-button:focus {
		
		background-color: #FFE566; /*Cyber Yellow 60 */ 
		
	}
	
	.icon-button-div {
		
		display: inline-flex;
		align-items: center;  /* Vertically center items inside the button */
		justify-content: center; /* Optionally, center content horizontally */
		row-gap: 1rem;
	}
	
	/* Button icon alignment helper classes */
	
.button-text, .button-icon {
	
	/*border: 1px solid red;*/
	
}


	
	.button-text {
		
		display: inline-block; /* Ensure the text is treated as a block-level element */
		vertical-align: middle; /* This will ensure it is aligned in the middle of the icon */
		
	}

	.button-icon {
		
		display: flex; /* Enable Flexbox layout */
		align-items: center; /* Vertically center the image inside the span */
		justify-content: center; /* Horizontally center the image inside the span */
		margin: 0;
	}

	.button-icon img {
		
		max-width: 100%; /* Make sure the image fits well */
		height: auto; /* Maintain aspect ratio */
		
	}

	/* Icon on the left side */
	.icon-left .button-text {
		order: 1; /* Place text on the right */
		margin-right: 1rem;
	}

	.icon-left .button-icon {
		order: 0; /* Place icon on the left */
	}

	/* Icon on the right side */
	.icon-right .button-text {
		order: 0; /* Place text on the left */
		margin-left: 1rem;
	}

	.icon-right .button-icon {
		order: 1; /* Place icon on the right */
		transform: scaleX(-1); /* Flip the icon horizontally */
	}


	.icon-centered {

		display: flex;
		justify-content: center; /* Center the content inside the button */
		align-items: center; /* Vertically center the icon */
		padding: 16px; /* Same as buttons with text, or adjust as needed */
		width: auto; /* Adjust the width if needed */
		
	}
	
	/* Remove text inside centered button */
	.icon-centered .button-text {
		
		display: none; /* Hide the text */
		
	}

	
	/* Style for the back-to-top button */
	
	.back-to-top-btn {
		
		display: none; /* Hidden by default */
		position: fixed;
		bottom: 20px;
		right: 20px;
		background-image: url("images/icons/backtotop-icon-primary.svg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 60%; /* adjust between 50%–80% depending on your icon size */
		background-color: #F6F6F6; /* White-ish */
		color: white;
		font-size: 1rem;
		padding: 1em;
		border: none;
		border-radius: 50%;
		cursor: pointer;
		transition: opacity 0.3s ease;
		z-index: 9999;
	}

	.back-to-top-btn:hover {
		
		background-color: #231F20; /* Raisin Black */
		color: #231F20;
		background-image: url("images/icons/backtotop-icon-secondary.svg");

	}

	/* Show button when scrolling */
	.show {
		display: block;
	}

	
/* ========== CONTAINERS & ITEMS ========== */
	
	.container {
		
		max-width: 1500px;
		margin-left: auto;
		margin-right: auto;
		padding: 1rem;
		
	}

	
	.container > .item {
		
		padding: 1rem;
		border-radius: 4px;
		
	}
	
	header {
		background: #ffffff;
	}

/* ========== NEWSLETTER HEADER ========== */

	#newsletter-header {
		background-color: #2d2d2e; /* Black-ish */
		color: #F6F6F6; /* White-ish */
		padding: 0 1rem;
	}
	
	#mc_embed_signup.container {
		margin: 0 auto;
	}
	
	#mc-embedded-subscribe-form { 
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: repeat(3, auto);
		gap: .2rem;
		align-items: center;
		justify-items: center;
	}
	
	#intro-newsletter-div {
		
		grid-column: 1 / -1;
		text-align: center;
		font-size: .9rem;
		width: auto;
		justify-self: center;
		display: inline-block;
		
	}
	
		#intro-newsletter-div p {
			margin: 0;
		}
	
	#email-newsletter-div {
		
		grid-column: 1 / -1;
		display: flex;
		justify-content: center;
		width: 100%;
		
	}
	
		#mc-embedded-subscribe-form input[type=email] {
			width: 100%;
			max-width: 100%;
			padding: .4rem;
			border: 1px solid #ccc;
			border-radius: 3px;
			background-color: #f3f4f6;
			font-size: 0.9rem;
		}
	
	#button-newsletter-div {
		padding: 0;
		margin: 0;
		grid-column: 1 / -1;
		display: flex;
		column-gap: .5em;
		align-items: center;
		justify-content: flex-start; /* Left-align the button */
		width: 100%;
	}
		
		/* Subscribe button inside the button-newsletter-div */
		
		#mc-embedded-subscribe {
			flex-grow: 1;
			display: block;
			margin: 0;
			padding: 0.4rem;
			font-size: 0.9rem;
			line-height: 1.2;
		}
		
		#mailchimp-header-logo {
			margin: 0;
			padding-left: 0.25rem;
			display: flex;
			align-items: center;
		}

		#mc-logo {
			height: 14px;
			opacity: 0.7;
		}

/* ========== NAVIGATION ========== */

	#nav-logo {
	  
		max-width: 70%; /* Ensure the logo doesn't overflow */
		width: auto;
	  
	}
	
	#canadian-flag {
		height: 40px;
		margin-left: 1rem;
	}
	
	.js-enabled #nav-logo {
		
		max-width: 40% !important; /* Ensure the logo doesn't overflow */
		width: auto;
		
	}

	.nav-container {
		
	  display: flex;
	  flex-direction: row;
	  justify-content: center;
	  align-items: center;
	  background: #ffffff;
	  padding: 1rem 2rem;
	  position: relative;
	  z-index: 1000;
	  transform-origin: top center;
	  
	  /*transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;  Smooth transition */
	  
	  transition: transform 0.4s ease, opacity 0.4s ease;
  will-change: transform, opacity; /* <- helps with smoother animation */
  
  backface-visibility: hidden;     /* Helps prevent flickering */
  transform-style: preserve-3d;    /* Ensure children follow transform */
	  
	}

	
	.nav-container .nav-brand {
		
		flex: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		
	}
	
	.js-enabled .nav-container .nav-brand {
		
		justify-content: space-between !important;
		
	}
	
	/* ========== NAV MENU LIST ========== */

		.nav-menu {
			
		  list-style: none;
		  display: flex;
		  gap: 0.5rem;
		  
		}

		.nav-menu li {
			
		  display: inline-block;
		  
		}

		/* ========== NAV TOGGLE BUTTON ========== */

		.nav-toggle {
			
		  display: none;
		  font-size: 1.8rem;
		  background: none;
		  border: none;
		  cursor: pointer;
		  color: #231F20;
		  
		  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out; /* Smooth transition */
		  
		}
		
/* Sticky + animation base styles */
.nav-container.sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  transform: translateY(0); /* reset to visible position */
  opacity: 1;
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;/**/
  z-index: 1000;
  box-shadow: 0 2px 5px rgba(0,0,0,0.05); /* Optional for elevation */
  /* animation: fadeIn 0.3s ease-in-out;
  transition: opacity 0.5s ease; */
}

/* Fade-out style */
.nav-container.hidden {
  transform: translateY(-100%) !important;
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
  transition-delay: 0.1s;
  opacity: 0 !important;
  /* pointer-events: none;
  visibility: hidden; /* Optional for better layout control */
}

/* Fade-in keyframes (optional for extra polish)
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
} */
		
/* ========== HERO SECTION ========== */

	#hero-section {

		background-image: linear-gradient(#FFF, #f3f4f6);
		padding: 1rem 2rem;
		
	}
	
	#hero-container {
		
		text-align: center;
		 height: 50%;
		  
	}
	
	#hero-section mark, #aboutus-section mark {
		
		background: #FFE566 !important;/*Cyber Yellow 60 */
		
	}

/* ========== SERVICES SECTION ========== */

	#services-section {
		margin-top: -20px;

		background-color: rgba(255, 229, 102, 0.3); /* Yellow with 30% opacity */
		background-image:
			
			linear-gradient(to bottom, #FFE566 0%, #FBCC04 50%, transparent 90%),
			repeating-radial-gradient( circle at 0 0, transparent 0, rgba(255, 229, 102, 0.3) 10px ),
			repeating-linear-gradient( #FBCC0455, #FBCC04 );
		
		padding: 5rem 1rem 4rem;

		/* Base color with opacity */
		background-color: rgba(255, 229, 102, 0.3);
		
	}
	
			
	#services-header.item {
		max-width: 1300px;
		margin-left: auto;
		margin-right: auto;
	}
	
	#services-section h2 {

		text-align: center;

	}
	
	#services-section p {
		
		text-align: center;
		padding-bottom: 1rem;
		
	}
	
	#services-container {
		
		display: grid;
		grid-gap: 1em;
		
	}
	
	#services-section > #services-container > .services-item {
		
		background-color: #FFE566; /*Cyber Yellow 60 */
		
		box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
		transition: all 1s ease-out;
			-moz-transition:    all .5s ease-in-out;
			-o-transition:      all .5s ease-in-out;
			-ms-transition:     all .5s ease-in-out;
			transition:         all .5s ease-in-out;
		height: 100%;
		border-radius: 4px;
		
		text-align: center;
		padding: 1rem;
		
	}
	
	#services-section > #services-container > .services-item p {
		
		text-align: left;
		
	}
	

	
/* ========== ABOUT US SECTION ========== */

	#aboutus-section {
		margin-top: -20px;
		background-image: 
			repeating-radial-gradient( circle at 0 0, transparent 0, #FFF 10px ),
			repeating-linear-gradient( #ffffff 0%, #f8f8f855 90%, #f8f8f8 100% );
		background-size: contain;
		background-position: top center;
		background-repeat: no-repeat;
		
		padding: 3rem 1rem 2rem;
		
		overflow: hidden;
		
		opacity: 1;
		background-color: #FFF;

	}
	
	#aboutus-container {
		
		backdrop-filter: blur(50px);
		background: rgba(255, 255, 255, 0.1);
		border-radius: 4px;
		
		box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
		transition: all 1s ease-out;
			-moz-transition:    all .5s ease-in-out;
			-o-transition:      all .5s ease-in-out;
			-ms-transition:     all .5s ease-in-out;
			transition:         all .5s ease-in-out;
		
		max-width: 1300px;
		margin-left: auto;
		margin-right: auto;
	}
	
	#aboutus-item-div {
	
		display: flex;
		flex-direction: column;
		
	}
	
		.aboutus-title-image{
			width: 50%;
			margin: 2rem auto;
		}
		
		#aboutus-button-div {
			
			margin: 1rem auto;
			
		}
	
	#aboutus-container h2 {
		
		text-align: center;
		
	}

		
	.js-enabled  .tooltip-wrapper {
	  position: relative;
	  display: inline-block;
	}

	.js-enabled .tooltip-text {
	  position: absolute;
	  top: 100%;
	  left: 50%;
	  transform: translateX(-50%);
	  background-color: #333;
	  color: #fff;
	  padding: 6px 10px;
	  font-size: 0.85rem;
	  border-radius: 2px;
	  white-space: nowrap;
	  z-index: 999;
	  visibility: hidden;
	  opacity: 0;
	  transition: opacity 0.3s ease;
	}

	.js-enabled  .tooltip-wrapper:hover .tooltip-text {
	  visibility: visible;
	  opacity: 1;
	}

/* ========== UPDATE SECTION ========== */


	#news-section {
		
		/*background: #f3f4f6;  /*Grey background */
		
	}
	
	#news-container {
		
		padding: 2rem;
		display: flex;
		flex-direction: column;
		gap: 2em;
		
	}
	
	#news-container > .item {
		
		padding: 2rem 1rem 1rem;
		box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
		transition: all 1s ease-out;
			-moz-transition:    all .5s ease-in-out;
			-o-transition:      all .5s ease-in-out;
			-ms-transition:     all .5s ease-in-out;
			transition:         all .5s ease-in-out;
		height: 100%;
		border-radius: 4px;
		/*border-left: 2rem solid #FFE566; Cyber Yellow 60 */
		
		backdrop-filter: blur(50px);
		background: rgba(255, 255, 255, 0.1);
		
		/*background: #f3f4f6;  Grey background */
		display: flex;
		flex-direction: column;
		
	}
	
	#javascript-disabled-p {
		
		margin-top: -1em;
		
	}
	
	/* Add specific styles for the news-item buttons */
		.news-item .default-button {
			display: inline-block;  /* Prevents the button from stretching */
			width: auto;  /* Ensures the button width is auto (not full width) */
			margin-left: auto;  /* Push the button to the right */
			margin-right: 0;         /* Optional, ensures no extra space on the right */
			text-align: center;
		}
		
	/* Update the anchor tag */
		#website-update-div .jump-to-form {
			display: block;
			text-align: right;
		}

		/* Update the button inside the anchor tag */
		#website-update-div .jump-to-form button {
			display: inline-block;
			margin-left: auto;
			margin-right: 0;
			width: auto;
		}

		/* Ensuring button text is centered */
		#website-update-div .jump-to-form button {
			text-align: center;
		}
	
	/* Modal styles */
		.modal {
		  position: fixed;
		  z-index: 99999;
		  left: 0;
		  top: 0;
		  width: 100%;
		  height: 100%;
		  overflow: auto;
		  background-color: rgb(0,0,0);
		  background-color: rgba(0,0,0,0.4);
		  padding-top: 60px;
		  
		  opacity: 0; /* Start with hidden modal */
		  visibility: hidden; /* Ensure the modal is not interactive */
		  transition: opacity 0.3s ease, visibility 0s 0.3s; /* Fade and delay for visibility */
		}
		
		.modal.show {
		  opacity: 1; /* Fade-in effect */
		  visibility: visible; /* Make the modal visible */
		  transition: opacity 0.3s ease, visibility 0s; /* Fade effect when showing */
		}

		.modal-content {
		  background-color: #fefefe;
		  margin: 5% auto;
		  padding: 20px;
		  border: 1px solid #888;
		  width: 80%;
		  
		max-width: 900px; /* Ensures the modal content doesn't grow too wide */
		position: relative; /* Needed for the map container */
		}

		.close-button {
		  color: #aaa;
		  float: right;
		  font-size: 28px;
		  font-weight: bold;
		}

		.close-button:hover,
		.close-button:focus {
		  color: black;
		  text-decoration: none;
		  cursor: pointer;
		}
		
		/* Wrapper to make the map responsive */
		.map-wrapper {
			position: relative;
			width: 100%;
			padding-bottom: 75%;  /* Aspect ratio of 4:3 */
			height: 0;
			overflow: hidden;
		}

		/* The iframe will fill the container */
		.map-wrapper iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

		/* .modal-hidden { display: none; } */
		
		/* Optional: Slightly smaller modal for text */
		.privacy-modal-content {
		  
		  margin: auto;
		  padding: 2rem;
		  background-color: *#f4f4f4;
		  color: #231F20;
		  border-radius: 4px;
		  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
		  
		}
		
		#privacy-modal {
			display: none;
			padding: 2rem;
			margin: auto;
			font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
			color: #231F20; /* Raisin Black */
			border-radius: 8px;
			line-height: 1.7;
		}

		#privacy-modal h2,
		#privacy-modal h3 {
		  font-family: Georgia, Times, "Times New Roman", serif;
		  color: #231F20;
		  margin-bottom: 1rem;
		}

		#privacy-modal h2 {
		  font-size: clamp(1.5rem, 4vw, 2.25rem);
		  margin-top: 0;
		}

		#privacy-modal h3 {
		  font-size: clamp(1.25rem, 3vw, 1.75rem);
		  margin-top: 2rem;
		}

		#privacy-modal p {
		  font-size: clamp(1rem, 1.25vw, 1.25rem);
		  margin-bottom: 1.25em;
		}

		#privacy-modal ul {
		  padding-left: 1.5rem;
		  margin-bottom: 1.25em;
		}

		#privacy-modal li {
		  font-size: clamp(1rem, 1.25vw, 1.25rem); /* Matches <p> */
		  margin-bottom: 0.75em;
		  list-style-type: disc;
		}

		#privacy-modal button.close-modal {
		  font-size: 1rem;
		  background: none;
		  border: none;
		  color: #231F20;
		  cursor: pointer;
		  float: right;
		  margin-top: -1rem;
		  font-family: Georgia, Times, "Times New Roman", serif;
		  text-decoration: underline;
		}
		
		.privacy-disclaimer {
		  font-size: clamp(0.875rem, 1vw, 1rem);
		  line-height: 1.5;
		  color: #ccc; /* Optional: muted */
		}
		

	/* ======= MARQUEE ======= */
	
	.marquee-wrapper {
		overflow: hidden;
		white-space: nowrap;
		
		backdrop-filter: blur(50px);
		background: rgba(255, 255, 255, 0.1);
		
		/*background: #f3f4f6;  Grey background */
		color: #231F20; /* Raisin Black */
		/*border-top: 2px solid #ffd400;  Cyber Yellow */
		/*border-bottom: 2px solid #ffd400;  Cyber Yellow */
		margin: 4rem 0 2rem; /* Remove margin */
		padding: 0; /* Remove default padding */
		position: relative;
		left: 50%;
		right: 50%;
		margin-left: -50vw;
		margin-right: -50vw;
		
		box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
		transition: all 1s ease-out;
			-moz-transition:    all .5s ease-in-out;
			-o-transition:      all .5s ease-in-out;
			-ms-transition:     all .5s ease-in-out;
			transition:         all .5s ease-in-out;
	}

	.marquee {
	  
	  display: flex;
	  width: fit-content;
	  animation: scroll-left 60s linear infinite;
	  list-style: none;
	  padding: 0;
	  margin: 0;
	  
	}

	.marquee li {
		font-size: 1.25rem;
		font-weight: bold;
		letter-spacing: 0.1em;
		padding: 1rem 0.25rem;
		white-space: nowrap;
	}
	
	/* ======= MARQUEE KEYFRAMES ======= */
	
		@keyframes scroll-left {
			0% {
			transform: translateX(0%);
			}
			100% {
			transform: translateX(-50%);
			}
		}
	
/* ========== CONTACT FORM ========== */

	#contactus-section {
		/* border-top: 4rem solid transparent;
		background-origin: padding-box, border-box;
		background-clip: padding-box, border-box;*/
		position: relative; 
		background-image: 
			url("images/contactus-background-large.jpg")
			/*linear-gradient(to bottom, #FBCC04 0%, #FBCC04 30%, #F6F6F6  White-ish  50%)*/;
		min-height: 300px;
		background-attachment: fixed;
		background-position: top left;
		background-repeat: no-repeat;
		background-size: cover;
		padding: 2rem 1rem 1rem;
		margin-top: -20px;
		overflow-x: hidden;
	}
	
	.white-text {
		color: #fff;
		
		/*#ffd400;  Cyber Yellow */
	}

	.contact-form {

		backdrop-filter: blur(40px);
		background: rgba(255, 255, 255, 0.1);
		border-radius: 20px;
		
		display: flex;
		flex-direction: column;
		color: #fff;

	}
	  
	.contact-form form {
		
		display: flex;
		flex-direction: column;
		width: 100%;
		
	}

	
	input[type=text], input[type=textarea], select, textarea {
		
	  width: 100%;
	  max-width: 100%;
	  padding: 16px;
	  border: 1px solid #ccc;
	  border-radius: 3px;
	  resize: vertical;
	  background-color: #f3f4f6;
	  font-size: clamp(1rem, 1.25vw, 1.125rem);
	  font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
	  
	}
	
	input::placeholder, textarea::placeholder /*, select:first-child*/{
		
		color: #CCC; /* A slightly darker grey */
		opacity: 1; /* Fixes Firefox opacity issue */
	  
	}
	
	select option[disabled][hidden] {
		color: #CCC;
	}
	
	option {
	  color: #231F20; /* Raisin Black */
	}
	
	label {
		
		font-family: Georgia, Times, "Times New Roman", serif;
		font-size: clamp(1rem, 1.6vw, 1.25rem); 
		font-weight: 500;
		
	}
	
	textarea {
		resize: none;
		overflow: auto;
	}

	textarea:focus, input:focus, select:focus {
		outline: 2px solid #000 !important ;
		
		box-shadow: 0 0 8px rgba(0, 0, 0, 0.1);
		transition: all 1s ease-out;
			-moz-transition:    all .5s ease-in-out;
			-o-transition:      all .5s ease-in-out;
			-ms-transition:     all .5s ease-in-out;
			transition:         all .5s ease-in-out;
	}

	input.visually-hidden {
		
		display: none;
		
	}
	
	#submit-reset-div {
		
		display: flex;
		flex-direction: row;
		justify-content: start;
		
		
	}
	
	
	#terms-checkbox-div label {
		font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
	}
	
	
	.privacy-button {
		background: none;
		color: #FFE566; /* Cyber Yellow 60 */
		border: none;
		text-decoration: underline;
		cursor: pointer;
		font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
		font-size: clamp(1rem, 1.6vw, 1.25rem); 
		font-weight: 500;
	}
	
	.footer-privacy-button {
		
		font-family: 'drescher-grotesk-bt-semibold-regular', sans-serif;
		font-size: clamp(0.75rem, 1.25vw, 0.875rem);
		text-decoration: none;
		
	}
	
	.footer-privacy-button:hover, .privacy-button:hover {
		color: #ffd400; /* Cyber Yellow */
	}
	
	.g-recaptcha {
		
		margin-top: 1rem;
		
	}
	
	.formbutton {
		
		font-family: Georgia, Times, "Times New Roman", serif;
		font-weight: 500;
		font-size: clamp(1rem, 1.5vw, 1.125rem);
		color: #231F20; /* Raisin Black */
		background-color: #FFE566; /*Cyber Yellow 60 */
		border: none;
		border-radius: 2px;
		margin-top: 8px;
		padding: 16px 24px;	
		cursor: pointer;
		transition: all 0.5s ease-out;	
		
	}

	.clearbutton {
		
		font-size: clamp(1rem, 1.5vw, 1.125rem);
		background: none !important;
		border: none;
		border-radius: 2px;
		margin-top: 8px;
		padding: 16px;
		color: #fff;
		
	}
	
	/* Form error handling */
	
.success-message {
  color: green;
  font-weight: bold;
}

.error-message {
  color: red;
  font-weight: bold;
}
	
	/* Spinner style */
.spinner {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  border-top: 2px solid #000;
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
  vertical-align: middle;
  margin-left: 8px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Both wrappers use absolute positioning */
.spacer-wrapper-top,
.spacer-wrapper-bottom {
  position: absolute;
  width: 100%;

  pointer-events: none;
  z-index: 2;
}

.spacer-wrapper-top {
  top: 0px; /* Slight negative offset if you want it to sit above the section */
}

.spacer-wrapper-bottom {
  bottom: 0px; /* Slight negative offset to overlap into footer */
}

.or-spacer-flipped {
  z-index: 2;
  position: relative; /* Make sure they appear above background */
}

/* FOOTER */

	footer {
		
		background-color: #231F20; /* Raisin Black */
		color: #F6F6F6; /* White-ish */
		text-align: center;
		padding-bottom: 1rem;

	}
	
	footer p {
		
		font-size: clamp(0.75rem, 1.25vw, 0.875rem);
		
	}
	
	footer > .container {
		
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: repeat(3, 1fr);		

	}
	
	footer > .container > .item {

		place-self: center;
		
	}
	
	
	#footer-hours-div {
		
		grid-column: 1 / span 2;
		grid-row: 1 / span 1;

	}
	
	#footer-location-div {
		
		grid-column: 3 / span 2;
		grid-row: 1 / span 1;

	}
	
	#footer-contacts-div {
		
		grid-column: 1 / span 2;
		grid-row: 2 / span 1;

	}
	
	#footer-socials-div {
		
		grid-column: 3 / span 2;
		grid-row: 2 / span 1;

	}
		
	#footer-copyright-div {
		
		grid-column: 1 / span 4;
		grid-row: 3 / span 1;

	}
	
	#fb-footer-img {
	  content: url("images/icons/facebook-icon-footer-ltyellow.svg");
	}

	#fb-footer-img:hover {
	  content: url("images/icons/facebook-icon-footer-yellow.svg");
	}

	#x-footer-img {
	  content: url("images/icons/x-icon-footer-ltyellow.svg");
	}

	#x-footer-img:hover {
	  content: url("images/icons/x-icon-footer-yellow.svg");
	}


/* ==================== RESPONSIVE DESIGN ==================== */
	
	/* ================ EXTRA SMALL DEVICES ================ */
	
	@media (max-width: 480px) {
		
		/* Privacy Modal */
		.modal-content {
		  width: 100%;
		}
			
		/* Hide the newsletter header text for smaller screens */
		#intro-newsletter-div {
			display: none;
		}
		
		/* Switch footer to 1 column design */
		
		footer > .container {
			grid-template-columns: repeat(4, 1fr);
			grid-template-rows: 1fr 1fr 1fr 1fr auto auto auto auto;
		}
		
		#footer-hours-div {
			
			grid-column: 1 / span 4;
			grid-row: 1 / span 1;

		}
		
		#footer-location-div {
			
			grid-column: 1 / span 4;
			grid-row: 2 / span 1;

		}
		
		#footer-contacts-div {
			
			grid-column: 1 / span 4;
			grid-row: 3 / span 1;

		}
		
		#footer-socials-div {
			
			grid-column: 1 / span 4;
			grid-row: 4 / span 1;

		}
		
		#footer-copyright-div {
			
			grid-column: 1 / span 4;
			grid-row: 5 / span 1;

		}

	}
	
		
	/* ================ SMALL SCREENS IN LANDSCAPE MODE ================ */	

		@media (max-height: 500px) and (orientation: landscape) {
			
			body {
				font-size: 0.95rem;
				line-height: 1.4;
			}
						
			h1 {
				font-size: clamp(1.6rem, 4vw, 2.5rem);
				margin-bottom: 1em;
			}
			
			h2 {
				font-size: clamp(1.5rem, 3.5vw, 2.2rem);
				margin-bottom: 1em;
			}
			
			/* Hide the newsletter header text for smaller screens */
			#intro-newsletter-div {
				display: none;
			}
			
			#mc_embed_signup.container {
				padding: .5rem !important;
			}
			
			.js-enabled #nav-logo {
				max-width: 25% !important;
			}
			
			.nav-container {
				padding: 1rem 2rem 0;
			}
			
			.hero-button {
				margin: 1rem auto;
			}
			
			.aboutus-title-image {
				width: 30%;
				margin: 1rem auto;
			}
			
			#news-container {
				padding: 1rem;
			}
			
			.marquee-wrapper {
				margin-top: 2rem;
				margin-bottom: .5rem;
			}
			
			#contact-header-div {
				padding-bottom: 0rem;
			}
			
		}
	
	/* ================ NEWSLETTER SIGNUP FORM CHANGES ON DEVICES BETWEEN 481px & 768px ================ */
	@media (min-width: 541px) and (max-width: 768px) { 
	
		/* Make the newsletter header text smaller on smaller screens */
		#intro-newsletter-div p {
			font-size: clamp(0.75rem, 1.2vw, 0.875rem); 
		}
		
		/* ========== NEWSLETTER HEADER ========== */
			#mc-embedded-subscribe-form { 
				grid-template-columns: 1fr 1fr;
				grid-template-rows: repeat(2, auto);
			}
			
			#email-newsletter-div {
				grid-column: 1 / span 1;
				grid-row: 2 / span 1;
			}
			
			#button-newsletter-div {
				grid-column: 2 / span 1;
				grid-row: 2 / span 1;
			}
		
		/* ========== SERVICES SECTION ========== */
			#services-container {
				
				grid-template-columns: 1fr 1fr;
				grid-template-rows: repeat(7, auto);
				
			}
			
		/* ========== UPDATE SECTION ========== */
		
			#news-container {
				
				display: grid;
				grid-column: repeat(2, 1fr);
				
			}
			
			#we-moved-div {
				
				grid-column: 1 / span 1;
	
			}
			
			#website-update-div {
				
				grid-column: 2 / span 1;
	
			}
	
	}

	/* ================ SMALL DEVICES 768px & BELOW ================ */
	@media (max-width: 768px) {
		
		/* Show nav as hamburger style menu */
			.js-enabled .nav-toggle {
				display: block;
				
				transition: all 0.2s ease;
				font-size: 1.5rem;
				background: none;
				border: none;
				cursor: pointer;
			}
			
			.nav-toggle .icon-close {
				display: none;
			}
			
			.nav-toggle[aria-expanded="true"] .icon-close {
				display: inline;
			}

			.nav-toggle[aria-expanded="true"] .icon-hamburger {
				display: none;
			}

			.nav-menu {
				
				display: flex;
				flex-direction: column;
				gap: .25em;
				position: static;
				max-height: none;
				box-shadow: none;
				clip-path: none;
				
			}
			
			
			.js-enabled .nav-menu {
				
				display: flex;
				flex-direction: column;
				position: absolute;
				top: 100%;
				left: 0;
				right: 0; /* NEW */
				background-color: white; /* or your desired color */
				z-index: 1000;
				width: 100%;
				overflow: hidden;
				background: #fff;
				max-height: 0;
				transition: max-height 0.4s ease-in-out;
				box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
				clip-path: inset(0px -10px -10px -10px);

			}
		  
			.mobile-nav * {
				box-sizing: border-box;
				max-width: 100%;
			}
		  
			.nav-menu .nav-button {
				all: unset; /* Clears inherited styles for a clean slate */
				display: block;
				box-sizing: border-box;
				width: 100%;
				padding: 1rem;
				margin: 0;
				font-family: Georgia, Times, "Times New Roman", serif;
				text-transform: uppercase;
				font-size: 1.5rem;
				text-align: center;
				color: #231F20;
				cursor: pointer;
				transition: background-color 0.3s ease-in-out;
			}
		  
			.nav-menu .nav-button:hover, .nav-menu .nav-button:focus {
				background-color: #FFE566;
				color: #231F20;
			}

			.nav-menu .nav-button:hover {
				background-color: #f9f9f9;
			}

			.nav-menu.active {

				max-height: 600px; /* enough room for all nav items */
				animation: slideDown 0.5s ease-out;

			}

			.nav-menu li {
				text-align: center;
				margin: 0.5rem 0;
			}
			
			/* ==== MODAL SIZING ==== */
			.modal-content, .privacy-modal-content {
				width: 90%;
			}
			
	}


	/* ========== PREVENTS NAV "JUMP" WHEN ADJUSTING SIZES OF SCREEN ========== */

		@media (min-width: 769px) {
			
		  .nav-menu {
				max-height: none !important;
				display: flex !important;
			  } 
			  
		}
	
	/* ================ MEDIUM DEVICES - 769px to 1024px ================ */

		@media (min-width: 769px) and (max-width: 1024px) {
		  
			p {
				font-size: clamp(1.125rem, 2vw, 1.375rem); /* between ~18px and ~22px */
			}
			
			.container {
				
				padding: 2rem;
				
			}
			
			.container > .item {
				
				padding: 2rem;
				
			}
			
			
			/* ========== NEWSLETTER HEADER ========== */
			
			/* Make the newsletter header text smaller on smaller screens */
			#intro-newsletter-div p {
				font-size: clamp(0.8rem, 1.2vw, 0.875rem); 
			}
		
			#mc_embed_signup {
				padding: 1rem;
			}
			
			#mc-embedded-subscribe-form { 
				grid-template-columns: 1fr 1fr;
				grid-template-rows: repeat(2, auto);
				
			}
			
			#email-newsletter-div {
				grid-column: 1 / span 1;
				grid-row: 2 / span 1;
			}
			
			#button-newsletter-div {
				grid-column: 2 / span 1;
				grid-row: 2 / span 1;
			}
			
		/* ========== SERVICES SECTION ========== */
			#services-container {
				
				grid-template-columns: 1fr 1fr;
				grid-template-rows: repeat(7, auto);
				
			}
			
			#services-section > #services-container > .services-item {
				
				padding: 2rem;
				
			}
			
			/* ========== ABOUT US SECTION ========== */
			
			#aboutus-section {
				
				padding: 4rem 2rem 3rem;
				
			}
			
			
			
		/* ========== UPDATE SECTION ========== */
		
			#news-container {
				
				display: grid;
				grid-column: repeat(2, 1fr);
				
			}
			
			#news-container .item {
				
			}
			
			#we-moved-div {
				
				grid-column: 1 / span 1;
	
			}
			
			#website-update-div {
				
				grid-column: 2 / span 1;
	
			}
			
		
		/* ========== CONTACT US SECTION ========== */
		
			#contactus-section {
				
				padding: 3rem 2rem 2rem;
				
			}
			
		
		/* ========== FOOTER ========== */
			
			#footer-container .item {
				
				padding: 1rem;
				
			}
			
			/* ========== FOOTER SECTION ========== */
			
			footer > .container {
				
				grid-template-rows: auto auto;
				
			}
			
			#footer-container.container {
				
				padding-bottom: 1rem;
				
			}
			
			#footer-hours-div {
				
				grid-column: 1 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-location-div {
				
				grid-column: 2 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-contacts-div {
				
				grid-column: 3 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-socials-div {
				
				grid-column: 4 / span 1;
				grid-row: 1 / span 1;

			}
				
			#footer-copyright-div {
				
				grid-column: 1 / span 4;
				grid-row: 2 / span 1;

			}
			
			
		}
		
		
	/* ================ LARGE DEVICES (laptops/desktops) ================ */
		@media (min-width: 1025px) and (max-width: 1440px) { 
			
			p {
				font-size: clamp(1.125rem, 1.75vw, 1.375rem); /* ~18px to ~22px */
			}
			
			.container {
				
				padding: 3rem;
				
			}
			
			.container > .item {
				
				padding: 3rem;
				
			}
			
			/* ========== NEWSLETTER HEADER ========== */
			
			#mc_embed_signup.container {
				
				padding: 1rem;				
			}
			
			#mc-embedded-subscribe-form { 
			
				grid-template-columns: auto 1fr 1fr;
				grid-template-rows: 1fr;
				justify-items: right;
				
			}
			
			#intro-newsletter-div {
				
				grid-column: 1 / span 1;
				grid-row: 1 / span 1;
				
			}
			
			#email-newsletter-div {
				
				grid-column: 2 / span 1;
				grid-row: 1 / span 1;
			
			}
			
			#button-newsletter-div {
				
				grid-column: 3 / span 1;
				grid-row: 1 / span 1;
				
			}
			
			#intro-newsletter-div p {
				
				font-size: 0.875rem;
				
			}
			
			/* ========== NAVIGATION ========== */
				.js-enabled #nav-logo {
					max-width: 60% !important;
					width: 80%;
					height: auto;
				}
				
				.nav-container {
					
					padding: 1rem 4rem;
					
				}
			
			/* ========== SERVICES SECTION ========== */

				
				#services-section {
					
					padding-right: 4rem;
					padding-left: 4rem;
					
				}
				
				#services-container {
					
					grid-template-columns: repeat(3, 1fr);
				
				}
				
			/* ========== ABOUT US SECTION ========== */

				#aboutus-section {
					
					padding-right: 4rem;
					padding-left: 4rem;
					
				}
				
				#aboutus-container {
					
					padding-top: 2rem;
					margin: 0 auto;
					
				}
				
				.marquee-wrapper {
					
					margin-top: 4rem;
					margin-bottom: 2rem;
					
				}
				

			/* ========== UPDATE SECTION ========== */
		
			#news-container {
				
				display: grid;
				grid-column: repeat(2, 1fr);
				
			}
			
			#news-container > .item {
				
				padding: 4rem 2rem 2rem;
				
			}
			
			#we-moved-div {
				
				grid-column: 1 / span 1;
	
			}
			
			#website-update-div {
				
				grid-column: 2 / span 1;
	
			}
		/* ========== CONTACT US SECTION ========== */
		
			#contactus-section {
				
				padding: 4rem 4rem 3rem;
				
			}
			
			#contactus-container .item {
				
				padding: 1rem 3rem;
				
			}
		
		
		
		/* ========== FOOTER SECTION ========== */
			
			footer > .container {
				
				grid-template-rows: auto auto;
				
			}
			
			#footer-container.container {
				
				padding-bottom: 1rem;
				
			}
			
			#footer-hours-div {
				
				grid-column: 1 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-location-div {
				
				grid-column: 2 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-contacts-div {
				
				grid-column: 3 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-socials-div {
				
				grid-column: 4 / span 1;
				grid-row: 1 / span 1;

			}
				
			#footer-copyright-div {
				
				grid-column: 1 / span 4;
				grid-row: 2 / span 1;

			}
		}

	/* ================ EXTRA LARGE DEVICES (1441px+) ================ */
		
		@media (min-width: 1441px) {
			
			.container {
				padding: 4rem;
			}
			
			p {
				font-size: clamp(1.25rem, 2vw, 1.5rem); /* ~20px to ~24px */
			}
			
			.container {
				
				padding: 3rem;
				
			}
			
			.container > .item {
				
				padding: 3rem;
				
			}
			
			/* ========== NEWSLETTER HEADER ========== */
			
			#mc_embed_signup {
				padding: 1rem;
			}
			
			#mc-embedded-subscribe-form { 
			
				grid-template-columns: auto 1fr 1fr;
				grid-template-rows: 1fr;
				justify-items: right;
				
			}
			
			#intro-newsletter-div {
				
				grid-column: 1 / span 1;
				grid-row: 1 / span 1;
				
			}
			
			#email-newsletter-div {
				
				grid-column: 2 / span 1;
				grid-row: 1 / span 1;
			
			}
			
			#button-newsletter-div {
				
				grid-column: 3 / span 1;
				grid-row: 1 / span 1;
				
			}
			
			#intro-newsletter-div p {
				
				font-size: 0.875rem;
				
			}
			
			/* ========== NAVIGATION ========== */
				.js-enabled #nav-logo {
					max-width: 80% !important;
					width: 80%;
					height: auto;
				}
				
				.nav-container {
					
					padding: 1rem 4rem;
					max-width: 1800px;
					margin-left: auto;
					margin-right: auto;
				}
				
			
			/* ========== SERVICES SECTION ========== */

				
				#services-section {
					
					padding-right: 4rem;
					padding-left: 4rem;
					
				}
				
				#services-container {
					
					grid-template-columns: repeat(3, 1fr);
				
				}
				
				#services-section > #services-container > .services-item {
					padding: 3rem;
				}
				
			/* ========== ABOUT US SECTION ========== */

				#aboutus-section {
					
					padding-right: 4rem;
					padding-left: 4rem;
					
				}
				
				#aboutus-container {
					
					padding-top: 2rem;
					margin: 0 auto;
					
				}
				
				.marquee-wrapper {
					
					margin-top: 4rem;
					margin-bottom: 2rem;
					
				}
				

			/* ========== UPDATE SECTION ========== */
		
			#news-container {
				
				display: grid;
				grid-column: repeat(2, 1fr);
				
			}
			
			#news-container > .item {
				
				padding: 4rem 2rem 2rem;
				
			}
			
			#we-moved-div {
				
				grid-column: 1 / span 1;
	
			}
			
			#website-update-div {
				
				grid-column: 2 / span 1;
	
			}
		/* ========== CONTACT US SECTION ========== */
		
			#contactus-section {
				
				padding: 4rem 4rem 3rem;
				
			}
			
			#contactus-container .item {
				
				padding: 1rem 3rem;
				
			}
		
		
		
		/* ========== FOOTER SECTION ========== */
			
			footer > .container {
				
				grid-template-rows: auto auto;
				
			}
			
			#footer-container.container {
				
				padding-bottom: 1rem;
				
			}
			
			#footer-hours-div {
				
				grid-column: 1 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-location-div {
				
				grid-column: 2 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-contacts-div {
				
				grid-column: 3 / span 1;
				grid-row: 1 / span 1;

			}
			
			#footer-socials-div {
				
				grid-column: 4 / span 1;
				grid-row: 1 / span 1;

			}
				
			#footer-copyright-div {
				
				grid-column: 1 / span 4;
				grid-row: 2 / span 1;

			}
		}
			
			

	/* ================ Screen height <=700px ================ */

		@media (max-height: 700px) {
			
			#mc_embed_signup.container {
				padding: 1rem;
			}
			
		}

	/* ========== KEYFRAMES FOR NAV DRAWER BOUNCE========== */

		@keyframes slideBounceSoft {
		  0% {
			transform: translateY(-100%);
			opacity: 0;
		  }
		  
		  70% {
			transform: translateY(10%);
			opacity: 1;
		  }
		  
		  85% {
			transform: translateY(-10%);
		  }
		  
		  100% {
			transform: translateY(0);
		  }
		} 



