:root {
	--blue: #255581;
	--light-blue: #a3d3e6;
	--lighter-blue: #edf6fa;
	--dark-blue: #1a3b5a;
	--green: #a6ce39;
	--dark-green: #749028;
	--darker-green: #004953;
	--orange: #d87045;
	--yellow: #fcd378;
	--medium-blue: #daf2fd;
	--light-yellow: #fff7e5;
	--black: #303b42;
	--light-gray: #d3dee7;
	--brand-primary: var(--blue);
	--brand-secondary: var(--yellow);
}

.blue {
	color: var(--blue) !important;
}

.medium-blue {
	color: var(--medium-blue) !important;
}

.light-blue {
	color: var(--light-blue) !important;
}

.lighter-blue {
	color: var(--lighter-blue) !important;
}

.orange {
	color: var(--orange) !important;
}

.dark-green {
	color: var(--dark-green) !important;
}

.yellow {
	color: var(--yellow) !important;
}

.light-yellow {
	color: var(--light-yellow) !important;
}

.black {
	color: var(--black) !important;
}

.white {
	color: #fff !important;
}

.bg-blue {
	background-color: var(--blue) !important;
}

.bg-blue > * {
	color: #fff;
}

.bg-light-blue {
	background-color: var(--light-blue) !important;
}

.bg-lighter-blue {
	background-color: var(--lighter-blue) !important;
}

.bg-light-gray {
	background-color: var(--light-gray) !important;
}

.bg-white {
	background-color: #fff !important;
}

.bg-orange {
	background-color: var(--orange) !important;
}

.bg-yellow {
	background-color: var(--yellow) !important;
}

.bg-light-yellow {
	background-color: var(--light-yellow) !important;
}

.bg-black {
	background-color: var(--black) !important;
}

.bg-light-gray {
	background-color: var(--light-gray) !important;
}

.fw-500 {
	font-weight: 500 !important;
}

.fw-600 {
	font-weight: 600 !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.fw-800 {
	font-weight: 800 !important;
}

.fw-900 {
	font-weight: 900 !important;
}

.rounded {
	border-radius: 10px;
	overflow: hidden;
}

body,
html {
	background-color: #aaa;
	color: var(--black);
	font-family: "myriad-pro", sans-serif;
	font-size: 18px;
	margin: 0px;
	min-height: 100%;
	overflow-x: hidden;
	padding: 0px;
}
@media screen and (max-width: 992px) {
	body,html {font-size: 16px; }
}

p,
li {
	font-size: 1rem;
}

p {
	margin-bottom: 20px;
}

li {
	margin-bottom: 10px;
}

p.large,
li.large {
	font-size: 1.15rem;
}

p.small,
li.small {
	font-size: 0.85rem;
}

@media screen and (min-width: 992px) {
	p,
	li {
		font-size: 1em;
	}

	p.large,
	li.large {
		font-size: 1.5625rem;
	}

	p.small,
	li.small {
		font-size: 1rem;
	}
}

p a,
li a {
	color: var(--blue);
	font-weight: 700;
	text-decoration: underline;
}

a:hover,
a:focus {
	transition: 0.2s;
	text-decoration: underline;
	color: var(--darker-green);
}

.button {
	background-color: var(--green);
	border-radius: 14px;
	border: 0;
	color: var(--darker-green);
	display: inline-block;
	letter-spacing: 0.05em;
	margin-top: 12px;
	padding: 4px 16px;
	transition: background-color 0.2s, color 0.2s;
}

.closed-button {
	border-radius: 800px;
	font-size: 1.3em;
	font-weight: 700;
	line-height: 1.2em;
	padding: 10px 18px;
	text-decoration: none;
	width: 250px;
}

@media screen and (max-width: 460px) {
	.closed-button {
		font-size: 1.1em;
		width: 100%;
	}
}

.button:hover {
	background-color: var(--darker-green);
	color: #fff;
}

.button:focus {
	color: #fff;
}

.img-full {
	width: 100%;
	height: auto;
}

.img-fill {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* MAIN SCREEN */
#screen {
	height: 100%;
	left: 0%;
	position: absolute;
	transition: left 0.6s;
	width: 100%;
	background-color: var(--blue);
	background-image: url("../images/garnish/waves-online-meeting.svg");
	background-size: cover;
	background-position: center;
}

#menu .top-menu {
	padding: 25px 15px;
	height: auto;
	background-color: #fff;
}

#menu .top-menu .logo {
	display: block;
	width: 100%;
	height: auto;
	max-width: 210px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 10px;
}

@media screen and (min-width: 992px) {
	#menu .top-menu .logo {
		margin-bottom: 20px;
	}
}

#menu .top-menu h1 {
	font-size: 1.125rem;
	font-weight: 700;
	margin: 0;
	color: var(--blue);
}

/* LEFT MENU */
#skipcontent {
	background-color: #fff;
	border: 1px inset #aaa;
	border-radius: 8px;
	box-shadow: 2px 2px 8px 0 #333;
	color: #000;
	font-size: 1.4em;
	font-weight: 700;
	left: -9999px;
	padding: 6px 14px;
	position: absolute;
	top: -9999px;
}

#skipcontent:focus {
	left: 8px;
	top: 8px;
}

#menu {
	position: relative;
	background-color: #fff;
	float: left;
	height: 100%;
	overflow: auto;
	padding-bottom: 18px;
	width: 15%;
}

#menu div {
	background-color: var(--black);
	border-width: 1px 0;
}

#menu ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

#menu ul li {
	border-bottom: 1px solid #ccc;
	margin: 0;
	width: 100%;
	font-size: 1rem;
}

#menu ul li a {
	color: var(--black);
	display: block;
	padding: 2px 8px 10px;
	position: relative;
	width: 100%;
	background-color: var(--medium-blue);
}

#menu ul li a i {
	background-color: var(--blue);
	color: #fff;
	display: inline-block;
	font-size: 1.1em;
	margin: 4px 0;
	opacity: 1;
	padding: 4px;
	position: absolute;
	text-align: center;
	transition: filer 150ms ease-in-out;
}

#menu ul li a.showing > i {
	background-color: #fff;
	color: var(--blue);
	opacity: 1;
}

#menu ul li a i:before {
	content: "\f101";
}

#menu ul li a span {
	display: inline-block;
	font-size: 0.85em;
	font-weight: 700;
	line-height: 1.3em;
	padding: 8px 0 0 35px;
	vertical-align: middle;
	text-transform: uppercase;
}

#menu ul li a:hover {
	background-color: var(--yellow);
}

#menu ul li a:hover i {
	filter: brightness(80%);
}

#menu ul li a.showing {
	background-color: var(--blue);
	color: #fff;
}

/* TRANSLATOR */
#google_translate_element2 {
	display: none;
}

#langaugeselectcont {
	bottom: 20px;
	left: 0;
	width: 100%;
}

#langaugeselectcont select {
	margin-left: 5%;
	width: 90%;
}

#langaugeselectcont label {
	margin-left: 5%;
	width: 90%;
	color: var(--black);
	text-align: center;
	font-weight: 700;
	font-size: 0.85rem;
}

/* SLIDE AREA */

#slides {
	bottom: 0;
	height: 100%;
	position: relative;
	width: 100%;
}

.container {
	bottom: 74px;
	height: auto;
	left: 15%;
	margin: 0;
	position: fixed;
	top: 94px;
	transition: left 0.6s, margin 0.6s;
	width: 85%;
	padding: 0;
	max-width: none;
}

.slide {
	color: #000;
	width: 100%;
	height: 100%;
	margin-left: -1200%;
	margin-top: -22px;
	opacity: 0;
	position: absolute;
	top: -200%;
	transition: 0s;
	background-color: #fff;
	border-radius: 10px;
}

.slide.showing {
	width: 90%;
	margin-left: 0%;
	margin-top: 0;
	left: 50%;
	transform: translateX(-50%);
	opacity: 1;
	top: 0;
	transition: margin-left 0s, margin-top 0.7s, opacity 0.8s, top 0s;
	max-height: 100%;
	overflow: auto;
}

.slide h2 {
	font-size: 1.75rem;
	color: var(--blue);
	font-weight: 700;
	margin-bottom: 20px;
	text-transform: uppercase;
}

@media screen and (min-width: 992px) {
	.slide h2 {
		font-size: 2.1875rem;
	}
}

.slide h3 {
	display: block;
	font-size: 1.35rem;
	color: var(--blue);
	padding-bottom: 12px;
	border-bottom: 1px solid var(--dark-green);
	margin-bottom: 25px;
	font-weight: 700;
	text-transform: uppercase;
}

@media screen and (min-width: 992px) {
	.slide h3 {
		font-size: 1.5625rem;
	}
}

