/*
Theme Name: neutron vr
Author: Alan McDonald
Author URI: http://madebyplumbers.co.uk
*/

/* Reset
-------------------------------------------------------------- */
a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,img,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline}h1,h2,h3,h4,h5{font-weight:400}article,aside,footer,header,hgroup,nav,section{display:block}:focus{outline:0}body{line-height:1;color:#000;background:#fff;height:100%}ol,ul{list-style:none}table{border-collapse:separate;border-spacing:0}caption,td,th{text-align:left;font-weight:400}blockquote:after,blockquote:before,q:after,q:before{content:""}blockquote,q{quotes:"" ""}html{height:100%;padding-bottom:1px}a{text-decoration:none}.hidden{display:none}.clear{clear:both}img{-ms-interpolation-mode:bicubic;image-rendering:optimizeQuality;width:100%;height:auto;display:block}.left{float:left}.right{float:right}b{font-weight:400}i{font-style:normal}
a:active { background-color: transparent;} /*remove the active colour from ie10+*/
/*Custom reset ------------------------------------------------*/
body{ -webkit-text-size-adjust:none; font-weight:normal;}
input[type="submit"], select, input[type="text"],input[type="password"], textarea{ -webkit-appearance:none; border-radius:0; font-size:inherit; }
a {  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } 
div,article,section,header,footer,nav,li{ position:relative;}
input,select,button, textarea{ font-family:inherit;	}
em{ font-style:normal;	}
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;  }
.left { float:left; } .right { float:right; }
.mobile-only,
.close-expand,
.mobile-feature-image  { display:none; }

a:focus { outline:auto; }


