/*
Theme Name: Weavers
Theme URI: https://www.weavers.org.uk/
Author: EBCLark UX Design
Author URI: http://www.ebclark.co.uk/
*/

.yellow { --fullcolor: #FCE300; --midcolor: #fce833; --lightcolor: #fdee66; }
.blue { --fullcolor: #0066cc; --midcolor: #0066ff; --lightcolor: #007fff; }


* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Source Sans Pro', sans-serif; font-size: 1.125rem; font-weight: 300; color: #333; margin: 0 !important; background: #eee; line-height: 1.5; }
.site-container { background: #fff; padding: 1.125rem; max-width: 87.5rem; width: 100%; margin: 0 auto; }

@media screen and (min-width: 48rem) {
	.site-container { padding: 1.125rem 2.125rem; }
}
@media screen and (min-width: 64rem) {
	.site-container { padding: 1.125rem 3.125rem; }
	/*.site { background-image: url(../images/bg.svg); }*/
}
@media screen and (min-width: 72rem) {
	/*.site { background-image: url(../images/bg-desktop.svg); }*/
}

h1, h2, h3, h4, h5, h6, p, ul, ol, blockquote { margin: 0 0 1.5rem 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { font-family: 'Cormorant Garamond', serif; line-height: 1; clear: none; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { text-decoration: none; }

h1 { font-size: 2.5rem; }
h2,
	h1.small-title,
	.has-menu h1 { font-size: 2rem; }
h3, h4 { font-size: 1.5rem; }

@media screen and (min-width: 48rem) {
	h1 { font-size: 3rem; }
}
@media screen and (min-width: 64rem) {
	h1 { font-size: 4rem; }
	h2,
		h1.small-title,
		.has-menu h1 { font-size: 3rem; }
	h3, h4 { font-size: 2rem; }
}

p.pre-title { text-transform: uppercase; margin: 0 0 .5rem; }
p.sub { font-size: 0.9rem; color: #999; margin: 0 0 .5rem; }

.video-caption { font-size: 1rem; }
.image-caption { font-size: 1rem; margin-top: .125rem; }
@media screen and (min-width: 64rem) {
	.image-caption { width: 75%; }
}

.tag { text-transform: uppercase; background: #ddd; text-decoration: none; display: inline; padding: 0 3px; margin: 0 .25rem .25rem 0; }
.tag.white { color: #fff; }

.center { text-align: center; }


.media-size { width: 100px; }
@media screen and (min-width: 64rem) {
	.media-size { width: 200px; }
}

.divider { height: 1px; width: 50%; background: rgba(0,0,0,.3); margin: 2.125rem auto; }
.divider:first-child { margin-top: 0 !important; }

@media screen and (min-width: 64rem) {
	.divider { width: 25%; margin: 3.125rem auto; }
	.divider.mobile { display: none; }
	.has-menu .divider { width: 16%; margin: 3.125rem 0; }
}
@media screen and (min-width: 72rem) {
	.divider { margin: 6.25rem auto; }
}

.visually-hidden { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }

main img, main figure { width: 100% !important; height: auto; }
figure { margin-top: 2rem; }
figure figcaption { font-size: 1rem; text-align: left !important; }

.image-container,
	.image-container.ratio3x2 { height: 0; width:100%; padding-bottom: 66.66%; position: relative; } /* Set to 3x2 ratio */
.image-container.ratio4x3 { height: 0; width:100%; padding-bottom:75%; position: relative; } /* Set to 4x3 ratio */
.image-container div { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-position: center; background-size: cover; background-repeat: no-repeat; }

.image-container.vert { height: 0; width:100%; padding-bottom: 143.33%; position: relative; } /* Set to 4x3 ratio */

.image-container.portrait { width: 100%; padding-bottom: 150%; }
.image-container.square { width: 100%; padding-bottom: 100%; }
.image-container.maintain div {  background-size: contain; }

.image-container .button { position: absolute; bottom: 2rem; right: 2rem; margin: 0; }

@media screen and (min-width: 40rem) {
	figure figcaption { width: 66%; }

	.image-container.news { width: 66.66%; padding-bottom: 44.44%; }
}

/* Maintain ratio of embedded videos */
.maintain-ratio { overflow: hidden; height: 0; padding-top: 56.25%; position: relative; }
.maintain-ratio .inside { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }
.maintain-ratio .inside iframe { width: 100%; height: 100%; }


/* CTAs */
.longlink { word-break: break-word; }

a:link, a:active, a:visited { color: #333; transition: background .5s; }
a:hover, a:focus { background: #FCE300; background: var(--fullcolor); }
.blue a:hover, .blue a:focus { color: #fff; }
a.standalone, span.standalone { text-decoration: none; font-weight: 600; }

a.button { display: inline-block; background: #FCE300; background: var(--fullcolor); padding: 0.75rem 1.5rem; text-decoration: none; font-weight: 400; margin: 1rem 1rem 0 0; }
.blue a.button { color: #fff; }
a.button.black { background: #333; color: #fff; }

a.button:hover,
	a.button:focus { background: #333; color: #fff; }
a.button.black:hover,
	a.button.black:focus { background: #FFF; color: #333; }


h1 a.standalone, h2 a.standalone, h3 a.standalone { font-family: 'Source Sans Pro', sans-serif; font-size: 1.125rem; margin-left: 1.125rem; }

.members main a:hover, 
	.members main a:focus { background: #006EAF; color: #fff; }


/* Tables */
table { width: 100%; margin: 3.125rem 0; border: 1px solid rgba(0,0,0,.1); border-collapse: collapse; background : #fff; }
table th,
	table td { padding: .5rem; text-align: left; }
table th { border-bottom: 1px solid rgba(0,0,0,.3); }


/* Forms */
form { width: 100%; display: block; }
form label,
	form span.label { width: 100%; display: inline-block; padding: 1rem 0 .5rem; font-weight: 400 !important; }
form p.lite { font-size: 1rem; padding-top: .5rem; }

textarea,
	select,
	input[type="text"],
	input[type="email"],
	input[type="number"],
	input[type="tel"],
	input[type="password"],
	input[type="search"] { border-radius: 0; width: 100%; max-width: 100% !important; border: 1px solid rgba(0,0,0,.3); padding: 1rem; font-family: 'Source Sans Pro', sans-serif; font-size: 1.125rem; font-weight: 300; -webkit-appearance: none; -webkit-border-radius:0px; border-radius: 0; }

input[type="checkbox"],
	input[type="radio"] { margin-right: 1rem; }

main button, 
	input[type="button"],
	input[type="submit"] { font-weight: 400; border-radius: 0; display: inline-block; border: 0; background: #FCE300; background: var(--fullcolor); padding: 0.75rem 1.5rem; text-decoration: none; font-family: 'Source Sans Pro', sans-serif; font-size: 1.125rem; font-weight: 400; margin: 1rem 1rem 0 0; cursor: pointer; transition: background .5s; -webkit-appearance: none; -webkit-border-radius:0px; border-radius: 0; }
.blue main button, 
	.blue input[type="button"],
	.blue input[type="submit"] { color: #fff; }
main button:hover,
	main button:focus,
	input[type="button"]:hover,
	input[type="button"]:focus,
	input[type="submit"]:hover,
	input[type="submit"]:focus { background: #333; color: #fff; }

/* NINJA forms */
.nf-form-cont { width: 100%; display: block; }
form span.ninja-forms-req-symbol { width: auto; }

@media screen and (min-width: 64rem) {
	.nf-form-cont form { max-width: 100% !important; }

	.has-menu form,
		.has-menu .nf-form-cont { max-width: 100%; }
}
@media screen and (min-width: 72rem) {
	form,
		.nf-form-cont { max-width: 50%; margin: 0 auto; }
	.nf-form-cont form { max-width: 100%; }

	.has-menu form,
		.has-menu .nf-form-cont { max-width: 66.66%; margin: 0 0; }
}


/* STRUCTURE */
header { width: 100%; margin: 0; background: #fff; border-bottom: 1px solid rgba(0,0,0,.3); display: flex; justify-content: center; flex-wrap: wrap; position: relative; }
header .logo { background: transparent !important; }
header .logo img { width: 200px; height: 80px; }

@media screen and (min-width: 64rem) {
	header .logo img { width: 300px; height: 120px; }
}
@media screen and (min-width: 72rem) {
	header .logo img { width: 400px; height: 160px; }
}

main { display: block; width: 100%; clear: both; }

.top { display: block; position: fixed; bottom: 2rem; right: 0; padding: .5rem 2rem .5rem .5rem; background: #FCE300; background: var(--fullcolor); text-transform: uppercase; text-decoration: none; }
.blue .top { color: #fff; }

footer { width: 100%; margin: 2em 0; }

footer { width: 100%; margin: 1rem 0 0 0; padding: 2.125rem 0 1.125rem; border-top: 1px solid rgba(0,0,0,.1); }
footer h3 { font-size: 1.25rem; text-transform: uppercase; line-height: 1.5rem; margin: 0; }
footer .widget div { margin: 1rem 0; }
footer .widget div p { font-size: 1rem; }

.crest { display: block; width: 100%; margin: 2.125rem 0; text-align: center; clear: both; }
.crest img { width: 25%; max-width: 10rem; }

.legals { width: 100%; padding: 2.125rem 0; border-top: 1px solid rgba(0,0,0,.3); background: #fff; }

@media screen and (min-width: 48rem) {
	footer { display: flex; }
	footer nav { width: 50%; }
	footer .widget { width: 50%; }
}
@media screen and (min-width: 64rem) {
	footer { display: flex; }
	footer nav { width: 75%; }
	footer .widget { width: 25%; }

	.crest { margin: 3.125rem 0; text-align: center; }
}
@media screen and (min-width: 72rem) {
	.crest { margin: 6.25rem 0; text-align: center; }
}


/* MENUS CONTROLS */
.menu-controls { position: absolute; top: 0; right: 0; z-index: 1000; }
button.search-toggle,
	button.menu-toggle { border: 0; background: transparent; padding: 0; font-size: 1.5rem; margin-left: .5rem; }

@media screen and (min-width: 64rem) {
	.menu-controls { top: auto; bottom: .5rem; }
	button.menu-toggle { display: none; }
}


/* SEARCH */
.search form { width: 100%; max-width: 100%; display: flex; }
.search form label { padding: 0; }
.search form input { margin: 0; }
.search form input[type='submit'] { background: #333; color: #fff; }
.search form input[type='submit']:hover,
	.search form input[type='submit']:focus { background: #FCE300; background: var(--fullcolor); color: #333; }

header .search { width: 100%; margin-bottom: 2.125rem; display: none; }

.section-intro form.search-form { display: flex; }
.section-intro form.search-form label { padding: 0; }
.section-intro form.search-form input { margin: 0; }

@media screen and (min-width: 64rem) {
	header .search { position: absolute; z-index: 1000; top: 12.5rem; left: 0; width: 100%; padding: 3rem 0; background: #fff; box-shadow: 0 20px 0 0 rgba(26,26,26,.5); }
	header .search form { width: 50%; max-width: 50%; margin: 0 auto; }

	.section-intro form { width: 67%; margin: 0 auto; }
	.has-menu .section-intro form { width: 100%; margin: 0 0; }
}
@media screen and (min-width: 72rem) {
	header .search { top: 15rem; }

	.section-intro form { width: 100%; max-width: 100%; }
}


/* MENUS */
/* Sub menu */
header .sub-menu.desktop { display: none; }
header .sub-menu ul { list-style: none; padding: 0; margin: 0; }
header .sub-menu.desktop ul li { padding: 0; margin: 0; display: inline-block; }
header .sub-menu ul li a { text-decoration: none; font-weight: 400; text-transform: uppercase; }

@media screen and (min-width: 64rem) {
	header .sub-menu.desktop { display: block; position: absolute; top: 0; right: 0; }
	header .sub-menu.mobile { display: none; }

	header .sub-menu.desktop ul li { padding-left: 1rem; font-size: 1rem; }
}

/* Main menu */
.main-menu button { border: 0; background: transparent; padding: 0; }
.main-menu { position: relative; display: block; width: 100%; }
.main-menu .menu-main-container,
	.main-menu .menu-main-menu-container { padding: 1.125rem 0 0 0; }

.main-menu ul { list-style: none; padding: 0; margin: 0; display: none; width: 100%; }
.main-menu ul li { padding: 0 0 .75rem; margin: 0; display: block; }
.main-menu ul li a { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; font-weight: 700; text-decoration: none; text-transform: uppercase; display: inline-block; }

.main-menu ul li.menu-item-has-children { display: flex; justify-content: space-between; flex-wrap: wrap; }
.main-menu ul li.menu-item-has-children > a { width: 100%; }
.main-menu ul li.menu-item-has-children > a:after { font-family: 'icomoon' !important; content: "\e900"; float: right; }
.main-menu ul li.menu-item-has-children > a.open:after { content: "\e903"; }
.main-menu ul li.menu-item-has-children > ul li.menu-item-has-children > a:after { content: ""; }

.main-menu ul li.current-menu-item > a,
	.main-menu ul li.current-menu-parent > a,
	.main-menu ul li.current-menu-ancestor > a,
	.main-menu ul li.current-page-ancestor > a { background: #FCE300; background: var(--fullcolor); }

.main-menu ul li > ul { display: none; padding: .75rem 0 0 0; width: 100%; }
.main-menu ul li > ul li > ul { display: block; padding-left: 1rem; }

.main-menu ul li > ul li a { font-family: 'Source Sans Pro', sans-serif; font-weight: 400; font-size: 1rem; border: 0 !important; }
.main-menu ul li > ul li a:hover,
	.main-menu ul li > ul li a:focus { background: #FCE300; background: var(--fullcolor); }
.main-menu ul li > ul li > ul li a { font-weight: 300; }

@media screen and (min-width: 64rem) {
	button.menu-toggle { display: none; }
	.main-menu .menu-main-container,
		.main-menu .menu-main-menu-container { padding: 2.125rem 0 0 0; }

	.main-menu ul { display: block; text-align: center; }
	.main-menu ul li { padding: 0 2.25rem 0 0; display: inline-block; }
	.main-menu ul li.menu-item-has-children { display: inline-block; padding-right: 1.5rem; }
	.main-menu ul li.menu-item-has-children > a { width: auto; }
	.main-menu ul li.menu-item-has-children > a:after { font-size: 1rem; margin-left: .75rem; margin-top: 2px; }
	.main-menu ul li:last-child,
		.main-menu ul li.menu-item-has-children:last-child { padding: 0 0 0 0; }

	.main-menu ul li a { border-bottom: 10px solid #fff; margin-bottom: 0; background: #fff; }
	.main-menu ul li a:hover,
		.main-menu ul li a:focus { border-bottom: 10px solid #FCE300; border-bottom: 10px solid var(--fullcolor); }

	.main-menu ul li.current-menu-item > a,
		.main-menu ul li.current-menu-parent > a,
		.main-menu ul li.current-menu-ancestor > a,
		.main-menu ul li.current-page-ancestor > a { border-bottom: 10px solid #FCE300; border-bottom: 10px solid var(--fullcolor); background: #fff; }

	.main-menu ul li > ul { position: absolute; z-index: 100000; top: 4.6rem; left: 0; width: 100%; padding: 3rem 0; background: #fff; box-shadow: 0 20px 0 0 rgba(26,26,26,.5); text-align: left; }
	.main-menu ul li > ul li { display: block; width: 25%; float: left; }
	.main-menu ul li > ul li.mobile { display: none; }
	.main-menu ul li > ul li.double { width: 50%; }
	.main-menu ul li > ul li.menu-item-has-children > button { display: none; }
	.main-menu ul li > ul li > ul { position: relative; display: block !important; padding: 0; top: auto; left: auto; box-shadow: 0 0 0 0 rgba(26,26,26,0); }
	.main-menu ul li > ul li > ul li { display: inline-block; width:100%; }
	.main-menu ul li > ul li.double > ul li { width:50%; }

	.main-menu ul li > ul li.current-menu-item > a,
		.main-menu ul li > ul li.current-menu-parent > a,
		.main-menu ul li > ul li.current-menu-ancestor > a { background: #FCE300; background: var(--fullcolor); }

	.main-menu ul li.user { position: absolute; bottom: .5rem; right: 2.5rem; }
	.main-menu ul li.user > a { text-indent: -2000rem; display: inline-block; height: 1.5rem; width: 1.5rem; margin: 0; padding: 0; background: url(../images/member.svg) no-repeat; background-size: 100% auto; border-bottom: 0 !important; }

	.main-menu ul li.user > ul { top: 2.25rem; left: auto; right: -2.5rem; width: 20.3rem; padding: 3rem; background: #333; box-shadow: 0 0 0 0 rgba(26,26,26,0); }
	.main-menu ul li.user > ul li { float: none; width: 100%; }
	.main-menu ul li.user > ul li a { color: #fff; background: transparent; }
}	

/* Breadcrumbs */
.breadcrumbs { list-style: none; margin: 0; padding: 2.125rem 0 0; }
.breadcrumbs li { display: inline-block; padding-right: .25rem; text-transform: uppercase; }
.breadcrumbs li:before { content: '/ '; padding-right: .25rem; }
.breadcrumbs li:first-child:before,
	.breadcrumbs li:last-child:before { content: ''; padding-right: 0; }
.breadcrumbs li a { text-decoration: none; }

.has-menu .breadcrumbs { display: none; }

/* Left menu */
.has-menu nav.in-page { width: 100%; }
.has-menu.right nav.in-page { margin-top: 2.125rem; }

nav.in-page .show-section-nav { display: flex; align-items: center; }
nav.in-page .show-section-nav span.label { padding-left: .5rem; }
nav.in-page .show-section-nav span[class^="icon-"]  { font-size: .9rem; }

nav.in-page h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; text-transform: uppercase; font-weight: 400; }
nav.in-page ul { list-style: none; margin: 1.125rem 0 0; width: 95%; display: none; }
nav.in-page ul.members { margin-bottom: 2.125rem; display: block; }
nav.in-page ul.event-attendees { display: block; }
nav.in-page ul li { padding-bottom: 1.125rem; position: relative; }
nav.in-page ul.members li,
	nav.in-page ul.event-attendees li { padding-bottom: .5rem; }
nav.in-page ul li span { display: block; position: absolute; left: -1.35rem; top: .25rem; }
nav.in-page ul li span.icon-arrow-down { left: -1.5rem; }
nav.in-page ul li span.icon-tick { color: #448429; position: relative; display: inline-block; left: auto; top: auto; margin-left: .5rem; font-size: 1.25rem; }
nav.in-page ul.members li em { display: block; font-style: normal; font-size: .9rem; } 
nav.in-page ul li a { text-transform: uppercase; text-decoration: none; font-size: 1.125rem; }
nav.in-page ul li a.going { font-weight: 600; }

nav.in-page ul li ul li { padding-top: .75rem; padding-bottom: 0; padding-left: 1.125rem; }
nav.in-page ul li ul li a { text-transform: capitalize; }

nav.in-page ul li.current_page_ancestor > a,
	nav.in-page ul li.current_page_parent > a,
	nav.in-page ul li.current_page_item > a,
	nav.in-page ul li.current-cat > a { background: #FCE300; background: var(--fullcolor); }
.blue nav.in-page ul li.current_page_ancestor > a,
	.blue nav.in-page ul li.current_page_parent > a,
	.blue nav.in-page ul li.current_page_item > a,
	.blue nav.in-page ul li.current-cat > a { color: #fff; }

nav.in-page ul li.page_item_has_children:before { content: "\e902"; font-family: 'icomoon' !important; position: absolute; left: -1.125rem;  }

nav.in-page ul.jump-to { border-top: 1px solid rgba(0,0,0,.1); width: 100%; padding-right: 5%; display: block; }
nav.in-page ul.jump-to li.mobile { text-transform: uppercase; font-weight: 600; padding-top: 1.125rem; }

.hori nav.in-page ul.jump-to li { display: inline-block; margin-right: 1rem; }
.hori nav.in-page ul.jump-to li.mobile { display: block; }

@media screen and (min-width: 64rem) {
	.has-menu nav.in-page { width: 25% !important; padding-right: 1rem; }
	.has-menu.right nav.in-page { margin-top: 0; padding-left: 3.125rem; padding-right: 0; }

	nav.in-page .show-section-nav { display: none; }
	nav.in-page ul { display: block; margin-top: 0; }

	nav.in-page ul.jump-to { border: 0; position: relative; }
	nav.in-page ul.jump-to.fix { position: fixed; top: 3.125rem; width: 22.5%; }
	nav.in-page ul.jump-to li.mobile { display: none; }

	.hori nav.in-page ul.jump-to.fix { position: fixed; top: 0; width: 92%; background: #fff; border-bottom: 1px solid rgba(0,0,0,.3); max-width: 81rem; }

	.content-container nav.in-page ul.jump-to { position: relative !important; top: auto; width: 100%; }
}

/* Pagination */
.pagination { text-transform: uppercase; }
.pagination a, .pagination span { margin-right: .5rem; text-decoration: none; }
.pagination .current { font-weight: bold; background: #FCE300; background: var(--fullcolor); }

/* Footer menus */
footer nav ul { list-style: none; margin: 0; }
footer nav ul li a { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; text-decoration: none; text-transform: uppercase; font-weight: 400; }
footer nav ul li ul { margin: 1rem 0; }
footer nav ul li ul li a { font-family: 'Source Sans Pro', sans-serif; font-size: 1rem; font-weight: 300; }
footer nav ul li ul li.highlight { padding-top: 1.125rem; }
footer nav ul li ul li.highlight a { font-weight: 600; }

footer nav ul li.current-menu-item > a,
	footer nav ul li.current-menu-parent > a,
	footer nav ul li.current-menu-ancestor > a { background: #FCE300; background: var(--fullcolor); }
.blue footer nav ul li.current-menu-item > a,
	.blue footer nav ul li.current-menu-parent > a,
	.blue footer nav ul li.current-menu-ancestor > a { color: #fff; }

.legals ul { list-style: none; margin-bottom: 1rem; }
.legals ul li { display: inline-block; padding-right: 1rem; }
.legals ul li a { font-size: 1rem; text-decoration: none; text-transform: uppercase; color: #888; }
.legals p { font-size: 1rem; color: #888; }

@media screen and (min-width: 64rem) {
	footer nav ul { display: flex; }
	footer nav ul li { width: 33.33%; }
	footer nav ul li ul { display: block; width: 100%; }
	footer nav ul li ul li { width: 100%; }
}


/* BLOCKS */
.page-title { margin-top: 1.125rem; }
.has-menu .page-title { margin-top: 0; }

.has-menu { display: flex; margin-top: 2.125rem; flex-wrap: wrap; }
.has-menu.right { flex-wrap: wrap-reverse; }
.has-menu .content-container { width: 100%; }
article { width: 100%; margin: 2.125rem 0; }

.content-container ul { margin-left: 1.75rem; }
.content-container ol { margin-left: 1.5rem; }
.content-container ol li { padding-left: .25rem; }


@media screen and (min-width: 64rem) {
	article { margin: 3.125rem 0; }

	.has-menu { margin-top: 3.125rem; flex-wrap: nowrap; }
	.has-menu.right { flex-direction: row-reverse; }
	.has-menu .content-container { width: 75%; }
	.has-menu .content-container article:first-child { margin-top: 0; }

	.hori.has-menu { flex-wrap: wrap; }
	.hori.has-menu nav.in-page,
		.hori.has-menu .content-container { width: 100% !important; }
	.hori.has-menu nav.in-page { margin-bottom: 3.125rem; }

	.content-container .has-menu { margin-top: 0; display: block; }
	.content-container .has-menu .content-container  { width: 100%; margin-top: 3.125rem; }
}
@media screen and (min-width: 72rem) {
	article { margin: 6.25rem 0; }

	.has-menu { margin-top: 6.25rem; }

	.hori.has-menu .content-container { width: 75% !important; }
}


/* Hero */
.hero { position: relative; margin: -1px 0 0 0; width: 100%; }

.hero.image .space-holder { height: 0; width:100%; padding-bottom: 56.25%; background-repeat: no-repeat; background-size: cover; background-position: center; } /* Set to 16:9; ratio */

.hero.video .video-container { height: 0; width: 100%; padding-bottom: 56.25%; position: relative; overflow: hidden; z-index: 0; }
.hero.video .video-container video { width: 100%; position: absolute; top: 0; bottom: 0; }
.hero.image .image-caption,
	.hero.video .video-caption { text-align: left; padding-top: .125rem; position: relative; z-index: 1000; } 

.hero .copy { padding: 2.125rem; margin: -2.125rem 2.125rem 0 0; background: #FCE300; background: var(--fullcolor); position: relative; z-index: 10; }
.hero .copy h1 { font-size: 2rem; margin-bottom: 1rem; }
.hero .copy a.button { margin-top: 0; }

@media screen and (min-width: 64rem) {
	.hero .copy { position: absolute; bottom: 2.125rem; left: 0; margin: 0; width: 75%; } 
	.hero .copy h1 { font-size: 3rem; }

	.hero.image .image-caption,
		.hero.video .video-caption { text-align: right; position: absolute; bottom: -2rem; right: 0; } 
}
@media screen and (min-width: 72rem) {
	.hero .copy { width: 50%; } 
	.hero .copy h1 { font-size: 3.5rem; }
}


/* Section intro */
.section-intro.center { text-align: center; margin-left: auto; margin-right: auto; }
.section-intro p,
	.section-intro li { font-size: 1.125rem; }

.section-intro ul { margin-left: 1.75rem; }
.section-intro ol { margin-left: 1.5rem; }
.section-intro ol li { padding-left: .25rem; }

.has-menu .section-intro { max-width: 100%; }
.has-menu .section-intro.center { text-align: left; margin: 0 0; }

@media screen and (min-width: 48rem) {
	.section-intro p,
		.section-intro li { font-size: 1.375rem; }
}
@media screen and (min-width: 64rem) {
	.section-intro { max-width: 75%; }
}
@media screen and (min-width: 72rem) {
	.section-intro.center { max-width: 50%; }
	.has-menu .section-intro.center { max-width: 100%; }
}


/* Copy and media */
.copy-media {  }
.copy-media .copy { margin-bottom: 2.125rem; }
.copy-media .copy :last-child { margin-bottom: 0; }

.copy-media .copy ul { margin-left: 1.75rem; }
.copy-media .copy ol { margin-left: 1.5rem; }
.copy-media .copy ol li { padding-left: .25rem; }

.copy-media iframe { width: 100%; }

.copy-media.image .image-container.portrait { width: 100%; padding-bottom: 150%; }
.copy-media.image .image-container.square { width: 100%; padding-bottom: 100%; }
.copy-media.image .image-container.maintain div {  background-size: contain; }

.copy-media.image .carousel { width: 100%; background: #fff; border-top: 1px solid rgba(0,0,0,.1); border-bottom: 1px solid rgba(0,0,0,.1); }
.copy-media.image .carousel .slick-list,
	.copy-media.image .carousel .slick-track { height: 100%; }
.copy-media.image .carousel .slide { background-position: center; background-size: cover; background-repeat: no-repeat; }
.copy-media.image .carousel .slide.maintain { background-size: contain; }
.copy-media.image .carousel .slide .space-holder { height: 0; width:100%; padding-bottom:66.66%; } /* Set to 3x2 ratio */
.copy-media.image .carousel .slick-dots { position: absolute; bottom: 2.125rem; right: 2.125rem; list-style: none; margin: 0; }
.copy-media.image .carousel .slick-dots li { display: inline-block; padding-right: 0.5rem; }
.copy-media.image .carousel .slick-dots li:last-child { padding-right: 0; }
.copy-media.image .carousel .slick-dots li button { display: inline-block; text-indent: -2000rem; border: 0; border-radius: 0; width: 1.875rem; height: 1.875rem; background: rgba(252,227,0,.5); padding: 0; }
.copy-media.image .carousel .slick-dots li:last-child button { margin: 0; }
.copy-media.image .carousel .slick-dots li.slick-active button { background: #FCE300; background: var(--fullcolor); }

.copy-media.image.small-media .carousel .slick-dots { bottom: 1.125rem; right: 1.125rem; list-style: none; margin: 0; }
.copy-media.image.small-media .carousel .slick-dots li { width: 1.625rem; height: 1.125rem; }
.copy-media.image.small-media .carousel .slick-dots li button { width: 1.125rem; height: 1.125rem; }

.copy-media.image .carousel .caption { display: none; width: 100%; background: rgba(255,255,255,.8); padding: 2.125rem; }
.copy-media.image.small-media .carousel .caption { display: none; width: 100%; background: rgba(255,255,255,.8); padding: 1.125rem; }

.copy-media.embed-video .embed-container { width: 100%; }

.copy-media.display-video .video-container { height: 0; width: 100%; padding-bottom:66.66%; position: relative; overflow: hidden; }
.copy-media.display-video .video-container video { height: 100%; position: absolute; top: 0; bottom: 0; }
.copy-media.display-video .video-caption { padding-top: .125rem; }

.copy-media.files .files-container { width: 100%; border-left: 1px solid #000; padding-left: 2rem; list-style: none; }
.copy-media.files .files-container li { padding-bottom: .35rem; line-height: 1.3; }

@media screen and (min-width: 48rem) {
	.copy-media.media-left { flex-direction: row-reverse; }
}

/* 50/50 */
@media screen and (min-width: 48rem) {
	.copy-media.half { display: flex; flex-wrap: wrap; align-items: flex-start; }
	.copy-media.half .copy { width: 50%; padding-right: 3.125rem; margin: 0; }
	.copy-media.media-left.half .copy { padding-left: 3.125rem; padding-right: 0; }
	.copy-media.image.half .image-display,
		.copy-media.display-video .video-display { width: 50%; } 

	.copy-media.half .carousel { width: 50%; }
	.copy-media.half .carousel .slide .space-holder { padding-bottom:75%; }

	.has-menu .copy-media.half .copy { width: 100%; padding-right: 0; margin-bottom: 3.125rem; }
	.has-menu .copy-media.media-left.half .copy { padding-left: 0rem; }
	.has-menu .copy-media.image.half .image-display,
		.has-menu .copy-media.display-video .video-display { width: 100%; }
	
	.has-menu .copy-media.half .carousel { width: 100%; }
}
@media screen and (min-width: 72rem)  {
	.has-menu .copy-media.half .copy { width: 33.33%; padding-right: 3.125rem; margin-bottom: 0; }
	.has-menu .copy-media.media-left.half .copy { padding-left: 3.125rem; padding-right: 0; }
	.has-menu .copy-media.image.half .image-display,
		.has-menu .copy-media.display-video .video-display { width: 66.66%; } 

	.has-menu .copy-media.half .carousel { width: 66.66%; }
	.has-menu .copy-media.half iframe { width: 66.66%; }
}

/* Small media */
@media screen and (min-width: 40rem) {
	.copy-media.small-media.profile { display: flex; flex-wrap: wrap; align-items: flex-start; }
	.copy-media.small-media.media-left.profile { flex-direction: row-reverse; }
	.copy-media.small-media.profile .copy { width: 66.66%; padding-left: 0; margin: 0; }
	.copy-media.small-media.media-left.profile .copy { padding-left: 1.125rem; }
	.copy-media.small-media.profile .image-display { width: 33.33%; }
}
@media screen and (min-width: 48rem) {
	.copy-media.small-media { display: flex; flex-wrap: wrap; align-items: flex-start; }
	.copy-media.small-media .copy { width: 50%; padding-right: 3.125rem; margin: 0; }
	.copy-media.media-left.small-media .copy { padding-left: 3.125rem; padding-right: 0; }

	.copy-media.image.small-media .image-display { width: 50%; }

	.copy-media.small-media .carousel { width: 50%; }
	.copy-media.small-media .carousel .slide .space-holder { padding-bottom:75%; }

	.copy-media.small-media.profile .copy { width: 66.66%; }
	.copy-media.small-media.media-left.profile .copy { padding-left: 2.125rem; }
	.copy-media.small-media.profile .image-display { width: 33.33%; }

	.has-menu .copy-media.small-media .copy { width: 66.66%; }
	.has-menu .copy-media.image.small-media .image-display { width: 33.33%; }
}
@media screen and (min-width: 64rem) {
	.copy-media.small-media .copy { width: 75%; }
	.copy-media.image.small-media .image-display { width: 25%; } 

	.copy-media.small-media.profile .copy { width: 75%; }
	.copy-media.small-media.profile .image-display { width: 25%; }
	
	.has-menu .copy-media.image.small-media .image-display { width: 33.33%; }

	.copy-media.small-media .carousel { width: 25%; }
}

/* Large media */
@media screen and (min-width: 72rem) {
	.copy-media.large-media { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: flex-start; }
	.copy-media.large-media .copy { width: 25%; margin-bottom: 0; padding-right: 3.125rem; }
	.copy-media.large-media.media-left .copy { padding-left: 3.125rem; padding-right: 0; }

	.copy-media.image.large-media .image-display { width: 75%; }
	.copy-media.embed-video.large-media .embed-container { width: 75%; }

	.copy-media.large-media .carousel { width: 75%; }

	.has-menu .copy-media.large-media .copy { width: 100%; padding-right: 0; margin-bottom: 3.125rem; }
	.has-menu .copy-media.large-media.media-left .copy { padding-left: 0; padding-right: 0; }

	.has-menu .copy-media.image.large-media .image-display { width: 100%; }
	.has-menu .copy-media.embed-video.large-media .embed-container { width: 100%; }

	.has-menu .copy-media.large-media .carousel { width: 100%; }
}

/* Files */
@media screen and (min-width: 64rem) {
	.copy-media.files { display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap; }
	.copy-media.files h1,
		.copy-media.files h2 { width: 100%; }
	.copy-media.files .copy { width: 70%; margin-bottom: 0; }
	.copy-media.files .files-container { width: 25%; padding: 0 3.125rem; margin: 0; }

	.has-menu .copy-media.files .copy { width: 63%; margin-bottom: 0; }
	.has-menu .copy-media.files .files-container { width: 33.33%; padding: 0 3.125rem; margin: 0; }
}


/* Full width media */
@media screen and (min-width: 64rem) {
	.full-media { max-width: 75%; }
	.full-media.center,
		.has-menu .full-media { max-width: 100%; }
}


/* Content */
.content { display: block; width: 100%; clear: both; }
.content:after { content: ""; clear: both; display: table; }
.content h1, .content h2, .content h3 { margin-top: 3.125rem; }
.content h1:first-child, .content h2:first-child, .content h3:first-child { margin-top: 0; }

.content.copy h2 { margin-top: 0; }

.content ul { margin-left: 2rem; }
.content ol { margin-left: 1.5rem; }

.content img,
	.content .maintain-ratio { margin-bottom: 2.125rem; }
.content figure img { margin-bottom: 0; }


.content.jump { margin: 0; padding-top: 2.125rem; }


@media screen and (min-width: 48rem) {
	.content img.alignleft,
		.content img.alignright,
		.content figure.alignleft,
		.content figure.alignright,
		.content .maintain-ratio { width: 50% !important; float: right; margin-top: 0; margin-left: 2.125rem; margin-bottom: 2.125rem; }
		.content .maintain-ratio { padding-top: 28%; }

	.content img.size-thumbnail,
		.content img.size-medium { width: 25% !important; }

	.content figure.alignleft figcaption,
		.content figure.alignright figcaption { width: 100%; }
}
@media screen and (min-width: 64rem) {
	.content { width: 75%; }
	.has-menu .content { width: 100%; }

	.content img.alignleft,
		.content img.alignright,
		.content figure.alignleft,
		.content figure.alignright,
		.content .maintain-ratio { width: 66.66% !important; float: right; margin-left: 3.125rem; margin-left: 3.125rem; margin-right: -33.33%; }
		.content .maintain-ratio { padding-top: 37.5%; }

	.content img.size-thumbnail,
		.content img.size-medium { width: 33.33% !important; }

	.has-menu .content img.alignleft,
		.has-menu .content img.alignright,
		.has-menu .content figure.alignleft,
		.has-menu .content figure.alignright,
		.has-menu .content .maintain-ratio { margin-right: 0; }

	.content.jump { padding-top: 3.125rem; }
	.content.jump:first-child { padding-top: 0; }
}

/* Search results */
.content.search section { margin-bottom: 2.125rem; }
.content.search section .image-container { width:50%; padding-bottom:33.33%; margin-bottom: 1.125rem; }
.content.search section .copy h2 { margin-bottom: 1.125rem; }

@media screen and (min-width: 64rem) {
	.content.search { width: 100%; }
	.content.search section { display: flex; justify-content: flex-end; flex-direction: row-reverse; }
	.content.search section .image-container { width:25%; padding-bottom:16.66%; }
	.content.search section .copy { width: 75%; padding-right: 3.125rem; }
}


/* Grid */
.grid, .grid-container { position: relative; }
.grid h2 { margin-bottom: 2.125rem; position: relative; z-index: 10;  }
.grid h3 { font-size: 1.875rem; }
.grid .rows .item { display: block; margin-bottom: 2.125rem; text-decoration: none; }
.grid .rows .item:hover,
	.grid .rows .item:focus { background: transparent; color: #333; }
.grid .rows .item:hover span.standalone,
	.grid .rows .item:focus span.standalone { background: #FCE300; background: var(--fullcolor); }
.blue .grid .rows .item:hover span.standalone,
	.blue .grid .rows .item:focus span.standalone { color: #fff; }

.grid .rows .item .image-container { margin-bottom: 1.125rem; }

.grid.highlight .rows .item { position: relative; z-index: 10; background: #FCE300; background: var(--lightcolor); padding: 2.125rem; margin: 0 !important; transition: background .5s; }
.grid.highlight .rows a.item:hover,
	.grid.highlight .rows a.item:focus { background: rgba(26,26,26,.9) !important; color: #fff; }
.grid.highlight .rows .item:hover span.standalone,
	.grid.highlight .rows .item:focus span.standalone { background: transparent; }
.grid.highlight .rows .item:nth-child(3n) { background: #FCE300; background: var(--fullcolor); }
.grid.highlight .rows .item:nth-child(3n+2) { background: #FCE300; background: var(--midcolor); }
.blue .grid.highlight .rows .item { color: #fff; }

.grid.bgimage .dynamic-bg { position: absolute; top: 0; bottom: 0; height: 100%; width: 100%; background-repeat: no-repeat; background-size: cover; background-position: center; background-attachment: fixed; }
.grid.bgimage .rows { padding: 2.125rem 2.125rem 2.125rem 0; }
.grid.bgimage.img-left .rows { padding: 2.125rem 0 2.125rem 2.125rem; }

.grid.articles .rows { background: #fff; padding: 2.125rem 0; border-top: 1px solid rgba(0,0,0,.15); border-bottom: 1px solid rgba(0,0,0,.15); }
.grid.articles .rows .item:last-child { margin-bottom: 0; }
.grid.articles .rows .item .image-container { width:50%; padding-bottom:33.33%; margin-bottom: 1.125rem; }
.grid.articles.count1 .rows .item .image-container { width:100%; padding-bottom:66.66%; }

.grid.members .rows { display: flex; justify-content: space-between; }
.grid.members .rows .item { width: 48%; }
.grid.members .rows .item .image-container { padding-bottom: 100%; }
.grid.members .rows .item h3 { margin-bottom: .5rem; }

.grid.simple.profile .item .tag { display: inline-block; margin-bottom: 1.125rem; }
.grid.simple.profile .item a { display: inline-block; margin-bottom: 1.125rem; }

@media screen and (min-width: 40rem) {
	.grid.simple.profile .rows { display: grid; grid-template-columns: 33.33% 33.33% 33.33%; grid-template-rows: auto auto auto; }
	.grid.simple.profile .item:first-child { grid-column: 1 / span 2; padding-right: 1.25rem; }
	.grid.simple.profile .item:nth-child(2) { grid-column: 1 / span 2; grid-row: 2; }
	.grid.simple.profile .item:nth-child(3) { grid-column: 1 / span 2; grid-row: 3; }
	.grid.simple.profile .item:last-child { grid-column: 3 / span 1; grid-row: 1 / span 3; }
}

@media screen and (min-width: 48rem) {
	.grid.articles .rows .item { display: flex; justify-content: space-between; flex-direction: row-reverse; }
	.grid.articles .rows .item .copy { width: 48%; }
	.grid.articles .rows .item .image-container { width:48%; padding-bottom:32%; }

	.grid.articles.count1 .rows .item { flex-wrap: wrap; }
	.grid.articles.count1 .rows .item .copy { width: 100%; }
	.grid.articles.count1 .rows .item .image-container { width:100%; padding-bottom:66.66%; }
}

@media screen and (min-width: 64rem) {
	.grid h2 { margin-bottom: 3.125rem;  }
	.grid .image-container { margin-left: -.125rem }

	.grid .rows,
		.grid.members .rows { display: flex; justify-content: flex-start; flex-wrap: wrap; }
	.grid .rows .item { margin-bottom: 0; padding-right: 3rem; padding-left: .125rem; width: 25%; }
	.grid .rows .item:nth-child(n+5) { margin-top: 3.125rem; }

	.grid.count2.simple .rows .item,
		.grid.count2.highlight .rows .item { width: 50%; }
	.grid.count2.simple .rows .item:nth-child(2n) { padding-left: 3rem; padding-right: .125rem; }

	.grid.bgimage .rows { padding: 6.25rem 6.25rem 6.25rem 0; }
	.grid.bgimage.img-left .rows { justify-content: flex-end; padding: 6.25rem 0 6.25rem 6.25rem; }
	.grid.bgimage .rows .item { width: 33%; }
	.grid.even.bgimage .rows .item { width: 50%; }

	.grid.articles .rows { padding: 3.125rem 0; border-top: 1px solid rgba(0,0,0,.3); border-bottom: 1px solid rgba(0,0,0,.3); }
	.grid.articles .rows .item { display: block; width: 30%; padding: 0; }
	.grid.odd.articles .rows .item:nth-child(3n+2),
		.grid.odd.articles .rows .item:nth-child(3n) { margin-left: 5%; }
	.grid.odd.articles .rows .item:nth-child(n+4) { margin-top: 3.125rem; }

	.grid.even.articles .rows .item { width: 21.25%; margin-top: 0; margin-left: 0; }
	.grid.even.count2.articles .rows .item { width: 47.5%; }
	.grid.even.articles .rows .item:nth-child(n+2) { margin-left: 5% ; }
	.grid.even.articles .rows .item:nth-child(5n) { margin-left: 0; }
	.grid.even.articles .rows .item:nth-child(n+5) { margin-top: 3.125rem; }

	.grid.articles .rows .item .copy { width: 100%; padding-right: 0; }
	.grid.articles .rows .item .image-container { margin-bottom: 2.125rem; width:100%; padding-bottom:66.66%; }

	.grid.articles.count1  { width: 100%; }
	.grid.articles.count1 .rows { padding: 0; border-top: 0; border-bottom: 0; background: transparent; }
	.grid.articles.count1 .rows .item:first-child  { width: 70%; }
	.grid.articles.count1 .rows .item:last-child  { width: 25%; }

	.grid.members .rows .item { margin-bottom: 0; width: 25%; }

	.grid.simple.profile .rows { display: grid; grid-template-columns: 25% 25% 25% 25%; grid-template-rows: auto auto auto; }
	.grid.simple.profile .rows .item { width: 100%; padding-left: 0; padding-right: 0; margin-bottom: 2.125rem; }
	.grid.simple.profile .rows .item:first-child { padding-right: 2.125rem; grid-column: 1 / span 3; }
	.grid.simple.profile .rows .item:nth-child(2) { grid-column: 1 / span 1; grid-row: 2 / span 2; }
	.grid.simple.profile .rows .item:nth-child(3) { grid-column: 2 / span 1; grid-row: 2 / span 2; }
	.grid.simple.profile .item:last-child { grid-column: 4 / span 1; }
	.grid.simple.profile .rows .item h2 { margin-bottom: 1.125rem; }

	.has-menu .grid.count2.highlight .rows .item { width: 50%; }
	.has-menu .grid.count2.simple .rows .item:nth-child(2n) { padding-left: .125rem; padding-right: 3rem; }
	.has-menu .grid.simple .rows .item, 
		.has-menu .grid.highlight .rows .item { width: 33.33%; }
	.has-menu .grid.bgimage .rows .item { width: 50% !important; }
	.has-menu .grid.simple .rows .item:nth-child(n+4) { margin-top: 3.125rem; }
	.has-menu .grid.even.articles .rows .item { width: 47.5%; }
	.has-menu .grid.even.articles .rows .item:nth-child(3n) { margin-left: 0; }
	.has-menu .grid.even.articles .rows .item:nth-child(2n) { margin-left: 5%; }
}

@media screen and (min-width: 72rem) {
	.grid.bgimage .dynamic-bg { width: 75%; right: 0; }
	.grid.bgimage.img-left .dynamic-bg { left: 0; right: auto; }
	.grid.bgimage .rows .item { padding: 3.125rem; }

	.grid.bgimage .image-caption { margin-left: 25%; }
	.grid.bgimage.img-left .image-caption { margin-left: 0; }

	.grid.articles .rows { padding: 4.125rem 0; }

	.has-menu .grid.bgimage .dynamic-bg { width: 100%; }
	.has-menu .grid.bgimage .image-caption { margin-left: 0; }
}


/* Showcase grid */
.showcase {  }
.showcase a.item { text-decoration: none; padding-right: 2.125rem; }
.showcase a.item:hover,
	.showcase a.item:focus { background: #fff; }
.showcase a.item:hover .standalone,
	.showcase a.item:focus .standalone { background: #FCE300; background: var(--fullcolor); }

.showcase a.item h3 { font-size: 1.875rem; }
.showcase a.item .image-container { margin-bottom: 1.125rem; }

.showcase.num2 .items { display: flex; justify-content: flex-start; }
.showcase.num2 a.item { width: 50%; }

.showcase .slick-arrow { position: absolute; top: -3rem; right: 2.125rem; height: 1.125rem; width: 1.125rem; margin: 0; padding: 0; background-repeat: no-repeat; background-size: auto 100%; text-indent: -2000rem; background-color: #fff; }
.showcase .slick-arrow.slick-prev { background-image: url(../images/arrow-left.svg); background-position: left; right: 3.125rem; }
.showcase .slick-arrow.slick-next { background-image: url(../images/arrow-right.svg); background-position: right; }
.showcase .slick-arrow.slick-disabled { opacity: .3; }

@media screen and (min-width: 48rem) {
	.showcase { display: flex; justify-content: flex-start; }
	.showcase .title { width: 33.33%; }
	.showcase .items { width: 66.66%; }

	.showcase .title h2 { font-size: 2.5rem; }

	.showcase .slick-arrow { top: auto; right: auto; bottom: .5rem; left: -50%; height: 2.125rem; width: 2.125rem; }
	.showcase .slick-arrow.slick-prev { right: auto; }
	.showcase .slick-arrow.slick-next { margin-left: 2.125rem; }
}
@media screen and (min-width: 64rem) {
	.showcase .title { width: 25%; }
	.showcase .items { width: 75%; }
	.showcase.num2 .items { width: 50%; }

	.showcase .slick-arrow { left: -33.33%; }

	.has-menu .showcase { flex-wrap: wrap; }
	.has-menu .showcase .title,
		.has-menu .showcase .items { width: 100%; }
	.has-menu .showcase.num2 .title { width: 33.33%; padding-right: 5%; }
	.has-menu .showcase.num2 .items { width: 66.66%; }

	.has-menu .showcase .slick-arrow { top: -3rem; right: 2.125rem; bottom: .5rem; left: auto; }
	.has-menu .showcase .slick-arrow.slick-prev { right: 3.5rem; }
	.has-menu .showcase .slick-arrow.slick-next { margin-left: 0; }
}


/* CTAs */
/* Blocks */
.cta.blocks {  }
.cta.blocks .item { position: relative; background-repeat: no-repeat; background-size: cover; background-position: center; }
.cta.blocks .item .space-holder { height: 0; width:100%; padding-bottom:75%; background: rgba(0,0,0,.4); position: relative; } /* Set to 4x3 ratio */
.cta.blocks .item .caption { position: absolute; bottom: 1.125rem; left: 1.125rem; font-size: 1rem; color: rgba(255,255,255,.75); }
.cta.blocks .item a { display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; text-align: center; color: #fff; padding-top: 25%; padding-left: 1.125rem; padding-right: 1.125rem; text-decoration: none; transition: background .5s; }
.cta.blocks .item a:hover,
	.cta.blocks .item a:focus { color: #333; }

@media screen and (min-width: 48rem) {
	.cta.blocks { display: flex; justify-content: space-between; }
	.cta.blocks .item { margin-bottom: 0; width: 50%; }
	.cta.blocks .item a { padding-left: 2.125rem; padding-right: 2.125rem; }
}

/* Banner */
.cta.banner { position: relative; margin: 0; width: 100%; }

.cta.banner.image .space-holder { height: 0; width:100%; padding-bottom: 56.25%; background-repeat: no-repeat; background-size: cover; background-position: center; } /* Set to 16:9; ratio */

.cta.banner.video .video-container { height: 0; width: 100%; padding-bottom: 42.85%; position: relative; overflow: hidden; z-index: 0; }
.cta.banner.video .video-container video { width: 100%; position: absolute; top: 0; bottom: 0; }

.cta.banner .copy { padding: 2.125rem; margin: -2.125rem 2.125rem 0 0; background: rgba(26,26,26,.9); color: #fff; position: relative; z-index: 10; }

.cta.banner .image-caption,
	.cta.banner .video-caption { opacity: .5; padding-top: .125rem; }

@media screen and (min-width: 48rem) {
	.cta.banner .image-caption,
		.cta.banner .video-caption { position: absolute; bottom: 1.75rem; right: 2.125rem; }
}
@media screen and (min-width: 64rem) {
	.cta.banner.image,
		.cta.banner.video { padding: 6.25rem 0 3.125rem; }
	.cta.banner.image .space-holder,
		.cta.banner.video .video-container { width:75%; height: 100%; padding-bottom: 0; position: absolute; top: 0; bottom: 0; right: 0; } 
	.cta.banner.image.img-left .space-holder,
		.cta.banner.video.img-left .video-container { right: auto; left: 0; } 

	.cta.banner .copy { padding: 3.125rem; margin: 0; width: 66.66%; }
	.cta.banner.img-left .copy { margin-left: 33.33%; }

	.cta.banner .image-caption,
		.cta.banner .video-caption { position: absolute; bottom: 2.5rem; right: 2.125rem; }
}
@media screen and (min-width: 72rem) {
	.cta.banner .image-caption { width: auto; }
}


/* Logo list */
.logo-list {  }
.logo-list ul { list-style: none; margin: 0; display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; }
.logo-list ul li { width: 48%; }
.logo-list ul li a:hover,
	.logo-list ul li a:focus { background: #fff; }
.logo-list ul li a.square img { width: 80% !important; margin: 0 10%; }
.logo-list ul li a.portrait img { width: 55% !important; margin: 0 22.5%; }

@media screen and (min-width: 32rem) {
	.logo-list ul li { padding: 0 5%; }
}
@media screen and (min-width: 48rem) {
	.logo-list ul li { padding: 0 7.5%; }
}
@media screen and (min-width: 64rem) {
	.logo-list ul { justify-content: flex-start; }
	.logo-list ul li { width: 25%; padding: 0 2.5%; }

	.has-menu .logo-list ul li { width: 33.33%; padding: 0 2.5%; }
}


/* Quotes */
.quote span { font-style: normal; display: block; }

.quote span.icon-quote { font-size: 2rem; margin-bottom: .5rem; }

.quote blockquote { font-style: italic; }
.quote blockquote span { padding-top: .5rem; font-size: .9rem; color: #999; }

@media screen and (min-width: 48rem) {
	.quote blockquote { font-size: 1.375rem; }
	.quote blockquote span { font-size: 1.125rem; }
}
@media screen and (min-width: 64rem) {
	.quote { max-width: 73%; }
	.quote span.icon-quote { font-size: 3rem; margin-bottom: 1rem; }
	.quote blockquote span { padding-top: 1rem; }
}
@media screen and (min-width: 72rem) {
	.has-menu.quote { max-width: 100%; }
}


/* Social links */
.social-links { text-align: center; }
.social-links h2 { font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; text-transform: uppercase; }
.social-links ul { list-style: none; margin: 0; }
.social-links ul li { display: inline-block; }
.social-links ul li a { display: flex; align-items: center; text-decoration: none; width: 3.125rem; height: 3.125rem; background: #fff; margin: 0 5px; }
.social-links ul li a span[class^="icon-"] { display: inline-block; color: #333; font-size: 3.125rem; width: 100%; }
.social-links ul li a span:last-child { display: inline-block;  text-indent: -2000rem; }

@media screen and (min-width: 64rem) {
	.social-links { width: 45%; background: #fff; margin: 0 auto; padding: 1.125rem 0; }
}


/* Shortcodes */
.shortcodes { width: 100%; margin: 2.125rem 0; }
article .shortcodes { margin: 0 !important; }

.shortcode article:first-child { margin-top: 0; }
.shortcode article:last-child,
	.shortcode .divider:last-child { margin-bottom: 0; }

.notice { margin-bottom: 2.125rem; }

.shortcodes.edit-profile .shortcode > h2 { display: none; }

@media screen and (min-width: 64rem) {
	.shortcodes { margin: 3.125rem 0; }
	.has-menu .content-container .shortcodes:first-child { margin-top: 0; }
}
@media screen and (min-width: 72rem) {
	.shortcodes { margin: 6.25rem 0; display: flex; }
	.shortcodes .span1 { width: 25%; }
	.shortcodes .span2 { width: 50%; }
	.shortcodes .span3 { width: 75%; }
	.shortcodes .span4 { width: 100%; }
}



/* MEMEBRSHIP PAGES */
/* Login */
.pmpro_login_wrap hr,
	.pmpro_lost_password_wrap hr { display: none; }
.pmpro_login_wrap .pmpro_actions_nav,
	.pmpro_lost_password_wrap .pmpro_actions_nav { text-align: left; margin-top: 3.125rem; }
.pmpro_login_wrap .pmpro_actions_nav a,
	.pmpro_lost_password_wrap .pmpro_actions_nav a { background: none; padding: 0; margin: 0; text-transform: uppercase; font-weight: 600; }
.pmpro_login_wrap .pmpro_actions_nav a:hover,
	.pmpro_login_wrap .pmpro_actions_nav a:focus,
	.pmpro_lost_password_wrap .pmpro_actions_nav a:hover,
	.pmpro_lost_password_wrap .pmpro_actions_nav a:focus { background: #FCE300; background: var(--fullcolor); color: #333; }

.pmpro_lost_password_wrap form.pmpro_form .pmpro_submit { border-top: 0; padding-top: 0; margin-top: 2.125rem; }

@media screen and (min-width: 72rem) {
	.pmpro_login_wrap .pmpro_actions_nav,
		.pmpro_lost_password_wrap .pmpro_actions_nav,
		.pmpro_lost_password-instructions { max-width: 50%; margin-left: auto; margin-right: auto; }
}

.pmpro_checkout h3 { display: none; }
.pmpro_confirmation_wrap { display: none; }


/* Directory */
.pmpro_member_directory { margin-top: 2.125rem; }
#pmpro_member_directory_subheading { display: none; }
.pmpro_member_directory-item { display: block; margin-bottom: 2.125rem; text-decoration: none; }

.pmpro_member_directory-item h3 { margin-bottom: .5rem; }
.pmpro_member_directory-item .tag { background: #0066cc; color: #fff; margin-bottom: 1.125rem; }

.pmpro_member_directory_avatar .image-container,
	.pmpro_member_profile .image-container { padding-bottom:100%; margin-bottom: 1.125rem; }

.pmpro_actions_nav a { display: inline-block; background: #FCE300; background: var(--fullcolor); padding: 0.75rem 1.5rem; text-decoration: none; font-weight: 400; }
.pmpro_actions_nav a:hover,
	.pmpro_actions_nav a:focus { background: #333; color: #fff; }

@media screen and (min-width: 32rem) {
	.pmpro_member_directory { display: flex; justify-content: flex-start; flex-wrap: wrap; }
	.pmpro_member_directory-item { width: 50%; padding-right: 2.125rem; }
}
@media screen and (min-width: 48rem) {
	.pmpro_member_profile img { width: 50% !important; }
	.pmpro_member_profile .image-container { width: 50%; padding-bottom: 50%; }
} 
@media screen and (min-width: 64rem) {
	.pmpro_member_directory-item { width: 25%; padding-right: 3.125rem; }

	form.pmpro_member_directory_search { float: none; margin-bottom: 3.125rem; }

	.pmpro_member_profile { display: flex; flex-direction: row-reverse; }
	.pmpro_member_profile img { width: 33.33% !important; }
	.pmpro_member_profile .image-container { width: 25%; padding-bottom: 25%; margin-bottom: 3.125rem; }
	.pmpro_member_profile .profile-container { width: 75%; }
} 
@media screen and (min-width: 72rem) {
	form.pmpro_member_directory_search { float: none; margin-bottom: 6.25rem; }
} 

/* Pagination */
.pmpro_pagination { text-transform: uppercase; }
.pmpro_pagination ul { list-style: none; text-align: center; }
.pmpro_pagination ul li { display: inline-block; }
.pmpro_pagination a, .pmpro_pagination span { margin: 0 .5rem; text-decoration: none; }
.pmpro_pagination a.active { font-weight: bold; background: #FCE300; background: var(--fullcolor); }
.pmpro_pagination span { color: #aaa; }

/* Search and Filter form */
button.directory-search-toggle { display: flex; align-items: center; border: 0; background: transparent; padding: 0; text-transform: uppercase; margin-right: .5rem; margin-bottom: 1.125rem; color: #333 !important; position: relative; z-index: 10000; }
button.directory-search-toggle span[class^="icon-"] { font-size: 1.5rem; margin-right: .5rem; }
button.directory-search-toggle:hover,
	button.directory-search-toggle:focus { background: transparent; }
.show-filter { display: inline-block; }
.directory-container { position: relative; }
.dir-search-container { display: none; width: 100%; }
.dir-search-container form { max-width: 100%; margin: 0; }
.dir-search-container form input[type=submit] { margin: 0; background: #333; border: none; padding: 0; position: relative !important; text-indent: 0; padding: 0.75rem 1.5rem; color: #fff; }
.dir-search-container form input[type=submit]:hover,
	.dir-search-container form input[type=submit]:focus { background: #FCE300; background: var(--fullcolor); }

form.pmpro_member_directory_search { margin-bottom: 1.125rem; display: flex; }
form.pmpro_member_directory_search label { padding: 0; }
form.pmpro_member_directory_search input[type=search] { width: 100%; }

.my_pmpro_directory_widget { margin-top: 1.125rem; display: none; }
.my_pmpro_directory_widget h3 { display: none; }
.my_pmpro_directory_widget form ul { list-style: none; }
.my_pmpro_directory_widget form ul li { display: block; padding: 0 0 1rem 0; }
.my_pmpro_directory_widget form ul li strong { display: inline-block; font-family: 'Cormorant Garamond', serif; font-size: 1.25rem; text-transform: uppercase; font-weight: 400; padding: 0 0 .5rem 0; }
.my_pmpro_directory_widget form ul li label { width: auto; padding: 0 0 .25rem 0; font-weight: 300 !important; }

.pmpro_pagination a { text-transform: uppercase; text-decoration: none; }

@media screen and (min-width: 32rem) {
	form.pmpro_member_directory_search { padding-right: 2.125rem; }
	.my_pmpro_directory_widget { padding-right: 2.125rem; }
}
@media screen and (min-width: 64rem) {
	form.pmpro_member_directory_search { padding-right: 3.125rem; }
	.my_pmpro_directory_widget { padding-right: 3.125rem; }

	.my_pmpro_directory_widget form ul { display: flex; flex-wrap: wrap; background: #fff; padding: 2.125rem 0; border-top: 1px solid rgba(0,0,0,.15); border-bottom: 1px solid rgba(0,0,0,.15); }
	.my_pmpro_directory_widget form ul li { width: 33.33%; }
}


/* Edit profile form */
form.pmpro_form h3 { margin-top: 2.125rem; }

form.pmpro_form input[type=text].input, form.pmpro_form input[type=password].input, .pmpro_login_wrap form#loginform input[type=text].input, .pmpro_login_wrap form#loginform input[type=password].input { width: 100%; }

form.pmpro_form hr,
form.pmpro_form .pmpro_checkout_box-checkout_boxes > h3,
	form.pmpro_form .display_name,
	form.pmpro_form .pmpro_member_profile_edit-field-hide_directory,
	form.pmpro_form .pmpro_asterisk { display: none; }

form.pmpro_form #pmpro_baddress1_div,
	form.pmpro_form #description_div,
	form.pmpro_form #partner_name_div,
	form.pmpro_form .pmpro_submit { border-top: 1px solid rgba(0,0,0,.3); margin-top: 3.125rem; padding-top: 2.125rem; }

#wpua-images-existing img { max-height: 100% !important; }
#wpua-preview-existing, .pmprorh_file_preview { width: 50%; }
#wpua-thumbnail-existing { width: 25%; }

.pmprorh_file_preview img { max-width: 100% !important; max-height: 100% !important; }

form.pmpro_form .select2-container { width: 100% !important; }
.select2-container--default .select2-selection--multiple { border: 1px solid rgba(0,0,0,.3) !important; padding: 1rem 1rem .8rem; border-radius: 0; }

@media screen and (min-width: 64rem) {
	#wpua-preview-existing, .pmprorh_file_preview { width: 33.33%; }
	#wpua-thumbnail-existing { width: 15%; }
}

@media screen and (min-width: 72rem) {
	#wpua-preview-existing, .pmprorh_file_preview { width: 50%; }
	#wpua-thumbnail-existing { width: 25%; }
}


/* Messages */
.pmpro_message { border: 0 !important; -webkit-border-radius: 0 !important; -moz-border-radius: 0 !important; border-radius: 0 !important; font-size: 1.125rem !important; margin: 2.125em 0 !important;
    padding: 1.125rem 2.125rem !important; }

.pmpro_content_message a,
	.pmpro_content_message a:link { border: 0 !important; border-radius: 0 !important; padding: 0.75rem 1.5rem !important; }

@media screen and (min-width: 72rem) {
	.pmpro_message { width: 50%; margin-left: auto !important; margin-right: auto !important; }
}


/* Change photo */
.wpua-edit-container h3 { display: none; }
button#wpua-remove-existing,
	button#wpua-undo-existing { padding: 0; background: transparent; text-decoration: underline; }
button#wpua-remove-existing:hover,
	button#wpua-remove-existing:focus,
	button#wpua-undo-existing:hover,
	button#wpua-undo-existing:focus { background: var(--fullcolor); color: #333; }



/* EVENTS */
.cal-controls { width: 100%; background: #fff; padding: 2.125rem 0; border-top: 1px solid rgba(0,0,0,.15); display: flex; justify-content: space-between; align-items: center; }
.cal-controls h3 { margin: 0; }
.cal-controls a { text-decoration: none; }

table.em-calendar { border: 0; width: 100%; margin-top: 0; }

table.em-calendar td { width: 14.28%; height: 5rem; vertical-align: top; position: relative; padding: 0; border: 1px solid rgba(0,0,0,.3); }

table.em-calendar tr.days-names td { height: auto; padding: 0 3px .5rem; text-transform: uppercase; border: 0; }

table.em-calendar td.eventless-today, 
	table.em-calendar td.eventful-today { background: rgba(0,0,0,.1); }

table.em-calendar td .date,
	table.em-calendar td .standalone { padding: 0 3px; }
table.em-calendar td a.date { font-weight: 600; text-decoration: none; }


table.em-calendar td a:hover,
	table.em-calendar td a:focus { background: transparent; }

table.em-calendar td.eventful a, 
	table.em-calendar td.eventful-today a { color: #333; }

table.em-calendar td ul { list-style: none; margin: 0; margin-top: .5rem; }
table.em-calendar td li.event-title { display: inline-block; }
table.em-calendar td li.event-title a { display: inline-block; position: relative; background-color: #0066cb; height: 1.125rem; width: 1.125rem; border-radius: 50%; margin: 0 0 3px 3px; }
table.em-calendar td li.event-title a:hover,
	table.em-calendar td li.event-title a:focus { background-color: #fff; color: #333; }
table.em-calendar td li.event-title a span { display: none; }
table.em-calendar td li.meeting a { background-color: #0066cb; }
table.em-calendar td li.social a { background-color: #b25724; }
table.em-calendar td .standalone span { display: none; }

table.em-calendar td.eventful-post li a { opacity: .5; }

@media screen and (min-width: 48rem) {
	table.em-calendar td { height: 7rem; }
table.em-calendar td li.event-title { display: block; }
	table.em-calendar td li.event-title a { display: block; height: auto; width: 100%; margin: 0 0 1px 0; border-radius: 0; font-size: .95rem; color: #fff; }
	table.em-calendar td li.event-title a span { display: inline-block; padding: 0 3px; line-height: 1.2; }
	table.em-calendar td .standalone span { display: inline; }
}
@media screen and (min-width: 72rem) {
	.cal-controls { width: 95%; }
	table.em-calendar { width: 95%; }
}

#em-wrapper { display: flex; flex-direction: row-reverse; justify-content: flex-end; }
#em-wrapper .em-search-wrapper { width: 25%; }
#em-wrapper .css-events-list { width: 75%; }
#em-wrapper .css-my-bookings { width: 75%; margin-right: 25%; }

#em-wrapper .em-search-wrapper .events-search { display: none; }
#em-wrapper .em-search-wrapper form { max-width: 100%; margin-top: 4.5rem; padding-left: 3.125rem; }
#em-wrapper .em-search-wrapper form .em-search-field { display: block; padding-bottom: 1.125rem; }
#em-wrapper .em-search-wrapper form label { padding: 0; }


.events-list { width: 100%; border-bottom: 1px solid rgba(0,0,0,.15); margin-bottom: 2.125rem; }
.events-list .event { margin-bottom: 2.125rem; }
.events-list .event .date { border: 1px solid rgba(0,0,0,.3); width: 5.5rem; height: 5.5rem; text-align: center; text-transform: uppercase; padding: .5rem; margin-bottom: 1.5rem; }
.events-list .event .date span { display: block; font-family: 'Cormorant Garamond', serif; font-size: 3rem; line-height: .6; }
.events-list .event .info h3 { margin-bottom: .5rem; }
.events-list .event .info p { margin-bottom: .5rem; }
.events-list .event .info p.times { font-weight: 400; }
.events-list .event .info p:last-child { margin-bottom: 0; }

@media screen and (min-width: 48rem) {
	.events-list { padding: 2.125rem 0; }
	.events-list .event { display: flex; }
	.events-list .event:last-child { margin-bottom: 0; }
	.events-list .event .date { margin-right: 2.125rem; }
	.events-list .event .info { width: 80%; }
}
@media screen and (min-width: 64rem) {
	.events-list { width: 100%; background: #fff; border-top: 1px solid rgba(0,0,0,.15); margin-bottom: 3.125rem; }
	.events-list .event .date { width: 6.5rem; height: 6.5rem; }
	.events-list .event .date span { font-size: 4rem; line-height: .7; }

	.events-list.category { width: 75%; }
}
@media screen and (min-width: 72rem) {
	.events-list { margin-bottom: 6.25rem; }
}

.em-pagination a { display: inline-block; text-transform: uppercase; text-decoration: none; }
.em-pagination a.page-numbers { margin: 0 .25rem; }
.em-pagination a.prev { margin-left: 0; }
.em-pagination a.prev:after { content: ' Previous'; margin-left: 0; }
.em-pagination a.next { margin-right: 0; }
.em-pagination a.next:before { content: 'Next '; margin-right: 0; }


.css-cats-list { width: 100%; }
.css-cats-list .em-categories-list { list-style: none; }
.css-cats-list .em-categories-list li { display: block; font-size: 1.5rem; }

@media screen and (min-width: 64rem) {
	.css-cats-list .em-categories-list li { font-size: 2.5rem; }
}

/* Committee events list */
.committee-events .events-list { border: 0; padding: 0; margin: 0; }
.committee-events .events-list .event { margin-bottom: 1.5rem; }
.committee-events .events-list h3 { font-family: 'Source Sans Pro', sans-serif; font-size: 1.125rem; text-transform: uppercase; font-weight: 300; }
.committee-events .events-list .date,
	.committee-events .events-list .tag,
	.committee-events .events-list p { display: none; }
.committee-events .events-list p.times { display: inline-block; }

form.em-booking-form { max-width: 100%; }
form.em-booking-form .em-booking-form-details { padding: 0; width: 100%; float: none; }
form.em-booking-form .em-booking-form-details textarea { width: 100%; }



/* APPLICATION FORM */
.nf-mp-header { margin-bottom: 3.125rem; }

.nf-progress-container { background: rgba(0,0,0,.1); border: 0 !important; margin-bottom: 3.125rem; }
.nf-progress-container .nf-progress { background-color: #4f843d; height: 10px; }

.nf-breadcrumbs { text-transform: uppercase; display: flex; justify-content: flex-start; border-bottom: 1px solid rgba(0,0,0,.1); } 
.nf-breadcrumbs li { float: none !important; display: inline-block; }
.nf-breadcrumbs li a { margin-bottom: 0 !important; border-bottom: 10px solid #fff; }
.nf-breadcrumbs li a:hover,
	.nf-breadcrumbs li a:focus,
	.nf-breadcrumbs li.active a { background: #fff; border: 10px solid #FCE300; border-bottom: 10px solid var(--fullcolor); }

.nf-multi-cell .nf-cell { padding: 0 .75rem 0 0 !important; }

.list-radio-wrap .nf-field-element li label { padding: 0 0 0 0 !important; }

.save-wrap input[type='button'] { background: #333; color: #fff; }

.nf-mp-footer { border-top: 1px solid rgba(0,0,0,.1); margin-top: 2.125rem; }
.nf-mp-footer .nf-previous,
	.nf-mp-footer .nf-next { text-transform: uppercase; background: #fff; padding: 0; margin: 0; font-weight: 600; }
.nf-mp-footer .nf-previous:hover,
	.nf-mp-footer .nf-previous:focus,
	.nf-mp-footer .nf-next:hover,
	.nf-mp-footer .nf-next:focus { background: #FCE300; background: var(--fullcolor); color: #333; }

@media screen and (min-width: 64rem) {
	#nf-form-2-cont { border-top: 1px solid rgba(0,0,0,.3); border-bottom: 1px solid rgba(0,0,0,.3); background: #fff; padding: 3.125rem 0; }
}
@media screen and (min-width: 72rem) {
	#nf-form-2-cont { max-width: 75.1%; margin: 0; }
}



/* DRIVE EMBED */
#UseyourDrive img { width: auto !important; }
#UseyourDrive a:hover,
	#UseyourDrive a:focus { background: transparent !important; }


/* Basic User Avatars */
#basic-user-avatar-form label { width: auto; }
#basic-user-avatar-form p.delete,
	#basic-user-avatar-form p.description { display: none; }