.slide h4 {
	display: block;
	font-size: 1.15rem;
	color: #749028;
	margin-bottom: 10px;
	font-weight: 700;
	text-transform: uppercase;
}

@media screen and (min-width: 992px) {
	.slide h4 {
		font-size: 1.25rem;
	}
}

.slide h5 {
	display: block;
	font-size: 1.15rem;
	color: #303b42;
	margin-bottom: 5px;
	font-weight: 700;
}

.contact-open .container {
	margin-left: -370px;
}

#nav-progress {
	bottom: 0;
	height: 50px;
	overflow: auto;
	position: absolute;
	right: 0;
	width: 85%;
}

#nav-progress a {
	background-color: #fff;
	color: var(--black);
	float: left;
	height: 100%;
	text-align: center;
	width: 10%;
}

#nav-progress > a:hover {
	background-color: var(--light-blue);
}

#nav-progress a span {
	left: -9999px;
	position: absolute;
	top: -9999px;
}

#nav-progress a i {
	font-size: 1.9em;
	margin-top: 10px;
}

#nav-progress ul {
	display: table;
	float: left;
	height: 100%;
	margin: 0;
	padding: 0;
	width: 80%;
}

#nav-progress ul li {
	display: table-cell;
	height: 100%;
	padding: 0;
}

#nav-progress ul li a {
	background-color: var(--blue);
	border: 1px solid #fff;
	border-width: 23px 2px;
	height: 100%;
	width: 100%;
}

#nav-progress ul li a.active {
	background-color: var(--blue);
	border-color: var(--green);
}

#nav-progress ul li a span {
	color: #000;
	left: -9999px;
	position: absolute;
	top: -9999px;
}

#nav-progress ul li a:hover {
	border-color: var(--light-blue);
}

/* MENU & COMMENT BUTTONS */
.meeting-button {
	background-color: #fff;
	box-shadow: inset 0 0 0 2px var(--brand-primary);
	color: var(--brand-primary);
	font-size: 0.9em;
	font-weight: 700;
	height: 60px;
	position: absolute;
	text-align: center;
	text-transform: uppercase;
	width: 60px;
}

#menu-toggle {
	display: none;
	left: 20px;
	padding-top: 8px;
	top: 14px;
	width: 60px;
	z-index: 1;
}

#menu-toggle:hover {
	color: var(--brand-secondary);
}

#menu-toggle span {
	background-color: var(--brand-primary);
	display: block;
	height: 4px;
	margin: 4px auto;
	transition: margin 0.2s, transform 0.2s;
	width: 40%;
}

#menu-toggle:hover span {
	background-color: var(--brand-secondary);
}

#contact {
	background-color: white;
	height: 100%;
	left: 100%;
	margin: 0;
	overflow-y: auto;
	padding: 12px;
	position: fixed;
	top: 0;
	transition: margin 0.6s;
	width: 370px;
}

#contact .logo {
	width: 100%;
	height: auto;
	max-width: 170px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

@media screen and (min-width: 992px) {
	#contact .logo {
		margin-left: 15px;
		margin-right: 0;
	}
}

#menuOffScreen {
	background-color: rgba(35, 35, 35, 0.3);
	cursor: pointer;
	height: 100%;
	left: -200%;
	margin-left: 0;
	opacity: 0;
	position: fixed;
	top: 0;
	transition: left 0s ease-in-out 0.3s, margin 0s, opacity 0.3s;
	width: 100%;
	z-index: 2;
}

#closecomment {
	color: #333;
	font-size: 1.2em;
	font-weight: 700;
	text-decoration: none;
}

#closecomment:hover {
	text-decoration: underline;
	color: var(--blue);
}

#contact-button {
	right: 5%;
	top: 14px;
	width: 84px;
}

#contact-button i {
	font-size: 1.8em;
	padding-top: 8px;
}

.contact-open #screen {
	left: -370px;
}

.menu-open #menuOffScreen,
.contact-open #menuOffScreen {
	left: 0px;
	margin-left: -370px;
	opacity: 1;
	transition: left 0s, margin 0.6s, opacity 0.6s;
}

.menu-open #menuOffScreen {
	margin-left: 240px;
}

.contact-open #contact {
	margin-left: -370px;
}

.meeting-button:before,
.meeting-button:after {
	border: 2px solid transparent;
	content: "";
	height: 0;
	position: absolute;
	width: 0;
}

.meeting-button:before {
	left: 0;
	top: 0;
}

.meeting-button:after {
	bottom: 0;
	right: 0;
}

.meeting-button:hover {
	color: var(--brand-secondary);
	transition: color 0.8s;
}

.meeting-button:hover:before,
.meeting-button:hover:after {
	height: 100%;
	width: 100%;
}

.meeting-button:hover:before {
	border-right-color: var(--brand-secondary);
	border-top-color: var(--brand-secondary);
	transition: width 0.2s ease-out, height 0.2s ease-out 0.2s;
}

.meeting-button:hover:after {
	border-bottom-color: var(--brand-secondary);
	border-left-color: var(--brand-secondary);
	transition: height 0.2s ease-out 0.6s, width 0.2s ease-out 0.4s;
}

/* LIGHTBOX */
#lightbox {
	height: 0%;
	position: fixed;
	top: -100%;
	transition: top 0.85s, height 0.85s;
	width: 100%;
	z-index: 100;
}

#lightbox > span {
	background-color: rgba(35, 35, 35, 0.8);
	cursor: pointer;
	height: 100%;
	position: absolute;
	top: 0;
	width: 100%;
}

#lightbox > span span {
	color: #fff;
	font-size: 3.6em;
	line-height: 0.4em;
	padding: 15px;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 5;
}

#lightbox div {
	box-shadow: 0 8px 15px 0 #000;
	margin: -120px auto 0;
	max-height: 80%;
	overflow: auto;
	position: relative;
	transform: rotateX(90deg) translateY(-160px);
	transition: 0.24s;
	width: 88%;
}

#lightbox img {
	display: block;
	width: 100%;
	background-color: #fff;
}

#lightbox.on {
	top: 0;
	height: 100%;
}

#lightbox.on div {
	margin-top: 50px;
	transition: 0.8s ease-out 0.32s;
	transform: rotateX(0deg) translateY(0px);
}

img.lightbox {
	transition: filter 150ms ease-in-out;
	position: relative;
}

img.lightbox:hover {
	cursor: pointer;
	filter: brightness(80%);
}

.lightbox-container {
	position: relative;
	overflow: hidden;
}

.lightbox-container::after {
	content: "Click to enlarge";
	display: inline-block;
	position: absolute;
	left: 0;
	bottom: 0;
	border-radius: 0px 8px 0px 5px;
	padding: 5px;
	background-color: #fff;
	color: var(--black);
}

.slide-content {
	padding: 30px;
}

.global-cta-container {
	position: absolute;
	top: 20px;
	right: 4.5%;
	display: flex;
	align-items: center;
}

.global-cta-container a img {
	transition: filter 150ms ease-in-out;
}

.global-cta-container a:hover img {
	filter: brightness(80%);
}

.global-cta-container .comment-button {
	position: relative;
	background-color: var(--green);
	display: inline-block;
	width: 128px;
	text-transform: uppercase;
	text-align: center;
	padding-top: 25px;
	padding-bottom: 5px;
	padding-left: 10px;
	padding-right: 10px;
	border-radius: 8px;
	color: var(--blue);
	font-size: 1.15rem;
	font-weight: 600;
	text-decoration: none;
	transition: background-color 150ms ease-in-out, color 150ms ease-in-out;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
	margin-top: -10px;
}

.global-cta-container .comment-button::after {
	content: "";
	position: absolute;
	top: 8px;
	left: 50%;
	transform: translateX(-50%);
	width: 32px;
	height: 18px;
	background-image: url("../images/icons/comment.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transition: background-image 150ms ease-in-out;
}

.global-cta-container .comment-button:hover {
	background-color: var(--darker-green);
	color: #fff;
}

.global-cta-container .comment-button:hover::after {
	background-image: url("../images/icons/comment-white.svg");
}

.global-cta-container .comment-button i {
	font-size: 1.5rem;
}

.global-cta-container .cta-button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 52px;
	height: 52px;
	border-radius: 100%;
	background-color: #fff;
	filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
}

.global-cta-container .cta-button:hover {
	background-color: var(--light-blue);
}

.lightbox-text {
	font-size: 0.75rem !important;
	margin-top: 10px;
	margin-bottom: 20px;
}

@media screen and (min-width: 992px) {
	.lightbox-text {
		font-size: 0.9rem !important;
	}
}

.video-container {
	position: relative;
	padding-bottom: 50%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 30px;
}

.video-container iframe,
.video-container object,
.video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.icon-list {
	padding: 0;
}

