﻿/* CONTENTS

 - Global Elements
 - Page Sections
 - Extra Text Styles
 - Mobile vs Desktop classes
 - Image and Video classes
 - Flex Grids and Columns
 - Flexbox Slider
 - Highlights and Content Boxes
 - Buttons & Links
 - Header
 - Hero Image
 - Left Nav
 - Body Content
 - Footer
 - 3rd Party Integrations
 
 There are variables for brand colors and other elements in /css/variables.css. Insert them in code using var(--NAME) .
 
 */
 
 /* -----------------------------
    GLOBAL ELEMENTS
  ------------------------------- */

.old-ie * {
   font-weight: normal !important;
   font-style:  normal !important;
}

body {
	padding: 0;
	margin: 0;
	background: #ebeaea;
	color: var(--nightmarsh);
	font-family: 'Gotham SSm 4r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 400; 
	font-style: normal;
	font-size: 0.9em;
}

p {
	margin: 0.5em 0 1.25em 0;
	padding: 0;
	line-height: 1.8em;
}

strong {
	font-weight: 700;
	font-style: normal;
}

mark {
	background: var(--snowday);
	color: var(--gordon);
}

a {
	color: #00aeef;
	text-decoration: none;
}
a:hover {
	color: var(--red);
}
.body-container p a:not(.button-outline, .button-box, .button-inline, .pill-button) {
	color: var(--cyan);
	text-decoration: none;
	border-bottom: 2px dotted var(--cyan);
}
.body-container p a:not(.button-outline, .button-box, .pill-button):hover {
	color: var(--red);
	border-bottom: 2px dotted var(--red);
}

a img {border: none;text-decoration:none;}
a img:hover {opacity: 0.8;}

h1 {
	font-size: 1.9em;
	line-height: 1.2em;
	margin: 0 0 1em 0;
	padding: 0px;
	font-family: 'Gotham SSm 8r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 800;
	font-style: normal;
	color: #014983;
}
h1.amster {
	font-size: 2.2em;
	font-family: "amster", serif;
	font-weight: 900;
	font-style: normal;
}

h2 {
	font-family: 'Gotham SSm 8r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 800;
	font-size: 1.4em;
	line-height: 1.2em;
	margin: 0.5em 0 0.35em 0;
	padding: 0px;
}

h2.amster {
	font-size: 1.65em;
	font-family: "amster", serif;
	font-weight: 900;
	font-style: normal;
}

