/*!
Theme Name: Composites Evolution
Author: Composites Evolution
Author URI: https://coventivecomposites.com
Description: Theme for Composites Evolution website
Version: 1.0.1
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Colour Reference
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Buttons
# Backgrounds
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
# Social Media Buttons
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Colour Reference
--------------------------------------------------------------*/

/*
	Red:
		Lighter			:			#C44D2F
		Primary (Embers):			#b82601
		Darker			:			#972001
*/


/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# replacement bootsrap styles
----------------------------------------------------------------*/
a:hover {
    color: #972001;
    text-decoration: underline;
}

.text-primary {
	color: #b82601 !important;
}

.btn-primary {
    color: #fff;
    background-color: #b82601;
    border-color: #972001;
}

.btn-primary:hover {
    color: #fff;
    background-color: #972001;
    border-color: #972001;
}

a {
    color: #b82601;
}

.bg-primary {
    background-color: #b82601!important;
}
.bg-light-grey {
	background-color: #f1f1f1!important;
}
.bg-dark {
	background-color: #273939!important;
}

.bg-primary-gradient {
    background: rgb(184,38,1);
    background: linear-gradient(135deg, rgba(184,38,1,1) 0%, rgba(255,255,255,0) 100%);
}

.text-underline {
	text-decoration: underline;
}

.btn-outline-primary {
    color: #b82601;
    border-color: #b82601;
}

.btn-outline-primary:hover {
    background-color: #b82601;
    border-color: #b82601;
}

/*---------------------------------------------------------------
# page header images
-----------------------------------------------------------------*/

@media (min-width: 768px) {
	.header-wrapper {
		position:relative;
	}

	.header-overlay {
		position:absolute;
		top:50%;
		transform: translateY(-50%);
	}
}

@media (max-width: 768px) {
	
	.image-wrapper {
	  height: 250px;
	  overflow: hidden;
	}
	
	.image-wrapper img {
	  position: relative;
	  top: 50%;
	  transform: translateY(-50%);
	}
	
}

/*----------------------------------------------------------
# Products and services
-----------------------------------------------------------*/

.product-wrapper {
	position: relative;
}

.product-item {
	position:absolute;
	top:50%;
	
	transform: translateY(-50%);
}

.product-item-left {
	left:33%;
}

.product-item-right {
	right:15%;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
.text-404 {
    font-size: 15vw;
}

.display-5 {
	font-size: 2.5rem;
	font-weight: 300;
	line-height: 1.2;
}

@media (min-width: 768px) and (max-width: 991px) {
	footer {
		font-size: 0.7em;
	}
	h4 {
		font-size: 1.5em;
	}
} 

.blockquote {
	font-size: 1rem;
}

blockquote.blockquote-service:before {
    content: '\f10d';
    color: rgba(102, 102, 102, 0.2);
    font-family: "Font Awesome 5 Free";
    display: block;
    font-size: 5em;
    line-height: 1;
    position: absolute;
    top: 0;
    left: 0; 
	z-index:-1;
	font-weight: 900;
}

@media (max-width: 976px) {
	.text-contact{
		font-size: 0.8rem;
	}
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

.search-form-main {
	display: none;
	position:fixed;
	top:0;
	left:0;
	right:0;
	/*background: #00a99d;*/
	z-index:1060;
}


/* autocomplete for forms */

.ui-autocomplete {
	padding: 0;
	list-style: none;
	background-color: #fff;
	width: 218px;
	border: 1px solid #B0BECA;
	max-height: 350px;
	overflow-x: hidden;
}
.ui-autocomplete .ui-menu-item {
	border-top: 1px solid #B0BECA;
	display: block;
	padding: 4px 6px;
	color: #353D44;
	cursor: pointer;
}
.ui-autocomplete .ui-menu-item:first-child {
	border-top: none;
}
.ui-autocomplete .ui-menu-item.ui-state-focus {
	background-color: #D5E5F4;
	color: #161A1C;
}

#simple-contact-form .invalid-feedback {
	color: #9d1419;
}

#simple-contact-form.form-check-input.is-invalid~.form-check-label, #simple-contact-form.was-validated .form-check-input:invalid~.form-check-label {
    color: #9d1419;
} 

#simple-contact-form.form-check-input.is-valid~.form-check-label, #simple-contact-form.was-validated .form-check-input:valid~.form-check-label {
    color: #fff;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

.headroom {
    will-change: transform;
    transition: transform 200ms linear;
}
.headroom--pinned {
    transform: translateY(0%);
}
.headroom--unpinned {
    transform: translateY(-100%);
}

.animated {
    -webkit-animation-duration: .5s;
    -moz-animation-duration: .5s;
    -o-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both;
    will-change: transform,opacity
}

@-webkit-keyframes slideDown {
    0% {
        -webkit-transform: translateY(-100%)
    }

    100% {
        -webkit-transform: translateY(0)
    }
}

@-moz-keyframes slideDown {
    0% {
        -moz-transform: translateY(-100%)
    }

    100% {
        -moz-transform: translateY(0)
    }
}