.icon-list li {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.icon-list li a {
	font-weight: bold;
	text-decoration: underline;
}

.icon-list .icon {
	width: 65px;
	height: auto;
	margin-right: 25px;
}

.icon-list .text {
	flex: 1;
	font-weight: 500;
}

.accordion .accordion-button {
	background-color: var(--yellow);
	border-radius: 12px 12px 0px 0px !important;
	padding: 18px;
	font-size: 1.25rem;
	font-weight: 700;
	transition: filter 150ms ease-in-out;
}

@media screen and (min-width: 992px) {
	.accordion .accordion-button {
		font-size: 1.5rem;
		padding: 18px 30px;
	}
}

.accordion .accordion-button:hover {
	filter: brightness(80%);
}

.accordion-button:not(.collapsed) {
	color: var(--black);
}

.accordion .accordion-item {
	margin-bottom: 20px;
	border: 0;
}

.accordion .accordion-body {
	background-color: var(--light-yellow);
	padding: 20px;
	border-radius: 0px 0px 12px 12px;
}

@media screen and (min-width: 992px) {
	.accordion .accordion-body {
		padding: 40px;
	}
}

.owl-carousel iframe {
	min-height: 600px !important;
}

.divider {
	display: block;
	width: 80%;
	height: 5px;
	background-color: var(--brand-primary);
	margin: 25px auto 50px;
}

.logos-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.logos-row .logo {
	width: 50%;
	height: auto;
}

.carousel-row {
	display: flex;
	flex-wrap: wrap;
}

.carousel-row > div {
	width: 50%;
}

.aw-carousel h4 {
	background-color: var(--brand-secondary);
	color: #fff;
	display: block;
	padding: 20px;
	text-transform: uppercase;
	font-weight: 600;
	font-size: 2rem;
	margin-bottom: 25px;
}

.aw-carousel .item {
	z-index: 2;
}

.aw-carousel .owl-nav button {
	height: 100%;
	background-color: var(--brand-primary) !important;
	width: 35px;
	opacity: 50%;
	transition: opacity 300ms ease-in-out;
	position: absolute;
	top: 0;
}

.aw-carousel .owl-nav button.disabled {
	display: none;
}

.aw-carousel .owl-nav button.owl-prev {
	left: -35px;
}

.aw-carousel .owl-nav button.owl-next {
	right: -35px;
}

.aw-carousel .owl-nav button:hover {
	opacity: 100%;
}

.aw-carousel .owl-nav button span {
	font-size: 3rem;
	color: #000;
	font-weight: 700;
}

.star-icon {
	width: 100%;
	height: auto;
	max-width: 80px;
}

@media screen and (min-width: 992px) {
	.star-icon {
		width: 100%;
		height: auto;
		max-width: 140px;
	}
}

.standard-section {
	display: block;
	width: 100%;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
}

@media screen and (min-width: 992px) {
	.standard-section {
		padding: 44px 70px 52px;
	}
}

hr {
	margin: 40px 0;
	border-color: #757575;
	opacity: 1;
}

@media screen and (min-width: 992px) {
	hr {
		margin: 60px 0;
	}
}

.criteria {
	display: flex;
	justify-content: center;
	align-items: stretch;
	flex-wrap: wrap;
	margin: 0 -10px;
}

.criteria .criteria-item {
	display: flex;
	margin: 10px 5px;
	border-radius: 8px;
	overflow: hidden;
	border: 2px solid var(--blue);
	font-size: 1rem;
}

.criteria .criteria-item .icon-or-number {
	width: 70px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	color: var(--blue);
	font-weight: 700;
}

.criteria .criteria-item .icon-or-number .icon {
	width: 100%;
	height: auto;
	padding: 10px;
}

.criteria-col .criteria {
	margin: 0;
}

.criteria-col .criteria .criteria-item {
	width: 100%;
	margin: 0;
	margin-bottom: 20px;
}

.criteria-col .criteria .icon-or-number {
	width: 50px;
	min-width: 50px;
}

.criteria-col .criteria .icon-or-number .icon {
	padding: 5px;
}

.criteria-col .criteria .criteria-item .name {
	padding: 10px;
	font-size: 1rem;
	justify-content: flex-start;
}

.criteria .criteria-item .name {
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--blue);
	color: #fff;
	font-weight: 700;
	padding: 10px 20px;
}

@media screen and (min-width: 992px) {
	.criteria .criteria-item {
		font-size: 1.15rem;
	}
}

@media screen and (min-width: 992px) {
	.criteria-col h3 {
		font-size: 2rem;
	}
}

.blurb {
	border-radius: 8px;
	overflow: hidden;
}

.blurb.top-border {
	border-top: 30px solid var(--black);
}

.blurb.bg-light-yellow.top-border {
	border-color: var(--yellow);
}

.blurb.bg-light-blue.top-border {
	border-color: var(--blue);
}

.blurb .blurb-header {
	padding: 10px 25px;
}

.blurb .blurb-header h3 {
	margin-bottom: 0;
}

.blurb .blurb-header.bg-blue h3 {
	color: #fff;
}

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

.icon-blurb {
	padding-top: 50px;
}

.icon-blurb .content {
	border-radius: 8px;
	background-color: var(--orange);
	padding-left: 25px;
	padding-right: 25px;
	padding-bottom: 25px;
	text-align: center;
}

.icon-blurb .content .icon {
	width: auto;
	height: 100px;
	margin-top: -50px;
	margin-bottom: 20px;
}

@media screen and (min-width: 992px) {
	.icon-blurb {
		padding-top: 70px;
	}

	.icon-blurb .content {
		padding-left: 35px;
		padding-right: 35px;
		padding-bottom: 35px;
	}

	.icon-blurb .content .icon {
		height: 140px;
		margin-top: -70px;
	}
}

.intro-modal {
	background-image: url("../images/meeting-bg.png");
	background-size: cover;
	background-position: center;
}

.modal .logo {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100px;
	margin-left: auto;
	margin-right: auto;
}

@media screen and (min-width: 992px) {
	.modal .logo {
		max-width: 155px;
	}
}

.modal .btn-close {
	position: absolute;
	top: -20px;
	right: 10px;
}

.modal .modal-content {
	padding: 0px;
	border-top: 24px solid var(--yellow);
}

@media screen and (min-width: 992px) {
	.modal .modal-content {
		padding: 10px 40px;
	}
}

.modal .modal-dialog {
	width: 95%;
	max-width: 500px;
}

@media screen and (min-width: 992px) {
	.modal .modal-dialog {
		max-width: 1200px;
	}
}

.modal .modal-header,
.modal .modal-footer {
	border: 0;
}

.modal .modal-blurb {
	background-color: var(--orange);
	border-radius: 12px;
	color: #000;
	width: 100%;
	height: 100%;
	padding: 20px;
}

.modal h2 {
	font-size: 1.8rem;
	font-weight: 900;
	text-transform: uppercase;
	margin: 0;
}

.modal h2 .pre {
	font-size: 1.25rem;
	font-weight: 500;
	display: block;
	margin-bottom: 10px;
}

.modal h2 .post {
	font-size: 1.25rem;
	display: block;
	margin-top: 10px;
}

@media screen and (min-width: 992px) {
	.modal h2 {
		font-size: 3.125rem;
	}

	.modal h2 .pre {
		font-size: 2rem;
	}

	.modal h2 .post {
		font-size: 2rem;
	}
}

.modal h3 {
	font-size: 1.25rem;
	display: block;
	font-weight: 700;
	margin-bottom: 25px;
}

.modal .modal-body {
	max-height: 75vh;
	overflow: auto;
}

.modal .btn {
	background-color: var(--black);
	color: #fff;
	transition: background-color 150ms ease-in-out;
	padding: 12px 16px;
	font-size: 1.15rem;
	font-weight: 700;
}

.modal .btn:hover {
	background-color: var(--blue);
}

@media screen and (min-width: 992px) {
	.modal .btn {
		font-size: 1.25rem;
	}
}

.comment-modal .modal-body {
	max-height: 80vh;
}

.comment-map {
	width: 100%;
	height: 400px;
}

@media screen and (min-width: 992px) {
	.comment-map {
		height: 700px;
	}
}

.icon-and-text {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	justify-content: center;
}

.icon-and-text .icon {
	width: 100px;
	height: auto;
	margin-bottom: 20px;
}

.icon-and-text .text {
	width: 100%;
}

@media screen and (min-width: 992px) {
	.icon-and-text .icon {
		width: 150px;
		margin-bottom: 0px;
		margin-right: 20px;
	}

	.icon-and-text .text {
		flex: 1;
		width: auto;
	}
}

/* MEDIA QUERIES */