.thin-heading {font-weight: normal;color: #014983;}

h3 {
	font-family: 'Gotham SSm 7r', 'Gotham SSm A', 'Gotham SSm B', sans-serif;
	font-weight: 700;
	font-size: 1.3em;
	margin: 1.5em 0 0.5em 0;
	padding: 0px;
}
h3.amster {
	font-size: 1.5em;
	font-family: "amster", serif;
	font-weight: 700;
	font-style: normal;
}

h4 {
	font-family: 'Gotham SSm 7r', 'Gotham SSm A', 'Gotham SSm B', sans-serif;
	font-weight: 700;
	font-size: 1.1em;
	margin: 1.5em 0 0.5em 0;
	padding: 0px;
	text-transform: uppercase;
	letter-spacing: 1px;
	}

ul {
	list-style-type: disc;
	padding-left: 60px;
	margin: 1em 0 1.2em 0;
}

ol {
	list-style-type: decimal;
	padding-left: 60px;
	margin: 1em 0 1em 0;
}

/* -----------------------------
   SECTION WRAPPERS
 ------------------------------- */

.gray-section {
	background: #ebeaea;
	margin: 0;
	padding: 48px 0 36px 0;
}
.darkgray-section {
	background: var(--nightmarsh);
	color: white;
	margin: 0;
	padding: 40px 0 36px 0;
}
.cyan-section {
	background: var(--cyan);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.lightcyan-section {
	background: var(--snowday);
	color: #31342b;
	margin: 0;
	padding: 48px 0 36px 0;
}
.navy-section {
	background: var(--blue);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.green-section {
	background: var(--oldgreen);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.darkgreen-section {
	background: var(--lavidagreen);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.red-section {
	background: var(--christmasred);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.orange-section {
	background: #DE571F;
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.yellow-section {
	background: var(--gold);
	color: white;
	margin: 0;
	padding: 48px 0 36px 0;
}
.content-container {
	max-width: 1260px;
	margin: 0 auto 0 auto;
	padding: 0 5% 0 5%;
	overflow: auto;
	overflow-x: hidden;
}

.white-section {
	background: white;
	color: var(--blue);
	margin: 0;
	padding: 48px 0 36px 0;
}

.navy-cyan-gradient-section {
	background: var(--gradient-blue-cyan); 
	color: white;
	margin: 0; 
	padding: 48px 0 36px 0;
}

.seaspray-gradient-section {
	background: var(--gradient-seaspray); 
	color: white;
	margin: 0; 
	padding: 48px 0 36px 0;
}

.lightcyan-cyan-gradient-section {
	background: linear-gradient(var(--snowday), var(--cyan)); 
	color: var(--blue);
	margin: 0; 
	padding: 48px 0 36px 0;
}

@media screen and (max-width:500px) {
	.gray-section {
		padding-top: 30px;
	}
}

/* -----------------------------
   Additional Text Styles
 ------------------------------- */

.gradient-text-white-cyan-stat {

font-size: 4em;
font-weight: 900;
color: var(--seaspray);
background-image: linear-gradient(90deg,white 10%, var(--cyan) 110%);
background-size: 100%;
-webkit-background-clip: text;
-moz-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
-moz-text-fill-color: transparent;
filter: drop-shadow(5px 5px var(--nightmarsh));
}

.gradient-text-cyan-seaspray {
	 color: var(--cyan);
	 background-color: white;
	 background-image: linear-gradient(90deg,var(--cyan) 10%, var(--seaspray) 110%);
	 background-size: 100%;
	 -webkit-background-clip: text;
	 -moz-background-clip: text;
	 background-clip: text;
	 -webkit-text-fill-color: transparent;
	 -moz-text-fill-color: transparent;
 }
 .gradient-text-blue-seaspray {
	 color: var(--cyan);
	 background-color: white;
	 background-image: linear-gradient(90deg,var(--blue) 10%, var(--cyan) 70%, var(--seaspray) 110%);
	 background-size: 100%;
	 -webkit-background-clip: text;
	 -moz-background-clip: text;
	 background-clip: text;
	 -webkit-text-fill-color: transparent;
	 -moz-text-fill-color: transparent;
 }
 .gradient-text-nightmarsh-seaspray {
	 color: var(--cyan);
	 background-color: white;
	 background-image: linear-gradient(90deg,var(--nightmarsh) 0%, var(--seaspray) 100%);
	 background-size: 100%;
	 -webkit-background-clip: text;
	 -moz-background-clip: text;
	 background-clip: text;
	 -webkit-text-fill-color: transparent;
	 -moz-text-fill-color: transparent;
 }
 .gradient-text-blue-cyan {
	 color: var(--cyan);
	 background-color: white;
	 background-image: linear-gradient(90deg,var(--blue) 0%, var(--cyan) 100%);
	 background-size: 100%;
	 -webkit-background-clip: text;
	 -moz-background-clip: text;
	 background-clip: text;
	 -webkit-text-fill-color: transparent;
	 -moz-text-fill-color: transparent;
 }
 
 .heading-line {
	 width: 100%;
	 background: url('/images/layout/headingline.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 
 .heading-text {
	 font-weight: bold;
	 font-size: 1.3em;
	 letter-spacing: 2px;
	 color: #616161;
	 display: inline-block;
	 margin: 0 auto;
	 padding: 2px 20px 0 20px;
	 background: #ebeaea;
 }
 .heading-line-cyan {
	 width: 100%;
	 background: url('/images/layout/headingline-cyan.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 .heading-line-cyan .heading-text {color: var(--cyan);}
 .heading-line-green {
	 width: 100%;
	 background: url('/images/layout/headingline-green.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 .heading-line-green .heading-text {color: var(--oldgreen);}
 .heading-line-navy {
	 width: 100%;
	 background: url('/images/layout/headingline-navy.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 .heading-line-navy .heading-text {color: var(--blue);}
 .heading-line-red {
	 width: 100%;
	 background: url('/images/layout/headingline-red.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 .heading-line-red .heading-text {color: var(--christmasred);}
 .heading-line-orange {
	 width: 100%;
	 background: url('/images/layout/headingline-orange.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 
 .heading-line-yellow {
	 width: 100%;
	 background: url('/images/layout/headingline-yellow.png') left center repeat-x;
	 margin: 24px 0 20px 0;
	 clear: both;
	 text-align: center;
 }
 
 .heading-line-orange .heading-text {color: #de571f;}
 .heading-line-yellow .heading-text {color: var(--gold);}

/* -----------------------------
	Mobile vs Desktop classes
  ------------------------------- */

@media screen and (max-width:650px) {
	.no-mobile {
		display: none !important;
	}
}
@media screen and (min-width:651px) {
	.mobile-only {
		display: none !important;
	}
	/* This causes a section to breakout on mobile only, meaning you can avoid the layers of inset */
	.mobile-breakout {
		margin: 0 calc(50% - 50vw);
		display: block;
	}
}

/* -----------------------------
  Image and Video Classes
 ------------------------------- */
.img-kgp{
	width:225px;
	max-width:80%;
}



.img-left {
	float: left;
	margin-right: 25px;
}
.img-right {
	float: right;
	margin-left: 25px;
}

.img-left-spaced {
	float: left;
	margin-right: 5%;
}
.img-right-spaced {
	float: right;
	margin-left: 5%;
}

@media screen and (max-width:650px) {
	.img-left, .img-right, .img-left-spaced, .img-right-spaced {
		float: none;
		margin: 0;
		width: 100% !important;
		text-align: center;
	}
}

/*To make iframe embeds responsive - wrap embed code in this div */
.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.embed-container-vertical {
	position: relative;
	padding-bottom: 177.77%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

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


/* -----------------------------
   FLEX GRIDS AND COLUMNS aka TILE GRIDS
 ------------------------------- */
 
.tilegridwrapper, .tilegridwrapper-wide {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
	padding: 18px 0 0 0;
}

.tilegridwrapper::after {
  content: '';
  width: 30%; 
}

.tilegrid-2col, .tilegrid-2colwide {
	width: 47.5%;
	margin-bottom: 26px;
	box-sizing: border-box;
}
.tilegrid-3col, .tilegrid-3colwide {
	width: 30%;
	margin-bottom: 26px;
	box-sizing: border-box;
}

.tilegrid-2-3col {
	width: 65%;
	margin-bottom: 26px;
	box-sizing: border-box;
}

.tilegrid-2-4col {
	width: 75%;
	margin-bottom: 26px;
	box-sizing: border-box;
}

.tilegrid-4col {
	width: 21.25%;
	margin-bottom: 26px;
	box-sizing: border-box;
}

.tilegrid-4col-bigger {
	width: 23.25%;
	margin-bottom: 26px;
	box-sizing: border-box;
}

.tilegrid-2col img, .tilegrid-3col img, .tilegrid-4col img {
	max-width: 100%;
}

@media screen and (max-width:650px) {
	.tilegrid-3col, .tilegrid-3colwide, .tilegrid-2col, .tilegrid2colwide, .tilegrid-4col, .tilegrid-2-3col, .tilegrid-4col-bigger {
		width: 100%;
	}
}

/* -----------------------------
   Flexbox Slider
 ------------------------------- */

.slides {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
}
.slides > div {
	display: flex;
	flex-shrink: 0;
	width: 100%;
	scroll-snap-align: start;
	scroll-behavior: smooth;
	justify-content: center;
	align-items: center;

}

/* -----------------------------
   Highlights and Content Boxes
 ------------------------------- */

.nightmarsh-cyan-gradient-box{
	
background: linear-gradient(120deg,var(--nightmarsh) 5%,var(--cyan) 110%);
background-size: 300px,300px,100%;
background-position: left bottom,right top,center center;
background-repeat: no-repeat;
color: #fff;
text-align: left;
padding: 48px 0 36px;
border-radius: var(--rounded);
}

.yellow-highlight {
	font-size: 1.1em;
padding: 0 30px;
border-left: 3px solid #FDB913;
border-radius: 0 6px 6px 0;
margin-bottom: 1.25em;
overflow: auto;
text-align: left;
}

.bluespray-box {
	color: #fff;
	background: var(--gradient-blue-cyan);
	padding:15px 20px;
	border-radius: var(--rounded);
	
}

.snowday-box {
	color: var(--nightmarsh);
	background: var(--snowday);
	padding: 15px 20px;
	border-radius: var(--rounded);
}

.highlight, .outlinebox {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--cyan);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-top {
	background: white;
	border-top: 2px solid var(--cyan);
	padding: 20px 36px 20px 36px;
	text-align: center;
	border-radius: 0 0 6px 6px;
}

.highlight-darkgreen {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--lavidagreen);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-green {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--nightmarsh);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-seaspray {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 5px solid var(--seaspray);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-noback {
	padding: 0px 30px 0px 30px;
	border-left: 3px solid var(--cyan);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-navy, .highlight-blue {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--blue);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-orange {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid #DE571F;
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-red {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--christmasred);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-yellow, .highlight-gold {
	padding: 22px 30px 22px 30px;
	background: white;
	border-left: 3px solid var(--gold);
	border-radius: 0 6px 6px 0;
	margin-bottom: 1.25em;
	overflow: auto;
}

.highlight-centered-cyan {
	background: white;
	border-top: 2px solid var(--cyan);
	padding: 20px 36px 20px 36px;
	text-align: center;
	border-radius: 0 0 6px 6px;
}

@media screen and (max-width:650px) {
	.highlight, .outlinebox, .highlight-darkgreen, .highlight-green, .highlight-navy, .highligh-blue, .highlight-orange, .highlight-red, .highlight-yellow, .highlight-gold {
		padding:  22px 18px;
	}
}

.blue-gradient-border-box {
	padding: 20px;
	box-shadow:0 0 15px rgba(0,0,0,.25);
	border-radius:20px;
	background: linear-gradient(white, white) padding-box, linear-gradient(140deg, var(--cyan), var(--snowday), var(--blue)) border-box;
	border: 4px solid transparent;
}

.gradient-border-box {
	padding:20px;
	box-shadow:0 0 15px rgba(0,0,0,.25);
	border-radius:20px;
	background: linear-gradient(white, white) padding-box, linear-gradient(120deg, var(--cyan), var(--seaspray)) border-box;
    border: 4px solid transparent;
}


.cyan-border-box {
	padding:20px;
	box-shadow:0 0 15px rgba(0,0,0,.25);
	border-radius:20px;
	background: linear-gradient(white, white) padding-box, var(--cyan) border-box;
    border: 4px solid transparent;
}

.border-box-inner {
	padding: 0px;
}
.gradient-border-box h2:first-of-type, .gradient-border-box h3:first-of-type {
	margin-top: 0;
}

/* Colored Boxes */

.cyanbox {
	background: var(--cyan);
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.lightcyanbox {
	background: var(--snowday);
	padding: 12px 18px;
	color: #31342B;
	margin-bottom: 1.25em;
}

.darkgreenbox {
	background: var(--lavidagreen);
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.graybox {
	background: #31342b;
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.greenbox {
	background: var(--nightmarsh);
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.lightgraybox {
	background: #cccccc;
	padding: 12px 18px;
	margin-bottom: 1.25em;
}

.navybox, .bluebox {
	background: var(--blue);
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.nauticalredbox {
	background: var(--red);
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.orangebox {
	background: #de571f;
	padding: 12px 18px;
	color: white;
	margin-bottom: 1.25em;
}

.redbox {
	background: var(--christmasred);
	color: white;
	padding: 12px 18px;
	margin-bottom: 1.25em;
}

.yellowbox {
	background: var(--gold);
	padding: 12px 18px;
	margin-bottom: 1.25em;
}

.whitebox {
	background: white;
	padding: 12px 18px;
	margin-bottom: 1.25em;
}

.whitebox-shadow {
    background: white;
	padding: 12px 18px;
	margin-bottom: 1.25em;
    border-radius:10px;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.2);
}

.whitebox-rounded {
	background: white;
	padding: 12px 18px;
	margin-bottom: 1.25em;
	border-radius:10px;
}

.navy-contact-box {
    background: linear-gradient(var(--blue), #002f59e6);
    border-radius: 10px;
    text-align: center;
	padding: 25px 50px;
	color: white;
	margin-bottom: 1.25em;
    margin-top: 100px;
}

.navy-contact-box img {
    background-repeat: no-repeat;
    background-size: contain;
    display:block;
    height:75px;
    margin-left:auto;
    margin-right:auto;
    margin-top:-50px;
}

.cyanbox a, .orangebox a, .redbox a, .greenbox a, .darkgreenbox a, .darkgraybox a {
	color: white;
}
.cyanbox a:hover, .orangebox a:hover, .redbox a:hover, .greenbox a:hover, .darkgreenbox a:hover, .darkgraybox a:hover {
	color: black;
}

/* Photo Tiles, used in conjunction with tile grids */

.photo-tile {
	box-shadow: 0 0 15px rgba(0, 0, 0, .2);
	border-radius: var(--rounded);
	padding:0;
	background-color: white;
}

.photo-tile-top {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	box-sizing: border-box;
	height: 200px;
	border-radius: 10px 10px 0 0;
	padding: 0 14px;
}

.photo-tile-top-tinted {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	box-sizing: border-box;
	height: 200px;
	border-radius: var(--rounded) var(--rounded) 0 0;
	padding: 0 14px;
	background-color: rgba(0, 0, 0, .3);
	background-blend-mode: soft-light;
}

.photo-tile-top-tinted h2 {
	position: relative;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
	color: #fff;
	font-size: 1.7em;
	text-align: center;
	text-shadow: 0 0 12px #000;
	margin:0
}

.photo-tile-top-tinted h2:hover {
	color:var(--cyan);
}

.photo-tile p {
	font-weight: 700;
	text-align: center;
	padding: 20px 10px !important;
	margin: 0;
	/* background: none !important; */
}

.photo-cube-grid {
	display: grid;
  	gap: 3%;
	justify-content: center;
	margin: 34px 0;
}
.cube-4 {grid-template-columns: repeat(4, minmax(auto, 230px));}
.cube-3 {grid-template-columns: repeat(3, minmax(auto, 230px));}

.photo-cube {
	aspect-ratio: 1/ 1;
  	display: flex;
  	align-items: center;
  	padding: 16px;
	margin-bottom: 5px;
  	color: #fff;
	background: linear-gradient(to bottom, rgba(1, 73, 131, 0)45%, rgba(1, 73, 131, 1));
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	border-radius: var(--rounded);
	hyphens: auto;
	overflow: hidden;
}
.photo-cube h3 {
	width: 100%;
	color: #fff;
	font-size: 20px;
	text-align: left;
	align-self: flex-end;
	hyphens: auto;
	margin:0;
}
.photo-cube:hover {
	opacity: .9;
}
.photo-cube h3:hover {
	color:var(--cyan);
}

@media screen and (max-width:950px) {
	.photo-cube h3 {
		font-size: 18px;
	}
}

@media screen and (max-width:650px) {
	.cube-4, .cube-3 {
		grid-template-columns: repeat(2, 1fr);
		margin: 34px 0;
	}
}

.spotlight {
	position: relative;
	margin-bottom: 20px;
}

.spotlight img {
	border: 14px solid white;
	border-radius: 50%;
	margin-right: 40px;
	float: left;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.spotlight-text {
	margin-left: 275px;
}

@media screen and (max-width:650px) {
	.spotlight {
		text-align: center;
	}
	.spotlight-text {
		margin-left: 0;
		text-align:center;
	}
	.spotlight img {
		position: static;
		float: none;
		top: auto;
		-webkit-transform: none;
		-ms-transform: translateY(-50%);
		transform: none;
		margin: 0;
		width: 70%;
	}
}

/* Accordion Expanding Sections. Used in conjunction with javascript */
/* In the HTML, add a box class such as whitebox to the element with the accordion-toggle to control its color */
.accordion-toggle {
	cursor: pointer; 
	text-align: center;
	color: var(--cyan);
	border-radius: var(--barely-rounded);
	box-shadow: var(--boxshadow);
}

.accordion-content {display: none;}
.accordion-content.default {display: block;}

.accordion-content p:first-of-type {
	margin-top: 0;
} 

.collapsed {
	background-image: url(/images/expand-icon.svg);
	background-position: 15px 16px;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	padding-left:40px;
}
.expanded {
	background-image: url(/images/collapse-icon.svg);
	background-position: 15px 16px;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	padding-left:40px;
}

.snowday-accordion-toggle {
	cursor: pointer; 
	text-align:center;
	color:var(--blue);
	background-color: var(--snowday);
	box-shadow: var(--boxshadow);
}
.snowday-accordion-content {
	display: none;
	background-color:#F1FAFF;
	padding:20px;
	margin-top: -20px;
}
.snowday-accordion-content.default {display: block;}
.snowday-accordion-content p:first-of-type {
	margin-top: 0;
} 
.snowday-collapsed {
	background-image: url(/images/expand-icon.svg);
	background-position: 15px 16px;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	padding-left:40px;
}
.snowday-expanded {
	background-image: url(/images/collapse-icon.svg);
	background-position: 15px 16px;
	background-repeat: no-repeat;
	background-size: 16px 16px;
	padding-left:40px;
}

/*LISTS*/
/* Numbered Step Lists */

.numbered-steps {
	counter-reset: li;
	list-style-type: none;
	font-size: 14px;
	line-height: 18px;
	padding: 0;
  }
.numbered-steps > li {
	position: relative;
	padding: 0 0 28px 40px;
	margin-bottom: 28px;
	border-bottom: 2px dashed var(--blue);
  }
.numbered-steps > li:before {
	content: counter(li);
	counter-increment: li;
	height: 25px;
	width: 25px;
	color: var(--athleticblue);
	background: #00aeef;
	font-weight: 700;
	text-align: center;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 4px;
  }
  .numbered-steps > li p:last-of-type {
	margin-bottom: 0;
  }


.stepsList {
	list-style: none;
	margin: 0 0 18px 0;
	padding: 0;
}
.stepsList li {
	padding: 18px 0;
	border-bottom: 1px dashed black;
}
.stepsIcon {
	float: left;
	margin-right: 18px;
}
.stepsListText {
	margin-left: 40px;
	margin-top: 0;
}
.stepsListText p:first-of-type {
	margin-top: 0;
}
.stepsInnerlist {
	list-style-type: disc;
	-webkit-margin-before: 1em;
	-webkit-margin-after: 1em;
	-webkit-margin-start: 0px;
	-webkit-margin-end: 0px;
	-webkit-padding-start: 40px;
}
.stepsInnerlist li {
	border-bottom: none;
	padding: 0;
}

/* Dashed line lists */
.dashedline {
	margin: 0 12px;
	padding: 0;
	list-style-type: none;
	text-align: left;
}

.dashedline li {
	margin: 0;
	padding: 8px 0 10px 0;
	border-top: 1px dashed #cccccc;
	font-weight: bold;
}

.dashedline li:first-of-type {
	border-top: none;
}

/* Waved Line Dividers */
.waved-line-cyan hr {
	background: url(/images/layout/wavy-line-c.png) no-repeat center;
	background-size: contain;
	margin-top: 25px;
	margin-bottom: 25px;
	height: 50px;
	display: block;
	width: 100%;
	border:none !important; 
}

.wavy-hr-cyan {
	background: url(/images/layout/wavy-line-c.png) no-repeat center;
	background-size: contain;
	margin-top: 25px;
	margin-bottom: 25px;
	height: 30px;
	display: block;
	width: 100%;
	border:none !important; 
}
.wavy-hr-seaspray {
	background: url(/images/wavyline-gradient.svg) no-repeat center;
	background-size: contain;
	margin-top: 25px;
	margin-bottom: 25px;
	height: 30px;
	display: block;
	width: 100%;
	border:none !important; 
}

.wavy-hr-nightmarsh {
	background: url(/images/wavyline-nightmarsh-gradient.svg) no-repeat center;
	background-size: contain;
	margin-top: 25px;
	margin-bottom: 25px;
	height: 30px;
	display: block;
	width: 100%;
	border:none !important; 
}

.dashed-gradient-seaspray {
	background: url(/images/dashed-gradient.svg) no-repeat center;
	background-size: contain;
	margin-top: 25px;
	margin-bottom: 25px;
	height: 30px;
	display: block;
	width: 100%;
	border:none !important; 
}
.cyan-hr {
	border: none;
	border-bottom: 2px solid var(--cyan);
	margin: 25px 0;
}
.blue-hr {
	border: none;
	border-bottom: 2px solid var(--blue);
	margin: 25px 0;
}


@media screen and (max-width:900px) {
	.wavy-hr-cyan {
		background: url(/images/layout/wavy-line-c.png) no-repeat center;
		background-size: 1050px 14px;
		background-position: left center;
	}
	.wavy-hr-seaspray {
		background: url(/images/wavyline-gradient.svg) no-repeat;
		background-size: 800px 14px;
		background-position: right -20px center;
	}
	
	.wavy-hr-nightmarsh {
		background: url(/images/wavyline-nightmarsh-gradient.svg) no-repeat;
		background-size: 800px 14px;
		background-position: right -20px center;
	}
	
	.dashed-gradient-seaspray {
		background: url(/images/dashed-gradient.svg) no-repeat;
		background-size: 800px 14px;
		background-position: right -20px center;
	}
}

/* PRETTY TABLES */
.pretty-table	 {
	width: 100%;
	border: 3px solid #cccccc;
	padding: 0;
	margin: 10px 0 18px 0;
	border-spacing:0;
	background: white;
	border-collapse: collapse;
}
.pretty-table th, .pretty-table td {
	padding: 12px 14px;
	margin: 0;
	border: 1px solid #cccccc;
}
.pretty-table th {
	background: #f3fbfe;
}
.pretty-table p {
	margin: 0;
}

/* -----------------------------
   BUTTONS & LINKS
 ------------------------------- */

/* Outline boxes are inline and for single buttons, while the button-box works best in conjunction with Tile Grids. Combine either with color below */

.button-box {
	/* The flex properties center text and match height of btns */
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.05em;
	font-weight: bold;
	line-height: 1.4em;
	padding: 1.5em 15px;
	border: none !important;
	box-sizing: border-box;
	border-radius: var(--barely-rounded);
}

.button-inline {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin: 0 0 1em 0;
	padding: 1em 26px;
	border: none !important;
	border-radius: var(--barely-rounded);
}

.button-outline {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin: 0 0 1em 0;
	padding: 1em 26px;
	border: 3px solid white !important;
	border-radius: var(--barely-rounded);
}

.pill-button-big {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	font-size:1.2em;
	letter-spacing: 0.05em;
	margin: 0 0 1em 0;
	padding: 1em 26px;
	border-radius: 30px;
}

.pill-button, .pill-button-small {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin: 0 0 1em 0;
	padding: 0.75em 25px;
	border: none !important;
	border-radius: 50px;
}

.pill-button-arrow-cyan {
	color: white !important;
	background: url('/images/btn-arrow.svg'), linear-gradient(90deg, var(--cyan) 40%,var(--blue));
	background-repeat: no-repeat;
	background-position: center right 17px, center;
	background-size: 13px, cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border: none !important;
	border-radius: 30px;
}

.pill-button-arrow-blue {
	color: white !important;
	background: url('/images/home2023/btn-arrow.svg'), linear-gradient(90deg, var(--blue) 40%, var(--athleticblue));
	background-repeat: no-repeat;
	background-position: center right 17px, center;
	background-size: 13px, cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border: none !important;
	border-radius: 30px;
}

.pill-button-arrow-gold {
	color: white !important;
	background: url('/images/home2023/btn-arrow.svg'), linear-gradient(90deg, var(--gold) 40%, var(--athleticblue));
	background-repeat: no-repeat;
	background-position: center right 17px, center;
	background-size: 13px, cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border: none !important;
	border-radius: 30px;
}

.pill-button-arrow-nightmarsh-seaspray {
	color: white !important;
	background: url('/images/home2023/btn-arrow.svg'), linear-gradient(90deg, var(--nightmarsh) 40%, var(--seaspray));
	background-repeat: no-repeat;
	background-position: center right 17px, center;
	background-size: 13px, cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border: none !important;
	border-radius: 30px;
}

.pill-button-arrow-cyan:hover, .pill-button-arrow-blue:hover {
	color: white !important;
	background: url('/images/home2023/btn-arrow.svg'), linear-gradient(90deg, var(--gold) 50%, var(--athleticblue) 120%);
	background-repeat: no-repeat;
	background-position: center right 17px, center;
	background-size:14px, cover
}
.pill-button-arrow-gold:hover {
	color: var(--snowday) !important;
	background: url(/images/home2023/btn-arrow.svg), var(--nightmarsh);
	background-repeat: no-repeat;
	background-position: center right 17px;
	background-size:14px
}

.pill-button-arrow-nightmarsh-seaspray:hover {
	color: var(--snowday) !important;
	background: url(/images/home2023/btn-arrow.svg), var(--nightmarsh);
	background-repeat: no-repeat;
	background-position: center right 17px;
	background-size:14px
}
a.button-cta-cyan-seaspray {
	color: #fff !important;
	background: url('/images/btn-arrow.svg'),linear-gradient(90deg,var(--cyan) 40%,var(--seaspray));
	background-repeat: no-repeat;
	background-position: center right 17px,center;
	background-size: 13px,cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border-radius: 30px;
	border: none !important;
}
a.button-cta-cyan-seaspray:hover {
	color: #fff;
	background: url('/images/btn-arrow.svg'),linear-gradient(90deg,var(--gold) 40%,var(--red));
	background-repeat: no-repeat;
	background-position: center right 17px,center;
	background-size: 13px,cover;
	display: inline-block;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 2px;
	padding: 12px 58px 12px 22px;
	border-radius: 30px;
}

@media screen and (max-width:650px) {
	.button-outline {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
}

.button-cyan {color: white !important; background: var(--cyan);}
.button-cyan:hover {background: #00C2FF; color: var(--athleticblue) !important; text-decoration: underline;}

.button-navy, .button-blue { background: var(--blue) !important; color: white;}
.button-navy:hover, .button-blue:hover {background: #0159A0; text-decoration: underline; color: white;}

.button-snowday {color: var(--blue) !important; background: var(--gradient-snowday);}
.button-snowday:hover {background: var(--cyan); color: white !important; text-decoration: underline;}

.button-orange {background: #DE571F; color: white;}
.button-orange:hover {background: #E2794C; text-decoration: underline; color: white;}

.button-nightmarsh, .button-green {background: var(--nightmarsh);color: var(--seaspray) !important;}
.button-nightmarsh:hover, .button-green:hover {background: #01495b; text-decoration: underline; color: white;}

.button-darkgreen {background: var(--lavidagreen); color: white !important;}
.button-darkgreen:hover {background: #0a7a3d; text-decoration: underline; color: white;}

.button-red {background: var(--red); color: white !important;}
.button-red:hover {background: #FF746B; text-decoration: underline; color: white;}

.button-christmas {background: var(--christmasred); color: white !important;}
.button-christmas:hover {background: #d83c30; text-decoration: underline; color: white;}

.button-yellow, .button-gold {background: var(--gold); color: var(--nightmarsh) !important;}
.button-yellow:hover, .button-gold:hover {background: #fdc233; text-decoration: underline; color: white !important;}

.button-seaspray {background: var(--seaspray); color: var(--blue) !important;}
.button-seaspray:hover {background: #d0f6d8; text-decoration: underline; color: var(--blue);}

.button-gray {background: #D0D2D3; color: black;}

.button-447 {background: #31342b; color: white;}
.button-447:hover {background: #5A5D55; color: white; text-decoration: underline;}

.button-white {background: #FFFFFF; color: var(--blue) !important;}
.button-white:hover {background: var(--snowday); text-decoration: underline;color: var(--blue);}

/*Colored Links*/

.body-container p a.white-link {color: white;}.body-container p a.white-link:hover{color: var(--gold);}
.body-container p a.green-link {color: var(--nightmarsh);}
.body-container p a.navy-link, .blue-link {color: var(--blue);}
.body-container p a.darkgreen-link {color: var(--lavidagreen);}
.body-container p a.orange-link {color: #de571f;}.body-container p a.orange-link:hover {color: #00aeef;}
.body-container p a.red-link {color: var(--red);}.body-container p a.red-link:hover {color: #ffffff;}
.body-container p a.gold-link, .yellow-link {color:var(--gold);}.body-container p a.gold-link:hover, .yellow-link:hover {color: var(--red);}

.linkbar {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	background: var(--cyan);
	color: white;
	text-align: center;
}
.linkbar-navy, .linkbar-blue {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: var(--blue);
	color: white;
	text-align: center;
}
.linkbar-cyan {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: var(--cyan);
	color: white;
	text-align: center;
}
.linkbar-orange {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	background: #de571f;
	color: white;
	text-align: center;
}
.linkbar-white {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	background: white;
	color: var(--cyan);
	text-align: center;
}
.linkbar-red {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: var(--christmasred);
	color: white;
	text-align: center;
}
.linkbar-green {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: var(--oldgreen);
	color: white;
	text-align: center;
}
.linkbar-darkgreen {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: var(--lavidagreen);
	color: white;
	text-align: center;
}
.linkbar-gray {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: #31342b;
	color: white;
	text-align: center;
}

.linkbar-yellow {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	background: var(--gold);
	color: white;
	text-align: center;
}

.linkbar-lightgray {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	background: #ebeaea;
	color: white;
	text-align: center;
}

.linkbar-lightnavy {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 14px 8px;
	background: #5A89AF;
	color: white;
	text-align: center;
	border-radius: 10px;
}

.linkbar-nobackground {
	list-style: none;
	margin: 0 0 1.5em 0;
	padding: 10px 8px;
	color: white;
	text-align: center;
}

.linkbar li, .linkbar-navy li, .linkbar-blue li, .linkbar-cyan li, .linkbar-orange li, .linkbar-white li, .linkbar-red li, .linkbar-green li, .linkbar-darkgreen li, .linkbar-gray li, .linkbar-yellow li, .linkbar-lightnavy, .linkbar-nobackground li {
	display: inline;
	margin: 0 28px 0 0;
}
.linkbar li:last-of-type, .linkbar-navy li:last-of-type, .linkbar-blue li:last-of-type, .linkbar-cyan li:last-of-type, .linkbar-orange li:last-of-type, .linkbar-white li:last-of-type, .linkbar-red li:last-of-type, .linkbar-green li:last-of-type, .linkbar-darkgreen li:last-of-type, .linkbar-gray li:last-of-type, .linkbar-yellow li:last-of-type, .linkbar-lightnavy, .linkbar-nobackground li:last-of-type {
	margin-right: 0;
}
.linkbar a, .linkbar-navy a, .linkbar-blue a, .linkbar-cyan a, .linkbar-orange a, .linkbar-red a, .linkbar-green a, .linkbar-darkgreen a, .linkbar-gray a, .linkbar-yellow a, .linkbar-lightnavy, .linkbar-nobackground a {
	display: inline-block;
	padding: 8px 10px;
	border-radius: 4px;
	color: white;
	text-decoration: none;
}
.linkbar-white a {
	display: inline-block;
	padding: 8px 10px;
	border-radius: 4px;
	text-decoration: none;
}
.linkbar li a:hover, .linkbar-navy li a:hover, .linkbar-blue li a:hover, .linkbar-cyan li a:hover, .linkbar-orange li a:hover, .linkbar-red li a:hover, .linkbar-green li a:hover, .linkbar-darkgreen li a:hover, .linkbar-gray li a:hover, .linkbar-yellow li a:hover, .linkbar-lightnavy li a:hover, .linkbar-nobackground a:hover {
	background: rgba(255, 255, 255, .25);
}
.linkbar-white li a:hover {
	color: var(--blue);
	background: rgba(0, 174, 239, .15);
}

/* Adjustments for Hero  Template Version of Menu */
.hero-menu .linkbar, .hero-menu .linkbar-navy, .hero-menu .linkbar-cyan, .hero-menu .linkbar-orange, .hero-menu .linkbar-red, .hero-menu .linkbar-white, .hero-menu .linkbar-green, .hero-menu .linkbar-darkgreen, .hero-menu .linkbar-gray, .linkbar-yellow, .linkbar-nobackground {
	padding: 14px 8px;font-size:1.05em;font-weight:bold;margin-bottom:0;
}

@media screen and (max-width:650px) {
	.linkbar li, .linkbar-navy li, .linkbar-blue li, .linkbar-cyan li, .linkbar-orange li, .linkbar-red li, .linkbar-white li, .linkbar-green li, .linkbar-darkgreen li, .linkbar-gray li, .linkbar-yellow li, .linkbar-nobackground li {
		display: block;
		margin-right: 0;
		margin-bottom: 0;
		padding: 2px 0;
		border-top: 2px solid #f1f1f1;
	}
		.linkbar li:first-of-type, .linkbar-navy li:first-of-type, .linkbar-blue li:first-of-type, .linkbar-cyan li:first-of-type, .linkbar-orange li:first-of-type, .linkbar-red li:first-of-type, .linkbar-white li:first-of-type, .linkbar-green li:first-of-type, .linkbar-darkgreen li:first-of-type, .linkbar-gray li:first-of-type, .linkbar-yellow li:first-of-type {
		border-top: none;
	}
	.hero-menu .linkbar, .hero-menu .linkbar-navy, .linkbar-blue, .hero-menu .linkbar-cyan, .hero-menu .linkbar-orange, .hero-menu .linkbar-red, .hero-menu .linkbar-white, .hero-menu .linkbar-green, .hero-menu .linkbar-darkgreen, .hero-menu .linkbar-gray, .hero-menu .linkbar-yellow .linkbar-nobackground {
		background: white;
		padding: 0 0 4px 0;
		color: var(--blue);
	}
	.hero-menu .linkbar a, .hero-menu .linkbar-navy a, .linkbar-blue a, .hero-menu .linkbar-cyan a, .hero-menu .linkbar-orange a, .hero-menu .linkbar-red a, .hero-menu .linkbar-white a, .hero-menu .linkbar-green a, .hero-menu .linkbar-darkgreen a, .hero-menu .linkbar-gray a, .hero-menu .linkbar-yellow a, .her-menu .linkbar-nobackground a {
		color: var(--cyan);
	}
}


/* Use in place of period in links that are not sentences */
.link-arrow {
	font-size: 1.25em;
	vertical-align: text-bottom;
	margin-left: 4px;
}

/* -----------------------------
   HEADER
 ------------------------------- */

header {
	border-bottom: 2px solid var(--snowday);
    background: white;
	position: relative;
}

#logo-box {
	position: absolute;
	top: 0;
	background: url('/images/vertical-scallop.png'), linear-gradient(90deg, var(--blue) 30%, var(--cyan) 110%);
	background-position: top right, center;
	background-repeat: no-repeat;
	background-size:11px, cover;
	padding: 36px 60px 34px 48px;
}

#logo-mobile {
	display: none;
	float: left;
	height: 40px;
	margin: 0;
	padding: 0;
}
#logo-gradmenu {
	display: block;
	position: absolute;
	top: 8px;
	height: 40px;
	margin: 0;
	padding: 0;
}
#campaign-logo-container #logo-box {
	left: 5%;
	background: linear-gradient(90deg, var(--blue) 30%, var(--cyan) 110%);
	background-position: center;
	background-size: cover;
	padding: 32px 42px;
	border-radius: 0 0 var(--rounded) var(--rounded);
}

#top-bar {
	width: 100%;
	padding: 19px 0;
	background: linear-gradient(90deg, rgba(255,255,255,1) 25%, rgba(0,174,239,1) 50%, rgba(1,73,131,1) 100%);
	color: white;
}
.top-bar-grad {
	background: var(--gradient-seaspray);
	padding: 10px 20px 12px 20px;
	height: auto;
	box-sizing: border-box;
}

#alt-menu-wrapper {
	max-width: 1260px;
	margin: 0 auto 0 auto;
	padding: 0 5% 0 5%;
}
.top-bar-grad #alt-menu-wrapper {
	padding: 12px 5% 10px 5%;
}

#alt-menu {
	font-size: 0.8em;
	-webkit-text-size-adjust:90%; /* So menu fits on one line on iPad */
	margin: 0;
	padding: 0;
	text-align: right;
	list-style: none;
	letter-spacing: 1px;
}
#alt-menu li {
	display: inline;
	margin-right: 20px;
}
#alt-menu a {
	color: white;
	text-decoration: none;
}
#alt-menu a:hover {
	color: var(--gold);
}

/* 'Info for' dropdown in alt menu */
.dropdown-trigger {
  position: relative;
}

.dropdown-trigger:after {
	content: "âº";
	position: absolute;
	color: white;
	font-size: 24px;
	transform: rotate(90deg);
	top: -6px;
	right: -18px;
}
.info-menu-wrapper {
	visibility: hidden;
	z-index:2;
	padding-top:14px;
	position: absolute;
	left:54%;
	top: 3px;
	transform: translateX(-50%);
	width: 150px;
	opacity: 0;
	transition: opacity 0.5s ease;
}
.info-menu {
	background-color: white;
	padding: 10px;
	border-radius: var(--barely-rounded);
	box-shadow: var(--boxshadow);
	
}
.info-menu:before {
	content:'';
	display:block;
	width:0;
	height:0;
	position:absolute;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent; 
	border-bottom:8px solid white;
	left:45%;
	top:18px;
}

#alt-menu .info-menu li {
	width: 100%;
	text-align: center;
	padding: 5px 0;
	font-weight: 700;
	display:block;
}

#alt-menu a.info-item {
	color: var(--cyan);
}
#alt-menu a.info-item:hover {
	color: var(--red);
}

#alt-menu li:hover .info-menu-wrapper, .info-menu-wrapper:hover {
  visibility: visible;
  opacity: 1;
}

.topnav-apply {
	font-size: 0.8em;
	margin: -6px 0 0 12px;
	letter-spacing: 1px;
	float: right;
	background: var(--gold);
	color: var(--nightmarsh);
	padding: 6px 12px;
	border-radius: var(--barely-rounded);
	box-sizing: border-box;
	font-weight: 700;
}
.topnav-apply:hover { color: white;background: var(--nightmarsh);}

.primary-menu-container {
	max-width: 1260px;
	margin: 0 auto 0 auto;
	padding: 16px 5% 16px 5%;
	overflow: auto;
	background: white;
}

#primary-menu {
	float: right;
	list-style: none;
	font-family: 'Gotham SSm 7r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 700;
	font-style: normal;
	font-size: 1.1em;
	letter-spacing: 1px;
	margin: 12px 0 0 0;
	padding: 0;
}
#primary-menu li {
	display: inline;
	margin-left: 26px;
}
#primary-menu li:first-child {
	margin-left: 0;
}
#primary-menu a {
	color: var(--cyan);
	text-decoration: none;
}
#primary-menu a:hover {
	color: var(--red);
}

.search-container {
	float: right;
	position: relative;
	margin-top: -8px;
}
.PageSearchBox {
	border: 2px solid white;
	color: white;
	padding: 6px 0;
	margin: 0;
	background: none;
	font-family: 'Gotham SSm 4r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-size: 0.8em;
	border-radius: 15px;
}
.PageSearchBox::placeholder {color: white;}
.PageSearchButton {
	position: absolute;
	right: 10px;
	top: 6px;
	width: 18px;
}
.PageSearchButton:hover {
	opacity: 0.7;
}


/** SLIDEOUT MENU - HOME & MOBILE **/
#slideout-navigation {
	position: relative;
	z-index: 36;	
}

#menuToggle {
  display: block;
  position: absolute;
  top: 13px;
  right: 6px;
  z-index: 1;
  -webkit-user-select: none;
  user-select: none;
}

#menuToggle input[type=checkbox] {
  display: block;
  width: 75px;
  height: 32px;
  position: absolute;
  top: -7px;
  right: 0;
  cursor: pointer;
  opacity: 0; /* hide this */
  z-index: 3; /* and place it over the hamburger */
  -webkit-touch-callout: none;
}

.search-nav-btn {
	position: absolute;
	right: 45px;
	top: -2px;
	width: 26px;
}
/* Hamburger Icon */
#menuToggle span {
  display: block;
  width: 33px;
  height: 4px;
  margin-bottom: 5px;
  position: relative;
  background: white;
  border-radius: 3px;
  z-index: 2;
  transform-origin: 4px 0px;
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
              opacity 0.55s ease;
}

#menuToggle span:first-child {
  transform-origin: 0% 0%;
}

#menuToggle span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

/* Transform all the slices of hamburger into a crossmark. */
#menuToggle input:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: var(--cyan);
}

#menuToggle input:checked ~ span:nth-last-child(3)
{
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

#menuToggle input:checked ~ span:nth-last-child(2)
{
  opacity: 1;
  transform: rotate(-45deg) translate(0, -1px);
}

/* Make this absolute positioned at the top right of the screen */
#slideout-menu {
  position: fixed;
  overflow: scroll;
  z-index: 1;
  box-sizing: border-box;
  width: 100vw;
  max-width: 500px;
  height:100vh;
  top: 0;
  right: 0;
  margin: 0;
  padding: 55px;
  padding-top: 6px;
  background: white;
  border-left: 3px solid #00AEEF;
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  /* to stop flickering of text in safari */
  transform-origin: 0% 0%;
  transform: translate(100%, 0);
  transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

#slideout-menu li {
  padding: 12px 0;
  font-size: 16px;
  font-weight: bold;
}

.slideout-search-container {
	width: 77%;
	position: relative;
}
.slideout-search-box {
	box-sizing: border-box;
	width: 100%;
	border: 3px solid var(--snowday);
	padding: 15px;
	border-radius: var(--rounded);
	background: white;
	color: var(--red);
	font-size: 15px;
	font-family: 'Gotham SSm 4r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 700;
	font-size:15px
}
.slideout-search-box::placeholder {
	color: var(--red);
}

.slideout-search-button {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	width: 24px;
}

a.slideout-undergrad, .home-top-nav a.slideout-undergrad {
	color: #014983;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	display: block;
	background: var(--snowday);
	border-radius: var(--barely-rounded);
	padding: 12px;
	margin: 0 0 20px 0;
}

.ug-label {
	color: var(--blue);
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 1px;
}

.slideout-bottom-container {
	display: flex;
	justify-content:space-between;
	align-items: center;
	padding-top: 22px;
	border-top: 3px solid var(--snowday);
	margin-top: 22px;
}

.slideout-container-grad {
	width: 40%;
}

.slideout-container-buttons {
	width: 50%;
}

a.slideout-grad, .home-top-nav a.slideout-grad {
	color: #014983;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	display: block;
	padding-left: 12px;
	margin: 0 0 16px 0;
}

a.slideout-buttons, .home-top-nav a.slideout-buttons {
	color: white;
	background: #014983;
	text-decoration: none;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	display: block;
	border-radius: var(--barely-rounded);
	padding: 12px;
	margin: 0 0 22px 0;
}
a.slideout-buttons:nth-of-type(1), .home-top-nav a.slideout-buttons:nth-of-type(1) {color: var(--athleticblue);}
a.slidehout-buttons:hover, .home-top-nav a.slideout-buttons:hover { color: var(--red);}

/* And let's fade it in from the left */
#menuToggle input:checked ~ ul {
  transform: none;
  opacity: 1;
}

@media screen and (max-width:1160px) {
	#primary-menu {
		font-size: 0.9em;
		margin-top: 14px;
	}
	#logo-box {
		padding: 34px 60px 32px 48px;
	}
}

@media screen and (max-width:1050px) {
	#logo-box {
		display: none;
	}
	#logo-mobile {
		display: block;
	}
	.primary-menu-container {
		display: none;
	}
	#primary-menu {
		display: none;
	}
	#alt-menu-wrapper {
		padding: 0 1.35% 0 0;
		margin-top: 5px;
	}
	#alt-menu {
		display: none;
	}
	#top-bar {
		overflow: hidden;
		background: var(--gradient-seaspray);
		padding-left: 20px;
		padding: 10px 20px 12px 20px;
		height: auto;
		box-sizing: border-box;
	}
	.top-bar-grad {height: 60px;}
	.topnav-apply { display: none; }
	.search-container {
		display: none;
	}
	#slideout-menu {
		padding: 6px 35px 10px 35px;
	}
	a.slideout-undergrad, .home-top-nav a.slideout-undergrad {
		margin: 0 0 10px 0;
	}
	a.slideout-buttons, .home-top-nav a.slideout-buttons {
		margin: 0 0 10px 0;
	}
	.ug-label {
		margin-bottom: 10px;
	}
	.slideout-bottom-container {
		align-items: flex-start;
		padding-top: 14px;
		border-top: 3px solid var(--snowday);
		margin-top: 14px;
	}
}

@media screen and (min-width:1051px) {
	#slideout-navigation {
		display: none;
	}
	#slideout-menu {
		display: none;
	}
}


/* -----------------------------
   HERO IMAGE & SLIDESHOW
 ------------------------------- */

.hero-container {
	width: 100%;
	margin: 0px;
	border-bottom: 2px solid #cccccb;
}
@media screen and (max-width:750px) {
	.hero-container {
		overflow: auto;
	}
}

/* So slides don't show all at once before script loads */
 .royalSlider > .rsContent, .royalSlider > .rsImg {
	display: none; 
}

/* For providing image via background image and not royalslider */
.hero-container-background-img {
	width: 100%;
	min-height: 175px;
	max-height: 550px;
	position: relative;
	margin: 0px;
	border-bottom: 2px solid #cccccb;
	background-position: center center;
	background-size: cover;
	background-image: url(images/seascape.jpg);
}

.slide-caption {
	position: absolute;
	top: 50%;
	width: 100%;
	text-align: center;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.slide-caption p {
	font-size: 2em;
	font-weight: bold;
	color: white;
	text-shadow: 1px 1px 10px #000;
}

.slide-caption .button-cyan {
	background: rgba(0, 174, 239, 0.8);
}


/* HERO OVERLAY CONTENT AREA */
.hero-overlay {
	position: absolute;
	bottom: 12%;
	left: 0;
	right: 0;
	margin: 0 auto;
	z-index: 10;
	text-align: center;
	
}

.hero-overlay .button-outline {
	font-size: 1.1em;
	letter-spacing: .07em;
}

.hero-overlay .button-outline:nth-of-type(2), .hero-overlay .button-outline:nth-of-type(3) {
	margin-left: 14px;
}

@media screen and (max-width:650px) {
	.slide-caption p {
		font-size: 1.4em;
		line-height: 1.5em;
	}
	.hero-overlay {
		position: static;
	}
	.hero-overlay p, .hero-overlay a {
		margin: 0;
	}
	.hero-overlay .button-outline, .hero-overlay .button-outline:nth-of-type(2), .hero-overlay .button-outline:nth-of-type(3) {
		border: none;
		margin: 0;
		border-radius: 0;
	}
}


/* Responsive Category Home Image for 2 column page - width set below in Body section */

.category-home-slide-wrapper {
	width: 100%;
}

.responsive-image-header {
	width: 100%; /* for web editor */
}

.responsive-image-header img, .responsive-image-header .rsOverflow {
	margin-bottom: 20px;
}

/* -----------------------------
   LEFT NAVIGATION MENU
 ------------------------------- */

.left-column {
	width: 25%;
	margin-left: 0;
	margin-right: -100%;
	float: left;
}
@media screen and (max-width:1050px) {
	.left-column {
		width: 100%;
		margin: 0;
		float: none;
		overflow: auto;
	}
}

.left-nav-container {
	width: 100%;
	background: white;
	margin-bottom: 2.25em;
	border-top: 3px solid #d1d3d4;
	font-weight: bold;
	box-sizing: border-box;
	border-radius: 0 0 var(--rounded) var(--rounded);
}
@media screen and (max-width:1200px) {
	.left-nav-container {
		font-size: 0.93em;
	}
}

.left-nav-container a {
	color: #31342b;
	text-decoration: none;
}
.left-nav-container a:hover {
	color: var(--cyan);
}

.left-nav-container ul {
	list-style: none;
	margin: 0.25em 0 1.25em 0;
	padding: 0;
}

.left-nav-container li {
	padding: 0.75em 24px 0.75em 33px;
	text-indent: -15px;
}

li.parentpage img {
	margin-right: 0.55em;
	vertical-align: baseline;
}
li.parentpage a {
	color: #999999;
}
li.parentpage a:hover {
	color: var(--cyan);
}

li.currentpage {
	color: var(--cyan);
	background: #e5f1fa;
	/*list-style: disc inside;
	padding-left: 20px;*/
	margin-bottom: 0.5em;
}
li.currentpage img {
	margin: 0 0.55em 2px 0;
	vertical-align: middle;
	width: 7px;
	height: 7px;
}

li.currentpage a {
	color: var(--cyan);
}

li.currentminorpage {
	margin-left: 10px;
	padding-bottom: 0.2em;
	font-size: 0.98em;
}
li.currentminorpage a {
	color: var(--cyan);
}
li.currentminorpage img {
	margin: 0 0.55em 2px 0;
	vertical-align: middle;
	width: 7px;
	height: 7px;
}

li.childpage {
	margin-left: 26px;
	padding-bottom: 0.2em;
	padding-left: 18px;
	text-indent: 0;
	font-size: 0.98em;
}

li.childpage.crosslink {
	margin-left: 15px;
}

li:not(.childpage.crosslink) + .childpage.crosslink {
    margin-top: 2px;
}

li.flat-nav-listing {
	margin-left: 16px;
	padding-bottom: 0.2em;
}
li.flat-nav-listing a {
	color: #999999;
}
li.homelink {
	margin-top: 1.25em;
	border-top: 2px solid #ebeaea;
	padding: 1em 33px;
}
li.homelink img {
	margin-right: 0.5em;
	vertical-align: baseline;
}
li.homelink a {
	color: #999999;
}
li.homelink a:hover {
	color: var(--cyan);
}

.connect-area {
	color: #6f6f6f;
}

.connect-area h3 {
	margin-bottom: 16px;
}

.adm-leftcol-links {
	margin-top: 36px;
}

.social-list {
	list-style-type: none;
	padding: 0;
	/*margin-bottom: 36px;*/
}
.social-list li {
	display: inline;
	margin: 0 12px 0 0;
	padding: 0;
}
.social-list li:last-of-type {
	margin-right: 0;
}

.social-list img {
	width: 25px;
	height: 25px;
}

.adm-link {
	padding: 16px 0;
	border-top: 1px solid #cccccc;
	margin: 0;
}


/* NEW Fixed Admissions Action Links */

.fixed-admissions-links-wrapper {
	position: fixed;
	right: 0;
	top: 25%;
	z-index: 50;
}
a.fixed-admissions-link {
	background: linear-gradient(90deg, var(--cyan) 0%, var(--blue) 100%);
	margin: 0 0 10px 0;
	padding: 10px 10px 10px 14px;
	font-weight: bold;
	color: white;
	text-decoration: none;
	display: block;
	border-radius: 4px 0 0 4px;
}
a.fixed-admissions-link:hover {
	background: var(--gold);
}

@media screen and (max-width:1050px) {
	.connect-area {
		text-align: center;
	}
	.fixed-admissions-links-wrapper {
		top: auto;
		bottom: 0;
		width: 100%;
		z-index: 4;
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;
		border-top: 2px solid white;
	}
	a.fixed-admissions-link {
		box-sizing: border-box;
		background: linear-gradient(180deg, var(--cyan) 0%, var(--blue) 100%);
		display: flex;
		justify-content: center;
		align-items: center;
		width: calc(100%  /3);
		text-align: center;
		margin: 0;
		padding: 16px 10px;
		border-bottom: none;
		border-radius: 0;
	}
}

/* -----------------------------
   BODY CONTENT
 ------------------------------- */

.body-container ul, .body-container ol {
	line-height: 1.8em;
}

.body-container > img, .responsive-image-header > img {
	max-width: 100%;
	height:  auto;
}

.body-container-2col {
	width: 70%;
	margin-left: 30%;
	margin-right: -100%;
	float: left;
}
@media screen and (max-width:1050px) {
	.body-container-2col {
		width: 100%;
		margin: 0;
		float: none;
	}
}

.body-container-fullwidth {
	width: 100%;
	max-width: 1010px;
	margin-left: auto;
	margin-right: auto;
}

/* Creates full width element that breaks out of parent container */
.breakout-section {
	margin: 0 calc(50% - 50vw);
	display: block;
}

.breadcrumb {
	font-size: 0.8em;
	margin: 0 0 1.5em 0;
	color: #999999;
}

.breadcrumb a {
	color: var(--cyan);
	text-decoration: none;	
}
.breadcrumb a:hover {
	color: #31342B;
}
/* Make current page gray */
.breadcrumb a:last-of-type {
	color: #999999;
}

/* -----------------------------
   GALLERY STYLES
 ------------------------------- */

.Gallery {
	position: relative;
}
.GalleryHeader, .GalleryFooter {
	position: relative;
}
.GalleryHeader {
	border-bottom: 2px solid #cccccc;
	margin-bottom: 1em;
}
.GalleryFooter {
	border-top: 2px solid #cccccc;
	margin-top: 1em;
	padding-top: 1em;
}
.GalleryFocus {
	position: relative;
}
.GalleryItem {
	position: relative;
}
.GalleryItemImage {
	margin-bottom: .4em;
}
.GalleryItemLink {
	margin-bottom: 1em;
}
.GalleryFocusColumn1 {
	float: left;
	width: 177px;
	margin: 0 14px 14px 0;
	line-height: 0px;
	clear: both;
}
.GalleryListColumn2 img {
	/* margin-bottom: .4em; */
	cursor: pointer;
}
.GalleryFocusColumn2 {
	margin-left: 191px;
}
.GalleryList {
	position: relative;
	clear: both;
	border-bottom: 2px solid #cccccc;
	margin-bottom: 1em;
	padding-bottom: 1em;
	overflow: hidden;
}
	.Final {
		border-bottom: none;
	}
.GalListColumn1 {
	margin-right: 255px;
}
.GalListColumn2 {
	float: right;
	width: 225px;
	margin: 10px 0 1em 30px;
	line-height: 0px;
}
.GalleryItemImage img {
	width: 100%;
	height: 100%;
	border-radius: var(--rounded);
}

@media screen and (max-width:650px) {
	.GalListColumn2 {
		float: none;
		margin: 0 auto 1em auto;
		width: 80%;
	}
	.GalListColumn1 {
		margin-right: 0;
	}
}

/* -----------------------------
   TOP-LEVEL LANDING TEMPLATE
 ------------------------------- */

#toplevel-landing-slider {
	z-index: -2;
}

.slideshow-container {
	height: 600px;
	max-height: 70vh;
	position: relative;
	text-align: center;
	color: white;
	background: url(/images/templates/wave-gradient.png);
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: bottom center;
	box-sizing: border-box;
	margin-bottom: -5px;
	padding: 0;
	z-index: auto;
}

.slideshow-overlay {
	position: absolute;
	width: 650px;
	max-width: 80%;
	bottom: 20%;
	left: 50%;
	transform: translateX(-50%);
}
.slideshow-overlay .tilegridwrapper {
	padding: 0;
}
.slideshow-overlay .button-box {
	border-radius: 8px;
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.5);
}

.slideshow-overlay h1 {
	color: white;
	font-size: 2.2em;
	text-shadow: var(--textshadow);
}

.top-level-body {
	text-align: center;
	color: var(--blue);
	padding-top: 15px;
}

.toplevel-landing-nav {
	list-style: none;
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	background: #fff;
	padding: 13px 10px;
	margin: 20px 0;
	border-radius: var(--rounded);
	box-shadow: var(--boxshadow);
	font-size: 15px;
	text-align: center;
}

.toplevel-landing-nav li {
	display: block;
	padding: 5px 16px;
	border-right: 2px solid #ebeaea;
	font-weight: bold;
}
.toplevel-landing-nav li:last-of-type {
	border-right: none;
}

@media screen and (max-width:650px) {
	.slideshow-container {
		height: 600px;
		max-height:50vh;
		background-size: 150%;
	}
	.slideshow-overlay {
		bottom: -130px;
	}
	.slideshow-overlay h1 {
		font-size: 1.8em;
		margin-bottom: 18px;
	}
	.slideshow-overlay .tilegrid-2col {
		margin-bottom: 14px;
	}
	.slideshow-overlay .button-box {
		box-shadow: none;
	}
	.top-level-body {
		margin-top: 150px;
	}
	.toplevel-landing-nav {
		padding: 4px 14px;
	}
	.toplevel-landing-nav li {
		width: 100%;
		border-right: none;
		padding: 8px 6px;
		border-bottom: 2px solid #ebeaea;
	}
	.toplevel-landing-nav li:last-of-type {
		border-bottom: none;
	}
}

/* -----------------------------
   SCHOOLS TEMPLATE
 ------------------------------- */

 .schools-hero-slider {
	height: 600px;
	max-height: 70vh;
	position: relative;
	box-sizing: border-box;
	padding: 0;
	z-index: auto;
	border-bottom: 4px solid var(--blue);
}

.schools-titlebox {
	position: relative;
	display: inline-block;
	top: -50px;
	transform: translateY(-50%);
	max-width: 80vw;
	padding: 18px 30px;
	background: white;
	color: var(--blue);
	border-radius: var(--barely-rounded);
	box-shadow: var(--boxshadow);
	z-index: 0;
}
.schools-titlebox:before {
	content:"";
  	position: absolute;
  	transform: translate(15px,15px);
  	z-index: -1;
	inset: 0;
	background: var(--gradient-seaspray);
	border-radius: var(--barely-rounded);
}
.schools-titlebox:after {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	/* Inherit all the decorations defined on the main element */
	background: inherit;
	border: inherit;
	border-radius: inherit;
	box-shadow: inherit;
  }
.schools-titlebox h1 {
	font-size: 30px;
	margin: 0;
	padding: 0;
}

.school-body {
	text-align: center;
	background: linear-gradient(180deg, rgba(1,73,131,.25) 0%, rgba(1,73,131,0) 80px), url('/images/layout/faded-grid.png'), white;
	background-repeat: repeat-x;
	background-position: top;
	background-size: auto;
}
.school-content-container {
	margin-top: -30px;
}

.school-highlights-label {
	background: linear-gradient(white, white) padding-box,
				linear-gradient(140deg, var(--cyan) 10%, var(--seaspray) 85%) border-box;
  	border-radius: 50px;
  	border: 3px solid transparent;
	color: var(--cyan);
	font-size: 16px;
	letter-spacing: 2px;
	font-weight: 600;
	display: inline-block;
	padding: 5px 10px;
	margin-bottom: -120px;
}

.school-stats {
    font-size: 4em;
    font-weight: 900;
    color: var(--cyan);
    text-shadow:var(--blue) 5px 5px;
	line-height: 95px;
}

.schools-features {text-align: left;margin: 100px 0;}

.schools-features p {overflow: hidden;}

.schools-imageblock {
	width: 48.5%;
	border-radius: var(--rounded);
	margin-bottom: 20px;
}

#programs-toggle {
	display: inline-block;
	margin: 20px 0 5px 0;
	text-transform: uppercase;
	font-weight: bold;
}
#programs-toggle span:first-of-type {
	padding: 10px 2px 10px 12px;
	border: 3px solid var(--snowday);
	border-radius: 30px 0 0 30px;
	cursor: pointer;
}
#programs-toggle span:last-of-type {
	padding: 10px 12px 10px 10px;
	border: 3px solid var(--snowday);
	border-radius: 0 30px 30px 0;
	cursor: pointer;
}
.programs-toggle-active {
	background: var(--snowday);
}
#grad.academic-programs-list {
	column-count: 1;
	column-gap: 0;
}

.schools-contact-box {
	color: white;
	background: linear-gradient(90deg, #014983 40%, #00aeef 120%);
	padding: 25px 40px;
	text-align: left;
	border-radius: var(--rounded);
	margin: 50px 0;
}
.schools-contact-box h3 {margin: 0;}
.schools-contact-box p {font-weight: bold;}

@media screen and (max-width:650px) {
	.schools-hero-slider {
		height: 400px;
		max-height:40vh;
		background-size: 150%;
	}
	.schools-titlebox { max-width: 75vw;padding: 18px;}
	.schools-titlebox:before {transform: translate(12px,12px);}
	.schools-titlebox h1 { font-size: 26px;}
	.school-content-container {
		margin-top: -200px;
	}
}

/* -----------------------------
   FACULTY / PEOPLE PROFILES
 ------------------------------- */
 
 .faculty-photo {
 	width: 100%;
 	margin-bottom: 35px;
 }
 
 .faculty-contact-list {
 	list-style: none;
 	margin: 1em 0;
 	padding: 0;
 }

.faculty-contact-list li {
	display: inline;
	margin-right: 16px;
}

.expertise-areas {
	margin: 1em 0 0 0;
	padding: 1.2em 0;
	border-top: 2px solid #cccccc;
}

.expertise-areas ul {
	list-style: none;
	display: inline;
	margin: 0;
	padding: 0;
}
.expertise-areas ul li {
	display: inline;
	margin-left: 12px;
	padding: 6px 10px;
	background: white;
	border-radius: 15px;
	font-size: 0.8em;
	font-weight: bold;
}

.faculty-bio {
	border-top: 2px solid #cccccc;
	padding-top: 1em;
}

.resume-cv {
	border-top: 2px solid #cccccc;
	margin-top: 2em;
	padding-top: 1em;
}

.testimonial-wrapper {
	padding-top: 20px;
	overflow: auto;
	margin-bottom: 2em;
}
.testimonial-wrapper img {max-width: 85%;}

.testimonial-photo {
	border: 14px solid white;
	border-radius: 50%;
}

.rounded-corner-photo {
	border-radius: 25px;
}

@media screen and (max-width:1050px) {
	 .faculty-photo-wrapper {
		width: 70%;
		margin: 0 auto;
 	}	
	.faculty-photo {
		margin-bottom: 18px;
	}
	.faculty-name, .faculty-title, .faculty-degrees {
		text-align: center;
	}
	.faculty-contact-list li {
		display: block;
		text-align: center;
		margin-bottom: 0.5em;
	}
}

/* Fac-Staff Filtered List View */

.facstaff-list-item {
	margin-bottom: 40px;
	padding-bottom: 1em;
	border-bottom: 2px solid #cccccc;
	overflow: auto;
}
.facstaff-list-item:last-of-type {
	border-bottom: 0;
}

.facstaff-list-photo {
	float: right;
	width: 30%;
	border-radius: var(--rounded);
	margin: 0 0 1em 30px;
}

@media screen and (max-width:650px) {
	.facstaff-list-photo {
		float: none;
		margin: 0 auto 1em auto;
		width: 80%;
	}
}

/* -----------------------------
   FREEFORM STYLES
 ------------------------------- */

.MicroAppText input, .MicroAppText textarea {
	padding: 8px;
	border: 2px solid #cccccc;
	font-size: 1em;
}
.MicroAppText textarea {
	width: 100% !important;
	box-sizing: border-box;
}

.MicroAppText select {
	font-size: 1.4em;
}

.MicroAppText form input[type=radio] {
	font-size: 3em;
}

.MicroAppText input[type="submit"] {
	color: white;
	background: #00aeef;
	border: 3px solid white;
	text-transform: uppercase;
	font-size: 1.2em;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 16px 26px;
	margin-bottom: 1.5em;
	border-radius: 6px;
	cursor: pointer;
}
.MicroAppText input[type="submit"]:hover {
	background: #00bdec; 
}

.boldText{
    font-weight: bold;
}
.boldText:before{ content:"* "; }
.boldText:after { content:" *"; }



/* -----------------------------
   EMAIL DIALOG POP UP
 ------------------------------- */
 
#DialogBody {
	padding-right:20px;
	padding-top:20px;
	line-height:1.5em;
}
#DoubleColumnText {
	font-size: .9em;
	line-height: 1.5em;
}
	#DoubleColumnText h1 {
		font-size: 1.6em;
		line-height: 1em;
		margin: 0 0 .7em 0;
		padding: 0px;
	}
	#DoubleColumnText h2 {
		font-size: 1em;
		margin: 1em 0 1em 0;
		padding: 0px;
	}
#DialogInnerBorder {
	background-color:#FFFFFF;
	padding:18px;
	border-radius: 10px;
}

#DialogOuterBorder {
	padding:15px;
}
#DialogTitle {
	padding-bottom:10px;
	font-size: 1.5em;
	line-height: 1.2;
	color: #014983;
}