@-o-keyframes slideDown {
    0% {
        -o-transform: translateY(-100%)
    }

    100% {
        -o-transform: translateY(0)
    }
}

@keyframes slideDown {
    0% {
        transform: translateY(-100%)
    }

    100% {
        transform: translateY(0)
    }
}

.animated.slideDown {
    -webkit-animation-name: slideDown;
    -moz-animation-name: slideDown;
    -o-animation-name: slideDown;
    animation-name: slideDown
}

@-webkit-keyframes slideUp {
    0% {
        -webkit-transform: translateY(0)
    }

    100% {
        -webkit-transform: translateY(-100%)
    }
}

@-moz-keyframes slideUp {
    0% {
        -moz-transform: translateY(0)
    }

    100% {
        -moz-transform: translateY(-100%)
    }
}

@-o-keyframes slideUp {
    0% {
        -o-transform: translateY(0)
    }

    100% {
        -o-transform: translateY(-100%)
    }
}

@keyframes slideUp {
    0% {
        transform: translateY(0)
    }

    100% {
        transform: translateY(-100%)
    }
}

.animated.slideUp {
    -webkit-animation-name: slideUp;
    -moz-animation-name: slideUp;
    -o-animation-name: slideUp;
    animation-name: slideUp
}


@media screen and (min-width: 992px) {
	
	.navbar-nav .active {
		border-bottom: 2px solid #007bff;
	}
	
}


#mainNav {
  background-color: #212529;
}

#mainNav .navbar-toggler {
  font-size: 12px;
  right: 0;
  padding: 13px;
  text-transform: uppercase;
  color: white;
  border: 0;
  background-color: #00a99d;
  /*font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;*/
}

#mainNav .navbar-brand {
  color: #00a99d;
  /*font-family: 'Kaushan Script', 'Helvetica Neue', Helvetica, Arial, cursive;*/
}

#mainNav .navbar-brand.active, #mainNav .navbar-brand:active, #mainNav .navbar-brand:focus, #mainNav .navbar-brand:hover {
  color: #fec503;
}

#mainNav .navbar-nav .nav-item .nav-link {
  /*font-size: 90%;*/
  /*font-weight: 400;*/
  padding: 0.75em 0;
  /*letter-spacing: 1px;*/
  color: white;
  /*font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;*/
}

#mainNav.navbar-shrink .nav-item .nav-link {
	color: #00a99d;
}

#mainNav .navbar-nav .nav-item .nav-link.active, #mainNav .navbar-nav .nav-item .nav-link:hover {
  color: #00a99d;
}

#mainNav.navbar-shrink .nav-item .nav-link.active, #mainNav .navbar-nav .nav-item .nav-link:hover {
  color: #dadada;
}

@media (min-width: 992px) {
  #mainNav {
    padding-top: 25px;
    padding-bottom: 25px;
    -webkit-transition: padding-top 0.3s, padding-bottom 0.3s;
    -moz-transition: padding-top 0.3s, padding-bottom 0.3s;
    transition: padding-top 0.3s, padding-bottom 0.3s;
    border: none;
    background-color: transparent;
  }
  #mainNav .navbar-brand {
    font-size: 1.75em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
  }
  #mainNav .navbar-nav .nav-item .nav-link {
    padding: 1.1em 1em !important;
  }
  #mainNav.navbar-shrink {
    padding-top: 0;
    padding-bottom: 0;
    /*background-color: #212529;*/
	background-color: rgba(255,255,255,0.9);
	-webkit-box-shadow: 0 0 10px 0 rgba(0,0,0,.5);
    box-shadow: 0 0 10px 0 rgba(0,0,0,.5);
  }
  #mainNav.navbar-shrink .navbar-brand {
    font-size: 1.25em;
    padding: 12px 0;
  }
}

.logo-coloured {
	display: none;
}

a[href^="tel"]{
    color:inherit;
    text-decoration:none;
}

.breadcrumb {
	background-color: transparent;
	border-radius: 0;
	padding: 0;
}

.breadcrumb-item+.breadcrumb-item::before {
    display: inline-block;
    padding-right: .5rem;
    color: #fff;
    content: ">";
}

.breadcrumb a {
	color: #fff;
}

.breadcrumb-item.active {
    color: #74cbbd;
}

