/*
Theme Name:     Lewis Moody Foundation
Theme URI:      
Description:    Custom WordPress theme
Author:         
URI:             
Version:        1.0.2019
Text Domain:    lewis-moody-foundation
*/


/*


*/



/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block;}
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, img, ins, kbd, q, s, samp, small, strike, strong, sub, 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, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{margin:0;    padding:0;    border:0;    font-size:100%;    vertical-align:baseline;}
body{line-height:1; }
ol, ul{list-style:none; }
blockquote, q{quotes:none; }
blockquote:before, blockquote:after, q:before, q:after{content:"";    content:none; }
table{border-collapse:collapse;     border-spacing:0; }
caption, th, td{font-weight:normal;     text-align:left; }
h1, h2, h3, h4, h5, h6{clear:both; }
html{overflow-y:scroll;    font-size:62, 5%;    -webkit-text-size-adjust:100%;    -ms-text-size-adjust:100%;}
a, a:hover, a:active, a:focus{outline:none;     text-decoration:none;}
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section{display:block; }
audio, canvas, video{display:inline-block; }
audio:not([controls]){display:none; }
del{color:#333; }
ins{background:#4449c0;     text-decoration:none; }
hr { background-color: #343434; border: 0 none; height: 1px; margin: 1em 0 1.74em; }
sub, sup{font-size:75%;     line-height:0;     position:relative;     vertical-align:baseline; }
sup{top:-0.5em; }
sub{bottom:-0.25em; }
small{font-size:smaller; }
img{border:0;     -ms-interpolation-mode:bicubic; }
img, object, embed{max-width:100%; height:auto; }
img{-ms-interpolation-mode:bicubic; }
img.alignleft {float:left; }
img.alignright {float:right; }

/* Clearing floats */
.clear:after, .wrapper:after, .format-status .entry-header:after{clear:both; }
.clear:before, .clear:after, .wrapper:before, .wrapper:after, .format-status .entry-header:before, .format-status .entry-header:after{display:table;  content:""; }
.align-right{text-align:right !important; }
.align-left{text-align:left !important; }
.align-center{text-align:center !important; }
.aligncenter{text-align:center !important; }
.fl{float:left !important; }
.fr{float:right !important; }
.cl-fl{clear:both; }
.hor-space-s{padding-top:1em }
.hor-space-m{padding-top:2em }
.hor-space-l{padding-top:3em }
em, i { font-style:italic; }
strong, b { font-weight:bold; }
/* some Responsive styles */
/* Responsive images */
.entry-content img, .comment-content img, .widget img{max-width:100%;
/* Fluid images for posts, comments, and widgets */
}
img[class*="align"], img[class*="wp-image-"], img[class*="attachment-"]{height:auto;
/* Make sure images with WordPress-added height and width attributes are scaled correctly */
}
img.size-full, img.size-large, img.header-image, img.wp-post-image{max-width:100%;    height:auto;
/* Make sure images with WordPress-added height and width attributes are scaled correctly */
}
/* Images */
.alignleft{float:left;}


/* *********************************************************************************************************************************** */
/* ********************* Main Styling starts ****************************************************************************** */
 
* { box-sizing:border-box; }
html { margin-top:0 !important; }
html #wpadminbar { position:relative !important; }

a { color:#ba0c2f; transition:all ease 300ms; }
a:hover { color:#ba0c2f; }
p a:hover { text-decoration:underline; color:#ba0c2f; }
html { 	background-color: #fff; height: 100%; display: block;}
body{ background-color:#fff; text-align:left; font-family: 'Nunito', sans-serif; font-weight:400; font-size:16px; letter-spacing:0em; color:#000; padding:0px; margin:0px; overflow: hidden; position: relative; 
  height: auto; min-height: 100%; }

.desktop { display:block; }
.mobile { display:none; }

 
html { min-height:100% !important; }
body {
  display: flex;
  flex-direction: column;
}
#page {
  flex: 1 0 auto;
}
#footer_wrap {
  flex-shrink: 0;
}

/*************************
* General styles
***************************/
/*
font-family: 'Arial', sans-serif;
font-family: 'Merriweather', serif;
font-family: 'Nunito', sans-serif;
*/

.sticky-header{background-color:#fff;    position:fixed;    width:100%;     top:0;    left:0;    z-index:100;    margin:0;    border:0;    transform:translate(0,-100%);    -webkit-transform:translate(0,-100%);    -o-transform:translate(0,-100%);    -ms-transform:translate(0,-100%);    -webkit-transition:all 0.35s ease-in-out;    -moz-transition:all 0.35s ease-in-out;    -ms-transition:all 0.35s ease-in-out;    -o-transition:all 0.35s ease-in-out;    transition:all 0.35s ease-in-out;    border-bottom:1px solid #eee;}
 body.scrolled .sticky-header { transform: translate(0, 0); -webkit-transform: translate(0, 0); }
.sticky-header-content { text-align:center; } 
.sticky-header-content ul li { margin:0; padding:0; }
.sticky-header-content .main-navigation li a { }
.sticky-navbar .header-menu { position: absolute; right: 0%; bottom: 0; width: 75%; top: 0; }
.sticky-navbar { position:relative; padding:10px 0; }
.sticky-navbar .header-logo { width:15%; }

#main-header { position: relative; width: 100%; top: 0; left: 0; right: 0; z-index: 500; }
#page { }
.header-logo a img.short { visibility:hidden; position:absolute; top:0; left:0;}
body.scrolled .header-logo a img.short { visibility:visible; position:relative;  }
body.scrolled .header-logo a img.tall { visibility:hidden; position:absolute; top:0; left:0; display:none; }
body.scrolled .menu-wrapper {  }

.page-block.full-width { margin:0 auto; width:100%; max-width:1920px; }

#main-header { }
#main-header .row { max-width:960px; }
.header-strip { top: 100%; right: 0; position: absolute; left: 0; z-index: 900; }
.header-strip img { display:block; /*width: 100%;*/ width: auto; visibility:hidden; }
.header-strip { background:url('images/header-paint-strip-rep.png') 0 0 transparent; background-repeat:repeat-x; background-size:contain; }

.header-wrapper {}
.menu-wrapper { background: #f2b715 none repeat scroll 0 0;  position: relative; z-index: 999; padding: 10px 0 2px; transition:all ease 300ms;  }
.menu-inner { padding:0; position:relative; }
.header-inner { background:#fff; }
.header-row { padding:20px 0; border-bottom:solid 1px #fff; }
.header-logo { float: left; width: 50%; transition: all ease 200ms; margin-left: 0; position: relative; max-width: 200px; }
.header-logo a { display:block; margin:0 0 0 0; transition:all ease 200ms; }
.header-logo a img { display:block; transition:all ease 200ms; height:auto; max-width:100%; }
.header-logo svg { width: 465px; height: auto; }
.header-menu { position: relative; bottom: 0; float: right; width: 75%; top: auto; height: auto; }
body.scrolled .header-menu { height: 29px; padding-top: 0; }
.header-menu-tbl { display:table; height:100%; width:100%; }
.header-menu-cell { display:table-cell; height:100%; width:100%; vertical-align:bottom; }
#main-navigation { float: right; bottom: 0; top: auto; right: 0; display: table; position: relative; height: 100%; padding: 0 0 0 0; margin: 0; }
#main-navigation li { float: none; display: table-cell; height: 100%; vertical-align: middle; position: relative; list-style-type: none; padding: 0 5px; }
#main-navigation li a { display: table-cell; color: #000; display: block; font-size: 15px; line-height: 1.20em; font-weight: 700; font-family: 'Nunito', sans-serif; padding: 1em 22px; text-transform: uppercase; } 
#main-navigation li a:after { content:""; width:1px; top:0; bottom:0; display:block; position:absolute; right:0; background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(186,12,47,1) 100%); }
#main-navigation li:last-of-type a:after { display:none; }
#main-navigation > li > a {   }
#main-navigation li a:hover { color:#fff !important; }
#main-navigation li.current-menu-item > a { color:#fff; }
#main-navigation li.current-menu-parent > a { color:#fff; }
#main-navigation li ul.sub-menu { display:none; }
#main-navigation li.menu-item-has-children > a { position:relative; padding-right:40px; }
#main-navigation li.menu-item-has-children > a:before { text-rendering: optimizeLegibility; position: absolute; display: inline-block; float: right; font-family: Font Awesome\ 5 Pro,'FontAwesome'; font-size: 14px; 
  font-weight: 900;content: "\f107"; right: 20px; top: 50%; margin-top:-9px; line-height:1em; }
#main-navigation li .sub-menu { box-shadow: 3px 3px 15px rgba(0,0,0,0.1); display: none; border-top: solid 3px #ba0c2f; font-weight: 400; background: rgba( 242,183,21,0.85 ); position: absolute; top: 100%; width: auto; left: 0; margin: 0; z-index:1000; }
#main-navigation li .sub-menu li { float:none; min-width:240px; display:block;  }
#main-navigation li .sub-menu li a { padding:13px 15px; font-size: 15px; font-weight: 400; color: #000; text-align:left; border-bottom:solid 1px #eee; text-transform:initial; }
#main-navigation li .sub-menu li.current-menu-item > a { color:#fff; }
#main-navigation li:hover .sub-menu { display:block; }
#main-navigation li.current-menu-item > a { color:#fff; }
#main-navigation li:last-of-type a { padding-right:0;}
#main-navigation li:last-of-type {  padding-right:0; }
.main-nav-block {  }

.menu-inner .ctas { float:right; text-align:right; width:65%; margin-bottom:10px; }
.menu-inner .ctas ul { display:inline-block; text-align:right; padding:0; margin:0; }
.menu-inner .ctas ul li { display:inline-block; float:left; list-style-type:none; margin:0 0 0 5px; }
.menu-inner .ctas ul li a { display:block; padding:1em 2em; font-size:14px; color:#ba0c2f; border:solid 1px #ba0c2f; text-transform:uppercase; }
.menu-inner .ctas ul li a:hover { color:#fff; border:solid 1px #ba0c2f; background-color:#ba0c2f; }
.menu-inner .ctas ul li a.primary { color:#fff; border:solid 1px #ba0c2f; background-color:#ba0c2f;}
.menu-inner .ctas ul li a.primary:hover { color:#ba0c2f; border:solid 1px #ba0c2f; background-color:#f2b715;}

.main-content-area {   }
.default-content-area { margin:65px auto 45px; }

#main-header { margin-bottom:100px; }

.page-template-page-default .page-block,
.page-template-page-blog .page-block { margin-top:30px; margin-bottom:0px; }
.blog-posts {     padding-bottom: 45px; }
.blog-posts .full-row { margin-bottom: 45px; }
.bpi-i { display: block; overflow: hidden; }
.blog-page-item { position:relative; }
.blog-page-item.social-media { background:#fff; }
.blog-page-item a { overflow:hidden; }
.blog-page-item .bpi-featured { height:400px; position:relative; width:100%; content:""; display:block; background-size:cover; background-position:center center; background-repeat:no-repeat; transition:all ease 250ms; }
.blog-page-item .bpi-featured.blog-social-box { background:#fff; }
.blog-page-item .bpi-featured.blog-social-box .social-media {  }
.blog-page-item .bpi-featured.blog-social-box a { color:#000; }


.fb-icon { position:absolute; color:#000; font-size:40px; top:30px; right:30px; }
.custom-widget {     position: relative; justify-content: center; align-items: center; padding: 30px; border-bottom: solid 1px #000; width: 100%; background: #fff; overflow-y: auto; height: 400px; }
.custom-widget .cff-media-link { display:none; }
.cff-post-text { font-size:14px; } 
.custom-widget a.button { border: solid 2px #ba0c2f; color: #ba0c2f !important; font-weight: 600; position: relative; display: inline-block; margin-top: 15px; border-radius: 3px; font-size: 12px; padding: 0.7em 1.5em; }
.custom-widget.instagram-widget a.button { position:absolute; top:30px; right:30px; } 
.custom-widget.facebook-widget { display: flex; align-items: center; }
.custom-widget a.button:hover { border: solid 2px #ba0c2f; background-color: #ba0c2f !important; color:#fff !important; }
.bpi-featured.blog-social-box { display:flex; flex-direction:column; }

.blog-page-item.featured .bpi-featured { height:800px;   }
.blog-page-item.blank-first.item { background-color: #77c5d5; }
.blog-page-item.blank-first.item .bpi-featured { background-size:contain; }
.blog-page-item.blank-first.item a:hover .bpi-featured { opacity:1; transform:scale(1,1); }
.blog-page-item .bpi-content { position:absolute; bottom:0; top:auto; left:0; right:0; padding:0 25px 40px }
.blog-page-item .bpi-content h3.bpi-title { font-size:30px; color:#fff; font-weight:700; line-height:1.25em; }
.blog-page-item .bpi-content h5 { font-size:21px; color:#fff; font-weight:700; line-height:1.25em; }
.blog-page-item.story { background-color:#dbc8b6; }
.blog-page-item.news { background-color:#00ab84; }
.blog-page-item.training-tips { background-color:#f2b715; }
.blog-page-item.research { background-color:#9ab9ad; }
.blog-page-item.support { background-color:#e24585; }
.blog-page-item.awareness { background-color:#8a1b57; }
.blog-page-item.multisport { background-color:#f2b715; }
.blog-page-item.hiking { background-color:#005f83; }
.blog-page-item.cycling { background-color:#ba0c2f; }
.blog-page-item.running { background-color:#77c5d5; }

.blog-page-item.story.has-image, 
.blog-page-item.news.has-image,
.blog-page-item.training-tips.has-image,
.blog-page-item.research.has-image, 
.blog-page-item.support.has-image, 
.blog-page-item.awareness.has-image,
.blog-page-item.cycling.has-image, 
.blog-page-item.running.has-image,
.blog-page-item.hiking.has-image,
.blog-page-item.multisport.has-image { background-color:#fff; }

 


.bpi-cats-icons { position: ABSOLUTE; BOTTOM: 0PX; right: 0; width: 25%; max-width: 65px; }
.bpi-cats-icons .icon { position: absolute; text-align: right; width: 72%; right: 0; top: 14px; }
.bpi-cats-icons .icon img { position: relative; height: 31px; right: 0; margin: 0 auto; display: block; }
.awareness .bpi-cats-icons .icon img { height: 19px; top: 5px; right: 2px; }
.blog-page-item a:hover .bpi-featured { opacity:0.85; transform:scale(1.05,1.05); } 
.post-pagination { text-align:center; margin:40px auto 35px; }
.cycling .bpi-cats-icons .icon img { height: 23px; top: 4px; right: 2px; }
.hiking .bpi-cats-icons .icon img { height: 19px; top: 5px; right: 2px; }
.multisport .bpi-cats-icons .icon img { height: 28px; top: 1px; right: 0px; }
.running .bpi-cats-icons .icon img { height: 25px; top: 4px; right: 0px; }

.banner { position:relative; border-bottom:solid 30px #dbc8b6; border-bottom:solid 0px transparent; }
.banner > a { display: block;  position:relative; background-size:contain; background-position:50% 50%; background-repeat:no-repeat; background-color:#efefef; height:575px; width:100%; }
.banner > img { display: block; width: 100%; }
.banner > a > img { display: block; width: 100%; }
.banner > a {  }
.banner .challenge-link { position:absolute; display:block; top:0; left:0; right:0; bottom:0; }
.banner .challenge-link .t { display:table; width:100%; height:100%; text-align:center; }
.banner .challenge-link .c { display:table-cell; width:100%; height:100%; text-align:center; vertical-align:middle; }
.banner .challenge-link img { max-width:35%; }

.latest-news {  }
.latest-news-i {  }
.single-news-item { float:left; width:33.3333%; }
.single-news-item a { display:block; width:100%; background-size:cover; background-color:#9ab9ad;  position:relative;}
.single-news-item.it1 a { background-size:cover; background-color:#dbc8b6; position:relative; }
.single-news-item.it2 a { background-size:cover; background-color:#dbc8b6; position:relative; }
.single-news-item.it3 a {  background-size:cover; background-color:#dbc8b6; position:relative; }
.single-news-item a.has-image .sni-i-featured:after { height: 100%; position: absolute; width: 100%; content: ""; display: block; background-color: rgba(0,0,0,0.3); transition: all ease 250ms; }
.single-news-item a.has-image { background-color:#fff; }
.single-news-item a h3 { color:#fff; font-size:35px; line-height:1.33em; margin:0; padding: 40px 75px 40px 40px; position:absolute; top:auto; left:0; right:0; bottom:0;  }
.single-news-item a .sni-i-featured { height: 390px; position: relative; width: 100%; content: ""; display: block; background-size: cover; background-position: center center; background-repeat: no-repeat; transition: all ease 250ms; opacity:1; transform:scale(1,1); }
.sni-i { display: block; overflow: hidden; }
.sni-i-content { position: absolute; bottom: 0; top: auto; left: 0; right: 0; padding: 0 25px 40px; }
.single-news-item a:hover .sni-i-featured { opacity: 0.85; transform: scale(1.05,1.05); }
.single-news-item a.has-image:hover .sni-i-featured:after { background-color:rgba(0,0,0,0) !important; }

.blog-page-item .bpi-featured { height:400px; position:relative; width:100%; content:""; display:block; background-size:cover; background-position:center center; background-repeat:no-repeat; transition:all ease 250ms; }
.blog-page-item.featured .bpi-featured { height:800px;   }
.blog-page-item.blank-first.item { background-color: #77c5d5; }
.blog-page-item.blank-first.item .bpi-featured { background-size:contain; }
.blog-page-item.blank-first.item a:hover .bpi-featured { opacity:1; transform:scale(1,1); }
.bpi-featured:after { height:100%; position:absolute; width:100%; content:""; display:block; background-color:rgba(0,0,0,0.35); transition:all ease 250ms; }

.blog-page-item.has-image a:hover .bpi-featured:after { background-color:rgba(0,0,0,0) !important; }

.blog-page-item.blank-first.item .bpi-featured:after { display:none; }
.blog-page-item.no-image.item .bpi-featured:after { display:none; }
.blog-page-item.item.social-media .bpi-featured:after { display:none; }
                                                                                                                    
.purple-paint { padding:40px 0; }
.purple-paint p { color: #fff; font-size: 32px; font-weight: 700; text-align: center; line-height: 1.33em; letter-spacing: -0.049em; padding:0; }
.level-title {     padding-top: 52px; }
.level-title h5 { color:#000; font-weight:400; line-height:1.25em; font-size:14px; text-transform:uppercase; }
.level-title h4 { color:#fff; font-weight:600; line-height:1.25em; font-size:21px; }
.pink-paint { padding:40px 0; }
.pink-paint p { color: #fff; font-size: 32px; font-weight: 700; text-align: center; line-height: 1.33em; letter-spacing: -0.049em; padding:0; }
.level-title.light {     padding-top: 52px; }
.level-title.light h5 { color:#5fb3d0; font-weight:400; line-height:1.25em; font-size:14px; text-transform:uppercase; }
.level-title.light h4 { color:#fff; font-weight:600; line-height:1.25em; font-size:21px; }

h1 { color:#005f83; font-size:30px; padding:0 0 0.75em 0; }
h2  { color: #000; font-weight: 700; font-size: 24px; padding: 0 0 0.75em 0; }
p { font-size: 18px; padding-bottom: 1em; line-height: 1.35em; }
.page-contents ul { padding:0 0 0 1em; margin:0 0 0.75em 0.5em; font-size: 18px; line-height: 1em;  }
.page-contents ul li { list-style-type: disc; padding: 0 0 0.45em 0em; font-size: 18px; line-height: 1.33em; }
.page-contents ul li:last-of-type { padding: 0 0 1em 0em; }
.page-contents ol { padding:0 0 0 1em; margin:0 0 0.75em 0.5em; font-size: 18px; line-height: 1em;  }
.page-contents ol li {  padding: 0 0 0.45em 0em; font-size: 18px; line-height: 1.33em; }
.page-contents ol li:last-of-type { padding: 0 0 1em 0em; }

.parent-filter-page-style { background-color:#dbc8b6; background-color:#fff; }

.category-filters { padding: 65px 0 35px 0; text-align:center;     background: #fff; }
.category-filters ul { display:inline-block; padding: 0 0 0 0; margin: 0 auto; }
.category-filters ul li { float: left; list-style-type: none; text-align: center; padding: 0; margin: 0 1px; }
.category-filters ul li a { display:block; color:#f2b715; font-size:24px; font-weight:bold; line-height:1em; background-color: transparent; border-radius: 0px;     padding: 10px 12px 5px; }
.category-filters ul li a.active { background-color: #fafafa;  } 
.category-filters ul li a:hover { background-color: #fafafa; }
.category-filters ul li a.filter-all { color:#000; }
.category-filters ul li a .cat-image { margin-bottom:10px;  }
.category-filters ul li a .cat-image img { max-height:35px; display:block; }
.category-filters ul li a.filter-all .cat-image i { font-size:35px; line-height:1em; }
 
.category-filters ul li a .title {   }
.category-filters ul li a.news { color:#00ab84; }
.category-filters ul li a.training-tips {color:#f2b715;  }
.category-filters ul li a.story { color:#dbc8b6;  }
.category-filters ul li a.research { color:#9ab9ad; }
.category-filters ul li a.support {color:#e24585;  }
.category-filters ul li a.awareness { color:#8a1b57;  }
.category-filters ul li a.hiking { color:#005f83;  }
.category-filters ul li a.running { color:#77c5d5;  }
.category-filters ul li a.cycling { color:#ba0c2f;  }
.category-filters ul li a.multisport { color:#f2b715;  }

.custom-ribbon { padding: 65px 0 85px 0; }
.cta-left-column { float:left; width:50%; text-align:right; padding:0 4% 0 0; }
.cta-right-column { float:right; width:50%; text-align:left; padding:40px 0% 0 3%; }
.cta-right-column .cta-subtitle { color: #000; font-weight: 400; line-height: 1.25em; font-size: 14px; text-transform: uppercase; }
.cta-right-column .cta-main-title p { color: #fff; font-weight: 600; line-height: 1.25em;font-size: 23px; text-align:left; padding:0; }
.cta-ribbon {     max-width: 700px; margin: 0 0 0 auto; width:80% }

.masonry { /* Masonry container */
  column-count: 3;
  column-gap: 0em;
}

.masonry .item { /* Masonry bricks or child elements */
  background-color: #eee;
  display: inline-block;
  margin: 0 0 0em;
  width: 100%;
}

.post-pagination.simple > span { font-weight: 400; margin: 0; padding: 0 10px; display: inline-block; border-right: solid 1px #000; }
.post-pagination.simple > span.current { color:#000;  font-weight: 700; }
.post-pagination.simple > span > a { padding: 10px; display: block; margin: -10px; }
.post-pagination.simple > span > a:hover { background:transparent; color:#000; font-weight: 700; }
.post-pagination.simple > span:last-of-type { border-right:solid 0px #000; }

.single-content { position:relative; }
.single-content .reg-form-link { position:absolute; top:-12px; right:0; }
.single-content .reg-form-link a {     display: inline-block; font-weight: 600; color: #ba0c2f; border: solid 1px #ba0c2f; background-color: transparent; padding: 0.75em 3em; font-size: 18px; line-height: 1em; }
.single-content .reg-form-link a:hover { color: #fff; border: solid 1px #ba0c2f; background-color: #ba0c2f; }
.single-content h1 { color:#005f83; font-weight:700; font-size:31px; padding-bottom: 1.33em;  padding-right: 230px; }
.single-content h2 { color:#000; font-weight:700; font-size:24px; padding:0 0 0.75em 0;  }
.single-content { margin:60px 0; }
.single-content.single-challenges-content { margin:60px 0 0 0; }
.single-content.single-challenges-content.single-post-content { margin:60px 0 0 0; }
.single-image { border-bottom: solid 0px #000; }
.single-image img { display:block; }
.single-image img { display:block; }
.single-gallery .item {  background-color: #000; }
.single-gallery .item .item-i { border:solid 1px #000; border-width:0px 2px 4px 2px }
.single-gallery { position:relative; background:#000; }
.single-gallery > a {     z-index: 100; position: absolute; font-size: 21px; text-align: center; top: 50%; background-color: rgba(255,255,255,0.75); width: 50px; height: 50px; cursor: pointer; color: #005f83; line-height: 54px; margin-top: -25px; }
.single-gallery > a:hover { color:#fff; background-color:#005f83; }
.single-gallery > a.single-gallery-nav.prev { left:15%; }
.single-gallery > a.single-gallery-nav.next { right:15%; }

.custom-button { text-align:left; margin-bottom:35px; }
.custom-button a { display: inline-block; font-weight: 600; color: #ba0c2f; border: solid 1px #ba0c2f; background-color: transparent; padding: 0.75em 3em; font-size: 18px; line-height: 1em; }
.custom-button a:hover { color: #fff; border: solid 1px #ba0c2f; background-color: #ba0c2f; }
div.wpb_wrapper > p:last-of-type { padding-bottom:0; }

.lmf-visual-block a:hover .cta-subtitle { opacity:0.90; padding-left:10px; }
.lmf-visual-block a:hover .cta-main-title { opacity:0.90; padding-left:10px; text-decoration:underline; }
.lmf-visual-block a:hover .cta-main-title p { color:inherit; }
.lmf-visual-block a .cta-main-title p { color:inherit; }
.lmf-visual-block .cta-ribbon img,
.cta-subtitle,
.cta-main-title { transition:all ease 250ms;  }
.lmf-visual-block a:hover .cta-ribbon img { transform:scale(1.05,1.05) }
.cta-right-column { position: relative; } 
.cta-right-column:after { position: relative; }

.challenge-boxes-i { display:flex; flex-direction: row; }
.challenge-boxes-w .challenge-box { width: 33.3333%; }
.challenge-boxes-w.columns-2 .challenge-box { width: 50%; }
.challenge-boxes-w.columns-4 .challenge-box { width: 25%; }
.challenge-boxes-w.columns-1 .challenge-box { width: 100%; }
.challenge-boxes-w.columns-5 .challenge-box { width: 20%; }
.challenge-boxes-i .challenge-box.equal { display: flex; align-items: center; }
.challenge-box { padding: 50px 3% 60px 3%; background-size: cover; background-repeat: no-repeat; }
.challenge-box.video {  }
.challenge-box.no-space { padding:0; }
.challenge-box img { display:block; }
.challenge-box.no-space p:last-of-type { padding: 0 0 0 0; }
.challenge-box.overview {background-color:#005f83; color:#fff; }
.challenge-box.costings {  background-color:#00ab84; color:#fff; }
.challenge-box.how-it-works {  background-color:#00ab84; color:#fff; }
.challenge-box.ideas { background-color:#005f83; color:#fff; }
.challenge-box.how-it-works a.button { color:#ba0c2f; font-weight:bold; color: #ba0c2f; border: solid 1px #ba0c2f;   }
.challenge-box h6 { text-align:center; font-weight:300; font-size:13px; color:#fff; line-height:1em; padding:0 0 3em 0; }
.challenge-box.how-it-works p strong{  font-weight:bold; color:#005f83; }
.challenge-box.video { padding:0; }
.challenge-box.video { background-color:#000 !important; }
.challenge-box.video .challenge-box-i { display:table; width:100%; height:100%; }
.challenge-boxes-i .challenge-box.video { display: flex; align-items: center; }
.challenge-box.video .challenge-box-i a { display:table-cell; width:100%; height:100%; vertical-align:middle; text-align:center; }
.challenge-box.video .challenge-box-i a { opacity:1 }
.challenge-box.video .challenge-box-i a img { max-width:100px; display:block; transition:all ease 250ms; margin: 0 auto; }
.challenge-box.video .challenge-box-i a:hover { opacity:0.75 }
.challenge-box.video .challenge-box-i a:hover img { width:110px; }


.challenge-box p { color:#fff; line-height:1.5em; }
.challenge-box p strong { color:inherit; font-size:1.2em; }
.challenge-box p:last-of-type { padding: 0.5em 0 0 0; }
.challenge-box p.small { font-size:0.85em;  }
.challenge-box p a { display:inline-block; font-weight:bold; color: #ba0c2f; border: solid 1px #ba0c2f; background-color: transparent; padding: 1em 3em; font-size: 18px; line-height:1em; min-width: 85%; width: 100%; max-width: 100%; text-align:center;}
.challenge-box p a:hover { color: #fff; border: solid 1px #fff; background-color: transparent; text-decoration:none; }
.challenge-box a.button { display:inline-block; color:#ba0c2f; font-weight:bold; border: solid 1px #ba0c2f; background-color: transparent; padding: 1em 3em; font-size: 18px; line-height:1em; }
.challenge-box a.button:hover { color: #fff; border: solid 1px #fff; background-color: transparent; text-decoration:none; }
.challenge-box.video img { display:block; }
.challenge-box-i { position:relative; height: 100%; padding-bottom:56px; } 
.page-template .challenge-box-i { position:relative; height: auto; padding-bottom:0px; } 
.challenge-box-i .play-icon { position:absolute; left:50%; width:60px; top:50%; margin: -30px 0 0 -30px; }
.challenge-box a.button { position:absolute; bottom:0; left:0; }

.quote-box-w { padding:50px 0; }
.quote-box-i { text-align:center; }
.quote-box-w .quote-box-title { text-align:center; font-weight:300; font-size:13px; line-height:1em; padding:0 0 30px 0; }
.quote-box-w .dots-nav { text-align:center;   line-height:1em; padding:30px 0 0; }
.quote-box-carousel .item { text-align:center; background-color:transparent; max-width:800px; margin:0 auto; }
.quote-box-carousel .item p { font-size:24px; line-height:1.5em; }
.quote-box-carousel .item p.author { font-size:18px; line-height:1.5em; margin-bottom:20px;}
.quote-box-w .dots-nav a { border-radius: 1000px; width: 15px; height: 15px; border: solid 1px #000; background-color: transparent; margin: 0 2px; display: inline-block; }
.quote-box-w .dots-nav a.active,
.quote-box-w .dots-nav a:hover { border: solid 1px #000; background-color: #000; } 

.owl-dots { text-align:center; }
.quote-box-w .owl-dots .owl-dot { display: inline-block; margin: 0 2px; }
.quote-box-w .owl-dots .owl-dot span { border-radius: 1000px; width: 15px; height: 15px; border: solid 1px #000; background-color: transparent; margin: 0 2px; display: inline-block; transition:all ease 250ms; }
.quote-box-w .owl-dots .owl-dot.active span,
.quote-box-w .owl-dots .owl-dot:hover span  { border: solid 1px #000; background-color: #000; }

/* fluid 5 columns */
.grid-sizer,
.grid-item { width: 33.3333%; }
/* 2 columns */
.grid-item--width2 { width: 40%; }

.team-grid-i { background-color:#dbc8b6; }
.tgb-inner { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-flow: row wrap; justify-content: flex-start; align-items: flex-start; }
.team-grid-block.cols-2 .team-grid-item { width: 50%; flex: 1 1 auto; }
.team-grid-block.cols-3 .team-grid-item { width: 33.3333%; flex: 1 1 auto; }
.team-grid-block.cols-4 .team-grid-item { width: 25%; flex: 1 1 auto;     max-width: 25%; width: 25%; }
.tgi-image img { display:block; }
.tgi-i {  }
.team-grid-item.yellow .tgi-i .title { background-color:#f2b715; }
.team-grid-item.red .tgi-i .title { background-color:#ba0c2f; }
.team-grid-item.blue .tgi-i .title { background-color:#005f83; }
.team-grid-item.green .tgi-i .title { background-color:#00ab84; }
.team-grid-item.yellow .tgi-i .tgi-content-i { background-color:#f2b715; }
.team-grid-item.red .tgi-i .tgi-content-i { background-color:#ba0c2f; }
.team-grid-item.blue .tgi-i .tgi-content-i { background-color:#005f83; }
.team-grid-item.green .tgi-i .tgi-content-i { background-color:#00ab84; }
.tgi-image .title {color: #fff; font-size: 25px; bottom: 0; font-weight: bold; z-index: 100; width: 100%; text-align: center; padding: 1.25em 1em; position: relative; }
.tgi-image .title .bordered-image { position: absolute; bottom: 100%; left: 0; right: 0; width:100%; }
.tgi-content-i {     padding: 30px 25px; overflow-y: auto; height: 100%; }
.tgi-content-i h5 { color:#fff; font-size:21px; font-weight:bold; text-align:left; padding:0 0 10px 0; }
.tgi-content-i p { color:#fff; font-weight:normal; font-size:16px; padding-bottom:0.3em; } 
.tgi-content-i p strong { color:#000; font-weight:bold; }
.tgi-content-i p:last-of-type { padding-bottom:0; }
.tgi-content-i .t { width:100%; height: 100%; vertical-align:top; display:table; }
.tgi-content-i .t .c { width:100%; height: 100%; vertical-align:top; display:table-cell; }


.team-grid-item {
  position: relative;
  z-index: 1;
}
.team-grid-item {
  perspective: 1000;
}
 
.flip-container {
  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -o-perspective: 1000;
  perspective: 1000;

 
}

	.flip-container:hover .flipper,  
  .flip-container.hover .flipper {
		-webkit-transform: rotateY(180deg);
		-moz-transform: rotateY(180deg);
    -o-transform: rotateY(180deg);
		transform: rotateY(180deg);
	}

.flip-container, .front, .back {
	width: 100%;
	height: 100%;
}

.flipper {
	-webkit-transition: 0.6s;
	-webkit-transform-style: preserve-3d;

	-moz-transition: 0.6s;
	-moz-transform-style: preserve-3d;
  
  -o-transition: 0.6s;
	-o-transform-style: preserve-3d;

	transition: 0.6s;
	transform-style: preserve-3d;

	position: relative;
}

.front, .back {
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
  -o-backface-visibility: hidden;
	backface-visibility: hidden;

	position: absolute;
	top: 0;
	left: 0;
}


.front {
 
	z-index: 2;
  position: relative;
}

.back {
	-webkit-transform: rotateY(180deg);
	-moz-transform: rotateY(180deg);
  -o-transform: rotateY(180deg);
	transform: rotateY(180deg);
  z-index:20;

 
}

 






.cform { max-width: 900px; margin: 0 auto; }
.cform-row.submit-row { margin-top:50px; }
.cform-row { margin-bottom:20px; }
.cform-row:after { position: relative; display: table; content: ""; clear: both; opacity: 0; overflow: hidden; } 
.cform-half { float:left; width:48%;}
.cform-half:last-of-type { float:right; width:48%;}
.cform-row label { display:block; line-height:1em; font-size:18px; padding:0 0 12px 0; }
.cform-row select { position:relative; display:block; line-height:1em; font-size:16px; padding:15px 20px 15px 10px; width:auto; background:#efefef; border:none; min-width: 85px; }
span.wpcf7-form-control-wrap.title { position:relative;display:inline-block; }
span.wpcf7-form-control-wrap.title:after {     position: absolute; top: 0px; bottom: 0px; right: 0px; height: auto; width: 37px; background-color: #efefef; z-index: 25; display: block; font-size: 15px; line-height: 48px; text-align: center; color: #000; transition: all ease 250ms; font-family: "FontAwesome"; font-weight: normal; content: "\f107"; pointer-events: none; }
.cform-row span.wpcf7-form-control-wrap.challenge select { width:100%; }
span.wpcf7-form-control-wrap.challenge { position:relative;display:block; }
span.wpcf7-form-control-wrap.challenge:after {     position: absolute; top: 0; bottom: 0; right: 0; height: auto; width: 37px; background-color: #efefef; z-index: 25; display: block; font-size: 15px; line-height: 48px; text-align: center; color: #000; transition: all ease 250ms; font-family: "FontAwesome"; font-weight: normal; content: "\f107"; pointer-events: none; }
.cform-row span.wpcf7-form-control-wrap.top_size select { width:100%; }
.cform-row span.wpcf7-form-control-wrap select { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap input { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap textarea { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap button { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap select:focus { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap input:focus { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap textarea:focus { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
.cform-row span.wpcf7-form-control-wrap button:focus { -webkit-appearance:none; -moz-appearanc:none; border-radius:0; outline: none; }
span.wpcf7-form-control-wrap.top_size { position:relative;display:block; }
span.wpcf7-form-control-wrap.top_size:after {     position: absolute; top: 0; bottom: 0; right: 0; height: auto; width: 37px; background-color: #efefef; z-index: 25; display: block; font-size: 15px; line-height: 48px; text-align: center; color: #000; transition: all ease 250ms; font-family: "FontAwesome"; font-weight: normal; content: "\f107"; pointer-events: none; }
.cform-row span.wpcf7-form-control-wrap.top_size select { width:100%; }
span.wpcf7-form-control-wrap.challenge_select { position:relative;display:block; }
span.wpcf7-form-control-wrap.challenge_select select { width:100%; display:block; }
span.wpcf7-form-control-wrap.challenge_select:after {     position: absolute; top: 0; bottom: 0; right: 0; height: auto; width: 37px; background-color: #efefef; z-index: 25; display: block; font-size: 15px; line-height: 48px; text-align: center; color: #000; transition: all ease 250ms; font-family: "FontAwesome"; font-weight: normal; content: "\f107"; pointer-events: none; }

.idpc_ul.hidden{display:none}div.idpc_autocomplete{position:relative}div.idpc_autocomplete>input{display:block}div.idpc_autocomplete>ul{position:absolute;left:0;z-index:1;min-width:100%;box-sizing:border-box;list-style:none;padding:0;border-radius:.3em;margin:.2em 0 0;background:#fff;border:1px solid rgba(0,0,0,.3);box-shadow:.05em .2em .6em rgba(0,0,0,.2);text-shadow:none;max-height:250px;overflow-y:scroll}div.idpc_autocomplete>ul>li{position:relative;padding:.2em .5em;cursor:pointer}div.idpc_autocomplete>ul>li:hover{background:#b8d3e0;color:#000}div.idpc_autocomplete>ul>li.idpc_error{font-style:italic;background-color:#eee;cursor:default!important}div.idpc_autocomplete>ul>li[aria-selected=true]{background:#3d6d8f;color:#fff}

.custom-postcode-lookup {  }
.custom-postcode-lookup .wpcf7-form-control-wrap.postcode-lookup:after { display:none; }
.custom-postcode-lookup a.button {
   z-index:20;
    display: block;
    position: absolute;
    right: 0;
    top: 2px;
    bottom: 2px;
    width: 80px;
    line-height: 46px;
    text-align: center;
    font-size: 18px;
    box-sizing: border-box;
    height: auto;
    color: #ba0c2f;
    bordeR: solid 1px #ba0c2f;
    background: #fff;
}
.custom-postcode-lookup a.button:hover { background-color:#ba0c2f; color:#fff; }
.custom-postcode-lookup { position:relative;  }
.custom-postcode-lookup #postcode-results { position:absolute; top:100%; left:0; right:0; border:solid 1px #000; padding:0; background:#fff; text-align:left; opacity:0; transition:all ease 500ms; z-index:20; height:0; overflow:hidden; }
.custom-postcode-lookup.new-postcodes #postcode-results { opacity:1;  height:auto; }
.custom-postcode-lookup #postcode-results li { padding:0 0 0 0; }
.custom-postcode-lookup #postcode-results li a { display:block; padding:10px; }
.custom-postcode-lookup #postcode-results li a:hover { background-color:#ba0c2f; color:#fff; font-weight:400; }
.select-loader { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255,255,255,0.75); opacity: 0; z-index: 15; text-align: center; display: none; line-height: 48px; }
.select-loader.show { opacity:1; display: block; }
.cpl-input { position:relative; }

span.wpcf7-form-control-wrap.top_size { position:relative;display:block; }
.cform-half > a {     margin-top: 30px; vertical-align: middle; display: inline-block; color:#ba0c2f; }
.cform-half > a img {display: inline-block; vertical-align: middle; }
.cform-half > a span { line-height: 40px; display: inline-block; }

.cform-row input { display:block; line-height:1em; font-size:16px; padding:15px 10px; width:100%; background:#efefef; border:none; }
.cform-row textarea { display:block; line-height:1em; font-size:16px; padding:15px 10px; width:100%; background:#efefef; border:none; }
.cform-row br { display:none; }
.cform-row p { padding-bottom:0; }
.cform-row .checkboxes { margin-top:20px; margin-bottom:0; }
.cform-row .wpcf7-submit {  background-color:transparent; padding: 1em 4em; font-size: 21px; display: inline-block; width: auto; color: #ba0c2f; border: solid 1px #ba0c2f; font-weight: bold; cursor: pointer; transition: all ease 250ms; }
.cform-row .wpcf7-submit:hover { color: #fff; border: solid 1px #ba0c2f; background-color:#ba0c2f; }

.wpcf7-form-control-wrap.postcode-lookup { display: block; position: relative; }
.wpcf7-form-control-wrap.postcode-lookup:after { z-index:20; display: block; position: absolute; right: 0; top: 2px; bottom: 2px; width: 80px; line-height: 46px; text-align: center; font-size: 18px; box-sizing: border-box; height: auto; color: #ba0c2f; bordeR: solid 1px #ba0c2f; background: #fff; content: "Go"; cursor:pointer; }
/* .wpcf7-form-control-wrap.postcode-lookup:before { z-index:10; display: block; position: absolute; right: 0; top: 0px; bottom: 0px; width: 100px; line-height: 48px; text-align: center; font-size: 18px; box-sizing: border-box; height: auto; color: #fff; bordeR: solid 1px #fff; background: #fff; content: ""; } */
.wpcf7-form-control-wrap.postcode-lookup:hover:after { color: #fff; bordeR: solid 1px #ba0c2f; background: #ba0c2f;   }

div.idpc_autocomplete>ul { padding:10px; } 
div.idpc_autocomplete>ul>li { position: relative; font-size: 13px; border-bottom: solid 1px #efefef; padding: .5em .5em; cursor: pointer; }

/* Customize the checkbox */
.cform-row .ch input { display: block; position: relative; padding-left: 35px; margin-bottom: 12px; cursor: pointer; font-size: 22px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
/* Hide the browser's default checkbox */
.cform-row .ch input { position: relative; opacity: 1;  padding: 0; cursor: pointer; display: inline-block; height: 40px;  width: 40px; margin: 0 10px 0 0; line-height: 9px; vertical-align: middle;   }

/* Create a custom checkbox */
.cform-row span.wpcf7-list-item { display: inline-block; margin: 0 10px 0 0; }
.cform-row .ch input:before { position: absolute; top: 0; left: 0; height: 40px; width: 40px; background-color: #eee; z-index: 20; display: block; content: ""; transition:all ease 250ms; }
.cform-row .ch input:checked:before {
        background-color: #000;
}
.cform-row .ch input:checked:after,
.cform-row .ch input:hover:after {
position: absolute;
    top: 0px;
    left: 0;
    height: 40px;
    width: 40px;
    background-color: transparent;
    z-index: 25;
    display: block;
    font-size: 18px;
    line-height: 40px;
    text-align: center;
    color: #fff;
    content: "";
    transition: all ease 250ms;
    font-family: "FontAwesome";
    font-weight: normal;
    content: "\f00c";
}
.cform-row .ch input:hover:before {
        background-color: #000;
}
.ch .wpcf7-list-item-label { line-height: 25px;
    display: inline-block;
    vertical-align: middle; margin-right:10px; }

/* BUTTONS STYLING */
.challenge-box a.button { display:inline-block; color:#fff; font-weight:bold; border: solid 1px #ba0c2f; background-color: #ba0c2f; font-size: 18px; line-height:1em; min-height:56px; line-height:1em; padding: 1em 2.75em;   }
.challenge-box a.button:hover { color: #fff; border: solid 1px #222; background-color: #222; text-decoration:none; }
.challenge-box p a {  color:#fff; border: solid 1px #ba0c2f; background-color: #ba0c2f; min-height:56px; line-height:1em; padding: 1em 2.75em; }
.challenge-box p a:hover {  color: #fff; border: solid 1px #222; background-color: #222; }
.single-content .reg-form-link a { color:#fff; border: solid 1px #ba0c2f; background-color: #ba0c2f; min-height:56px; line-height:1em; padding: 1em 2.75em; }
.single-content .reg-form-link a:hover { color: #fff; border: solid 1px #222; background-color: #222; }
.custom-button a { color:#fff; border: solid 1px #ba0c2f; background-color: #ba0c2f; min-height:56px; line-height:1em; padding: 1em 2.75em; }
.custom-button a:hover { color: #fff; border: solid 1px #222; background-color: #222; }

.hover-image-flip .tgi-content-i { background-color:#f2b715; text-align:center; } 
.hover-image-flip .tgi-content-i h5 { color:#ba0c2f; text-align:center; padding-bottom:0.75em; }
.hover-image-flip .tgi-content-i .button { font-size: 14px; padding: 14px 20px; display:inline-block; color: #fff; border: none; background-color: #ba0c2f; }
.hover-image-flip .tgi-content-i p { color: #000; font-weight: normal; font-size: 18px; padding-bottom: 1em; }

@media only screen and (max-width: 768px) { 
    .flip-container, .front, .back { max-width: 480px; margin: 0 auto 25px; }
}
@media only screen and (max-width: 480px) { 
    .flip-container, .front, .back { width:auto; max-width: 480px; margin: 0 15px 20px; }
}

#footer_wrap { position: relative; margin-top: 100px; }
.footer-strip { position:absolute; bottom:99.5%; left:0; right:0; }
.footer-strip img { display:block; /*width: 100%;*/ width: auto; visibility:hidden; }
.footer-strip { background:url('images/footer-paint-strip-rep.png') 0 0 transparent; background-repeat:repeat-x; background-size:contain; }

.footer-w { background-color:#005f83; text-align:center; }
.footer-w .row { max-width: 1170px; }
.footer-i { padding:40px 0; }
.footer-copyright { color:#fff; font-size:10px; line-height:1.45em; text-align:center; }
.footer-copyright a { color:#fff; font-size:10px; line-height:1.45em; text-align:center; text-decoration:none; }
.footer-copyright a:hover, 
.footer-copyright a:active { color:#fff;   text-decoration:none; }
.footer-main-image { margin-bottom:30px; }
.footer-menu { text-align:center; margin:0 0 30px 0; }
#footer-navigation li a { color:#fff; text-decoration:underline; line-height:1em; padding:0 12px; font-size:13px; }
#footer-navigation li { display:inline-block; border-right:solid 1px #fff; }
#footer-navigation li:last-of-type { display:inline-block; border-right:solid 0px #fff; }
.footer-main-image img { max-width:375px !important; }
.footer-widget-column { width:25%; float:left; color:#fff; text-align:left; }
.footer-widget-column p { padding-bottom:0; color: #fff; font-size: 14px; line-height: 1.33em; text-align: left; }
.footer-widget-column ul li { color:#fff; text-align:left; }
.footer-widget ul li { display:block; padding-bottom:8px; }
.footer-widget ul li a { color:#fff; line-height:1.45em; font-size:15px; text-decoration:none; }
.footer-widget ul li a:hover { text-decoration:underline; }
.footer-widget-column img { max-width: 120px !important; display: block; }
ul.social li { float:left; margin-right:15px; font-size:18px; }
ul.social li a  {font-size:18px; }
.footer-w .row { padding:0 20px; }
.footer-widget-column form p { padding:0; }

.fs-row { margin:0 0 5px 0; }
.fname-cell { float:left; width:50%; padding:0 2px 0 0; }
.lname-cell { float:left; width:50%; padding:0 0px 0 2px; }
.email-cell { float:left; width:65%; padding:0 0px 0 0; }
.submit-cell { float:left; width:35%; padding:0 0px 0 0; }
.fs-row input[type="text"],
.fs-row input[type="email"] { display:block; padding:10px; font-size:14px; color:#999; line-height:1em; width:100%; border:solid 1px #fff; background-color:#fff; height:38px; -moz-appearance: none;
-webkit-appearance: none; }
.fs-row input[type="submit"] { background-color:#00ab84;  color:#fff; border:solid 1px #00ab84; cursor:pointer; transition:all ease 250ms; height:38px; padding:0px; text-align:center; -moz-appearance: none;
-webkit-appearance: none; }
.fs-row input[type="submit"]:hover { background-color:#f2b715;  color:#fff; border:solid 1px #f2b715;  }

.floating-subscribe > p:last-of-type { padding:0; } 
.subscribe-widget {     position: fixed; top: 50%; right: 0; max-width: 410px; WIDTH: 50%; BORDER-RADIUS: 4PX 0 0 4px; background-color: #f2b715; color: #000; z-index: 400; }
.subscribe-widget div.wpcf7 .ajax-loader { top: 10%; margin-top: 0px;left: 100%;position: absolute;padding: 0;margin: 0; }
.subscribe-widget-i { position:relative; padding: 30px 50px 30px 20px; }
.subscribe-widget-i .close-me {     position: absolute; top: 20px; right: 10px; font-size: 25px; color: #000; }
.subscribe-widget-i .close-me:hover { color:#fff; }
.subscribe-widget > p { font-size: 18px; font-weight: bold; }
.subscribe-widget .fs-row p { padding-bottom:0; }
.subscribe-widget p { padding-bottom: 0.7em; font-weight: 600; font-size: 17px; }
.subscribe-widget .fs-row { margin:0 0 5px 0; }
.subscribe-widget .fname-cell { float:left; width:50%; padding:0 2px 0 0; }
.subscribe-widget .lname-cell { float:left; width:50%; padding:0 0px 0 2px; }
.subscribe-widget .email-cell { float:left; width:72%; padding:0 0px 0 0; }
.subscribe-widget .submit-cell { float:left; width:28%; padding:0 0px 0 0; position:relative; }
.subscribe-widget .fs-row input[type="text"],
.subscribe-widget .fs-row input[type="email"] { display:block; padding:10px; font-size:14px; color:#999; line-height:1em; width:100%; border:solid 1px #fff; background-color:#fff; height:38px; -moz-appearance: none;
-webkit-appearance: none; }  
.subscribe-widget .fs-row input[type="submit"] { background-color:#30174f;  color:#fff; padding:10px 0; width:100%; border:solid 1px #30174f; cursor:pointer; padding:0px; text-align:center; transition:all ease 250ms; height:38px; -moz-appearance: none;
-webkit-appearance: none; }
.subscribe-widget .fs-row input[type="submit"]:hover { background-color:#000;  color:#fff; border:solid 1px #000;  }
/* *********************************************************************************************************************************** */
/* *********************************************************************************************************************************** */
/* The grid */                                                                     
.container{padding-left:1em; padding-right:1em; }
.row {width:100%; max-width:940px; min-width:100px; margin:0 auto; box-sizing: border-box;}
.vc_row.wpb_row .vc_row.wpb_row.vc_inner { width:100%; max-width: 970px; padding-right: 0; padding-left: 0; margin:0 auto; }

.page-contents-i > .vc_row > .container { padding-right: 15px; padding-left: 15px; }
.page-contents-i > .vc_row > .container > .vc_row > .wpb_column {  }
.page-contents-i > .vc_row > .wpb_column > .vc_column-inner > .wpb_wrapper > .vc_row.vc_inner > .wpb_column.vc_column_container.vc_col-sm-12 > .vc_column-inner { /* padding-left:0; padding-right:0; */ }  

.row > .row-inner {
    box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
}          

/*overflow:hidden;*/

.desktop { display:block; }
.mobile { display:none; }
img, object, embed{max-width:100%; }
img{height:auto; }

.mobile-menu-icon { position:relative; text-align:right; }
.mmi-i { padding:0 0 0 0;}
#toggle-menu { color:#565e63;  display: inline-block;
    font-size: 32px;
    line-height: 1em;
    padding: 10px 10px 8px;
    transition: all 250ms linear 0s; }      
#toggle-menu i { }
#toggle-menu img { display:block; }
#toggle-menu:hover, #toggle-menu:active { border-color: #fff; color:#fff; }
.mobile-menu { position:absolute; width:100%; bottom:100%; top:100%; left:0; right:0; z-index:999; display:none; background:#333; }
.mobile-menu-inner { margin: 0; background: rgba(0,0,0,0.65); padding: 10px 20px; height: 60vh; overflow-y: auto; }
.mobile-menu-inner ul#main-navigation { display: block; padding: 10px 0 5px; float: none; margin: 0 auto; display: block; max-width: 600px; }
.mobile-menu-inner ul#main-navigation a { font-size:16px; color:#fff; } 
.mobile-menu-inner ul li { width:100%; }
.mobile-menu-inner ul li a { display:block; border-bottom: solid 1px rgba(255,255,255,0.3); }
.mobile-menu-inner ul li a br {  width: 5px; content: " "; display: inline-block; }
.mobile-menu-inner ul#main-navigation > li { float: none; background-color: transparent; width: 100%; display: block; padding: 0; margin: 0; }
.mobile-menu-inner #main-navigation li a:after { display:none; }
.mobile-menu-inner ul#main-navigation > li:last-child a{ display:block; border-bottom:none; }
.mobile-menu-inner ul.sub-menu { display:block; background: transparent none repeat scroll 0 0 !important; box-sizing: border-box; display: block; padding: 10px; }
.mobile-menu-inner ul.sub-menu li { margin:0 !important; }
.mobile-menu-inner ul.sub-menu li a { border-bottom:1px solid #212121; }
.mobile-menu-inner #main-navigation li .sub-menu li a { padding: 8px 15px; font-size: 14px;font-weight: 400; color: #000; text-align: left; text-transform: none; border-bottom: solid 1px rgba(255,255,255,0.15); }
   
.mobile-menu-inner li.current-menu-item ul.sub-menu li a {  }
.mobile-menu-inner ul.sub-menu li:hover > a { color:#72acdc }
.mobile-menu-inner ul#main-navigation a:hover { color: #72acdc;  }
.mobile-menu #main-navigation li.menu-item-has-children > a { position: relative; padding: 12px 20px 12px 10px; }
.mobile-menu #main-navigation li > a { position: relative; padding: 12px 10px 12px 10px; }
.mobile-menu #main-navigation li ul.sub-menu { position: relative; padding: 2px 0px 2px 0px; border:none; display:none; }
.mobile-menu #main-navigation li ul.sub-menu li a { color:#fff; }
.mobile-menu #main-navigation li > a:hover { color:#f2b715 !important; background:transparent !important; }
.mobile-menu #main-navigation li > a:active { color:#fff !important; background:transparent !important; }
.mobile-menu #main-navigation li.menu-item-has-children > a:before { content:"\f105"; }
.mobile-menu #main-navigation li.menu-item-has-children.open > a:before { content:"\f107"; }

  /* menu-icon */
  .menu-icon { display: inline-block; cursor: pointer; top:0px; right:0; position:relative; color:#ba0c2f;  z-index:10000; padding:5px 10px; border-radius:0px; 
    border:solid 1px #ba0c2f; }
  .bar1, .bar2, .bar3 { width: 25px; height: 2px; background-color: #ba0c2f; margin: 4px 0 4px; transition: 0.4s; } 
  .open .bar1 { -webkit-transform: rotate(-45deg) translate(-4px, 4px); transform: rotate(-45deg) translate(-4px, 4px); }
  .open .bar2 {opacity: 0;} 
  .open .bar3 { -webkit-transform: rotate(45deg) translate(-4px, -5px); transform: rotate(45deg) translate(-4px, -5px); }
  .banner-content { background-size:cover; }
  .menu-bars { width: 25px; display: inline-block; vertical-align: middle; }
  .menu-icon > span { display: inline-block; vertical-align: middle; padding-left: 7px; color:#ba0c2f; font-size: 12px; }
  .menu-toggle-block {     display: inline-block; float: right; }
  .mobile-ctas{ margin-bottom: 0; top: -5px; position: relative; }
  .mobile-ctas ul li a.primary {
    color: #fff;
    border: solid 1px #ba0c2f;
    background-color: #ba0c2f;
}
 .mobile-ctas  ul li a {
    display: inline-block;
    padding: 0.75em 1em;
    font-size: 13px;
    color: #ba0c2f;
    border: solid 1px #ba0c2f;
    text-transform: uppercase;
}


@media only screen and (min-width: 1920px) {
 
  .single-news-item a .sni-i-featured { height: 390px; position: relative; } 
    
}

@media only screen and (max-width: 1366px) {
  .single-content.single-post-content { margin-left: 20px; margin-right: 20px; }
 
}
@media only screen and (min-width: 1025px) and (max-width: 1200px) {
 
    
}

@media only screen and (max-width: 1280px) {
    .tgi-image .title { font-size:21px; } 
}


@media only screen and (max-width: 1024px) {
  .desktop { display:none; }
  .mobile { display:block; }
  .row { padding-left:0; padding-right:0; }
  .single-content.single-challenges-content .row { margin-left: 15px; width: auto; margin-right: 15px; }
  .header-menu { position: absolute; bottom: 0; float: none; width: 50%; right: 0; top: 0; height: 100%; }
  .header-menu-cell { display: table-cell; height: 100%; width: 100%; vertical-align: middle; }

  .single-title { margin:0 auto; }  
  .single-news-item a h3 { background: rgba(0,0,0,0.15); color: #fff; font-size: 17px; line-height: 1.33em; padding: 25px 75px 25px 25px; }
  .single-content .reg-form-link { position: relative; top: -5px; right: 0; margin-bottom: 15px; }
  .blog-page-item .bpi-content h5 { font-size: 15px; color: #fff; font-weight: 400; line-height: 1.25em; }
  .category-filters ul li a { display: block; color: #f2b715; font-size: 15px; }
  .menu-inner { margin: 0 20px; padding: 0; position: relative; }
  .menu-inner .ctas { display:none; float: none; text-align: right; width: 100%; margin-bottom: 10px; }
  .footer-widget-column { width: 100%; float: none; color: #fff; text-align: center; }
  .footer-widget-column p { text-align:center; }
  .footer-widget-column ul li { text-align:center; }
  ul.social li { float: left; margin-left: 6px; margin-right: 6px; font-size: 18px; }
  .footer-widget-column ul.social {  display: inline-block; }
  .footer-widget { margin-bottom:22px; }
  .footer-widget p:last-of-type { margin-bottom:0; padding-bottom:0; }
  .footer-widget-column img { max-width: 150px !important; display: inline-block; }
  .footer-main-image img { display: inline-block; max-width: 375px !important; width: 100%; }
  .footer-subscribe { max-width: 320px; margin: 0 auto 20px; }
  
  .custom-ribbon { padding: 45px 0 55px 0; }
  .cta-left-column { float: none; width: 100%; text-align: center; padding: 0 20px 30px; }
  .cta-right-column { float: none; width: 100%; text-align: center; padding: 0 20px 0; }  
  .cta-ribbon { max-width: 450px; margin: 0 auto; width: 100%; }
  .cta-main-title p { text-align:center; }
  .cta-right-column .cta-main-title p { color: #fff; font-weight: 600; line-height: 1.25em; font-size: 21px; text-align: center; }
  
  .blog-page-item.featured .bpi-featured { height: 600px; }
  .blog-page-item .bpi-featured { height: 300px; }
  .blog-page-item .bpi-content h3.bpi-title { font-size: 21px; color: #fff; font-weight: 700; line-height: 1.25em; padding-right: 40px; }
  
  .single-content h1 { color: #005f83; padding-right:0; font-weight: 700; font-size: 19px; padding-bottom: 1.33em; }
  
  .subscribe-widget { display:none; }
  
  h1 { font-size:21px; }
  p { font-size: 15px; }
  
  .challenge-boxes-w.columns-2 .challenge-box { width: 100%; }
  .challenge-boxes-w.columns-4 .challenge-box { width: 100%; }
  
  .challenge-box a.button { padding: 1em 2em; font-size: 14px; width: auto; min-height: 40px; }
  .single-content .reg-form-link a { min-height: 40px; font-size: 14px; line-height: 1em; padding: 1em 2.75em; }
  .challenge-box a { padding: 1em 2em; font-size: 14px; width: auto; min-height: 40px; }  
  .challenge-box p a { padding: 1em 2em; font-size: 14px; width: auto; min-height: 40px; }
  .team-grid-block.cols-4 .team-grid-item { width:50%; max-width:50%;  }
  .tgi-content-i p {  font-size: 13px; line-height:1.33em; }
  .tgi-content-i h5 { color: #fff; font-size: 16px; }
  .tgi-content-i { padding: 20px; }
  
  .quote-box-carousel .item p { font-size: 16px; line-height: 1.5em; }
  .quote-box-w .quote-box-title { padding-bottom:15px; }
  
  .banner > a { height:500px; }
  .banner .challenge-link img { max-width: 65%; }
  
}  /* EOF max-width: 1024px */

/*
@media only screen 
and (min-device-width : 320px) 
and (max-device-width : 568px) 
and (orientation : landscape) { */
@media only screen and (max-width : 900px) { 
   .single-gallery > a.single-gallery-nav.next { right: 0; }
  .single-gallery > a.single-gallery-nav.prev { left: 0; }
   .single-content.single-challenges-content { margin: 20px 0 0 0; }
  .single-gallery .item .item-i { border: solid 1px #000; border-width: 0px 1px 1px 1px; } 
}
@media only screen and (max-width : 768px) {
  .grid-sizer, .grid-item { width: 50%; } 
  .single-news-item { float: none; width: 100%; }  
  .challenge-boxes-i { display:block;  }
  .challenge-boxes-i .challenge-box.equal { display: table; width: 100%; min-height: 300px; }
  .challenge-box.video .challenge-box-i { display: table-cell; width: 100%; text-align: center; height: 100%; vertical-align: middle; }  
  .challenge-box.video .challenge-box-i a { display: block; width: 100%; height: 100%; vertical-align: middle; text-align: center; }  
  .challenge-boxes-i .challenge-box {  display:block;     width: 100%; min-height:300px; }  
  .challenge-box.no-space { padding:40px 4%; }
  .cform-row span.wpcf7-form-control-wrap select { min-width:100px; }
  .category-filters { padding: 20px 0 10px 0; }
  .blog-page-item .bpi-featured { height: 220px; }
  .blog-page-item.featured .bpi-featured { height: 330px; }
  .bpi-featured.blog-social-box { overflow-y:auto; }
  .single-news-item a .sni-i-featured { height: 330px; }
  
    .banner > a { height:400px; }
  .banner .challenge-link img { max-width: 75%; }    
  
  body .bpi-featured.blog-social-box { width: 100%; margin: 0 auto; border: solid 1px #000 !important; padding: 0 30px; background: transparent; height: 0px; overflow-y: hidden !important; }
  
  
}

@media only screen and (max-width: 568px) { 
  .grid-sizer, .grid-item { width: 100%; }   
  .cform-half { float: none; width: 100%; margin-bottom:15px !important; }
  .cform-full { margin-bottom:15px !important; }
  .cform-half:last-of-type { float: none;  margin-bottom:15px !important; width: 100%; }
    .cform-row { float: none; width: 100%; margin-bottom:0; }
    .challenge-boxes-w .challenge-box {  width: 100%; }  
      .team-grid-block.cols-4 .team-grid-item { width:100%; max-width:100%; }
      
  .category-filters ul li { float: left; text-align: center; margin: 0 1px; }    
  .category-filters ul li a { display: block;  font-size: 12px; }
  .category-filters ul li a .cat-image img { max-height: 25px; }
  .category-filters ul li a.filter-all .cat-image i { font-size: 25px; line-height: 1em; }
  .category-filters ul li a { padding:7px 6px 5px }
  
  .quote-box-carousel .item p { font-size: 13px; line-height: 1.5em; }
  .banner > a { height:300px; }
    .banner .challenge-link img { max-width: 90%; }
}


@media only screen and (max-width: 420px) {
 }
@media only screen and (max-width: 340px) {

}