@media screen and (max-width: 992px) {
	#menu {
		margin-left: -240px;
		position: relative;
		width: 240px;
		z-index: 2;
	}

	img.logo {
		display: block;
		width: 50%;
		margin: 0 auto;
		padding-top: 15px;
	}

	#menu-toggle {
		display: block;
	}

	#contact-button {
		right: 20px;
	}

	.menu-open #screen {
		left: 240px;
	}

	#nav-progress {
		width: 100%;
	}

	#nav-progress a {
		width: 15%;
	}

	#nav-progress ul {
		width: 70%;
	}

	#nav-progress ul li a {
		border-width: 20px 1px;
	}

	#slides {
		height: 84%;
		top: 0;
	}

	.container {
		left: 0;
		width: 100%;
	}

	.slide {
		height: 100%;
		width: 100%;
	}

	.slide.showing {
		margin-left: 0;
	}

	.menu-open .container {
		margin-left: 240px;
	}

	#lightbox img {
		max-width: 8000%;
		width: 160%;
	}
}

/* LANDING PAGE STYLES */
.landing-page {
	position: relative;
	min-height: 100vh;
	width: 100%;
	background-image: url("../images/backgrounds/ocean-carnival.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	overflow: hidden;
	z-index: 2;
}

.landing-page::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: -5px;
	width: 100%;
	height: 499px;
	background-image: url("../images/garnish/waves.svg");
	background-position: center;
	background-size: cover;
	z-index: 1;
	background-repeat: no-repeat;
}

.landing-page p {
	font-size: 1.15rem;
}

@media screen and (min-width: 992px) {
	.landing-page p {
		font-size: 1.25rem;
	}

	.landing-page p.large {
		font-size: 1.5625rem;
	}
}

.landing-page .landing-page-container {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0 30px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	overflow: auto;
	z-index: 2;
}

.landing-page .content-container {
	display: block;
	position: relative;
	width: 100%;
	max-width: 525px;
	padding: 25px;
	background: rgba(255, 255, 255, 0.95);
}

@media screen and (min-width: 992px) {
	.landing-page .content-container {
		padding: 50px;
	}
}

.slide-header {
	position: relative;
	background-color: var(--light-blue);
	padding-top: 50px;
}

.slide-header::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 90px;
	height: 50px;
	background-image: url("../images/header-graphic.jpg");
	background-size: cover;
	background-position: center left;
	background-repeat: no-repeat;
}

.slide-header .content {
	padding: 20px;
	flex: 1;
}

@media screen and (min-width: 992px) {
	.slide-header {
		padding-top: 0;
		padding-right: 30%;
		background-size: auto 250px;
	}

	.slide-header::after {
		width: 30%;
		height: 100%;
	}

	.slide-header .content {
		padding-top: 40px;
		padding-bottom: 40px;
		padding-left: 70px;
		padding-right: 0;
	}
}

.btn-link {
	display: inline-block;
	background-color: var(--green);
	color: var(--blue);
	padding: 10px;
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
	border-radius: 50px;
	font-size: 1.5625rem;
	font-weight: 700;
	min-width: 290px;
	text-align: center;
	text-decoration: none;
	line-height: 1.25;
}

.btn-link:hover {
	background-color: var(--dark-green);
	color: var(--blue);
}

@media screen and (max-width: 460px) {
	.btn-link {
		font-size: 1.1em;
		min-width: auto;
		width: 90%;
	}
}

.pro-con-blurb {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	background-color: var(--dark-blue);
	color: #fff;
}

.pro-con-blurb .img-container {
	display: block;
	width: 100%;
	height: 265px;
}

.pro-con-blurb .img-container.shorter {
	height: 225px;
}

.pro-con-blurb .img-container img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}

.pro-con-blurb .img-caption {
	font-size: 1rem;
	display: block;
	text-align: end;
	font-style: italic;
	padding: 12px 20px;
}

.pro-con-blurb .title {
	display: block;
	font-family: "Lato", sans-serif;
	width: 100%;
	padding: 20px;
	background-color: var(--blue);
	color: #fff;
	text-transform: uppercase;
	margin: 0;
	text-align: center;
	font-size: 1.25rem;
	font-style: normal;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media screen and (min-width: 992px) {
	.pro-con-blurb .title {
		padding: 25px;
	}
}

.pro-con-blurb .copy-container {
	position: relative;
	padding: 20px;
}

@media screen and (min-width: 992px) {
	.pro-con-blurb .copy-container {
		padding: 25px;
	}
}

.pro-con-blurb .copy-container .inner-title {
	font-size: 1.125rem;
	font-family: "Lato", sans-serif;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
}

.pro-con-blurb .copy-container li {
	font-size: 1.0625rem;
	margin-bottom: 5px;
}

.pro-con-blurb .copy-container .pros,
.pro-con-blurb .copy-container .cons {
	position: relative;
	padding-left: 55px;
}

.pro-con-blurb .copy-container .pros::after,
.pro-con-blurb .copy-container .cons::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 33px;
	height: 33px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.pro-con-blurb .copy-container .pros {
	padding-bottom: 30px;
}

.pro-con-blurb .copy-container .cons {
	padding-top: 30px;
	border-top: 1px solid #fff;
}

.pro-con-blurb .copy-container .no-graphic {
	padding-left: 0 !important;
}

.pro-con-blurb .copy-container .no-graphic::after {
	display: none;
}

.pro-con-blurb .copy-container .pros::after {
	top: -5px;
	background-image: url("../images/icons/pros.svg");
}

.pro-con-blurb .copy-container .cons:after {
	top: 25px;
	background-image: url("../images/icons/cons.svg");
}

.landing-page .new-intro-signoff {
	color: #255581;
	font-size: 1.4em;
	line-height: 1.3em;
}

#modeling-tools {
	list-style: none;
	margin-bottom: 44px;
	padding: 0;
}
#modeling-tools > li {
	padding: 0 44px;
	position: relative;
}
#modeling-tools li li {
	font-size: 1em;
}
#modeling-tools span {
	background: #255581;
	color: #a6ce39;
	font-weight: 700;
	left: 0;
	position: absolute;
	text-align: center;
	width: 28px;
}
#modeling-tools h4 {
	color: #749028;
}

#model-approaches {
	border-bottom: 2px solid #dfe0df;
	margin-bottom: 28px;
}
#model-approaches th,
#model-approaches td {
	border: 1px solid #dfe0df;
	border-width: 0 0 1px 1px;
	line-height: 1.2em;
	padding: 6px;
}
#model-approaches thead th {
	background: #47773b;
	border-right: 1px solid #4a793f;
	color: #fff;
	padding: 8px 10px;
	text-align: center;
}
#model-approaches tbody tr:nth-of-type(even) {
	background: #f1f5f4;
}
#model-approaches th {
	border-left: 0;
}
#model-approaches td {
	text-align: center;
}

.blue-icon-left {
	align-items: center;
	display: flex;
	margin: 24px 0 34px;
}
.blue-icon-left h4 {
	color: #749028;
	margin: 0;
}
.blue-icon-left img {
	flex-shrink: 0;
	height: 60px;
	margin-right: 20px;
}

#did-you-know {
	display: flex;
	justify-content: center;
	list-style: none;
	padding: 0;
}
#did-you-know li {
	margin: 0 1.5%;
	position: relative;
	width: 25%;
}
#did-you-know li a {
	background: #255581;
	border-radius: 8px;
	box-shadow: 0 4px 8px -2px #333;
	display: block;
	font-weight: 400;
	height: 100%;
	padding: 32px 35px;
	text-align: left;
	text-decoration: none !important;
	transition: 0.3s;
}
#did-you-know li:nth-of-type(even) a {
	background: #749028;
}
#did-you-know li a:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}
#did-you-know li a h4 {
	color: #fff;
	font-weight: 400;
	left: 50%;
	letter-spacing: 0.04em;
	opacity: 1;
	position: absolute;
	top: 100px;
	text-align: center;
	transform: translateX(-50%);
	transition: 0.45s ease-in-out 0.1s;
	width: 80%;
}
#did-you-know li a h4 img {
	display: block;
	margin: 30px auto 14px;
	width: 90px;
}
#did-you-know a div {
	display: inline-block;
	transform: rotateY(90deg);
	transition: transform 0.6s;
	vertical-align: middle;
	width: 90%;
}
#did-you-know li a > img {
	height: 28px;
	position: absolute;
	right: 20px;
	top: 20px;
	transition: filter 0.3s;
}
#did-you-know li a span span {
	font-weight: 700;
	text-decoration: underline;
}