.site-header .text-breadcrumb {
	color: #fff;
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */


/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.aligncenter {
	margin-left: auto!important;
	margin-right: auto!important;
}

.py-super {
	padding-bottom: 6rem!important;
	padding-top: 6rem!important;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/

.cS-hidden {
    height: 1px;
    opacity: 0;
    filter: alpha(opacity=0);
    overflow: hidden;
} 

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Background
--------------------------------------------------------------*/



/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

header.masthead {
    padding-top:10rem;
    padding-bottom:calc(10rem - 56px);
    background-position: center center;
    -webkit-background-size:cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

header.masthead hr {
    margin-top: 30px;
    margin-bottom: 30px
}

header.masthead h1 {
    font-size: 2rem
}

header.masthead p {
    font-weight: 300
}

@media (min-width: 768px) {
    header.masthead p {
        font-size:1.15rem
    }
}

@media (min-width: 992px) {
    header.masthead {
        height:80vh;
        min-height: 550px;
        padding-top: 0;
        padding-bottom: 0
    }

    header.masthead h1 {
        font-size: 3rem
    }
}

@media (min-width: 1200px) {
    header.masthead h1 {
        font-size:4rem
    }
}


.filter {
  position: relative;
  filter: contrast(125%) saturate(110%) invert(15%);
}

.filter::before {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  pointer-events: none;
  mix-blend-mode: darken;
  opacity: 0.75;
  /*background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 10%, rgba(255, 255, 255, 0) 100%);*/
  background: linear-gradient(to bottom, rgba(0,0,0,0.2) 0%,rgba(0,0,0,0.8) 50%,rgba(0,0,0,0.2) 100%);
}

.header-overlay:after {
  content: '';
  position: absolute;
  width: inherit;
  height: inherit;
  top: 0;
  left: 0;
  background: rgba(255, 0, 0, 0.5);
}


.header-image {
    position: relative;
    background-color: #343a40;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.valid, .invalid {
	display:none;
}

.vat_number_input {
	display:none;
}

.progress-bar {
    background-color: #00a99d;
}

.border-primary {
	border-color: #00a99d!important;
}

.overlay {
	opacity:0;
	transition:all 500ms;
}

.case-study-image {
	transition:all 500ms;
}

.service:hover .overlay {
	opacity:1;
}

.service:hover h2 {
	opacity:0;
}

.inspiration:hover .overlay {
	opacity:1;
}

.inspiration:hover h2 {
	opacity:0;
}

.inspiration:hover .case-study-image {
	opacity:0.25
}

.table .thead-primary th {
    color: #fff;
    background-color: #b82601;
    border-color: #C44D2F;
}
.wp-caption-text {
    font-style: italic;
    text-align: center;
}

code {
	color: #00766e;
	font-family: "Lucida Console", Monaco, "Courier New", monospace;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/


/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/


/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/


/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------
	social buttons
---------------------------------------------------------*/

.btn-twitter {
    background: #00acee;
    color: #fff
}

.btn-twitter:link,.btn-twitter:visited {
    color: #fff
}

.btn-twitter:active,.btn-twitter:hover {
    background: #0087bd;
    color: #fff
}

.btn-twitter .badge {
    color: #00acee;
    background-color: #fff
}

.btn-facebook {
    background: #3b5998;
    color: #fff
}

.btn-facebook:link,.btn-facebook:visited {
    color: #fff
}

.btn-facebook:active,.btn-facebook:hover {
    background: #30477a;
    color: #fff
}

.btn-facebook .badge {
    color: #3b5998;
    background-color: #fff
}

.btn-googleplus {
    background: #e93f2e;
    color: #fff
}

.btn-googleplus:link,.btn-googleplus:visited {
    color: #fff
}

.btn-googleplus:active,.btn-googleplus:hover {
    background: #ba3225;
    color: #fff
}

.btn-googleplus .badge {
    color: #e93f2e;
    background-color: #fff
}

.btn-stumbleupon {
    background: #f74425;
    color: #fff
}

.btn-stumbleupon:link,.btn-stumbleupon:visited {
    color: #fff
}

.btn-stumbleupon:active,.btn-stumbleupon:hover {
    background: #c7371e;
    color: #fff
}

.btn-stumbleupon .badge {
    color: #f74425;
    background-color: #fff
}

.btn-linkedin {
    background: #0e76a8;
    color: #fff
}

.btn-linkedin:link,.btn-linkedin:visited {
    color: #fff
}

.btn-linkedin:active,.btn-linkedin:hover {
    background: #0b6087;
    color: #fff
}

.btn-linkedin .badge {
    color: #0e76a8;
    background-color: #fff;
}

.btn-email {
    background: #666666;
    color: #fff
}

.btn-email:link,.btn-email:visited {
    color: #fff
}

.btn-email:active,.btn-email:hover {
    background: #555555;
    color: #fff
}

.btn-email .badge {
    color: #0e76a8;
    background-color: #fff;
}

/*-------------------------------------------------------------
	use class "list-consecutive-numbering" on <ol> to allow
	consecuative number after sections headers
---------------------------------------------------------------*/

ol.list-consecutive-numbering {
	list-style: none;
}

ol.list-consecutive-numbering li:not(:last-child) {
	margin-bottom: 1em;
}

ol.list-consecutive-numbering > li:before {
	counter-increment: mycounter;
	content: counter(mycounter) ". ";
}

ol.list-consecutive-numbering:first-of-type {
	counter-reset: mycounter;
}

ol.list-consecutive-numbering li ol {
	margin-top:1em;
}

/*--------------------------------------------------
	snow
----------------------------------------------------*/

#snow {
    position: absolute;
    z-index: 10;
}