/*
 Theme Name:   CC
 Theme URI:    https://charitycomms.org.uk
 Author:       DigitalGarden
 Author URI:   https://digitalgarden.co
 Template:     Divi
 Version:      1.3.6
*/

/*
	Fonts: Mulish (body), Lato (headings)

	Body text: #1A1A1A

	New accessible green bg: #E3EEC6

	Green: #97BE09 “Limerick”
	Dark Grey: #34403A “Onyx”
	Mid Grey: #4C5B5C “Fieldgrau”
	Pale: #ECEAE6 “Alabaster”
	Yellow: #F9CB40 “Sun Glow”
	
	Purple: #AD007C
	Red: #E32417
	Blue: #018BC9
	Orange: #F29400
	
	@media only screen and (max-width: 600px) { body #page-container { font-size: 0.9em; } }
	@media only screen and (min-width: 600px) { body #page-container { font-size: 0.9em; } }
	@media only screen and (min-width: 768px) { body #page-container { font-size: 1em; } }
	@media only screen and (min-width: 992px) { body #page-container { font-size: 1.1em; } }
	@media only screen and (min-width: 1200px) { body #page-container { font-size: 1.2em; } }
*/

body { font-weight: 300; }

@media all and (min-width: 981px) {
	.et_pb_menu__search-button { padding-left: 80px !important; }
	.mega-menu > .sub-menu { padding: 40px 30px !important; box-shadow: none; }
}
.mega-menu .sub-menu .sub-menu a { font-weight: 400; }
.current-menu-item a { border-bottom: 4px solid #97BE09; padding-bottom: 0 !important; margin-bottom: 2px; }

/* Main menu items - fixes for Divi */
.et_pb_section_1_tb_header {
	max-height: 77px !important;
}
#menu-main > li > a {
	font-size: 18px !important;
	font-weight: 700 !important;
	transition: opacity 200ms ease-in-out !important;
}

.et_pb_menu { margin-bottom: 0 !important; }
.et_mobile_menu { display: none !important; } /* disable divi mobile menu, we have our own */

#full-screen-nav { position: fixed; width: 100%; height: 100%; top: 0; left: 0; z-index: 9999; background: #34403A; padding: 20px 0; display: none; font-family: Mulish, Helvetica, Arial, Lucida, sans-serif; font-size: 18px; overflow-y: scroll; }

#full-screen-nav-close { color: #fff; position: absolute; top: -20px; right: 20px; padding: 0; font-size: 60px; }
#full-screen-nav-close:hover { color: #fff; cursor: pointer; }
#full-screen-nav ul { list-style: none; margin: 50px 0; padding: 0; }
#full-screen-nav ul ul { margin: 0; }
#full-screen-nav li { list-style: none; margin: 0; padding: 0; }
#full-screen-nav a { width: 100%; display: block; color: #fff !important; text-align: center; margin: 0.5em 0; }
#full-screen-nav .current-menu-item a { border-bottom: 0; }
#full-screen-nav > div > div > ul > li > a { font-weight: 700; margin-top: 1em; }

@media all and (min-width: 981px) {
	#full-screen-nav #menu-item-27932 { display: none; } /* Hide Themes on desktop version of full screen menu */
}

/* Top Nav */
@media all and (min-width: 981px) {
	#top-nav { float: right; }
	#top-nav .et-menu, #top-nav .et_pb_menu__wrap { justify-content: end; }
	/*#top-nav .et_pb_menu__wrap { display: block; }*/
	#top-nav .current-menu-item a { border-bottom-width: 2px; }
}

body #page-container { font-size: 20px; opacity: 0.9; }

