@charset "UTF-8";
/*=============== BASE ===============*/
* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}
html {
    font-size: 17px;
}
body {
	font-family: var(--body-font);
	font-size: var(--text-base);
	background-color: var(--body-color);
	color: var(--txt-color);
	width: 100%;
	max-width: 2500px;
	max-height: inherit;
	align-content: center;
	display: block;
	margin: auto;
	align-self: center;
}
a {
	cursor: pointer;
	color: var(--txt-color);
}
hr {
  border: none;
  border-top: white solid 0.75px;
}
#details {
  scroll-margin-top: 300px;
	scroll-behavior: smooth !important;
}
#details-2 {
  scroll-margin-top: 300px;
	scroll-behavior: smooth !important;
}
table{
	border-collapse: separate;
	text-align: left;
	border-spacing: 20px 5px;
	width: fit-content;
	margin: 0 -10px 0 -20px !important;
}
td{
	vertical-align: top;
	padding: 0.25rem 0 0.25rem 0;
	margin: 0;
}
tr{
	padding: 0;
}
th{
	column-span: all;
	padding-bottom: 1.1rem;
}
table .semi:hover{
	text-decoration: none !important;
	color: var(--navy) !important;
}
figcaption{
	font-size: var(--text-xs);
	padding-top: 1vh;
	line-height: var(--lh-body);
	font-family: var(--body-font);
	line-height: var(--lh-body);
	font-optical-sizing: auto;
	font-style: normal;
	color: var(--current);
}
.none a{
	text-decoration: none !important;
}
._overlay_1nqjn_157{
    background-color: rgba(0, 46, 93, 0.5) !important;
}
abbr{
	text-decoration-color: rgba(0, 46, 93, 0.25);
	text-underline-offset: 0.2em;
	cursor: help;
}
/*=============== VARIABLES ===============*/
:root {
	--header-height: 3.5rem;
	--logo: clamp(2.18rem, 1.55rem + 1.65vw, 2.73rem);
/*==== Z-Index ====*/
	--z-tooltip: 10;
	--z-fixed: 100;
/*==== Colors ====*/
/* Palette All */
	--navy: #002E5D;
	--blue: #1F78C1;
		--m-blue: #479CE1;
		--l-blue:#E9F3FC;
		--w-blue: #F6FAFE;
	--coral: #E55744;
	--yellow:#FFD900;
	--mint:#71D1A5;
	--lavender: #D2B3DB;
/* Quick Styles */
	--current: hsl(210, 100%, 18%, 0.7);
	--current-2: hsl(210, 100%, 18%, 0.12);
	--dim: hsl(210, 100%, 18%, 0.8);
	--body-color: white;
	--txt-hover: #1F78C1;
	--txt-hover-dark: #E9F3FC;
	--txt-color: #002E5D;
	--txt-shadow: 2px 2px 8px rgba(0, 46, 93, 0.3);
	--gradient-dark: rgba(0, 46, 93, 0.75);
	--gradient-light: rgba(31, 120, 193, 0.5);
/* Button Light Background */
	--p-btn-bg: #1F78C1;
	--p-btn-txt: white;
	--s-btn-bg: #B3D7F5;
	--s-btn-txt: #002E5D;
	--t-btn-txt:#002E5D;
	--btn-hov-bg: #71D1A5;
	--btn-hov-txt: #002E5D;
/* Button Dark Background */
	--p-btn-bg-dark: #A6E3C8;
	--p-btn-txt-dark: #002E5D;
	--s-btn-bg-dark: #C5ECDB;
	--s-btn-txt-dark: #002E5D;
	--t-btn-txt-dark: white;
	--btn-hov-bg-dark: #E9F3FC;
	--btn-hov-txt-dark: #002E5D;
/*==== Font Styling ====*/
/* Fonts */
	--body-font: "Geist", sans-serif;
	--head-font: "Knewave", system-ui;
/*==== Responsive Type ====*/
	--text-xs: clamp(0.75rem, 0.70rem + 0.22vw, 0.80rem);
	--text-sp: clamp(0.9rem, 0.88rem + 0.22vw, 1.00rem);
	--text-base: clamp(1.00rem, 0.96rem + 0.22vw, 1.15rem);
	--text-lp__h5: clamp(1.13rem, 1.04rem + 0.43vw, 1.38rem);
	--text-h4: clamp(1.25rem, 1.12rem + 0.65vw, 1.63rem);
	--text-h3: clamp(1.50rem, 1.28rem + 1.09vw, 2.13rem);
	--text-h2: clamp(2.00rem, 1.65rem + 1.74vw, 3.00rem);
	--text-h1: clamp(2.50rem, 2.02rem + 2.39vw, 3.87rem); 
	--text-h1-big: clamp(3.60rem, 2.86rem + 3.69vw, 6.50rem); 
/* Line Height */
	--lh-body: 180%;
		--lh-body-sm: 150%;
	--lh-head: 115%;
	--lh-head__g: 135%;
	--lh-caption: 160%;
/* Weight */
	--regular: 400;
	--medium: 500;
	--semi-bold: 600;
	--bold: 700;
	--xbold: 800;
	--heavy: 900;
/*==== Spacing ====*/
	--inline-xbig: 20rem;
	--inline-big: 3rem;
	--inline-medium: 2rem;
	--inline-stnd: 1.5rem;
	--inline-sm: 1.2rem;
	--aft-body: 0.6em;
	--aft-head: 0.5em;
	--aft-bighead: 0.35em;
/*==== Elements ====*/
	--round: 8px;
	--pill: 999px;
}
/*=============== SECTION STRUCTURE ===============*/
/*==== Section Options ====*/
section {
	margin: 0;
	padding: 0;
	max-width: 100%;
}
/*==== Blue BG Link Elements ====*/
.d-blue a {
	color: white !important;
}
.d-blue .txt-link:hover{
	color: var(--btn-hov-bg-dark) !important;
}
/*==== Dark BG Elements GLOBAL ====*/
.dark {
	color: white;
}
.dark .current__page{
	color: var(--l-blue) !important;
}
.dark a {
	color: white !important;
}
.dark .primary-btn {
	background-color: var(--p-btn-bg-dark);
	color: var(--p-btn-txt-dark);
}
@media (hover:hover){
	.dark .txt-link:hover {
		opacity: .8 !important;
		color: white !important;
	}
}
@media (hover:hover){
	.dark .semi:hover {
		opacity: .8 !important;
		color: white !important;
	}
}
@media (hover:hover){
	.dark .primary-btn:hover {
		background-color: var(--btn-hov-bg-dark);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
.dark .secondary-btn {
	background-color: var(--s-btn-bg-dark);
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.dark .secondary-btn:hover {
		background-color: var(--btn-hov-bg-dark);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
.dark .tert-btn {
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.dark .tert-btn:hover {
		background-color: transparent;
		color: var(--txt-hover-dark);
		transition: 0.4s;
	}
}
.dark abbr{
	text-decoration-color: rgba(255, 255, 255, 0.25) !important;
}
/*==== Solid Color BG Options====*/
.city-BG{
	background-color: var(--blue) !important;
	background-image: url("../img/CityBackground_Blue.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
	color: white;
	text-shadow: 2px 2px 8px rgba(0, 46, 93, 0.1);
}
.city-BG a{
	color: white !important;
}
.blue-BG{
	background-color: var(--blue) !important;
	color: white;
}
.blue-BG a{
	color: white !important;
}
.lblue-BG{
	background-color: var(--m-blue) !important;
	color: white;
}
.lblue-BG a{
	color: white !important;
}
.navy-BG{
	background-color: var(--navy) !important;
	color: white;
}
.navy-BG a{
	color: white !important;
}
.navy-BG-2{
	background-color: var(--navy) !important;
}
.lnavy-BG{
	background-color: var(--current-2) !important;
}
.lnavy-BG figcaption{
	color: var(--navy)!important;
}
/*==== Color BG Spacing ====*/
.c-bg {
	margin: 8.5vh 0 8.5vh 0;
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.c-bg{
		margin: 7.5vh 0 7.5vh 0 !important;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.c-bg{
		margin: 6.5vh 0 6.5vh 0 !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.c-bg{
		margin: 5.5vh 0 5.5vh 0 !important;
	}
}
/*==== Image Hero ====*/
.hero-project {
	position: relative; 
	width: 100%;
	max-height: 45vh;
	overflow: hidden;
}
.hero-project img{
	object-fit: cover;
	width: 100%;
	height: 100%;
	min-height: 30vh;
}
/*==== Program Heros ====*/
.hero-prog-1 {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-image: url("../img/HeroImg_Program-03.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	object-fit: fill;
	background-color: var(--navy);
}
.hero-prog-2 {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-image: url("../img/HeroImg_Program-04.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	object-fit: fill;
	background-color: var(--navy);
}
.hero-prog-3 {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-image: url("../img/HeroImg_Program-10.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	object-fit: fill;
	background-color: var(--navy);
}
.hero-prog-4 {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-image: url("../img/HeroImg_Program-08.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	object-fit: fill;
	background-color: var(--navy);
}
.hero-prog-5 {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-image: url("../img/HeroImg_Program-05.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	object-fit: fill;
	background-color: var(--navy);
}

/*==== Video Hero ====*/
.hero-container {
	position: relative; 
	width: 100%;
	height: fit-content;
	overflow: hidden;
	background-color: rgba(0, 46, 93, 0.75);
	background: linear-gradient(45deg, var(--gradient-dark), var(--gradient-dark), var(--gradient-light));
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.hero-container {
		text-align: left !important;
		justify-content: flex-start!important;	
	}
}
.background-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}
.image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
	mix-blend-mode: overlay;
	opacity: .4;
}
.hero-overlay {
	position: relative;
	z-index: 2;
	text-shadow: var(--txt-shadow);
  	margin: 0 11vh 0 11vh;
	padding: 20vh 0 20vh 0;
	max-width: 100%;
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.hero-overlay{
  		margin: 0 9vh 0 9vh !important;
		padding: 15vh 0 15vh 0 !important;
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.hero-overlay{
  		margin: 0 5vh 0 5vh !important;
		padding: 15vh 0 15vh 0 !important;		
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.hero-overlay{
  		margin: 0 3vh 0 3vh !important;
		padding: 10vh 0 10vh 0 !important;
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.hero-overlay .h4{
		max-width: 120vh !important;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.hero-overlay .h4{
		max-width: 120vh !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.hero-overlay .h4{
		max-width: 100% !important;
	}
}
.hero-overlay .big-header{
	margin-bottom: var(--aft-bighead)!important;
}
.hero-overlay .h4{
	font-weight: var(--semi-bold);
	margin-bottom: calc(var(--aft-body) + 1rem) !important;
	max-width: 120vh !important;
}
/*==== Mosaic Gallery ====*/
.mosaic-gallery figure{
	margin: 0;
	padding: 0;
}
.mosaic-gallery {
	margin: 0;
	padding: 0;
}
/*=============== FORMATTING ===============*/
/*==== General Content Formatting ====*/
.content {
  margin: 0 11vh 0 11vh;
	padding: 8.5vh 0 8.5vh 0;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.content{
  		margin: 0 11vh 0 11vh !important;
		padding: 5vh 0 5vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.content{
  		margin: 0 9vh 0 9vh !important;
		padding: 7.5vh 0 7.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.content{
  		margin: 0 5vh 0 5vh !important;
		padding: 6.5vh 0 6.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.content{
  		margin: 0 3vh 0 3vh !important;
		padding: 5.5vh 0 5.5vh 0 !important;
		max-width: 100%;
	}
}
.content-small {
  margin: 0 11vh 0 11vh;
	padding: 0 0 8.5vh 0;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.content-small{
  		margin: 0 11vh 0 11vh !important;
		padding: 0 0 5vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.content-small{
  		margin: 0 9vh 0 9vh !important;
		padding: 0 0 7.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.content-small{
  		margin: 0 5vh 0 5vh !important;
		padding: 0 0 6.5vh 0 !important;
		max-width: 100%;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.content-small{
  		margin: 0 3vh 0 3vh !important;
		padding: 0 0 5.5vh 0 !important;
		max-width: 100%;
	}
}
.content-full {
	padding: 8.5vh 0 8.5vh 0;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.content-full{
		padding: 5vh 0 5vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.content-full{
		padding: 7.5vh 0 7.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.content-full{
		padding: 6.5vh 0 6.5vh 0 !important;
		max-width: 100%;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.content-full{
		padding: 5.5vh 0 5.5vh 0 !important;
		max-width: 100%;
	}
}
.content-full-top {
  margin: 0 11vh 0 11vh;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.content-full-top{
  		margin: 0 11vh 0 11vh !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.content-full-top{
  		margin: 0 9vh 0 9vh !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.content-full-top{
  		margin: 0 5vh 0 5vh !important;
		max-width: 100%;
		
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.content-full-top{
  		margin: 0 3vh 0 3vh !important;
		max-width: 100%;
	}
}
/*==== Nested Section Styling ====*/
.nested-section {
  padding-top: 11.5vh;
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.nested-section{
  		padding-top: 10.5vh !important;
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.nested-section{
  		padding-top: 9.5vh !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.nested-section{
  		padding-top: 8.5vh !important;
	}
}
/*==== Nested GALLERY Styling ====*/
.nested-gallery {
  padding-top: 8vh !important;
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.nested-gallery{
  		padding-top: 7vh !important;
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.nested-gallery{
  		padding-top: 6vh !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.nested-gallery{
  		padding-top: 5vh !important;
	}
}
/*==== Extra Padding For Main ====*/
main {
	padding: 7.5vh 0 4.5vh 0;
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	main{
		padding: 6.5vh 0 3.5vh 0 !important;
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	main{
		padding: 5.5vh 0 2.5vh 0 !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	main{
		padding: 4.5vh 0 1.5vh 0 !important;
	}
}
/*==== Grid Layouts ====*/
/* 2 Column Grid */
.two-col__container {
    display:grid;
    grid-template-columns:repeat(2, 1fr);
    gap: 1.75rem;
	text-align: left;
}
/* Tablet Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.two-col__container{
		grid-template-columns:1fr;
	}
}
/* 3 Column Grid */
.thr-col__container {
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 1.75rem;
	text-align: left;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1200px) {
	.thr-col__container{
		grid-template-columns:repeat(2, 1fr) !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.thr-col__container{
		grid-template-columns: 1fr;
	}
}
/* 3 Column Grid */
.thr-col__container-txt {
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap: 2.25rem;
	text-align: left;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1200px) {
	.thr-col__container-txt{
		grid-template-columns:repeat(2, 1fr) !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.thr-col__container-txt{
		grid-template-columns: 1fr;
	}
}
/* 4 Column Grid */
.four-col__container {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 1.75rem;
	text-align: left;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1200px) {
	.four-col__container{
		grid-template-columns:repeat(2, 1fr) !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.four-col__container{
		grid-template-columns: 1fr;
	}
}
/* 4 Column Grid */
.four-col__container-txt {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 2.25rem;
	text-align: left;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1600px) {
	.four-col__container-txt{
		grid-template-columns:repeat(2, 1fr) !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.four-col__container-txt{
		grid-template-columns: 1fr;
	}
}
/*==== Text Containers ====*/
/* Text Container */
.txt-cont{
	background-color: transparent;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-content: flex-start;
}
/*==== Color Containers ====*/
/* Green */
.green-cont{
	background-color: var(--p-btn-bg-dark);
	border-radius: var(--round);
	padding: 4.5vh;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-content: flex-start;
}
.green-cont .secondary-btn {
	background-color: white;
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.green-cont .secondary-btn:hover {
		background-color: var(--btn-hov-bg-dark);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
/* City Container Single */
.city-cont-single{
	background-color: var(--blue) !important;
	background-image: url("../img/CityBackground_Blue.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size:cover;
	color: white;
	text-shadow: 2px 2px 8px rgba(0, 46, 93, 0.1);
	border-radius: var(--round);
	padding: 10vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.city-cont-single{
			padding: 4.5vh;
	}
}
.city-cont-single .primary-btn {
	background-color: white;
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.city-cont-single .primary-btn:hover {
		background-color: var(--w-blue);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
.city-cont-single .secondary-btn {
	background-color: var(--l-blue);
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.city-cont-single .secondary-btn:hover {
		background-color: var(--w-blue);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
.city-cont-single p{
	max-width: 1100px;
}
/* Green Container Single */
.green-cont-single{
	background-color: var(--p-btn-bg-dark) !important;
	border-radius: var(--round);
	padding: 8vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.green-cont-single{
			padding: 4.5vh;
	}
}
.green-cont-single .secondary-btn {
	background-color: white;
	color: var(--s-btn-txt-dark);
}
@media (hover:hover){
	.green-cont-single .secondary-btn:hover {
		background-color: var(--btn-hov-bg-dark);
		color: var(--btn-hov-txt-dark);
		transition: 0.4s;
	}
}
/* Navy Container Single */
.navy-cont-single{
	background-color: var(--navy) !important;
	border-radius: var(--round);
	color: white !important;
	padding: 8vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.navy-cont-single{
			padding: 4.5vh;
	}
}
/* Blue Container Single */
.blue-cont-single{
	background-color: var(--blue) !important;
	border-radius: var(--round);
	color: white !important;
	padding: 8vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.blue-cont-single{
			padding: 4.5vh;
	}
}
/* Light Navy Container Single */
.lnavy-cont-single{
	background-color: var(--current-2) !important;
	border-radius: var(--round);
	padding: 8vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.lnavy-cont-single{
			padding: 4.5vh;
	}
}
/* 4 Column Grid */
.green-cont-single .four-col__container {
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap: 1.75rem;
	text-align: left;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1500px) {
	.green-cont-single .four-col__container{
		grid-template-columns:repeat(2, 1fr) !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.green-cont-single .four-col__container{
		grid-template-columns: 1fr !important;
	}
}
/*==== Work Sample Cards ====*/
/* Filter Buttons */
.buttons{
    display:flex;
    justify-content:left;
    gap:0.7rem;
    flex-wrap:wrap;
    margin-bottom: var(--inline-big);
}
.filter{
    border:none;
	font-size: var(--text-sp);
	background: var(--l-blue);
	color: var(--s-btn-txt);
	border-radius: var(--round);
	font-weight: var(--medium);
    padding:0.5rem 0.9rem;
    cursor:pointer;
    transition:.4s;
	transform: scale(1.02);
}
.filter:hover{
	background: var(--s-btn-bg);
	color: white;
}
.filter.active{
    background:var(--w-blue);
    color:var(--current);
	font-weight: var(--regular);
}
/* Container */
.work-container{
    width: 100%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:1.75rem;
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 700px) {
	.work-container{
		grid-template-columns:1fr !important;
	}
}
.work-container a{
    text-decoration: none !important;
}
.b-gap{
        gap: 2rem !important;
}
.no-hov .card:hover{
    transform: none !important;
	opacity: 1 !important;
    cursor: default !important;
}
.no-hov img{
	border-radius: var(--round);
}
/* Work Card*/
.card{
    overflow:hidden;
    position:relative;
    background:transparent;
    transition:.4s;
	width: 100%;
	max-width: 800px;
	height: fit-content;
}
.card:hover{
    transform:scale(1.02);
	opacity: .8;
    cursor:pointer;
}
.card img{
    width:100%;
	max-width: 100vh;
    height:100%;
    object-fit:cover;
    display:block;
}
.card a{
    text-decoration: none !important;
}
.card .p-semi{
	font-size: var(--text-base);
	font-weight: var(--semi-bold);
	font-family: var(--body-font);
	line-height: var(--lh-caption);
	font-optical-sizing: auto;
	font-style: normal;
	margin: auto auto var(--aft-body) auto;
	margin-top: calc(var(--aft-body) + 0.2rem);
	margin-bottom: calc(var(--aft-body) - 0.5rem);
}
.card .h4{
	margin-top: calc(var(--aft-body) + 0.2rem);
	margin-bottom: calc(var(--aft-body) - 0.5rem);
	font-weight: var(--bold) !important;
}
.card .p{
	line-height: var(--lh-caption);
}
.work-tag{
	padding: 3px 10px 3px 10px;
	border-radius: 5px;
	position: absolute;
	top: 1.5vh;
	left: 1.5vh;
	z-index: 2;
}
.tag-work{
	background-color: white;
	color: var(--blue);
}
/*==== Service Cards ====*/
/* Container */
.service-container{
    width: 100%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:3rem;
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 700px) {
	.service-container{
		grid-template-columns:1fr !important;
	}
}
/*==== BIG Service Cards ====*/
/* Container */
.b-service-container{
    width: 100%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(420px,1fr));
    gap:3.5rem;
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 700px) {
	.b-service-container{
		grid-template-columns:1fr !important;
	}
}
.b-service-container .card:hover{
    transform: none !important;
	opacity: 1 !important;
    cursor: default !important;
}
/*==== Small Work Cards ====*/
/* Container */
.smallwork-container{
    width: 100%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:1.75rem;
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 700px) {
	.smallwork-container{
		grid-template-columns: repeat(2, 1fr) !important;
	}
}
.smallwork-container a{
    text-decoration: none !important;
}
.smallwork-container .card{
	max-width: 800px!important;
}
/*==== Article Cards ====*/
/* Container */
.article-container{
    width: 100%;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:1.75rem;
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 700px) {
	.article-container{
		grid-template-columns:1fr !important;
	}
}
.article-container a{
    text-decoration: none !important;
}
.article-container .card{
	max-width: 800px!important;
}
.article-tag{
	padding: 3px 10px 3px 10px;
	border-radius: 5px;
	position: absolute;
	top: 1.5vh;
	left: 1.5vh;
	z-index: 2;
	font-weight: var(--semi-bold) !important;
}
.tag-stud{
	background-color: var(--yellow);
}
.tag-art{
	background-color: var(--mint);
}
.tag-rep{
	background-color: var(--blue);
	color: white;
}
.tag-ann{
	background-color: var(--coral);
	color: white;
}
.tag-pres{
	background-color: var(--lavender);
}
.tag-prog{
	background-color: var(--navy);
	color: white;
}
.card .sp{
	line-height: var(--lh-caption);
	margin-top: calc(var(--aft-body) + 0.3rem);
}
.semi{
	font-weight: var(--semi-bold) !important;
}
.semi:hover{
	color: var(--blue);
		text-decoration: underline !important;
		text-decoration-color: var(--txt-hover);
		text-underline-offset: 0.4rem;
}
/*=============== GLOBAL ELEMENT SPACING CLASSES ===============*/
.btwn-txt{
	margin-bottom: calc(var(--aft-body) + 1rem) !important;
}
.btwn-txt-small{
	margin-bottom: calc(var(--aft-body) + 0.5rem) !important;
}
.btwn-txt-img{
	margin-bottom: calc(var(--aft-body) + 1rem) !important;
}
.breadcrumbs{
	padding-bottom: 3vh;
}
/*=============== GLOBAL TEXT STYLING ===============*/
.h1, .big-header {
	font-family: var(--body-font);
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: var(--bold);
	margin: auto auto var(--aft-head) auto;
}
.h2, .h3, .h4 {
	font-family: var(--body-font);
	font-optical-sizing: auto;
	font-style: normal;
	font-weight: var(--bold);
	margin: auto auto var(--aft-head) auto;
}
.h5, .p, p, .lp, .sp, .xs {
	font-family: var(--body-font);
	line-height: var(--lh-body);
	font-optical-sizing: auto;
	font-style: normal;
	margin: auto auto var(--aft-body) auto;
}
/* Line Weight Batch */
p, .p, .lp, .sp, .xs {
	font-weight: var(--regular);
}
/* Line Height Batch */
.h2, .h3, .h5 {
	line-height: var(--lh-head__g);
}
/* Individual*/
.big-header {
	font-size: var(--text-h1-big);
	line-height: 105%;
}
.h1 {
	font-size: var(--text-h1);
	line-height: var(--lh-head);
}
.h2 {
	font-size: var(--text-h2);
}
.h3 {
	font-size: var(--text-h3);
}
.h4 {
	font-size: var(--text-h4);
	line-height: var(--lh-caption);
}
.h5 {
	font-size: var(--text-lp__h5);
	font-weight: var(--semi-bold);
}
p {
	font-size: var(--text-base);
}
.p {
	font-size: var(--text-base);
}
.lp {
	font-size: var(--text-lp__h5);
}
.sp {
	font-size: var(--text-sp);
}
.xs {
	font-size: var(--text-xs);
}
/* Alignment*/
.center {
	text-align: center;
}
.center-flex{
	text-align: center;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.center-flex{
		justify-content: flex-start!important;
		text-align: left !important;
	}
}
/*=============== BUTTONS ===============*/
button {
	width: fit-content;
	max-width: 100%;
	white-space: normal;
	display: inline-block;
	break-inside: avoid;
	height: auto;
	align-items: center;
	border: none;
	outline: none;
	cursor: pointer;
	text-transform: capitalize;
}
/* Primary */
.primary-btn {
	background-color: var(--p-btn-bg);
	color: var(--p-btn-txt);
	border-radius: var(--round);
	padding: .6rem 1rem .6rem 1rem;
	font-family: var(--body-font);
	font-size: var(--text-base);
	line-height: var(--lh-body-sm);
	font-weight: var(--bold);
	margin: 0;
	text-align: center;
}
@media (hover:hover){
	.primary-btn:hover {
		background-color: var(--btn-hov-bg);
		color: var(--btn-hov-txt);
		transition: 0.4s;
		transform: scale(1.02);
	}
}
/* Secondary */
.secondary-btn {
	background-color: var(--s-btn-bg);
	color: var(--s-btn-txt);
	border-radius: var(--round);
	padding: .6rem 1rem .6rem 1rem;
	font-family: var(--body-font);
	font-size: var(--text-base);
	line-height: var(--lh-body-sm);
	font-weight: var(--bold);
	margin: 0;
	text-align: center;
}
@media (hover:hover){
	.secondary-btn:hover {
		background-color: var(--btn-hov-bg);
		color: var(--btn-hov-txt);
		transition: 0.4s;
		transform: scale(1.02);
	}
}
/* Tertiary */
.tert-btn {
	background-color: transparent;
	color: var(--t-btn-txt);
	padding-top: .4rem;
	border-radius: var(--round);
	font-family: var(--body-font);
	font-size: calc(var(--text-sp) + 0.08rem);
	line-height: var(--lh-body-sm);
	font-weight: var(--bold);
	margin: 0;
	text-align: center;
}
@media (hover:hover){
	.tert-btn:hover {
		background-color: transparent;
		color: var(--txt-hover);
		text-decoration: underline;
		text-decoration-color: var(--txt-hover);
		text-underline-offset: 0.4rem;
		transition: 0.4s;
		transform: scale(1.02);
	}
}
/* Tag Buttons */
.tag-btn {
	border-radius: var(--pill);
	background-color: white;
	color: var(--navy);
	padding: .6rem 1.3rem .6rem 1.3rem;
	font-family: var(--body-font);
	font-size: calc(var(--text-base) + 0.02rem);
	line-height: var(--lh-body-sm);
	font-weight: var(--bold);
	margin: 0;
	text-align: center;
	break-inside: auto;
	border: 4px solid var(--p-btn-bg-dark);
}
@media (hover:hover){
	.tag-btn:hover {
		background: var(--l-blue);
		color: var(--txt-hover);
		transition: 0.4s;
		transform: scale(1.02);
		border: 4px solid var(--m-blue) !important;
	}
}
/*=============== ICONS ===============*/
i {
	font-weight: var(--semi-bold) !important;
}
.primary-btn i{
	font-size: calc(var(--text-base) + 0.1rem);
}
.secondary-btn i{
	font-size: calc(var(--text-base) + 0.1rem);
}
.tert-btn i{
	font-size: calc(var(--text-sp) + 0.1rem);
}
.tag-btn i{
	font-size: calc(var(--text-base) + 0.15rem);
	font-weight: var(--semi-bold) !important;
	color: var(--blue) !important;
}
.stand-alone i {
	font-size: var(--text-h2);
	font-weight: var(--medium) !important;
}
.stand-alone{
	margin-bottom: 1.5rem;
}
/*=============== GLOBAL/REUSABLE CSS CLASSES ===============*/
.container {
  max-width: 100%;
  margin-inline: var(--inline-stnd);
}
/*==== Quick Apply Colors ====*/
.blue{
	color: var(--blue);
}
.mint{
	color: var(--mint);
}
/*==== Quick Apply Weight ====*/
.med{
	font-weight: var(--medium);
}
.bold{
	font-weight: var(--bold);
}
/*==== Quick Apply Txt Changes====*/
.txt-link{
	text-decoration: underline;
	text-underline-offset: 0.2em;
	color: var(--txt-color);
}
@media (hover:hover){
	.txt-link:hover {
		color: var(--txt-hover) !important;
	}
}
.head__font-change{
	font-family: var(--head-font) !important;
	line-height: var(--lh-head) !important;
	font-weight: var(--regular);
	font-style: normal;
}
/*==== Button Containers ====*/
/* Button Containers */
.vert-button-container{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: flex-start;
	gap: 0.2rem;
}
.inline-button-container{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.8rem;
	margin-top: var(--text-lp__h5);
}
.inline-button-container-tert{
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: flex-start;
	gap: 0.7rem;
	margin-top: var(--text-lp__h5);
}
.inline-button-container-tert .tert-btn{
	padding-right: 1.5rem;
}
.inline-button-container-center{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	margin-top: var(--text-lp__h5);
}
.tert-nav-container{
	display: flex;
	flex-direction: row;
	align-items: baseline;
	justify-content: space-between;
	margin-top: var(--text-lp__h5);
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.inline-button-container-center{
		justify-content: flex-start!important;	
	}
}

/* Tag Button Containers */
.inline-tag-container{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5rem;
}
.inline-tag-container-center{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
}
/* Left Align */
@media only screen and (min-width: 0px) and (max-width: 1099px) {
	.inline-tag-container-center{
		justify-content: flex-start!important;	
	}
}
.flex-bottom-div{
	align-self: flex-end !important;
	margin-right:auto !important;
	margin-left: 0!important;
	margin-top: auto !important;
}
/* Project Section Details */
.sectdet_para {
  display: flex;
  flex-wrap: wrap;
	max-width: 55rem;
	align-content: flex-start;
	justify-content: flex-start;
}
.sectdet_para .semi:hover{
	text-decoration: none !important;
	color: var(--navy) !important;
}
/* Services Section Details */
.sectdet_serv {
  display: flex;
  flex-wrap: wrap;
	max-width: 65rem;
	align-content: flex-start;
	justify-content: flex-start;
}
.sectdet_serv .semi:hover{
	text-decoration: none !important;
	color: var(--navy) !important;
}
/* Paragraph Size Limiter */
.sectpara_limit {
  display: flex;
  flex-wrap: wrap;
	max-width: 50rem;
	align-content: flex-start;
	justify-content: flex-start;
}
/*==== Sidebars ====*/
/* Sidebar Images */
.img-1{
	min-height: 40vh;
	background-image: url("../img/ProjectHeroImgs-07.webp");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size:cover;
	object-fit: fill;
}
.img-2{
	min-height: 40vh;
	background-image: url("../img/Profilepic.webp");
	background-repeat: no-repeat;
	background-position: 0% 25%;
	background-size:cover;
	object-fit: fill;
}
.img-3{
	min-height: 40vh;
	background-image: url("../img/networkimg.webp");
	background-repeat: no-repeat;
	background-position: 50% 25%;
	background-size:cover;
	object-fit: fill;
}
/* Left Main, Right PROJECT */
.sidebar_project {
  display: flex;
  flex-wrap: wrap;
  gap:5.5vh;
	align-items: center;
}
.sidebar_project > :last-child {
  flex-grow: 1;
  flex-basis: 20rem;
}
.sidebar_project > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 66%;
	padding-right: 100px;
}
@media only screen and (min-width: 0px) and (max-width: 1290px) {
	.sidebar_project > :first-child {
		padding-right: 0 !important;	
	}
}
.l-tert-btn{
  font-size: calc(var(--text-sp) + 0.19rem) !important;
}
/* Left Main, Right table */
.sidebar_details {
  display: flex;
  flex-wrap: wrap;
  gap: 6vh;
}
.sidebar_details > :last-child {
  flex-grow: 1;
  flex-basis: 31rem;
		max-width: 920px;
}
.sidebar_details > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 49%;
	max-width: 920px;
}
/* Left Main, Right Image */
.sidebar_image-right {
  display: flex;
  flex-wrap: wrap;
  gap: 5.5vh;
	align-items: center;
}
.sidebar_image-right > :last-child {
  flex-grow: 1;
  flex-basis: 36rem; 
	align-self: stretch;
}
.sidebar_image-right > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 42%;
}
/* Left Image, Right Main */
.sidebar_image-left {
  display: flex;
  flex-wrap: wrap;
  gap: 5.5vh;
}
.sidebar_image-left > :last-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 42%;
}
.sidebar_image-left > :first-child {
  flex-grow: 1;
  flex-basis: 36rem;
	align-self: stretch;
}
/* Left Main, Right Other */
.sidebar_right {
  display: flex;
  flex-wrap: wrap;
  gap: 5vh;
	align-items: center;
}
.sidebar_right > :last-child {
  flex-grow: 1;
  flex-basis: 32rem;
}
.sidebar_right > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 42%;
}
/* Left Main, Right Text */
.sidebar_2col {
  display: flex;
  flex-wrap: wrap;
  gap: 6vh;
}
.sidebar_2col > :last-child {
  flex-grow: 1;
  flex-basis: 30rem;
}
.sidebar_2col > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 52%;
}
/* Left Text, Right Main */
.sidebar_left {
  display: flex;
  flex-wrap: wrap;
  gap: 5vh;
}
.sidebar_left > :first-child {
  flex-grow: 1;
  flex-basis: 30rem;
}
.sidebar_left > :last-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 52%;
}
/* Left Profile Pic, Right Text */
.sidebar_profile {
  display: flex;
  flex-wrap: wrap;
  gap: 6vh;
	align-items: center;
}
.sidebar_profile > :last-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 40%;
}
.sidebar_profile > :first-child {
  flex-grow: 1;
  flex-basis: 29rem;
	align-self: stretch;
}
/* Left Profile Pic, Right Text */
.sidebar_brand {
  display: flex;
  flex-wrap: wrap;
  gap: 6vh;
	align-items: center;
}
.sidebar_brand > :first-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 50%;
}
.sidebar_brand > :last-child {
  flex-grow: 1;
  flex-basis: 29rem;
	align-self: stretch;
}
/*=============== GLOBAL NAVIGATION ===============*/
/*==== Header ====*/
.header {
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  background-color: white;
  z-index: var(--z-fixed);
}
.header ul {
  list-style: none;
  /* Color highlighting when pressed on mobile devices */
  /*-webkit-tap-highlight-color: transparent;*/
}
.header a {
  text-decoration: none;
}
.header__container {
  max-width: 100%;
  margin-inline: var(--inline-stnd);
	margin: auto 3vh auto 3vh;
}
/*====Top Nav Menu ====*/
.current__page{
	color:var(--current) !important;
	pointer-events: none !important;
	text-decoration: none !important;
}
.nav {
  height: var(--header-height);
}
.nav__logo, 
.nav__burger, 
.nav__close {
  color: var(--txt-color);
}
.nav__data {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.nav__logo {
  display: inline-flex;
  align-items: center;
  column-gap: .25rem;
}
.nav__logo img {
	max-height: var(--logo);
	width: 100%;
	object-fit: contain;
}
.nav__toggle {
  position: relative;
  width: 32px;
  height: 32px;
}
.nav__burger, 
.nav__close {
  position: absolute;
  width: max-content;
  height: max-content;
  inset: 0;
  margin: auto;
  font-size: 1.25rem;
  cursor: pointer;
  transition: opacity .1s, transform .4s;
}

.nav__close {
  opacity: 0;
}
/* Navigation for mobile devices */
@media screen and (max-width: 1200px) {
  .nav__menu {
    position: absolute;
    left: 0;
    top: 2.5rem;
    width: 100%;
    height: calc(100vh - 3.5rem);
    overflow: auto;
    pointer-events: none;
    opacity: 0;
  }
  .nav__menu::-webkit-scrollbar {
    width: 0;
  }
  .nav__list {
    background-color: white;
    padding-top: 1rem;
  }
}
.nav__link {
  color: var(--txt-color);
  background-color: transparent;
  font-weight: var(--medium);
  padding: 1.25rem 1.75rem;
	font-size: calc(var(--text-base) + 0.08rem);
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: background-color .3s;
}
.nav__link:hover {
  background-color: var(--l-blue);
  color: var(--txt-hover);
}
/* Show menu */
.show-menu {
  opacity: 1;
  top: 3.5rem;
  pointer-events: initial;
}
/* Show icon */
.show-icon .nav__burger {
  opacity: 0;
  transform: rotate(90deg);
}
.show-icon .nav__close {
  opacity: 1;
  transform: rotate(90deg);
}
/*=============== DROPDOWN ===============*/
.dropdown__item {
  cursor: pointer;
}

.dropdown__arrow {
  font-size: 1.25rem;
  font-weight: initial;
  transition: transform .4s;
}
.dropdown__link, 
.dropdown__sublink {
  padding: 1rem 1.75rem;
  color: var(--txt-color);
	font-size: calc(var(--text-sp) + 0.095rem);
  background-color: white;
  display: flex;
  align-items: center;
  column-gap: .5rem;
  transition: background-color .3s;
}
.dropdown__link{
	white-space: nowrap;
	  font-weight: var(--medium);
}
.dropdown__sublink{
	white-space: normal;
	  font-weight: var(--regular);
	font-size: calc(var(--text-sp) + 0.09rem);
}
.dropdown__link i, 
.dropdown__sublink i {
	font-size: calc(var(--text-sp) + 0.2rem);
  font-weight: initial;
}
.dropdown__link:hover, 
.dropdown__sublink:hover {
  background-color: var(--l-blue);
	color: var(--txt-hover);
}
.dropdown__menu, 
.dropdown__submenu {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s ease-out;
}

/* Show dropdown menu & submenu */
@media screen and (min-width: 1201px) {
.dropdown__item:hover .dropdown__menu, 
.dropdown__subitem:hover > .dropdown__submenu {
  max-height: 1000px;
  transition: max-height .4s ease-in;
	}
/* Rotate dropdown icon */
.dropdown__item:hover .dropdown__arrow {
  transform: rotate(180deg);
	}
}
/* Click Option for Mobile*/
@media screen and (max-width: 1200px) {
.dropdown__item.active .dropdown__menu,
.dropdown__subitem.active > .dropdown__submenu {
  max-height: 1000px;
  transition: max-height .4s ease-in;
	}
.dropdown__item.active .dropdown__arrow {
  transform: rotate(180deg);
	}
}
/*=============== MENU BACKGROUND TINT ===============*/

@media screen and (max-width: 1200px) {
  body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 46, 93, 0.5);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    z-index: 99;
  }
  body.menu-open::before {
    opacity: 1;
    visibility: visible;
  }
  /* Keep the navigation above the tint */
  #nav-menu {
    z-index: 100;
  }
  /* Keep toggle button above the tint too */
  #nav-toggle {
    z-index: 101;
  }
}
/*=============== DROPDOWN SUBMENU ===============*/
.dropdown__add {
  margin-left: auto;
}
.dropdown__sublink {
  background-color: white;
}
@media screen and (max-width: 1200px){
	.dropdown__sublink {
		padding-left: 3.5rem !important;
	}
}
/*=============== NAV BREAKPOINTS ===============*/
/* For small devices */
@media screen and (max-width: 340px) {
  .header__container {
    margin-inline: 1rem;
  }
  .nav__link {
    padding-inline: 1rem;
  }
}
/* For Medium Devices */
  .nav {
    height: calc(var(--header-height) + 1rem);
}
/* For large devices */
@media screen and (min-width: 1200px) {
  .header__container {
  max-width: 100%;
  margin-inline: var(--inline-stnd);
	margin: auto 3vh auto 3vh;
  }
  .nav {
    height: calc(var(--header-height) + 2rem);
    display: flex;
    justify-content: space-between;
  }
  .nav__toggle {
    display: none;
  }
  .nav__list {
    height: 100%;
    display: flex;
    column-gap: 3rem;
  }
  .nav__link {
    height: 100%;
    padding: 0;
    justify-content: initial;
    column-gap: .25rem;
  }
  .nav__link:hover {
    background-color: transparent;
  }
  .dropdown__item, 
  .dropdown__subitem {
    position: relative;
  }
  .dropdown__menu, 
  .dropdown__submenu {
    max-height: initial;
    overflow: initial;
    position: absolute;
    left: 0;
    top: 6rem;
    opacity: 0;
    pointer-events: none;
  }
  .dropdown__link, 
  .dropdown__sublink {
    padding-inline: 1rem 3.5rem;
  }
  .dropdown__subitem .dropdown__link {
    padding-inline: 1rem;
  }
  .dropdown__submenu {
    position: absolute;
    left: 100%;
    top: .5rem;
  }
  /* Show dropdown menu */
  .dropdown__item:hover .dropdown__menu {
    opacity: 1;
    top: 5.5rem;
    pointer-events: initial;
    transition: top .3s;
  }
  /* Show dropdown submenu */
  .dropdown__subitem:hover > .dropdown__submenu {
    opacity: 1;
    top: 0;
    pointer-events: initial;
    transition: top .3s;
  }
}
/*===== Footer =====*/
.footer {
  display: flex;
  width: 100%;
  z-index: var(--z-fixed);
}
.footer .h3{
	margin-top: 0 !important;
	font-size: calc(var(--text-h3) + 0.4rem);
}
.footer > * {
  flex:  1 100%;
}
.footer ul {
  list-style: none;
  /* Color highlighting when pressed on mobile devices */
  /*-webkit-tap-highlight-color: transparent;*/
}
.footer li {
  margin-bottom: 0.5rem;
}
.footer a {
  text-decoration: none;
}
@media (hover:hover){
	.footer a:hover {
		opacity: .8;
		text-decoration: underline;
		text-underline-offset: 0.2em;
	}
}
.footer__container .p{
	line-height: 120% !important;
}
.footer__container {
  margin: 0 11vh 0 11vh;
	padding: 10.5vh 0 10.5vh 0;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.footer__container{
  		margin: 0 11vh 0 11vh !important;
		padding: 6vh 0 6vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.footer__container{
  		margin: 0 9vh 0 9vh !important;
		padding: 8.5vh 0 8.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.footer__container{
  		margin: 0 5vh 0 5vh !important;
		padding: 6.5vh 0 6.5vh 0 !important;
		max-width: 100%;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.footer__container{
  		margin: 0 3vh 0 3vh !important;
		padding: 5.5vh 0 5.5vh 0 !important;
		max-width: 100%;
	}
}
/*==== Bottom Nav Menu =====*/
/* Sidebar Setup */
.footer__nav-container {
  display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	height: fit-content;
  gap: 5rem;
}
.footer__nav-container > :first-child {
  flex-basis: 30rem; 
  flex-grow: 1;
	margin-right: 8rem;
}
.footer__nav-container > :last-child {
  flex-basis: 0;
  flex-grow: 999;
  min-inline-size: 40%;
}
@media only screen and (min-width: 0px) and (max-width: 1000px) {
	.footer__nav-container > :first-child {
  		margin-right: 0 !important;
	}
}
/* Switcher Setup */
.footer__navlinks-switcher {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
	justify-content: space-between;
}
.footer__navlinks-switcher > * {
  flex-grow: 1;
  flex-basis: calc(( 24rem - 100%) * 999);
}
.footer__navlinks-switcher > :nth-last-child(n+ 4),
.footer__navlinks-switcher > :nth-last-child(n+ 4) ~ * {
  flex-basis: 100%;
}
.footer__navlinks-container{
	display: block;
	width: fit-content;
}
/* Certifcations Images */
.certs{
	display: inline-flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: flex-start;
	gap: var(--inline-stnd);
	margin-top: 10vh;
	margin-bottom: var(--inline-stnd);
	margin-left: -10px;
}
.certs img{
	max-height: calc(var(--logo) - 0.4rem);
	min-height: 30px;
	width: 100%;
	object-fit: contain;
}
/* Legal */
.legal{
	display: block;
	width: 100%;
}
/*==== Navy Footer Extension====*/
.footer__extension {
  margin: 0 11vh 0 11vh;
	padding: 10.5vh 0 10.5vh 0;
	max-width: 1950px;
}
/* Large */
@media only screen and (min-width: 1950px){
	.footer__extension{
  		margin: 0 11vh 0 11vh !important;
		padding: 6vh 0 6vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.footer__extension{
  		margin: 0 9vh 0 9vh !important;
		padding: 8.5vh 0 8.5vh 0 !important;
		max-width: 100%;	
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.footer__extension{
  		margin: 0 5vh 0 5vh !important;
		padding: 6.5vh 0 6.5vh 0 !important;
		max-width: 100%;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.footer__extension{
  		margin: 0 3vh 0 3vh !important;
		padding: 5.5vh 0 5.5vh 0 !important;
		max-width: 100%;
	}
}
/*==== Navy Footer Extension Line (Outside Content Div) ====*/
.line {
  margin: 0 11vh 0 11vh;
}
/* Large */
@media only screen and (min-width: 1920px){
	.line{
  		margin: 0 11vh 0 11vh !important;
		padding: 5vh 0 5vh 0 !important;
		max-width: 100%;	
	}
}
/* Desktop Breakpoint */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
	.line {
  		margin: 0 9vh 0 9vh !important;	
		padding: 2vh 0 2vh 0;
	}
}
/* Tablet Breakpoint */
@media only screen and (min-width: 600px) and (max-width: 1200px) {
	.line {
  		margin: 0 5vh 0 5vh !important;
		padding: 3vh 0 3vh 0;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 600px) {
	.line {
  		margin: 0 3vh 0 3vh !important;
		padding: 4vh 0 4vh 0;
	}
}
/*=============== CAROUSELS ===============*/
/*==== Slider ====*/

.carousel {
    width: 100%;
    height: fit-content;
    display: flex;
    justify-content: flex-start;
    position: relative;
    overflow: hidden;
}
.carousel a {
    text-decoration: none;
}
.arrow {
    position: absolute;
    cursor: pointer;
    top: 97%;
    transform: translateY(-50%);
    transition: all 1s;
    outline: none;
    border: none;
    font-size: 30px;
}

.arrow.right {
    left: 52%;
}

.arrow.left {
    right: 52%;
}

.arrow.left-right {
    left: 7vh !important;
}

.arrow.left-left {
    left: 0 !important;
}

.arrow.right:hover,
.arrow.left:hover {
    opacity: 60%;
}
.slider {
    display: flex;
    height: fit-content;
    /*increase with (slidenumber * 100) */
    width: 100%;
    flex-shrink: 0;
	gap: 3rem;
	padding-bottom: 9vh;
}
.slider article {
    min-width: 31%;
    flex-shrink: 0;
    flex: 1;
    display: flex;
    justify-content: flex-start;
}
/* Tablet Breakpoint */
@media only screen and (min-width: 900px) and (max-width: 1500px) {
	.slider article {
  		min-width: 50% !important;
	}
}
/* Mobile Breakpoint */
@media only screen and (min-width: 0px) and (max-width: 900px) {
	.slider article {
  		min-width: 100% !important;
	}
}
/*=============== LISTS ===============*/
/*==== Project Type List ====*/
.project-type{
    display:flex;
    flex-direction: row;
	align-content: flex-start;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0.8rem;
	text-align: left;
}
.project-type ul{
	list-style: none;
	display:flex;
	flex-wrap:wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.7rem;
	margin: 0;
	padding: 0;
}
.project-type li{
	margin: 0;
	padding: 0;
}
.project-type p{
	margin: 0;
}
.project-tag{
    border:none;
	font-size: calc( var(--text-xs) + 0.07rem);
	line-height: calc( var(--lh-body) - 0.3rem) !important;
	color: var(--s-btn-txt);
	border-radius: var(--round);
	font-weight: var(--medium);
    padding:0.5rem 0.8rem;
}
.typ{
	background: #DCF4EA;
}
.loc{
	background: #EBE0F1;
}
.ind{
	background: #DCECFA;
}
.pro{
	background: #FFF7C7;
}
/*==== Connected List Columns ====*/
.list-resp-col{
	column-width: 30vh;
	column-count: 4;
	column-gap: 4rem;
	text-align: left;
	margin-top: 2.25rem;
}
.list-resp-col ul{
	list-style-position: outside;
	max-width: 1950px;
  	margin-left: 20px;
	column-fill: balance;
}
.list-resp-col ul li::marker {
	color: var(--blue);
  font-size: 1.2rem;
}
.list-resp-col li p{
	line-height: var(--lh-body-sm);
	display: inline;
	font-size: calc(var(--text-base) + 0.05rem) !important;
}
.list-resp-col li{
	break-inside: avoid;
	padding-top: 0.9rem;
}
.list-head{
  column-span: all !important;
	margin-bottom: 1.25vh;
	font-size: calc(var(--text-h4) + 0.1rem) !important;
}
.inc-lh{
	line-height: var(--lh-body) !important;
}
/*==== Standard List ====*/
.list-standard{
	text-align: left;
	margin-top: 2.25rem;
}
.list-standard ul{
	list-style-position: outside;
	max-width: 1950px;
  	margin-left: 20px;
}
.list-standard ul li::marker {
	color: var(--blue);
  font-size: 1.2rem;
}
.list-standardl li p{
	line-height: var(--lh-head__g);
	display: inline;
}
.indent-1{
	 margin-left: 1rem;
}
.indent-2{
	margin-left: 2rem;
}
/*==== Step List ====*/

/*=============== POPUPS ===============*/
/*==== modal ====*/
/* Full-screen background overlay */
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  inset: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 46, 93, 0.5);
}
/* Popup box */
.modal-content {
  position: relative;
  background-color: #fff;
  padding: 9vh 4.5vh 4.5vh 4.5vh;
  border-radius: var(--round);
  width: 90%;
  max-width: 800px;
  max-height: 90vh;
  overflow-y: auto;
  box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	text-align: left;
}
.modal-content p{
	line-height: var(--lh-body) !important;
}
/* Close button */
.close-btn {
  position: absolute;
	color: var(--coral);
	background-color: transparent;
	border: none;
	font-weight: 600;
  top: 2vh;
  right: 2.5vh;
	font-size: var(--text-h3);
  cursor: pointer;
}
@media (hover:hover){
	.close-btn:hover {
		opacity: 50% !important;
	}
}
/* Open button */
.open-btn {
	color: var(--current);
	background-color: transparent;
	border: none;
	font-size: var(--text-lp__h5);
  cursor: pointer;
}
.open-btn i {
	font-weight: 400 !important;
}
@media (hover:hover){
	.open-btn:hover {
		opacity: 50% !important;
	}
}
/*=============== ACCORDIAN ===============*/
.faq_container {
    border-bottom: 1px solid var(--current);
    padding: 0.7rem 0 0.7rem 0;
}
.faq_container .faq_question:hover{
	color: var(--blue);
}

.faq_container .faq_question {
    align-items: center;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    position: relative;
	font-family: var(--body-font);
	line-height: var(--lh-body);
	font-optical-sizing: auto;
	font-style: normal;
	font-size: var(--text-lp__h5);
	font-weight: var(--semi-bold);
}

.faq_container .answercont {
    max-height: 0;
    overflow: hidden;
    transition: 0.3s;
}

.faq_container .answer {
    padding: 0.5rem 0 0.5rem 0;
	max-width: 1200px;
}

.faq_container .icon.active {
    background: transparent;
}

.faq_container .icon:hover {
    cursor: pointer;
	color: var(--blue) !important;
}

.faq_container .icon-shape {
    height: 0.5rem;
    position: relative;
    width: 0.5rem;
}

.faq_container .icon .icon-shape::before {
    background: var(--navy);
    border-radius: 3px;
    content: "";
    height: 2px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.5s ease;
    width: 15px;
}

.faq_container .icon .icon-shape::after {
    background: var(--navy);
    border-radius: 3px;
    content: "";
    height: 15px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.5s ease;
    width: 2px;
}

.faq_container .icon .icon-shape.active::before {
    transform: translate(-50%, -50%) rotate(180deg);
    transition: all 0.5s ease;
}

.faq_container .icon .icon-shape.active::after {
    transform: translate(-50%, -50%) rotate(90deg);
    transition: all 0.5s ease;
}