#DialogBody input {
	padding: 8px;
	border: 2px solid #ebeaea;
	border-radius: 6px;
}

/* -----------------------------
   THREE COLUMN DIMENSIONS
 ------------------------------- */

.column-wrapper {
	overflow: auto;
}
.left-col {
	width: 30%;
	margin-left: 0;
	margin-right: -100%;
	float: left;
}
.middle-col {
	width: 30%;
	margin-left: 35%;
	margin-right: -100%;
	float: left;
}
.right-col {
	width: 30%;
	margin-left: 70%;
	margin-right: -100%;
	float: left;
}
.span-col {
	width: 100%;
	margin: 12px -100% 20px 0;
	clear: left;
}
.double-col-l {
	width: 65%;
	margin-left: 0;
	margin-right: -100%;
	float: left;
}
.double-col-r {
	width: 65%;
	margin-left: 35%;
	margin-right: -100%;
	float: left;
}

@media screen and (max-width:600px) {
	.left-col {
		width: 100%;
	}
	.middle-col {
		width: 100%;
		margin-left: 0;
		clear: both;
	}
	.right-col {
		width: 100%;
		margin-left: 0;
		clear: both;
	}
}

/* Academic Programs formatting */

.programs-section a {
	color: white;
	text-decoration: none;
}
.program {
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: 'Gotham SSm 5r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 500; 
	font-style: normal;
}
.program li {
	padding: 0;
	border-bottom: 1px dashed rgba(255,255,255, 0.5);
}
.program li:hover {
	background: rgba(255, 255, 255, 0.2);
}

