@import url('https://fonts.googleapis.com/css?family=Lato');
@import url('https://fonts.googleapis.com/css?family=Bitter');
@import url('https://fonts.googleapis.com/css?family=Merriweather');
@import url('https://fonts.googleapis.com/css?family=Raleway:400,500,600,700');
/* defaults */
body, html {
    background: #f8f8f8;
    font-family: 'Raleway', sans-serif;
    margin:0;
    padding:0;
    color: #4d4d4d;
    width: 100%;
    height: 100%;
}
h1, h2, h3, h4, h6 {
    font-family: 'Merriweather', serif;
}
p, h1, h2, h3, h4, h5, h6 {
    color: #4d4d4d;
}
a {
    color: #919d91;
}
a:link, a:visited, a:hover, a:active, a:focus {
    text-decoration: none;
    color: #919d91;
}
a:visited, a:hover, a:active, a:focus {
    color: #919d91;
}
a:hover, button:hover, .btn:hover, .fc-day:hover {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
a:link,
a:visited,
a:hover,
a:active,
a:focus,
a.active,
img:active,
img:focus,
img.active,
button:active,
button:focus,
button.active
.btn:active,
.btn:focus,
.btn.active {  
    background-image: none;
    outline: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
img {
    max-width: 100%;
}

header .vertical-align { display: flex; align-items: center; justify-content: center; flex-direction: row; }
@media only screen and (min-width: 768px) {
    .vertical-align { display: flex; align-items: center; justify-content: center; flex-direction: row; }
}
@media only screen and (max-width: 860px) {
    .ui-datepicker-group { width: 50%; }
}
@media only screen and (max-width: 460px) {
    .ui-datepicker-group { width: 100%; }
}
@media only screen and (max-width: 478px) {
    #calendar h2 { margin-top: 20px; }
}

@media only screen and (min-width: 768px) {
    .row.equal-height-cols { display: flex; }
    .row.equal-height-cols .col-md-6 { flex: 1; }
}

/* customisation */
section.middle {
    padding: 0;
    width: 100%;
    height: 100%;
    display: table;
}
section.middle .container {
    display: table-cell;
    vertical-align: middle;
}

p a {
    color: #A4B59C;
}

h5 {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: bold;
}

.ms-container h5 { text-align: center; }

i.purple { color: #CC66FF; }
i.blue { color: #6699FF; }
i.green { color: #919d91; }
i.grey { color: #a6a6a6; }
i.red { color: #ff7575; }

.underline { position: relative; margin: 0 0 15px 0; padding-bottom: 10px; text-align: center; }
.underline:after { content: ' '; position: absolute; top: 100%; left: 50%; width: 30px; border:2px solid #919d91; border-radius:4px; box-shadow:inset 0 1px 1px rgba(0, 0, 0, .05); transform: translateX(-50%); }

/* header */
header { background: #f2f2f2; }
header .icon-details { float: right; display: table; margin: 0; }
header .icon-details li { display: table-cell; vertical-align: middle; padding: 0 20px; }
header .icon-details li:last-child { padding-right: 0; }
header .icon-details li h4 { margin: 0 0 5px 0; }
header .icon-details li .inner { display: table; }
header .icon-details li i, header .icon-details li .text { display: table-cell; vertical-align: middle; }
header .icon-details li i { color: #919d91; padding-right: 15px; font-size: 30px; }
header .icon-details li .text p:last-child { margin: 0; }

header .logo { margin: 30px 0; }
header .logo img { width: 120px; }

header .menu { background: #919d91; }
header .menu ul { padding: 20px 0; margin: 0; text-align: center; }
header .menu ul li { display: inline-block; margin: 0 15px; font-weight: 600; text-transform: uppercase; } 
header .menu ul li a { padding: 10px; display: inline-block; font-size: 16px; color: #f2f2f2; }
header .menu ul li a::after { content: ''; display: block; width: 0; height: 2px; background: #f2f2f2; -webkit-transition: width .3s; -moz-transition: width .3s; -o-transition: width .3s; transition: width .3s; }
header .menu ul li a.active::after,
header .menu ul li a:hover::after { width: 100%; }
header .menu ul li a:visited, header .menu ul li a:hover, header .menu ul li a:active, header .menu ul li a:focus { color: #f2f2f2; }

header .menu ul li .logo a { padding: 0; }
header .menu ul li .logo a.active::after,
header .menu ul li .logo a:hover::after { width: 0; }

header h1 { font-size: 0; margin: 0; padding: 0; }

/* slide down header */
header.fixed { background: #919d91; position: fixed; top: -149px; left: 0; width: 100%; z-index: 1000; transition:0.4s top cubic-bezier(.3, .73, .3, .74); padding: 5px 0; box-shadow: 0 1px 2px 1px #0000004a; }
header.fixed .logo { margin: 0; }
header.fixed .logo img { width: 50px; }
header.fixed .menu { background: none; }
header.fixed .menu ul { padding: 5px 0; }
header.fixed .menu ul li a { font-size: 12px; }
header.fixed .icon-details { float: none; }
header.fixed .icon-details li { padding: 0 10px; }
header.fixed .icon-details li h4,
header.fixed .icon-details li p,
header.fixed .icon-details li i { font-size: .75em; color: #f2f2f2; }
header.fixed .icon-details li i { padding: 0; font-size: 12px; background: #7d8c7d; border-radius: 50%; width: 25px; height: 25px; line-height: 12px; text-align: center; }
header.fixed .icon-details li .text { padding-left: 5px; }
header.fixed.slide-down { top: 0; }
header.fixed a.side-nav-btn { background: #a5afa4; padding: 8px 15px; }

/* top slider */
.top-slider {  }
.top-slider .slick-slide {
    height: 550px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    display: table;
}
.top-slider .slick-slide .slide-inner { display: table-cell; vertical-align: middle; }
.top-slider .slick-slide .slide-text { position: relative; z-index: 1; }
.top-slider .slick-slide .slide-text.animated { display: none; }
.top-slider .slick-slide .slide-text.animated.activate { display: block; }
.top-slider .slick-slide .slide-text h2, .top-slider .slick-slide .slide-text p { color: #fff; }
.top-slider .slick-slide .slide-text h2 { margin-top: 0; font-size: 36px; }
.top-slider .slick-slide .slide-text p { line-height: 25px; font-size: 16px; }
.top-slider .slick-slide .slide-text .btn { margin-top: 10px; }

.top-slider .slick-slide .overlay { background: #000; opacity: .2; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* sections general */
section { padding: 60px 0; }
section.pattern-bg { background: linear-gradient(rgba(255, 255, 255, .8), rgba(255, 255, 255, .8)), url('../img/pattern.png'); background-size: 180px; }
section .credit { font-size: 8px; margin: 0; opacity: .85; }
section .title { position: relative; margin: 0 0 40px 0; padding-bottom: 15px; text-align: center; }
section .title:after { content: ' '; position: absolute; top: 100%; left: 50%; width: 30px; border:2px solid #919d91; border-radius:4px; box-shadow:inset 0 1px 1px rgba(0, 0, 0, .05); transform: translateX(-50%); }
section.green-bg { background: #919d91; }
section.green-bg .title { color: #fff; }
section.green-bg .title:after { border: 2px solid #fff; }
section.green-bg p { color: #fff; }

/* about */
section.about { position: relative; padding: 120px 0; background-size: cover;background-repeat: no-repeat;background-position: 50% 55%;}
section.about .overlay { background: #000;opacity: .4;position: absolute;top: 0;left: 0;width: 100%;height: 100%; }
section.about .about-text h1, section.about .about-text p { color: #fff; text-align: center; }
section.about .about-text p { font-size: 26px;line-height: 35px; }

/* services */
.service-box { margin: 0 0 30px 0; padding: 30px; border: 1px solid #e0e0e0; background: #fff; box-shadow: 0 4px 5px -2px #e0e0e0; }
.service-box h3 { margin: 0 0 10px 0; }
.service-box p { line-height: 25px; font-size: 16px; }


/* service page */
.service-panel { border: 1px solid #e0e0e0; box-shadow: 0 4px 2px -2px #e0e0e0; background: #fff; margin-bottom: 20px; }
.service-panel h3 { padding: 15px; color: #919d91; font-size: 18px; margin: 0; border-bottom: 4px solid #919d91; }
.service-panel .panel-body p:last-child { margin: 0; }
.service-panel:last-child { margin: 0; }

/* news */
.post { margin-bottom: 25px; }
.post .post-title { padding: 25px; margin-top: 0;  position: relative; background: #919d91; }
.post .post-title h2 { margin: 0; padding-left: 80px; color: #f2f2f2; }
.post .post-title .date { background: #f2f2f22e; position: absolute; top: 0; left: 0;  height: 100%; width: 85px; color: #f2f2f2; text-align: center; }
/*.post .post-title .date:before { position: absolute; top: 50%; left: 0; transform: translateY(-50%); font-family: 'Font Awesome 5 Free'; content: '\f133'; font-weight: 800; color: #f2f2f22e; width: 100%; font-size: 70px; line-height: 70px; text-align: center; display: block; }*/
.post .post-title .date .inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 100%; padding: 0 10px; }
.post .post-title .date span { display: block; }
.post .post-title .date .day-month { text-transform: uppercase; letter-spacing: 2px; font-size: 14px; font-weight: 800; line-height: 14px; }
.post .post-title .date .day-month sup { top: 0; }
.post .post-title .date .year { margin-top: -3px; font-size: 16px; }
.post .text { background: #fff; padding: 25px; border: 1px solid #e0e0e0; border-top: 0; border-bottom: 3px solid #e0e0e0; }
.tags a { background: #919d9124; border-radius: 10px; padding: 5px 10px; margin-right: 5px; }
.post .text .tags { margin-top: 20px; }

/* sticky sidebar */
#sidebar .sidebar-inner h4 { margin: 0; background: #919d91; padding: 15px 25px; color: #fff; }
#sidebar .sidebar-inner .box { margin-bottom: 15px;  padding: 15px 25px; background: #fff; border-left: 1px solid #e0e0e0; border-right: 1px solid #e0e0e0; border-bottom: 3px solid #e0e0e0; }
#sidebar .sidebar-inner .box > ul { margin: 0; padding: 0; }
#sidebar .sidebar-inner .box > ul li { list-style: none; margin-bottom: 15px; cursor: pointer; }
#sidebar .sidebar-inner .box > ul li:last-child { margin-bottom: 6px; }
#sidebar .sidebar-inner .box > ul li:before { font-family: 'Font Awesome 5 Free'; content: '\f105'; font-weight: 800; color: #919d91; padding-right: 5px; }
#sidebar .sidebar-inner .box > ul li span { position: relative; padding-bottom: 6px; }
#sidebar .sidebar-inner .box > ul li span::after { content: ''; display: block; width: 0; height: 3px; background: #919d91; transition: width .9s; position: absolute; bottom: 0; left: 0; }
#sidebar .sidebar-inner .box > ul li span:hover::after, #sidebar .sidebar-inner .box > ul > li.active > span::after { width: 100%; }
#sidebar .sidebar-inner .box.no-padding { padding: 0; }


/*#sidebar .sidebar-inner ul ul { margin: 15px 0 0 10px; }*/

/* accordion */
.panel-default>.panel-heading {
    background-image: none;
    background-color: #fff;
    color: #919d91;
    cursor: pointer;
    font-size: 18px;
    margin: 0;
    position: relative;
}
.panel-default>.panel-heading i { float: right; }
.panel-default>.panel-heading::after { content: ''; display: block; width: 0; height: 4px; background: #919d91; transition: width .9s; position: absolute; bottom: 0; left: 0; }
.panel-default>.panel-heading:hover::after, .panel-default>.panel-heading[aria-expanded="true"]::after { width: 100%; }
.panel-default>.panel-heading[aria-expanded="true"] i { transition: 0.5s; transform: rotate(90deg); }

.panel-group .panel { border-radius: 0; border: 1px solid #e0e0e0; box-shadow: 0 4px 2px -2px #e0e0e0; }
.panel-group .panel+.panel { margin-top: 10px; }

/* details */
ul.details { padding: 0; margin: 0; list-style: none; }
ul.details li { background-color: #fff; padding: 15px; color: #919d91; border: 1px solid #e0e0e0; border-bottom: 2px solid #919d91; margin-bottom: 5px; font-weight: 600; text-transform: uppercase; font-size: 12px; letter-spacing: 1px; }

/* testimonials */
section.testimonials { text-align: center; position: relative; }
section.testimonials:before, section.testimonials:after { font-family: 'Font Awesome 5 Free'; position: absolute; font-size: 5em; color: #fff; font-weight: 900; opacity: .4; }
section.testimonials:before { content: '\f10d'; top: 50px; left: 15%; }
section.testimonials:after { content: '\f10e'; bottom: 50px; right: 15%; }
section.testimonials .testimonial { padding-bottom: 20px; }
section.testimonials .testimonial p { line-height: 25px; font-size: 16px; margin: 10px 0; }
section.testimonials .testimonial .name { margin: 25px 0 0 0; font-family: 'Merriweather', serif; font-size: 20px; }
section.testimonials .testimonial .company { margin: 0; text-transform: uppercase; letter-spacing: 2px; font-size: .8em; }
section.testimonials .slick-dots li.slick-active button:before, section.testimonials .slick-dots li button:before { color: #fff; }

/* team members */
.team-member { margin-bottom: 30px; overflow: hidden; }
.team-member .photo { background-size: cover; background-position: center; background-repeat: no-repeat; width: 100%; height: 360px; -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
.team-member .text { padding: 20px; text-align: center; border: 1px solid #e0e0e0; background: #fff; /*box-shadow: 0 4px 5px -2px #e0e0e0;*/ border-bottom: 3px solid #e0e0e0; position: relative; /*z-index: 999;*/ }
.team-member .text h3 { }
.team-member .text p { margin: 0; }
.team-member .text .job-title { text-transform: uppercase; letter-spacing: 1px; font-size: .8em; }
.team-member .text .email { }

.team-member:hover .photo,
.team-member:active .photo,
.team-member:focus .photo { transform: scale(1.2); }
.team-member .underline:after { -webkit-transition: all 0.5s ease; -moz-transition: all 0.5s ease; -o-transition: all 0.5s ease; transition: all 0.5s ease; }
.team-member:hover .underline:after { width: 100%; }

/* contact */
section.contact-form { background: #fff; margin-left: -15px; padding: 60px 30px; }
.map-col { padding: 0; }

/* footer */
footer .top { background: #fff; padding: 20px 0; }
footer .top p { text-align: right; }
footer .bottom { background: #e0e0e0; padding: 10px 0; text-align: center; border-top: 2px solid #919191; }
footer p { margin: 0; }

footer .icon-details { margin: 0; padding: 10px 0; display: inline-block; }
footer .icon-details li { display: inline-block; padding: 10px 10px 10px 0; list-style: none; }
footer .icon-details li:last-child { padding-right: 0; }
footer .icon-details li h4 { margin: 0 0 5px 0; }
footer .icon-details li .inner { display: table; }
footer .icon-details li i,
footer .icon-details li .text { display: table-cell; vertical-align: middle; padding-left: 5px; }
footer .icon-details li i { color: #f2f2f2; padding: 0; font-size: 12px; display: inline-block; background: #919d91; border-radius: 50%; width: 25px; height: 25px; line-height: 25px; text-align: center; }
footer .icon-details li .text p:last-child { margin: 0; }
footer .icon-details li h4,
footer .icon-details li p { font-size: .85em; color: #4d4d4d; }

/* buttons */
.text-left .btn { margin-right: 5px; }
.text-right .btn { margin-left: 5px; }

.btns-left .dropdown { display: inline-block; }
.btns-right .dropdown { display: inline-block; }
.text-left .dropdown .dropdown-menu { margin-right: 5px; }
.text-right .dropdown .dropdown-menu { margin-left: 5px; }

a.btn { color: #fff; }
.btn { background: #a6a6a6; color: #ffffff; border-radius: 0; letter-spacing: 1px; text-transform: uppercase; padding: 10px 15px; }
.btn:visited, .btn:hover, .btn:active, .btn:focus { color: #ffffff; }
.btn i { background: #ffffff2e; width: 30px; height: 30px; border-radius: 50%; line-height: 30px; font-size: 16px; margin-right: 5px; }
.btn i.icon-right { margin-right: 0; margin-left: 5px; }
.btn:hover i.rotate-on-hover { transition: 0.9s; transform: rotate(360deg); }

.btn.btn-purple, .btn.btn-purple:hover { background: #CC66FF; }
.btn.btn-blue, .btn.btn-blue:hover { background: #6699FF; }
.btn.btn-green, .btn.btn-green:hover { background: #919d91; }
.btn.btn-red, .btn.btn-red:hover { background: #c12e2a; }

.btn.btn-white-outline { border: 3px solid #fff; }

.btn.btn-ghost-purple, .btn.btn-ghost-purple:hover { border: 1px solid #eee; background: #fff; color: #CC66FF; }
.btn.btn-ghost-blue, .btn.btn-ghost-blue:hover { border: 1px solid #eee; background: #fff; color: #6699FF; }
.btn.btn-ghost-green, .btn.btn-ghost-green:hover { border: 1px solid #eee; background: #fff; color: #919d91; }
.btn.btn-ghost-grey, .btn.btn-ghost-grey:hover { border: 1px solid #eee; background: #fff; color: #555; }
.btn.btn-ghost-red, .btn.btn-ghost-red:hover { border: 1px solid #eee; background: #fff; color: #c12e2a; }

.btn.btn-ghost-green.active, .btn.btn-ghost-green.active:hover { border: 1px solid #919d91; background: #919d91; color: #fff; }

/* sidenav */
a.side-nav-btn { float: right; background: #919d91; color: #f2f2f2; padding: 10px 18px; font-size: 25px; }
.sidenav {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    background-color: #f2f2f2f2;
    overflow-x: hidden;
    transition: 0.5s;
}
.sidenav a, .sidenav a:hover, .sidenav a:visited, .sidenav a:active, .sidenav a:focus {
    color: #919d91;
}
.sidenav .closebtn {
    position: absolute;
    top: 0;
    right: 25px;
    font-size: 70px;
} 
.sidenav .inner {
    display: table;
    width: 100%;
    height: 100%;
}
.sidenav .sidenav-links {
    display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding: 0;
}
.sidenav .sidenav-links li {
    display: block;
    text-align: center;
}
.sidenav .sidenav-links a {
    padding: 10px;
    display: inline-block;
    font-size: 35px;
    text-align: center;
    color: #919d91;
    white-space: nowrap;
}
.sidenav .sidenav-links a::after {
    content: '';
    display: block;
    width: 0;
    height: 4px;
    background: #919d91;
    transition: width .3s;
    /* transform: translateX(10%); */
}
.sidenav .sidenav-links a.active::after, .sidenav .sidenav-links a:hover::after, .sidenav .sidenav-links a:active::after, .sidenav .sidenav-links a:focus::after {
    width: 100%;
}

.field-group { margin-bottom: 25px; border-bottom: 1px solid #ddd; padding-bottom: 15px; }
.field-group .remove-group { color: #c12e2a; font-weight: bold; font-size: 12px; margin-left: 5px; }

.req { color: #c12e2a; }

/* forms */
.form-group > label {
	font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
}
.checkbox, .radio {
	margin-top: 0;
}
.form-control { background-color: #f8f8f8; box-shadow: none; border: 1px solid #e0e0e0; border-bottom: 2px solid #ddd; border-radius: 0; color: #4d4d4d; }
select.form-control { -webkit-appearance: none; -moz-appearance:none; appearance: none; /* removes border radius */ color: #8c8c8c; }
select.form-control.selected { color: #4d4d4d; }
textarea { resize: none; }
#email2.form-control { display: none; }
::-webkit-input-placeholder { color: #8c8c8c !important; }
:-moz-placeholder { color: #8c8c8c !important; } /* Firefox 18- */
::-moz-placeholder { color: #8c8c8c !important; } /* Firefox 19+ */
:-ms-input-placeholder { color: #8c8c8c !important; }

/* modals */
.modal-body { padding: 30px; }
.modal-body h3 { margin-top: 0; }
.modal-body p { font-size: 16px; }

/* responsiveness */

/* mobile */
@media only screen and (max-width: 767px) {
    .top-slider .slick-slide .slide-text { text-align: center; }
    
    footer .top img { max-width: 250px; }
    footer .top img, footer .top .btn { margin-bottom: 25px; }
    footer .top, footer .top p { text-align: center; }
}
/* mobile & tablet */
@media only screen and (max-width: 1199px) {
    

}


/* cookie bar */
#gdpr-cookie-message {
    position: fixed;
    right: 30px;
    bottom: 30px;
    max-width: 375px;
    background-color: #4e4e4e;
    padding: 20px;
    border-radius: 5px;
    box-shadow: 0 6px 6px rgba(0,0,0,0.25);
    margin-left: 30px;
    font-family: system-ui;
}
#gdpr-cookie-message h4 {
    color: #fff;
    font-family: 'Merriweather', serif;
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 10px 0;
}
#gdpr-cookie-message h5 {
    color: #fff;
    font-family: 'Merriweather', serif;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 10px;
}
#gdpr-cookie-message p, #gdpr-cookie-message ul {
    color: white;
    font-size: 15px;
    line-height: 1.5em;
}
#gdpr-cookie-message p:last-child {
    margin-bottom: 0;
    text-align: right;
}
#gdpr-cookie-message li {
    width: 49%;
    display: inline-block;
}
#gdpr-cookie-message a {
    color: #919d91;
    text-decoration: none;
    font-size: 15px;
    padding-bottom: 2px;
    border-bottom: 1px dotted rgba(255,255,255,0.75);
    transition: all 0.3s ease-in;
}
/*#gdpr-cookie-message a:hover {
    color: white;
    border-bottom-color: #919d91;
    transition: all 0.3s ease-in;
}*/
#gdpr-cookie-message button,
button#ihavecookiesBtn {
    border: none;
    background: #919d91;
    color: white;
    font-family: 'Merriweather', serif;
    font-size: 15px;
    padding: 7px;
    border-radius: 3px;
    margin-left: 15px;
    cursor: pointer;
    transition: all 0.3s ease-in;
}
/*#gdpr-cookie-message button:hover {
    background: white;
    color: #919d91;
    transition: all 0.3s ease-in;
}*/
button#gdpr-cookie-advanced {
    display: none;
}
#gdpr-cookie-message button:disabled {
    opacity: 0.3;
}
#gdpr-cookie-message input[type="checkbox"] {
    float: none;
    margin-top: 0;
    margin-right: 5px;
}