/* 
Color Reference
--------------------
Maroon: #582D40
Blue: #002fa6
90% black: #191919
Gray Text: #666
Cream: 
--------------------

Font Family names
--------------------
ITC Franklin Gothic Condensed
font-family: 'franklin-gothic-condensed', Franklin Gothic, ITC Franklin Gothic, Arial, Sans-serif;
Medium          font-weight:500; font-style: normal;
Demi            font-weight:600; font-style: normal;

Franklin Gothic URW Condensed
'franklin-gothic-urw-cond', Franklin Gothic, ITC Franklin Gothic, Arial, Sans-serif;
Medium          font-weight:500; font-style: normal;
Demi            font-weight:700; font-style: normal;

C
font-family: 'C', Arial, Sans-serif;
Thin            font-weight:250; font-style: normal;
Thin Italic     font-weight:250; font-style: italic;
Light           font-weight:300; font-style: normal;
Light Italic    font-weight:300; font-style: italic;
Regular         font-weight:400; font-style: normal;
Regular Italic  font-weight:400; font-style: italic;
Medium          font-weight:500; font-style: normal;
Medium Italic   font-weight:500; font-style: italic;
Semibold        font-weight: 600; font-style: normal;
Semibold Italic font-weight: 600; font-style: italic;
Bold            font-weight: 700; font-style: normal;
Bold Italic     font-weight: 700; font-style: italic;
Black           font-weight: 900; font-style: normal;
Black Italic    font-weight: 900; font-style: italic;
--------------------


*/

@import url("https://use.typekit.net/fde3tco.css");