.program li a {
	display: block;
	padding: 10px;
}

.honors:hover {
	color: #014983;
}

.mjr:after {
	display: inline-block;
	content: "";
	width: 16px;
	height: 16px;
	margin: 0 0 0 14px;
	padding: 0;
	background: transparent url('/images/home2014/major-icon.svg')no-repeat;
	vertical-align: text-top;
}

.grad:after {
	display: inline-block;
	content: "";
	width: 16px;
	height: 16px;
	margin: 0 0 0 14px;
	padding: 0;
	background: transparent url('/images/home2014/grad-icon.svg')no-repeat;
	vertical-align: text-top;
}

.online:after {
	display: inline-block;
	content: "";
	width: 16px;
	height: 16px;
	margin: 0 0 0 14px;
	padding: 0;
	background: transparent url('/images/layout/online-symbol.svg')no-repeat;
	vertical-align: text-top;
}


/* NEW ACADEMICS SEARCH, BUCKETS, and A-Z Listing */

.academic-bucket {
	margin-bottom: 45px;
}

.academic-bucket h2 {
	font-size: 1.3em;
}
.academic-bucket p {margin: 0; padding: 15px 0;font-size: 14px;}

@media screen and (max-width:650px) {
	#academic-section .tilegrid-3col, .academic-buckets .tilegrid-3col {
		width: 47.5%;
	}
	.academic-bucket {
		margin-bottom: 25px;
	}
	.academic-bucket h2 {
		font-size: 1.1em;
	}
}