/* Extra small devices (phones, 600px and down)  - set font to 90% of base sizes */
@media only screen and (max-width: 600px) { body #page-container { font-size: 0.9em; } }

/* Small devices (portrait tablets and large phones, 600px and up)   - set font to 90% of base sizes */
@media only screen and (min-width: 600px) { body #page-container { font-size: 0.9em; } }

/* Medium devices (landscape tablets, 768px and up)  - base font sizes */
@media only screen and (min-width: 768px) { body #page-container { font-size: 1em; } }

/* Large devices (laptops/desktops, 992px and up) - additional 10% size */
@media only screen and (min-width: 992px) { body #page-container { font-size: 1.1em; } }

/* Extra large devices (large laptops and desktops, 1200px and up) - additional 20% size */
@media only screen and (min-width: 1200px) { body #page-container { font-size: 1.2em; } }


/* Divi Main header and nav bug fix for event type template (it doesn't output them there?? */
.et_pb_image_0_tb_header { max-width: 300px; text-align: left; margin-left: 0 !important; }
.et_pb_section_0_tb_header.et_pb_section { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; background-color: #FFFFFF!important; }
.et_pb_section_1_tb_header.et_pb_section { padding-top: 1px !important; padding-bottom: 0px !important; background-color: #eceae6 !important; }


h1, h2, h3 { margin: 1.2em 0 0 0; padding: 0; font-weight: 600; font-family: 'Lato'; letter-spacing: 0; }
h2:first-child, h3:first-child { margin-top: 0; }

h1 { font-size: 2em; }
h2 { font-size: 1.6em; }
h3 { font-size: 1.25em; }
h3 small { font-size: 0.8em; opacity: 0.6; }

strong, b { font-weight: 700; }

/*.et_pb_text h2 { margin: 0 0 25px; }
.et_pb_text h3 { margin: 0 0 25px; padding: 0; }*/

.cc-byline-image { width: 37px; height: 37px; overflow: hidden; float: left; margin: -3px 14px 10px 0; border-radius: 50%; box-shadow: 0.08em 0.08em 0em rgba(0,0,0,0.4); }

/*.single-post .et_pb_post_content { max-width: 920px; margin-left: auto; margin-right: auto; display: relative; }*/

p { font-family: 'Mulish'; font-weight: 300; color: #333; line-height: 1.4em; margin-top: 0.75em; margin-bottom: 0.75em; padding: 0; }
.et_pb_bg_layout_dark p, .et_pb_bg_layout_dark li { color: #fff; }

.et_pb_pagebuilder_layout #page-body > .et_pb_row { width: 100%; max-width: none; }

/* === Title Section === */
body.title-section-bg-97be09 #title-section { background-color: #97be09 !important; }
body.title-section-bg-34403a #title-section { background-color: #34403a !important; }
body.title-section-bg-4c5b5c #title-section { background-color: #4c5b5c !important; }
body.title-section-bg-ad007c #title-section { background-color: #ad007c !important; }
body.title-section-bg-e32417 #title-section { background-color: #e32417 !important; }
body.title-section-bg-018bc9 #title-section { background-color: #018bc9 !important; }
body.title-section-bg-f29400 #title-section { background-color: #f29400 !important; }
/* Overlay when bg image present */
body.title-section-img #title-section::after { content: ''; background: rgba(0,0,0,0.7); display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* No overlay when just bg colour */
body.title-section-no-img #title-section::after, body.search #title-section::after { display: none; }

/* Main Content Bottom margin - Divi vs Gutenberg */
body.page .et_pb_module.et_pb_post_content { margin-bottom: 5em !important; } /* Set Gutenberg content to have whitespace at the end, Pages only (Articles have author box) */
body.et_pb_pagebuilder_layout .et_pb_module.et_pb_post_content { margin-bottom: 0 !important; } /* Divi pages have an additional class, override bottom margin to zero */

.single-post .et_pb_post_content > p,
.single-post .et_pb_post_content > h2,
.single-post .et_pb_post_content > h3,
.single-post .et_pb_post_content > h4,
.single-post .et_pb_post_content > ul,
.single-post .et_pb_post_content > ol,
.single-post .et_pb_post_content > .wp-block-quote,
.single-post .et_pb_post_content > .wp-block-buttons { margin-left: 10%; margin-right: 10%; padding: 0; }

:focus { outline-width: 3px; outline-color: #78aeda; outline-style: solid; }
.dp-dfg-image-link { display: block; opacity: 0.8; }
.dp-dfg-image-link:focus { background-color: #78aeda; }
.dp-dfg-image-link:focus img { opacity: 0.5; }

.et_pb_text a, .et_pb_post_content a:not(.gb-button), .author-description a, .pagination a, #title-section .et_pb_header_content_wrapper a { text-decoration: none !important; border-bottom: 2px solid #97be09; background-image: linear-gradient(120deg, #97be09 0%, #97be09 100%); background-repeat: no-repeat; background-size: 100% 0.0em; background-position: 0 100%; /*transition: all 0.125s ease-in;*/ transition: none; }
.et_pb_text a:hover, .et_pb_post_content a:not(.gb-button):hover, .author-description a:hover, .pagination a:hover, #title-section .et_pb_header_content_wrapper a:hover { border-color: #97be09; background-size: 100% 100%; color: white; cursor: pointer; }
.et_pb_bg_layout_dark a { color: #fff; }
.et_pb_image a, .et_pb_image a:hover, .linked-image { border-bottom: none !important; background-image: none !important; }
.linked-image:hover img { opacity: 0.8; }

.et_pb_post_content ul, .et_pb_text ul {  margin-top: 0.5em; margin-bottom: 0.5em; list-style: none; }
.et_pb_post_content ul ul, .et_pb_text ul ul { padding: 0; }
.et_pb_post_content ul li, .et_pb_text ul li { position: relative; padding-left: 24px; margin: 0.5em 0 0.5em -24px; color: #333; line-height: 1.4em; }
  .et-db #et-boc .et-l .et-fb-settings-option-select li { margin-left: 0; } /* Divi builder fix */
  .et-db #et-boc .et-l .et-fb-settings-option-select li::before, li.et_pb_counter::before { display: none !important; } /* Divi builder fix */
.et_pb_post_content ul li::before, .et_pb_text ul li::before { content: "•"; color: #1a1a1a; left: 0; position: absolute; }
.et_pb_post_content ul > li::before, .et_pb_text ul > li::before { color: #97BE09; }
.et_pb_post_content ol li, .et_pb_text ol li { margin: 0.5em 0; color: #333; line-height: 1.4em; }

/* Pull Quote - Gutenberg */
.single-post .et_pb_post_content > .wp-block-pullquote { margin: 60px 0; padding: 0; }
.single-post .et_pb_post_content > .wp-block-pullquote blockquote { border-left: 0; margin: 0 10%; padding: 0; position: relative; }
.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { color: #97BE09; content: '“'; display: block; position: absolute; }
.single-post .et_pb_post_content > .wp-block-pullquote blockquote p { font-size: 1.8em; color: #000; font-weight: 400; line-height: 1.4em; text-align: left; }
.single-post .et_pb_post_content > .wp-block-pullquote blockquote cite { font-style: normal; font-weight: 600; text-align: left; display: block; margin-top: -0.25em; }
/*.single-post .et_pb_post_content > .wp-block-pullquote blockquote cite::before { content: "- "; }*/
@media only screen and (max-width: 600px) {
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { font-size: 100px; left: -40px; top: 30px; }
}
@media only screen and (max-width: 340px) {
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { left: -10px; top: 0; }
}
@media only screen and (min-width: 600px) {
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { font-size: 150px; left: -60px; top: 48px; }
}
@media only screen and (min-width: 768px) {
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { font-size: 200px; left: -85px; top: 70px; }
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote p { font-size: 1.4em; }
}
@media only screen and (min-width: 992px) {
	.single-post .et_pb_post_content > .wp-block-pullquote blockquote::before { font-size: 300px; left: -128px; top: 105px; }	
}

/* Quote - Gutenberg */
.single-post .et_pb_post_content > .wp-block-quote { padding-left: 25px; margin-top: 1.2em; margin-bottom: 2em; }
.single-post .et_pb_post_content > .wp-block-quote cite { font-style: normal; font-weight: 600; }

.divi-pull-quote { font-size: 50px; }
.divi-pull-quote p { margin: 0; padding: 0 0 0.5em; }
.divi-pull-quote p:last-child { font-size: 0.5em; }

/* CC Quotes */
.cc-quote { font-size: 0.8em; padding: 0.5em 1.5em; background-color: #ECEAE6; }
.cc-quote-img { margin-bottom: 0; }
.cc-quote-img img { border-radius: 50%; }
.cc-quote-author { font-size: 0.8em; line-height: 1.4em; margin-top: 0; margin-bottom: 0; }
.cc-quote-meta { font-size: 0.7em; line-height: 1.4em; margin-top: 0; }

.et_pb_post_content > ul > li:last-child,
.et_pb_post_content > ol > li:last-child { margin-bottom: 0; }

figure.wp-block-image { margin: 1.2em 0; }
figure.wp-block-embed { margin: 1.2em 0; }
.et_pb_post_content > .wp-caption { margin-top: 1.2em; margin-bottom: 1.2em; }
.fluid-width-video-wrapper { margin: 1.2em 0; }
.et_pb_column_1_2 .fluid-width-video-wrapper { margin: 0; }
twitter-widget, .twitter-tweet, .twitter-widget, figure.wp-block-embed, iframe.instagram-media { margin: 1.2em auto 1.5em !important; }
.tiktok-embed { border-left: none !important; padding-left: 0 !important; }

/* Buttons */
#main-content .et_pb_button { font-size: 1em; }
#main-content .et_pb_button.sm-button, #main-content .et_pb_button.dp-dfg-load-more-button { font-size: 20px; }
.et_pb_post_content .wp-block-buttons > .wp-block-button > a { color: #fff !important; } /* Note: .et_pb_button applied via JS */

/* Authors */
.et_pb_team_member { margin-top: 1.5em; }
.author-section .et_pb_team_member_image { margin-top: 5px; text-align: left !important; }
.author-section .et_pb_team_member_image img { width: 128px; height: auto; }
.et_pb_member_position { color: #1a1a1a; font-weight: 600; }
ul.et_pb_member_social_links { display: flex; flex-direction: row; justify-content: flex-start; align-items: center; margin: 0.75em 0 1em; box-sizing: border-box; list-style-type: none !important; padding: 0 !important; }
ul.et_pb_member_social_links li { margin-right: 0 !important; }
ul.et_pb_member_social_links li::before { display: none !important; }
ul.et_pb_member_social_links li a { background: #34403A; display: block; font-size: 16px; width: 32px; height: 32px; line-height: 35px; border-radius: 50%; color: #fff; margin-right: 13px; text-align: center; border-bottom-width: 0 !important; }
ul.et_pb_member_social_links a.ccIcon { line-height: 31px; }
ul.et_pb_member_social_links li a:hover { color: #fff; background: #97BE09; }

/* Team */
/*.block-team { margin: 25px 0; }*/
.block-team .wp-block-columns { margin-bottom: 0; }
.staff-member { font-size: 0.8em; clear: both; margin-bottom: 40px; }
.staff-member h3 { margin: 25px 0 15px; }
.staff-member p { overflow: hidden; }
.staff-member img { width: 120px; height: 120px; float: left; margin: 4px 25px 40px 0; }
.wp-block-column .staff-member img { margin-bottom: 0; }
.staff-member .twitter-follow-button { margin: 0 5px 0 0; }
.staff-member .linkedin-button img { margin: 4px 20px 0 0; width: 55px; height: auto; }
.staff-email { font-size: 0.9em; border-bottom-width: 1px !important; }
.staff-tel { font-size: 0.9em; }

/* Tables */
table { width: 100%; margin: 1em 0; border: 10px solid #f2f2f2; border-spacing: 0; }
table th, table td { padding: 0.75em 1.25em 0.25em; margin: 0; font-size: 0.85em; border: 0; border-top: 2px solid #f2f2f2; vertical-align: top; }

/* Event details */
.event-details p { font-weight: 600; }
.event-details-top p { color: #fff; }
.event-button { margin: 1.5em 0; }
.event-terms a { font-size: 0.8em; color: #666; }

/* Event agenda */
.agenda-person { margin: 0.75em 0 !important; padding: 0 !important; }
.agenda-person-logo { float: right; margin: 0 0 0.5em 1em !important; max-width: 150px !important; max-height: 70px; height: auto; }
.agenda-person-photo { float: left; margin: 0 0.5em 0.5em 0 !important; }
.agenda-person-title-organisation { font-size: 0.9em; }

/* eNews form */
#signupform { border: 10px solid #f2f2f2; padding: 20px; }
#signupform label { font-size: 0.9em; display: block; margin-bottom: 5px; font-weight: bold; }
#signupform input[type=text] { padding: 8px 10px; width: 100%; max-width: 350px; font-size: 18px; border-radius: 5px; color: #000; }
#signupform input[type=checkbox] { float: left; margin: 10px 10px 10px 0; }
#signupform .submit input { margin-top: 10px; }

/* FilterGrid - Filters */
.dpdfg_filtergrid .dp-dfg-skin-default .dp-dfg-filters > ul { justify-content: left; padding-left: 0 !important; }
#past-events-full.dpdfg_filtergrid .dp-dfg-skin-default .dp-dfg-filters > ul:last-of-type,
#on-demand-events-full.dpdfg_filtergrid .dp-dfg-skin-default .dp-dfg-filters > ul:last-of-type { margin-bottom: 40px; }
#recent-events.dpdfg_filtergrid .dp-dfg-skin-default .dp-dfg-filters > ul:last-of-type { margin-bottom: 40px; }
.dp-dfg-filters ul li::before { content: none; }
.dp-dfg-filters a { transition: none !important; }
.dp-dfg-filters a:hover { color: #fff !important;  }
.hide-filters .dp-dfg-filters { display: none !important; }

/* FilterGrid - Custom content */
#upcoming-events .dp-dfg-meta, #recent-events .dp-dfg-meta, #past-events .dp-dfg-meta { display: none; }
.dp-dfg-item .custom-date { font-size: 18px; margin: 0; padding: 0.5em 0 !important; }
.dp-dfg-item .custom-excerpt { font-size: 20px; margin: 0.5em 0 !important; padding: 0 !important; }
#upcoming-events .dp-dfg-item .custom-date, #recent-events .dp-dfg-item .custom-date { margin: 0 0 0 0 !important; }
#past-events-full .dp-dfg-pagination { margin-top: 40px; }
#past-events .dp-dfg-pagination { margin-top: 1.5em; }

/* FilterGrid - Grid */
.dp-dfg-layout-grid .dp-dfg-item { background: none; padding: 0; }
.dp-dfg-layout-grid .dp-dfg-image img { object-fit: cover; height: 220px; max-height: 220px; background: white; }
/*.dp-dfg-layout-grid .dp-dfg-item.type-job a { display: block; width: 100%; }*/
.dp-dfg-layout-grid .dp-dfg-item.type-job .dp-dfg-image img { object-fit: contain; object-position: center center; max-width: 80%; height: 220px; max-height: 220px; background: white; margin-left: auto; margin-right: auto; }
.dp-dfg-layout-grid .dp-dfg-item .dp-dfg-header { margin-top: 1em; }
#recent-events article { margin-bottom: 2em; }

/* FilterGrid - List */
.filtergrid-list .dp-dfg-overlay, .filtergrid-list img { max-height: 242px; }
.filtergrid-list .dp-dfg-header { margin-bottom: 0; padding-bottom: 0; }
.filtergrid-list .dp-dfg-header .entry-title { margin-top: 0; }
.filtergrid-list .dp-dfg-content { font-size: 0.8em; padding-top: 0; padding-bottom: 0; margin-top: 0; margin-bottom: 0; }

/* Member Lists */
ul.member-list { list-style: none; }
ul.member-list li { display: inline-block; width: 100%; font-size: 16px; padding: 0 25px .5em 0 !important; vertical-align: top; }
ul.member-list li::before { content: none; }
ul.member-list li a { border-bottom-width: 1px; }
@media only screen and (min-width: 768px) {
	ul.member-list li { width: 50%; }	
}
@media only screen and (min-width: 992px) {
    ul.member-list li { width: 33.333%; }
}

/* Divi Accordion */
/*.et_pb_toggle_open .et_pb_toggle_title:before { display: block !important; content: "\e04f"; }*/ /* Add close icon */
.et_pb_toggle { transition: background-color 0.3s ease; }
.et_pb_accordion_toggling .et_pb_toggle { background-color: white !important; }

/* Footer */
#site-footer p { margin-bottom: 0.75em !important; }
#site-footer a { color: #97be09 !important; border-bottom: 0; }
#site-footer a strong { color: #fff !important; }
#site-footer a:hover { color: #1A1A1A !important; }

/* Search Results */
#search-result-widget { border-right: 0; padding-right: 0; background: #ECEAE6; padding: 15px 20px; }
#search-result-filters h3 { margin-bottom: 15px; }
.jetpack-search-filters-widget__sub-heading { margin-top: 30px !important; margin-bottom: 10px !important; }
ul.jetpack-search-filters-widget__filter-list { margin-bottom: 0 !important; padding-left: 0; }
ul.jetpack-search-filters-widget__filter-list li { margin: 0.3em 0; }
ul.jetpack-search-filters-widget__filter-list li label { font-size: 0.63em; text-indent: -29px; padding-left: 25px; line-height: 1.1em; }
ul.jetpack-search-filters-widget__filter-list li label a { color: #1A1A1A !important; }
.jetpack-search-filters-widget__clear { font-size: 14px; }
#search-result-items img { float: right; width: 200px; margin: 0.25em 0 0.5em 2em; }

/* Member badge */
textarea.code { padding: 15px; width: 100%; height: 100px; font-family: "Menlo", "Courier New", "Terminal", "monospace"; font-size: 14px; line-height: 14px; }

/* -- Suppliers -- */
#supplier-search { background: #ECEAE6; padding: 25px 30px 15px; }
#supplier-search select { font-size: 18px; padding: .3em .5em; }
#supplier-search label.checkbox { font-size: 16px; }

#supplier-list { margin: 40px 0; }
#supplier-list .supplier-item { display: flex; align-items: center; flex-direction: column; margin: 25px 0; padding: 0 0 25px; border-bottom: 2px solid #ECEAE6; }
#supplier-list .supplier-item .supplier-image { flex: auto; margin: 20px 0; text-align: center; }
#supplier-list .supplier-item .supplier-image img { max-width: 150px; max-height: 150px; }
#supplier-list .supplier-item .supplier-details p.supplier-description { font-size: 16px; }
#supplier-list .supplier-item .supplier-details p.supplier-links { font-size: 16px; }
#supplier-list .supplier-item .supplier-details p.supplier-links a { margin: 0 5px 0 0; }
#supplier-list .supplier-item .supplier-details p.supplier-benefit { font-size: 14px; margin: 4px 0; color: #4C5B5C; }
#supplier-list .supplier-item .supplier-details p.supplier-benefit:before { content: "• "; color: #97BE09; }
@media only screen and (min-width: 768px) {
	#supplier-list .supplier-item { flex-direction: row; }
	#supplier-list .supplier-item .supplier-image { flex: 0 0 210px; margin: 0; }
}

/* Divi Number Counter */
.et_pb_circle_counter.et_pb_with_title .percent p, .et_pb_number_counter.et_pb_with_title .percent p { margin-top: 0; }

/* -- Special -- */

/* Dot nav */
#vertical-dot-nav { position: fixed; left: -40px; top: 220px; z-index: 1; }
#vertical-dot-nav ul { margin: 0; list-style: none; float: left; clear: both; }
#vertical-dot-nav ul.vertical-dot-nav { padding: 7px 9px 12px 8px; border-radius: 0 10px 10px 0; background: rgba(0,0,0,0.65); }
#vertical-dot-nav li { display: list-item; text-align: left; float: left; clear: both; }
#vertical-dot-nav a { float: left; display: block; }
#vertical-dot-nav a:after { content: ""; display: table; clear: both; }
#vertical-dot-nav a span { float: left; display: block; transform: scale(0.7); }
#vertical-dot-nav a:hover span { transform: scale(1); }
#vertical-dot-nav a:hover .cd-label { opacity: 1; }
#vertical-dot-nav a.is-selected .cd-dot:before { top: 4px; left: 4px; width: 8px; height: 8px; border-radius: 50%; background: rgba(0,0,0,0.65); content: ''; display: block; position: absolute; }
#vertical-dot-nav .cd-dot { margin: 2px 0; position: relative; top: 8px; height: 16px; width: 16px; border-radius: 50%; background-color: #fff; transition: transform 0.2s, background-color 0.5s; transform-origin: 50% 50%; }
#vertical-dot-nav .cd-label { border-radius: 3px; margin: 6px 0 0 0; padding: 0 7px; color: #000; font-size: 13px; transition: transform 0.2s, opacity 0.2s; opacity: 0; transform-origin: 100% 50%;  position: absolute; left: 44px; white-space: nowrap; background-color: rgba(255,255,255,0.45); }
#vertical-dot-nav .cd-label:before { border-top: 5px solid transparent; border-bottom: 5px solid transparent; border-right: 5px solid white; width: 0; height: 0; content: ""; position: absolute; display: block; opacity: 0.45; left: -5px; margin: 6px 0 0 0; }
#vertical-dot-nav ul.vertical-dot-nav-social { padding: 10px 10px 0 8px; }
#vertical-dot-nav ul.vertical-dot-nav-social a i { color: rgba(0,0,0,0.65); }
#vertical-dot-nav ul.vertical-dot-nav-social a { text-align: center; font-size: 18px; }
#vertical-dot-nav ul.vertical-dot-nav-social a:hover i { color: #fff; }
@media (max-width: 767px) {
	#vertical-dot-nav { display: none; }
}
@media print {
	#vertical-dot-nav { display: none; }
}

/* section nav */
.section-nav ul { margin: 0 !important; padding: 10px 0 0 0 !important; }
.section-nav ul li { margin: 0 10px 0 0 !important; padding: 0 !important; display: inline-block; }
@media (max-width: 767px) { .section-nav ul li { margin-bottom: 10px !important; } }
.section-nav ul li::before { display: none; }
.section-nav ul li a { width: 46px; height: 46px; font-size: 20px; line-height: 20px; color: #fff !important; padding: 10px !important; border-radius: 50% !important; display: block; text-align: center !important; font-weight: bold; background: #7EAA28 !important; border: 1px solid #7EAA28 !important; }
@media (max-width: 767px) { .section-nav ul li a { width: 40px; height: 40px; font-size: 16px; padding: 7px !important; } }
.section-nav ul li a.is-selected { color: #7EAA28 !important; }

/*.colour-green .section-nav ul li a { background: #7EAA28 !important; border: 1px solid #7EAA28 !important; }
.colour-blue .section-nav ul li a { background: #018BC9 !important; border: 1px solid #018BC9 !important; }
.colour-red .section-nav ul li a { background: #E32417 !important; border: 1px solid #E32417 !important; }
.colour-purple .section-nav ul li a { background: #AD007C !important; border: 1px solid #AD007C !important; }
.colour-orange .section-nav ul li a { background: #F29400 !important; border: 1px solid #F29400 !important; }*/

/*.colour-green .section-nav ul li a.is-selected { color: #7EAA28 !important; }
.colour-blue .section-nav ul li a.is-selected { color: #018BC9 !important; }
.colour-red .section-nav ul li a.is-selected { color: #E32417 !important; }
.colour-purple .section-nav ul li a.is-selected { color: #AD007C !important; }
.colour-orange .section-nav ul li a.is-selected { color: #F29400 !important; }*/

.section-nav ul li a.is-selected { background: transparent !important; }

/* Article content */
.special .et_pb_text h1, .special .et_pb_text h1 a { margin: 10px 0 10px !important; padding: 0 !important; font-size: 120px; line-height: 110% !important; text-align: center; }
.special .et_pb_text h2, .special .et_pb_text h2 a { margin: 10px 0 10px !important; padding: 0 !important; font-size: 80px;  line-height: 110% !important; }
.special .et_pb_text h3, .special .et_pb_text h3 a { margin: 30px 0 15px !important; padding: 0 !important; font-size: 35px;  line-height: 125% !important; }
.special .et_pb_text h4, .special .et_pb_text h4 a { margin: 15px 0 15px !important; padding: 0 !important; font-size: 23px;  line-height: 125% !important; }
.special .et_pb_text h4 a:hover { color: black !important; }
.special .et_pb_text ul { margin-top: 0 !important; }
@media (max-width: 767px) {
	.et_pb_text h1, .et_pb_text h1 a { font-size: 41px !important; }
	.et_pb_post_content .et_pb_section .et_pb_row { width: 80% !important; }
}

/* Section header */
.section-header { min-height: 550px; }
.section-header:not(#section-intro)::after { content: ''; background: rgba(0,0,0,0.6); display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.section-header#section-intro { min-height: 600px; }
.section-header p { margin: 30px 0 30px !important; padding: 0 !important; font-size: 30px; font-family: 'Lato'; font-weight: 600; text-shadow: 0 0 10px rgba(0,0,0,0.6) !important; color: #fff !important; opacity: 1; }
.section-header p span { color: #fff !important; }
.section-header h2 { margin: 20px 0 0 0 !important; padding: 0 !important; font-size: 91px; line-height: 110% !important; font-weight: bold !important; }
@media (max-width: 767px) { .section-header h2 { font-size: 48px !important; } }
.section-header h3 { margin: 15px 0 0 0 !important; padding: 0 !important; font-size: 48px; line-height: 125% !important; font-weight: bold !important; }
@media (max-width: 767px) { .section-header h3 { font-size: 30px !important; } }
.section-header h2, .special .section-header h3 { text-shadow: 0 0 10px rgba(0,0,0,0.6) !important; }

/* Section - Contents */
.special #section-contents h4 { margin: 30px 0 !important; }

/* Block quote */
.special .et-db #et-boc .et_pb_module blockquote { margin: 0 0 40px !important; padding-left: 0; border-left: 0; }
.special .et-db #et-boc .et_pb_column_1_2 .et_pb_module blockquote,
.special .et-db #et-boc .et_pb_column_2_5 .et_pb_module blockquote { margin-top: -8px !important; }
.special .et-db #et-boc .et_pb_column_1_2 .et_pb_module blockquote h3,
.special .et-db #et-boc .et_pb_column_2_5 .et_pb_module blockquote h3 { margin-top: 0 !important; }

/* Video embeds */
.special .jetpack-video-wrapper { margin-top: -10px !important; margin-bottom: 10px !important; }
.special .ted-video iframe { width: 800px; height: 450px !important; }

/* Blurb */
.et_pb_blurb .et_pb_blurb_content { padding: 1.5em 1.5em 0.5em !important; max-width: none !important; }
@media (max-width: 767px) { .et_pb_blurb .et_pb_blurb_content { margin: 20px 0 !important; padding: 15px 30px !important; } }
.et_pb_blurb h3 { margin: 0 0 10px !important; padding: 0 !important; font-size: 44px; line-height: 125% !important; font-weight: bold !important; }
.et_pb_blurb h4 { margin: 0 0 10px !important; padding: 0 !important; font-size: 23px; line-height: 125% !important; font-weight: bold !important; }
.et_pb_column_1_3 .et_pb_blurb .et_pb_blurb_content { margin: 0 0 20px !important; padding: 15px 30px !important; }

/* Audio */
.et_pb_audio_module, .et_pb_audio_module .et_audio_container { background-color: transparent !important; }
.et_pb_audio_module .et_audio_container { padding: 0 !important; text-align: left; }
.et-db #et-boc .et_pb_audio_module .et_audio_container > h2 { font-family: "Century Gothic W01" !important; font-weight: bold; font-size: 24px; margin: 0 0 10px !important; text-align: left; }
.mejs-playpause-button button { border-radius: 50% !important; }
.mejs-time-handle, .mejs-horizontal-volume-handle { margin-top: -3px !important; }
.mejs-duration-container { padding-top: 0 !important; }
.mejs-volume-button, .et-db #et-boc .et_audio_container .mejs-controls a.mejs-horizontal-volume-slider { display: none !important; }
.et-db #et-boc .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total { height: 1px !important; }
.et-db #et-boc .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-handle { margin-top: -4px !important; }

.colour-blue .mejs-playpause-button button { border: 1px solid #018BC9 !important; }
.colour-red .mejs-playpause-button button { border: 1px solid #E32417 !important; }
.colour-purple .mejs-playpause-button button { border: 1px solid #AD007C !important; }
.colour-orange .mejs-playpause-button button { border: 1px solid #F29400 !important; }

.colour-blue .mejs-playpause-button button:before { color: #018BC9 !important; }
.colour-red .mejs-playpause-button button:before { color: #E32417 !important; }
.colour-purple .mejs-playpause-button button:before { color: #AD007C !important; }
.colour-orange .mejs-playpause-button button:before { color: #F29400 !important; }

.colour-blue .et_pb_audio_module .et_audio_container > h2 { color: #018BC9 !important; }
.colour-red .et_pb_audio_module .et_audio_container > h2 { color: #E32417 !important; }
.colour-purple .et_pb_audio_module .et_audio_container > h2 { color: #AD007C !important; }
.colour-orange .et_pb_audio_module .et_audio_container > h2 { color: #F29400 !important; }

.colour-blue .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total, .colour-blue .mejs-time-handle, .colour-blue .mejs-horizontal-volume-handle { background-color: #018BC9 !important; }
.colour-red .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total, .colour-red .mejs-time-handle, .colour-red .mejs-horizontal-volume-handle { background-color: #E32417 !important; }
.colour-purple .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total, .colour-purple .mejs-time-handle, .colour-purple .mejs-horizontal-volume-handle { background-color: #AD007C !important; }
.colour-orange .et_audio_container .mejs-controls .mejs-time-rail .mejs-time-total, .colour-orange .mejs-time-handle, .colour-orange .mejs-horizontal-volume-handle { background-color: #F29400 !important; }

.colour-blue .et_audio_container .mejs-playpause-button button:before, .colour-blue .et_audio_container .mejs-volume-button button:before { color: #018BC9 !important; }
.colour-red .et_audio_container .mejs-playpause-button button:before, .colour-red .et_audio_container .mejs-volume-button button:before { color: #E32417 !important; }
.colour-purple .et_audio_container .mejs-playpause-button button:before, .colour-purple .et_audio_container .mejs-volume-button button:before { color: #AD007C !important; }
.colour-orange .et_audio_container .mejs-playpause-button button:before, .colour-orange .et_audio_container .mejs-volume-button button:before { color: #F29400 !important; }

/* Cookie consent */
/*.widget_eu_cookie_law_widget { bottom: 0 !important; left: 0 !important; right: 0 !important; }
.widget_eu_cookie_law_widget #eu-cookie-law { color: #1A1A1A; font-size: 13px; line-height: 1.4em ; border-left: 0; border-right: 0; border-bottom: 0; }*/

/* Cookie Policy List */
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy * { font-family: 'Mulish'; font-weight: 300; }
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy #cookie-policy-title { color: #000 !important; font-size: 2.2rem !important; font-family: 'Lato',Helvetica,Arial,Lucida,sans-serif; font-weight: bold; }
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy #cookie-policy-description, 
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy .ot-sdk-cookie-policy-group-desc { font-size: 1.4rem !important; line-height: 1.4; }
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy .ot-table-header { font-size: 1.0rem !important; font-weight: bold; }
#ot-sdk-cookie-policy-v2.ot-sdk-cookie-policy .ot-sdk-cookie-policy-group { font-size: 1.5rem !important; font-family: 'Lato',Helvetica,Arial,Lucida,sans-serif; font-weight: bold; }
#ot-sdk-cookie-policy th, #ot-sdk-cookie-policy td,
#ot-sdk-cookie-policy th a, #ot-sdk-cookie-policy td a { font-size: 1.1rem; }

/* Awards Winners */
.winners a { border-color: #e32417 !important; background-image: linear-gradient(120deg, #e32417 0%, #e32417 100%); }
.winners-index { background: #ECEAE6; margin: 3em 0 3em; padding: 25px 20px 10px; }
.winners-index h2 { margin: 0 0 25px; }
.winners-index-list { display: flex; flex-wrap: wrap; }
.winners-index-list-item { flex: 100%; margin: 0 0 15px; padding: 0; }
.winners-index-list-item-title a { font-weight: bold; overflow: hidden; font-size: 22px; }
.winners-index-list-item-subtitle { margin: 5px 0 0 0; font-size: 17px; line-height: 1.2em; }
@media (min-width: 768px) {
	.winners-index { padding: 35px 40px 20px; }
	.winners-index-list-item { flex: 50%; padding: 0 5% 0 0; }
}
.winners-index-list-item img { width: 50px; height: auto; margin: 5px 20px 15px 0; float: left; }
.winners-full-item { margin: 0 0 1em; padding: 1.5em 0 1.5em; border-top: 2px solid #e32417; }
.winners-full-item-header { height: auto; margin: 0 0 25px; float: none; width: 100%; }
.winners-full-item-header img { width: 80px; height: auto; float: left; margin-right: 20px; }
.winners-full-item-header h2 { margin-top: 0; }
.winners-full-item-header h3 { margin-top: 5px; font-weight: normal; overflow: hidden; }
@media (min-width: 768px) {
	.winners-full-item-header { float: left; }
	.winners-full-item-header img { width: 152px; height: auto; float: left; margin-right: 25px; }	
}
.judges { background: #ECEAE6; margin: 1em 0 2em; padding: 25px 20px 10px; }
@media (min-width: 768px) {
	.judges { padding: 35px 40px 20px; }
}
.back-to-top a { font-size: 0.75em; border-bottom-width: 1px; }
#past-award-winners { background: #ECEAE6; padding: 20px 30px; font-weight: bold; font-size: 0.8em; }
#past-award-winners a { margin: 0 0 0 10px; display: inline-block; border-color: #e32417 !important; background-image: linear-gradient(120deg, #e32417 0%, #e32417 100%); }

/* Bubble quote */
blockquote.bubble { background: #e32417; margin: 6px 0 35px; padding: 10px 35px 0; border-left: none; border-radius: 8px; position: relative; }
blockquote.bubble p { color: #fff !important; font-style: normal; font-weight: 900; font-size: 28px; line-height: 1.4em; opacity: 1; font-family: 'Lato',Helvetica,Arial,Lucida,sans-serif; text-align: center; }
blockquote.bubble p::before { content: "“"; font-family: 'Mulish'; font-size: 2.5em; display: block; text-align: left; margin: 0 0 15px 0; }
blockquote.bubble p::after { content: "”"; font-family: 'Mulish'; font-size: 2.5em; display: block; text-align: right; margin: 25px 0 0 0; }
blockquote.bubble::after { margin: 12px 0 0; border-left: 40px solid transparent; right: 30px; border-top: 25px solid #97be0b; border-top-color: #e32417; content: ""; width: 0; height: 0; display: block; position: absolute; bottom: -25px; }
blockquote.bubble.red::after { border-top-color: #e32417 !important; }
@media (min-width: 768px) {
	blockquote.bubble { width: 350px; float: right; margin-left: 40px; }
}

/* Author articles */
.author-articles { margin: 40px 0; }
.author-articles article { margin: 0 0 40px; }
.author-articles article img { min-width: 100%; }
.author-articles article .wp-block-media-text__content { padding: 0 4%; }
.author-articles article .title { margin-top: 15px; }
.author-articles article .title a { font-size: 22px; font-weight: bold; }
.author-articles article .meta { margin: 15px 0 10px; font-size: 16px; color: rgba(26,26,26,0.8); }
.author-articles article .excerpt { font-size: 16px; line-height: 1.4; }
@media (min-width: 601px) { 
	.author-articles article .title { margin-top: 0; }
}

/* Pager */
.pager { margin: 20px 0; margin-bottom: 20px; background: #eee; padding: 15px; text-align: center; font-weight: 600; font-size: 18px; }
.pager a, .pager span { margin: 0 8px; }
.pager .current { border-bottom: 0 !important; font-weight: bold; cursor: default; }

/* Social icons */
#site-footer .social-icons { display: flex; }
#site-footer .social-icons a, #site-footer .social-icons a:hover { margin: 10px; color: white !important; background-color: none !important; border-color: none !important;  background-image: none !important; flex: 1; }

/* Featured post shortcode */
.featured-post a figure { background-color: white; line-height: 0; }
.featured-post a figure figcaption { padding: 0.5em 0.75em 0.75em; color: #1A1A1A; font-size: 26px; font-weight: 700; letter-spacing: -0.04rem; text-decoration: underline; }
.featured-post a:hover figure { background-color: #97BE09; } /*#ECEAE6*/
.featured-post a:hover figure img { opacity: 0.75; }
.featured-post a:hover figure figcaption { cursor: pointer; }
.featured-post a h4 { text-decoration: underline; text-decoration-thickness: 1px; }
.featured-post a:hover h4 { text-decoration-thickness: 2px; }

/* Accessible panel boxes */
.postid-40104 .et_pb_promo { background-color: #E3EEC6 !important; }
.postid-40104 .et_pb_promo_description h2 { color: #111 !important; }
.postid-40104 .et_pb_promo_description p { color: #111 !important; font-weight: 400; }
.postid-40104 .et_pb_promo_description a { color: #111 !important; }
.postid-40104 .et_pb_promo_description a:hover { color: #000 !important; }

.has-bg-video-320 { min-height: 320px !important; }
.has-bg-video-320 > .et_pb_section_video_bg { max-height: 320px; max-width: 320px; width: 320px; height: 320px; background-size: 320px !important;}
.has-bg-video-320 > .et_pb_section_video_bg > .mejs-video { width: 320px !important; height: 320px !important; }
.has-bg-video-320.et_pb_column.et_pb_column_empty { display: block; }

/* Utilities */
.hide { display: none !important; }
body.admin-bar .hide { display: block !important; }

/* Gridbuilder - card */

.wpgb-card-media-thumbnail {
	aspect-ratio: 4 / 3;
}

/* Gridbuilder - pagination */

.wpgb-facet-1 {
	width: 100%;
}

.wpgb-pagination-facet {
	margin: 20px 0;
	background: #eceae6;
	border-radius: 4px;
	padding: 15px;
	text-align: center;
	font-weight: 600 !important;
	font-size: 18px;
	width: 100%;
}

.wpgb-facet .wpgb-pagination li a {
	border-radius: 4px;
	font-weight: 600 !important;
}

.wpgb-facet .wpgb-pagination li a:hover {
	color: white !important;
	background-color: #4c5b5c !important;
	background-image: none !important;
}

.wpgb-facet .wpgb-pagination li a[aria-current],
.wpgb-facet .wpgb-pagination li a[aria-current]:hover {
	color: black !important;
	background-color: #97be09 !important;
}


/* Gridbuilder - facets */

.wpgb-sidebar .wpgb-facet {
	padding: 0px 25px 1px;
	background-color: #eceae6;
}

@media (min-width: 768px) {	
	.wpgb-sidebar .wpgb-facet {
		margin-left: 25px;
	}
}

.wpgb-sidebar .wpgb-facet:first-child {
	padding-top: 30px;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
}

.wpgb-sidebar .wpgb-facet:last-child {
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.wpgb-facet-title {
	margin-bottom: 20px !important;
}

.wpgb-facet li::before {
	display: none;
}

.wpgb-checkbox-control,
.wpgb-facet select.wpgb-select,
.wpgb-facet .wpgb-search-facet input[type="search"],
.wpgb-facet .wpgb-autocomplete-facet input[type="search"] {
	background-color: white !important;
}

.wpgb-facet .wpgb-checkbox-facet .wpgb-checkbox[aria-pressed="true"] .wpgb-checkbox-control::after {
	border-color: #222 !important;
}

.wpgb-checkbox-label span {
	opacity: 0.75;
	font-size: 14px;
	padding-left: 10px;
}

/* Pane */

.pane {
	padding: 30px 30px 20px;
	margin-bottom: 25px;
    border: 1px solid #bbb;
    border-radius: 4px;
}

.pane .button-group {
	margin: 20px 0 30px;
}

.pane p {
	font-size: 17px;
}

/* Breadcrumbs */

.breadcrumbs {
	color: #333;
	font-size: 16px;
	margin: 15px 0 50px;
}

.breadcrumbs strong {
	color: #aaa;
	padding: 0 2px;
	font-weight: 400;
}

.breadcrumbs a {
	color: black !important;
	background-image: none !important;
	border-bottom: none !important;
	font-weight: 400;
}

.breadcrumbs a:hover {
	color: black !important;
	text-decoration: underline !important;
}

/* Account welcome */

.account-welcome p {
	font-size: 19px;
}

/* Mentor request form */

#gform_5 .gfield_required {
	display: none !important;
}

/* Status (Account Membership, Mentoring Request) */

.status-label {
	font-size: 13px;
	font-weight: 500;
}

.status {
	background-color: #f1f1f1;
	padding: 3px 10px;
	border-radius: 6px;
	font-size: 13px;
	letter-spacing: 0.5px;
	color: #555;
	text-transform: uppercase;
}

/* Alerts */

.alert {
	font-weight: 500;
	margin: 15px 0 30px;
	padding: 10px 20px;
	border-radius: 6px;
}

.alert-success {
	background-color: #dceddb;
}

.alert-info {
	background-color: #dbe9ed;
}

/* Avatar */

.avatar {
	border-radius: 100%;
}

/* Mentoring Directory modal */

.directory-header {
	display: flex;
	gap: 20px;
	margin: 0 0 20px;
}

.directory-header-text {
	flex-grow: 1;
}

.directory-profile-name {
	margin-bottom: 10px !important;
}

/* GridBuilder */

.wp-grid-builder {
	scroll-margin-top: 20px;
}

/* Divi - hide Enable Visual Builder on non-Divi pages */

#wp-admin-bar-et-use-visual-builder a[href*="et_fb_activation_nonce"] {
	display: none !important;
}