#did-you-know li:hover a,
#did-you-know li a:focus {
	background: #a3d3e6;
}
#did-you-know li:nth-of-type(even):hover a,
#did-you-know li:nth-of-type(even) a:focus {
	background: #f6f2e9;
}
#did-you-know li:hover a h4,
#did-you-know li a:focus h4 {
	opacity: 0;
	top: 60px;
	transition: 0.4s;
}
#did-you-know li:hover a div,
#did-you-know li a:focus div {
	transform: rotateY(0deg);
	transition: transform 0.8s;
}
#did-you-know li:hover a > img,
#did-you-know li a:focus > img {
	filter: invert(1);
}

@media screen and (max-width: 1600px) {
	#did-you-know {
		padding: 0;
	}
	#did-you-know li {
		font-size: 1em;
		width: 31.3333%;
	}
	#did-you-know li a {
		padding: 38px 24px 20px;
	}
	#did-you-know li a h4 {
		top: 40px;
	}
}

@media screen and (max-width: 1360px) {
	#did-you-know {
		flex-wrap: wrap;
	}
	#did-you-know li {
		font-size: 1em;
		min-height: 220px;
		margin-bottom: 28px;
		width: 46%;
	}
	#did-you-know li a h4 {
		top: 20px;
	}
	#did-you-know li a h4 img {
		width: 60px;
	}
}

/* Zoom Maps */
#zoom-maps {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
	padding: 0 1%;
}
#zoom-maps li {
	margin: 0 1% 8px;
	text-align: left;
}
#zoom-maps li button {
	background: transparent;
	border: 0;
	text-align: left;
	text-decoration: underline;
	transition: 0.2s;
}
#zoom-maps li button:hover {
	color: #255581;
}
#zoom-maps li img {
	margin-bottom: 6px;
	width: 100%;
}

.new-img img {
	width: 100%;
}

.rollplot {
	border: 1px solid #aaa;
	margin-bottom: 18px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.rollplot:hover {
	cursor: grab;
}
.rollplot.rolling {
	cursor: grabbing;
}
.rollplot img {
	left: 0;
	max-width: 80000px;
	position: absolute;
	top: 0;
	transition: width 0s;
}
.rollplot .buttons {
	left: 0;
	padding: 10px;
	position: absolute;
	top: 0;
}
.rollplot button {
	background: #555;
	border: 0;
	border-radius: 3px;
	box-shadow: 0 0 8px 0 #333;
	color: #fff;
	font-size: 0.9em;
	font-weight: 700;
	height: 34px;
	margin-right: 3px;
	padding: 0 8px;
	transition: 0.3s;
}
.rollplot button:hover {
	background: #333;
	box-shadow: 0 0 6px 2px #111;
}

.ada-element {
	left: -9999px;
	position: absolute;
	top: -9999px;
}

#fund-circles {
	margin-bottom: 50px;
	position: relative;
}
#fund-circles img {
	display: block;
	margin: 8px auto;
	width: 60%;
}
.pie-legend {
	font-size: 0.9em;
	left: 50%;
	list-style: none;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.pie-legend li > span {
	background: #749028;
	display: inline-block;
	height: 18px;
	margin: -1px 10px 0 0;
	vertical-align: middle;
	width: 18px;
}
.pie-legend li:nth-of-type(2) > span {
	background: #255581;
}

#types-eligibility > div > img {
	width: 100%;
}
#types-eligibility h4 {
	background: #255581;
	color: #fff;
	font-weight: 400;
	margin: 0;
	padding: 18px 24px;
	text-align: center;
}
#types-eligibility ul {
	display: flex;
	list-style: none;
	padding: 0;
}
#types-eligibility li {
	background: #1a3b5a;
	border-right: 2px solid #fff;
	color: #fff;
	padding: 10px 14px;
	text-align: center;
	width: 50%;
}
#types-eligibility li:last-of-type {
	border: 0;
}
#types-eligibility li img {
	height: 20px;
	margin-left: 14px;
}

#evaluated-bridges {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
	padding: 0;
}
#evaluated-bridges li {
	width: 48%;
}
#evaluated-bridges strong {
	display: block;
	margin-top: 4px;
}

/* Modal Window */
.hdr-close-modal {
	display: none;
}
.hdr-launch-modal {
	display: none;
}
.has-hdr-modals .hdr-launch-modal {
	display: block;
}
.hdr-modal-showing {
	overflow: hidden;
}
.hdr-modal-window {
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: -100%;
	transition: 0;
	width: 100%;
	z-index: 1000;
}
.hdr-modal-window.showing {
	top: 0;
	transition: top 1s;
}
.hdr-modal-window > .hdr-close-modal {
	background-color: rgba(0, 0, 0, 0.75);
	border: 0;
	cursor: pointer;
	display: block;
	height: 100%;
	left: 0;
	margin: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.hdr-modal-window .hdr-close-modal span {
	left: -9999px;
	position: absolute;
}
.hdr-modal-window .hdr-modal-title {
	margin: 26px 28px 6px 0;
}
.hdr-modal-window > div {
	background-color: #fff;
	bottom: 0 !important;
	box-shadow: 4px 13px 28px 0 #111;
	max-height: 72%;
	overflow: auto;
	padding: 48px 3% 48px;
	position: absolute;
}
.hdr-modal-window > div .hdr-close-modal {
	background: transparent;
	border: 0;
	color: #333;
	font-size: 2.4em;
	line-height: 0.8em;
	position: absolute;
	right: 4px;
	top: 0;
}
.hdr-modal-window > div .hdr-close-modal:hover {
	color: #666;
}
.hdr-modal-window :focus {
	border-radius: 2px;
	outline: 2px groove #ddd;
}

/* Accordions */
.hdr-accordion-set {
	margin: 0 0 28px;
}
.hdr-accordion h3,
.hdr-accordion h6 {
	border: 0;
	font-size: 1.1em;
	margin: 0;
}
.hdr-accordion button {
	background: #fff;
	border: 0;
	transition: color 150ms ease-in-out;
}

.hdr-accordion button:hover {
	color: #749028;
}
.hdr-accordion-header {
	cursor: pointer;
	font-weight: 700;
	margin: 18px 0 0;
	padding: 10px 0 10px 36px;
	position: relative;
	text-align: left;
	width: 100%;
}
.hdr-accordion-set.has-js .hdr-accordion-header span {
	background: #255581;
	display: inline-block;
	height: 22px;
	left: 0;
	position: absolute;
	top: 12px;
	width: 22px;
}
.hdr-accordion-set.has-js .hdr-accordion-header span:before,
.hdr-accordion-set.has-js .hdr-accordion-header span:after {
	background: #a6ce39;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
	transition: transform 0.8s;
	width: 12px;
}
.hdr-accordion-set.has-js .hdr-accordion-header span:after {
	transform: translateY(-50%) translateX(-50%) rotate(270deg);
}
.hdr-accordion-set.has-js .opened .hdr-accordion-header span:after {
	transform: translateY(-50%) translateX(-50%) rotate(0deg);
}
.hdr-accordion > div {
	background: #fff;
	padding: 1px 2% 1px 36px;
}

.hdr-accordion-set.alt .hdr-accordion .hdr-accordion-header {
	color: #749028;
}


.hdr-accordion-set.alt .hdr-accordion .hdr-accordion-header:hover {
	color: #54681e;
    text-decoration: underline;
}

.hdr-accordion-set.alt .hdr-accordion > div {
	background-color: #edf6fb;
	padding: 15px 10px;
}

.hdr-accordion-set.alt .hdr-accordion .double-container {
	background-color: transparent;
	padding: 0;
}

.hdr-accordion-set.alt .hdr-accordion .double-container > div {
	padding: 15px 10px;
}

.hdr-accordion-set.alt .hdr-accordion .double-container .container-a {
	background-color: #edf6fb;
	margin-bottom: 15px;
}

.hdr-accordion-set.alt .hdr-accordion .double-container .container-b {
	background-color: #f6f2e9;
}

.hdr-accordion-set.alt .hdr-accordion > div a,
.hdr-accordion-set.alt .hdr-accordion .zoom-map-btn {
	color: #000;
	font-weight: 400;
	background-color: transparent;
	padding: 0;
	margin: 0;
	text-decoration: underline;
	text-align: left;
	vertical-align: text-top;
    font-size: 1rem;
}

.hdr-accordion-set.alt .hdr-accordion > div a:hover,
.hdr-accordion-set.alt .hdr-accordion .zoom-map-btn:hover {
	color: #47773b;
}

.hdr-accordion-set.alt .hdr-accordion > div ul {
	margin-bottom: 0;
}

.hdr-accordion-set.alt .hdr-accordion > div li:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	#did-you-know {
		flex-wrap: wrap;
	}
	#did-you-know li {
		font-size: 1em;
		margin-bottom: 28px;
		width: 100%;
	}
	#did-you-know li a h4 {
		top: 0;
	}
	#did-you-know li a h4 img {
		width: 50px;
	}

	#fund-circles {
		width: 70%;
	}
	#fund-circles img {
		width: 90%;
	}
	.pie-legend {
		left: 105%;
		top: 80px;
		transform: none;
		width: 30%;
	}

	#types-eligibility > div {
		width: 100%;
	}

	#evaluated-bridges li {
		width: 100%;
	}

	.hdr-modal-title {
		padding: 0;
	}
	.hdr-modal-window .hdr-modal-title {
		margin: 44px 0 0;
	}
	.hdr-modal-window > div {
		height: 88% !important;
		left: 8% !important;
		padding: 0 14px 24px;
		top: 6% !important;
		width: 84% !important;
	}
	.hdr-modal-window > div .hdr-close-modal {
		font-size: 2em;
	}
}

