/*--------------------------------------------------------------------
  
  Theme Name: Launchpad
  Author: The Pixel Parlour
  Author URI: https://www.pixelparlour.co.uk/launchpad/
  Version: 1.0
  Updated: 09.12.2021
  
  Designed & Handcrafted by The Pixel Parlour
  
  0.  CSS Resets
  1.  Common Styles
  2.	Universal Elements
  3.  Common Page Elements
  4.  Owl Carousel
  5.  WooCommerce
  
--------------------------------------------------------------------*/


/*------------------------------------------------------------------*/
/*  0.  CSS Resets
/*------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
:focus { outline: 0; }
ins { text-decoration: none; }
del { text-decoration: line-through; }
table { border-collapse: collapse; border-spacing: 0; }

.clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } .clearfix { display: inline-block; } /* Hide from IE Mac \*/ .clearfix { display: block; } /* End hide from IE Mac */ .none { display: none; } /* End Clearfix */

.hidden { display: none; }

.alignleft { float: left; }
.alignright { float: right; }
.aligncenter { margin-left: auto; margin-right: auto; display: block; clear: both; }

.clear { clear: both; display: block; font-size: 0; height: 0; line-height: 0; width:100%; }

section, article, header, footer, nav, aside, hgroup { display: block; }




/*------------------------------------------------------------------*/
/*  1.  Common Styles
/*------------------------------------------------------------------*/

/*--------------------------------------------------------------------

  font: Open Sans
  font-family: 'Open Sans', Helvetica, Arial, sans-serif;
  font-weight: 400 (regular), 600 (semibold), 700 (bold);
  
  Primary Colours - - -
  
  Text        #394044
  
  Greys - - - - - - - - 
  
  Black       #1D1D1D
  Light Grey  #
  
--------------------------------------------------------------------*/

/* Hide Text Whilst Fonts Load */
.wf-loading h1,
.wf-loading h2,
.wf-loading h3,
.wf-loading h4,
.wf-loading h5,
.wf-loading h6,
.wf-loading p,
.wf-loading ol li,
.wf-loading ul li { visibility: hidden; }

/* Show Text Once Fonts Loaded */
.wf-active h1,
.wf-active h2,
.wf-active h3,
.wf-active h4,
.wf-active h5,
.wf-active h6,
.wf-active p,
.wf-active ol li,
.wf-active ul li,
.wf-inactive h1,
.wf-inactive h2,
.wf-inactive h3,
.wf-inactive h4,
.wf-inactive h5,
.wf-inactive h6,
.wf-inactive p,
.wf-inactive ol li,
.wf-inactive ul li, { visibility: visible; }

* { margin: 0; }
html { -webkit-text-size-adjust: none; background-color: #394044; }
body { height: 100%; font-family: 'Open Sans', Helvetica, Arial, sans-serif; font-size: 16px; font-weight: 400; color: #394044; background-color: #FFF; }
body.noscroll { overflow: hidden; }

input, select, textarea { font-family: 'Open Sans', Helvetica, Arial, sans-serif; }

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button { font-family: 'Open Sans', Helvetica, Arial, sans-serif; }

.left { float: left; }
.right { float: right; }
.half { width: 50%; }

img { max-width: 100%; height: auto; vertical-align: middle; }
.ie8 img { width: auto; } /* IE8 */

/* Responsive images. Fluid images for posts, comments, and widgets */
.comment-content img,
.entry-content img,
.entry-summary img,
#site-header img,
.widget img,
.wp-caption { max-width: 100%; }

/* Make sure images with WordPress-added height and width attributes are scaled correctly */
.comment-content img[height],
.entry-content img,
.entry-summary img,
img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"],
#site-header img { height: auto; }

img.size-full,
img.size-large,
.wp-post-image,
.post-thumbnail img { height: auto; max-width: 100%; }

img.alignleft { max-width: 50%; margin: 0 4% 4% 0; }
img.alignright { max-width: 50%; margin: 0 0 4% 4%; }
img.aligncenter, img.aligncentre { margin: 0 auto; }

/* Make sure embeds and iframes fit their containers */
embed,
iframe,
object,
video { width: 100%; max-width: 100%; margin-bottom: 24px; }

.embedcontainer {	position: relative; height: 0; padding-top: 0; padding-bottom: 56.25%; }
.embedcontainer iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000 !important; margin-bottom: 0; }
.embedcontainer video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000 !important; margin-bottom: 0; }
.embedcontainer p { margin: 0; }