ul.academic-programs-list {
	color: var(--blue);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5em;
	list-style: none;
	margin: 40px auto;
	padding: 0;
	text-align: left;
}



.academic-programs-list li {
	margin-bottom: 0.75em;
	border-bottom: solid var(--snowday) 3px;
	padding-bottom: 0.75em;
	page-break-inside: avoid;
    break-inside: avoid;
}

.academic-programs-list li > ul{
	margin-bottom: 0.75em;
	font-size: 15px;
	line-height: 1.5em;
	border-bottom: none;
}

.academic-programs-list li > ul > li{
	margin-bottom: 0.75em;
	border-bottom: none;
	padding-bottom: 0;
}

.academic-programs-list li a {
	color: var(--blue);
}

.academic-programs-list li a:hover {
	color: var(--gold);
}

@media screen and (min-width:700px) {
	.academic-programs-list {
		column-count: 3;
		column-gap: 6%;
	}
}


/* -----------------------------
   FOOTER
 ------------------------------- */

/* Highlight bar is on homepage */
.footer-highlight-bar {
	background: var(--gradient-seaspray);
	text-align: center;
}

.footer-highlight-bar a, .footer a {
	color: white;
	text-decoration: none;
}
.footer-highlight-bar a:hover, .footer a:hover {
	color: var(--gold);
}

