/*
Theme Name: Andy Warhol Museum - "Hester"
Theme URI: http://warhol.org
Author: Spellerberg Associates
Author URI: http://martyspellerberg.com
*/

html { font-size: 62.5%; }
html.mouseuser * { outline: none; }

body { font-family: 'Roboto', sans-serif; margin: 0; padding: 0; font-size: 2rem; line-height: 1.3333333333; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
body.haslightbox { overflow: hidden; }

body:after{ display:none; content: url('images/closemenu-black.svg') url('images/closemenu-white.svg') url('images/logo-white.svg') url('images/menu-black.svg') url('images/menu-white.svg') url('images/search-white.svg') url('images/tray-close.svg'); } /* Preload images*/

.scrollingcontent { width: 100%; position: relative; }

header { overflow: hidden; }

a { text-decoration: none; }

a:hover,
	a:active { outline: none; }

button,
 	input[type="button"] { cursor: pointer; }

[data-whatinput="keyboard"] a:focus,
	[data-whatinput="keyboard"] button:focus,
	[data-whatinput="keyboard"] #s:focus,
	[data-whatinput="keyboard"] #s2:focus { outline: .5rem solid; outline-offset: .5rem; box-shadow: transparent none; border: 0 none; }

[data-whatinput="mouse"] *:focus { outline: transparent none; box-shadow: none; }

img { max-width: 100%; }

figure { margin: 0; padding: 0; }
figure .figurepadding { line-height: 0; position: relative; text-align: center; }
figure .mask { position: absolute; top: 0; bottom: 0; left: 0; right: 0; }

figure.installation .sizelimit { max-width: 100rem; max-height: 100rem; margin: auto; }

figcaption { font-size: 1.2rem; line-height: 1.3333333333; text-align: left; }
figcaption p { margin: 0; }

iframe { border: 0; }

sup { vertical-align: top; position: relative; top: -0.2em; font-size: .8em; }
sup.cmoa-footnotes__index a:before {content:"[";}
sup.cmoa-footnotes__index a:after {content:"]";}

.screen-reader-text, .sr-only { clip: rect(1px, 1px, 1px, 1px); clip-path: polygon(0px 0px, 0px 0px,0px 0px, 0px 0px); position: absolute !important; white-space: nowrap; height: 1px; width: 1px; overflow: hidden; }
.screen-reader-text.focus-visible:focus { clip: auto; clip-path: none; height: auto; width: auto; top: 1rem; left: 1rem; padding: 1rem; border-width: .5rem; border-style: solid; z-index: 10; outline: none; }

.passwordform { height: 66vh; display: flex; align-items: center; justify-content: center; text-align: center; }

.headeralerts {overflow: hidden; }
.headeralerts .covid19alert { margin: 1rem 2rem; }

ul.plain { list-style-type: none; margin: 0; padding: 0;}

/* Top Nav */

.headerouter { position: relative; }

header { text-align: center; margin: 0 auto; }
header .headerwrap { overflow: hidden; }
header .logo { margin: auto; max-width: 60rem; }
header .logo .padding { padding: 3rem 2rem 1rem 2rem; }
header .logo a { display: block; position: relative; background-repeat: no-repeat; background-size: contain; }
[data-whatinput="keyboard"] header .logo a:focus { outline-offset: -.5rem; }
header .logo .ratio { display: block; padding-top: 11.7857142857%; }

.aqua .siteheader .logo a { background-image: url('images/logo-aqua.svg'); }
.blue .siteheader .logo a { background-image: url('images/logo-blue.svg'); }
.green .siteheader .logo a { background-image: url('images/logo-green.svg'); }
.orange .siteheader .logo a { background-image: url('images/logo-orange.svg'); }
.purple .siteheader .logo a { background-image: url('images/logo-purple.svg'); }
.red .siteheader .logo a { background-image: url('images/logo-red.svg'); }
.rose .siteheader .logo a { background-image: url('images/logo-rose.svg'); }
.salmon .siteheader .logo a { background-image: url('images/logo-salmon.svg'); }

.navheader .logo a { background-image: url('images/logo-white.svg'); }
.siteheader.exhibitionheader .logo a { background-image: url('images/logo-white.svg'); }

.toptabs { padding-bottom: 1rem;  max-width: 32rem; margin: auto; }
.toptabs ul { margin: 0 auto; padding: 2rem 0; list-style: none; }
.toptabs li { padding: 0 .7rem; margin: 0; display: none; }

.toptabs button { border-style: solid; border-color: transparent; border-width: 0 0 .1rem 0; font-size: 2.2rem; font-family: inherit; background: transparent; padding: 0; cursor: pointer; position: relative; z-index: 1; }

.toptabs li.menuitem { display: inline-block; }
.toptabs li.menuitem span { padding-right: .6rem; width: 1.8rem; height: 1.8rem; top: .2rem; position: relative; display: inline-block; background-image: url('images/menu-black.svg'); background-repeat: no-repeat; background-size: contain; }
.haslightbox .toptabs li.menuitem span { background-image: url('images/closemenu-black.svg'); }

.toptabs li.menuitem button.selected { border-bottom: none; }
.toptabs li.menuitem button.selected span { background-image: url('images/closemenu-white.svg'); }

.exhibitionheader .toptabs li.menuitem button span { background-image: url('images/menu-white.svg'); }
.haslightbox .exhibitionheader .toptabs li.menuitem button span { background-image: url('images/closemenu-black.svg'); }

.titleimage figure { line-height: 0; position: relative;}


@media screen and (min-height: 43.75em) { /* 700px */
	.topnavheightcue { float: right; }
}

@media screen and (min-width: 43.75em) { /* 700px */

	header .logo .padding { padding: 2rem 3rem 1.8rem 3rem; }

	.toptabs { max-width: none; }
	.toptabs ul { padding: 0 0 .65rem 1rem; }
	.toptabs li { padding: 0 2rem 0 0; display: inline-block; }
	.toptabs button { font-size: 2.5rem; border-width: 0 0 .2rem 0; }

	.toptabs li.menuitem { display: none; }

	.toptabs li.searchitem { position: relative; padding: 0 0 0 .2rem; top: -.1rem; }
	.toptabs li.searchitem button { vertical-align: text-top; border-width: 0 0 .2rem 0; position: relative;  display: inline-block; background-image: url('images/search-black.svg'); background-repeat: no-repeat; background-size: contain; width: 2.35rem; height: 2.35rem; top: .4rem; }

	.navheader .toptabs li.searchitem button { background-image: url('images/search-white.svg'); }
	.navheader .toptabs li.searchitem button.selected { border-color: transparent; }

	.exhibitionheader .toptabs li.searchitem button { background-image: url('images/search-white.svg'); }

	.topnavwidthcue { float: right; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	header .logo .padding { padding: 3rem 3rem 1.8rem 3rem; }

	.imageheader { position: absolute; top: 0; left: 0; right: 0; z-index: 1; background: -moz-linear-gradient(top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); background: -webkit-linear-gradient(top, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); background: linear-gradient(to bottom, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=0 ); }
	.siteheader .imageheader .logo a { background-image: url('images/logo-white.svg'); }

	.siteheader .imageheader .toptabs li.searchitem button { background-image: url('images/search-white.svg'); }

}

@media screen and (min-width: 75em) { /* 1200px */

	header .logo { max-width: none; width: 50%; float: left; }
	header .logo .padding { padding: 3rem 1.5rem 0 2.7rem; }

	.toptabs ul { float: right; padding: 4.2rem 2.9rem 0 0; }
	.toptabs li { padding: 0 2.3rem 0 0; }

	.toptabs li.searchitem { padding: 0; top: 0; }
	.toptabs li.searchitem button { width: 2.4rem; height: 2.4rem; top: .35rem; float: right; }

}

@media screen and (min-width: 112.5em) { /* 1800px */
	.toptabs ul { padding: 5.5rem 2.9rem 0 0; }
	.toptabs button { font-size: 3rem; }
}


/* Accordions */

.accordion.js { clear: both; width: 100%; }
.accordion.js .toggle { display: block; border: 0 none; visibility: visible; text-align: left; }

.accordion.always.js > .toggle,
	.accordion.multi.js > .listitem .toggle { width: 100%; box-sizing: border-box; background: transparent; margin: 0; cursor: pointer; position: relative; font-family: "Roboto",sans-serif; padding: 0; clear: both; }

.vtray .accordion.multi.js > .listitem { border-width: 0.2rem 0 0 0; border-style: solid; float: left; width: 100%; }

.accordion.always.js > .toggle button,
	.accordion.multi.js > .listitem button.toggle { margin: 0;  font-weight: normal; background: transparent; position: relative; width: 100%; height: 100%; cursor: pointer; font-size: 2.2rem; line-height: 1.3636363636;  padding: 1.6rem 3rem 1.2rem 4.65rem; }

.accordion.always.js > .toggle button.toggle::before,
	.accordion.multi.js > .listitem .toggle button.toggle::before { background: #fff none repeat scroll 0 0; content: ""; height: .2rem; left: 2rem; position: absolute; top: 50%; width: 1.2rem; }

.accordion.always.js > .toggle button.toggle::after,
	.accordion.multi.js > .listitem .toggle button.toggle::after { background: #fff none repeat scroll 0 0; content: ""; height: .2rem; left: 2rem; position: absolute; top: 50%; transform: rotate(90deg); width: 1.2rem; }

.accordion.always.js button.toggle[aria-expanded=true]::after { transform: rotate(180deg) !important; }

[data-whatinput="keyboard"] .accordion.always.js > .toggle button.toggle:focus,
	[data-whatinput="keyboard"] .accordion.multi.js > .listitem .toggle button.toggle:focus { outline-offset: -1rem; }

.accordion.always.js > .content,
	.accordion.multi.js > .listitem > .content { clear: both; width: 100%; box-sizing: border-box; float: left; border: 0 none; outline: 0 none; box-shadow: transparent none; }

.accordion.js > .content,
	.accordion.js > .listitem > .content { border: 0 none; outline: 0 none; box-shadow: 0 none; }

.accordion > .content > * { max-width: 100%; }

.accordion.js > [aria-hidden=false]  > * { opacity: 1; }


/* Lightbox */

.lightbox { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; display: none; z-index: 100; }

.lightbox .box { height: 100%; overflow: auto; position: relative; overflow-y: scroll; -webkit-overflow-scrolling: touch; }
.lightbox .boxmargin { margin: auto; overflow: hidden; }

.lightbox .subnavwrap { position: relative; }

.lightbox .subnav { font-size: 4.5rem; line-height: .9em; text-align: center; clear: both; padding: 11.7rem 3rem ; }
.lightbox .subnav ul { list-style: none; margin: 0; padding: 0;  }
.lightbox .subnav li { margin: 0; padding-bottom: .22em; }

.lightbox .searchpadding { max-width: 90rem; margin: 0 auto; }

.lightbox #s,
	.lightbox #s2 { font-size: 2.2rem; width: calc(100% - 5rem); padding: 0; text-align: left; clear: both; background: transparent; border: none; font-family: 'Roboto', sans-serif; }

.lightbox #submitbutton,
	.lightbox #submitbutton2 { background: transparent; border: none; cursor: pointer; position: relative; top: .6rem; padding: 0; }

.lightbox #submitbutton .icon,
	.lightbox #submitbutton2 .icon { width: 2.2rem; height: 2.2rem; background-image: url('images/search-white.svg');  display: inline-block;background-repeat: no-repeat; background-size: contain; }

.lightbox #submitbutton .buttonlabel,
	.lightbox #submitbutton2 .buttonlabel { display: none; }

.lightbox .closebutton { text-align: center; clear: both; height: 4.65rem; }
.lightbox .close { font-family: 'Roboto', sans-serif; opacity: 1; position: relative; font-size: 2.3rem; background: transparent; border: none; cursor: pointer; padding: 0 0 0 2.75rem; }
.lightbox .close::before { content: ""; position: absolute; top: 1.2rem; left: 0; height: .2rem; width: 1.6rem; background: #fff; transform:rotate(45deg); }
.lightbox .close::after { content: ""; position: absolute; top: 1.2rem; left: 0; height: .2rem; width: 1.6rem; background: #fff; transform:rotate(-45deg); }

.menusubnav { font-size: 3.5rem; line-height: .9em; text-align: left; clear: both; padding: 0; }
.menusubnav ul { list-style: none; margin: 0; padding: 0;  }
.menusubnav li { margin: 0; padding-bottom: .22em; }

.menusubnav .accordionitem { border-width: .2rem 0 0 0; border-style: solid; }

.menusubnav .accordionitem h2 { font-size: 2.2rem; line-height: 1.3636363636; font-weight: 400; margin: 0; padding: 2rem; cursor: pointer; }
.menusubnav .accordionitem h2 span.icon:before { content: '\2013'; float: left; text-indent: -3rem; }
.menusubnav .accordionitem.closed h2 span.icon:before { content: '+'; }
.menusubnav .accordionitem h2 span.title { margin-left: 3rem; display: inline-block; }

.menusubnav .accordionpadding { padding: 0 2rem 3rem 2rem; }

.menusubnav .accordionpadding:before,
	.menusubnav .accordionpadding:after { content:""; display:table; clear:both; }

.menusubnav .submenusearch { border-width: .2rem 0 0 0; border-style: solid; padding: .7rem 0 2rem 5rem; clear: both; }
#menunav .subnavwrap .menusubnav .accordion .listitem > .toggle button.toggle { border-width: .2rem 0 0 0; border-style: solid; padding: 2rem 0 2rem 5rem; }

#menunav .subnavwrap .menusubnav .accordion.always.js > .toggle button.toggle::before,
	#menunav .subnavwrap .menusubnav .accordion.multi.js > .listitem .toggle button.toggle::before { height: .2rem; left: 2.2rem; width: 1.2rem; }

#menunav .subnavwrap .menusubnav .accordion.always.js > .toggle button.toggle::after,
	#menunav .subnavwrap .menusubnav .accordion.multi.js > .listitem .toggle button.toggle::after { height: .2rem; left: 2.2rem; width: 1.2rem; }

@media screen and (min-height: 43.75em) and (min-width: 31.25em) { /* 700px, 500px */

	.lightbox .boxmargin { position: relative; height: 100%; }
	.lightbox .subnav { padding: 0 3rem; width: 100%; display: flex; justify-content: center; align-items: center; box-sizing: border-box; }

}

@media screen and (min-width: 25em) { /* 400px */

	.lightbox .subnav { font-size: 5.5rem; }
	.menusubnav { font-size: 4.5rem; }

}

@media screen and (min-width: 43.75em) { /* 700px */

	.lightbox .subnav { font-size: 7.5rem; }

	.lightbox #s,
		.lightbox #s2 { font-size: inherit; max-width: 45rem; font-size: 6rem; }

	.lightbox #submitbutton,
		.lightbox #submitbutton2 { top: 1rem; }

	.lightbox #submitbutton .icon,
		.lightbox #submitbutton2 .icon { width: 5.5rem; height: 5.5rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.lightbox .subnav { font-size: 8.5rem; }

	.lightbox #s,
		.lightbox #s2 { font-size: inherit; max-width: 70rem; font-size: inherit; }

	.lightbox #submitbutton,
		.lightbox #submitbutton2 { top: 1.4rem; }

	.lightbox #submitbutton .icon,
		.lightbox #submitbutton2 .icon { width: 8rem; height: 8rem; }

}


/* Main */

main { border: 0 none; clear: both; outline: medium none; overflow: hidden; }


/* Event Titles */

.title-event { overflow: hidden; text-align: center; margin: 1.7rem 0 1.9rem 0; }
.title-event.color { margin: 0; padding: 1.7rem 0 1.9rem 0; }

.title-event .titleimage {  margin: 2rem 0 0 0; padding: 0 2rem; }

.title-event .titleimagepadding { max-width: 47.5rem; margin: 0 auto; }
.title-event figcaption { padding: 1rem 0 0 0; }

.title-event .titletext { padding: 0 2rem; }
.title-event .titletextpadding { overflow: hidden; }

.title-event h1 { font-size: 3rem; line-height: 1.2; margin: 0; letter-spacing: .005em; }
.title-event .eventstatus { font-size: 2.2rem; margin: 0 0 .65rem 0; display: block; font-weight: normal; line-height: 1.333; letter-spacing: 0; }
.title-event .captionoffset { display: none; }
.title-event .eventseries { font-size: 1.8rem; margin: 0; }
.title-event .eventdate { font-size: 1.8rem; margin: 0; }

@media screen and (min-width: 43.75em) { /* 700px */

	.title-event { display: flex; justify-content: center; align-items: center; }
	.title-event .titleimage { padding: 0 1rem 0 2rem; width: 50%; float: left; box-sizing: border-box; order: 1;}
	.title-event figcaption { padding: 2rem 0 0 0; }
	.title-event .titletext { padding: 0 3rem; }
	.title-event .titletext.hasimage { padding: 0 2rem 0 1rem; width: 50%; float: right; box-sizing: border-box; order: 2;}
	.title-event .captionoffset { display: block; }


}

@media screen and (min-width: 56.25em) { /* 900px */

	.title-event .titleimage { padding: 0 1.5rem 0 3rem; }
	.title-event .titletext.hasimage { padding: 0 3rem 0 1.5rem; }

	.title-event h1 { font-size: 3.6rem; line-height: 1.125; }
	.title-event .eventstatus { font-size: 2.2rem; line-height: 1.33333; margin: 0 0 .9rem 0; }
	.title-event .eventdate {  font-size: 2.2rem; margin: 1rem 0 0 0; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.title-event { margin: 6.7rem 0 3rem 0; }
	.title-event.color { margin: 0; padding: 6.7rem 0 3rem 0; }

	.title-event h1 { font-size: 5rem; line-height: 1.125; }
	.title-event .eventstatus { font-size: 3rem; line-height: 1.12; margin: 0 0 1.6rem 0; }
	.title-event .eventdate {  font-size: 3rem; margin: 1.7rem 0 0 0; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.title-event { margin: 14.7rem 0 11rem 0; }
	.title-event.color { margin: 0; padding: 14.7rem 0 11rem 0; }

	.title-event h1 { font-size: 7rem; line-height: 1.2; }

	.title-event .eventstatus,
		.title-event .eventdate { font-size: 5rem; }

}

/* Exhibition Titles */

.title-exhibition { overflow: hidden; text-align: center; padding: 3rem 0 4rem 0; }

.title-exhibition .titleimage {  padding: 2em 2em 0 2rem; }

.title-exhibition .titleimagepadding { max-width: 47.5rem; margin: 0 auto; }
.title-exhibition figcaption { padding: 1rem 0 0 0; }

.title-exhibition .titletext { padding: 0 2rem; }
.title-exhibition .titletextpadding { overflow: hidden; }

.title-exhibition h1 { font-size: 3rem; line-height: 1.2; margin: 0 0 2rem; }
.title-exhibition .eventstatus { font-size: 2.2rem; margin: 0; display: block; font-weight: normal; line-height: 1.333;}
.title-exhibition .captionoffset { display: none; }

@media screen and (min-width: 43.75em) { /* 700px */
	.title-exhibition h1 { font-size: 4rem; line-height: 1.125; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.title-exhibition { display: flex; justify-content: center; align-items: center; }
	.title-exhibition .titleimage { padding: 0 1.5rem 0 3rem; width: 50%; float: left; box-sizing: border-box; order: 1;}
	.title-exhibition figcaption { padding: 1rem 0 0 0; }
	.title-exhibition .titletext { padding: 0 3rem; }
	.title-exhibition .titletext.hasimage { padding: 0 3rem 0 1.5rem; width: 50%; float: right; box-sizing: border-box; order: 2;}
	.title-exhibition .eventstatus { font-size: 3.5rem; }
	.title-exhibition .captionoffset { display: block; }
}

@media screen and (min-width: 75em) { /* 1200px */
	.title-exhibition h1 { font-size: 5rem; }
	.title-exhibition .eventstatus { font-size: 4rem; }
}

@media screen and (min-width: 112.5em) { /* 1800px */
	.title-exhibition h1 { font-size: 7rem; line-height: 1.2; }
	.title-exhibition .eventstatus { font-size: 5rem; }
}

/* Page Titles */

.title-page h1 { margin: 4rem 2rem 5rem 2rem; font-size: 4rem; line-height: 1.125; letter-spacing: -0.023em; font-weight: 400; text-align: center; }

@media screen and (min-width: 43.75em) { /* 700px */
	.title-page h1 { margin: 9rem 3rem 5rem 3rem; font-size: 6rem; line-height: 1.0833333333; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.title-page h1 { font-size: 8rem; line-height: 1.0625; }
}

@media screen and (min-width: 75em) { /* 1200px */
	.title-page h1 { margin: 15rem 3rem 10rem 3rem; font-size: 10rem; line-height: 1.1; }
}

@media screen and (min-width: 87.5em) { /* 1400px */
	.title-page h1 {font-size: 12rem; line-height: 1.0416666667; }
}

@media screen and (min-width: 112.5em) { /* 1800px */
	.title-page h1 { font-size: 16rem; line-height: 1.03125; }
}


/* Calendar Title */

.title-calendar span { display: none; }
.title-calendar h1 { margin: 0; padding: 0 2rem; font-weight: 400; font-size: 1.8rem; text-align: center; line-height: 1.3888888889; text-transform: uppercase; }


@media screen and (min-width: 43.75em) { /* 700px */

	.title-calendar { padding: 1.9rem 0; }
	.title-calendar span { display: block; font-size: 6rem; text-align: center; width: 100%; padding-bottom: 3.3rem; }
	.title-calendar h1 { padding: .4rem 0 1rem 0; border-width: 0 0 .3rem 0; border-style: solid; font-size: 2.2rem; margin-bottom: }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.title-calendar { padding: 4.3rem 0 1.9rem 0; }
	.title-calendar span { font-size: 8rem; padding-bottom: 5.9rem; }
	.title-calendar h1 { padding: 0 0 3.15rem 0; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.title-calendar { padding: 8.8rem 0 3.7rem 0; }
	.title-calendar span { font-size: 10rem; padding-bottom: 8rem; }
	.title-calendar h1 { font-size: 3rem; padding: 0 0 5rem 0; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.title-calendar { padding: 6.3rem 0 1.9rem 0; }
	.title-calendar span { font-size: 16rem; padding-bottom: 5.1rem; }
	.title-calendar h1 { font-size: 3.6rem; padding: 0 0 4.5rem 0; }

}


/* Subtle Titles*/

.title-subtle h1 { margin: 3.2rem 0; padding: .8rem 0 1rem 0; font-weight: 400; font-size: 1.8rem; text-align: center; line-height: 1.3888888889; border-width: 0 0 .2rem 0; border-style: solid; text-transform: uppercase; }
.title-subtle h2 { margin: 0 0 3.2rem 0; padding: .8rem 0 1rem 0; font-weight: 400; font-size: 1.8rem; text-align: center; line-height: 1.3888888889; border-width: 0 0 .2rem 0; border-style: solid; text-transform: uppercase; }
.block-introtext.color + .title-subtle { margin-top: 3.2rem; }

.title-subtle span { display: none; }



@media screen and (min-width: 43.75em) { /* 700px */

	.title-subtle h1 { padding: .4rem 0 1rem 0; margin: 5.5rem 0; }
	.title-subtle h2 { padding: .4rem 0 1rem 0; margin-bottom: 5.5rem; }

	.block-introtext.color + .title-subtle { margin-top: 5.5rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.title-subtle h1 { font-size: 2.2rem; padding: 0 0 3.15rem 0; border-width: 0 0 .3rem 0; margin: 6rem 0 3rem 0; }
	.title-subtle h2 { font-size: 2.2rem; padding: 0 0 3.15rem 0; border-width: 0 0 .3rem 0; margin-bottom: 3rem; clear: both; float: left; width: 100%; }

	.block-introtext.color + .title-subtle { margin-top: 3rem; }

	.title-subtle span { display: block; font-size: 5rem; text-align: center; width: 100%;}

}

@media screen and (min-width: 75em) { /* 1200px */

	.title-subtle h1 { font-size: 3rem; padding: 0 0 2.9rem 0; margin: 10.6rem 0 5.3rem 0; }
	.title-subtle h2 { font-size: 3rem; padding: 0 0 2.9rem 0; margin-bottom: 5.3rem; }

	.block-introtext.color + .title-subtle { margin-top: 5.3rem; }

}

/* Homepage Hero */

.homepagehero { background-size: cover; background-position: center center; }
.homepagehero .ratio { padding-top: 80%; }
.homepagehero .dynamic { display: none; }

.homepageherocredit { font-size: 1.8rem; margin: 1rem 2rem; text-align: right; }

@media screen and (min-width: 56.25em) { /* 900px */
	.homepagehero .ratio { display: none; }
	.homepagehero .dynamic { display: block; height: 70rem; }
}

/* Blocks */

.block:before,
	.block:after { content:""; display:table; clear:both; }

/* Block: Accordion */

.block-accordion,
	#main .accordion .listitem .content { font-size: 1.8rem; line-height: 1.3888888889; }

.block-accordion h2 { font-size: 2.2rem; line-height: 1.3636363636; font-weight: 400; margin: 0; padding: 2rem; cursor: pointer; }
.block-accordion h2 span.icon:before { content: '\2013'; float: left; text-indent: -3rem; }
.block-accordion.closed h2 span.icon:before { content: '+'; }
.block-accordion h2 span.title { margin-left: 3rem; display: inline-block; }

.block-accordion,
	#main .accordion { border-width: 0 0 0.2rem 0; border-style: solid; overflow: hidden; }

.block-accordion h2,
	.block-accordion .accordioncontent,
	#main .accordion .listitem,
	#main .accordion .listitem .content { border-width: 0.2rem 0 0 0; border-style: solid; clear: both; }

.block-accordion.stacked h2 { border-top: none; }

.block-accordion .accordionpadding:before,
	.block-accordion .accordionpadding:after { content:""; display:table; clear:both; }

.block-accordion .textrow,
	#main .accordion .textrow { margin: 4rem auto; padding: 0 2rem; max-width: 120rem; }

.block-accordion .textrow a,
	#main .accordion .textrow a { border-width: 0 0 0.1rem 0; border-style: solid; }

.block-accordion .textrow h3,
	#main .accordion .textrow h3 { line-height: 1.2; font-weight: 400; margin: 5rem 0 0 0; text-transform: uppercase; text-align: center; }

.block-accordion .textrow p:first-child,
	#main .accordion .textrow p:first-child { margin-top: 0; }

.block-accordion .textrow p:last-child,
	#main .accordion .textrow p:last-child { margin-bottom: 0; }

.block-accordion .textrow img,
	#main .accordion .textrow img { background: transparent; }

.block-accordion .textrow a img,
	#main .accordion .textrow a img { display: block; }

.block-accordion .textrow ul,
	#main .accordion .textrow ul { list-style: none; margin: 0; padding: 0; }

.block-accordion .textrow ul li,
	#main .accordion .textrow ul li { margin: 0; padding: 0 0 0 2.1rem; position: relative; }

.block-accordion .textrow ul li:before,
	#main .accordion .textrow ul li:before { content: ""; height: .1rem; left: .3rem; position: absolute; top: 1.2rem; width: 1.2rem; }

.block-accordion .imagerow,
	#main .accordion .imagerow { margin: 3rem auto; }

.block-accordion .embedrow,
	#main .accordion .embedrow { margin: 2rem auto 8rem auto; padding: 0 2rem; max-width: 1000px; }

.block-accordion .imagerow,
	#main .accordion .imagerow { margin: 3rem auto; }

.block-accordion .figurepadding,
	#main .accordion .figurepadding { margin: 0; padding: 0 2rem; text-align: center; }

.block-accordion figure img,
	#main .accordion figure img { margin: auto; }

.block-accordion figcaption,
	#main .accordion figcaption { padding: 2rem 2rem 0 2rem; }

.block-accordion .buttonrow,
	#main .accordion .buttonrow { text-align: center; margin: 3rem auto; }

.block-accordion .buttonrow ul,
	#main .accordion .buttonrow ul { list-style: none; margin: 0; padding: 0; }

.block-accordion .buttonrow li,
	#main .accordion .buttonrow li { margin: 0 1.5rem; padding: 0; display: inline; }

.block-accordion .buttonrow a,
	#main .accordion .buttonrow a { display: inline-block; padding: 2rem 4rem; border-bottom: 0; }

.block-accordion .tangentrow,
	#main .accordion .tangentrow { overflow: hidden; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-accordion,
		#main .accordion .listitem .content { font-size: 2.2rem; line-height: 1.3636363636; }

	.block-accordion .textrow,
		#main .accordion .textrow { margin: 5rem auto; }

	.block-accordion .textrow a,
		#main .accordion .textrow a { border-width: 0 0 0.2rem 0; border-style: solid; }

	.block-accordion .textrow ul li,
		#main .accordion .textrow ul li { padding: 0 0 0 3.1rem; }

	.block-accordion .textrow ul li:before,
		#main .accordion .textrow ul li:before { left: .2rem; }

	.block-accordion .imagerow,
		#main .accordion .imagerow { margin: 5rem auto; }

	.block-accordion .buttonrow,
		#main .accordion .buttonrow { margin: 5rem auto; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-accordion,
		#main .accordion { border-width: 0 0 0.3rem 0; border-style: solid; }

	.block-accordion h2,
		.block-accordion .accordioncontent,
		#main .accordion .listitem,
		#main .accordion .listitem .content { border-width: 0.3rem 0 0 0; }

	.block-accordion,
		#main .accordion .listitem .content { font-size: 3rem; line-height: 1.3333333333; }

	.block-accordion h2 { font-size: 3.5rem; line-height: 1.2; padding: 2rem 3rem; }

	.block-accordion .textrow,
		#main .accordion .textrow { margin: 6rem auto; padding: 0 3rem; }

	.block-accordion .textrow ul li,
		#main .accordion .textrow ul li { padding: 0 0 0 2.5rem; }

	.block-accordion .textrow ul li:before,
		#main .accordion .textrow ul li:before { top: 2rem; }

	.block-accordion .imagerow,
		#main .accordion .imagerow { margin: 7rem auto; }

	.block-accordion .buttonrow,
		#main .accordion .buttonrow { margin: 7rem auto; }

	.block-accordion .figurepadding,
		#main .accordion .figurepadding { padding: 0 3rem; }

	.block-accordion figcaption,
		#main .accordion figcaption { padding: 3rem 3rem 0 3rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-accordion h2 { font-size: 5rem; }
	.block-accordion h2 span.icon:before { text-indent: -6rem; }
	.block-accordion h2 span.title { margin-left: 6rem; }

	.block-accordion .textrow,
		#main .accordion .textrow { margin: 7rem auto; }

	.block-accordion .textrow ul li,
		#main .accordion .textrow ul li { padding: 0 0 0 3.3rem; }

	.block-accordion .textrow ul li:before,
		#main .accordion .textrow ul li:before { height: .2rem; left: .1rem; top: 1.8rem; width: 1.9rem; }

	.block-accordion .imagerow,
		#main .accordion .imagerow { margin: 9rem auto; }

	.block-accordion .buttonrow,
		#main .accordion .buttonrow { margin: 9rem auto; }

	.block-accordion figure,
		#main .accordion figure { position: relative; }

	.block-accordion .figurepadding,
		#main .accordion .figurepadding { margin: 0 23rem; }

	.block-accordion figcaption,
		#main .accordion figcaption { position: absolute; bottom: 0; left: 0; width: 23rem; padding: 0 0 0 3rem; box-sizing: border-box; }

}

/* Block: Audio / Video */

.block-video { margin: 3rem 0; clear: both; font-size: 1.8rem; }
.block-video.color { margin: 0; padding: 3rem 0; }

.block-introtext.color + .block-video.color,
	.block-video.color.stackedvideos { border-top: .2rem solid #fff; }

.block-video h2 { font-size: 1.8rem; line-height: 1.3888888889; text-align: center; font-weight: normal; text-transform: uppercase; margin: 2.9rem 0 .4rem 0; padding: 0 2rem;  }

.block-video video { object-fit: cover;  width: 100%; display: block; margin: auto; }

.block-video .videomargin { margin: 2rem auto 8rem auto; }
.block-video .videomargin.sanscaption { padding: 0 2rem; max-width: 1000px; }
.block-video .videomargin.captioned { position: relative; }
.block-video .caption { padding: 0 2rem; margin: 1rem auto; max-width: 1000px; font-size: 1.2rem; line-height: 1.3333333333; text-align: left; }

.block-video .videomargin.captioned .videowrap { max-width: 1000px; margin: auto; padding: 0 2rem;}

.block-video .caption { font-size: 1.2rem; line-height: 1.3333333333; text-align: left; padding: 0 2rem;}
.block-video .caption p { margin: 0; }

.block-video .videodesc { text-align: center; margin: 2.9rem 0 .4rem 0; padding: 0 2rem; }

.block-video .button { text-align: center; margin: 0 3rem 8.4rem 3rem; }
.block-video.color .button { margin-bottom: 3.9rem; }
.block-video .button a { display: inline-block; padding: 1.8rem 2.6rem 1.35rem 2.6rem; border-bottom: 0; }


@media screen and (min-width: 43.75em) { /* 700px */

	.block-video { margin: 5.75rem 0 0; }
	.block-video.color { margin: 0; padding: 5.75rem 0; }

	.block-video h2 { margin: 0 0 .9rem 0; }

	.block-video .videomargin { margin: 3.5rem auto 7.45rem auto; }

	.block-video.color .button { margin-bottom: 0; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-video { margin: 8.9rem 0 0; }
	.block-video.color { margin: 0; padding: 8.9rem 0; }

	.block-video h2 { font-size: 2.2rem; }

	.block-video .videomargin { margin: 4rem auto 7.3rem auto; }
	.block-video .videomargin.captioned { margin-bottom: 3.3rem; }
	.block-video .caption { padding: 0 3rem; margin: 1rem auto 1.2rem auto; }

	.block-video .videodesc { padding: 0 3rem; }
	.block-video .videodesc p { margin: 3.3rem 0; }

	.block-video .button a { padding: 1.6rem 4.2rem 1.55rem 4.2rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-video { margin: 8.4rem 0 0 0; font-size: 3rem; }
	.block-video.color { margin: 0; padding: 8.4rem 0; }

	.block-video h2 { margin: 0 0 1rem 0; padding: 0 3rem; font-size: 3rem; line-height: 1.3333333333; }

	.block-video .videomargin.captioned { display: grid; grid-template-columns: 22.5rem auto 22.5rem; align-items: end; padding-top: 2rem; margin-bottom: 2.5rem; }
	.block-video .videomargin.captioned .videowrap { order: 2; align-self: center; padding-bottom: 0.3rem; }
	.block-video .caption { order: 1; }

	.block-video .videodesc p { margin: 2.5rem 0; }

	.block-video .button { }
	.block-video .button a { padding: 2.1rem 4.7rem 2.05rem 4.7rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.block-video { margin: 13.4rem 0; }
	.block-video.color { padding: 13.4rem 0; margin: 0; }

}

/* Block: Big List */

.block-biglist { font-size: 1.8rem; line-height: 1.3888888889; margin: 4.9rem 0 5.3rem 0; }
.block-biglist h2 { font-size: 2.5rem; font-weight: normal; margin: 0 0 3rem 0; }

.block-biglist .biglistmain { margin: 0 auto; padding: 0 2rem; max-width: 120rem; }

.block-biglist ul { list-style: none; margin: 0; padding: 0; }
.block-biglist li { margin: 0; padding: 0 0 0 2.1rem; position: relative; }
.block-biglist li:before { content: ""; height: .1rem; left: .3rem; position: absolute; top: 1.2rem; width: 1.2rem; }
.block-biglist a { border-width: 0 0 .1rem 0; border-style: solid; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-biglist h2 { font-size: 3.5rem; }
	.block-biglist li { padding: 0 0 0 3.1rem; }
	.block-biglist li:before { left: .2rem; }
	.block-biglist a { border-width: 0 0 .2rem 0; }

}


@media screen and (min-width: 56.25em) { /* 900px */

	.block-biglist { margin: 4.9rem auto 5.3rem auto; }
	.block-biglist h2 { font-size: 5rem; }
	.block-biglist .biglistmain { padding: 0 3rem; }
	.block-biglist li { padding: 0 0 0 2.5rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-biglist { font-size: 3rem; line-height: 1.3333333333; }
	.block-biglist li { padding: 0 0 0 3.3rem; }
	.block-biglist li:before { height: .2rem; left: .1rem; top: 1.8rem; width: 1.9rem; }

}

/* Block: Button */

.block-button { clear: both; font-size: 1.8rem; line-height: 1.3888888889; text-align: center; margin: 3rem 0; }
.block-button a { display: inline-block; padding: 2rem 4rem; border-bottom: 0; }

@media screen and (min-width: 43.75em) { /* 700px */
	.block-button { font-size: 2.2rem; line-height: 1.3636363636; font-size: 2.2rem; margin: 5rem 0; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	..block-button { font-size: 3rem; line-height: 1.3333333333; margin: 9rem 0 0 3rem; }
}


/* Block: Call to Action */

[data-whatinput="keyboard"] .block-calltoaction a:focus { outline: none; position: relative; }
[data-whatinput="keyboard"] .block-calltoaction a:focus::before { content: ""; position: absolute; width: 100%; height: 100%; background: transparent; top: 0; left: 0; border-width: .5rem; border-style: solid; border-color: transparent; box-sizing: border-box; z-index: 1; -webkit-box-shadow: inset 0 0 0 .5rem; -moz-box-shadow: inset 0 0 0 .5rem; box-shadow: inset 0 0 0 .5rem; }

.block-calltoaction { margin: 0; font-size: 1.8rem; line-height: 1.3888888889; }

.block-calltoaction:before,
	.block-calltoaction:after { content:""; display:table; clear:both; }

.block-calltoaction figcaption { display: none; }

.block-calltoaction a { display: block; }

.block-calltoaction .textcolumn { padding: 1.5rem 2rem; }
.block-calltoaction .button { margin-top: 2.5rem; }

.block-calltoaction h2 { font-weight: 400; font-size: 4rem; line-height: 1.125; padding: 0 0 6.5rem 0; margin: 0; }
.block-calltoaction p { margin: 0; }
.block-calltoaction .button span { border-width: 0 0 .1rem 0; border-style: solid; }

.block-calltoaction img { width: 100%; }

@media screen and (min-width: 43.75em) { /* 700px */
	.block-calltoaction .textcolumn { padding: 2rem 2rem 2.5rem 2rem; }
	.block-calltoaction h2 { font-size: 6rem; line-height: 1.0833333333; padding: 0 0 6.5rem 0; }
	.block-calltoaction p { width: 66%; }
}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-calltoaction a { position: relative; }
	.block-calltoaction .ratio { padding-top: 50%; }
	.block-calltoaction .inner { position: absolute; top: 0; right: 0; bottom: 0; left: 0; }
	.block-calltoaction .imagecolumn { overflow: hidden; width: 50%; height: 100%; position: relative; }
	.block-calltoaction .textcolumn { width: 50%; height: 100%; padding: 0; position: relative; }
	.block-calltoaction .button span { border-width: 0 0 .2rem 0; border-style: solid; }

	.block-calltoaction.top h2 { padding: 2rem 3rem 0 3rem; position: relative; }
	.block-calltoaction.top .description { padding: 0 3rem 2.5rem 3rem; position: absolute; bottom: 0; }

	.block-calltoaction.bottom h2 { padding: 0 3rem 3rem 3rem; position: absolute; bottom: 0; }
	.block-calltoaction.bottom .description { padding: 2.5rem 3rem 0 3rem; }

	.block-calltoaction.left .imagecolumn { float: right; }
	.block-calltoaction.left .textcolumn { float: left; }

	.block-calltoaction.right .imagecolumn { float: left; }
	.block-calltoaction.right .textcolumn { float: right; }

}

@media screen and (min-width: 75em) { /* 1200px */
	.block-calltoaction { font-size: 3rem; }
	.block-calltoaction h2 { font-size: 10rem; line-height: 1.05; padding: 0 3rem 1.25rem 2.65rem; }
	.block-calltoaction.bottom .description { padding: 3rem 3rem 0 2.65rem; }
	.block-calltoaction .button { margin: 3.7rem 0 .5rem 0; }
}

@media screen and (min-width: 112.5em) { /* 1800px */
	.block-calltoaction h2 { font-size: 16rem; line-height: 1.09375; padding: 0 3rem 3.25rem 4.65rem; }
	.block-calltoaction.bottom .description { padding: 3rem 3rem 0 2.65rem; }
	.block-calltoaction .button { margin: 3.7rem 0 .5rem 0; }
}


/* Block: Carousel */

.block-carousel { margin: 3rem 0; clear: both; }
.block-carousel.color { margin: 0; padding: 3rem 0; }
.block-introtext.color + .block-carousel.color { padding-top: 0; }

.block-carousel h2 { font-size: 1.8rem; line-height: 1.3888888889; text-align: center; font-weight: normal; text-transform: uppercase; margin: 2.9rem 0 .4rem 0; padding: 0 2rem; }
.block-carousel h2.screen-reader-text { line-height: 0; margin: 0; padding: 0; }

.block-carousel h3 { font-size: 2rem; }

.block-carousel figure { position: relative; }
.block-carousel .figurepadding { margin: 0 2rem; text-align: center; }
.block-carousel figure img { margin: auto; background: transparent; }
.block-carousel figcaption { padding: 0 2rem; margin: 1rem 0; }

.block-carousel .slides { width: 100%; }
.block-carousel .slide { width: 100%; padding-top: 2rem; padding-bottom: 8rem; }

.block-carousel .button { text-align: center; margin: 5.9rem 3.5rem 5.9rem 3.5rem; font-size: 1.8rem; }
.block-carousel.color .button { margin-bottom: 3.9rem; }
.block-carousel .button a { display: inline-block; padding: 1.8rem 2.6rem 1.35rem 2.6rem; border-bottom: 0; }

.block-carousel .slidetitle { text-align: center; padding: 0 2rem; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-carousel { margin: 5.75rem 0 0; }
	.block-carousel.color { margin: 0; padding: 5.75rem 0; }
	.block-introtext.color + .block-carousel.color { padding-top: 0; }

	.block-carousel h2 { margin: 0 0 .9rem 0; }

	.block-carousel .slides { margin-bottom: 3.5rem; }
	.block-carousel .slide { padding-bottom: 7.45rem; }

	.block-carousel figcaption { margin: .6rem 0; }
	.block-carousel .button { margin: 10.4rem 2rem 8.4rem 2rem; }
	.block-carousel.color .button { margin-bottom: 0; }
}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-carousel { margin: 8.9rem 0 0; }
	.block-carousel.color { margin: 0; padding: 8.9rem 0; }
	.block-introtext.color + .block-carousel.color { padding-top: 0; }

	.block-carousel h2 { font-size: 2.2rem;  }
	.block-carousel h2.screen-reader-text { padding: 0; }

	.block-carousel .slides { margin-bottom: 4rem; }
	.block-carousel .slide { padding-bottom: 7.3rem; }

	.block-carousel figure { margin-bottom: 3.3rem; }
	.block-carousel .figurepadding { margin: 0 3rem; }
	.block-carousel figcaption { padding: 0 3rem; margin: 1rem 0 1.2rem; }

	.block-carousel .button { margin: 11.4rem 3rem 6.4rem 3rem; }
	.block-carousel .button a { padding: 1.6rem 4.2rem 1.55rem 4.2rem; }

	.block-carousel .slidetitle { padding: 0 3rem; }
	.block-carousel .slidetitle p { margin: 3.3rem 0; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-carousel { margin: 8.4rem 0 0 0; }
	.block-carousel.color { margin: 0; padding: 8.4rem 0; }
	.block-introtext.color + .block-carousel.color { padding-top: 0; }

	.block-carousel h2 { margin: 0 0 1rem 0; padding: 0 3rem; font-size: 3rem; line-height: 1.3333333333; }
	.block-carousel figure { display: grid; grid-template-columns: 22.5rem auto 22.5rem; align-items: end; padding-top: 2rem; margin-bottom: 2.5rem; }
	.block-carousel .figurepadding { order: 2; align-self: center; padding-bottom: 0.3rem; }
	.block-carousel figcaption { order: 1; }

	.block-carousel .slidetitle p { margin: 2.5rem 0; }

	.block-carousel .button { margin: 12.4rem 3rem 7.4rem 3rem; font-size: 3rem; }
	.block-carousel .button a { padding: 2.1rem 4.7rem 2.05rem 4.7rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.block-carousel h2 { margin: 0 0 0 0; }
	.block-carousel .button { margin: 0 3rem 8.4rem 3rem; }

}


/* Flickity */

[data-whatinput="keyboard"] .flickity-enabled:focus { outline: none; position: relative; }
[data-whatinput="keyboard"] .flickity-enabled:focus::before { content: ""; position: absolute; width: 100%; height: 100%; background: transparent; top: 0; left: 0; border-width: .5rem; border-style: solid; border-color: transparent; box-sizing: border-box; z-index: 0; -webkit-box-shadow: inset 0 0 0 .5rem; -moz-box-shadow: inset 0 0 0 .5rem; box-shadow: inset 0 0 0 .5rem; }

.flickity-enabled { position: relative; }
.flickity-enabled:focus { outline: none; }

.flickity-viewport { overflow: hidden; position: relative; height: 100%; }
.flickity-slider { position: absolute; width: 100%; height: 100%; display: flex; justify-content: center; align-items: flex-start; }

.flickity-enabled.is-draggable { -webkit-tap-highlight-color: transparent; tap-highlight-color: transparent; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.flickity-enabled.is-draggable .flickity-viewport { cursor: move; cursor: -webkit-grab; cursor: grab; }

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down { cursor: -webkit-grabbing; cursor: grabbing; }

.flickity-prev-next-button { font-size: 3rem;  padding: 0; position: absolute; bottom: 1.5rem;  border: none; cursor: pointer; background: transparent; font-family: "Roboto", sans-serif; }
.flickity-prev-next-button svg { display: none; }

.flickity-prev-next-button.previous { left: 2rem; }
.flickity-prev-next-button.previous:before { content: "\2190"; }
.flickity-prev-next-button.next { right: 2rem; }
.flickity-prev-next-button.next:before { content: "\2192"; }

.flickity-prev-next-button:disabled { opacity: 0.3; cursor: auto; }
.flickity-prev-next-button svg { position: absolute; left: 20%; top: 20%; width: 60%; height: 60%; }

.flickity-page-dots { position: absolute; bottom: 2.5rem; left: 6rem; right: 6rem; padding: 0; margin: 0; list-style: none; text-align: center; line-height: 1; box-sizing: border-box; }
.flickity-page-dots .dot { display: inline-block; width: .8rem; height: .8rem; margin: 0 .3rem; border-width: 0.2rem; border-style: solid; border-radius: 100%; cursor: pointer; }

.flickity-slider .slide.is-selected { display: inline-block; }

@media screen and (min-width: 43.75em) { /* 700px */
	.flickity-prev-next-button { bottom: 1.5rem; }
	.flickity-page-dots { bottom: 2.25rem; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.flickity-prev-next-button { font-size: 4.5rem; z-index: 1; bottom: 1.5rem; }
	.flickity-prev-next-button.previous { left: 2.5rem; }
	.flickity-prev-next-button.next { right: 2.5rem; }
	.flickity-page-dots { bottom: 2.75rem; }
	.flickity-page-dots .dot { width: 1.5rem; height: 1.5rem; margin: 0 .65rem; }
}

/* Block: Compact Listing */

.block-compactlisting { margin: 4.7rem 0 1rem 0; }

ul.block-compactlisting { list-style-type: none; margin-left: 0; padding-left: 0; }

.block-compactlisting .item a,
	.block-compactlisting .item .wrap { flex-direction: column; display: flex; }

.block-compactlisting .item { margin: 0 0 5rem 0; padding: 0 2rem; }

.block-compactlisting .figurepadding { }
.block-compactlisting figcaption { display: none; }

.block-compactlisting .imagecolumn { order: 1 }

.block-compactlisting .textcolumn { order 2; padding: 0 2rem;  text-align: center; font-size: 1.4rem; line-height: 1.4285714286; order: 2; }
.block-compactlisting .textcolumn time { display: block; }
.block-compactlisting .textcolumn time .times { display: block; }

.block-compactlisting h2 { margin: 0 0 3.2rem 0; padding: .8rem 0 1rem 0; font-weight: 400; font-size: 1.8rem; text-align: center; line-height: 1.3888888889; border-width: 0 0 .2rem 0; border-style: solid; text-transform: uppercase; }
.block-compactlisting h2.h3 { margin: 2.35rem 0 .5rem 0; padding: 0; font-weight: 400; font-size: 2.2rem; line-height: 1.3636363636; border: none; text-transform: none; }
.block-compactlisting h3 { font-weight: 400; font-size: 2.2rem; margin: 2.35rem 0 .5rem 0; line-height: 1.3636363636; }

.block-compactlisting p { margin: 0; }

.block-compactlisting p.button { margin: 1em 0 0 0; }
.block-compactlisting ul.button { margin: 1em 0 0 0; padding: 0; list-style: none; }
.block-compactlisting ul.button li { margin: 0; padding: 0; }

.block-compactlisting .button span { border-width: 0 0 .1rem 0; border-style: solid; }

.block-compactlisting .button a { border-width: 0 0 .1rem 0; border-style: solid; display: inline-block; }

.block-compactlisting .buttonrow { clear: both; font-size: 1.8rem; line-height: 1.3888888889; text-align: center; margin: 0 0 5rem 0; }
.block-compactlisting .buttonrow a { display: inline-block; padding: 1.5rem 2.85rem; border-bottom: 0; }


@media screen and (min-width: 43.75em) { /* 700px */

	.block-compactlisting { margin: 4.7rem 0 0; }

	.block-compactlisting .item a,
		.block-compactlisting .item .wrap { display: block; overflow: hidden; }

	.block-compactlisting .item { margin: 0 0 4rem 0; padding: 0 2rem; }

	.block-compactlisting .item:before,
		.block-compactlisting .item:after { content:""; display:table; clear:both; }

	.block-compactlisting .item a { display: block; }
	.block-compactlisting .item .button a { display: inline-block; }
	.block-compactlisting .imagecolumn { margin: 0; padding: .5rem 1rem 0 0; box-sizing: border-box; width: 50%; float: left; font-size: 2.2rem; line-height: 1.3636363636; }
	.block-compactlisting .textcolumn { margin: 0; padding: 0 0 0 1rem; box-sizing: border-box; width:50%; float: right; text-align: left; order: 1; }

	.block-compactlisting h2 { padding: .4rem 0 1rem 0; margin-bottom: 5.5rem; }
	.block-compactlisting h2.h3 { text-align: left; margin: 0; }
	.block-compactlisting h3 { margin: 0; }

	.block-compactlisting p { margin: .6rem 0; }

	.block-compactlisting .buttonrow {  margin: 6rem 0; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-compactlisting .item { padding: 0 0 3rem 0; }

	.block-compactlisting:before,
		.block-compactlisting:after { content:""; display:table; clear:both; }

	.block-compactlisting h2 { font-size: 2.2rem; padding: 0 0 3.15rem 0; border-width: 0 0 .3rem 0; margin-bottom: 3rem; }

	.block-compactlisting .imagecolumn { padding: .5rem 1.5rem 0 3rem; }
	.block-compactlisting .textcolumn { padding: 0 3rem 0 1.5rem; }

	.block-compactlisting .buttonrow { margin: 6rem 0 9rem 0; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-compactlisting { margin: 4.7rem 0 4.3rem 0; }

	.block-compactlisting h2 { font-size: 3rem; padding: 0 0 2.9rem 0; margin-bottom: 5.3rem; }
	.block-compactlisting h2.h3 { font-size: 3rem;  }
	.block-compactlisting h3 { font-size: 3rem; }

	.block-compactlisting .item { margin: 0 0 5.3rem 0; width: 50%; float: left; box-sizing: border-box; }
	.block-compactlisting .item:nth-of-type(even) { padding: 0 1.5rem 0 3rem; }
	.block-compactlisting .item:nth-of-type(odd) { padding: 0 3rem 0 1.5rem; clear: both; }

	.block-compactlisting .imagecolumn { margin: .8rem 0 0 0; padding: 0; width: 31%; float: right; }
	.block-compactlisting .textcolumn { margin: 0; padding: 0 0 0 3rem; width: 69%; font-size: 1.8rem; line-height: 1.3888888889; }

	.block-compactlisting .buttonrow { font-size: 3rem; margin: 0 0 4.7rem 0; padding-top: 3.5rem; clear: both; }
	.block-compactlisting .buttonrow a { padding: 1.9rem 4.35rem; }


}

@media screen and (min-width: 112.5em) { /* 1800px */

	.block-compactlisting .textcolumn { padding: 0 14.75rem 0 3rem; font-size: 2.2rem; line-height: 1.3636363636; }
	.block-compactlisting p { margin: 1.6rem 0; }


}


/* Block: Featured */

.block-featured { overflow: hidden; text-align: center; margin: 4.7rem 0; }
.block-featured.dark { padding: 4.7rem 0; margin: 0; }

.block-featured .titletext { padding: 0 2rem; }
.block-featured .titletextpadding { overflow: hidden; }

.block-featured h2 { font-size: 2.2rem; line-height: 1.33333; font-weight: normal; margin: .7rem 0; }

.block-featured h3,
	.block-featured .h3 { font-size: 3rem; line-height: 1.3636363636; margin: 0 1rem; font-weight: bold; display: block; }

.block-featured .eventseries { font-size: 2.2rem; margin: .4rem 1rem; }

.block-featured .titleimage {  padding: 2rem 2rem 0 2rem; }
.block-featured .titleimagepadding { max-width: 47.5rem; margin: 0 auto; }
.block-featured figcaption { display: none; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-featured h2 { margin: .9rem 0; }

	.block-featured h3,
		.block-featured .h3 { font-size: 3.6rem; line-height: 1.125; }

	.block-featured .eventseries { margin: 1rem; }

	.block-featured .titleimage {  padding: 4.5rem 2rem 0 2rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-featured { margin: 8.95rem 0; }
	.block-featured.dark { padding: 8.95rem 0; margin: 0; }

	.block-featured,
		.block-featured a { display: flex; justify-content: center; align-items: center; }

	.block-featured h2 { margin: 0 0 .9rem 0; }

	.block-featured a.eventstatus { display: table; align-items: center; display: flex; justify-content: center;}
	.block-featured .titletext { padding: 0 3rem; }
	.block-featured .titletext.hasimage { padding: 0 3rem 0 1.5rem; width: 50%; float: right; box-sizing: border-box; order: 2;}

	.block-featured .eventstatus { font-size: 3.5rem; }
	.block-featured .captionoffset { display: block; }

	.block-featured .eventseries { margin: 1rem 1rem 0 1rem; }

	.block-featured .titleimage { padding: 0 1.5rem 0 3rem; width: 50%; float: left; box-sizing: border-box; order: 1;}

}


@media screen and (min-width: 75em) { /* 1200px */

	.block-featured { margin: 13.1rem 0 21.9rem 0; }
	.block-featured h2 { font-size: 3rem; line-height: 1.33333; margin: 0 0 1.2rem 0; }

	.block-featured h3,
		.block-featured .h3 { font-size: 5rem; line-height: 1.2; }

	.block-featured .eventstatus { font-size: 4rem; display: block; width: 98%; }
	.block-featured .eventseries { font-size: 3rem; }
}

@media screen and (min-width: 112.5em) { /* 1800px */

	.block-featured { margin: 17.1rem 0 17.9rem 0; }

	.block-featured h2 { font-size: 5rem; line-height: 1.33333; margin: 0 0 1.6rem 0; }

	.block-featured h3,
		.block-featured .h3 { font-size: 7rem; line-height: 1.2; }

	.block-featured .eventstatus { font-size: 5rem; }
	.block-featured .eventseries { margin: 2rem 1rem 0 1em; }
}

/* Forms */

.block-form { font-size: 1.8rem; line-height: 1.3888888889; margin: 0 auto 4rem auto; padding: 0 2rem; max-width: 120rem; }
.block-form a { border-width: 0 0 0.1rem 0; border-style: solid; }
.block-form h3 { line-height: 1.2; font-weight: 400; margin: 5rem 0 0 0; text-transform: uppercase; text-align: center; }
.block-form p:first-child { margin-top: 0; }
.block-form p:last-child { margin-bottom: 0; }
.block-form img { background: transparent; }

.block-form .buttonrow { text-align: center; margin-top: 3rem; }
.block-form .buttonrow ul { list-style: none; margin: 0; padding: 0; }
.block-form .buttonrow li { margin: 0 1.5rem; padding: 0; display: inline; }

.block-form .buttonrow a { display: inline-block; padding: 2rem 4rem; border-bottom: 0; }

.block-form .textrow ul { list-style: none; margin: 0; padding: 0; }
.block-form .textrow ul li { margin: 0; padding: 0 0 0 2.1rem; position: relative; }
.block-form .textrow ul li:before { content: ""; height: .1rem; left: .3rem; position: absolute; top: 1.2rem; width: 1.2rem; }

.block-form .textrow ol { margin: 0; padding: 0; }
.block-form .textrow ol li { margin: 0 0 0 2.1rem; padding: 0; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-form { font-size: 2.2rem; line-height: 1.3636363636; margin: 0 auto 5rem auto; }
	.block-form a { border-width: 0 0 0.2rem 0; border-style: solid; }
	.block-form .buttonrow { margin-top: 5rem; }

	.block-form .textrow ul li { padding: 0 0 0 3.1rem; }
	.block-form .textrow ul li:before { left: .2rem; }
	.block-form .textrow ol li { margin: 0 0 0 3.1rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-form { font-size: 3rem; line-height: 1.3333333333; margin: 0 auto 6rem auto; padding: 0 3rem; }
	.block-form .buttonrow { margin-top: 7rem; }

	.block-form .textrow ul li { padding: 0 0 0 2.5rem; }
	.block-form .textrow ol li { margin: 0 0 0 2.5rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-form { margin: 0 auto 7rem auto; }
	.block-form .buttonrow { margin-top: 9rem; }

	.block-form .textrow ul li { padding: 0 0 0 3.3rem; }
	.block-form .textrow ul li:before { height: .2rem; left: .1rem; top: 1.8rem; width: 1.9rem; }
	.block-form .textrow ol li { margin: 0 0 0 3.3rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */
}


/* Block: Image */

.block-image { margin: 13rem 0; }
.block-image .slide.artslide { padding: 3rem 0; }

.block-image figure { position: relative; }
.block-image .figurepadding { margin: 0 2rem; text-align: center; }
.block-image figure img { margin: auto; }

.block-image figcaption { padding: 3rem 2rem 0 2rem; }

@media screen and (min-width: 43.75em) { /* 700px */
	.block-image { margin: 5rem 0; }
	.block-image .figurepadding { margin: 0 3rem; }
	.block-image figcaption { padding: 3rem 3rem 0 3rem; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.block-image { margin: 7rem 0; }
}

@media screen and (min-width: 75em) { /* 1200px */
	.block-image { margin: 9rem 0; }
	.block-image .figurepadding { margin: 0 22.5rem; }
	.block-image figcaption { position: absolute; bottom: 0; left: 0; width: 22.5rem;  box-sizing: border-box; }

}

@media screen and (min-width: 112.5em) { /* 1800px */
	.block-image { margin: 12rem 0; }
	.block-image .figurepadding { margin: 0 26rem; }
	.block-image figcaption { position: absolute; bottom: 0; left: 0; width: 26rem; padding: 0 3rem; box-sizing: border-box; }
}


/* Block: Intro Text */

.block-introtext { text-align: center; padding: 0 3rem; margin: 2.65rem 0; }
.block-introtext.color { padding: 2.65rem 3rem; margin: 0; }
.block-carousel.color + .block-introtext.color { padding-top: 0; }

.block-introtext h1,
	.block-introtext h2 { font-size: 1.8rem; line-height: 1.3888888889; font-weight: normal; text-transform: uppercase; margin: 0 0 3rem 0; }

.block-introtext .text { font-size: 2.2rem; line-height: 1.3636363636; max-width: 133rem; margin: auto; }
.block-introtext p { margin: 0; }
.block-introtext p + p { margin-top: 1em; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-introtext { margin: 8.65rem 0 7.5rem 0; }
	.block-introtext.color { padding: 8.65rem 3rem; margin: 0; }
	.block-carousel.color + .block-introtext.color { padding-top: 2.9rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-introtext { margin: 13.5rem 0 13.25rem 0; }
	.block-introtext.color { padding: 13.5rem 3rem; margin: 0; }
	.block-carousel.color + .block-introtext.color { padding-top: 4.6rem; }


	.block-introtext .text { font-size: 3.6rem; line-height: 1.25; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-introtext { margin: 11rem 0 8.4rem 0; }
	.block-introtext.color { padding: 11rem 3rem; margin: 0; }
	.block-carousel.color + .block-introtext.color { padding-top: 2.6rem; }

	.block-introtext h1,
		.block-introtext h2 { font-size: 3rem; line-height: 1.3333333333; }

	.block-introtext .text { font-size: 5rem; line-height: 1.2; }
}

@media screen and (min-width: 112.5em) { /* 1800px */

	.block-introtext { margin: 13.4rem 0; }
	.block-introtext.color { padding: 13.4rem 3rem; margin: 0; }
	.block-carousel.color + .block-introtext.color { padding-top: 5rem; }

}


/* Block: Listing */

.block-listing { padding: 0 1rem;  margin: 3rem 0 5rem 0; }

.block-listing:before,
	.block-listing:after { content:""; display:table; clear:both; }

.block-listing .columns { display: grid; grid-template-columns: 1fr; grid-column-gap: 3rem; grid-row-gap: 3rem; padding: 0 2rem; }

.block-listing .imagecolumn { order: 1; }
.block-listing .figurepadding { margin-bottom: 1rem; }

.block-listing .textcolumn { text-align: center; font-size: 1.8rem; line-height: 1.3888888889; order: 2; }
.block-listing .textinner { max-width: 79rem; margin: auto; }

.block-listing h2 { font-weight: 400; font-size: 2.2rem; margin: 0; line-height: 1.3636363636; }
.block-listing h3 { font-weight: 400; font-size: 2.2rem; margin: 0; line-height: 1.3636363636; }

.block-listing .button { margin-bottom: 0; }

.block-listing .button a,
	.block-listing .button span { border-width: 0 0 .1rem 0; border-style: solid; }

@media screen and (min-width: 43.75em) { /* 700px */
	.block-listing { margin: 3rem 0 7rem 0; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.block-listing { margin: 3rem 0 10rem 0; }
	.block-listing .columns { grid-template-columns: 1fr 1fr;  }

	.block-listing .textcolumn { text-align: left; }

	.block-listing.right .imagecolumn { order: 2; }
	.block-listing.right .textcolumn { order: 1; }

	.block-listing h2 { font-size: 3.5rem; line-height: 1.1428571429; }
	.block-listing h3 { font-size: 3.5rem; line-height: 1.1428571429; }
	.block-listing .button a { border-width: 0 0 .2rem 0; border-style: solid; }
}

@media screen and (min-width: 75em) { /* 1200px */
	.block-listing .figurepadding { margin-bottom: 3rem; }
	.block-listing h2 { font-size: 5rem; }
	.block-listing h3 { font-size: 5rem; }
}

@media screen and (min-width: 112.5em) { /* 1800px */
}


/* Block: Pull Quote */

.block-pullquote { font-size: 3rem; line-height: 1.1666666667; margin: 4.9rem 0 5.3rem 0; padding: 0; font-weight: bold; }

.block-pullquote p:first-of-type { margin-top: 0; }
.block-pullquote p:last-of-type { margin-bottom: 0; }

.block-pullquote aside,
	.block-pullquote blockquote { margin: 0 auto; padding: 0 2rem; max-width: 150.8rem; }

.block-pullquote footer { font-size: 1.8rem; line-height: 1.3888888889; font-weight: normal; text-transform: uppercase; margin-top: .9rem; }
.block-pullquote cite { font-style: normal; }


@media screen and (min-width: 43.75em) { /* 700px */

	.block-pullquote { font-size: 4rem; line-height: 1.125; }
	.block-pullquote footer { margin-top: 1.7rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-pullquote { margin: 5.6rem auto 8rem auto; }

	.block-pullquote aside,
		.block-pullquote blockquote { padding: 0 3rem; }

	.block-pullquote aside p,
		.block-pullquote blockquote p { margin: 1.7rem 0 }

	.block-pullquote footer { margin-top: 3.4rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-pullquote { font-size: 7rem; line-height: 1.1428571429; }
	.block-pullquote footer { font-size: 3rem; line-height: 1.3333333333; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

}

/* Block: Quick Links */

.block-quicklinks { margin: 4.7rem 0 10rem 0; }

.block-quicklinks h2 { margin: 0 0 3.2rem 0; padding: .8rem 0 1rem 0; font-weight: 400; font-size: 1.8rem; text-align: center; line-height: 1.3888888889; border-width: 0 0 .2rem 0; border-style: solid; text-transform: uppercase; }
.block-quicklinks ul { font-size: 2.2rem; line-height: 1.3636363636; list-style: none; margin: 0 auto; padding: 0 2rem 0 0; max-width: 121.2rem}
.block-quicklinks li { margin: 0; padding: 0 0 0 2rem; }
.block-quicklinks a { margin-left: 3rem; display: block; }
.block-quicklinks a span[aria-hidden="true"] { margin-left: -3rem; }

@media screen and (min-width: 43.75em) { /* 700px */

	.block-quicklinks h2 { padding: .4rem 0 1rem 0; margin-bottom: 5.5rem; }
	.block-quicklinks li { padding: 0 0 0 1rem; width: 50%; float: left; box-sizing: border-box; }
	.block-quicklinks a { margin-left: 4rem; }
	.block-quicklinks a span[aria-hidden="true"] { margin-left: -4rem; }


}

@media screen and (min-width: 56.25em) { /* 900px */

	.block-quicklinks h2 { font-size: 2.2rem; padding: 0 0 3.15rem 0; border-width: 0 0 .3rem 0; margin-bottom: 3rem; }
	.block-quicklinks li { padding: 0 0 0 2rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.block-quicklinks h2 { font-size: 3rem; padding: 0 0 2.9rem 0; margin-bottom: 5.3rem; }
	.block-quicklinks ul { font-size: 3.5rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */
}


/* Lessons & Resources */

.lessonfilters button { background: transparent; }
.lessonfilters { font-size: 1.8rem; padding: 0 2rem 3rem 2rem; text-align: center; margin: 0 auto; }
.lessonfilters h2 {font-size: 1.8rem; line-height: 1.3888888889; font-weight: normal; text-transform: uppercase; margin: 3rem 0 0 0; padding: 2.7rem 0 2.2rem 0; }
.lessonfilters ul { margin: 0 auto; padding: 0; list-style: none; max-width: 100rem; }
.lessonfilters li { margin: 0; padding: .5rem .25rem; display: inline-block; }
.lessonfilters button { display: inline-block; padding: 1.5rem 1.8rem 1.5rem 1.8rem;  font-size: inherit; border-width: 0.2rem; border-style: solid; }

@media screen and (min-width: 50em) { /* 800px */
	.vlessonfilters ul { max-width: none; }
}

@media screen and (min-width: 56.25em) { /* 900px */
	.lessonfilters { font-size: 3rem; padding: 0 3rem 3rem 3rem; }
	.lessonfilters h2 { font-size: 3rem; line-height: 1.3333333333; padding: 2.7rem 0 2.2rem 0; }
	.lessonfilters li { padding: 1rem .75rem; }
	.lessonfilters button { border-width: 0.3rem; }

	.resourcesnav h2 { padding: 0 3rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.lessonfilters li { padding: 1.35rem 1.095rem; }

	.resourcesnav h2 { font-size: 3rem; line-height: 1.3333333333; }

}

/* Archive / Search Results */

.posts-navigation { margin: 3rem 0; text-align: center; }
.posts-navigation ul { list-style-type: none; margin: 0; padding: 0; width: 100%; }
.posts-navigation li { display: inline-block; }
.posts-navigation a { margin: 1.5rem; display: inline-block; padding: 2rem 4rem; border-bottom: 0; }

@media screen and (min-width: 43.75em) { /* 700px */

	.posts-navigation { font-size: 2.2rem; line-height: 1.3636363636; margin: 5rem 0; }
	.posts-navigation ul { display: flex; justify-content: center; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.posts-navigation { font-size: 3rem; line-height: 1.3333333333; margin: 7rem 0; }

}


/* Locations */

.location-map { width: 100%; height: 30rem; border-width: .1rem; border-style: solid; }



/* Main Column - May be paired with Sidebar */

.maincolumn { clear: both; padding: 0 2rem;  font-size: 1.8rem; line-height: 1.3888888889; margin: 4.9rem 0 5.3rem 0; }
.maincolumn.color { padding: 4.9rem 2rem 5.3rem 2rem; margin: 0; }
.maincolumn .inner { max-width: 120rem; margin: auto; }

.maincolumn a { border-width: 0 0 0.1rem 0; border-style: solid; }

.maincolumn h2 { font-size: 2.5rem; font-weight: normal; margin: 3rem 0 3rem 0; }
.maincolumn h2:first-child { margin-top: 0; }

.maincolumn h3 { line-height: 1.2; font-weight: 400; margin: 5rem 0 0 0; }

.maincolumn h4,
	.maincolumn .h4 { font-size: 3rem; font-weight: bold; margin: 4rem 0; }

.maincolumn p { margin-top: 0; }
.maincolumn img { background: transparent; }
.maincolumn a img { display: block; }

.maincolumn .contentbutton { text-align: center; margin-top: 3rem; }
.maincolumn .contentbutton a { display: inline-block; padding: 2rem 4rem; border-bottom: 0; }

.maincolumn ul { list-style: none; margin: 0; padding: 0; }
.maincolumn ul li { margin: 0; padding: 0 0 0 2.1rem; position: relative; }
.maincolumn ul li:before { content: ""; height: .1rem; left: .3rem; position: absolute; top: 1.2rem; width: 1.2rem; }

.maincolumn ol { margin: 0; padding: 0; }
.maincolumn ol li { margin: 0 0 0 2.1rem; padding: 0; }

.maincolumn .cmoa-footnotes li { margin-top: 1em; }
.maincolumn .cmoa-footnotes li:first-child { margin-top: 0; }

.maincolumn ul.logos { list-style: none; margin: 5rem 0; padding: 0; overflow: hidden;}
.maincolumn ul.logos li { display: block; height: 6.4rem; padding: 1rem 3rem 1rem 0; float: left; display: flex; flex-direction: column; justify-content: center;}
.maincolumn ul.logos li:before { display: none; }
.maincolumn ul.logos a { border-bottom: none; }
.maincolumn ul.logos img { max-width: 12.4rem; max-height: 6.4rem; vertical-align: middle; }

.maincolumn.footnotes hr { display: none; }

@media screen and (min-width: 43.75em) { /* 700px */

	.maincolumn a { border-width: 0 0 0.2rem 0; border-style: solid; }
	.maincolumn h2 { font-size: 3.5rem; }

	.maincolumn ul li { padding: 0 0 0 3.1rem; }
	.maincolumn ul li:before { left: .2rem; }
	.maincolumn ol li { margin: 0 0 0 3.1rem; }

	.maincolumn .contentbutton { margin-top: 5rem; }
	.maincolumn .halfcolumnone { width: 50%; box-sizing: border-box; padding-right: 1.5rem; float: left; }
	.maincolumn .halfcolumntwo { width: 50%; box-sizing: border-box; padding-left: 1.5rem; float: right; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.maincolumn.hassidebar { padding: 0 3rem 0 1.5rem; width: 74.1111111111%; box-sizing: border-box; float: right; margin: 4.9rem 0 5.3rem 0; clear: none; }

	.maincolumn:before,
		.maincolumn:after { content:""; display:table; clear:both; }

	.maincolumn h2 { font-size: 5rem; }

	.maincolumn ul li { padding: 0 0 0 2.5rem; }
	.maincolumn ol li { margin: 0 0 0 2.5rem; }

	.maincolumn .contentbutton { margin-top: 7rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.maincolumn { font-size: 3rem; line-height: 1.3333333333; }
	.maincolumn.hassidebar { width: 66.0833333333%; }
	.maincolumn .contentbutton { margin-top: 9rem; }

	.maincolumn ul li { padding: 0 0 0 3.3rem; }
	.maincolumn ul li:before { height: .2rem; left: .1rem; top: 1.8rem; width: 1.9rem; }
	.maincolumn ol li { margin: 0 0 0 3.3rem; }

	.maincolumn ul.logos li { height: 8.5rem; }
	.maincolumn ul.logos img { max-width: 16.6rem; max-height: 8.5rem; }


}

@media screen and (min-width: 112.5em) { /* 1800px */

	.maincolumn.hassidebar { width: 66.3333333333%; }

}


/* List Column - Pairs with Sidebar */

.listcolumn { padding: 0 2rem; font-size: 1.8rem; line-height: 1.3888888889; margin: 4.9rem 0 5.3rem 0; }

[data-whatinput="keyboard"] .listcolumn button { outline-offset: 0; }
[data-whatinput="keyboard"] .listcolumn button.selected { outline-offset: .4rem; }

.listcolumn h2 { font-size: 2.2rem; line-height: 1.3333333333; text-align: center; font-weight: normal; text-transform: uppercase; margin: 7.3rem 0 2.2rem 0;}
.listcolumn h2:first-child { margin-top: 1.6rem; }

.listcolumn h3,
	.listcolumn h4 { font-size: 2.2rem; line-height: 1.3333333333; font-weight: normal; margin: 0 0 .5rem 0; }

.listcolumn .item { margin: 0 0 5.7rem 0; display: flex; flex-direction: column; }
.listcolumn .item a { display: flex; flex-direction: column; width: 100%; }

.listcolumn .imagecolumn { margin-bottom: 1.4rem; order: 1; }
.listcolumn .textcolumn { order: 2; }

.listcolumn .item p { margin: 0;}

.listcolumn .item ul { list-style: none; margin: .7rem 0 0 0; padding: 0; text-transform: uppercase; font-size: 1.2rem; }
.listcolumn .item li { margin: 0; padding: 0; }

.listcolumn .item time { display: block; line-height: 1.3333333333; }
.listcolumn .item time .times { display: block; }

.listcolumn .figurepadding { margin-bottom: 1rem; }
.listcolumn figcaption { display: none; }

.listcolumn .timespan { font-size: 2.2rem; line-height: 1.3333333333; text-align: center; font-weight: normal; margin: 1.6rem 0 2.2rem 0; }
.listcolumn .timespan ul { list-style: none; margin: 0; padding: 0; }
.listcolumn .timespan a { border-width: 0 0 .2rem 0; border-style: solid; }

.listcolumn .note { padding: 3rem; text-align: center; margin-bottom: 5.7rem; }
.listcolumn .note p { margin: 0; }
.listcolumn .note strong { font-weight: 400; text-transform: uppercase; }

@media screen and (min-width: 43.75em) { /* 700px */

	.listcolumn { width: 50%; float: right; box-sizing: border-box; padding: 0 2rem 0 1rem; }

	.listcolumn .item:before,
		.listcolumn .item:after { content:""; display:table; clear:both; }

	.listcolumn .timespan li { display: inline; margin: 0 1.5rem; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.listcolumn { width: 62.2222222222%; padding: 0 3rem 0 1.5rem; }

	.listcolumn h2 { margin: 7.3rem 0 1.8rem 0; }

	.listcolumn .timespan { margin: 1.6rem 0 5.2rem 0; }

	.listcolumn .item { margin: 0 0 5.2rem 0; }

	.listcolumn .item,
		.listcolumn .item a { display: block; }

	.listcolumn .item:before,
		.listcolumn .item:after { content:""; display:table; clear:both; }

	.listcolumn .imagecolumn { float: left; width: 42.6470588235%; box-sizing: border-box; padding: .7rem 1.5rem 0 0; order: 2; }
	.listcolumn .textcolumn { float: right; width: 57.3529411765%; box-sizing: border-box; order: 1; padding: 0 0 0 1.5rem; }

	.listcolumn .note { margin-bottom: 5.2rem; }

}


@media screen and (min-width: 75em) { /* 1200px */

	.listcolumn { width: 57.9166666667%; font-size: 2.2rem;  }

	.listcolumn h2 { font-size: 3rem; margin: 6rem 0 4.3rem 0; }

	.listcolumn h3,
		.listcolumn h4 { font-size: 3rem; margin: 0 0 .4rem 0; }

	.listcolumn .timespan { font-size: 3rem;  }

	.listcolumn .item ul { font-size: 1.5rem; margin: 1.2rem 0 0 0; }

	.listcolumn .note { margin-right: 0; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.listcolumn { width: 58.0555555556%; }

	.listcolumn h2 { font-size: 3.6rem; margin: 5.7rem 0 2.1rem 0; }

	.listcolumn .timespan { font-size: 3.6rem; }

}

/* Sidebar - Pairs with with Maincolumn or Listcolumn */

.sidebar { font-size: 1.8rem; line-height: 1.3888888889; }

.sidebar > *:first-child { margin-top: 0 !important; }

.contentsidebar { padding: 0 2rem; margin: 4.9rem 0 5.3rem 0; }
.listingsidebar { padding: 0 2rem; margin: 4.9rem 0 5.3rem 0; }

.sidebar p { margin-top: 0; }

.sidebar a { border-style: solid; border-width: 0 0 .1rem 0; }

.sidebar .date { font-size: 2.2rem; line-height: 1.3636363636; margin-bottom: 4.3rem; }

.sidebar .date time,
	.sidebar .date.time { display: block; font-size: 2.2rem; line-height: 1.3636363636; margin-bottom: 2.2rem; }

.sidebar .date .times { display: block; }

.sidebar .location { font-size: 2.2rem; line-height: 1.3636363636; margin: 1.7rem 0; }

.sidebar h2,
	.sidebar h3 { font-size: 1.8rem; text-transform: uppercase; margin: 1.6rem 0 0 0; }

.sidebar h2.categoryheading,
	.sidebar h3.categoryheading { font-size: 2.2rem; text-transform: none; margin: 1.6rem 0 0 0; font-weight: normal; }

.sidebar > h2,
	.sidebar > h3 { margin: 0; }

.sidebar ul { list-style: none; margin: 0 0 2.4rem 0; padding: 0; }
.sidebar li { margin: 0; padding: 0; }

.sidebar ul.categories { margin: 1.6rem 0 4.6rem 0; }
.sidebar ul.categories li { margin: .5rem .4rem .5rem 0; display: inline-block; }

.sidebar ul.categories a,
	.sidebar ul.categories button { border-width: .2rem; border-style: solid; display: inline-block; padding: 1.1rem; font-size: inherit; }


p.sidebarbutton { margin: 2.4rem 0 3.3rem 0; }
p.sidebarbutton a { display: inline-block; padding: 1.5rem 3.3rem 1.6rem 3.3rem; border-bottom: 0; }

.swidget-holder { margin-bottom: 4.3rem; }
.swidget_item_name {display: none; }
.swidget_messages { margin: 1em 0; }
.swidget_ticket_type {  display: flex; line-height: 1.3; padding: .5rem 0; flex-direction: row; flex-wrap: wrap; }
.swidget_mod_name { order: 3; padding: 0 .25em; }
.swidget_ticket_select { position: absolute; margin: 0 0 0 .25em; font-family: inherit; line-height: 1.5rem; font-size: 1.8rem; padding: .25rem; width: 5.5rem; }
.swidget_nm_price { order: 2; display: inline; margin-left: 7rem; }

.swidget_mem_price { order: 4; display: flex; clear: both; flex: 0 1 100%; margin-left: 7rem; }
.swidget_mem_price:before {}
.swidget_mem_price .swidget_member_txt { order: 2; padding: 0 .25em; }
.swidget_mem_price .swidget_currency { order: 1; }

.swidget_buttons {  margin-top: 3rem; }
.swidget_btn_purchase, .swidget_btn_addtocart, .swidget_checkout_url a { display: inline-block; padding: 2rem 4rem; border-bottom: 0; font-family: inherit; border: none; font-size: inherit; }

@media screen and (min-width: 43.75em) { /* 700px */

	.contentsidebar {  }
	.listingsidebar { width: 50%; float: left; box-sizing: border-box; padding: 0 1rem 0 2rem; }

	.sidebar .ticketcolumn { width: 50%; float: left; box-sizing: border-box; padding: 0 1rem 0 0; }
	.sidebar .linkscolumn { width: 50%; float: left; box-sizing: border-box; padding: 0 0 0 1rem; }

	.sidebar ul.categories { clear: both; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.contentsidebar { padding: 0 1.5rem 0 3rem; width: 25.8888888889%; float: left; box-sizing: border-box; }

	.listingsidebar { width: 37.7777777778%; padding: 0 1.5rem 0 3rem; }
	.sidebar .date { font-size: 3rem; line-height: 1.3333333333; }

	.sidebar .ticketcolumn { width: auto; float: none; padding: 0; }
	.sidebar .linkscolumn { width: auto; float: none; padding: 0; }

	.sidebar .location { margin: 1.7rem 0 2.6rem 0; }
	.sidebar ul { margin: 0 0 2.2rem 0; }

	p.sidebarbutton { margin: 2.2rem 0 2.4rem 0; }
	p.sidebarbutton a { padding: 1.1rem 3.3rem 1.4rem 3.3rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.contentsidebar { width: 33.9166666667%; }
	.listingsidebar { width: 42.0833333333%; padding: 0 11.3rem 0 3rem; }

	.sidebar .date { font-size: 3rem; line-height: 1.3333333333; margin-bottom: 4.1rem; }

	.sidebar .date time,
		.sidebar .date.time { font-size: 3rem; line-height: 1.3333333333; }

	.sidebar .location { font-size: 3rem; line-height: 1.3333333333; margin: 0 0 1rem 0; }

	.sidebar h2.categoryheading,
		.sidebar h3.categoryheading { font-size: 2.5rem; }

	p.sidebarbutton { font-size: 3rem; margin: 3.5rem 0 3.3rem 0; }
	p.sidebarbutton a { padding: 1.9rem 4.1rem 2.1rem 4.1rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.contentsidebar { width: 33.6666666667%; }
	.listingsidebar { width: 41.9444444444%; padding: 0 16.4rem 0 3rem; }

	.sidebar h2.categoryheading,
		.sidebar h3.categoryheading { font-size: 2.2rem; }

}

/* Events Page */

.calendar-month-grid { margin: 0 0 1.5rem 0; position: relative; }
.calendar-month-grid a { border: none; }

.calendar-month-grid .calendar-month-prev-next { position: absolute; top: -1.5rem; left: 0; width: 100%; margin: 0; z-index: 1; }

.calendar-month-grid__header { margin-bottom: 1rem; padding: 2rem 0; line-height: 1; align-items: center; position: relative;}
.events .calendar-month-grid__header h2 { font-size: 3rem; line-height: 1.3333333333; font-weight: normal; margin: 0; text-transform: none; }
.calendar-month-grid__nav.calendar-month-grid__nav--previous { position: absolute; left: 1.5rem; top: 1.25rem; }
.calendar-month-grid__nav.calendar-month-grid__nav--next { position: absolute; right: 1.5rem; top: 1.25rem; }

a.calendar-month-grid__nav { display: block; font-size: 4rem; }

table caption .calendar-month-grid__title { display: block; margin: 0; padding: 0; font-weight: 400; text-align: center; font-size: 2.2rem; }

.calendar-month-grid .calendar-month-grid__header .calendar-month-prev-next { left: 0; margin: 0; padding: 0; position: absolute; top: 0; width: 100%; }
.calendar-month-grid .calendar-month-grid__header .calendar-month-prev-next li { margin: 0; padding: 0; }
.calendar-month-grid .calendar-month-grid__header .calendar-month-prev-next li a { border: 0 none; }

.calendar-month-grid__grid { width: 100%; margin: 0 0 1.8rem 0; }

.calendar-month-grid__grid tbody { width: 100%; margin: 0; }

.calendar-month-grid__week { width: 100%; font-size: 0; }

.calendar-month-grid__date { width: 14.28571429%; padding: .3rem 0; font-size: 3rem; text-align: center; }
.calendar-month-grid__date--heading { font-size: 2rem; padding: .1rem 0; }
.calendar-month-grid__date--heading abbr { text-decoration: none; font-weight: normal; }

.calendar-month-grid__date--past .calendar-month-grid__date-link { position; relative; padding: 0; position: relative; }
.calendar-month-grid__date--past a::before { background: transparent; content: ""; height: 1px; left: 0; position: absolute; top: 50%; transform: rotate(-20deg); width: 100%; }

ul.calendar-month-grid__range-selector { display: block; text-align: center; margin: 0 0 4.2rem; }
ul.calendar-month-grid__range-selector li { margin: 0; display: inline-block; }
ul.calendar-month-grid__range-selector a { padding: 0; border-left: 0 none; border-right: 0 none; border-top: 0 none; }

a.calendar-month-grid__range { display: inline-block; margin: 0 1rem; border-width: 0 0 .1rem 0; border-style: solid; }
a.calendar-month-grid__range--selected { border-bottom: none; }


button.eventaccordion { position: relative; margin: 1.25rem -2rem 0; border-width: .3rem 0; border-style: solid; padding: 2.25rem 2rem 2.65rem 4.85rem; width: calc(100% + 4rem); box-sizing: border-box; font-size: 2.2rem; text-align: left; font-family: 'Roboto', sans-serif; }
button.eventaccordion:before { content: ""; height: .2rem; left: 2rem; position: absolute; top: 50%; width: 1.2rem; }
button.eventaccordion:after { content: ""; height: .2rem; left: 2rem; position: absolute; top: 50%; transform: rotate(90deg); width: 1.2rem; }
button.eventaccordion.selected { margin-bottom: 4.9rem; }



#eventaccordion { display: none; }
#eventaccordion.visible { display: block; }

.eventsidebar.visible { border-width: 0 0 .3rem 0; border-style: solid; }

@media screen and (min-width: 43.75em) { /* 700px */

	ul.calendar-month-grid__range-selector { margin: 0 0 4.7rem; }

	button.eventaccordion { display: none; }

	#eventaccordion { display: block; }

	.eventsidebar.visible { border-width: 0; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.calendar-month-grid { margin: 0; }

	.calendar-month-grid__range { border-width: 0 0 .2rem 0; border-style: solid; }
	.calendar-month-grid__range--selected { border-bottom: none; }

	.calendar-month-grid__date { font-size: 2.7rem; }
	.calendar-month-grid__date--heading { font-size: 1.8rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.calendar-month-grid { max-width: none; }

	.calendar-month-grid__title { font-size: 3rem; }

	.calendar-month-grid__nav.calendar-month-grid__nav--previous,
		.calendar-month-grid__nav.calendar-month-grid__nav--next { top: 1.6rem; }

	.calendar-month-grid__date { font-size: 3rem; padding: .15rem 0; }
	.calendar-month-grid__date--heading { font-size: 2rem; }

	.calendar-month-grid__grid { margin: 0 0 2.4rem 0; }


	ul.calendar-month-grid__range-selector { font-size: 2rem; margin: 0 0 4.4rem; }


}

@media screen and (min-width: 112.5em) { /* 1800px */

	ul.calendar-month-grid__range-selector { margin: 0 0 4.8rem; }

}



/* Visit Tray */

.vtray a { border-width: 0 0 .1rem 0; border-style: solid; }

.vtray { overflow: hidden; font-size: 1.8rem; clear: both; }
.vtray h3 { font-weight: 400; }
.vtray h5 { font-size: 1.8rem; font-weight: 400; margin: 0; text-transform: uppercase; }

.vtray p { margin-top: 0; }

.vtray a.button { font-size: 1.8rem; display: inline-block; padding: 2.1rem 2.5rem; }

.vtrayheader { width: 100%;  text-align: center;  }

.vtrayheader:before,
	.vtrayheader:after { content:""; display:table; clear:both; }

.vtrayheader h3 { font-size: 1.8rem; font-weight: 400; margin: 0; padding: 1rem 2rem .2rem 2rem; }
.vtrayheader h3 span { background-image: url('images/tray-open.svg'); background-repeat: no-repeat; background-size: 1.85rem 1.85rem; background-position: 0 bottom; padding-left: 2.5rem; }
.vtrayheader h3 em { border-width: 0 0 .1rem 0; border-style: solid; font-style: normal; }

.vtray.open .vtrayheader h3 span { background-image: url('images/tray-close.svg'); }

.vtrayheader p { font-size: 1.8rem; margin: 0; padding: 0 2rem 1.5rem 2rem; }

.vtrayclone { position: fixed; bottom: 0; width: 100%; z-index: 2; }
[data-whatinput="keyboard"] .vtrayclone { display: none !important; }

.vtrayclone .vtrayheader { cursor: pointer; }
.vtrayclone .vtraycontent { display: none; }
.vtrayclone .box { height: 100%; overflow: auto; position: relative; overflow-y: scroll; -webkit-overflow-scrolling: touch; }

.vtray .accordionitem { border-width: .2rem 0 0 0; border-style: solid; }
.vtray .accordionitem:last-child { border-width: 0 0 .2rem 0; border-style: solid; }

.vtray .accordionitem h4 { font-size: 2.2rem; line-height: 1.3636363636; font-weight: 400; margin: 0; padding: 2rem; cursor: pointer; }
.accordion button.toggle { font-size: 2.2rem; line-height: 1.3636363636; padding: 2rem 3rem 2rem 2em;}
.vtray .accordionitem h4 span.icon:before { content: '\2013'; float: left; text-indent: -3rem; }
.vtray .accordionitem.closed h4 span.icon:before { content: '+'; }
.vtray .accordionitem h4 span.title { margin-left: 3rem; display: inline-block; }

.vtray .accordionpadding { padding: 0 0 3rem 0; }

.vtray .accordionpadding:before,
	.vtray .accordionpadding:after { content:""; display:table; clear:both; }

.vtray .visitlinks { padding: 2.1rem 2rem 7.7rem 2rem; text-align: center; overflow: hidden; }
.vtray .visitlinks h3 { font-size: 2.2rem; line-height: 1.3636363636; margin: 1.4rem 0; }
.vtray .visitlinks ul { margin: 0 auto; padding: 0; list-style: none; max-width: 65rem; }
.vtray .visitlinks li { margin: 0; padding: .95rem .775rem; display: inline-block; }
.vtray .visitlinks a { display: inline-block; border-width: 0.2rem; border-style: solid; padding: 1.2rem 2.35rem; }

.vtray .visithours .visithoursgrid { padding: 0 2rem; display: grid; grid-template-columns: 1fr; grid-column-gap: 2rem;  }

.vtray .visithours .days { font-size: 1.8rem; line-height: 1.3636363636; margin-bottom: 3rem; }
.vtray .visithours .days ul { display: table; margin: 0; padding: 0; list-style: none;  max-width: 40rem; width: 100%;  box-sizing: border-box;  }
.vtray .visithours .days li { display: table-row; margin: 0; padding: 0; width: 100%; }
.vtray .visithours .days span { display: table-cell; padding: 0 0 0 1rem; box-sizing: border-box; width: 50%; }
.vtray .visithours .days span[aria-hidden="true"] { display: inline; padding: 0; }
.vtray .visithours .days .label { padding: 0 1rem 0 0;  }

.vtray .visithours .closings { font-size: 1.6rem; }
.vtray .visithours .closings h5 { margin: 0; font-size: 1.6rem; }
.vtray .visithours .closings ul { margin: 0; padding: 0; list-style: none; width: 100%;  max-width: 40rem; display: table; box-sizing: border-box; }
.vtray .visithours .closings li {  margin: 0 0 1rem 0; padding: 0; display: table-row; margin: 0; padding: 0; width: 100%; }
.vtray .visithours .closings span { display: table-cell; padding: 0 0 0 1rem; box-sizing: border-box; }
.vtray .visithours .closings .label { padding: 0 1rem 0 0;  }

.vtray .visitadmissions h3,
	.vtray .visitlocation h3,
	.vtray .visitcolumns h3 { font-size: 1.8rem; font-weight: 400; margin: 0; text-transform: uppercase; }

.vtray .visitadmissions .prices {  padding: 0 2rem; font-size: 2rem; line-height: 1.5; }
.vtray .visitadmissions .prices ul { display: table; margin: 0 0 4rem 0; padding: 0; list-style: none; font-size: 2.2rem; line-height: 1.3636363636;  }
.vtray .visitadmissions .prices li { display: table-row; margin: 0; padding: 0; }
.vtray .visitadmissions .prices span { display: table-cell;  padding: 0 0 0 1rem; box-sizing: border-box; }
.vtray .visitadmissions .prices .label {  padding: 0 1rem 0 0;  }
.vtray .visitadmissions .details { padding: 4rem 2rem 0 2rem; }

.vtray .visitlocation .columnone { padding: 0 2rem; }
.vtray .visitlocation address { font-style: normal; font-size: 2.2rem; line-height: 1.3636363636; }
.vtray .visitlocation .columntwo { padding: 0 2rem; }
.vtray .visitlocation .fineprint { font-size: 1.5rem; line-height: 1.6666666667; }
.vtray .visitlocation figure { margin-bottom: 3.2rem; }

.vtray .accordionitem.closed h4 span.icon::before { content: "+"; }
.vtray .accordionitem h4 span.icon::before { content: "–"; float: left; text-indent: -3rem; }
.vtray .visitcolumns .columnone { padding: 0 2rem; }
.vtray .visitcolumns .columntwo { padding: 0 2rem; }
.vtray .visitcolumns figure { margin-bottom: 2rem; }
.vtray .visitcolumns figcaption { padding: 1rem 0 0 0; }

@media screen and (min-width: 25em) { /* 400px */
	.vtray .visithours .days { font-size: 2.2rem; }
}

@media screen and (min-width: 43.75em) { /* 700px */

	.vtray .visitadmissions .prices { padding: 0 1rem 0 2rem; width: 50%; box-sizing: border-box; float: left; }
	.vtray .visitadmissions .details { padding: 0 2rem 0 1rem; width: 50%; box-sizing: border-box; float: left; }
	.vtray .visitlocation .columnone { padding: 0 1rem 0 2rem; width: 50%; box-sizing: border-box; float: left; }
	.vtray .visitlocation .columntwo { padding: 0 2rem 0 1rem; width: 50%; box-sizing: border-box; float: right; }
	.vtray .visitcolumns .columnone { padding: 0 1rem 0 2rem; width: 50%; box-sizing: border-box; float: left; }
	.vtray .visitcolumns .columntwo { padding: 0 2rem 0 1rem; width: 50%; box-sizing: border-box; float: right; }

	.vtray .visithours .visithoursgrid { grid-template-columns: 1fr 1fr; }
	.vtray .visithours .closings { font-size: 1.8rem; }
	.vtray .visithours .closings h5 { margin-top: 0; font-size: 1.8rem; }
	.vtray .visithours .closings ul { max-width: none; }
	.vtray .visithours .closings li { width: auto; max-width: none; }
	.vtray .visithours .closings span { width: auto; }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.vtrayheader h3 { font-size: 2.5rem; margin: 0; padding: .4rem 2.85rem 1.95rem 2.85rem; float: left;  }
	.vtrayheader h3 span { background-size: 3.5rem 3.5rem; background-position: 0 bottom; padding: 1.3rem 2rem .3rem 5rem; display: block; }
	.vtrayheader h3 em { border-width: 0 0 .2rem 0;  }

	.vtray.open .vtrayheader h3 span { background-image: url('images/tray-close.svg'); }

	.vtrayheader .right { float: right; padding: .4rem 0 1.95rem 2.85rem; }
	.vtrayheader p { font-size: 2.5rem; padding: 1.3rem 3rem .3rem 5rem; }

	.vtray { font-size: 3rem; }
	.vtray h5 { font-size: 3rem; }
	.vtray a { border-width: 0 0 .2rem 0; border-style: solid; }
	.vtray a.button { font-size: 3rem; padding: 1.7rem 4.2rem; }

	.vtray .accordionitem { border-width: .3rem 0 0 0; border-style: solid; }
	.vtray .accordionitem h4 { font-size: 3.5rem; line-height: 1.2; padding: 2rem 3rem; }
	.accordion.multi.js > .listitem .toggle button.toggle { font-size: 3.5rem; line-height: 1.2; padding: 2rem 3rem 2.5rem 6.6rem; }

	.accordion.always.js > .toggle button.toggle::before,
		.accordion.multi.js > .listitem .toggle button.toggle::before { height: .3rem; left: 3.1rem; width: 1.7rem; margin-top: -.45rem; }

	.accordion.always.js > .toggle button.toggle::after,
		.accordion.multi.js > .listitem .toggle button.toggle::after { height: .3rem; left: 3.1rem; width: 1.7rem; margin-top: -.45rem; }

	.vtray .accordionpadding { padding: 4.1rem 0 11rem 0; }

	.vtray .visitlinks {  padding: 5.2rem 3rem 13.25rem 3rem; }
	.vtray .visitlinks h3 { font-size: 3.5rem; line-height: 1.3636363636; margin: 2.4rem 0; }
	.vtray .visitlinks h5 { font-size: 3.5rem; padding: 1.2rem 0 2.2rem 0; }
	.vtray .visitlinks ul { max-width: 100rem; }
	.vtray .visitlinks li { padding: 1.45rem 1.125rem; }
	.vtray .visitlinks a { border-width: 0.3rem; border-style: solid; padding: 1.5rem 1.825rem 1.6rem 1.825rem; }

	.vtray .visithours .visithoursgrid { padding: 0 3rem; grid-column-gap: 3rem; }
	.vtray .visithours .days { font-size: 2.8rem; }
	.vtray .visithours .days ul { width: auto; max-width: none; }
	.vtray .visithours .days li { max-width: none; }

	.vtray .visitadmissions h3,
		.vtray .visitlocation h3,
		.vtray .visitcolumns h3 { font-size: 3rem; }

	.vtray .visitadmissions .prices { padding: 0 1.5rem 0 3rem; }
	.vtray .visitadmissions .prices ul { font-size: 3.4rem; line-height: 1.2857142857; }
	.vtray .visitadmissions .details { padding: 0 3rem 0 1.5rem; }

	.vtray .visitlocation .columnone { padding: 0 1.5rem 0 3rem; }
	.vtray .visitlocation address { font-size: 3.5rem; line-height: 1.2857142857; }
	.vtray .visitlocation .columntwo { padding: 0 3rem 0 1.5rem; }
	.vtray .visitlocation .fineprint { font-size: 2rem; line-height: 1.5; }

	.vtray .visitcolumns .columnone { padding: 0 1.5rem 0 3rem; }
	.vtray .visitcolumns .columntwo { padding: 0 3rem 0 1.5rem; }
	.vtray .visitcolumns figure { margin-bottom: 3rem; }

}

@media screen and (min-width: 75em) { /* 1200px */

	.vtray .accordionitem h4 { font-size: 5rem; }
	.accordion.multi.js > .listitem .toggle button.toggle { font-size: 5rem; }

	.accordion.always.js > .toggle button.toggle::before,
		.accordion.multi.js > .listitem .toggle button.toggle::before,
		.accordion.always.js > .toggle button.toggle::after,
		.accordion.multi.js > .listitem .toggle button.toggle::after { height: .3rem; left: 3.05rem; width: 2.6rem; }

	.accordion.multi.js > .listitem .toggle button.toggle { padding: 1.5rem 3rem 2.2rem 8.6rem; }

	.vtray .accordionitem h4 span.icon:before { text-indent: -6rem; }
	.vtray .accordionitem h4 span.title { margin-left: 6rem; }

	.vtray .visitlinks { padding: 4.1rem 3rem 13.85rem 3rem; }
	.vtray .visitlinks h3 { font-size: 5rem; margin: 1.9rem 0; }
	.vtray .visitlinks h5 { font-size: 5rem; padding: 1.2rem 0 2.2rem 0; }
	.vtray .visitlinks ul { max-width: 100rem; }
	.vtray .visitlinks li { padding: 1.45rem 1.125rem; }
	.vtray .visitlinks a { border-width: 0.3rem; border-style: solid; padding: 1.5rem 1.825rem 1.6rem 1.825rem; }

	.vtray .visitlocation address { font-size: 5rem; line-height: 1.2; }

	.vtray .visithours .days { font-size: 4.1rem; }
	.vtray .visithours .closings { font-size: 2.5rem; }
	.vtray .visithours .closings h5 { font-size: 2.5rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.vtray .visitlinks { padding: 4.1rem 3rem 15.35rem 3rem; }
	.vtray .visitlinks ul { max-width: none; }

	.vtray .visitadmissions .prices ul { font-size: 5rem; line-height: 1.2; }
	.vtray .visithours .days { font-size: 4.8rem; line-height: 1.2; }

}

/* Site Footer */

.sitefooterwrap { margin: auto; clear: both; border-width: .2rem 0 0 0; border-style: solid; font-size: 1.8rem; line-height: 1.3888888889; }

.vtray .logo { max-width: 33.5rem; padding: 5rem 2rem 0 2rem; }
.vtray .logo .padding { max-width: 54rem; }
.vtray .logo .image { display: block; position: relative; background-repeat: no-repeat; background-size: contain; background-image: url('images/footerlogo.svg'); }
.vtray .logo .ratio { display: block; padding-top: 13.75%; }
.vtray .logo .inner { display: none; }

.vtray .rowone { padding: 5rem 2rem 0 2rem; }

.vtray .rowone:before,
	.vtray .rowone:after { content:""; display:table; clear:both; }

.vtray .rowone .address {  font-style: normal; padding-bottom: 3rem; }
.vtray .rowone .address abbr { box-shadow: none; border: 0 none; text-decoration: none; }

.vtray .rowone .legal {  padding-bottom: 3rem; }
.vtray .rowone .legal ul { list-style: none; margin: 0; padding: 0; }
.vtray .rowone .legal li { margin: 0; padding: 0;  }

.vtray .rowone .social { padding-bottom: 3rem;  }
.vtray .rowone .social ul { list-style: none; margin: 0; padding: 0; }
.vtray .rowone .social li { margin: 0; padding: 0;  }

.vtray .rowtwo { padding: 0 2rem 3rem 2rem;}

.vtray .rowtwo:before,
	.vtray .rowtwo:after { content:""; display:table; clear:both; }

.vtray .rowtwo .links { padding-bottom: 4rem; }
.vtray .rowtwo .links ul { list-style: none; margin: 0; padding: 0; }
.vtray .rowtwo .links li { margin: 0; padding: 0; }

.vtray .rowtwo .copyright small { font-size: 2rem; line-height: 1.5; }


@media screen and (min-width: 43.75em) { /* 700px */

	.vtray .rowone .address { float: left; width: 50%; padding: 0 1.5rem 3rem 0; box-sizing: border-box; }
	.vtray .rowone .links { float: right; width: 50%; padding: 0 0 3rem 1.5rem; box-sizing: border-box; }
	.vtray .rowone .legal {  width: 50%; float: left; padding: 0 1rem 3rem 0; box-sizing: border-box; }
	.vtray .rowone .social { width: 50%; float: left; padding: 0 0 3rem 1rem; box-sizing: border-box; }
	.vtray .rowtwo .links li { padding: 0 .5em 0 0; display: inline;  }

}

@media screen and (min-width: 56.25em) { /* 900px */

	.sitefooterwrap { border-width: .3rem 0 0 0; border-style: solid; font-size: 2rem; line-height: 1.5; }
	.vtray .accordion.multi.js > .listitem { border-width: 0.3rem 0 0 0; }

	.vtray .logo { max-width: 46rem; padding: 5rem 2rem 0 3rem;}

	.vtray .rowone { padding: 9rem 3rem 0 3rem; }

	.vtray .rowtwo { padding: 0 3rem 3rem 3rem; }
	.vtray .rowtwo .links { float: right; width: 50%; padding: 0 0 0 1.5rem; box-sizing: border-box; }
	.vtray .rowtwo .copyright { float: left; width: 50%; padding: 0 1.5rem 0 0; box-sizing: border-box; }

}

@media screen and (min-width: 81.25em) { /* 1300px */

	.vtray .logo { max-width: none; padding: 6rem 1.5rem 0 3rem; width: 50%; box-sizing: border-box; float: left; }

	.vtray .rowone { padding: 6rem 3rem 3rem 1.5rem; width: 50%; box-sizing: border-box; float: right; }
	.vtray .rowone .address { float: left; width: 40.6451612903%; padding: 0; }
	.vtray .rowone .links { float: right; width: 59.3548387097%; padding: 0; }
	.vtray .rowone .legal {  padding: 0 0 0 3rem; }
	.vtray .rowone .social {  padding: 0 0 0 3rem; }

	.vtray .rowtwo { padding: 0 3rem 4rem 3rem; }

}

@media screen and (min-width: 112.5em) { /* 1800px */

	.vtray .logo .padding { max-width: 63rem; }

}

/* Print */

@media print {

	.sitefooterwrap .links,
		nav, address a,
		.vtray .visitlinks,
		.vtray .vtrayheader,
		.slides button,
		.slides ol,
		.logo .ratio,
		figure .mask { display: none; }

	.logo .screen-reader-text { clip: auto; clip-path: none; height: auto; width: auto; font-weight: bold; position: static; float: left; top: 0; left: 0; display: block; width: 100%; overflow: visible; }

	header { text-align: left; margin: 0 0 2em; }
	header .logo { margin: 0; max-width: 100%; font-size: 200%; }
	header .logo .padding { padding: 0; }
	img { max-height: 40rem; display: inline-block; clear: both; margin: 0 auto; }

	.imageheader { position: static; }
	.block { page-break-inside: avoid; }

	.accordion { margin: 0 !important; }
	.accordion .content, .accordion .toggle { display: block !important; visibility: visible !important; opacity: 1 !important; max-height: 100000em !important; border: 0 none !important; padding-left: 0 !important; padding-right: 0 !important; }

	.accordion.js [aria-hidden=true] button,
		.accordion.js [aria-hidden=true] input,
		.accordion.js [aria-hidden=true] textarea,
		.accordion.js [aria-hidden=true] select,
		.accordion.js [aria-hidden=true] iframe,
		.accordion.js [aria-hidden=true] a { display: inline-block !important; }

	.accordion > .content > * { opacity: 1 !important; }

	.accordion .tablist,
		.accordion button.toggle,
		.accordion.js button.toggle,
		.accordion.multi button.toggle { display: none !important; visibility: hidden !important; }

	.accordion.multi.js .toggle.sr-only { position: static !important; width: auto !important; height: auto !important; padding: inherit !important; margin: inherit !important; clip: none !important; border: inherit !important; }

}