pre { font-size: 0.8em; font-weight: 500; line-height: 1.3em; padding: 11px; margin-bottom: 22px; background: #F9F9FD; border: 1px solid #DBDBDB; overflow: auto; white-space: pre-wrap; word-wrap: break-word; }
pre a { font-weight: normal; }

hr { border: 0; height: 0; margin: 0 0 22px 0; border-top: 1px solid rgba(0, 0, 0, 0.1); border-bottom: 1px solid rgba(255, 255, 255, 0.3); }

/* CSS Animation */
a,
img,
input,
select,
textarea,
button,
.btn,
.owl-dots .owl-dot span,
.owl-nav .owl-prev,
.owl-nav .owl-next,
.animate_fast,
.animatefast,
a .svg_icon circle,
a .svg_icon path,
a .svg_icon polygon,
a .svg_icon polyline,
a .svg_icon rect { 
transition: all 0.3s ease-out;
-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-ms-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
}

.animate_slow,
.animateslow { 
transition: all 0.6s ease-out;
-webkit-transition: all 0.6s ease-out;
-moz-transition: all 0.6s ease-out;
-ms-transition: all 0.6s ease-out;
-o-transition: all 0.6s ease-out;
}

.animate_super_slow,
.animatesuperslow { 
transition: all 0.8s ease-in-out;
-webkit-transition: all 0.8s ease-in-out;
-moz-transition: all 0.8s ease-in-out;
-ms-transition: all 0.8s ease-in-out;
-o-transition: all 0.8s ease-in-out;
}

.no_transition,
.no_transition img,
.notransition,
.notransition img,
.gm-style img { transform: none; -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; }

a { color: #394044; text-decoration: none; }
a:hover,
a:active,
a:focus { color: #1D1D1D; }
a.dotted { border-bottom: 1px dotted transparent; }
a.dotted:hover,
a.dotted:active,
a.dotted:focus { border-bottom-color: #B9B9B9; }

b,
strong { font-weight: 700; }

em,
dfn,
cite,
i { font-style: italic; }

address { font-style: normal; line-height: 1.2em; }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { line-height: 1.2em; font-weight: 600; margin: 0 0 12px 0; }
h1, .h1 { font-size: 3.1em; line-height: 1em; }
h2, .h2 { font-size: 2.4em; }
h3, .h3 { font-size: 1.8em; }
h4, .h4 { font-size: 1.4em; }
h5, .h5 { font-size: 1.3em; }
h6, .h6 { font-size: 1.2em; }

@media screen and (min-width: 0px) and (max-width: 520px) {

h1, .h1 { font-size: 2.7em; }
h2, .h2 { font-size: 2em; }
h3, .h3 { font-size: 1.55em; }
h4, .h4 { font-size: 1.3em; }
h5, .h5 { font-size: 1.2em; }
h6, .h6 { font-size: 1.1em; }

}

p { line-height: 1.5em; margin: 0 0 20px 0; }
p:last-child { margin-bottom: 0; }
p.small { font-size: 0.8em; }

.font_size_18 { font-size: 18px; }

/* Caption */
.wp-caption { overflow: hidden; }
.wp-caption img { margin: 0; }
.wp-caption.alignleft { margin: 0 5% 0 0; }
.wp-caption.alignright { margin: 0 0 0 5%; }
.wp-caption.aligncenter,
.wp-caption.aligncentre { margin: 0 auto; }
p.wp-caption-text { text-align: center; padding: 8px 12px; margin-top: -2px; background-color: #F5F6F2; }

blockquote { padding: 14px 30px 14px 24px; margin: 0 0 20px 0; border-left: 3px solid #1E1656; border-right: 1px solid #EAEAE8; }
blockquote p { font-size: 1.2em !important; font-style: italic; margin: 0; }

.the_content a { border-bottom: 1px solid #008B95; }
.the_content a:hover,
.the_content a:active,
.the_content a:focus { border-bottom-color: #394044 !important; }

.the_content ol { list-style: decimal; margin: 0 0 20px 30px; }
.the_content ol li { line-height: 1.5em; margin: 0 0 8px 0; }
.the_content ol ol { padding: 10px 0 0 0; }
.the_content ol li li { font-size: inherit; }

.the_content ul { list-style: none; margin: 0 0 20px 0; }
.the_content ul li { line-height: 1.5em; margin: 0 0 8px 0; padding: 0 0 0 20px; background-image: url(_images/common/bkgd-bullet-point-teal.svg); background-repeat: no-repeat; background-position: 4px 11px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.no-svg .the_content ul li { background-image: url(_images/common/bkgd-bullet-point-teal.png); } /* No SVG */
.the_content ul ul { padding: 10px 0 0 0; }
.the_content ul li li { font-size: inherit; }

/* Buttons */
.btn { display: inline-block; line-height: 54px; text-align: center; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; color: #FFF !important; background-color: #394044; border: none !important; padding: 0 40px; margin: 2px; border-radius: 3px; cursor: pointer; }
.btn:hover,
.btn:active,
.btn:focus { background-color: #1A1A1A; }

.slim_btn { line-height: 32px; padding: 0 30px; }
.large_btn { line-height: 64px; padding: 0 40px; }

.white_btn { color: #394044 !important; background-color: #FFF !important; }
.white_btn:hover,
.white_btn:active,
.white_btn:focus { opacity: 0.9; }

.blue_btn { background-color: #1CA2E0; }
.dark_blue_btn { background-color: #1E1656; }
.orange_btn { background-color: #E37222; }
.purple_btn { background-color: #BA77F5; }
.red_btn { background-color: #CB0044; }
.teal_btn { background-color: #008B95; }
.yellow_btn { background-color: #E1E000; }

.outline_btn { color: #394044 !important; background-color: transparent !important; border: 2px solid #394044 !important; }
.outline_btn:hover,
.outline_btn:active,
.outline_btn:focus { opacity: 0.8; }
.dark_grey_outline_btn { color: #394044 !important; background-color: transparent !important; border: 2px solid #394044 !important; }
.white_outline_btn { color: #FFF !important; background-color: transparent !important; border: 2px solid #FFF !important; }

.line_btn { display: inline-block; font-size: 1.1em; line-height: 28px; color: #394044; border-bottom: 2px solid #008B95; }
.line_btn:hover,
.line_btn:active,
.line_btn:focus { border-bottom-color: #394044; }

.line_btn_white { color: #FFF; border-bottom: 2px solid #B9B9B9; }
.line_btn_white:hover,
.line_btn_white:active,
.line_btn_white:focus { color: #FFF; border-bottom-color: #FFF; }

/* Text Alignment */
.text_left { text-align: left; }
.text_right { text-align: right; }
.text_centred,
.text_centered { text-align: center; }

/* Colours */
.bkgd_white,
.bkgd_white .connect { background-color: #FFF !important; }
.bkgd_light_grey,
.bkgd_light_grey .connect { background-color: #F5F5F5 !important; }
.bkgd_dark_grey,
.bkgd_dark_grey .connect { background-color: #394044 !important; }

.bkgd_blue,
.bkgd_blue .connect { background-color: #1CA2E0 !important; }
.bkgd_dark_blue,
.bkgd_dark_blue .connect { background-color: #1E1656 !important; }
.bkgd_green,
.bkgd_green .connect { background-color: #48C301 !important; }
.bkgd_orange,
.bkgd_orange .connect { background-color: #E37222 !important; }
.bkgd_pink,
.bkgd_pink .connect { background-color: #E4008C !important; }
.bkgd_purple,
.bkgd_purple .connect { background-color: #BA77F5 !important; }
.bkgd_red,
.bkgd_red .connect { background-color: #CB0044 !important; }
.bkgd_teal,
.bkgd_teal .connect { background-color: #008B95 !important; }
.bkgd_yellow,
.bkgd_yellow .connect { background-color: #E1E000 !important; }

.svg_icon.colour_dark_blue circle,
.svg_icon.colour_dark_blue path,
.svg_icon.colour_dark_blue polygon,
.svg_icon.colour_dark_blue rect { fill: #1E1656; }

.svg_icon.colour_orange circle,
.svg_icon.colour_orange path,
.svg_icon.colour_orange polygon,
.svg_icon.colour_orange rect { fill: #E37222; }

.svg_icon.colour_red circle,
.svg_icon.colour_red path,
.svg_icon.colour_red polygon,
.svg_icon.colour_red rect { fill: #CB0044; }

.svg_icon.colour_teal circle,
.svg_icon.colour_teal path,
.svg_icon.colour_teal polygon,
.svg_icon.colour_teal rect { fill: #008B95; }

.svg_icon.colour_white circle,
.svg_icon.colour_white path,
.svg_icon.colour_white polygon,
.svg_icon.colour_white rect { fill: #FFFFFF; }

.svg_icon.colour_yellow circle,
.svg_icon.colour_yellow path,
.svg_icon.colour_yellow polygon,
.svg_icon.colour_yellow rect { fill: #E1E000; }

.text_white { color: #FFF; }
.text_white a { color: #FFF !important; }
.text_white a:hover,
.text_white a:active,
.text_white a:focus { color: rgba(255,255,255,0.8); }

.text_white span.icon .svg_icon circle,
.text_white span.icon .svg_icon path,
.text_white span.icon .svg_icon polygon { fill: #FFF; }

/* Filters */
.filter { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.4); }
.blendtop { position: absolute; top: 0; right: 0; bottom: 50%; left: 0; }
.blendright { position: absolute; top: 0; right: 0; bottom: 0; left: 50%; }
.blendbottom { position: absolute; top: 50%; right: 0; bottom: 0; left: 0; }
.blendleft { position: absolute; top: 0; right: 50%; bottom: 0; left: 0; }

.blendtop { background: -webkit-linear-gradient(top, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -o-linear-gradient(top, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -moz-linear-gradient(top, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: linear-gradient(to bottom, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important; }
.blendright { background: -webkit-linear-gradient(right, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -o-linear-gradient(right, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -moz-linear-gradient(right, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: linear-gradient(to left, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important; }
.blendbottom { background: -webkit-linear-gradient(bottom, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -o-linear-gradient(bottom, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -moz-linear-gradient(bottom, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: linear-gradient(to top, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important; }
.blendleft { background: -webkit-linear-gradient(left, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -o-linear-gradient(left, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: -moz-linear-gradient(left, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important;
background: linear-gradient(to right, rgba(0,0,0,0.4), rgba(0,0,0,0)) !important; }

/* Hiding */
.hidden { display: none !important; }

@media screen and (min-width: 768px) and (max-width: 900px) {
.hide_ipad { display: none !important; }
}

@media screen and (min-width: 0px) and (max-width: 767px) {
.hide_mobile { display: none !important; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.hide_tablet { display: none !important; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.hide_phone { display: none !important; }
}




/*------------------------------------------------------------------*/
/*	2.	Universal Elements
/*------------------------------------------------------------------*/

.site_wrapper { padding-top: 80px; margin: 0 auto; overflow: hidden; }
.site_wrapper.has_announcement { padding-top: 136px; /* +56 */ }
.site_wrapper.has_dates { padding-top: 119px; /* +39 */ }
.site_wrapper.has_announcement.has_dates { padding-top: 175px; /* +56 +39 */ }
.container { position: relative; max-width: 1020px; padding: 0 20px; margin: 0 auto; overflow: hidden; z-index: 6; }
.container.extra_wide_width { max-width: 1160px; }
.container.fw_container { max-width: none; padding: 0; }
.container.no_padding { max-width: 1060px; padding: 0; }
.container.overflow { overflow: visible; }

/*------------------------------------------------------------------*/

/* Screenreader Accessibility */
#skiptocontent { position: relative; float: left; }
#skiptocontent a { position: absolute; left: -10000px; font-size: 13px; z-index: 1000; margin: 0 8px 0 0; text-decoration: underline; }

/* IE 7 Message */
.iewarning { position: fixed; bottom: 0; width: 100%; padding: 16px 0; text-align: center; color: #FFF; background-color: #C1272D; z-index: 999; }
.iewarning h3 { color: #FFF; margin: 0 0 4px 0; }
.iewarning p { color: #FFF; padding: 0 40px; margin: 0; }

/* Browser Width */
.browserwidth { position: fixed; bottom: 0; left: 0; font-size: 0.8em; text-align: center; color: #FFF; padding: 6px 8px; background-color: #EC1780; z-index: 999; }

/* Dev Divide */
.devdivide { position: relative; min-height: 200px; color: #FFF; background-color: #EC1780; }
.devdivide h1 { line-height: 200px; margin: 0; }
.devdivide .connect { position: absolute; top: -40px; width: 100%; height: 40px; background-color: #EC1780; -webkit-clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); z-index: 5; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.devdivide .connect { top: -30px; height: 30px; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.devdivide h1 { font-size: 2em; }
.devdivide .connect { top: -20px; height: 20px; }
}

/*------------------------------------------------------------------*/

/*--- Forms ---*/
::-webkit-input-placeholder { color: #606872; }
:-moz-placeholder { color: #606872; } /* Firefox 18- */
::-moz-placeholder { color: #606872; } /* Firefox 19+ */
:-ms-input-placeholder { color: #606872; } /* IE10 */

form .req { font-size: 0.8em; color: #CB2027; padding: 0 6px; }
form .note { font-size: 0.8em; color: #58595B; padding: 0 6px; }
form .note strong { font-weight: 500; }

label { display: block; /* font-size: 0.88em; */ line-height: 1.4em; padding: 0 0 6px 0; }

.nolabels label { display: none; }

input, select, textarea {
	width: 100%;
	font-size: 16px;
	color: #394044;
	margin: 0;
	padding: 0 10px;
	border: 1px solid #D8D8D8;
	border-radius: 4px;
	outline: none;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
input:hover, select:hover, textarea:hover,
input:focus, select:focus, textarea:focus { border-color: #B3B3B3; }

.select2-container--default .select2-selection--single { border-color: #D8D8D8; }
.select2-dropdown { border-color: #D8D8D8; }
.select2-container--default .select2-search--dropdown .select2-search__field { border-color: #D8D8D8; }

input { -webkit-appearance: none; }
textarea { width: 100%; min-width: 100%; max-width: 100%; min-height: 120px; max-height: 120px; padding: 10px; -webkit-appearance: none; }
/* IE8 */ .ie8 textarea { padding: 0; }
/* IE7 */ .ie7 textarea { padding: 0; }

.textareablock.slim textarea { min-height: 70px; max-height: 70px; }

.input_block, .submit_block,
.inputblock, .textareablock, .submitblock { margin: 0 0 16px 0; overflow: hidden; }
.input_block br, .submit_block br
.inputblock br, .textareablock br, .submitblock br { display: none; }

.input_block input,
.inputblock input { height: 46px; line-height: 46px; }
.input_block select,
.inputblock select { height: 46px; line-height: 46px; }

.input_block.slim_input input,
.input_block.slim_input select,
.input_block.slim_input textarea,
.inputblock.sliminput input,
.inputblock.sliminput select,
.inputblock.sliminput textarea { max-width: 100px; }

.two_input_blocks,
.twoinputblocks { overflow: hidden; }
.two_input_blocks .input_block,
.twoinputblocks .inputblock { float: left; width: 46%; margin-right: 8%; }
.two_input_blocks .input_block:last-child,
.twoinputblocks .inputblock:last-child { margin-right: 0; }

/* Checkbox */
.check_block,
.checkblock { font-size: 0.9em; margin-bottom: 10px; }
.check_block label,
.checkblock label { display: block !important; }
input[type="checkbox"] { width: auto; height: auto; line-height: inherit; padding: 0; margin: 0 8px 0 0; background: none; border: none; -webkit-appearance: checkbox; }

/* Number */
input[type="number"] { width: auto; max-width: 80px; }

/* Radio */
input[type="radio"] { width: auto; height: auto; line-height: inherit; background: none; border: none; -webkit-appearance: radio; }

/* Submit */
.submit_block,
.submitblock { position: relative; padding: 0; margin: 0; }
input[type="submit"],
input.submit,
input.wpcf7-submit { width: 100%; height: 56px; line-height: 56px; font-size: 1.16em; font-weight: 300; text-align: center; text-transform: uppercase; color: #FFF; padding: 0 20px; margin: 0 auto; background-color: #394044; border: none; }
input[type="submit"]:hover,
input.submit:hover,
input.wpcf7-submit:hover,
input[type="submit"]:focus,
input.submit:focus,
input.wpcf7-submit:focus { background-color: #1D1D1D; cursor: pointer; }

/*--- Enquiry Form ---*/
.enquiry_form { overflow: hidden; }
.enquiry_form label { float: left; width: 33%; padding-top: 10px; }
.enquiry_form span.wpcf7-form-control-wrap { display: block; float: right; width: 65%; }
.enquiry_form .submitblock { float: right; width: 65%; }

@media screen and (min-width: 0px) and (max-width: 480px) {
.enquiry_form label,
.enquiry_form span.wpcf7-form-control-wrap,
.enquiry_form .submitblock { width: 100%; }
}

/*--- Contact Form 7 ---*/
div.wpcf7 .screen-reader-response { display: none; }
div.wpcf7-response-output { }
span.wpcf7-not-valid-tip { font-size: 0.77em; font-weight: 300; color: #6A6176; padding: 8px 0 0 0; }
span.wpcf7-list-item { margin: 0; }

input.wpcf7-not-valid,
select.wpcf7-not-valid,
textarea.wpcf7-not-valid { background-color: #F8EEF2; }

div.wpcf7-spam-blocked,
div.wpcf7-validation-errors,
div.wpcf7-mail-sent-ok { line-height: 1.2em; color: #FFF; text-align: center; padding: 8px 16px; margin: 10px 0 0 0; background-color: #CB2027; border: none; border-radius: 4px; }
div.wpcf7-mail-sent-ok { background-color: #394044; background-color: transparent; }

div.wpcf7 .ajax-loader { position: absolute; top: 50%; left: 20px; margin: -8px 0 0 0; }

.response_block,
.responseblock { float: left; width: 100%; }

/*--- Slim Sign Up Form ---*/
.slimsignupform { position: relative; }
.slimsignupform form { position: relative; }
.slimsignupform form input { height: 46px; line-height: 46px; padding: 0 10px; margin: 0; border: none; }
.slimsignupform form .submitblock { position: absolute; top: 0; right: 0; float: none; width: auto; padding: 0; }
.slimsignupform form .submitblock input { width: 100%; min-width: 46px; height: 46px; line-height: 46px; font-size: 1em; text-transform: uppercase; padding: 0 20px; background-color: #000; }
.slimsignupform form .submitblock input:hover { background-color: #333; }

/*--- MailChimp Manual Embed Form ---*/
#mc_embed_signup div.mce_inline_error { padding: 6px 10px 0 10px; margin: -6px 0 0 0; font-size: 0.8em; line-height: 20px; color: #FFF; background: #CB4C58; border-radius: 0 0 6px 6px; }
#mc_embed_signup div#mce-responses { overflow: hidden; clear: both; }
#mc_embed_signup div.response { line-height: 1.2; }
#mc_embed_signup #mc_embed_signup_scroll { overflow: hidden; }
#mc_embed_signup input[type="submit"],
#mc_embed_signup input.submit,
#mc_embed_signup input.wpcf7-submit { height: 46px; line-height: 46px; }

#mc_embed_signup #mce-error-response { display: none; color: #CB4C58; padding: 10px 6px; background-color: #FFBBBD; border-radius: 6px; }
#mc_embed_signup #mce-error-response a { color: #333; }
#mc_embed_signup #mce-error-response a:hover,
#mc_embed_signup #mce-error-response a:active,
#mc_embed_signup #mce-error-response a:focus { text-decoration: underline; }
#mc_embed_signup input.mce_inline_error { background-color: #FFBBBD; border-color: #CB4C58; }

#mc_embed_signup #mce-success-response { display: none; padding: 10px 6px; }
#mc_embed_signup #mce-success-response h3 { font-size: 1.8em; color: #00A4D9; margin: 0 0 8px 0; }
.sidemailinglist #mc_embed_signup #mce-success-response h3 { color: #29AFA4; }
#mc_embed_signup #mce-success-response p { font-size: 18px; line-height: 22px; margin: 0; }

/*------------------------------------------------------------------*/

/*--- Nav Bar ---*/
#nav_bar { position: fixed; top: 0; right: 0; left: 0; background-color: #FFF; box-shadow: 0 2px 4px rgba(0,0,0,0.2); z-index: 999; }
#nav_bar .container { min-height: 40px; padding-top: 20px; padding-bottom: 20px; }

/* Moving */
#nav_bar.moving .container { padding-top: 10px; padding-bottom: 10px; }

/*- Announcement Bar -*/
#nav_bar .announcement_bar { text-align: center; color: #FFF; }
#nav_bar .announcement_bar .outer_wrap { display: table; width: 100%; height: 56px; }
#nav_bar .announcement_bar .inner_wrap { display: table-cell; vertical-align: middle; }
#nav_bar .announcement_bar a { display: block; color: #FFF; }
#nav_bar .announcement_bar a:hover { background-color: #323232; }
#nav_bar .announcement_bar p { line-height: 1.3em; }
#nav_bar .announcement_bar .container { min-height: inherit !important; padding-top: 0 !important; padding-bottom: 0 !important; }

/*- Logo -*/
#nav_bar .logo span { display: none; }
#nav_bar .logo img { vertical-align: top; }
#nav_bar .logo a { display: inline-block; color: #394044; }

/* Logo Left */
#nav_bar.logo_left .logo { position: absolute; top: 50%; left: 20px; height: 40px; line-height: 40px; margin-top: -20px; }
#nav_bar.logo_left .logo img { width: auto; max-height: 26px; margin-top: 7px; }

/*- Main Menu -*/
#nav_bar.menu_right .menu { float: right; height: 40px; }
#nav_bar ul.main_menu { display: inline-block; font-size: 0; line-height: 0; }
#nav_bar ul.main_menu li { position: relative; float: left; font-size: 19px; line-height: 40px; letter-spacing: -0.03em; margin: 0 16px; }
#nav_bar ul.main_menu li:first-child { margin-left: 0 !important; }
#nav_bar ul.main_menu li:last-child { margin-right: 0 !important; }
#nav_bar ul.main_menu li { display: block; color: #394044; cursor: pointer; }
#nav_bar ul.main_menu li:hover,
#nav_bar ul.main_menu li:active,
#nav_bar ul.main_menu li:focus { color: #CB0044; }
#nav_bar ul.main_menu li a { color: #394044; }
#nav_bar ul.main_menu li a:hover,
#nav_bar ul.main_menu li a:active,
#nav_bar ul.main_menu li a:focus { color: #CB0044; }
#nav_bar ul.main_menu li.current-menu-item a,
#nav_bar ul.main_menu li.current_page_item a,
#nav_bar ul.main_menu li.current_page_parent a,
#nav_bar ul.main_menu li.current-page-ancestor a { color: #CB0044; }
#nav_bar ul.main_menu li ul { display: none; }

/*- Social -*/
#nav_bar.menu_right .social { float: right; padding-left: 16px; }
#nav_bar .social ul.social_links li { display: block; line-height: 18px; margin: 7px 6px !important; }
#nav_bar .social ul.social_links li:last-child { margin-right: 0 !important; }
#nav_bar .social ul.social_links li .icon { line-height: 18px; }
#nav_bar .social ul.social_links li svg { max-height: 18px; vertical-align: top; }
#nav_bar .social ul.social_links li.twitter svg { max-height: 16px; }

/*- Dates -*/
#nav_bar .dates { font-size: 1.2em; text-transform: uppercase; font-weight: 700; text-align: center; }
#nav_bar .dates .container { min-height: inherit; padding-top: 10px; padding-bottom: 10px; }

/*- Bars -*/
#nav_bar .bars { overflow: hidden; }
#nav_bar .bars .bar { float: left; width: 16.666%; height: 3px; }

@media screen and (min-width: 768px) and (max-width: 900px) {
#nav_bar ul.main_menu li { margin: 0 12px; }
}

@media screen and (min-width: 0px) and (max-width: 900px) {
#nav_bar.logo_left .logo { left: 65px; }
#nav_bar .menu { display: none; }
}

@media screen and (min-width: 0px) and (max-width: 767px) {

#nav_bar .social { display: none; }

#nav_bar .dates { font-size: 1em; }

#nav_bar .bars { margin-left: -15%; margin-right: -15%; }
#nav_bar .bars .bar { width: 20%; }
#nav_bar .bars .bar:last-child { display: none; }
}

@media screen and (min-width: 0px) and (max-width: 660px) {
#nav_bar .announcement_bar .outer_wrap { height: 66px; }
}

/*------------------------------------------------------------------*/

/*--- Mobile Nav ---*/
.open_mobile_nav { position: absolute; top: 50%; left: -45px; padding: 10px; margin: -20px 0 0 0; cursor: pointer; z-index: 9; }
.open_mobile_nav img { vertical-align: top; }

#mobile_nav { position: fixed; top: 0; right: 100%; bottom: 0; left: -70%; width: 70%; max-width: 480px; background-color: #FFF; overflow: scroll; z-index: 9999; }
#mobile_nav.active { display: block; left: 0; }
#mobile_nav .wrap { padding: 20px; }
#mobile_nav .title { padding: 10px 0 30px 0; }
#mobile_nav .title .logo { max-width: 70%; }
#mobile_nav .title .logo span { display: none; }
#mobile_nav .title .close_mobile_nav { position: absolute; top: 22px; right: 15px; width: 26px; height: 26px; line-height: 26px; text-align: center; color: #394044; padding: 5px; cursor: pointer; }
#mobile_nav .title .close_mobile_nav img { vertical-align: inherit; }
#mobile_nav .title .close_mobile_nav:hover,
#mobile_nav .title .close_mobile_nav:active,
#mobile_nav .title .close_mobile_nav:focus { color: rgba(0,0,0,0.8); }
#mobile_nav .title .close_mobile_nav:hover .svg_icon path,
#mobile_nav .title .close_mobile_nav:active .svg_icon path,
#mobile_nav .title .close_mobile_nav:focus .svg_icon path { fill: rgba(0,0,0,0.8); }

#mobile_nav .mobile_menu ul { font-size: 0; line-height: 0; }
#mobile_nav .mobile_menu li { font-size: 21px; line-height: 40px; border-bottom: 1px solid #E9E9E9; }
#mobile_nav .mobile_menu li a { display: block; color: #394044; padding: 0 0 0 30px; background-image: url(_images/common/bkgd-icon-mobile-menu.svg); background-repeat: no-repeat; background-position: -40px 0; }
.no-svg #mobile_nav .mobile_menu li a { background-image: url(_images/common/bkgd-icon-mobile-menu.png); } /* No SVG */
#mobile_nav .mobile_menu li a:hover,
#mobile_nav .mobile_menu li a:active,
#mobile_nav .mobile_menu li a:focus { color: #706F6F; }
#mobile_nav .mobile_menu li.whats_on a { background-position: 0 0; }
#mobile_nav .mobile_menu li.venues a { background-position: 0 -80px; }
#mobile_nav .mobile_menu li.questions a { background-position: 0 -40px; }
#mobile_nav .mobile_menu ul.sub-menu { padding: 0 0 10px 30px; }
#mobile_nav .mobile_menu ul.sub-menu li { font-size: 17px; line-height: 26px; border-bottom: none; }
#mobile_nav .mobile_menu ul.sub-menu li a { color: #706F6F; padding: 0; background-image: none; }
#mobile_nav .mobile_menu ul.sub-menu li a:hover,
#mobile_nav .mobile_menu ul.sub-menu li a:active,
#mobile_nav .mobile_menu ul.sub-menu li a:focus { color: #394044; }
#mobile_nav .mobile_menu ul.sub-menu li a::after { content: ''; padding: 0 0 0 15px; background-image: url(_images/common/icon-mobile-menu-arrow.svg); background-repeat: no-repeat; background-position: right center; }
.no-svg #mobile_nav .mobile_menu ul.sub-menu li a::after { background-image: url(_images/common/icon-mobile-menu-arrow.png); } /* No SVG */
#mobile_nav .mobile_menu ul.sub-menu li span.icon { margin: 0 0 0 6px; }

#mobile_nav ul.social_links { padding: 10px 0 0 20px; }

#mobile_nav .funders { text-align: center; color: #A5A5A5; padding: 40px 0 0 0; }
#mobile_nav .funders p { font-size: 0.9em; margin: 0 0 10px 0; }
#mobile_nav .funders .logo { display: inline-block; max-width: 180px; max-height: 80px; line-height: 80px; vertical-align: middle; }

#bkgd_page_overlay { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(57,64,68,0); z-index: -1; }
#bkgd_page_overlay.active { background-color: rgba(57,64,68,0.9); z-index: 9998; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.open_mobile_nav { left: 10px; }
}

@media screen and (min-width: 0px) and (max-width: 520px) {
#mobile_nav .funders .logo { max-width: 100px; max-height: 45px; line-height: 45px; }
}

@media screen and (min-width: 0px) and (max-width: 440px) {
#mobile_nav { left: -100%; width: 100%; }
}

/*------------------------------------------------------------------*/

/*--- Footer ---*/
#footer { position: relative; text-align: center; color: #FFF; padding: 50px 0; background-color: #394044; z-index: 5; }
#footer a { color: #FFF; border-bottom: 1px solid transparent; }
#footer a:hover,
#footer a:active,
#footer a:focus { color: #FFF; border-bottom-color: rgba(255,255,255,0.3); }

/* Footer Connect */
#footer .footer_connect { position: absolute; top: -40px; width: 100%; height: 40px; background-color: #394044; -webkit-clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); z-index: 5; }

@media screen and (min-width: 0px) and (max-width: 900px) {
#footer .footer_connect { top: -30px; height: 30px; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
#footer .footer_connect { top: -20px; height: 20px; }
}

/* Upper Footer */
#footer .upper_footer { }
#footer .upper_footer .logo { margin: 0 auto 20px auto; }
#footer .upper_footer .logo a { border-bottom: none; }
#footer .upper_footer .logo h3 { margin: 0; }
#footer .upper_footer .dates { font-size: 1.2em; text-transform: uppercase; font-weight: 700; margin: 0 auto 20px auto; }
#footer .upper_footer .navigation { padding: 20px 0 0 0; margin: 0 auto 20px auto; }
#footer .upper_footer .navigation ul { display: inline-block; font-size: 0; line-height: 0; vertical-align: middle; }
#footer .upper_footer .navigation ul li { display: inline-block; font-size: 14px; line-height: 20px; margin: 0 22px; }
#footer .upper_footer .navigation ul.social_links li { margin: 0 7px; }
#footer .upper_footer .navigation ul.social_links li svg { max-height: 18px; }
#footer .upper_footer .navigation ul.social_links li.twitter svg { max-height: 16px; }
#footer .upper_footer .navigation ul.social_links li a:hover,
#footer .upper_footer .navigation ul.social_links li a:active,
#footer .upper_footer .navigation ul.social_links li a:focus { border-bottom-color: transparent; }

@media screen and (min-width: 0px) and (max-width: 900px) {
#footer .upper_footer .navigation ul li { margin: 0 12px; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
#footer .upper_footer .navigation { padding-top: 0; }
}

/* Lower Footer */
#footer .lower_footer { font-size: 13px; color: rgba(255,255,255,0.4); }
#footer .lower_footer .container { padding-top: 20px; border-top: 1px solid rgba(255,255,255,0.4); }
#footer .lower_footer .funders { padding-top: 6px; }
#footer .lower_footer .funders .logo { display: inline-block; max-width: 174px; max-height: 76px; line-height: 76px; }
#footer .lower_footer .funders .logo svg { width: 100%; }

@media screen and (min-width: 0px) and (max-width: 600px) {
#footer .lower_footer .funders .logo { max-width: 100px; max-height: 45px; line-height: 45px; }
}

/* Legal Footer */
#footer .legal_footer { margin: 28px 0 0 0; }
#footer .legal_footer .bars { overflow: hidden; }
#footer .legal_footer .bars .bar { float: left; width: 16.666%; height: 3px; }
#footer .legal_footer .container { padding-top: 36px; }
#footer .legal_footer ul.legal { display: inline-block; font-size: 0; line-height: 0; vertical-align: middle; }
#footer .legal_footer ul.legal li { display: inline-block; font-size: 14px; line-height: 20px; padding: 0 12px; border-right: 1px solid rgba(255,255,255,0.4); }
#footer .legal_footer ul.legal li:last-child { border-right: none; }

/* Credit */
#footer .credit { position: absolute; right: 0; bottom: 0; font-size: 12px; color: rgba(255,255,255,0.4); padding: 10px 30px 10px 20px; background-color: rgba(0,0,0,0.2); border-top-left-radius: 22px; }

@media screen and (min-width: 0px) and (max-width: 600px) {
#footer .credit { position: relative; margin: 30px 0 -50px 0; border-radius: 0; }
}

/*------------------------------------------------------------------*/

/*--- Other Common Elements ---*/

/*--- Carousel Nav ---*/
.carousel_prev,
.carousel_next { position: absolute; top: 50%; width: 28px; height: 50px; padding: 6px; margin-top: -28px; cursor: pointer; }
.carousel_prev svg,
.carousel_next svg { width: 100%; }
.carousel_prev:hover .svg_icon path,
.carousel_prev:active .svg_icon path,
.carousel_prev:focus .svg_icon path,
.carousel_next:hover .svg_icon path,
.carousel_next:active .svg_icon path,
.carousel_next:focus .svg_icon path { fill: #B9B9B9; }
.carousel_prev { left: -5px; }
.carousel_next { right: -5px; }

@media screen and (min-width: 0px) and (max-width: 767px) {
.carousel_prev,
.carousel_next { width: 23px; height: 41px; margin-top: -33px; }
}

/*------------*/

/*--- Colour Bars ---*/
.colour_bars { margin: 40px auto; overflow: hidden; }
.colour_bars .colour_bar { float: left; width: 16.666%; height: 3px; }

/*------------*/

/*--- Google Maps ---*/
.gm-control-active > img { top: 25%; left: 25%; }

/*------------*/

/*--- No Results ---*/
.no_results { text-align: center; padding: 20px; background-color: #F5F5F5; }
.no_results .wrap { max-width: 530px; margin: 0 auto; }
.no_results .wrap h4 { margin: 0; }
.no_results .wrap p { margin: 14px 0 0 0; }

/*------------*/

/*--- Scroll to Top ---*/
#scrolltotop { position: fixed; bottom: -100px; right: 12px; width: 40px; height: 40px; text-align: center; color: #FFF; background-color: rgba(0,0,0,0.3); background-image: url(https://placehold.it/20x12); background-repeat: no-repeat; background-position: center center; border-radius: 50%; z-index: 8; }
#scrolltotop.show { bottom: 12px; }
#scrolltotop:hover { background-color: rgba(0,0,0,0.4); }

/*------------*/

/*--- Social Links ---*/
ul.social_links { font-size: 0; line-height: 0; }
ul.social_links li { display: inline-block !important; font-size: 16px; line-height: 24px; text-align: center; margin: 6px !important; overflow: hidden; }
/* ul.social_links.position_right li { margin: 0 0 20px 0 !important; }
ul.social_links.position_center li { margin: 6px !important; } */
ul.social_links li a { display: block; padding: 4px; }
ul.social_links li a:hover,
ul.social_links li a:active,
ul.social_links li a:focus { opacity: 0.8; }
ul.social_links li span.text { display: none; }
ul.social_links li span.icon { vertical-align: bottom; }
ul.social_links li span.icon svg { vertical-align: middle; }

/*------------*/

/*--- Social Links ---*/
ul.social_share { font-size: 0; line-height: 0; }
ul.social_share li { display: inline-block !important; font-size: 15px; line-height: 30px; text-transform: uppercase; margin: 0 6px 0 0; overflow: hidden; }
ul.social_share li a { display: block; color: #FFF; padding: 0 6px; background-color: #394044; }
ul.social_share li a:hover,
ul.social_share li a:active,
ul.social_share li a:focus { opacity: 0.9; }
ul.social_share li span.icon { padding: 0 4px 0 0; vertical-align: top; }
ul.social_share li span.icon svg { vertical-align: middle; }
ul.social_share li.facebook a { background-color: #3B4F94; }
ul.social_share li.facebook span.icon svg { height: 17px; }
ul.social_share li.twitter a { background-color: #30A6E1; }
ul.social_share li.twitter span.icon svg { height: 14px; }




/*------------------------------------------------------------------*/
/*  3.  Content Blocks
/*------------------------------------------------------------------*/

/*--- Section Intro ---*/
.section_intro { position: relative; text-align: center; padding: 0 0 30px 0; margin: 0 auto; }
.section_intro.no_content { padding: 0; }
.section_intro.space_below { padding-bottom: 50px; }
.section_intro h1,
.section_intro h2,
.section_intro h3,
.section_intro h4,
.section_intro h5,
.section_intro h6 { margin: 0; }
.section_intro p { font-size: 1.125em; }
.section_intro p:first-of-type { padding: 12px 0 0 0; }
.section_intro p:last-child { margin: 0; }

/* Width Variations */
.section_intro.wide_width { max-width: 780px; }
.section_intro.medium_width { max-width: 620px; }
.section_intro.slim_width { max-width: 480px; }

.section_intro.small_text p { font-size: 1em; }

@media screen and (min-width: 0px) and (max-width: 520px) {
.section_intro p { font-size: 1.0625em; }
}

/*------------*/

/*--- Section Outro ---*/
.section_outro { text-align: center; padding: 30px 0 0 0; margin: 0 auto; }

/*------------*/

/*--- Content Block ---*/
.content_block { position: relative; padding: 60px 0; background-color: transparent; background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; z-index: 5; }
.content_block .bkgd { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: transparent; }
.content_block .anchor { position: absolute; top: 0; width: 1px; height: 1px; background-color: transparent; }
.content_block .wrap { position: relative; margin: 0 auto; overflow: hidden; }
.content_block .wrap.wide_width { max-width: 780px; }
.content_block .wrap.medium_width { max-width: 620px; }
.content_block .wrap.slim_width { max-width: 480px; }
.content_block .wrap.overflow { overflow: visible; }
.content_block .outro { text-align: center; padding: 50px 0 0 0; }

/* Padding Options */
.content_block.no_padding_top { padding-top: 0; }
.content_block.no_padding_bottom { padding-bottom: 0; }

.content_block.slim_padding_top { padding-top: 20px; }
.content_block.slim_padding_bottom { padding-bottom: 20px; }

.content_block.regular_padding_top { padding-top: 40px; }
.content_block.regular_padding_bottom { padding-bottom: 40px; }

.content_block.medium_padding_top { padding-top: 60px; }
.content_block.medium_padding_bottom { padding-bottom: 60px; }

.content_block.large_padding_top { padding-top: 90px; }
.content_block.large_padding_bottom { padding-bottom: 90px; }

.content_block.extra_large_padding_top { padding-top: 140px; }
.content_block.extra_large_padding_bottom { padding-bottom: 140px; }

/* Overlap Options */
.content_block.overlap_previous { margin-top: -130px; background-color: transparent; z-index: 6; }
.content_block.no_padding_top.overlap_previous { margin-top: -70px; }
.content_block.slim_padding_top.overlap_previous { margin-top: -90px; }
.content_block.regular_padding_top.overlap_previous { margin-top: -110px; }
.content_block.medium_padding_top.overlap_previous { margin-top: -130px; }
.content_block.large_padding_top.overlap_previous { margin-top: -160px; }
.content_block.extra_large_padding_top.overlap_previous { margin-top: -210px; }

/* Background */
.content_block.overlap_previous .bkgd { top: 130px; }
.content_block.no_padding_top.overlap_previous .bkgd { top: 70px; }
.content_block.slim_padding_top.overlap_previous .bkgd { top: 90px; }
.content_block.regular_padding_top.overlap_previous .bkgd { top: 110px; }
.content_block.medium_padding_top.overlap_previous .bkgd { top: 130px; }
.content_block.large_padding_top.overlap_previous .bkgd { top: 160px; }
.content_block.extra_large_padding_top.overlap_previous .bkgd { top: 210px; }

/* Parallax Background */
.content_block.has_parallax_bkgd,
.page_intro.has_parallax_bkgd { position: relative; }
.content_block .parallax_shape,
.page_intro .parallax_shape { position: absolute; z-index: 0; margin: 40px 0 0 0; opacity: 0; z-index: 5; }
.content_block .parallax_shape.loaded,
.page_intro .parallax_shape.loaded { margin: 0; opacity: 1; }
.content_block .parallax_shape svg,
.page_intro .parallax_shape svg { width: 100%; }

/* Bars */
.content_block .bars { position: absolute; top: 0; right: 0; left: 0; margin: 0 auto; overflow: hidden; }
.content_block .bars .bar { float: left; width: 16.666%; height: 3px; }
.content_block .bars.inline { max-width: 1020px; }
.content_block.extra_wide_width .bars.inline { max-width: 1160px; }

/* Connect */
.content_block .connect { position: absolute; top: -40px; width: 100%; height: 40px; -webkit-clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); z-index: 5; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.content_block .connect { top: -30px; height: 30px; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.content_block .connect { top: -20px; height: 20px; }
}

/*------------------------------------------------------------------*/

/*--- Page Intro ---*/
.page_intro { position: relative; padding: 0 !important; background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.page_intro .container { padding-top: 95px; padding-bottom: 85px; }
.page_intro.has_overlap .container { padding-bottom: 160px; }
.page_intro .wrap.wide_width { max-width: 780px; }
.page_intro .wrap.medium_width { max-width: 620px; }
.page_intro .wrap.slim_width { max-width: 480px; }
.page_intro h1 { font-size: 3.125em; margin-bottom: 26px; }
.page_intro p { font-size: 1.125em; line-height: 1.3em; padding: 14px 0 0 0; margin: 0; }
.page_intro .buttons { padding: 30px 0 0 0; margin: 0 0 -8px 0; }
.page_intro .buttons .btn { margin: 0 8px 8px 0; }
.page_intro .buttons .btn:last-child { margin-right: 0; }
.page_intro .return_link { position: absolute; top: 50px; }
.page_intro .filter,
.page_intro .blendtop,
.page_intro .blendright,
.page_intro .blendbottom,
.page_intro .blendleft { z-index: 2; }
.page_intro .bkgd_photo { position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }

/* Intro Connect */
.page_intro .intro_connect { position: absolute; bottom: 0; width: 100%; height: 40px; background-color: #FFF; -webkit-clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); clip-path: polygon(50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%, 0 0); z-index: 5; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.page_intro .intro_connect { height: 30px; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.page_intro .intro_connect { height: 20px; }
}

@media screen and (min-width: 0px) and (max-width: 660px) {
.page_intro .container { padding-top: 75px; padding-bottom: 65px; }
.page_intro h1 { font-size: 3em; }
.page_intro p { font-size: 1.4em; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.page_intro h1 { font-size: 2.6em; }
.page_intro p { font-size: 1.25em; }
}

.page_intro .left_shape_1 {
  width: 78px;
  top: 5%;
  left: 10%;
}
.page_intro .left_shape_2 {
  width: 92px;
  top: 40%;
  left: 3%;
}
.page_intro .left_shape_3 {
  width: 88px;
  top: 80%;
  left: 14%;
}

.page_intro .right_shape_1 {
  width: 92px;
  top: 4%;
  right: 10%;
}
.page_intro .right_shape_2 {
  width: 78px;
  top: 48%;
  right: 3%;
}
.page_intro .right_shape_3 {
  width: 82px;
  top: 85%;
  right: 12%;
}

@media screen and (min-width: 1024px) and (max-width: 1280px) {
.page_intro .left_shape_1 { left: 2%; }
.page_intro .left_shape_2 { left: -3%; }
.page_intro .left_shape_3 { left: 3%; }
.page_intro .right_shape_1 { right: 2%; }
.page_intro .right_shape_2 { right: -1%; }
.page_intro .right_shape_3 { right: 3%; }
}

@media screen and (min-width: 0px) and (max-width: 1023px) {
.page_intro .left_shape_1 { left: -30px; opacity: 0.5 !important; }
.page_intro .left_shape_2 { left: -65px; }
.page_intro .left_shape_3 { left: -40px; opacity: 0.5 !important; }
.page_intro .right_shape_1 { right: -40px; opacity: 0.5 !important; }
.page_intro .right_shape_2 { right: -35px; }
.page_intro .right_shape_3 { right: -50px; opacity: 0.5 !important; }
}

/*- Centered Intro -*/
.page_intro.centered_intro .wrap { text-align: center; margin-left: auto; margin-right: auto; }
.page_intro.centered_intro .wrap .tab { margin-left: auto; margin-right: auto; }
.page_intro.centered_intro p { margin-left: auto; margin-right: auto; }
.page_intro.centered_intro .buttons .btn { margin: 0 4px 8px 4px; }
.page_intro.centered_intro .buttons .btn:last-child { margin-right: 4px; }

/*- Event Intro -*/
.page_intro.event_intro { background-color: #F5F5F5; }
.page_intro.event_intro h1 { font-size: 2em; }
.page_intro.event_intro span.event_title { position: relative; display: inline-block; max-width: 70%; color: #FFF; padding: 10px 20px; background-color: #008B95; }
.page_intro.event_intro span.event_title span.left { position: absolute; top: 0; left: -14px; width: 15px; height: 100%; background-color: #008B95; -webkit-clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); transform: rotate(180deg); }
.page_intro.event_intro span.event_title span.right { position: absolute; top: 0; right: -14px; width: 15px; height: 100%; background-color: #008B95; -webkit-clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); }
.page_intro.event_intro .date_and_location { margin: 0 0 20px 0; }
.page_intro.event_intro .date_and_location div { display: inline-block; font-size: 1.25em; padding: 10px; }
.page_intro.event_intro .date_and_location .icon { display: inline-block; padding: 0 6px 0 0; vertical-align: top; }
.page_intro.event_intro .tags { margin: 0 0 20px 0; }
.page_intro.event_intro .tags ul { font-size: 0; line-height: 0; }
.page_intro.event_intro .tags ul li { display: inline-block; font-size: 16px; line-height: 30px; text-transform: uppercase; margin: 0 4px; }
.page_intro.event_intro .tags ul li a { color: #FFF; padding: 4px 6px; background-color: #E37222; }
.page_intro.event_intro .tags ul li.free { font-weight: 600; padding: 4px 6px; }

.page_intro.event_intro .tags ul li.adults a { background-color: #008B95; }
.page_intro.event_intro .tags ul li.families a { background-color: #1E1656; }
.page_intro.event_intro .tags ul li.schools a { background-color: #CB0044; }

@media screen and (min-width: 0px) and (max-width: 520px) {
.page_intro.event_intro.centered_intro .wrap { text-align: left; }
.page_intro.event_intro h1 { font-size: 1.6em; margin-bottom: 10px; }
.page_intro.event_intro .date_and_location div { padding: 10px 0 0 0; }
.page_intro.event_intro span.event_title { max-width: inherit; }
.page_intro.event_intro span.event_title span.left { display: none; }
}

/*- Taxonomy Intro -*/
@media screen and (min-width: 768px) and (max-width: 1280px) {
.taxonomy_intro .right_shape_1 { right: 10%; opacity: 1 !important; }
.taxonomy_intro .right_shape_2 { right: 3%; }
.taxonomy_intro .right_shape_3 { right: 12%; opacity: 1 !important; }
}

@media screen and (min-width: 661px) and (max-width: 767px) {
.taxonomy_intro .right_shape_1 { right: 2%; opacity: 1 !important; }
.taxonomy_intro .right_shape_2 { right: -1%; }
.taxonomy_intro .right_shape_3 { right: 3%; opacity: 1 !important; }
}

@media screen and (min-width: 0px) and (max-width: 660px) {
.taxonomy_intro .right_shape_1 { right: -40px; }
.taxonomy_intro .right_shape_2 { right: -35px; }
.taxonomy_intro .right_shape_3 { right: -50px; opacity: 0.5 !important; }
}

/*- Home Intro -*/
.page_intro.home_intro { }
.page_intro.home_intro .wrap { max-width: 720px; }
.page_intro.home_intro .logo { max-width: 80%; text-align: center; margin: 0 auto 60px auto; }
.page_intro.home_intro .logo span { display: none; }
.page_intro.home_intro h1 { font-size: 3.6em; }
.page_intro.home_intro .dates { font-size: 1.875em; text-transform: uppercase; font-weight: 700; padding: 20px 0 0 0; margin: 0 auto; }
.page_intro.home_intro p { font-size: 1.25em; margin-top: 40px; }
.page_intro.home_intro .buttons { padding-top: 60px; }
.page_intro.home_intro.centered_intro .buttons .btn { line-height: 60px; margin: 15px; }

.home_intro .left_shape_1 {
  width: 93px;
  height: 104px;
  top: 15%;
  left: 10%;
}
.home_intro .left_shape_2 {
  width: 110px;
  height: 110px;
  top: 35%;
  left: 3%;
}
.home_intro .left_shape_3 {
  width: 108px;
  height: 67px;
  top: 60%;
  left: 14%;
}

.home_intro .right_shape_1 {
  width: 110px;
  height: 110px;
  top: 12%;
  right: 10%;
}
.home_intro .right_shape_2 {
  width: 93px;
  height: 104px;
  top: 38%;
  right: 3%;
}
.home_intro .right_shape_3 {
  width: 96px;
  height: 96px;
  top: 58%;
  right: 12%;
}

@media screen and (min-width: 1024px) and (max-width: 1280px) {
.home_intro .left_shape_1 { left: 2%; }
.home_intro .left_shape_2 { left: -3%; }
.home_intro .left_shape_3 { left: 3%; }
.home_intro .right_shape_1 { right: 2%; }
.home_intro .right_shape_2 { right: -3%; }
.home_intro .right_shape_3 { right: 4%; }
}

@media screen and (min-width: 0px) and (max-width: 1023px) {
.home_intro .left_shape_1 { left: -30px; opacity: 0.5 !important; }
.home_intro .left_shape_2 { left: -65px; }
.home_intro .left_shape_3 { left: -40px; opacity: 0.5 !important; }
.home_intro .right_shape_1 { right: -40px; opacity: 0.5 !important; }
.home_intro .right_shape_2 { right: -35px; }
.home_intro .right_shape_3 { right: -50px; opacity: 0.5 !important; }
}

@media screen and (min-width: 521px) and (max-width: 767px) {
.page_intro.home_intro h1 { font-size: 2.8em; }
.page_intro.home_intro .logo { max-width: 60%; margin-bottom: 45px; }
.page_intro.home_intro p { margin-top: 20px; }
.page_intro.home_intro .buttons { padding-top: 45px; }
}

@media screen and (min-width: 0px) and (max-width: 520px) {
.page_intro.home_intro h1 { font-size: 2.5em; }
.page_intro.home_intro .logo { margin-bottom: 30px; }
.page_intro.home_intro p { margin-top: 20px; }
.page_intro.home_intro .buttons { padding-top: 30px; }
.page_intro.home_intro.centered_intro .buttons .btn { line-height: 54px; margin: 8px; }
}

@media screen and (min-width: 0px) and (max-width: 460px) {
.page_intro.home_intro.centered_intro .buttons .btn { display: block; }
}

/*- Venue Intro -*/
.page_intro.venue_intro { background-color: #F5F5F5; }
.page_intro.venue_intro .location { line-height: 20px; font-weight: 700; margin: 0 0 30px 0; }
.page_intro.venue_intro .location .icon { display: inline-block; height: 20px; padding: 0 6px 0 0; vertical-align: middle; }
.page_intro.venue_intro ul.venue_accessibility { font-size: 0; line-height: 0; margin: 0 0 20px 0; }
.page_intro.venue_intro ul.venue_accessibility li { display: inline-block; font-size: 14px; line-height: 32px; margin: 10px; }
.page_intro.venue_intro ul.venue_accessibility li .icon { display: inline-block; height: 32px; padding: 0 6px 0 0; vertical-align: middle; }


/*------------------------------------------------------------------*/
/*------------------------------------------------------------------*/


/* ADD MAIN BLOCKS IN ALPHABETICAL ORDER */

/*--- Article Content ---*/
.article_content { }
.article_content .wrap { max-width: 735px; margin: 0 auto; }
.article_content .article_block { margin: 0 0 24px 0; }

.article_block .image { border-radius: 6px; overflow: hidden; }
.article_block .caption { font-size: 0.9em; font-style: italic; color: #808080; padding: 10px 0 0 0; }

/*------------*/

/*--- Articles Grid ---*/
.articles_grid { }
.articles_grid .wrap { overflow: hidden; }
.articles_grid .article { position: relative; float: left; }
.articles_grid .article .content_wrap { color: #394044; padding: 20px; background-color: #FFF; border: 1px solid #B9B9B9; border-radius: 4px; }
.articles_grid .article p.date { font-size: 1.1em; font-weight: 700; margin: -4px 0 12px 0; }
.articles_grid .article a { display: inline-block; }

/* Three Across */
.articles_grid .three_across .article { width: 32%; margin-right: 2%; margin-top: 2%; }
.articles_grid .three_across .article:nth-child(3n) { margin-right: 0; }
.articles_grid .three_across .article:nth-child(1),
.articles_grid .three_across .article:nth-child(2),
.articles_grid .three_across .article:nth-child(3) { margin-top: 0; }

@media screen and (min-width: 0px) and (max-width: 800px) {
/* Three Across */
.articles_grid .three_across .article { width: 49%; }
.articles_grid .three_across .article:nth-child(2n) { margin-right: 0; }
.articles_grid .three_across .article:nth-child(3) { margin-top: 2%; }

/* Related Articles */
.articles_grid.related_articles .article:nth-child(3n) { display: none; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
/* Three Across */
.articles_grid .three_across .article { width: 100%; margin: 20px 0 0 0 !important; }
.articles_grid .three_across .article:nth-child(1) { margin-top: 0; }
}

/*------------*/

/*--- Boxed Features ---*/
.boxed_features { }
.boxed_features .wrap { padding: 0 0 10px 0; }
.boxed_features .feature { position: relative; float: left; box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.25); border-radius: 5px; overflow: hidden; }
.boxed_features .feature.has_link:hover { box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.45); }
.boxed_features .feature .content_wrap { padding: 20px; background-color: #EEE; }
.boxed_features .feature .content_wrap .icon { max-width: 70px; line-height: 70px; }
.boxed_features .feature .content_wrap .icon.in_circle { width: 130px; max-width: 130px; height: 130px; line-height: 130px; text-align: center; border: 2px solid #FFF; border-radius: 50%; }
.boxed_features .feature .content_wrap .desc { margin: 20px 0 0 0; }
.boxed_features .feature .content_wrap .plus_icon { width: 40px; height: 40px; line-height: 40px; text-align: center; margin: 20px 0 0 0; }
.boxed_features .feature .content_wrap .plus_icon svg { width: 100%; height: 100%; }

/* Text Centred */
.boxed_features .text_centered .feature .content_wrap .icon,
.boxed_features .text_centered .feature .content_wrap .plus_icon { margin-left: auto; margin-right: auto; }

/* Slim Layout */
.boxed_features .slim_layout .feature .content_wrap .icon { position: absolute; top: 50%; left: 30px; margin-top: -35px; }
.boxed_features .slim_layout .feature .content_wrap .icon.in_circle { left: 20px; width: 80px; max-width: 80px; height: 80px; line-height: 80px; margin-top: -41px; }
.boxed_features .slim_layout .feature .content_wrap .icon.in_circle img,
.boxed_features .slim_layout .feature .content_wrap .icon.in_circle svg { max-width: 60%; }
.boxed_features .slim_layout .feature .content_wrap .desc { margin: 0; padding: 0 60px 0 0; }
.boxed_features .slim_layout .feature .content_wrap .desc h4 { margin-bottom: 6px; }
.boxed_features .slim_layout .feature .content_wrap .plus_icon { position: absolute; top: 50%; right: 30px; margin-top: -20px; }

.boxed_features .slim_layout .feature.has_link .content_wrap .desc { padding-right: 60px; }
.boxed_features .slim_layout .feature.has_icon .content_wrap .desc { padding-left: 100px; }

@media screen and (min-width: 0px) and (max-width: 480px) {
.boxed_features .slim_layout .feature .content_wrap .icon { left: 20px; max-width: 50px; line-height: 50px; margin-top: -25px; }
.boxed_features .slim_layout .feature .content_wrap .icon.in_circle { left: 15px; width: 60px; max-width: 60px; height: 60px; line-height: 60px; margin-top: -31px; }
.boxed_features .slim_layout .feature .content_wrap .plus_icon { right: 20px; width: 30px; height: 30px; line-height: 30px; margin-top: -15px; }

.boxed_features .slim_layout .feature.has_link .content_wrap .desc { padding-right: 40px; }
.boxed_features .slim_layout .feature.has_icon .content_wrap .desc { padding-left: 70px; }
}

/*---*/

/* Two Across */
.boxed_features .two_across .feature { width: 49%; margin: 2% 2% 0 0; }
.boxed_features .two_across .feature:nth-child(2n) { margin-right: 0; }
.boxed_features .two_across .feature:nth-child(1),
.boxed_features .two_across .feature:nth-child(2) { margin-top: 0; }

@media screen and (min-width: 0px) and (max-width: 768px) {
.boxed_features .two_across .feature { width: 100%; margin: 20px 0 0 0 !important; }
.boxed_features .two_across .feature:nth-child(1) { margin-top: 0 !important; }
}

/*---*/

/* Three Across */
.boxed_features .three_across .feature { width: 32%; margin: 2% 2% 0 0; }
.boxed_features .three_across .feature:nth-child(3n) { margin-right: 0; }
.boxed_features .three_across .feature:nth-child(1),
.boxed_features .three_across .feature:nth-child(2),
.boxed_features .three_across .feature:nth-child(3) { margin-top: 0; }

@media screen and (min-width: 421px) and (max-width: 660px) {
.boxed_features .three_across .feature { width: 48%; margin: 4% 4% 0 0; }
.boxed_features .three_across .feature:nth-child(3n) { margin-right: 4%; }
.boxed_features .three_across .feature:nth-child(2n) { margin-right: 0; }
.boxed_features .three_across .feature:nth-child(3) { margin-top: 4%; }
.boxed_features .three_across.count_three .feature:last-child,
.boxed_features .three_across.count_five .feature:last-child,
.boxed_features .three_across.count_seven .feature:last-child,
.boxed_features .three_across.count_nine .feature:last-child { margin-left: 26%; }
}

@media screen and (min-width: 0px) and (max-width: 420px) {
.boxed_features .three_across .feature { width: 100%; margin: 20px 0 0 0 !important; }
.boxed_features .three_across .feature:nth-child(1) { margin-top: 0 !important; }
}

/*------------*/

/*--- CTA Strip ---*/
.cta_strip { text-align: center; }
.cta_strip .wrap { margin: 0 auto; }
.cta_strip .wrap.wide_width { max-width: 780px; } 
.cta_strip .wrap.medium_width { max-width: 620px; } 
.cta_strip .wrap.slim_width { max-width: 480px; } 
.cta_strip h2 { margin-bottom: 0; }
.cta_strip p { font-size: 1.125em; padding-top: 12px; }
.cta_strip .contacts { }
.cta_strip .contacts div { display: inline-block; font-size: 1.35em; line-height: 26px; padding: 10px; }
.cta_strip .contacts div span.icon { display: inline-block; line-height: 26px; margin: 0 10px 0 0; vertical-align: middle; }
.cta_strip .contacts ul.social_links { display: inline-block; vertical-align: top; }
.cta_strip .contacts ul.social_links li { line-height: 26px; }
.cta_strip .buttons { padding-top: 20px; }

.cta_strip.bkgd_dark_blue .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_dark_blue .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_dark_blue .right_shape_3 .svg_icon rect { fill: #008B95; }

.cta_strip.bkgd_dark_grey .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_dark_grey .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_dark_grey .right_shape_3 .svg_icon rect { fill: #008B95; }

.cta_strip.bkgd_orange .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_orange .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_orange .right_shape_3 .svg_icon rect { fill: #DFDF00; }

.cta_strip.bkgd_red .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_red .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_red .right_shape_3 .svg_icon rect { fill: #E37222; }

.cta_strip.bkgd_teal .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_teal .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_teal .right_shape_3 .svg_icon rect { fill: #DFDF00; }

.cta_strip.bkgd_white .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_white .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_white .right_shape_3 .svg_icon rect { fill: #008B95; }

.cta_strip.bkgd_yellow .left_shape_3 .svg_icon circle,
.cta_strip.bkgd_yellow .right_shape_1 .svg_icon polygon,
.cta_strip.bkgd_yellow .right_shape_3 .svg_icon rect { fill: #008B95; }

.cta_strip .left_shape_1 {
  width: 84px;
  top: -5%;
  left: 15%;
}
.cta_strip .left_shape_2 {
  width: 76px;
  top: 20%;
  left: 5%;
}
.cta_strip .left_shape_3 {
  width: 82px;
  top: 70%;
  left: 10%;
}

.cta_strip .right_shape_1 {
  width: 78px;
  top: 1%;
  right: 10%;
}
.cta_strip .right_shape_2 {
  width: 92px;
  top: 34%;
  right: 3%;
}
.cta_strip .right_shape_3 {
  width: 79px;
  top: 75%;
  right: 18%;
}

@media screen and (min-width: 768px) and (max-width: 960px) {
.cta_strip .left_shape_1 { left: 2%; }
.cta_strip .left_shape_2 { left: -3%; }
.cta_strip .left_shape_3 { left: 3%; }
.cta_strip .right_shape_1 { right: 2%; }
.cta_strip .right_shape_2 { right: -1%; }
.cta_strip .right_shape_3 { right: 3%; }
}

@media screen and (min-width: 0px) and (max-width: 767px) {
.cta_strip .left_shape_1 { left: -10px; opacity: 0.5 !important; }
.cta_strip .left_shape_2 { left: -35px; opacity: 0.5 !important; }
.cta_strip .left_shape_3 { left: -20px; opacity: 0.5 !important; }
.cta_strip .right_shape_1 { right: -30px; opacity: 0.5 !important; }
.cta_strip .right_shape_2 { right: -45px; opacity: 0.5 !important; }
.cta_strip .right_shape_3 { right: -20px; opacity: 0.5 !important; }
}

@media screen and (min-width: 0px) and (max-width: 520px) {
.cta_strip p { font-size: 1.0625em; }
}

@media screen and (min-width: 375px) and (max-width: 420px) {
.cta_strip .contacts div { font-size: 1.2em; }
}

@media screen and (min-width: 0px) and (max-width: 374px) {
.cta_strip .contacts div { font-size: 1.1em; }
}

/*------------*/

/*--- Event Detail ---*/
.event_detail { }
.event_detail .wrap { padding: 30px; margin: 0 4px 4px 4px; background-color: #FFF; border: 1px solid #B9B9B9; border-top: 4px solid #008B95; box-shadow: 0 2px 4px rgba(0,0,0,0.2); overflow: hidden; }
.event_detail .col_left { float: left; width: 48%; }
.event_detail .col_right { float: right; width: 48%; }
.event_detail .col_fw { float: left; width: 100%; }

.event_detail .the_content a { border-bottom-color: #008B95; }
.event_detail blockquote { border-left-color: #008B95; }
.event_detail .the_content ul li { background-image: url(_images/common/bkgd-bullet-point-teal.svg); }
.no-svg  .event_detail .the_content ul li { background-image: url(_images/common/bkgd-bullet-point-teal.png); } /* No SVG */

.event_detail .sharing { margin: 0 0 20px 0; }

.event_detail .photo { margin: 20px 0 0 0; }

.event_detail .accessibility { padding: 10px 0 0 0; }
.event_detail .event_accessibility { display: inline-block; font-size: 14px; line-height: 32px; margin: 10px 10px 0 0; }
.event_detail .event_accessibility .icon { display: inline-block; height: 32px; padding: 0 6px 0 0; vertical-align: middle; }

.event_detail .attend { margin: 30px 0 0 0; }
.event_detail .attend .sold_out { text-align: center; color: #FFF; padding: 10px; margin: 0 0 10px 0; background-color: #CB0044; }

.event_detail .contacts { padding: 10px 0 20px 0; }
.event_detail .contacts a { border: none; }
.event_detail .contacts div { font-size: 1.125em; line-height: 26px; margin: 0 0 10px 0; }
.event_detail .contacts div span.icon { display: inline-block; line-height: 26px; margin: 0 10px 0 0; vertical-align: middle; }
.event_detail .contacts .email { word-break: break-all; }

.event_detail .venue_map { height: 340px; background-color: #E9E9E9; }
.event_detail .venue_address { color: #FFF; padding: 14px 20px 18px 20px; background-color: #008B95; }
.event_detail .venue_address h6 { margin-bottom: 0; }
.event_detail .venue_address p { margin-bottom: 3px; }
.event_detail .venue_address .line_btn { text-transform: uppercase; }

@media screen and (min-width: 0px) and (max-width: 767px) {
.event_detail .col_left { width: 100%; }
.event_detail .col_right { width: 100%; margin: 30px 0 0 0; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.event_detail .wrap { padding: 0; }
.event_detail .col_left { width: inherit; padding: 14px 14px 0 14px; }
}

@media screen and (min-width: 0px) and (max-width: 380px) {
.event_detail .col_left .btn { padding: 0 20px; }
}

/*------------*/

/*--- Event Listings ---*/
.event_listings { }

/*- Filter Controls */
.event_listings .filter_controls { margin: 0 0 30px 0; overflow: hidden; }
.event_listings .filter_controls .col_left { float: left; width: 60%; }
.event_listings .filter_controls .col_right { float: right; width: 40%; text-align: right; }
.event_listings .filter_controls .col_fw { float: left; width: 100%; text-align: center; }

.event_listings .filter_controls .search { float: left; height: 40px; margin: 0 8px 0 0; }
.event_listings .filter_controls .search form { position: relative; }
.event_listings .filter_controls .search input { line-height: 38px; border: 1px solid #B9B9B9; border-radius: 4px; }
.event_listings .filter_controls .search input.submit { border-color: transparent; }
.event_listings .filter_controls .search form .submitblock { position: absolute; top: 0; right: 0; float: none; width: auto; padding: 0; }
.event_listings .filter_controls .search form .submitblock input { position: relative; width: 100%; min-width: 38px; height: 38px; line-height: 38px; font-size: 1em; text-transform: uppercase; background-color: transparent; z-index: 1; }
.event_listings .filter_controls .search form .submitblock input:hover { }
.event_listings .filter_controls .search form .submitblock span.icon { position: absolute; top: 50%; right: 50%; width: 14px; height: 14px; margin: -7px -7px 0 0; z-index: 0; }
.event_listings .filter_controls .search form .submitblock span.icon img { vertical-align: top; }

.event_listings .filter_controls .filter_events { position: relative; float: left; height: 40px; line-height: 40px; text-transform: uppercase; border-radius: 4px; }
.event_listings .filter_controls .filter_events .filter_button { display: block; padding: 0 16px; background-color: #E9E9E9; border-radius: 4px; cursor: pointer; }
.event_listings .filter_controls .filter_events .filter_button:hover { background-color: #D8D8D8; }
.event_listings .filter_controls .filter_events .filter_button.active { color: #FFF; background-color: #1E1656; }
.event_listings .filter_controls .filter_events .tab { position: absolute; top: 94%; left: 0; right: 0; height: 16px; background-color: #1E1656; }
.event_listings .filter_controls .filter_events span.icon { float: right; padding: 0 0 0 60px; }
.event_listings .filter_controls ul.change_view { display: inline-block; font-size: 0; line-height: 0; border: 1px solid #B9B9B9; border-radius: 4px; }
.event_listings .filter_controls ul.change_view li { display: inline-block; font-size: 15px; line-height: 38px; text-transform: uppercase; color: #1E1656; padding: 0 16px; border-right: 1px solid #B9B9B9; cursor: pointer; }
.event_listings .filter_controls ul.change_view li:first-child { border-radius: 4px 0 0 4px; }
.event_listings .filter_controls ul.change_view li:last-child { border-right: none; border-radius: 0 4px 4px 0; }
.event_listings .filter_controls ul.change_view li:hover { background-color: #FAFAFA; }
.event_listings .filter_controls ul.change_view li.active { color: #FFF; background-color: #1E1656; }
.event_listings .filter_controls ul.change_view li span.icon { display: inline-block; margin: 0 6px 0 0; }
.event_listings .filter_controls ul.change_view li span.icon svg { margin: -4px 0 0 0; vertical-align: middle; }

/* Filter Options */
.event_listings .filter_controls .filter_options { color: #FFF; padding: 20px; margin: 10px 0 0 0; background-color: rgba(30,22,86,0.65); border-top: 4px solid #1E1656; border-radius: 4px; }
.event_listings .filter_controls .filter_options p { font-size: 1.25em; }
.event_listings .filter_controls .filter_options .facets { max-width: 800px; text-align: left; margin: 0 auto; overflow: hidden; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet { float: left; width: 22.75%; margin: 0 3% 0 0; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet:last-child { margin-right: 0; }
.event_listings .filter_controls .filter_options .facets .facet .facet_label { margin: 0 0 10px 0; }

/* Restyle WPFacet */
.event_listings .facetwp-facet { margin: 0 !important; }
.event_listings .facetwp-facet select { height: 40px; line-height: 40px; font-size: 14px; background-color: #FFF; background-image: url(_images/common/bkgd-icon-events-filter-dropdown.svg); background-repeat: no-repeat; background-position: right center; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; }
.no-svg .event_listings .facetwp-facet select { background-image: url(_images/common/bkgd-icon-events-filter-dropdown.png); } /* No SVG */

.event_listings .facetwp-facet-events_date select { background-image: url(_images/common/bkgd-icon-events-filter-date.svg); }
.no-svg .event_listings .facetwp-facet-events_date select { background-image: url(_images/common/bkgd-icon-events-filter-date.png); } /* No SVG */

.event_listings .facetwp-facet-events_free .facetwp-checkbox { line-height: 40px; text-indent: -999px; padding: 0 0 0 30px !important; margin: 0 !important; background-image: url(_images/common/bkgd-icon-events-filter-free.svg) !important; background-repeat: no-repeat; background-position: 0 0 !important; background-size: auto auto !important; }
.no-svg .event_listings .facetwp-facet-events_free .facetwp-checkbox { background-image: url(_images/common/bkgd-icon-events-filter-free.png) !important; } /* No SVG */
.event_listings .facetwp-facet-events_free .facetwp-checkbox.checked { background-position: 0 -40px !important; }
.event_listings .facetwp-facet-events_free .facetwp-checkbox[data-value="0"] { display: none; }

.event_listings .facetwp-btn { top: 4px !important; right: 10px !important; opacity: 1 !important; }
.event_listings .facetwp-btn::before { width: 15px !important; height: 15px !important; background-image: url(_images/common/bkgd-icon-events-filter-search.svg) !important; background-size: 15px 15px !important; }
.no-svg .event_listings .facetwp-btn::before { background-image: url(_images/common/bkgd-icon-events-filter-search.png) !important; } /* No SVG */

@media screen and (min-width: 0px) and (max-width: 800px) {
.event_listings .filter_controls .filter_options .facets.four_facets .facet { width: 48%; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet:nth-child(2n) { margin-right: 0; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet:first-child,
.event_listings .filter_controls .filter_options .facets.four_facets .facet:nth-child(2) { margin-bottom: 10px; }
}

@media screen and (min-width: 0px) and (max-width: 400px) {
.event_listings .filter_controls .filter_options p { font-size: 1.125em; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet { width: 100%; margin: 0 0 10px 0; }
.event_listings .filter_controls .filter_options .facets.four_facets .facet:last-child { margin-bottom: 0; }
}

/*- Event Listing -*/
.event_listings .event_listing { }
.event_listings .event_listing .inner_wrap { position: relative; padding: 16px; background-color: #FFF; border: 1px solid #B9B9B9; border-radius: 4px; }

.event_listings .event_listing .inner_wrap .photo { display: none; margin: -16px -16px 16px -16px; }
.event_listings .event_listing .inner_wrap .photo img { width: 100%; }

.event_listings .event_listing .inner_wrap .title { position: relative; display: inline-block; max-width: 80%; margin: 0 0 14px -16px; }
.event_listings .event_listing .inner_wrap .title h4 { position: relative; display: inline-block; font-size: 18px; margin: 0; }
.event_listings .event_listing .inner_wrap .title a { display: inline-block; color: #FFF; padding: 4px 4px 4px 16px; background-color: #394044; }
.event_listings .event_listing .inner_wrap .title .corner { position: absolute; top: 0; right: -14px; width: 15px; height: 100%; background-color: #394044; -webkit-clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); clip-path: polygon(0 0, 50% 0, 100% 100%, 0% 100%); }

.event_listings .event_listing .inner_wrap .title.adults a,
.event_listings .event_listing .inner_wrap .title.adults .corner { background-color: #008B95; }
.event_listings .event_listing .inner_wrap .title.families a,
.event_listings .event_listing .inner_wrap .title.families .corner { background-color: #1E1656; }
.event_listings .event_listing .inner_wrap .title.schools a,
.event_listings .event_listing .inner_wrap .title.schools .corner { background-color: #CB0044; }

.event_listings .event_listing .inner_wrap .meta { }
.event_listings .event_listing .inner_wrap .meta div { display: inline-block; }
.event_listings .event_listing .inner_wrap .meta .date { font-weight: 700; padding: 0 20px 0 0; margin: 0 0 10px 0; }
.event_listings .event_listing .inner_wrap .meta .location { margin: 0 0 10px 0; }
.event_listings .event_listing .inner_wrap .meta .location .icon { padding: 0 6px 0 0; }
.event_listings .event_listing .inner_wrap .tags { }
.event_listings .event_listing .inner_wrap .tags ul { font-size: 0; line-height: 0; }
.event_listings .event_listing .inner_wrap .tags ul li { display: inline-block; font-size: 13px; line-height: 24px; text-transform: uppercase; margin: 0 2px; }
.event_listings .event_listing .inner_wrap .tags ul li a { color: #FFF; padding: 4px 6px; background-color: #E37222; }
.event_listings .event_listing .inner_wrap .tags ul li a:hover { background-color: #394044 !important; }
.event_listings .event_listing .inner_wrap .tags ul li.free { font-weight: 600; padding: 4px 6px; }

.event_listings .event_listing .inner_wrap .tags ul li.adults a { background-color: #008B95; }
.event_listings .event_listing .inner_wrap .tags ul li.families a { background-color: #1E1656; }
.event_listings .event_listing .inner_wrap .tags ul li.schools a { background-color: #CB0044; }

.event_listings .event_listing .inner_wrap .event_accessibility { display: inline-block; font-size: 14px; line-height: 32px; margin: 10px 10px 0 0; }
.event_listings .event_listing .inner_wrap .event_accessibility .icon { display: inline-block; height: 32px; padding: 0 6px 0 0; vertical-align: middle; }

.event_listings .event_listing .inner_wrap .sold_out { position: absolute; right: 0; bottom: 0; width: 60px; height: 60px; }

@media screen and (min-width: 0px) and (max-width: 720px) {
.event_listings .filter_controls .col_left { width: 100%; margin: 10px 0 0 0; }
.event_listings .filter_controls .col_right { width: 100%; text-align: center; }

.event_listings .filter_controls .search { width: 49%; margin: 0; }
.event_listings .filter_controls .filter_events { float: right; width: 49%; }
}

@media screen and (min-width: 0px) and (max-width: 400px) {
.event_listings .filter_controls .search { width: 100%; }
.event_listings .filter_controls .filter_events { width: 100%; margin: 10px 0 0 0; }
}

/*- Full Width Layout -*/
.event_listings_fw .event_listing { margin-bottom: 20px; }
.event_listings_fw .event_listing strong { display: inline-block; }

@media screen and (min-width: 768px) {
.event_listings_fw .event_listing .inner_wrap .title { max-width: 60%; }
.event_listings_fw .event_listing .inner_wrap .tags { position: absolute; top: 16px; right: 16px; max-width: 39%; text-align: right; }
}

/*- Grid Layout -*/
.event_listings_grid { margin: -16px; overflow: hidden; }
.event_listings_grid .event_listing { position: relative; float: left; width: 30.33%; margin: 1.5%; }
.event_listings_grid .event_listing strong { display: block; padding: 10px 0 0 0; }
.event_listings_grid .event_listing.has_photo .inner_wrap .photo { display: block !important; }
.event_listings_grid .event_listing.has_photo .inner_wrap .title { position: absolute; top: 16px; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.event_listings_grid { margin: -12px; }
.event_listings_grid .event_listing { width: 47%; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.event_listings_grid { margin: 0; }
.event_listings_grid .event_listing { width: 100%; margin: 0 0 20px 0; }
}

/*- Map Layout -*/
.event_listings .venue_map { height: 600px; }
.event_listings .venue_map a { color: #E37222; }
.event_listings .venue_map h4 { margin: 0 0 4px 0; }
.event_listings .venue_map h6 { margin: 0; }
.event_listings .venue_map .gm-style .gm-style-iw { max-width: 200px; font-weight: 400; }

/*------------*/

/*--- Events Feed ---*/
.events_feed { }
.events_feed .event_listings_grid { margin-bottom: 0; }
.events_feed .listings_title { text-align: center; padding: 0 0 20px 0; }
.events_feed .listings_title h3,
.events_feed .listings_title h5 { margin: 0; }
.events_feed .listings_outro { text-align: center; padding: 10px 0 0 0; }
.events_feed .no_results { max-width: 480px; margin: 0 auto; }

/*------------*/

/*--- Loction Map ---*/
.location_map .venue_map { height: 640px; background-color: #E9E9E9; }
.location_map .venue_map span.event_count { display: inline-block; color: #FFF; text-transform: uppercase; padding: 3px 6px; margin: 0 0 4px 0; background-color: #E37222; }
.location_map .venue_map h4 { margin: 0 0 4px 0; }
.location_map .venue_map p { margin: 0 0 2px 0; }
.location_map .venue_map a:hover,
.location_map .venue_map a:active,
.location_map .venue_map a:focus { color: #E37222; }
.location_map .gm-style .gm-style-iw { max-width: 200px; font-weight: 400; }

@media screen and (min-width: 0px) and (max-width: 767px) {
.location_map .venue_map { height: 520px; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.location_map .venue_map { height: 440px; }
}

/*------------*/

/*--- Logo Carousel ---*/
.logo_carousel { }
.logo_carousel .carousel_wrap { padding: 0 90px; }
.logo_carousel .carousel_prev,
.logo_carousel .carousel_next { position: absolute; top: 50%; width: 28px; height: 50px; padding: 6px; margin-top: -28px; cursor: pointer; }
.logo_carousel .carousel_prev:hover .svg_icon path,
.logo_carousel .carousel_prev:active .svg_icon path,
.logo_carousel .carousel_prev:focus .svg_icon path,
.logo_carousel .carousel_next:hover .svg_icon path,
.logo_carousel .carousel_next:active .svg_icon path,
.logo_carousel .carousel_next:focus .svg_icon path { fill: #B9B9B9; }
.logo_carousel .carousel_prev { left: 0; }
.logo_carousel .carousel_next { right: 0; }

.logo_carousel .logo { line-height: 85px; text-align: center; padding: 1px; }
.logo_carousel .logo img { width: auto !important; max-height: 85px; vertical-align: middle; }

/* No Carousel */
.logo_carousel .no_carousel { text-align: center; padding: 0 !important; }
.logo_carousel .no_carousel .logo { display: inline-block; max-width: 160px; padding: 0; margin: 0 20px; }

@media screen and (min-width: 0px) and (max-width: 659px) {
.logo_carousel .carousel_wrap { padding: 0 75px; }
}

/*------------*/

/*--- Logo Grid ---*/
.logo_grid { text-align: center; }
.logo_grid .logo { float: left; width: 31.33%; margin: 3% 3% 0 0; padding: 10px 30px; background-color: #FFF; border: 1px solid #B9B9B9; border-radius: 4px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; overflow: hidden; }
.logo_grid .logo:nth-child(3n) { margin-right: 0; }
.logo_grid .logo:nth-child(1),
.logo_grid .logo:nth-child(2),
.logo_grid .logo:nth-child(3) { margin-top: 0; }
.logo_grid .logo a { display: block; }
.logo_grid .logo .image { max-height: 85px; line-height: 85px; }
.logo_grid .logo .image img { width: auto; max-height: 85px; }
.logo_grid .logo .name { padding: 10px; margin: 10px -30px -10px -30px; background-color: #F0F0F0; }

@media screen and (min-width: 481px) and (max-width: 767px) {
.logo_grid .logo { width: 48.5%; }
.logo_grid .logo:nth-child(3n) { margin-right: 3%; }
.logo_grid .logo:nth-child(2n) { margin-right: 0; }
.logo_grid .logo:nth-child(3) { margin-top: 3%; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.logo_grid .logo { width: 100%; margin: 20px 0 0 0 !important; }
.logo_grid .logo:nth-child(1) { margin-top: 0 !important; }
.logo_grid .logo .image img { max-width: 200px; }
}

/*------------*/

/*--- Logo Profiles ---*/
.logo_profiles { }
.logo_profiles .wrap { padding: 30px; margin: 0 4px 4px 4px; background-color: #FFF; border: 1px solid #B9B9B9; border-top: 4px solid #008B95; box-shadow: 0 2px 4px rgba(0,0,0,0.2); }

.logo_profiles .logo { margin: 0 0 30px 0; overflow: hidden; }
.logo_profiles .logo:last-child { margin-bottom: 0; }
.logo_profiles .logo .image { float: left; width: 25%; text-align: center; padding-top: 20px; }
.logo_profiles .logo .image img { width: auto; max-height: 120px; }
.logo_profiles .logo .desc { float: right; width: 70%; }

@media screen and (min-width: 0px) and (max-width: 660px) {
.logo_profiles .logo .image { float: right; width: auto; max-width: 35%; padding-top: 10px; margin: 0 0 15px 15px; }
.logo_profiles .logo .desc { float: none; width: 100%; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.logo_profiles .wrap { padding: 20px; }
}

@media screen and (min-width: 0px) and (max-width: 400px) {
.logo_profiles .logo .image { float: none; width: auto; max-width: 120px; margin-left: 0; }
}

/*------------*/

/*--- Photo Features ---*/
.photo_features { }
.photo_features .container { max-width: 1000px; }
.photo_features .wrap { position: relative; width: 100%; height: 570px; }
.photo_features .photo { position: absolute; background-color: #DDD; background-repeat: no-repeat; background-position: center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.photo_features .photo a { display: block; width: 100%; height: 100%; }
.photo_features .photo a:hover .caption { background-color: #1A1A1A; }
.photo_features .photo .caption { position: absolute; left: 0; right: 0; bottom: 0; font-size: 0.9em; line-height: 1.1em; color: #FFF; font-weight: 600; text-transform: uppercase; letter-spacing: 0.1em; padding: 8px 10px 8px 40px; background-color: rgba(57,64,68,0.8); background-repeat: no-repeat; background-position: 10px center; }
.photo_features .photo_01 { top: 0; left: 0; width: 41%; height: 54%; }
.photo_features .photo_02 { top: 55%; left: 0; width: 41%; height: 45%; }
.photo_features .photo_03 { top: 0; left: 42%; width: 25%; height: 60%; }
.photo_features .photo_04 { top: 0; left: 68%; width: 32%; height: 60%; }
.photo_features .photo_05 { top: 61%; left: 42%; width: 18%; height: 39%; }
.photo_features .photo_06 { top: 61%; left: 61%; width: 39%; height: 39%; }

.photo_features .photo .caption.exhibition { background-color: rgba(203,0,68,0.8); background-image: url(_images/common/bkgd-icon-event-type-exhibition.svg); }
.no-svg .photo_features .photo .caption.exhibition { background-image: url(_images/common/bkgd-icon-event-type-exhibition.png); } /* No SVG */

.photo_features .photo .caption.performance { background-color: rgba(30,22,86,0.8); background-image: url(_images/common/bkgd-icon-event-type-performance.svg); }
.no-svg .photo_features .photo .caption.performance { background-image: url(_images/common/bkgd-icon-event-type-performance.png); } /* No SVG */

.photo_features .photo .caption.screening { background-color: rgba(203,0,68,0.8); background-image: url(_images/common/bkgd-icon-event-type-screening.svg); }
.no-svg .photo_features .photo .caption.screening { background-image: url(_images/common/bkgd-icon-event-type-screening.png); } /* No SVG */

.photo_features .photo .caption.talk { padding-left: 35px; background-color: rgba(0,139,149,0.8); background-image: url(_images/common/bkgd-icon-event-type-talk.svg); }
.no-svg .photo_features .photo .caption.talk { background-image: url(_images/common/bkgd-icon-event-type-talk.png); } /* No SVG */

.photo_features .photo .caption.workshop { padding-left: 33px; background-color: rgba(30,22,86,0.8); background-image: url(_images/common/bkgd-icon-event-type-workshop.svg); }
.no-svg .photo_features .photo .caption.workshop { background-image: url(_images/common/bkgd-icon-event-type-workshop.png); } /* No SVG */

.photo_features .more_link { width: 100%; text-align: center; padding: 40px 0 0 0; }

@media screen and (min-width: 0px) and (max-width: 767px) {
.photo_features .wrap { height: 960px; }
.photo_features .photo_01 { width: 49%; height: 28%; }
.photo_features .photo_02 { top: 0; left: 51%; width: 49%; height: 28%; }
.photo_features .photo_03 { top: 29%; left: 0; width: 44%; height: 40%; }
.photo_features .photo_04 { top: 29%; left: 46%; width: 54%; height: 40%; }
.photo_features .photo_05 { top: 70%; left: 0; width: 30%; height: 30%; }
.photo_features .photo_06 { top: 70%; left: 32%; width: 68%; height: 30%; }
}

@media screen and (min-width: 0px) and (max-width: 600px) {
.photo_features .wrap { height: 640px; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.photo_features .container { padding: 0; }
.photo_features .section_intro { padding-left: 20px; padding-right: 20px; }
.photo_features .photo .caption { font-size: 0.8em; }
.photo_features .photo_03 { width: 49%; }
.photo_features .photo_04 { left: 51%; width: 49%; }
.photo_features .photo_05 { width: 49%; }
.photo_features .photo_06 { left: 51%; width: 49%; }
}

/*------------*/

/*--- Team Grid ---*/
.team_grid { }
.team_grid ul { font-size: 0; line-height: 0; }
.team_grid ul li.profile { position: relative; display: inline-block; width: 32%; font-size: 16px; line-height: 20px; margin: 2% 2% 0 0; vertical-align: top; overflow: hidden; }
.team_grid ul li.profile.gridder-list { cursor: pointer; }
.team_grid ul li.profile:nth-of-type(3n) { margin-right: 0; }
.team_grid ul li.profile:nth-of-type(1),
.team_grid ul li.profile:nth-of-type(2),
.team_grid ul li.profile:nth-of-type(3) { margin-top: 0; }
.team_grid ul li.profile .photo { position: relative; z-index: 1; }
.team_grid ul li.profile .photo img { width: 100%; }
.team_grid ul li.profile .details { position: absolute; right: 0; bottom: 0; left: 0; text-align: center; padding: 12px; background-color: rgba(245,245,245,0.7); z-index: 2; }
.team_grid ul li.profile .details h4 { margin-bottom: 4px; }

.team_grid ul li.profile.gridder-list:hover .details { background-color: rgba(245,245,245,0.85); }
.team_grid ul li.profile.selectedItem .details { bottom: -100px; }

@media screen and (min-width: 721px) and (max-width: 900px) {
.team_grid ul li.profile { font-size: 14px; }
}

@media screen and (min-width: 421px) and (max-width: 720px) {
.team_grid ul li.profile { width: 48%; font-size: 13px; margin: 4% 4% 0 0 !important; }
.team_grid ul li.profile:nth-of-type(2n) { margin-right: 0 !important; }
.team_grid ul li.profile:nth-of-type(1),
.team_grid ul li.profile:nth-of-type(2) { margin-top: 0 !important; }
}

@media screen and (min-width: 0px) and (max-width: 420px) {
.team_grid ul li.profile { width: 100%; margin: 20px 0 0 0 !important; }
.team_grid ul li.profile:nth-of-type(1) { margin-top: 0 !important; }
}

/*- Biog -*/
.team_grid .profile_biog { background-color: #F5F5F5; }
.team_grid .profile_biog .copy { padding: 40px; }
.team_grid .profile_biog .title { padding: 0 0 20px 0; }
.team_grid .profile_biog .title h4 { display: inline-block; margin: 0; }
.team_grid .profile_biog .title p { display: inline-block; padding: 0 0 0 10px; margin: 0 0 0 10px; border-left: 1px solid #394044; }
.team_grid .profile_biog .bars { overflow: hidden; }
.team_grid .profile_biog .bars .bar { float: left; width: 16.666%; height: 2px; }

@media screen and (min-width: 0px) and (max-width: 600px) {
.team_grid .profile_biog .copy { padding: 20px; }
.team_grid .profile_biog .title h4 { display: block; }
.team_grid .profile_biog .title p { display: block; padding: 4px 0 0 0; margin: 0; border-left: none; }
}

@media screen and (min-width: 0px) and (max-width: 420px) {
.team_grid .profile_biog .title { padding-top: 40px; }
}

/*- Gridder -*/
.team_grid .gridder { font-size: 0; line-height: 0; }
.team_grid .gridder-content { display: none; }
.team_grid .gridder-show { position: relative; display: block; float: left; width: 100%; font-size: 16px; line-height: 20px; margin: 2% 0 0 0; }
.team_grid .gridder-navigation { position: absolute; top: 20px; right: 20px; z-index: 1; }
.team_grid .gridder-navigation a { display: inline-block; width: 38px; height: 38px; line-height: 38px; background-repeat: no-repeat; background-position: center center; opacity: 0.8; }
.team_grid .gridder-navigation a:hover { opacity: 1; }

.team_grid a.gridder-nav,
.team_grid a.gridder-close { background-image: url(_images/common/bkgd_gridder_navigation.svg); }
.no-svg .team_grid a.gridder-nav,
.no-svg .team_grid a.gridder-close { background-image: url(_images/common/bkgd_gridder_navigation.png); } /* No SVG */

.team_grid a.gridder-nav.prev { background-position: 0 0; }
.team_grid a.gridder-nav.next { background-position: -38px 0; }
.team_grid a.gridder-close { background-position: -76px 0; }

.team_grid a.gridder-nav.prev.disabled,
.team_grid a.gridder-nav.next.disabled { opacity: 0.4; }

@media screen and (min-width: 421px) and (max-width: 720px) {
.team_grid .gridder-show { margin-top: 4%; }
}

@media screen and (min-width: 0px) and (max-width: 420px) {
.team_grid .gridder-show { margin-top: 20px; }
.team_grid .gridder-navigation { top: 10px; right: 10px; }
}

/*------------*/

/*--- Text Block ---*/
.text_block { }
.text_block p:last-child { margin-bottom: 0; }

/*------------*/

/*--- Text Blocks Expandable ---*/
.text_blocks_expandable { }
.text_blocks_expandable h4 { font-size: 1.2em; margin: 0; }
.text_blocks_expandable p:last-child { margin: 0; }
.text_blocks_expandable .toggle { margin: 0 0 6px 0; }
.text_blocks_expandable .toggle-title { position: relative; color: #394044; padding: 10px 42px 10px 10px; background-color: #E9E9E9; cursor: pointer; }
.text_blocks_expandable .toggle-title:hover { background-color: #F5F5F5; }
.text_blocks_expandable .toggle-title.ui-state-active { color: #FFF; background-color: #CB0044; }
.text_blocks_expandable .toggle-title .ui-icon { display: none; }
.text_blocks_expandable .toggle-title .icon { position: absolute; top: 50%; right: 10px; width: 16px; height: 10px; margin: -3px 0 0 0; }
.text_blocks_expandable .toggle-title .icon svg { display: block; }
.text_blocks_expandable .toggle-title.ui-state-active .icon { margin: -5px 0 0 0; transform: rotate(-180deg); }
.text_blocks_expandable .toggle-title.ui-state-active .icon polygon { fill: #FFF; }
.text_blocks_expandable .toggle-inner { padding: 20px 10px; }

/*------------*/

/*--- Venue Profile ---*/
.venue_profile { }
.venue_profile .wrap { padding: 30px; margin: 0 4px 4px 4px; background-color: #FFF; border: 1px solid #B9B9B9; border-top: 4px solid #E37222; box-shadow: 0 2px 4px rgba(0,0,0,0.2); overflow: hidden; }
.venue_profile .col_left { float: left; width: 48%; }
.venue_profile .col_right { float: right; width: 48%; }
.venue_profile .col_fw { float: left; width: 100%; }

.venue_profile blockquote { border-left-color: #E37222; }
.venue_profile .the_content ul li { background-image: url(_images/common/bkgd-bullet-point-orange.svg); }
.no-svg  .venue_profile .the_content ul li { background-image: url(_images/common/bkgd-bullet-point-orange.png); } /* No SVG */

.venue_profile .contacts { padding: 10px 0 20px 0; }
.venue_profile .contacts div { font-size: 1.125em; line-height: 26px; margin: 0 0 10px 0; }
.venue_profile .contacts div span.icon { display: inline-block; line-height: 26px; margin: 0 10px 0 0; vertical-align: middle; }
.venue_profile .contacts .email { word-break: break-all; }

.venue_profile p.accessibility strong { font-weight: 600; }

.venue_profile .venue_map { height: 420px; background-color: #E9E9E9; }

.venue_profile .venue_events_intro { text-align: center; padding: 60px 0 30px 0; }
.venue_profile .event_listings .event_listing:last-child { margin-bottom: 0; }

@media screen and (min-width: 0px) and (max-width: 767px) {
.venue_profile .col_left { width: 100%; }
.venue_profile .col_right { width: 100%; margin: 30px 0 0 0; }
}

@media screen and (min-width: 600px) {
.venue_profile .event_listing .inner_wrap .title { max-width: 50%; }
.venue_profile .event_listing .inner_wrap .tags { max-width: 50%; }
}

@media screen and (min-width: 0px) and (max-width: 480px) {
.venue_profile .wrap { padding: 14px; }
.venue_profile .venue_map { height: 320px; }
}

/*------------*/

/*--- Video Block ---*/
.video_block { }

/*------------*/

/*--- Videos Grid ---*/
.videos_grid { text-align: center; }
.videos_grid .video { float: left; width: 32%; margin: 2% 2% 0 0; }
.videos_grid .video:nth-child(3n) { margin-right: 0; }
.videos_grid .video:nth-child(1),
.videos_grid .video:nth-child(2),
.videos_grid .video:nth-child(3) { margin-top: 0; }
.videos_grid .video .desc { padding: 20px 0 10px 0; }
.videos_grid .video .desc h4 { margin: 0; }
.videos_grid .video .desc p { padding-top: 8px; }

@media screen and (min-width: 0px) and (max-width: 900px) {
.videos_grid .video { width: 48.5%; margin: 3% 3% 0 0; }
.videos_grid .video:nth-child(3n) { margin-right: 3%; }
.videos_grid .video:nth-child(2n) { margin-right: 0; }
.videos_grid .video:nth-child(3) { margin-top: 3%; }
}

@media screen and (min-width: 0px) and (max-width: 520px) {
.videos_grid .video { width: 100%; margin: 20px 0 0 0 !important; }
.videos_grid .video:nth-child(1) { margin-top: 0 !important; }
}




/*------------------------------------------------------------------*/
/*  4.  Owl Carousel
/*------------------------------------------------------------------*/

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -ms-transform: scale(1.3, 1.3);
      transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/*- Customise Owl Carousel -*/
.owl-dots { text-align: center; margin: 0 auto; }
.owl-dots .owl-dot { display: inline-block; width: 14px; height: 14px; margin: 0 2px; }
.owl-dots .owl-dot span { display: block; width: 12px; height: 12px; margin: 2px 0 0 2px; background: #FFF; opacity: 0.85; border-radius: 50%; }
.owl-dots .owl-dot.active span,
.owl-dots .owl-dot:hover span { background: #EC1780; opacity: 1; }
.owl-nav { pointer-events: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; }
.owl-nav [class*="owl-"] { border-radius: 0; }

.owl-nav .owl-prev { pointer-events: auto; float: left; text-indent: -9999px; width: 40px; height: 100%; padding: 0; margin: 0; background-color: transparent; background-color: #000; background-repeat: no-repeat; background-position: center center; transform: rotate(-180deg); overflow: hidden; }
.owl-nav .owl-next { pointer-events: auto; float: right; text-indent: -9999px; width: 40px; height: 100%; padding: 0; margin: 0; background-color: transparent; background-color: #000; background-repeat: no-repeat; background-position: center center; overflow: hidden; }
.owl-nav .owl-prev:hover { opacity: 0.9; }
.owl-nav .owl-next:hover { opacity: 0.9; }




/*------------------------------------------------------------------*/
/*  5.  WooCommerce
/*------------------------------------------------------------------*/

/*--- WooCommerce Common ---*/

/* Forms */
.woocommerce form .form-row { padding: 0 0 8px 0; }
.woocommerce input,
.woocommerce select,
.select2-container .select2-selection--single,
.select2-container--default .select2-selection--single .select2-selection__rendered { height: 46px; line-height: 46px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { right: 6px; height: 46px; }

/* Buttons */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt { line-height: 46px; font-weight: 600; color: #FFF !important; background-color: #394044; padding: 0 20px; }
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover { background-color: #1A1A1A; }

/* Disabled Button */
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] { padding-top: 0; padding-bottom: 0; background-color: #394044 !important; }

/* Info Banners */
.woocommerce-info a { border-bottom: 1px solid #B9B9B9; }
.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li { margin-bottom: 4px; }

/* Breadcrumbs */
.woocommerce .woocommerce-breadcrumb { font-size: 0.85em; }
.woocommerce .woocommerce-breadcrumb a { border-bottom: 1px solid transparent; }
.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce .woocommerce-breadcrumb a:focus { color: #394044; border-bottom: 1px solid #394044; }

/* Login / Register */
.woocommerce form.login,
.woocommerce form.register { background-color: #F7F6F7; border: none; border-top: 1px solid #D3CED2; border-radius: 0; }
.woocommerce form.login input,
.woocommerce form.register input { width: 100%; }
.woocommerce form.login .form-row-first,
.woocommerce form.login .form-row-last,
.woocommerce form.register .form-row-first,
.woocommerce form.register .form-row-last { width: 49%; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme { line-height: 46px; padding: 0; }
.woocommerce form.login input[type="checkbox"],
.woocommerce form.register input[type="checkbox"] { width: auto; height: 38px; vertical-align: middle; }
.woocommerce form.login p:last-of-type,
.woocommerce form.register p:last-of-type { margin-bottom: 0; }
.woocommerce form.login .lost_password,
.woocommerce form.register .lost_password { font-size: 0.85em; color: #767676; }
.woocommerce form.login .lost_password a,
.woocommerce form.register .lost_password a { border-bottom: 1px solid #D3CED2; }

.woocommerce form .form-row input#username,
.woocommerce form .form-row input#user_login,
.woocommerce form .form-row input#password,
.woocommerce form .form-row input#password_1,
.woocommerce form .form-row input#password_2 { padding-left: 58px; background-repeat: no-repeat; background-position: left center; }
.woocommerce form .form-row input#username,
.woocommerce form .form-row input#user_login { background-image: url(_images/common/bkgd_icon_form_username.svg); }
.woocommerce form .form-row input#password,
.woocommerce form .form-row input#password_1,
.woocommerce form .form-row input#password_2 { background-image: url(_images/common/bkgd_icon_form_password.svg); }
.no-svg .woocommerce form .form-row input#username,
.no-svg .woocommerce form .form-row input#user_login { background-image: url(_images/common/bkgd_icon_form_username.png); } /* No SVG */
.no-svg .woocommerce form .form-row input#password,
.no-svg .woocommerce form .form-row input#password_1,
.no-svg .woocommerce form .form-row input#password_2 { background-image: url(_images/common/bkgd_icon_form_password.png); } /* No SVG */

/* Reset Password */
.woocommerce form.lost_reset_password .form-row-first,
.woocommerce form.lost_reset_password .form-row-last,
.woocommerce-page form.lost_reset_password .form-row-first,
.woocommerce-page form.lost_reset_password .form-row-last { width: 100%; }

/* Password Strength */
.woocommerce-password-strength { position: relative; color: #394044; padding: 5px; padding-top: 20px; margin-top: -15px; z-index: -1; }
.woocommerce-password-hint { font-size: 0.85em; line-height: 1.3em; }

/*------------------------------------------------------------------*/

/*--- Archive Pages ---*/

/*- Products Grid -*/

/* Image */
.woocommerce ul.products li.product a img { padding: 0 0 20px 0; border-bottom: 1px solid #D3CED2; }

/* Title */
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding-top: 0; }

/* Price */
.woocommerce ul.products li.product .price { color: #394044; margin-bottom: 0; }

/* Add to basket */
.woocommerce a.button { line-height: 36px; padding: 0 12px; }

/*------------------------------------------------------------------*/

/*--- Product Page ---*/

/* Gallery */
.woocommerce div.product div.images .flex-control-thumbs li img { opacity: 1; }

/* Title */
.woocommerce div.product .product_title { font-size: 2.5em; }

@media screen and (min-width: 0px) and (max-width: 520px) {
.woocommerce div.product .product_title { font-size: 2em; }
}

/* Price */
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: #394044; }

/* Short Description */
.woocommerce .woocommerce-product-details__short-description { margin-bottom: 20px; }

/* Meta */
.woocommerce .product_meta { font-size: 0.85em; color: #767676; padding: 10px 0 0 0; border-top: 1px solid #D3CED2; }
.woocommerce .product_meta a { border-bottom: 1px solid transparent; }
.woocommerce .product_meta a:hover,
.woocommerce .product_meta a:focus { color: #394044; border-bottom: 1px solid #394044; }

/* Tabs */
.woocommerce div.product .woocommerce-tabs h2 { font-size: 1.6em; }

/* Related Products */
.woocommerce .related.products { padding-top: 18px; border-top: 1px solid #D3CED2; }
.woocommerce .related.products h2 { font-size: 1.4em; text-transform: uppercase; text-align: center; padding-bottom: 6px; }
.woocommerce .related.products ul.products li.product h2 { text-transform: none; text-align: left; }

/*------------------------------------------------------------------*/

/*--- Cart ---*/

/* Frame */
.woocommerce table.shop_table { border: none; border-radius: 0; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { padding: 9px 0; border-right: none; }

@media screen and (min-width: 0px) and (max-width: 768px) {
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { padding: 9px; }
}

/* Remove */
.woocommerce a.remove { color: #B72340 !important; }
.woocommerce a.remove:hover { background-color: #B72340; }

/* Image */
.woocommerce-cart table.cart img { width: 80px; }

/* Subtotal */
.woocommerce table.shop_table td.product-subtotal { font-weight: 700; }

/* Coupon Code */
.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon { width: 40%; }
.woocommerce table.cart td.actions .coupon input,
.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text { width: 50%; padding: 0 10px !important; margin: 0 !important; background-color: rgba(0,0,0,0.05); border: none !important; border-radius: 3px 0 0 3px; }
.woocommerce .cart .coupon input,
.woocommerce .cart .coupon .button,
.woocommerce .cart .coupon input.button { width: 50% !important; border-radius: 0 3px 3px 0; }

@media screen and (min-width: 0px) and (max-width: 768px) {
.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon { width: 100%; }
}

/* Totals */
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals { background-color: #F9F9F9; padding: 20px; border-top: 1px solid #D3CED2; box-sizing: border-box; }
.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-page .cart-collaterals .cart_totals h2 { font-size: 1.4em; }

@media screen and (min-width: 0px) and (max-width: 768px) {
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals { padding-left: 10px; padding-right: 10px; padding-bottom: 10px; }
}

/* Proceed to Checkout */
#add_payment_method .wc-proceed-to-checkout,
.woocommerce-cart .wc-proceed-to-checkout,
.woocommerce-checkout .wc-proceed-to-checkout { padding-bottom: 0; }
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button { line-height: 66px; margin-bottom: 0; }

/*------------------------------------------------------------------*/

/*--- Checkout ---*/

/* Layout */
body.woocommerce-checkout .woocommerce { max-width: 680px; margin: 0 auto; }

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2 { width: 100%; }

/* Login / Register */
body.woocommerce-checkout .woocommerce form.login { margin-top: -2em; }

/* Coupon */
.woocommerce form.checkout_coupon { margin-top: -2em; background-color: #F7F6F7; border: none; border-top: 1px solid #D3CED2; border-radius: 0; }
.woocommerce form.checkout_coupon input { width: 100%; }
.woocommerce form.checkout_coupon .form-row-first,
.woocommerce form.checkout_coupon .form-row-last { float: left; width: 50%; }
.woocommerce form.checkout_coupon .input-text { border-radius: 3px 0 0 3px; }
.woocommerce form.checkout_coupon .button { border-radius: 0 3px 3px 0; }

@media screen and (min-width: 0px) and (max-width: 420px) {
.woocommerce form.checkout_coupon .form-row-first,
.woocommerce form.checkout_coupon .form-row-last { width: 100%; }
.woocommerce form.checkout_coupon .input-text { border-radius: 3px; }
.woocommerce form.checkout_coupon .button { border-radius: 3px; }
}

/* Titles */
body.woocommerce-checkout h3 { font-size: 1.4em; }

/* Form */
.woocommerce form .form-row .required { color: #B72340; }
.woocommerce form .form-row .optional { display: none; }

/* Delivery Address */
#add_payment_method .checkout .col-2 h3#ship-to-different-address,
.woocommerce-cart .checkout .col-2 h3#ship-to-different-address,
.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address { float: none; display: block; font-size: 1.2em; margin: 20px 0 10px 0; }
#add_payment_method .checkout .col-2 h3#ship-to-different-address label,
.woocommerce-cart .checkout .col-2 h3#ship-to-different-address label,
.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address label { padding: 0; cursor: pointer; }
#add_payment_method .checkout .col-2 h3#ship-to-different-address input,
.woocommerce-cart .checkout .col-2 h3#ship-to-different-address input,
.woocommerce-checkout .checkout .col-2 h3#ship-to-different-address input { width: 18px; height: 18px; }
#add_payment_method .checkout .shipping_address,
.woocommerce-cart .checkout .shipping_address,
.woocommerce-checkout .checkout .shipping_address { padding: 20px; margin: 0 0 20px 0; background-color: #F9F9F9; }

/* Create Account */
.woocommerce form .form-row.create-account { display: inline-block; line-height: 46px; color: #FFF; padding: 0 22px 0 12px; margin: 0 0 8px 0; background-color: #394044; border-radius: 3px; cursor: pointer; }
.woocommerce form .form-row.create-account:hover { background-color: #1A1A1A; }
.woocommerce form .form-row.create-account input { width: 18px; height: 18px; }

/* Additional Fields */
.woocommerce .woocommerce-additional-fields { margin: 20px 0 0 0; }

/* Order Review */
.woocommerce #order_review_heading { padding-top: 14px; margin-top: 14px; border-top: 1px solid #D3CED2; }

/* Privacy Policy */
.woocommerce-privacy-policy-text { margin-bottom: 10px; }

/* Terms and Conditions */
.woocommerce-terms-and-conditions-wrapper input { height: inherit; }
.woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; }
.woocommerce-terms-and-conditions-wrapper input#terms { width: 18px; height: 18px; }
.woocommerce-invalid #terms { outline: 1px solid #A00; }

/* Place Order */
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order { float: none; width: 100%; height: 54px; line-height: 54px; font-size: 1.2em; text-transform: uppercase; background-image: url(_images/common/bkgd_icon_checkout_padlock.svg); background-repeat: no-repeat; background-position: 20px center; }
.no-svg .woocommerce #payment #place_order,
.no-svg .woocommerce-page #payment #place_order { background-image: url(_images/common/bkgd_icon_checkout_padlock.png); } /* No SVG */