.footer-highlight-bar li {
	display: inline-block;
	margin: 30px 2%;
}

.footer {
	color: white;
	text-align: center;
	background: var(--nightmarsh);
}

.footer-shield-icon {
	width: 60px;
}

.footer ul {
	list-style: none;
	text-align: left;
	font-family: 'Gotham SSm 7r', 'Gotham SSm A', 'Gotham SSm B', sans-serif; 
	font-weight: 700; 
	font-style: normal;
	padding-left: 0;
	column-count: 3;
	column-gap:5%;
	text-align: left;
	margin: 60px 0;
}
.footer-highlight-bar ul {
	font-weight: 700;
	margin: 0;
	padding: 0;
}
.footer li {
	margin-bottom: 0.75em;
}
.footer ul li hr {
	border: 1px solid var(--snowday);
	margin: 25px 50px 25px 0;
}

.boilerplate {
	font-size: 0.9em;
}
@media screen and (max-width:650px) {
	.footer ul {
		text-align: center;
		column-count: 1;
	}
	.footer ul li hr {
		margin: 25px 60px;
	}
	.footer-highlight-bar {
		padding: 25px 0;
	}
	.footer-highlight-bar li {
		display: block;
		margin: 25px 0;
	}
}


/* -----------------------------
   CAMPAIGN LAYOUT STYLES
 ------------------------------- */

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

	.campaign-offsetvideo-topsection {
		margin-bottom: -325px;
	}
	
	.campaign-offsetvideo-secondsection {
		padding-top: 325px;
	}
}

