 /* =CSS Reset
--------------------------------------------------------------------------------------------------*/

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%;vertical-align: baseline;background: transparent;
}
/* Tell the browser to render HTML 5 elements as block */  
header, footer, aside, nav, article, section, figure, hgroup { display: block; }  

/* Responsive images and other embedded objects
   Note: keeping IMG here will cause problems if you're using foreground images as sprites.
   If this default setting for images is causing issues, you might want to replace it with a .responsive class instead. */
   img,object,embed {max-width: 100%;}

   /* force a vertical scrollbar to prevent a jumpy page */

/* we use a lot of ULs that aren't bulleted. 
don't forget to restore the bullets within content. */
ul {list-style: none;}

blockquote, q {quotes: none;}

blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}

a {margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent;}

del {text-decoration: line-through;}

abbr[title], dfn[title] {border-bottom: 1px dotted #000; cursor: help;}

/* tables still need cellspacing="0" in the markup */
table {border-collapse: collapse; border-spacing: 0;}
th {font-weight: bold; vertical-align: bottom;}
td {font-weight: normal; vertical-align: top;}

hr {display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}

input, select {vertical-align: middle;}

pre {
	white-space: pre; /* CSS2 */
	white-space: pre-wrap; /* CSS 2.1 */
	white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
	word-wrap: break-word; /* IE */
}

input[type="radio"] {vertical-align: text-bottom;}
input[type="checkbox"] {vertical-align: bottom; *vertical-align: baseline;}
.ie6 input {vertical-align: text-bottom;}

select, input, textarea {font: 99% sans-serif;}

table {font-size: inherit; font: 100%;}

/* Accessible focus treatment people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active, a:focus {outline: none;}

small {font-size: 85%;}

strong, th {font-weight: bold;}

td, td img {vertical-align: top;} 

/* Make sure sup and sub don't screw with your line-heights
gist.github.com/413930 */
sub, sup {font-size: 75%; line-height: 0; position: relative;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}

/* standardize any monospaced elements */
pre, code, kbd, samp {font-family: monospace, sans-serif;}

/* hand cursor on clickable elements */
.clickable, label, input[type=button], input[type=submit], button {cursor: pointer;}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {margin: 0;}

/* make buttons play nice in IE */
button {width: auto; overflow: visible;}

/* Micro Clearfix Hack */
.cf:before, .cf:after { content: "\0020"; display: block; height: 0; overflow: hidden; }  
.cf:after { clear: both; }  
.cf { zoom: 1; }  

img {
	image-rendering: -webkit-optimize-contrast;
}

body {
    font-family: "Roboto Slab", sans-serif;
}

input, textarea, select, button, input[type="submit"] {
    font-family: "Roboto Slab", sans-serif;
    -webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* End CSS Reset
--------------------------------------------------------------------------------------------------*/

/* Start Basic CSS
--------------------------------------------------------------------------------------------------*/
input,
textarea,
button,
select,
a,
span,
div {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

body {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	color: #777;
	font-family: "Roboto Slab", sans-serif;
}

html {
	height: 100%;
}

body {
	height: 100%;
}

html.canvas-opened {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    overflow-y: scroll;
}

.wrapper {
	position: relative;
	width: 100%;
	min-height: 100%;
    padding-bottom: 500px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 auto;
}

select, input, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.container {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0px 15px;
}

.btn {
	display: inline-block;
	outline: none;
	text-decoration: none;
}

.gray-btn {
	width: 100%;
	height: 40px;
	border: 0px;
	padding: 0px 20px;
	background: #f0f0f0;
	color: #000;
	text-transform: uppercase;
	line-height: 40px;
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 700;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-align: center;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

.gray-btn:hover {
	background: #222;
	color: #fff;
}

.green-btn {
    width: 100%;
    height: 40px;
    border: 0px;
    padding: 0px 20px;
    background: #85c977;
    color: #fff;
    text-transform: uppercase;
    line-height: 40px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.green-btn:hover {
    background: #222;
    color: #fff;
}

.default-pagination {
    margin: 30px 0 60px;
    text-align: center !important;
}

.default-pagination ul li {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border: 0;
    text-align: center;
}

.default-pagination ul li a {
    display: block;
    border: 1px solid #ddd;
    line-height: 38px;
    text-decoration: none;
    color: #000;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.default-pagination ul li a:hover {
    border-color: #000;
}

.default-pagination ul li span {
    display: block;
    background: #85c977;
    color: #fff;
    border-color: #85c977;
}
/* End Basic CSS
--------------------------------------------------------------------------------------------------*/

/* Start header CSS
--------------------------------------------------------------------------------------------------*/
.contact-header-mobile {
    display: none;
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #ddd;
}

.contact-header-mobile li a {
    text-transform: inherit !important;
    font-size: 14px;
}

.contact-header-mobile li a i {
    margin-right: 5px;
}

.header-top {
    position: relative;
    font-size: 13px;
    padding: 10px 0;
    color: #ababab;
    background-color: #222;
}

#header {
    position: relative;
}

#header:after {
    position: absolute;
    content: '';
    bottom: -19px;
    width: 100%;
    height: 20px;
    margin: 0 auto;
    z-index: 2;
    background: url('../img/bgi/header-curved.png') center center no-repeat;
}

.contact-header li {
    position: relative;
    float: left;
    color: #777;
    font-size: 14px;
    margin-right: 25px;
    line-height: 1.4em;
}

.contact-header li i {
	margin-right: 5px;
}

.contact-header li a {
    position: relative;
    font-size: 12px;
    line-height: 16px;
    text-decoration: none;
    padding-right: 20px;
    border-right: 1px solid #515151;
    color: #ababab;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}

.contact-header li span {
	color: #ababab;
}

.contact-header li a:hover {
    color: #85c977;
}

.header-bottom {
	padding: 10px 0px;
	position: relative;
}

.header-logo {
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -40px;
    margin-top: -40px;
    width: 80px;
    height: 80px;
}

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    overflow: auto;
    z-index: 99992;
    background: rgba(0, 0, 0, .15);
    display: none;
}

.navbar .navbar-outer {
    position: fixed;
    width: 380px;
    top: 0;
    left: 0;
    height: 100%;
    background: #fff;
    z-index: 2;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    overflow: auto;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}

.menu-toggle {
	position: relative;
	float: left;
	padding: 20px 30px 20px 0px;
	cursor:pointer;
	position:relative;
}
.hamburger {
	float: left;
	position:relative;
	width: 40px;
	height: 40px;
	padding: 10px;
	left:0%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: #85c977;
}
.hamburger span{
	display:block;
	width:100%;
	height:3px;
	margin-bottom:5px;
	overflow:hidden;
	position:relative;
}
.hamburger span:last-child{
	margin:0;
}
.hamburger span:before,.hamburger span:after{
	content:"";
	position:absolute;
	width:100%;
	height:100%;
	background-color:#fff;
	transform:translateX(-200%);
	transition:transform ease 300ms;
}
.hamburger span:after{
	transform:translateX(0);
}
.hamburger span:nth-child(2):before,.hamburger span:nth-child(2):after{
	transition-delay:75ms;
}
.hamburger span:last-child:before,.hamburger span:last-child:after{
	transition-delay:150ms;
}
.menu-toggle:hover .hamburger span:before{
	transform:translateX(0);
}
.menu-toggle:hover .hamburger span:after{
	transform:translateX(200%);
}

.menu-text {
	float: right;
	display: inline-block;
	margin-left: 15px;
	line-height: 40px;
	letter-spacing: 1px;
	white-space: nowrap;
	font-size: 14px;
	text-transform: uppercase;
	vertical-align: top;
}

.desktop-menu {
	float: right;
	margin: 20px 0px;
}

.navbar.opened .navbar-outer {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

.close-canvas-menu {
    display: block;
    margin: 30px 0px;
    position: relative;
    width: 40px;
    height: 40px;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    cursor: pointer;
}

.close-canvas-menu:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url('../img/bgi/close-black.svg') no-repeat center center;
}

.navbar .navbar-inner {
    padding: 0 30px 80px;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.navbar .navbar-inner > ul > li {
    position: relative;
    padding-left: 30px;
}

.navbar .navbar-inner > ul > li > a {
    position: relative;
    display: block;
    line-height: 30px;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;
    color: #222;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.navbar .navbar-inner > ul > li > a:hover {
	color: #85c977;
}

.navbar .navbar-inner > ul > li.menu-item-has-children > span {
    position: absolute;
    left: 0;
    top: 0;
    width: 30px;
    cursor: pointer;
    height: 30px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    background: url('../img/bgi/arrow-right-black.svg') no-repeat center center;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.navbar .navbar-inner > ul > li ul {
	display: none;
    margin-bottom: 15px;
}

.navbar .navbar-inner > ul > li ul li {
    border-bottom: 1px solid #ddd;
}

.navbar .navbar-inner > ul > li ul a {
	padding: 10px;
	display: block;
	text-decoration: none;
	color: #222;
	font-size: 13px;
	-webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.navbar .navbar-inner > ul > li ul a:hover {
	color: #fff;
	background: #85c977;
}

.navbar .navbar-inner>ul>li.menu-item-has-children.active>span {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
/* End header CSS
--------------------------------------------------------------------------------------------------*/

/* Start footer CSS
--------------------------------------------------------------------------------------------------*/
#footer {
    position: absolute;
    padding: 40px 0;
    margin-top: 60px;
    text-align: center;
    background-color: #85c977;
    left: 0;
    bottom: 0;
    width: 100%;
}

#footer:before {
    position: absolute;
    content: '';
    left: 0;
    top: -90px;
    height: 95px;
    width: 100%;
    background: url('../img/bgi/footer-img.png') left top repeat-x;
}

.copyright-container {
    margin-top: 40px;
    color: #fff;
}

.footer-row {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.footer-col {
    width: calc(100% / 3);
    text-align: center;
}

.footer-col h3 {
    margin-bottom: 10px;
    color: #fff;
    font-size: 16px;
}

.footer-col ul li a {
    display: block;
    text-decoration: none;
    color: #fff;
}

.footer-contact li {
    margin-bottom: 10px;
}

.footer-contact li p {
    color: #fff;
}
/* End footer CSS
--------------------------------------------------------------------------------------------------*/

/* Start homepage CSS
--------------------------------------------------------------------------------------------------*/
.slider-section {
	position: relative;
}

.slider-section .slick-slide:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0, .3);
}

.slider-section .slick-dots {
    position: absolute;
    left: 0;
    bottom: 30px;
    width: 100%;
    text-align: center;
}

.slider-section .slick-dots li {
    display: inline-block;
    margin: 0px 5px;
}

.slider-section .slick-dots button {
    display: block;
    padding: 0;
    border: 2px solid #fff;
    outline: none;
    font-size: 0px;
    width: 15px;
    height: 15px;
    background: transparent;
    border-radius: 15px;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.slider-section .slick-dots li.slick-active button {
    width: 30px;
}

.slider-inner-text {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
    max-width: 700px;
    width: 100%;
	align-items: center;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.slider-inner-text div {
	color: #fff;
	font-size: 32px;
	text-align: left;
	line-height: 38px;
	margin-left: 20px;
}

.slick-slide > img {
    display: block;
    height: 600px;
    object-fit: none;
}

.posts-aside {
	float: left;
	width: 240px;
	margin-right: 40px;
}

.page-description {
	float: left;
	width: calc(100% - 280px);
}

.homepage-main-section {
    margin: 50px 0px;
}

.text-default {
    text-align: justify;
}

.text-default h2 {
    margin-bottom: 20px;
    font-size: 28px;
    line-height: 34px;
}

.text-default h3 {
    margin-bottom: 20px;
    font-size: 24px;
    line-height: 30px;
}

.text-default p {
    margin-bottom: 20px;
}

.text-default ul,
.text-default ol {
    margin: 20px 0px;
}

.text-default ul li {
    position: relative;
    padding-left: 10px;
}

.text-default ul li:after {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 4px;
    height: 4px;
    border-radius: 2px;
    background: #777;
}

.text-default ol {
    list-style-position: inside;
}

.text-default ol a,
.text-default p a {
    color: #777;
}

.text-default ol a:hover,
.text-default p a:hover {
    color: #222;
}

.posts-aside ul li {
    margin-bottom: 30px;
}

.posts-aside ul li a {
    display: flex;
    flex-wrap: wrap;
    color: #222;
    text-decoration: none;
}

.posts-aside ul li a h3 {
    line-height: 18px;
}

.posts-aside ul li a figure {
    width: 80px;
    margin-right: 10px;
}

.posts-aside ul li a div {
    width: calc(100% - 90px);
}

.post-date {
    display: block;
    margin-top: 10px;
    color: #85c977;
}
/* End homepage CSS
--------------------------------------------------------------------------------------------------*/

/* Start list style CSS
--------------------------------------------------------------------------------------------------*/
.top-banner {
    position: relative;
    padding: 120px 0;
    margin-bottom: 50px;
    text-align: center;
    background-image: url('../img/bgi/8.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    border-bottom: 1px solid #85c977;
}

.top-banner h1 {
    color: #000;
    font-size: 32px;
    line-height: 40px;
}

.post-list {
    display: flex;
    flex-wrap: wrap;
}

.post-list li {
    width: calc(100% / 3 - 20px);
    margin-right: 30px;
    margin-bottom: 30px;
}

.post-list li:nth-child(3n) {
    margin-right: 0px;
}

.post-list li a {
    display: block;
    height: 100%;
    text-decoration: none;
    color: #222;
    border: 1px solid #ddd;
    text-align: center;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.post-list li a:hover {
    box-shadow: 0px 5px 10px 0px rgba(0,0,0, .1);
}

.post-list li figure {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 300px;
}

.page-template-page-galerie .post-list li figure {
    height: auto;
}

.post-list li div {
    padding: 15px 30px;
}
/* End list style CSS
--------------------------------------------------------------------------------------------------*/

/* Start single CSS
--------------------------------------------------------------------------------------------------*/
.single header {
    border-bottom: 1px solid #85c977;
}

.single header:after {
    display: none;
}

.container-small {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
    padding: 0px 15px;
}

.single-title {
    margin: 50px 0px;
    font-size: 28px;
    line-height: 32px;
    text-align: center;
}

.list-file li:first-child {
    border-top: 1px solid #ddd;
}

.list-file li {
    border-bottom: 1px solid #ddd;
}

.list-file li a {
    position: relative;
    display: flex;
    align-items: center;
    padding: 20px 0px;
    color: #000;
    text-decoration: none;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.list-file li a:hover {
    color: #85c977;
}

.file-icon {
    margin-right: 20px;
}

.gallery-container {
    display: flex;
    flex-wrap: wrap;
}

.gallery-grid { 
    width: calc(100% / 3);
}

.gallery-grid {
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.gallery-grid a {
    display: block;
    overflow: hidden;
}

.gallery-grid a img {
    display: block;
    width: 100%;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.gallery-grid a:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

.gallery-sizer { 
    width: calc(100% / 3);
}

.fancybox-show-thumbs .fancybox-inner {
    right: 0;
    bottom: 95px;
}

.fancybox-thumbs__list {
    margin: 0 auto;
}

.fancybox-bg,
.fancybox-is-open .fancybox-bg {
    opacity: 1;
    background: rgba(0, 0, 0, .5);
}

.fancybox-thumbs__list a:before {
    border: 1px solid #000;
}

.fancybox-infobar {
    font-size: 16px;
    color: #333545;
    opacity: 1;
    visibility: visible;
    mix-blend-mode: unset;
}

.fancybox-toolbar {
    opacity: 1;
    visibility: visible;
}

.fancybox-button.fancybox-button--close {
    background: transparent;
    width: 60px;
    height: 50px;
    color: #666;
    opacity: 1;
    visibility: visible;
}

.fancybox-button.fancybox-button--close:hover {
    color: #000;
}

.fancybox-navigation .fancybox-button {
    opacity: 1;
    visibility: visible;
}


.fancybox-button.fancybox-button--zoom {
    display: none !important;
}

.fancybox-thumbs {
    top: auto;
    width: auto;
    bottom: 0;
    left: 0;
    right: 0;
    height: 95px;
    padding: 10px 10px 5px 10px;
    box-sizing: border-box;
    background: #fff;
}

.fancybox-button {
    background: #000;
}
/* End single CSS
--------------------------------------------------------------------------------------------------*/

/* Start contact CSS
--------------------------------------------------------------------------------------------------*/
.contact-info-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.contact-info-col {
    width: 48%;
}

.contact-info-inner {
    position: relative;
    margin-bottom: 30px;
    padding-top: 15px;
    padding-left: 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.contact-info-col .icon {
    position: absolute;
    left: 0;
    top: 0;
    width: 50px;
    height: 50px;
    border-radius: 25px;
    line-height: 50px;
    text-align: center;
    background: #85c977;
}

.contact-info-col .icon i {
    line-height: 50px;
    font-size: 24px;
    color: #fff;
}

.contact-info-col h3 {
    color: #000;
}

.contact-info-col a {
    text-decoration: none;
    color: #777;
}

.contact-form .row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.contact-form .full-row {
    margin-bottom: 20px;
}

.contact-form .col {
    width: 49%;
}

.contact-section .contact-form {
    max-width: 600px;
    width: 100%;
    margin: 50px auto;
}

.contact-section .contact-form input[type="submit"].wpcf7-form-control {
    margin: 0;
}

.contact-container {
    margin-top: 50px;
}

.contact-inner {
    display: flex;
    justify-content: space-between;
}

.contact-form h2 {
    text-align: center;
    margin-bottom: 20px;
    font-size: 28px;
    line-height: 34px;
}

.wpcf7-form-control-wrap {
    display: block;
}

.contact-form input[type="text"], .contact-form input[type="email"] {
    display: block;
    padding: 0px 15px;
    height: 40px;
    width: 100%;
    -webkit-box-shadow: inset 0px 0px 0px 1px #ddd;
    box-shadow: inset 0px 0px 0px 1px #ddd;
    font-size: 14px;
    color: #000;
    border: 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.contact-form br {
    display: none;
}

.contact-form form textarea {
    display: block;
    padding: 15px;
    height: 190px !important;
    width: 100%;
    -webkit-box-shadow: inset 0px 0px 0px 1px #ddd !important;
    box-shadow: inset 0px 0px 0px 1px #ddd !important;
    font-size: 14px;
    line-height: 20px !important;
    color: #000;
    border: 0px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    outline: none;
    resize: none;
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.contact-form form .form-row > p {
    width: 100%;
}

.contact-form .bordered-btn {
    display: block;
    margin: 20px auto 0px;
}

.contact-form input[type="text"]:focus,
.contact-form input[type="email"]:focus,
.contact-form form .form-row textarea:focus {
    -webkit-box-shadow: inset 0px 0px 0px 1px #000 !important;
    box-shadow: inset 0px 0px 0px 1px #000 !important;
}

.wpcf7-form-control-wrap.recaptcha {
    margin: 20px 0px;
}

.contact-form {
    margin-bottom: 50px;
}

.wpcf7-not-valid-tip {
    display: none !important;
}

.contact-form input[type="text"].wpcf7-not-valid,
.contact-form input[type="email"].wpcf7-not-valid,
.contact-form form textarea.wpcf7-not-valid {
    -webkit-box-shadow: inset 0px 0px 0px 1px #f79090 !important;
    box-shadow: inset 0px 0px 0px 1px #f79090 !important;
}

.contact-form .wpcf7 form.invalid .wpcf7-response-output,
.contact-form .wpcf7 form.unaccepted .wpcf7-response-output {
    border: 0px;
    font-size: 12px;
    text-align: center;
    color: #f79090;
}

.contact-form .wpcf7 form.sent .wpcf7-response-output {
    border: 0px;
    font-size: 12px;
    text-align: center;
    color: #000;
}

div.wpcf7 .ajax-loader {
    display: none !important;
}
/* End contact CSS
--------------------------------------------------------------------------------------------------*/