.new-bluebox { background: #EDF6FA; }
.new-bluebox h3,
.new-bluebox h4 { background: #255581; border: 0; color: #fff; font-size: 1.4em; padding: 12px 18px; } 
.new-bluebox h4 span { display: block; font-size: .8em; font-weight: 400; text-transform: none;  } 
.new-bluebox p { padding: 1px 24px 26px; } 
.new-bluebox ul { padding: 8px 34px 18px; }
.new-bluebox img { width: 100%; }

.new-bluebox form { padding: 0 26px 32px; }
.new-bluebox textarea { height: 120px; margin: 14px 0; padding: 1px 8px; resize: none; width: 100%; }
.new-bluebox input[type="submit"] { background: #A6CE39; border: 0; border-radius: 88px; color: #255581; font-weight: 700; padding: 5px 16px; }
.new-bluebox input[type="submit"]:hover { background: #87ad21; }

#form-bluebox { margin-bottom: 24px; }
#form-bluebox span { display: none; font-weight: 700; padding: 0 26px 32px; }
#form-bluebox.thanks span { display: block; }
#form-bluebox.thanks form { display: none; }
 
.limit-img img { width: 100%; }
.limit-img small { display: block; margin: 4px 0 20px; } 

.learn-more { align-items: flex-start; }
.learn-more h4 { margin-bottom: 6px; }
.learn-more p:last-of-type { margin-bottom: 6px; }

#line-history li { align-items: center; border-bottom: 1px solid #A3D3E6; display: flex; gap: 20px; margin-bottom: 18px; padding-bottom: 18px; }
#line-history li:last-of-type { border: 0; padding: 0;  }
#line-history li h4 { background: #255581; color: #fff; font-weight: 400; margin: 0; padding: 6px 13px; }
#line-history li span { line-height: 1.2em; }

#at-glance { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 32px 0; }
#at-glance > div { width: 23%; }
#at-glance + img { display: block; margin: 0 auto 54px; max-width: 780px; width: 100%; }
#at-glance h3 { height: 88px;  }

#by-numbers > div { align-items: center; background: #255581; display: flex; gap: 10px; padding: 10px 14px; }
#by-numbers > div h4 { color: #fff; flex-grow: 1; margin: 0; }
#by-numbers > div > span { background: #A3D3E6; color: #255581; line-height: 1.1em; padding: 8px 18px; text-align: center; text-transform: uppercase; }
#by-numbers > div > span > span { display: block; font-size: .8em; text-transform: none; }
#modeling-tools { background: #EDF6FA; padding: 18px 24px; }
#modeling-tools div { border-bottom: 1px solid #A3D3E6; display: flex; flex-wrap: wrap; padding: 16px 0 12px; }
#modeling-tools div li { color: #749028; line-height: 1.4em; padding-left: 78px; padding-right: 14px; position: relative; text-transform: uppercase; width: 50%; }
#modeling-tools div li strong { display: block; font-size: 1.3em; }
#modeling-tools div img { height: 58px; left: 0; position: absolute; }

#ol-comment-map { height: 620px; margin-bottom: 18px; width: 100%; }

#what-weve-heard { display: flex; flex-wrap: wrap; gap: 3%; margin: 32px 0; }
#what-weve-heard > div { margin-bottom: 32px; width: 31%; }
#what-weve-heard h4 { align-items: center; background: #255581; color: #fff; display: flex; gap: 12px; padding: 14px 18px; }
#what-weve-heard h4 img { height: 64px; width: auto; }
#what-weve-heard ul { padding: 14px 48px 16px; }
#what-weve-heard + p { background: #255581; color: #fff; font-weight: 700; line-height: 1.3em; padding: 18px 14%; text-align: center; }

#rail-services img { height: 320px; object-fit: cover; object-position: center; position: relative; width: 100%; } 

.icon-list-2 { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; padding: 0; }
.icon-list-2 li { align-items: center; display: flex; gap: 18px; line-height: 1.3em; margin: 8px 0; padding-right: 14px; width: 50%;  } 
.icon-list-2 li img { height: 60px; }
.icon-list-2 li h4 { color: #000; font-size: 1em; margin: 0; text-transform: none; }

.list-var ul { list-style: none; }
.list-var strong { color: #255581; }

#train-examples { display: flex; flex-wrap: wrap; justify-content: space-between; list-style: none; margin-bottom: 40px; padding: 0; }
#train-examples > div { background: #1A3B5A; padding-bottom: 80px; position: relative; width: 31%; }
#train-examples img { width: 100%; }
#train-examples h5 { background: #255581; color: #fff; padding: 18px 16%; text-align: center; text-transform: uppercase; }
#train-examples p { color: #fff; padding: 6px 6%; }
#train-examples a { background: #A6CE39; border-radius: 80px; bottom: 0; color: #255581; font-weight: 700; margin: 0 6% 32px; padding: 6px 16px; position: absolute; text-decoration: none; }
#train-examples a:hover { background: #8aaf25; }

#estimate-inclusions { margin-bottom: 28px; }
#estimate-inclusions ul { padding: 2px 46px; }
#estimate-inclusions ul ul { padding: 8px 36px 0;  }
#estimate-inclusions .new-bluebox { height: 100%; }

#cost-estimate { margin-bottom: 28px; }
#cost-estimate p strong span { color: #EEFF00; }
#cost-estimate > div { padding-top: 18px; }
#cost-estimate > div:first-of-type { background: #EDF6FA; padding: 24px 28px; }
#cost-estimate > div:first-of-type h4 { align-items: center; color: #000; display: flex; font-size: 1.1em; gap: 18px; margin-bottom: 18px; }
#cost-estimate > div:first-of-type h4 span span { color: #255581; }
#cost-estimate > div:last-of-type { padding: 0;  }
#cost-estimate table { width: 100%; }
#cost-estimate thead tr th { background: #255581 !important; color: #fff; font-size: 1.1em; line-height: 1.2em; padding: 5px 6px; text-transform: uppercase; }
#cost-estimate th, #cost-estimate td { border: 1px solid #999; padding: 2px 6px; }
#cost-estimate th { background: #F0F0F0; }
#cost-estimate tr:nth-of-type(odd) td { background: #F0F0F0; }
#cost-estimate tr:nth-of-type(odd) th { background: #E1E1E1; }
#cost-estimate .subtotal th { background: #A3D3E6 !important; text-transform: uppercase; }
#cost-estimate .subtotal td { background: #D1E9F3 !important; }
#cost-estimate .total th { background: #749028 !important; color: #fff; text-transform: uppercase; }
#cost-estimate .total th span { text-transform: none; }
#cost-estimate .total td { background: #D5DEBF !important; }

.table-var { margin-bottom: 18px; width: 100%; }
.table-var thead th { background: #255581 !important; color: #fff; text-align: center; text-transform: uppercase; }
.table-var thead th:first-of-type { text-align: left; }
.table-var thead th:last-of-type { border-right: 0; }
.table-var th, .table-var td { border: 1px solid #999; padding: 2px 6px; }
.table-var th { border-left: none; }
.table-var td { border-right: none; }
.table-var th { background: #F0F0F0; }
.table-var tr:nth-of-type(odd) td { background: #F0F0F0; }
.table-var tr:nth-of-type(odd) th { background: #E1E1E1; }
.table-var.right-var td { text-align: right; }

#additional-ridership .hdr-accordion h4 { margin-bottom: 0;  }
#additional-ridership .row > * { padding: 0; }
#additional-ridership .hdr-accordion > div { background: #EDF6FA; padding: 24px 44px 34px; }
#additional-ridership .row .row { --bs-gutter-x: 0; gap: 2%; padding: 4px 0 25px; }
#additional-ridership .row .row > div { width: 49%; }

#ridership-table th,
#ridership-table td { border: 1px solid #edf6fa; padding: 6px 8px; }
#ridership-table thead tr th { background: #A3D3E6; border: 1px solid #fff; bborder-width: 1px 1px 0; line-height: 1.1em; padding: 6px 4px; text-align: center; text-transform: uppercase; }
#ridership-table thead tr th[rowspan],
#ridership-table thead tr th[colspan] { background: #255581; color: #fff; padding: 10px 4px; }
#ridership-table tbody tr { background: #fff; }
#ridership-table tbody tr th { background: #F0F0F0; }
#ridership-table tbody tr:nth-of-type(even) { background: #F0F0F0; }
#ridership-table tbody tr:nth-of-type(even) th { background: #E1E1E1; }
#ridership-table tbody td { text-align: center; }
#ridership-table tbody tr.total-row th { background: #749028; border-right: 1px solid #fff; color: #fff; padding: 8px 8px; text-transform: uppercase; }
#ridership-table .total-row td { background: #D5DEBF; border-right: 1px solid #fff; font-weight: 700; line-height: 1.1em; padding: 10px 8px; }
#ridership-table .total-row td[colspan] { font-weight: 400; font-style: italic; text-align: left; }

#strategy-table th,
#strategy-table td { padding: 10px 8px; }
#strategy-table thead tr th { background: #255581; border-right: 1px solid #fff; color: #fff; line-height: 1.1em; text-align: center; text-transform: uppercase; }
#strategy-table tbody tr { background: #fff; }
#strategy-table tbody tr th { background: #F0F0F0; }
#strategy-table tbody tr:nth-of-type(even) { background: #F0F0F0; }
#strategy-table tbody tr:nth-of-type(even) th { background: #E1E1E1; }

@media screen and (max-width: 1335px) {
	#at-glance > div { margin-bottom: 34px; Width: 48%; }
	
	#what-weve-heard h4 { font-size: 1.1em; gap: 6px; padding: 10px 14px; }
	#what-weve-heard h4 img { height: 44px; }

	.table-var { font-size: .9em; }
}
@media screen and (max-width: 1200px) {
	#what-weve-heard > div { width: 48%; }

	#train-examples h5 { font-size: 1em; padding: 12px 5%; }
	#train-examples { font-size: .9em; }
	#train-examples p { padding: 0 8%; }
	#train-examples a { font-size: .9em; margin: 0 8% 24px; padding: 5px 12px; }

	#ol-comment-map { height: 480px; }
}
@media screen and (max-width: 992px) {
	#at-glance h3 { height: 52px; }
}
@media screen and (max-width: 825px) {
	#at-glance > div { margin-bottom: 14px; Width: 100%; }
	#at-glance h3 { height: auto; }
	
	#what-weve-heard > div { margin-bottom: 22px; }
	#what-weve-heard h4 { font-size: 1em; gap: 6px; padding: 7px 12px; }
	#what-weve-heard h4 img { height: 32px; }
	#what-weve-heard ul { padding: 10px 38px 4px; }

	#train-examples h5 { font-size: 1.1em; padding: 16px 5%; }
	#train-examples > div { margin-bottom: 18px; padding-bottom: 52px; width: 100%; }
	#train-examples p { padding: 8px 5%; }
	#train-examples > div img { height: 140px; object-fit: cover; object-position: center; }
	#train-examples a { font-size: .9em; margin: 0 5% 18px; padding: 5px 12px; }

	#ridership-table { font-size: .8em; }
	#ridership-table th,
	#ridership-table td { line-height: 1.2em; padding: 6px 2px; }
	#additional-ridership .row .row { --bs-gutter-x: 0; gap: 2%; padding: 4px 0 25px; }
	#additional-ridership .row .row > div { width: 100%; }
}

@media screen and (max-width: 550px) {
	#what-weve-heard > div { margin-bottom: 22px; width: 100%; }

	#by-numbers > div { flex-wrap: wrap; }
	#by-numbers > div h4 { width: 100%; }
	#modeling-tools div { border-bottom: 0; padding: 0; }
	#modeling-tools div li { border-bottom: 1px solid #A3D3E6; min-height: 70px; padding-top: 8px; padding-left: 54px; padding-bottom: 12px; width: 100%; }
	#modeling-tools div img { height: 38px; }
}

@media screen and (max-width: 380px) {
	.global-cta-container .cta-button { display: none; }
}

/* Tabs */
.hdr-tabs { box-shadow: 3px 6px 12px -6px #666; margin: 34px 0; }
.hdr-tabs .hdr-tabtitle { font-size: 1.6em; margin-bottom: 16px; }
.hdr-tabs .hdr-tablist { display: none; }
.hdr-tabs.has-js .hdr-tablist { display: flex; }
.hdr-tabs .hdr-tablist { flex-wrap: wrap; justify-content: space-between; list-style-type: none; }
.hdr-tabs .hdr-tab { background: #ddd; border: 0; border-radius: 9px 9px 0 0; color: #333; font-weight: 700; line-height: 1.1em;  margin: 0; padding: 16px 22px; width: 50%; z-index: 1; }
.hdr-tabs .hdr-tab:hover { background-color: #bbb; }
.hdr-tabs .hdr-tab[aria-selected="true"] { background-color: #ED9209; }
.hdr-tabs .hdr-tabpanel { background:#F9F9F9; border-radius: 4px; clear: both; margin-bottom: 12px; padding: 44px 4%; }
.hdr-tabs.has-js .hdr-tabpanel { display: none; margin-bottom: 0; }
.hdr-tabs.has-js .hdr-tabpanel img { width: 100%; }
.hdr-tabs.has-js .hdr-tabpanel[aria-hidden="false"] { display: block; }

@media screen and (max-width: 1200px) {
	.hdr-tabs .hdr-tabpanel { padding: 28px 4%; }
}
@media screen and (max-width: 900px) {
	.hdr-tabs .hdr-tab { font-size: .85em; padding: 8px 14px;  }
	.hdr-tabs .hdr-tabpanel { overflow: auto; }
	.hdr-tabs.has-js .hdr-tabpanel img { max-width: 8000%; width: 900px; }
}

/* Image Slideshow */
.hdr-slideshow { margin-bottom: 34px; position: relative; text-align: center; width: 100%; }
.has-js .hdr-slideshow > div { position: relative; }
.hdr-slideshow button { background: transparent; }
.hdr-slideshow button:hover { background: transparent; }
.hdr-slideshow button span { left: -9999px; position: absolute; }
.hdr-slideshow:before { background: #DCF0EF; bottom: 26px; content: ""; height: 12px; left: 50%; position: absolute; transform: translate(-50%); width: 21%; }

.hdr-move { display: none; }
.has-js .hdr-move { border: 0; border-radius: 0 6px 6px 0; bottom: 0; color: #fff; display: inline-block; height: 50px; left: 0; padding: 0 24px; position: relative; transition: .4s; z-index: 1;  }
.hdr-move:after { border: 8px solid transparent; border-width: 18px 30px; border-right-color: #255581; content: ""; left: 50%; position: absolute; transform: translateX(-75%) translateY(-50%); }
.hdr-prev:hover { left: -3px; }
.hdr-move.hdr-next { border-radius: 6px 0 0 6px; margin-left: 24%; left: auto; right: 0; }
.hdr-move.hdr-next:hover { right: -3px; }
.hdr-move.hdr-next:after { border-left-color: #255581; border-right-color: transparent; transform: translateX(-25%) translateY(-50%); }

.hdr-slides { list-style: none; padding: 0; position: relative; }
.hdr-slides li { display: inline-block; margin-right: 3%; position: relative; width: 30%; }
.hdr-slides li div { position: relative; width: 31.33333%; }
.has-js .hdr-slides > li { display: flex; flex-wrap: wrap; gap: 3%; left: -9999px; margin: 0; opacity: 0; position: absolute; transition: opacity 0s; width: 100%; }
.hdr-slides > li.hdr-active { opacity: 1; position: static; top: 0; transition: opacity .25s; }
.hdr-slides > li img { width: 100%; }
.hdr-caption { background: #255581; color: #fff; font-size: 1em; font-style: italic; margin: 0; padding: 10px 16px; width: 100%; z-index: 1; }

.hdr-dotmenu { left: -9999px; list-style: none; line-height: 1em; margin: 0; padding: 18px 0 0; position: absolute; text-align: center; width: 100%; }
.hdr-dotmenu li { display: inline-block; margin: 0; padding: 0 4px; }
.hdr-dotmenu li button { border-radius: 50%; height: 20px; margin: 0;  padding: 0; width: 20px; }
.hdr-dotmenu li.hdr-active button { background: #f66; }

@media screen and (max-width: 992px) {
    .hdr-slides li { width: 100%; }
    .hdr-move { height: 38px; padding: 0 16px; }
	.hdr-slideshow:before { bottom: 26px; height: 8px; }
    .hdr-move:after { border-width: 12px 18px; }
    .hdr-caption { font-size: .85em; }
}

@media screen and (max-width: 556px) {
	.hdr-slides li div { margin-bottom: 8px; width: 46%; }
}

/* Accordions */
.hdr-accordion-set { margin-bottom: 20px; }
.hdr-accordion h3 { font-size: 1.4em; margin: 0; }
.hdr-accordion button { background: #255581; color: #fff; font-size: .9em; text-transform: uppercase; transition: background .2s; }
.hdr-accordion button:hover { background: #1a4369; color: #fff; }
.hdr-accordion-header { cursor: pointer; margin: 18px 0 0; padding: 10px 48px 10px 14px; position: relative; text-align: left; width: 100%; }
.hdr-accordion-set.has-js .hdr-accordion-header:after { border: 2px solid #fff; border-width: 0 2px 2px 0; content: ""; height: 12px; position: absolute; right: 15px; top: 14px; transform: rotate(45deg); transition: .8s; width: 12px; }
.hdr-accordion-set.has-js .opened .hdr-accordion-header:after { top: 20px; transform: rotate(225deg); }
.hdr-accordion > div { padding: 14px 2%; }
.hdr-accordion > div img { width: 100%; } 

#station-concepts .hdr-accordion { margin: 0 0 18px; }
#station-concepts .hdr-accordion button { margin: 0; }
#station-concepts .hdr-accordion h4 { margin: 0; }
#station-concepts .hdr-accordion h5 { font-size: 1em; }
#station-concepts .hdr-accordion img { width: 100%; }
#station-concepts .hdr-accordion > div { background: #EDF6FA; font-size: .9em; padding-top: 0; }
#station-concepts .hdr-accordion div[role="region"] { padding: 0; }
#station-concepts .hdr-accordion div[role="region"] > .row > div:first-of-type { padding: 18px 20px 0 20px; }
#station-concepts .hdr-accordion div[role="region"] > .row > div:last-of-type { padding: 0 }
#station-concepts .row { --bs-gutter-x: 0; --bs-gutter-y: 0; margin: 0; padding: 0; }
#station-concepts .row .row div { padding: 0; }

#engagement-opps { padding-left: 90px; }
#engagement-opps .hdr-accordion button { margin-top: 0; }
#engagement-opps .hdr-accordion { margin-bottom: 26px; }
#engagement-opps .hdr-accordion h4 { margin-bottom: 0; }
#engagement-opps .hdr-accordion > div { background: #EDF6FA; padding: 24px 26px 10px; }
#engagement-opps .hdr-accordion h5 { margin-bottom: 18px;  }
#engagement-opps .hdr-accordion h6 { color: #255581; font-size: 1em; font-weight: 700; }
#engagement-opps .hdr-accordion a { font-weight: 400; word-wrap: break-word; }
#engagement-opps .hdr-accordion ul { padding-left: 12px;}
#engagement-opps .hdr-accordion li { display: block; margin: 0; padding-left: 22px; position: relative; }
#engagement-opps .hdr-accordion li:before { background: #000; border-radius: 50%; content: ""; height: 6px; left: 0; position: absolute; top: 11px; width: 6px; }
#engagement-opps .hdr-accordion hr { border-color: #749028; margin: 12px 0; }

#map-area { border: 2px solid #aaa; height: 700px; margin: 28px 0; overflow: hidden; position: relative; width: 100%; }

#map { height: 100%; width: 100%; }

#corner-box { position: absolute; top: 0; z-index: 2; }
#instruction { background: #fff; border: 0; border-width: 0 1px 1px 0; font-size: .85em; height: 0; line-height: 1.3em; opacity: 0; padding: 0; position: relative; transition: .2s, opacity .1s; width: 360px; }
.echolocating #instruction { border: 1px solid #000; height: auto; opacity: 1; padding: 10px 14px; transition: height .3s, padding .3s, opacity .2s ease-out .2s; }

#search-address { display: none; margin-top: 8px; }
#address-search { height: auto; padding: 2px 8px 1px; width: 94%; }

#add-comment { background: #255581; border: 0; color: #fff; cursor: pointer; font-size: 1em; font-weight: 700; margin: 0; padding: 44px 14px 8px; position: relative; transition: padding .2s; }
#add-comment:before { background: #fff; content: ""; height: 24px; left: 50%; position: absolute; top: 11px; transform: translateX(-50%); transition: .3s; width: 4px; }
#add-comment:after { background: #fff; content: ""; height: 4px; left: 50%; position: absolute; top: 21px; transform: translateX(-50%); transition: .3s; width: 24px; }
#add-comment:hover { padding-top: 58px; }
#add-comment:hover:before { height: 28px; top: 16px; width: 6px; }
#add-comment:hover:after { height: 6px; top: 27px; width: 28px; }

.echolocating #add-comment:before { transform: rotate(35deg); }
.echolocating #add-comment:after { margin-left: -13px; margin-top: 4px; transform: rotate(65deg); width: 14px; }

.commenting #add-comment { background: #7a0f33; color: #fff; }
.commenting #add-comment:before { background: #fff; transform: translateX(-50%) rotate(45deg); }
.commenting #add-comment:after { background: #fff; transform: translateX(-50%) rotate(45deg); }

#form-area { background: #000; background: rgba(0,0,0,.4); height: 100%; position: absolute; right: -100%; top: 0; transition: right .8s; width: 100%; }
#form-area form { background: #fff; display: block; height: 100%; margin-left: 40%; overflow: auto; padding: 16px 32px 44px; width: 60%; }
.commenting #form-area { right: 0; }
#form-area h4 { font-size: 1.2em; font-weight: 700; margin-top: 16px; text-transform: uppercase; }

#map-form > div { padding-bottom: 28px; }
#map-form > div > label { display: block; font-weight: 600; }
#map-form > div div { display: inline-block; margin-right: 28px; }
#map-form > div div label { cursor: pointer; font-weight: 400; margin-left: 4px; }
#map-form select { margin: 4px 0 2px; padding: 6px 4px; width: 100%; }
#map-form input[type="text"] { margin-top: 3px; padding: 2px 6px; width: 100%;}
#map-form textarea { height: 110px; margin-top: 6px; padding: 4px 8px; width: 100%; }
#map-form input[type="submit"] { background: #FFC424; border: 0; border-radius: 8px; color: #1C2B5E; font-size: 1.1em; font-weight: 700; padding: 7px 18px; transition: background .2s; }
#map-form input[type="submit"]:hover { background: #d39e0d; }
#map-form .error-msg { color: #a00; display: block; font-weight: 700; font-style: italic; margin-bottom: 8px; }

#map-form > div div.other-explanation { display: none; margin: 0; width: 100%; }
.other-explanation label { left: -9999px; position: absolute; }
#map-form .other-explanation textarea { height: 80px; }

#map-thanks { background: #fff; border-radius: 8px; box-shadow: 0 4px 8px -2px #333; left: 50%; line-height: 1.5em; padding: 20px 30px; position: absolute; text-align: center; top: -34%; transform: translateX(-50%); transition: top .6s; width: 400px; }
.thanks #map-thanks { top: 34%; }

@media screen and (max-width: 992px) {
    #map-area { height: 500px; }
    #instruction { font-size: .75em; width: 250px; }
    #map-thanks { font-size: .9em; padding: 8px 14px; width: 80%; }
    #address-search { font-size: .85em; }
    .thanks #map-thanks { top: 210px; }
    #map-form { font-size: .9em; }
    #map-form select { font-size: .9em; }
    #map-form input[type="submit"] { font-size: .9em; }
}

@media screen and (max-width: 570px) {
    #comment-map { border: 0; }
    #corner-box { position: relative; }
    #instruction { width: 100%; }
    #search-address { top: 208px; }
    #map-area { border: 0; height: auto; }
    #map { border: 1px solid #000; height: 420px; }
    #form-area { border: 1px solid #000; padding-top: 74px; }
    #form-area form { height: 100%; margin: 0; padding: 4px 20px 28px; width: 100%; }
    #form-area label { line-height: 1.3em; }

	#engagement-opps { padding-left: 0; }
}

.jotform-style { background: #F3F3FE; padding: 80px 0; }
.jotform-style p { background: #fff; border-radius: 8px; box-shadow: 0 1px 12px 0 #dbdbe4; color: #0A1551; font-size: 1.8em; font-weight: 700; line-height: 1.3em; margin: 0 auto; padding: 44px 34px; text-align: center; width: 86%; }
.jotform-style img { display: block; margin: 0 auto 8px; width: 96px; }

@media screen and (max-width: 1320px) {
	.jotform-style { margin-bottom: 32px; padding: 38px 0; }
	.jotform-style p { font-size: 1.4em; }
}