/* Global
--------------------------------------------------------------------*/
html { height: 100%; }
body { font-size: 62.5%;  font-family: 'Montserrat', sans-serif;font-style: normal;font-stretch: normal; -webkit-text-size-adjust:none; color:#272b2f; font-weight: 300;  }
a { color:#272b2f; text-decoration: none; }
.row { width:100%; }
.inner { max-width:1440px; width:100%; margin:0px auto; padding-left:20px; padding-right:20px; }
.inner:before, .inner:after, .fr-inner:before, .fr-inner:after { content: ""; display: table; }
.inner:after, .fr-inner:after { clear: both; }
.column { float:left; }

.skip-to-content { z-index:99;top:-45px; left:0; padding:0 15px; background:#000; color:#fff; font-size:1.5em; height:45px; line-height:45px; position:absolute; display:block; transition:top 300ms ease-in-out; }
.skip-to-content:focus { top:0; }


/* Typography
--------------------------------------------------------------------*/

p { line-height:130%; }

.grid-listing .grid-item .grid-content h2,
.page-hero,
.service-item h2,
.article-title h1,
.article-title h2 { font-weight:400; }

p strong, 
h1,h2,h3,h4,
.home-hero .overlay-text,
.medium,
.quote-text { font-weight:800; }

.medium,
.quote-text { font-weight:500; }

p em { font-weight:400; font-style:italic; }


/* Colours
--------------------------------------------------------------------*/
.lightblue,
nav.menu p,
.home-hero .overlay-text span,
h2.title-center span { color:#11a9c4; }

.home-hero .details,
.bg-lightblue  { background:#11a9c4; }

.bg-grey { background:#e0dfdf; }


/* Layout
--------------------------------------------------------------------*/

.section-border-top { border-top:1px solid #dbdada; }
.mesh-spacer { height:47px; background:#fcfbfb; display:block; border-bottom:1px solid #dbdada; border-top:1px solid #dbdada;}
.mesh-title { padding:25px 0; text-align:center; font-size:1.8em; background:#fcfbfb; border-bottom:1px solid #dbdada; border-top:1px solid #dbdada; }
h2.title-center { text-align:center; font-size:3em; text-transform:uppercase; padding:48px 0; }
h2.title-center span { display:block; }
.no-border-top { border-top:0; }
.no-border-bottom { border-bottom:0; }
.mesh-title.push-bottom { margin-bottom:48px; }

.mesh-spacer,
.mesh-title { background:url('images/site/diagonal-lines.png') #fcfbfb repeat; }


/* Social
--------------------------------------------------------------------*/
.social ul { overflow:hidden; }
.social li { display:inline-block; width:28px; margin-left:10px; }
.social li:first-child { margin:0; }
.social a { width:28px; height:28px; line-height:28px; display:block; transition:opacity 300ms ease-in-out; border-radius:3px; opacity:1; background:#fff; color:#000; font-size:1.2em; text-align:center; }

.social a:hover { opacity:0.4; }
.social li span { display:none; }


/* Header
--------------------------------------------------------------------*/

body { padding-top:149px;transition:padding-top 300ms ease;}

.masthead { position:fixed; top:0; left:0; width:100%; z-index:9999; background:#fff; transition:all 300ms ease; border-bottom:1px solid #dbdada;height:149px; border-top:14px solid #11a9c4 }
.logo { width:172px; height:47px; background:url('images/site/logo-black.png') no-repeat; margin:44px 0 44px 40px; float:left; text-indent:-999em; background-size:cover;transition:margin 300ms ease;  }

.reducedheader .masthead { margin-top:-14px;}
.reducedheader nav.menu { bottom:34px; }
.reducedheader .logo { margin:20px 0 20px 40px; }
.reducedheader .masthead { height:101px; }
.reducedheader { padding-top:87px; }
.reducedheader nav.menu p { top:-80px;  }

/* Menu
--------------------------------------------------------------------*/
nav.menu p { font-size:1.4em; position:absolute; left:0; top:-35px; transition:100ms ease; }
nav.menu { position:absolute; bottom:59px; right:60px;transition:bottom 300ms ease; }
nav.menu ul { font-size:1.4em; font-weight: 500; text-transform: uppercase; }
nav.menu > ul > li{ display:inline-block; padding-left:40px;  }
nav.menu > ul > li:first-child { padding-left:0;}
nav.menu > ul > li a{ transition:color 200ms ease-in-out;}

nav.menu .current_page_item a,
nav.menu .current_menu_item a,
nav.menu .current-menu-item a,
nav.menu .current-page-ancestor a,
nav.menu .current_page_parent a{  color:#11a9c4; border-bottom:2px solid #11a9c4;  }

nav.menu a:hover{ color:#CCC; }
.mobile-nav-toggle { display:none; }


/* Home slides
--------------------------------------------------------------------*/
.home-hero .slide,
.home-hero .details,
.home-hero .home-slides-wrap { height:364px; width:100%; overflow:hidden; }
.home-hero .home-slides-wrap { margin:11px 0; }
.home-hero .details { width:420px; color:#fff; }
.home-hero .details div { padding:80px 20px 0 40px; }
.home-hero .details h2 { font-size:4em; padding-bottom:20px; }
.home-hero .details p,
.home-hero .details span { font-size:1.6em; }
.home-hero .details span { display:block; margin-top:40px; }

.home-hero .image { display:none; }
.home-hero .slide { background-repeat:no-repeat;  background-position:50% 50%; }

.home-hero .overlay-text { height:100%; width:100%; display:table; text-align:center;}
.home-hero .overlay-text > div { display:table-cell; vertical-align:middle; }
.home-hero .overlay-text { font-size:4em; }
.home-hero .overlay-text p { line-height:120%; }

.slides-nav { border-top:1px solid #dbdada; padding:40px 0; text-align:center; }
.slides-nav li { width:auto; }
.slides-nav .spacer { width:0; height:0; }
.slides-nav .pagerlink { display:inline-block; cursor:pointer; margin:0 40px; -webkit-filter: grayscale(100%); filter: grayscale(100%); opacity:0.5; transition:opacity 300ms ease;}
.slides-nav .pagerlink.cycle-pager-active { -webkit-filter:none;filter:none; opacity:1; }


/* Page hero
--------------------------------------------------------------------*/

.page-hero { }
.page-hero .slide,
.page-hero .page-hero-slides-wrap { height:510px; width:100%; overflow:hidden; }
.page-hero .slide { background-size:cover; background-position:50% 50%; }
.page-hero .page-hero-slides-wrap { margin:11px 0; }

.page-hero .details { height:100%; width:100%; display:table; text-align:center;}
.page-hero .details > div { display:table-cell; vertical-align:middle; }

.page-hero .text-white { color:#fff; }
.page-hero .text-black { color:#000; }

.page-hero p { width:80%; margin:0 auto; }

.page-hero .x-large-text { font-size:7.5em; padding:0.3em 0;line-height:110%; }
.page-hero .large-text { font-size:5.3em; padding:0.3em 0;line-height:110%; }
.page-hero .med-text { font-size:3.8em; padding:0.3em 0;line-height:110%; }
.page-hero p { font-size:1.8em; }

.page-hero .logo180 { width: 200px; height: 200px; display:initial; }


/* Grid listing
--------------------------------------------------------------------*/
.grid-listing.push-top { padding-top:30px; }
.grid-listing .inner { max-width:1004px; padding:0 11px; }
.grid-listing .grid-item { width:50%; padding:0 11px 22px 11px; float:left; }
.grid-listing.four-col .inner { max-width:1440px; padding:0 40px; }
.grid-listing.four-col .grid-item { width:25%; padding:0 20px 22px 20px;  }
.grid-listing .grid-item.grid-full-width { width:100%; float:none; }
.grid-listing .grid-item a { position:relative; width:100%; display:block; }
.grid-listing .grid-item .img-wrap { display:block; background:#000; position:relative; }
.grid-listing .grid-item.tint img { opacity:0.5; }
.grid-listing .grid-item .grid-content { display:block; position:absolute; width:100%; height:100%; vertical-align:middle; text-align:center; z-index:10;  }
.grid-listing .grid-item .grid-content div { display:table; width:100%; height:100%; }
.grid-listing .grid-item .grid-content h2,
.grid-listing .grid-item.grid-full-width .grid-content p { color:#fff; display:table-cell;  vertical-align:middle; font-size:3.2em; padding:0 40px;  }

.grid-listing .grid-spacer { display:block; height:30px; }

.grid-listing .grid-item .grid-content p { padding:0 23px;  }

.grid-listing .grid-item .grid-content p { color:#fff; display:table-cell;  vertical-align:middle; font-size:1.9em;line-height:120%;}
.grid-listing .grid-item .grid-content span { display:block; margin-top:-22px; }

.grid-listing .hover-text img { opacity:1; }
.grid-listing .hover-text .grid-content { opacity:0; transition:opacity 600ms ease; }
/*.grid-listing .hover-text:hover img { opacity:0.5; }
.grid-listing .hover-text:hover .grid-content { opacity:1; }*/

.grid-listing .inline-text { font-size:1.7em; padding-top:22px; padding-bottom:25px;  }
.grid-listing .inline-text p {  line-height:140%;}

/*.grid-listing .grid-item:nth-of-type(odd) { clear:both; }*/

/* Services
--------------------------------------------------------------------*/
.service-item { margin:11px 0; height:510px; background-size:cover; }
.service-item .service-text { display:table; background:rgba(255,255,255,0.7); width:100%; height:100%;text-align:center; }
.service-item .service-text > div { display:table-cell; vertical-align:middle; }
.service-item h2 { font-size:5.5em; padding-bottom:1em; padding-left:20px; padding-right:20px; }
.service-item h3 { font-size:1.8em;  padding-bottom:22px;padding-left:20px; padding-right:20px; }
.service-item p { max-width:800px; padding:0 20px;  margin:0 auto; font-size:1.8em; }

/* Text
--------------------------------------------------------------------*/
.two-column-text .inner { max-width:1004px; padding:0 11px 40px 11px; }
.two-column-text .text-column { width:50%; padding:0 11px 22px 11px; float:left; }
.two-column-text .text-column  .text-content { padding-right:28px; }
.single-text-block .inner { max-width:980px; padding:0 20px 40px 20px; }

.two-column-text.after-two-column-text { margin-top:-40px; }

/* Quote
--------------------------------------------------------------------*/
.quote-block .inner { max-width:980px; text-align:center; padding:15px 20px; }
.quote-text { font-size:2.7em; }
.quote-source { font-size:1.8em; padding-top:20px; }
.quote-logo { max-width:250px; width:auto; margin:35px auto; }
.quote-block.after-logo-block { padding-top:45px; }


/* Video block
--------------------------------------------------------------------*/
.video-block { }
.videowrap { max-width:982px; padding:0 11px; margin:0 auto 22px auto; }

/* CTA block
--------------------------------------------------------------------*/
.cta-block { background:#11A9C4; color:#fff; padding:90px 0; font-size:3em; text-align:center;}
.cta-block a { color:#fff; text-decoration:underline; }
.cta-block .inner { max-width:750px; margin:0 auto; }


/* Logos
--------------------------------------------------------------------*/
.logo-block .inner{ max-width:1004px; padding:0 11px; text-align:center; }
.logoitem { display:inline-block; vertical-align:top; max-width:165px; margin:0 11px 22px 11px; }


/* Article title
--------------------------------------------------------------------*/
.article-title .inner { max-width:600px; margin:0 auto; padding-bottom:48px; text-align:center;}
.article-title h1 { font-size:3.2em; }
.article-title h2 { font-size:1.8em; color:#e0dfdf; padding-top:1em; }

/* Pagination
--------------------------------------------------------------------*/
.pagination { font-size:1.8em; padding:25px 10px; clear:both; overflow:hidden;}
.pagination .page-numbers { display:none; }
.pagination a.next, .pagination a.prev { display:block; width:50%; text-align:left; padding:10px 0; float:left; }
.pagination a.next { text-align:right; float:right; }


/* Contact Page 
--------------------------------------------------------------------*/
.google-map-wrap { background:#312F32; }
.map-element-wrap { height:400px; background:#312F32; }

.gm-style-iw h2 { font-size:1.4em; padding-bottom:10px; padding-top:10px; }
.gm-style-iw p { font-size:1em; }

.contact-address { padding-left:50px; padding-bottom:30px; }
.contact-address img.flag { position:absolute; left:0; top:0; width:35px; }
.sidebar .contact-address h4 { font-size:1.6em; padding-bottom:10px; }

.text-content ul.contacts { padding-left:0; list-style-type:none; }
.text-content ul.contacts li { padding-bottom:0; }

.text-content ul.contacts i { width:25px; text-align:center; }
.text-content ul.contacts a { text-decoration:none; }

/* Contact Form
--------------------------------------------------------------------*/
.contact-form { padding:0 0 60px 0; clear:both; }
.contact-form .inner { max-width:1064px; padding:0 41px; }

.formwrap { width:100%; }
.contact-form .hp-wrap { display:none; }

/* input wraps */
.contact-form .field-wrap { margin-bottom:0; margin-top:10px; }
.contact-form .field-wrap.first-input-wrap { margin-top:0; }
.contact-form .field-wrap.text-wrap,
.contact-form .textarea-wrap,
.contact-form .list-dropdown-wrap,
.contact-form .submit-wrap { width:100%; padding-left:340px; }
.contact-form .submit-wrap { padding-top:30px; }

/* labels */
.contact-form .field-wrap label { display:block; font-size:1.6em; padding-bottom:10px; position:absolute; left:0; width:300px; font-weight:300!important; top:15px;}

/* inputs */
.contact-form .list-dropdown-wrap select,
.contact-form input[type="text"] { border:1px solid #fff; background:#fff; height:46px; font-size:1.6em; padding:0 10px; font-weight:inherit;  }
.contact-form .textarea-wrap textarea { border:1px solid #fff;background:#fff; height:100%;font-size:1.6em; padding:10px; height:120px; margin:0; resize:none; font-weight:inherit;  }

/* submit */
.contact-form input[type="submit"] { clear:both; cursor:pointer; display:block; color:#fff; background:#000;text-align:center; padding:13px 0; border:none; font-size:1.6em; width:100%; height:56px;  font-weight:500;}
.contact-form input[type="submit"]:hover { background-color:#000; }

/* msgs */
.contact-form .ninja-forms-required-items,
.contact-form .ninja-forms-field-error { display:none!important; }
.contact-form .field-wrap.label-left .ninja-forms-field { margin:0; width:100%; }
.contact-form .ninja-forms-response-msg.ninja-forms-error-msg { padding:10px; font-size:1.7em; background:#cb1414; text-align:center; margin-bottom:18px; color:#fff; }
.contact-form .ninja-forms-success-msg { font-size:2em; padding:20px; border:1px solid rgba(255,255,255,0.2); text-align:center; }
.contact-form .ninja-forms-error input[type="text"] { border-color:#CB1414; }
.contact-form .ninja-forms-req-symbol { color:#000; }


/* Footer
--------------------------------------------------------------------*/
.pagefooter { background:#000; color:#dadada;}
.pagefooter p a,
.pagefooter span a{ color:#dadada; }
.pagefooter .inner { padding-top:80px; padding-bottom:80px; padding-left:60px; padding-right:60px; }

.pagefooter .social { float:right; }

.footer-col { width:50%; float:left;font-size:1.5em; height:60px;  }
.footer-col.left { padding-right:200px; }
.footer-col.right { padding-left:200px; float:right; }
.footer-logo-wrap { width:400px; position:absolute; left:50%; margin-left:-200px; text-align:center;font-size:1.2em;}
.footer-logo-wrap  .flogo { width:121px; height:33px; margin:0 auto 10px auto;background:url('images/site/logo-white.png') no-repeat; text-indent:-999em; background-size:cover; }


/* Text content
--------------------------------------------------------------------*/

.text-content p,
.text-content ul,
.text-content ol,
.text-content table { font-size:1.6em; padding-bottom: 1.3em; line-height:130%; }

.text-content p a,
.text-content ul a,
.text-content ol a,
.text-content table a {  color:#000; text-decoration:underline; transition:color 200ms ease-in-out; }
.text-content table td { vertical-align: top }

.text-content ul { list-style-type:disc; padding-left: 1em; }
.text-content ol { list-style-type: decimal; padding-left: 1em; }
.text-content ul li,
.text-content ol li { padding-bottom: 0.4em }

.text-content h2 {  font-size:3.9em; padding-bottom:0.3em; }
.text-content h3 {  font-size:2.9em; padding-bottom:0.3em; }
.text-content a:hover { color:#000;}

.text-content ul ul { font-size:inherit; padding-top:0.8em; padding-bottom:0.3em;  }

.text-content .intro-para,
.intro-para { font-size:2.1em; padding-bottom:1em; line-height:115%; width:90%; }
.indent { padding-left:20px; padding-right:20px; }
.text-content .mejs-container { margin-top:30px; display:block; }



/* Media Queries
--------------------------------------------------------------------*/
@media (max-width:1420px)
{
	
}


@media (max-width:1100px)
{
	.logo,
	.reducedheader .logo { margin-left:0; }
	nav.menu { right:20px; }
	nav.menu > ul > li { padding-left:25px; }
	nav.menu p { font-size:1.3em; padding-bottom:10px;  }
	.pagefooter .inner { padding-left:20px; padding-right:20px; }
	
	.service-item { height:400px; }
	.service-item h2 { font-size:4em; }
	
	.home-hero .details div { padding-left:20px; }
	.home-hero .details { width:40%; }

	.page-hero .x-large-text { font-size:6em; }
	.page-hero .large-text { font-size:4.3em; }

	.grid-listing.four-col .inner { padding:0; }
	
}

@media (max-width:1000px)
{
	.grid-listing.four-col .grid-item { width:50%; }
}

@media (max-width:980px)
{
	.footer-col { font-size:1.2em; height:40px; }
	.footer-logo-wrap { top:0; margin-top:60px; }
	
	.home-hero .details h2 { font-size:3em; }
	.home-hero .details p, .home-hero .details span { font-size:1.5em; }
	
	.home-hero .details div { padding-top:40px; }
	
	.page-hero .slide, .page-hero .page-hero-slides-wrap { height:400px; }
	
	.page-hero .x-large-text { font-size:5em; }
	.page-hero .large-text,
	.page-hero .med-text { font-size:3.5em; }
	
	.page-hero p { font-size:1.6em; }
	
}


@media (max-width:900px)
{
	.footer-logo-wrap { position:relative; left:auto; margin:0; text-align:left; margin-bottom:40px; width:100%; padding-right:140px; }
	.footer-logo-wrap .flogo { margin:0 0 10px 0; }
	.footer-col.right { width:120px; position:absolute; right:20px; top:40px; }
	.pagefooter .inner { padding:40px 20px;}
	.footer-col.left,
	.footer-col.right { padding:0; }
	.footer-col.left { clear:both; }
	
	.slides-nav .pagerlink { margin:0 30px; height:50px; width:auto; }
	nav.menu p { font-size:1.1em; padding-bottom:10px;  }
	
}


@media (max-width:850px)
{
	
	.mesh-title.mobile-only { display:block; }
	
	.logo { width:170px; height:40px; margin:30px 0; }
	
	body { padding-top:114px; }
	.masthead { height:114px; }
	
	.logo { margin:30px 0; }
	.pageheader { overflow:visible; }
	nav.menu p { display:none; }
	.mobile-nav-toggle{ width:40px; height:40px; text-indent:-999em; display:block; position:absolute; background:url('images/global/mobile-menu-button.svg') no-repeat;right:9px; top:34px; z-index:999999; }
	body.expanded .mobile-nav-toggle { background:url('images/global/mobile-menu-close.svg') no-repeat; top:46px; position:fixed; right:9px; }
	
	body { transition:margin-left 0.3s ease 0s; width:100%; height:100%;}
	body.expanded { margin-left:-400px; overflow:hidden; }
	
	nav.menu { z-index:99;padding:45px 20px; background:#000; color:#fff;height:100%; overflow-y:scroll; position:fixed; right:-400px; width:400px; top:0; transition:right 0.3s ease 0s; left:auto; }
	body.expanded nav.menu { right:0; }
	nav.menu a { padding:0; color:#fff; display:block; }
	nav.menu > ul { text-align:left; font-size:3em; line-height:135%;}
	nav.menu > ul > li,
	nav.menu > ul > li:first-child { display:block; float:none; width:100%; padding:5px 45px 5px 0;  }
	
	.grid-listing .grid-item .grid-content h2,
	.grid-listing .grid-item.grid-full-width .grid-content p { font-size:2.5em; }
	.grid-listing .inline-text { font-size:1.5em; }
	
	.service-item p,
	.service-item h3 { font-size:1.5em; }
	
	.home-hero .overlay-text { font-size:3em; padding:0 20px; }
	.home-hero .slide, 
	.home-hero .home-slides-wrap,
	.home-hero .intro-slide .image { height:470px; }
	.home-hero .slide { background-image:none!important;  }
	.home-hero .image { display:block; height:300px; background-size:cover; }
	.home-hero .details { height:170px; position:relative; width:100%;  }
	.home-hero .details div { padding-top:25px; }
	.home-hero .intro-slide .image { background-size:cover; background-position:50% 50%; position:absolute; width:100%; }
	.home-hero .details h2 { font-size:2.2em; }
	.home-hero .details p, .home-hero .details span { font-size:1.4em; }
	
	.home-hero .details span { margin-top:18px; }
	.page-hero .slide, .page-hero .page-hero-slides-wrap { height:320px; }

	.page-hero .x-large-text { font-size:4.3em; }
	.page-hero .large-text,
	.page-hero .med-text { font-size:3em; }
	.page-hero p { font-size:1.5em; }
	
	.contact-form .field-wrap.text-wrap,
	.contact-form .textarea-wrap,
	.contact-form .list-dropdown-wrap,
	.contact-form .submit-wrap { width:100%; padding-left:270px; }
	
	/* labels */
	.contact-form .field-wrap label { width:255px; top:15px;}
	

	.two-column-text .text-column { width:100%; margin:0 auto; float:none; padding:0; }
	.two-column-text .text-column .text-content { padding:0 15px; }

}

@media (max-width:650px)
{
	.contact-form .field-wrap.text-wrap,
	.contact-form .textarea-wrap,
	.contact-form .list-dropdown-wrap,
	.contact-form .submit-wrap { padding-left:0px; padding-bottom:15px; }
	
	/* labels */
	.contact-form .field-wrap label { width:100%; top:auto; position:relative; display:block!important; padding-bottom:14px; }	
	
	.slides-nav { border-top:none; padding:15px 0 20px 0; }
	.slides-nav img { display:none; }
	.slides-nav .pagerlink,
	.slides-nav .spacer { width:14px; height:14px; border-radius:7px; background:#999; display:inline-block; margin:0 7px; }
	.slides-nav .cycle-pager-active { filter:none; background:#11A9C4; }
}


@media (max-width:600px)
{
	.grid-listing .grid-item { width:100%; float:none; }
	.grid-listing.four-col .grid-item { float:left; }
	
	.grid-listing .grid-item.grid-full-width .grid-content p,
	.grid-listing .grid-item .grid-content p,
	.grid-listing .grid-item .grid-content h2 { font-size:2em; padding:0 25px; }
	
	.home-hero .details p, .home-hero .details span { font-size:1.3em; }
	.home-hero .details h2 { padding-bottom:12px; }
	.grid-listing .inline-text { font-size:1.7em; }
}


@media (max-width:550px)
{
	.logoitem { width:33.33333%; float:left; margin:0 0 22px 0; padding:0 11px; }
	.cta-block { padding:60px 0; font-size:2em; }
	.contact-form .inner { padding-left:15px; padding-right:15px; }
	
	.quote-block.after-logo-block { padding-top:20px; }
	
	h2.title-center { font-size:2em; }
}




@media (max-width:480px)
{
	
	body { padding-top:100px; }
	.masthead { height:100px; border-top:0; }
	
	body.expanded .mobile-nav-toggle { top:32px; }
	nav.menu { padding-top:30px; }
	
	
	.footer-logo-wrap { width:100%; padding:0; text-align:center; margin:0 0 20px 0; }	
	.footer-logo-wrap .flogo { margin:0 auto 10px auto; }
	.footer-col.left,
	.footer-col.right { width:100%; position:relative; top:auto; right:auto; text-align:center; padding:20px 0; height:auto; }
	.pagefooter .social { float:none; }
	
	.text-content p,
	.text-content ul,
	.text-content ol,
	.text-content table{ font-size:1.5em; }
	
	.quote-text { font-size:2em; }
	.quote-source { font-size:1.5em; }
	
	.service-item { height:320px; }
	.service-item h2 { font-size:3em; }
	.service-item p,
	.service-item h3 { font-size:1.4em; }
	
	.home-hero .slide, 
	.home-hero .home-slides-wrap,
	.home-hero .intro-slide .image { height:370px; }
	
	.home-hero .image { height:200px; }
	.page-hero .slide, .page-hero .page-hero-slides-wrap { height:290px; }
	
	.page-hero .x-large-text { font-size:3.5em; }
	.page-hero .large-text,
	.page-hero .med-text { font-size:2.5em; }
	
	.page-hero p { font-size:1.4em; }
	
	
	.grid-listing.four-col .grid-item { float:none; width:100%; }
	

}


@media (max-width:450px)
{
	
	body { padding-top:73px; }
	.masthead { height:73px; border-top:0; }
	
	.inner,
	.pagefooter .inner { padding-left:14px; padding-right:14px; }
	.logo { width:140px; height:33px; margin:20px 0;}
	.mobile-nav-toggle { top:21px; }
	body.expanded .mobile-nav-toggle { top:21px; }
	nav.menu { padding-top:25px; }
	
	body.expanded { margin-left:-100%; }
	nav.menu { right:-100%; width:100%; }
	
	h2.title-center { padding:35px 0; }
	
	.grid-listing .grid-item.grid-full-width .grid-content p,
	.grid-listing .grid-item .grid-content p,
	.grid-listing .grid-item .grid-content h2 { font-size:1.6em; padding:0 18px; }
	.grid-listing .grid-item .grid-content span { margin-top:-10px; }
	.service-item h2 { font-size:3em; }
	
	.grid-listing .inline-text { font-size:1.4em; }

	.home-hero .details h2 { font-size:1.7em; }
	.home-hero .details p, .home-hero .details span { font-size:1.2em; }
	.home-hero .details div { padding:20px 15px 0 15px; }
	
	
	.page-hero .slide, .page-hero .page-hero-slides-wrap { height:250px; }

	.page-hero .x-large-text { font-size:3em; }
	.page-hero .large-text,
	.page-hero .med-text { font-size:2em; }
	.page-hero p { font-size:1.2em; }
	

}


@media (max-width:350px)
{
	
	.text-content p,
	.text-content ul,
	.text-content ol,
	.text-content table,
	.service-item p { font-size:1.4em; }
	
	h2.title-center { font-size:1.6em; }
	
	.grid-listing .grid-item.grid-full-width .grid-content p,
	.grid-listing .grid-item .grid-content p,
	.grid-listing .grid-item .grid-content h2 { font-size:1.5em; padding:0 15px; }
	
	
	.home-hero .slide, 
	.home-hero .home-slides-wrap,
	.home-hero .intro-slide .image { height:320px; }
	
	.home-hero .image { height:150px; }
	
	.page-hero .x-large-text { font-size:2.6em; }
	.page-hero .large-text,
	.page-hero .med-text { font-size:1.6em; }
	
	.page-hero p { font-size:1.1em; }

}






/* Colorbox plugin
====================== */
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#cboxOverlay,#cboxWrapper,#colorbox{position:absolute;top:0;left:0;z-index:9999;overflow:visible;}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxBottomLeft,#cboxMiddleLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingGraphic,#cboxLoadingOverlay{position:absolute;top:0;left:0;width:100%;height:100%}#cboxClose,#cboxNext,#cboxPrevious,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0}#cboxContent,#cboxLoadedContent,#colorbox{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxContent{margin-top:32px}#cboxLoadedContent{background:#fff;padding:20px}body.id #cboxLoadedContent,body.in #cboxLoadedContent,body.ps #cboxLoadedContent,body.rw #cboxLoadedContent{background:#fff;padding:15px}#cboxLoadingGraphic{background:url(images/loadingAnimation.gif) center center no-repeat}#cboxLoadingOverlay{background:#fff}#cboxTitle{position:absolute;top:-22px;left:0;color:#000}#cboxCurrent{position:absolute;top:-22px;right:205px;}#cboxClose,#cboxNext,#cboxPrevious,#cboxSlideshow{text-indent:-9999px;width:20px;height:20px;position:absolute;top:-20px;background:url(images/macFFBgHack.png) 0 0 no-repeat}#cboxPrevious.hover{background-position:0 -25px}#cboxNext.hover{background-position:-25px -25px}#cboxClose{right:0}#cboxClose.hover{background-position:-50px -25px}.cboxSlideshow_off #cboxPrevious,.cboxSlideshow_on #cboxPrevious{right:66px}.cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px;right:44px}.cboxSlideshow_on #cboxSlideshow.hover{background-position:-100px -25px}.cboxSlideshow_off #cboxSlideshow{background-position:-100px 0;right:44px}.cboxSlideshow_off #cboxSlideshow.hover{background-position:-75px -25px}#cboxClose,#cboxNext,#cboxPrevious{width:34px;height:34px;background:url(images/global/bg-modal-buttons.png) no-repeat 0 0;border:0;z-index:9999}#cboxPrevious{background-position:-68px 0;right:75px}#cboxNext{background-position:-34px 0;right:37px}.cboxIE #cboxBottomCenter,.cboxIE #cboxBottomLeft,.cboxIE #cboxBottomRight,.cboxIE #cboxMiddleLeft,.cboxIE #cboxMiddleRight,.cboxIE #cboxTopCenter,.cboxIE #cboxTopLeft,.cboxIE #cboxTopRight{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF, endColorstr=#00FFFFFF)}


/* 
    ColorBox example user style
    The following rules are ordered and tabbed in a way that represents the
    order/nesting of the generated HTML, so that the structure easier to understand.
*/
#cboxOverlay{background:#000;}

#cboxPrevious{position:absolute; top:50%; left:-70px; margin-top:-32px; background:url('images/global/colorbox-prev.png') no-repeat 0 0; width:50px; height:50px; text-indent:-9999px;}
#cboxNext{position:absolute; top:50%; right:-70px; margin-top:-32px; background:url('images/global/colorbox-next.png') no-repeat 0 0; width:50px; height:50px; text-indent:-9999px;}
#cboxClose{position:absolute; top:0px; right:-60px; display:block; background:url('images/global/colorbox-close.png') no-repeat 0 0; width:50px; height:50px; text-indent:-9999px;}

#cboxCurrent { color:#ccc!important; font-size:1.8em!important; position:absolute!important; right:5px!important; top:-25px!important; }


@media (max-width: 980px){
	
	#cboxContent { margin-top:50px; }
	#cboxClose{position:absolute; right:0!important; top:-50px; width:35px; height:35px; background-size:cover;}
	#cboxNext { right:-5px!important; width:35px; height:35px; background-size:cover; }
	#cboxPrevious { left:-5px!important;  width:35px; height:35px; background-size:cover;}
	#cboxCurrent { left:0px!important; right:auto!important; }
}



@media (max-width: 500px){
	#cboxLoadedContent { padding:8px; }
}