/* -----------------------------
   EMERGENCY MESSAGES
 ------------------------------- */

#AlertArea, #InfoArea, #EmergencyArea {
	color: white;
	border-bottom: 2px solid white;
	text-align: right;
	line-height: 1.6em;
	margin: 0;
	padding: 20px 0;
	width: 100%;
	z-index: 1;
}

#AlertArea p, #InfoArea p, #EmergencyArea p {
	padding-left: 20%;
	margin: 0;
	font-size: 1.1em;
	line-height: 1.6em;
}

#InfoArea a, #AlertArea a, #EmergencyArea a {
	color: white;
	text-decoration: underline;
}
#AlertArea a {color: var(--nightmarsh);}

@media screen and (max-width:1050px) {
	#AlertArea p, #InfoArea p, #EmergencyArea p {
		padding-left: 0;
		text-align: left;
	}
	#AlertArea, #InfoArea, #EmergencyArea {
		padding: 10px 0;
	}
}

#AlertArea {
	background: var(--gold);
	color: var(--nightmarsh);
}
#InfoArea {
	background: var(--cyan);	
}
#EmergencyArea {
	background: var(--red);	
}


/* FOR EDITOR */
.ContentRegionEditable {
	border:1px dashed #000000;
	background: inherit;
	font-size: inherit;
	cursor:pointer;
	outline:inherit;
	text-align: inherit;
	text-decoration:inherit;
	text-indent:inherit;
	text-shadow:inherit;
	text-transform:inherit;
}
.Divider {
	height: 1px;
	background-color: #252525;
	overflow: hidden;
}
.DividerWithMargins {
	height: 1px;
	background-color: #252525;
	overflow: hidden;
	margin: 1.5em 0 1.5em 0;
}