/* Reset */
html{color:#333;background:#002fa6;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,figure,figcaption{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#333}#yui3-css-stamp.cssreset{display:none}span {text-decoration: none;} * {box-sizing: border-box;}
html, body {background: #002fa6; font-family: 'C', helvetica, arial, sans-serif; font-size: 16.5px; font-weight: 400; }
em {font-style: italic;}
strong {font-weight:600;}
img {width: 100%; height: auto;}
.clear {content: "\0020"; display: block; height: 0; clear: both; visibility: hidden; }


/* Start of CSS */

body {
	color: #666; 
	font-family: 'C', Arial, Sans-serif; 
	font-weight: 400; 
	font-style: normal; 
	font-size: 21px; 
	line-height: 1.25em; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-font-smoothing: subpixel-antialiased; text-rendering:optimizeLegibility; -moz-osx-font-smoothing: grayscale; font-feature-settings: "kern"; 
	-webkit-font-feature-settings: "kern" 1;
  -moz-font-feature-settings:    "kern" 1;
  -ms-font-feature-settings:     "kern" 1;
}

UL
{
	margin: 0px;
	padding: 0px;
	/*padding-left: 25px;*/
}

UL.NoListStyle
{
	list-style: none;
	padding: 0;
}

.MarBot5 { margin-bottom: 5px; }
.MarBot20 { margin-bottom: 20px; }
.MarBot50 { margin-bottom: 50px !important; }

.VisuallyHidden
{ 
    position: absolute !important;
    height: 1px; width: 1px;
    overflow: hidden;
    clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
}

.VisuallyHiddenFocusable:active, .VisuallyHiddenFocusable:focus 
{
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.SkipContentLink
{
	z-index: 10000 !important;
	background-color: #ffffff;
	padding: 5px;
}


a:link, a:visited {color: #666; transition: all 0.25s;}
a:link:hover, a:visited:hover {color: #191919; text-decoration: none;}


.container {padding:1.5rem 1.5rem; max-width: 1440px; margin:0 auto;}

.FlexRow
{
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.logos.FlexRow {
	justify-content: left;
	flex-wrap: wrap;
}

.logos.FlexRow .Sponsor {
	margin-right: 4rem;
}

.FlexSpacer
{
	flex-grow: 1;
	width: 50px;
	max-width: 50px;
}



header {background: #fff;}
header .container {padding: 1.5rem 1.5rem 1.5rem; }
header h1 {line-height: 0; font-size: 0;}
header h1 a {line-height: 0; font-size: 0;}
header h1 a span {display: none;}

header h1 a svg {max-width: 375px; margin-right:50px;}
header h1 a path {transition: all 0.25s;}
header h1 a {cursor: pointer;}
header h1 a:hover path {fill: #002fa6; }

.TopNav
{
	padding-left: 0px;
}

.TopNav .NavItem, .TopNav .TopNavHeader
{
	float: left;
}

.TopNavHeader
{
	max-width: 350px;
}

ul.TopNav li.NavItem:hover ul.dropdown-menu {
    max-height: 600px;
}

ul.dropdown-menu {
    max-height: 0;
    position: absolute;
    z-index: 10;
    background: white;
    width: 210px;
    overflow: hidden;
    transition: max-height 1s;
}

ul.dropdown-menu li {
    border: 1px solid #002fa6;
    padding: 5px 15px;
}

ul.dropdown-menu li:hover {
    background: #002fa6;
}

ul.dropdown-menu li:hover a {
    color: white;
}

.HomeNavHeader { max-width: 375px; }

.NavItem
{
	position: relative;
	top: 25px;
	margin-right: 32px;
/*
	font-family: "franklin-gothic-urw-cond";
*/
	font-family: "franklin-gothic-urw", sans-serif;
	font-weight: 400;
	font-style: normal;

	font-size: 18px;
	line-height: 22px;
	/* identical to box height */

	text-transform: uppercase;
}

.NavItem A
{
	text-decoration: none;	
	color: #000000;

	font-weight: 400;	
}

.NavItem A:hover { color: #002fa6; }

.NavItem A.Selected { font-weight: 600; }


.TicketNavItem A
{
    border: 1px solid #002fa6;
    padding: 1px 13px;
    color: #002fa6;	
}

.TicketNavItem A:hover
{
    border: 1px solid #002fa6;
    padding: 1px 13px;
    background-color: #002fa6;	
    color: #ffffff;
}

.MobileNavHamburger, .MobileNav { display: none; }

.MobileNavHamburger, .MobileNavClose
{
    position: absolute;
    right: 15px;
    top: 30px;
	cursor: pointer;
}

.MobileNav
{
	background-color: #ffffff;
	height: 100vh;
	position
}

.MobileNavItem
{
	font-family: "franklin-gothic-urw", sans-serif;
	font-size: 28px;
	line-height: 34px;
	margin-bottom: 30px;
	font-weight: 400;
	text-transform: uppercase;
}

.MobileNavItem .menu-btn {
	display: none;
}

.MobileNavItem A
{
	color: #000000;
    text-decoration: none;	
}

.MobileNavItem A:hover
{
	color: #666666;
}

.MobileTicketNavItem A
{
    border: 1px solid #002fa6;
    padding: 2px 22px;
    color: #582d40 !important;	
}

.MobileTicketNavItem A:hover
{
    border: 1px solid #002fa6;
    background-color: #002fa6;	
    color: #ffffff !important;
}


.SiteContent
{
	background-color: white;

	padding-bottom: 50px;
}

/*
.BodyText
{
	font-size: 17px;
	line-height: 20px;
}
*/


.BenefitBodyLeftText
{
	font-size: 17px;
	line-height: 20px;
	flex-grow: 0;
    width: 50%;
    padding-right: 30px;
}

.BenefitBodyRightText
{
	font-size: 17px;
	line-height: 20px;
	flex-grow: 0;
    width: 50%;
	padding: 0px;
    padding-left: 60px;
}






/****\
 HOME
\****/


.HomeCallouts
{
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;

	margin-bottom: 50px;
}


.HomeCalloutContainer
{
	margin: 0 20px;
	height: 183px;
	 width: calc( 33% - 20px );
	/*width: calc( 50% - 20px );*/
}

@media only screen and (max-width: 800px) 
{
	.HomeCalloutContainer
    {
	    margin: 0 0 50px 0;
	}
}

.HomeCalloutHeader
{
	font-family: 'C';
	font-style: normal;
	font-weight: 600;
	font-size: 18px;
	line-height: 22px;
	letter-spacing: 0.01em;
	text-transform: uppercase;	
	color: #002fa6;

}

.HomeCallout
{
	width: 100%;
	height: 100%;
	background-color: #002fa6; 
	text-align: center;
}

.HomeCalloutContainer A
{
	text-decoration: none;
}

#hero_image { opacity: 0; }
BODY.NoJS #hero_image, BODY.NoJS .LeftHeroText, BODY.NoJS .RightHeroText { opacity: 1; }


section#hero #image {
	background-size: cover; 
	background-position: center; 
	width: 100%; 
	height: 60vw; 
	max-height: 600px; 
	box-sizing: border-box; 
	position: relative;
}
/* section#hero #imagetext h2 span, section#hero #imagetext h3 span {display: none;} */
section#hero #imagetext 
{
	position: relative; 
	z-index:10; 
	width: 100%; 
	height: 100%; 
	max-width: 1440px;
	box-sizing: border-box; 
	margin:0 auto; 
	padding:1.5rem;
}
section#hero #imagetext h2 {position: absolute; bottom: 1.5rem; width: calc(50% - 1rem);}
section#hero #imagetext h3 {position: absolute; bottom: 1.5rem; width: calc(50% - 1rem);right:1.5rem; text-align: right;}
section#hero #imagetext h2 svg {width: calc(120.8% - 1rem); height: auto;}
section#hero #imagetext h3 svg {width: calc(79.2% - 1rem); height: auto;}
section#hero #imagetext svg {width: calc(100% - 3rem); height: auto; position: absolute; bottom: 1.5rem;}
section#hero #text {display: none;}
section#hero #text .container
{
	padding-top: 0px;
	padding-bottom: 10px;
	margin-bottom: -1rem; 
}
section#hero #text h2, section#hero #text h3 {font-family: "franklin-gothic-urw-cond",sans-serif; font-weight: 700; line-height: 1.5rem; text-transform: uppercase; line-height: 85%; color: #002fa6;}
section#hero #text h3 {font-weight: 500; font-size: 1.25rem; line-height:1.35rem; padding-top:10px;}
section#hero #text h2 B {font-weight: 700; font-size: 2rem;}
section#hero #text h3 B {font-weight: 700; font-size: 1.5rem;}
section#hero #text h2 {font-weight: 500; font-size: 1.5rem;  line-height:1.5rem; padding-top:0.25rem;}


section#hero #imagetext .LeftHeroText {position: absolute; width: calc(50% - 1rem);}
section#hero #imagetext .RightHeroText { position: absolute; width: calc(50% - 1rem); right:1.5rem; text-align: right; }

.LeftHeroText { opacity: 0; line-height: 44px; bottom: 24px; }
.RightHeroText { opacity: 0; line-height: 41px; bottom: 24px; }

.LeftHeroText, .RightHeroText
{
	color: #ffffff;
    font-size: 36px;
    text-transform: uppercase;
    font-family: 'franklin-gothic-urw-cond';
    font-weight: 500;
}

.LeftHeroText B, .RightHeroText B
{
    font-size: 48px;
    font-weight: 700;
}

section#hero
{
	overflow: hidden;
}

BODY:not( .NoJS ) section#hero #image
{
    -moz-transition: width 9s, left 9s;
    -webkit-transition: width 9s, left 9s;
    -o-transition: width 9s, left 9s;
    transition: width 9s, left 9s;	
    transition-timing-function: cubic-bezier(.07,.58,.71,.96);

    width: 150%;
    /*height: 120%;*/
    left: -25%;
    /*top: -10%;*/
}

.LoadedHomeImage
{
	width: 100% !important;
	/*height: 100% !important;*/
	left: 0% !important ;
	/*top: 0% !important;*/
}




section#moreinfo .container div {border: 1px solid #666; padding:1.5rem; color: #002fa6;}
section#moreinfo .container {padding: 2.5rem 1.5rem 2.5rem;}
//section p {width: 100%; max-width: 600px; margin:0 auto; text-align: center;font-size: 1.25rem; line-height: 110%;}



.TicketLink
{
	width: 100%;
	background: #002fa6; color: #fff;

	margin-top: 60px;
	margin-bottom: 20px;
	padding: 25px;

	text-align: center;
	font-family: 'C';
	font-style: normal;
	font-weight: normal;
	font-size: 18px;
	line-height: 22px;
	text-align: center;
	letter-spacing: 0.01em;
}

.TicketLink H3
{
	font-weight: bold;
	font-size: 24px;
	line-height: 29px;	
}

.TicketLink:hover
{
	background: #ffffff; color: #002fa6;
	border: 1px solid #002fa6;
	padding-bottom: 23px;
}



.MainHero
{
	z-index: 1;
	width: 100%;
	position: relative;
	margin-bottom: 30px;
	height: 600px;
	overflow: hidden;
}

.MainHeroImagePreload
{
	width: 100%;
	position: absolute;
	top: 0px;
	height: 600px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
  	filter: blur( 4px );
  	-webkit-filter: blur( 4px );	
}

.MainHeroImage
{
		width: 100%;
	position: absolute;
	top: 0px;
	height: 600px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 5;

}





.HomeMainHero
{
	z-index: 1;
	width: 100%;
	position: relative;
	margin-bottom: 30px;
	height: 60vw;
	max-height: 600px;
	overflow: hidden;

    -moz-transition: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;		
}

.HomeMainHeroImagePreload
{
	width: 100%;
	position: absolute;
	top: 0px;
	height: 60vw;
	max-height: 600px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 1;
  	filter: blur( 16px );
  	-webkit-filter: blur( 16px );	
}

.HomeMainHeroImage
{
	width: 100%;
	position: absolute;
	top: 0px;
	height: 60vw;
	max-height: 600px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 5;

}




/************\
 INFORMATION
\************/

.InformationColumn
{
	flex-grow: 0;
	width: 50%;
}

.InformationBox
{
	border: 1px solid #666666; 
	padding: 20px;

	font-size: 17px;
	line-height: 20px;
}

.InformationBox A
{
	color: #333333;
}
.InformationBox A:hover
{
	color: #666666;
}

.InformationBox .Bold, .SideLink .Bold
{
	font-size: 24px;
	line-height: 24px;
	font-weight: 700;
	text-transform: uppercase;
}

.Sponsor
{
    font-family: 'C';
    font-weight: bold;
    font-size: 18px;
    letter-spacing: 0.01em;
    color: #666666;
    margin-bottom: 25px;
    line-height: 32px;
    text-transform: uppercase;
}

.SponsorLogo
{
    position: relative;
    top: 1px;
    width: auto;
}

.Partnership
{
	text-transform: uppercase;
	font-family: 'franklin-gothic-urw-cond', Franklin Gothic, ITC Franklin Gothic, Arial, Sans-serif;
	font-size: 17px;
	line-height: 20px;
	margin-bottom: 20px;
}

.Partnership DIV
{
	margin-bottom: 2px;
}

.Partnership SPAN
{
	font-size: 22px;
	line-height: 22px;
	font-weight: 700;
	color: #666666;
}

.RunOfShow
{
	font-size: 36px;
	line-height: 43px;
	font-weight: 700;
	margin-bottom: 20px;
	text-transform: uppercase;
}

.GalaTicketLink
{
	display: inline-block;
    font-size: 16px;
    line-height: 19px;
    border-bottom: 1px solid #999999;
    height: 18px;
}

.GalaTicketLink:hover
{
	border-bottom: none;
}

.TicketText
{
 	font-size: 16px;
 	line-height: 19px;
 	font-weight: 400;
 	margin-top: 10px;
 	margin-bottom: 20px;
	text-transform: none;	

}


#google_map
{
	width: 100%;
	height: 450px;
	margin-top: 5px;
}


.InfoCalloutsContainer
{
	margin-top: 65px;
	width: 100%;	
	background-color: #002fa6;
	color: #ffffff;
}

.InfoCallouts
{
	width: 100%;
	display: grid;
	grid-template-columns: repeat( 2, 1fr );
	gap: 30px;

    padding-top: 50px;
    padding-bottom: 50px;	
}

.InfoCallout
{
	position: relative;	
	border: 1px solid #ffffff;
	padding: 20px;
	height: 490px;
	text-transform: uppercase;
}

.InfoCallout A
{
	color: #ffffff;
	font-size: 20px;
	text-decoration:none;
}

.InfoCallout A:hover
{
	color: #d8d8d8;
}


.InfoCallout .Bold
{
	font-size: 24px;
	line-height: 24px;
	font-weight: 700;
	text-transform: uppercase;
}


.CalloutImage
{
	width: 100%;
	height: 292px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;	
	margin-bottom: 20px;

}

.CalloutLink
{
	position: absolute;
	bottom: 20px;
	width: calc( 100% - 40px );
	height: 50px;
	padding-top: 13px;
	border: 1px solid #ffffff;

	text-align: center;
}

.InfoCallout:hover .CalloutLink
{
	background-color: #ffffff;
	color: #002fa6;
	stroke: #002fa6;
}

.InfoCallout:hover SVG PATH
{
	stroke: #002fa6;
}


.CovidInfo
{
	width: 100%;
	column-count: 2;
	column-gap: 50px;

	font-weight: 400;
	font-size: 17px;
	line-height: 20px;
}

.SideLink
{
	width: 100%;
	padding: 20px;
	border: 1px solid #666666;
	margin-bottom: 30px;
}

.SuperText
{
	font-size: 24px;
	font-weight: 600;
	line-height: 14px;
	margin-bottom: 10px;
}

A.PrivacyPolicyLink:link, A.PrivacyPolicyLink:visited
{
	font-size: 14px;
    color: #ffffff;
    text-decoration: underline;
}

A.PrivacyPolicyLink:hover
{
    color: #b8b8b8;
    text-decoration: none;
}

/*
.SideLink A
{
	display: inline-block;
 	font-size: 16px;
 	line-height: 19px;
 	border-bottom: 1px solid #666666;
 	padding-top: 6px;
}
*/

a.hoursbutton {
	color: #002fa6;
	text-transform: uppercase;
    border: 2px solid #002fa6;
    padding: 0.6rem 0.7rem 0.2rem;
    text-decoration: none;
    margin: 1rem 1rem 1rem 0;
}

/**********\
 EXHIBITORS
\**********/

.ExhibitorsHeader
{
	font-family: 'C';
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.01em;
	color: #666666;
	margin-bottom: 15px;
	line-height: 32px;
}

.NoExhibitorsBox
{
	width: 100%;
	height: 435px;

	border: 1px solid #666666;

	font-family: 'C';
	font-weight: bold;
	font-size: 36px;
	line-height: 43px;

	display: flex;
	align-items: center;
	letter-spacing: 0.01em;
	text-transform: uppercase;

	color: #002fa6;
}

.NoExhibitorsBox DIV
{
	width: 100%;	
	text-align: center;	
}

.Exhibitors
{
	width: 100%;
	margin-top: 50px;
	display: grid;
	grid-template-columns: repeat( 4, 1fr );
	gap: 30px;
}

.Exhibitor
{
	/*
	float: left;
	width: 2
	min-width: 250px;
	margin-right: 30px;
	*/
	line-height: 15px;
	height: 25px;

	text-align: left;

}

.Exhibitor A
{
	font-family: 'C';
	font-weight: 600;
	font-size: 16px;

	letter-spacing: 0.01em;
	text-transform: uppercase;
	text-decoration: none;

	color: #666666;	
}

.ExhibitorsIntro
{
	font-size: 18px;
    font-weight: 400;
    font-family: 'C', Arial, Sans-serif;	
}




.ProgrammingList
{
	display: grid;
	grid-template-columns: repeat( 3, 1fr );
	gap: 30px;
}

.ProgrammingEntry
{
	border: 1px solid #666666;
	padding: 20px;
}

.ProgrammingEntry A
{
	text-decoration: none;
}

.ProgrammingImage
{
	background-size: cover;
	background-position: center;
	margin-bottom: 15px;
	height: 270px;
}

.ProgrammingEntry H3
{
	font-size: 24px;
	font-weight: 700;
	line-height: 29px;
	text-transform: uppercase;
	margin-bottom: 7px;
}

.ProgrammingEntry .Date, .ProgrammingEntry .Location
{
	font-weight: 500;
	margin-bottom: 7px;
}

.ProgrammingHeader
{
	font-family: 'C';
	font-weight: bold;
	font-size: 36px;
	letter-spacing: 0.01em;
	color: #666666;
	margin-bottom: 30px;
	text-transform: uppercase;
	line-height: 32px;
}

.ProgrammingLeftColumn
{
	float: left;
	width: calc( 100% - 470px );
}

.ProgrammingRightColumn
{
	float: right;
	width: 440px;
	font-size: 24px;
	font-weight: 600;
	padding-top: 38px;
}

.ProgrammingLeftColumn H3, .ProgrammingRightColumn H3
{
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
}

.ProgrammingIntroVideoContainer
{
	height: 515px;
    margin-top: 25px;
    margin-bottom: 25px;
}

.ProgrammingIntroVideoContainer IFRAME { position: relative !important; }


.BackLinkContainer
{
	text-decoration: none;
}

.BackLink:hover
{
	border-bottom: 1px solid #8d8d8d;
}


.BackLink
{
	color: #999999;
	font-weight: 700;
	font-size: 20px;
	margin-bottom: 15px;
    width: 198px;
    height: 24px;
}

.BackLink SVG
{
	position: relative;
	top: 1px;
	margin-right: 5px;
}

.ProgrammingText
{
	width: 90%;
	column-count: 2;
	column-gap: 30px;
	column-fill: auto;	
	min-height: 150px;
}

.ProgrammingDescription DIV:not( .fluid-width-video-wrapper )
{
	width: 950px;
	margin-top:10px;
}

.fluid-width-video-wrapper
{
	width: 100% !important;
}

.ProgrammingLink {
    width: 100%;
    border: 1px solid #666666;
    text-align: left;
    padding: 20px;
    line-height: 26px;
    text-transform: uppercase;
    cursor: pointer;
    margin-bottom: 35px;

}

.ProgrammingLink A
{
   	text-decoration: none;	
}



.PressSection
{
	margin-bottom: 55px;
}

.PressItemsContainer
{
	display: grid;
	grid-template-columns: repeat( 4, 1fr );
	gap: 30px; 
}

.PressItem
{
	padding: 20px;
	height: 400px;
	border: 1px solid #666666;
    font-size: 18px;
    line-height: 20px;
}

.PressItem A
{
	text-decoration: none;
}

.PressImage
{
	height: 190px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;	
	margin-bottom: 20px;
}

.PressItem H3
{
	text-transform: uppercase;
	font-size: 24px;
	font-weight: 700;
	line-height: 29px;
	margin-bottom: 5px;
}

.PressDate
{
	font-size: 16px;
	font-weight: 500;
}

.PressInquiries
{
	width: 50%;
	border: 1px solid #666666;
	padding: 20px;
	font-size: 18px;
	line-height: 20px;
}

.PressContact
{
	float: left;
	width: 50%;
}


.Home ~ footer p.photo-credit {
    display: none;
}

.sponsorship-levels .level {
    padding: 1.5rem;
	width:23.5%;
    border: solid 1px black;
    margin-bottom: 1.5rem;
}

.sponsorship-levels a {
    text-decoration: none;
}

.sponsorship-levels h3 {
    text-transform: uppercase;
    font-weight: 600;
}

.sponsorship-levels .level p {
    font-size: 1.125rem;
}

.additional-info p {
    text-align: center;
    font-size: 18px;
}

.donors.container {
    margin: 1.5rem auto;
}

.donors > h3, .donors > p {
    text-align: center;
}

.donors > h3 {
    font-weight: 700;
    font-size: 1.8rem;
    margin-bottom: 1rem;
}	

.donors > div {
    margin: 1.5rem auto;
	padding: 1.5rem;
    border: solid 1px black;
}

.donors h4 {
	font-size: 1.4rem;
    font-weight: 500;
}

.donors h5 {
    font-weight: 500;
}

footer {background: #002fa6; color: #fff;}
footer .container {padding:3rem 1.5rem; padding-top: 30px;}
footer div.flexcontainer {display: flex; align-items: flex-end;}

footer h1 {}
footer h1 a span {display: none;}
footer h1, footer h2, footer h3, footer h4 {font-family: "franklin-gothic-urw-cond",sans-serif; font-weight: 700; text-transform: uppercase;}
footer span, footer h4 {font-weight: 500;}

footer h1 {font-size:0; line-height: 85%;}
footer h2 {font-size:1.75em; line-height: 85%;padding-top:0.25rem;}
footer h3 {font-size:22px; line-height: 45%;padding-top:10px;}
footer h4 {font-size:1em; line-height: 85%;padding-top:0.25rem;}
footer span {
	font-size: 14px;
	letter-spacing: 0.05rem;
	line-height: 22px;
}
footer div.copyright p {font-size: 60%; line-height: 100%;}
footer div.copyright p:first-child {text-transform: uppercase;padding-bottom: 0.25rem;}
footer div.copyright {width: 100%; border-top: 1px solid #fff; margin-top:2rem; padding:1.5rem 0 0;}

footer a h3, footer .partnership a {color: #fff; text-decoration: none; transition: none;}

footer .logo svg {height: 8rem; width: 110px; margin-right: 20px; }

footer .partnership {padding-left: 1.5rem;	    position: relative;
	    top: -5px;}
footer .partnership h3 span {display: block;}
footer .partnership h3 {padding-bottom: -3px;}
footer .partnership h3 a {transition: box-shadow 0.25s; line-height:18px;}
footer .partnership a:hover {box-shadow:inset 0 -1px #002fa6, inset 0 -2px #FFF; color:#ffffff;}



.FooterInfo
{
	margin-left: 50px;
	color: #ffffff;
	    position: relative;
	    top: 8px;
}

.FooterInfo H2, .FooterInfo H3
{
	font-size: 14px;
	font-weight: 500;
	line-height: 17px;
}

.FooterInfo H3 {
    line-height: 20px;
}

.FooterInfo H2 B, .FooterInfo H3 B
{
	font-size: 22px;
	font-weight: 700;
}

.CovidLink:link, .CovidLink:visited
{
	font-size: 17px;
	color: #ffffff;
	text-decoration: underline;
}
a.CovidLink:link:hover, .CovidLink:visited:hover
{
	color: #c8c8c8 !important;
	text-decoration: none;
}


.flexbreak
{
	display: none;
}



@media only screen and (max-width: 1440px) 
{
	section#hero #imagetext { max-width: 98vw; }

	.ProgrammingIntroVideoContainer { height: 37vw; margin-top: 15px; margin-bottom: 15px;}

}


@media only screen and (max-width: 1350px) 
{
	.PressInquiries
	{
		width: 60%;
	}
}

@media only screen and (max-width: 1200px) 
{
	.InfoCallouts
	{
		grid-template-columns: repeat( 2, 1fr );
		gap: 30px;
	}

	.PressItemsContainer
	{
		display: grid;
		grid-template-columns: repeat( 3, 1fr );
		gap: 30px; 
	}	

	.ProgrammingDescription DIV:not( .fluid-width-video-wrapper )
	{
		width: 70%;
	}

	.ProgrammingIntroVideoContainer { height: 32vw; }
}


@media only screen and (max-width: 1100px) 
{

	.PressInquiries
	{
		width: 80%;
	}

	.Exhibitors
	{
		grid-template-columns: repeat( 3, 1fr );
	}	

	footer .partnership { font-size: 17px; }
	footer H3 { font-size: 22px; }

}


@media only screen and (max-width: 1045px) 
{
	.NavItem
	{
		display: none;
	}

	.MobileNavHamburger	
	{
		display: block;
	}	

	.ProgrammingIntroVideoContainer { height: 28vw; }
}


@media only screen and (max-width: 1000px) {

	.ProgrammingList
	{
		display: grid;
		grid-template-columns: repeat( 2, 1fr );
		gap: 30px;
	}

	.ProgrammingLeftColumn
	{
		float: left;
		width: calc( 100% - 350px );
	}

	.ProgrammingRightColumn
	{
		float: right;
		width: 320px;
		font-size: 24px;
		font-weight: 600;
	}	

	.ProgrammingText
	{
		column-count: 1;
		column-gap: 30px;
		column-fill: auto;	
		height: auto;
	}

	.ProgrammingDescription DIV:not( .fluid-width-video-wrapper )
	{
		width: 80%;
	}

}

@media only screen and (max-width: 950px) 
{
	.LeftHeroText, .RightHeroText { font-size: 30px; }
	.LeftHeroText B, .RightHeroText B { font-size: 42px; }
	
	.LeftHeroText { line-height: 36px; bottom: 24px; }
	.RightHeroText { line-height: 35px; bottom: 22px; }


	.InformationContainer, .FlexRow
	{
		display: block;
	}

	.InformationColumn
	{
		flex-grow: 0;
		width: 100%;
	}

	.FooterInfo
	{
		margin-left: 30px;
	}


	.BenefitBodyLeftText, .BenefitBodyRightText
	{
		width: 100%;
		padding: 0px;
	}

	.ProgrammingIntroVideoContainer { height: 32vw; }


}



/****** MAIN MOBILE WIDTH *****/

@media only screen and (max-width: 870px) 
{

	li.MobileNavItem .menu-btn:checked ~  ul.dropdown-menu {
		max-height: 600px;
	}
	
	.LeftHeroText, .RightHeroText { font-size: 26px; }
	.LeftHeroText B, .RightHeroText B { font-size: 36px; }
	
	.LeftHeroText { line-height: 36px; bottom: 24px; }
	.RightHeroText { line-height: 33px; bottom: 24px; }

	.InformationColumn span {
    	font-size: .909rem;
    	line-height: 1.091rem;
	}

	.CovidInfo
	{
		column-count: 1;
	}

	.Exhibitors
	{
		grid-template-columns: repeat( 2, 1fr );
		gap: 15px;
	}	

	.Exhibitor
	{
		height: 35px;

	}

	.PressItemsContainer
	{
		display: grid;
		grid-template-columns: repeat( 2, 1fr );
		gap: 20px; 
	}	



	.ProgrammingLeftColumn
	{
		float: left;
		width: 100%;
	}

	.ProgrammingRightColumn
	{
		float: left;
		width: 100%;
		font-size: 24px;
		font-weight: 600;
	}

	.ProgrammingDescription DIV:not( .fluid-width-video-wrapper )
	{
		width: 80%;
	}

	.ProgrammingIntroVideoContainer { height: 52vw; }


	.PressContact
	{
		float: none;
		width: 100%;
		margin-bottom: 15px;
	}	

	.sponsorship-levels div.level {
    	width: 47%;
		padding: 0.7rem 0.9rem;
	}
	
	.sponsorship-levels div.level h3 {
    	font-size: .8rem;
    	line-height: .95rem;
	}
	
	.sponsorship-levels .level h4 {
  	    font-size: .7rem;
  	    line-height: .835rem;
	}
	
	.sponsorship-levels .level p {
        font-size: .575rem;
    	line-height: .625rem;
    	color: black;
	}

	footer .partnership h3 span {display: block;}
}


@media only screen and (max-width: 800px) 
{

	.PressInquiries
	{
		width: 90%;
	}


	.HomeCallouts
	{
		display: block;
	}

	.HomeCalloutContainer
	{
		/* height: 211px;*/
		height: 183px;

		width: 100%;
		margin-bottom: 50px;
	}


	.InfoCallouts
	{
		grid-template-columns: repeat( 1, 1fr );
	}	


	footer DIV.flexcontainer
	{
		display: flex;
		flex-wrap: wrap;
	}

	footer .flexbreak
	{
		display: block;
		  flex-basis: 100%;
		  height: 0;
	}


	.FooterInfo
	{
		margin-left: 0px;
		margin-top: 30px;
	}	

	footer .partnership
	{
		width: 60%;
		padding-left: 0px;
	}
}

@media only screen and (max-width: 750px) 
{
	.ProgrammingList
	{
		display: grid;
		grid-template-columns: repeat( 1, 1fr );
		gap: 20px;
	}

	.LeftHeroText, .RightHeroText { font-size: 24px; }
	.LeftHeroText B, .RightHeroText B { font-size: 32px; }
	
	.LeftHeroText { line-height: 28px; bottom: 24px; }
	.RightHeroText { line-height: 27px; bottom: 24px; }
	

	.ProgrammingDescription DIV:not( .fluid-width-video-wrapper ) {
	    width: 100%;
	}

	.MainHero, .MainHeroImage, .MainHeroImagePreload
	{
		height: 240px;
	}


	#top_nav_logo
	{
		width: 63%;
	}	

	#top_nav_logo:hover SVG
	{
		fill: #002fa6;
	}

	/*switch all margins to 1rem instead of 1.5*/
	.container {padding:1rem 1rem;}
	header .container {padding: 1rem 1rem 1rem; }
	section#moreinfo .container {padding: 1rem 1rem 1rem;}
section#hero #text .container
{
	padding-top: 0px;
	padding-bottom: 10px;
	margin-bottom: -1rem; 
}
	section#moreinfo .container div {padding:1rem 1rem;}
	section#moreinfo .container  {padding:2rem 1rem;}
}


@media only screen and (max-width: 650px) 
{
	section#hero #text .container
	{
		padding-top: 2px;
		padding-bottom: 30px;
		margin-bottom: -1rem; 
	}	
	section#hero #imagetext {display: none;}
	section#hero #text {display: block;}
	section#moreinfo .container  {padding:1.5rem 1rem 2rem;}
	section p {font-size: 1.125rem; line-height: 110%;}

	.Exhibitors
	{
		/*grid-template-columns: repeat( 1, 1fr );
		gap: 15px;*/
		display: block;
		grid-template-columns: none;
	}

	.Exhibitor
	{
		/*height: 20px;*/
		height: auto;
		margin-bottom: 15px;

	}

	.Exhibitor A
	{
		font-size: 18px;
	}

	.logo
	{
		margin-bottom: 15px;
	}

	footer .partnership h3 {
	    font-size: 18px;
	}

	footer .partnership h3 span {
	    font-size: 13px;
	}

	footer span {
    	line-height: 14px;
    }

	.FooterInfo H2 B, .FooterInfo H3 B {
	    font-size: 18px;
	}

}

@media only screen and (max-width: 550px) 
{
	.PressItemsContainer
	{
		display: grid;
		grid-template-columns: repeat( 1, 1fr );
		gap: 20px; 
	}	
}

@media only screen and (max-width: 450px) {
	footer .logo svg {height: 6rem; width: auto;}
}
@media only screen and (max-width: 425px) {
	footer .logo svg {height: 5.5rem; width: auto;}
	footer div.flexcontainer {display: block;}
	footer .partnership {padding-left: 0;}
}
@media only screen and (max-width: 350px) {

	.InfoCallout .Bold
	{
    	font-size: 20px;
    	line-height: 23px;
    }


	footer .logo svg {height: 5rem; width: auto;}
	
}