/* Because the debug info breaks page width on mobile */
@media screen and (max-width:800px) {
	.cfdebug {display:none;}
}


/* --------------------------------
   3rd PARTY PLUGINS & INTEGRATIONS
 ---------------------------------- */



/*SEARCH RESULTS */

.search-results {
	overflow: hidden;
}

/* SLATE INQUIRY FORM SUBMIT BTN */

button.default {
	color: white;
	background: var(--cyan);
	border: 3px solid white;
	text-transform: uppercase;
	font-size: 1.2em;
	font-weight: bold;
	letter-spacing: 1px;
	padding: 16px 26px;
	border-radius: var(--barely-rounded);
	cursor: pointer;
}
/* So High School auto-completes aren't behind lightbox */
.suggest {
	z-index: 3000 !important;
}

/* SALESFORCE INQUIRY FORMS */

.salesforce-interestform input {
	padding: 8px;
	border: 3px solid var(--snowday);
	border-radius: 4px;
	margin: 8px 0;
	width: 60%;
}

.salesforce-interestform label {
	display: inline-block;
	width: 30%;
	font-weight: bold;
}

.salesforce-interestform input:is([type="submit"]) {
	font-weight:bold;font-size:18px;color: #fff;
    background: linear-gradient(90deg, var(--cyan), var(--blue));
    border: none;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 1px;
    padding: 16px 26px;
    margin: 15px 0 0 0;
    border-radius: 6px;
    cursor:pointer;
	width: 100%;
}

.salesforce-interestform-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.salesforce-interestform-flex > div {
	width: 48%;
	margin-top: 16px;
}

/* TILE DESIGNS */

.photo-text-tile {
	background: white;
	color: #6D6E70;
	text-align: left;
	border: 3px solid white;
	text-align: center;
}

.photo-text-tile:hover {
	border: 3px solid #00aeef;
}

.photo-text-tile a {
	text-decoration: none;
	color: inherit;
}

.photo-text-tile img {
	width: 100%;
}

.photo-text-tile p {
	margin: 14px 18px;
	line-height: 1.6em;
}

.photo-text-title {
	color: #00aeef;
	font-weight: bold;
}

p.photo-text-dates {
	color: #014983;
	border-top: 1px dashed #b3b3b3;
	font-weight: bold;
	padding: 8px 0;
	margin: 0 18px;
}

a.photo-text-btn {
	display: block;
	font-weight: bold;
	color: white;
}

/**
 * Featherlight - ultra slim jQuery lightbox
 * Version 1.7.2 - http://noelboss.github.io/featherlight/
 *
 * Copyright 2017, NoÃ«l Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
@media all{.featherlight{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;text-align:center;white-space:nowrap;cursor:pointer;background:rgba(0,0,0,.7)}.featherlight:last-of-type{background:rgba(0,0,0,.8)}.featherlight:before{content:'';display:inline-block;height:100%;vertical-align:middle}.featherlight .featherlight-content{position:relative;text-align:left;vertical-align:middle;display:inline-block;overflow:auto;padding: 25px 25px 20px;border: 12px solid var(--snowday);border-radius: 8px;margin-left:5%;margin-right:5%;max-height:95%;max-width: 95%;background:#fff;cursor:auto;white-space:normal}.featherlight .featherlight-inner{display:block}.featherlight .featherlight-close-icon{position:absolute;z-index:9999;top:0;right:0;line-height:25px;width:25px;cursor:pointer;text-align:center;font-family:Arial,sans-serif;background:#fff;background:rgba(255,255,255,.3);color:#000;border:0;padding:0}.featherlight .featherlight-close-icon::-moz-focus-inner{border:0;padding:0;font-weight:bold;}.featherlight .featherlight-image{width:100%}.featherlight-iframe .featherlight-content{border-bottom:0;padding:0;-webkit-overflow-scrolling:touch;overflow-y:scroll}.featherlight iframe{border:0}.featherlight *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}}@media only screen and (max-width:1024px){.featherlight .featherlight-content{margin-left:0;margin-right:0;max-height:98%;padding:10px 10px 0;border-bottom:10px solid transparent}}

.lightbox {display:none;}
