html, body {overflow-x:hidden;}
body { font-family: 'Montserrat', sans-serif; overflow-x:hidden; font-size: 17px; line-height: 1.5;}
a {color:#222; transition:all linear 0.3s; -webkit-transition:all linear 0.3s;}
a:hover {color:#999; text-decoration:none;}
a:focus, button:fucs, .btn:focus {text-decoration: none; outline:0; border:0;}
img {max-width:100%; height:auto;}
section {padding:60px 0;}
.btn, .form-control {border-radius:0;}
h1, h2, h3 {font-weight: 500; font-family: 'Montserrat', sans-serif;}
.container {max-width:1320px;}

.heading_underline {position: relative; padding-bottom: 10px; margin-bottom:20px; font-weight: 600;}
.heading_underline:before { content: ""; position: absolute; left: 0; bottom: -3px; height: 1px; width: 100%; max-width: 100px; border-bottom: 5px solid #333;}

.heading_underline_center {position: relative; padding-bottom: 10px; margin-bottom:20px; font-weight: 600;}
.heading_underline_center:before { content: ""; position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: -3px; height: 1px; width: 100%; max-width: 100px; border-bottom: 5px solid #333;}

header {position: absolute; left:0; top:0; right:0; padding:10px 0 0; background-color: #fff;}
.phone_number {position: relative; font-size:24px; font-weight: bold; color: #000; text-decoration: none;}
.phone_number span {font-size:13px; text-transform: uppercase; display: block; font-weight: normal;}
.phone_number span i {font-size:30px; position: relative; top:3px; margin-right:7px;}

.logo {display: inline-block; text-align: center;}
.logo img {height: 110px;}

.menu_bar {background-color: #f5f5f5; display: block; margin-top:10px;}
#menu {padding:0;}
#menu ul{list-style:none;margin:0;padding:0;text-align:center;}
#menu ul li{display:inline-block;position:relative; margin:0 10px;}
#menu ul li:last-child {margin-right:0; }
#menu ul li a{color:#000; padding:15px 5px; display:block; text-decoration:none; position:relative; font-size:16px; text-transform: uppercase; font-weight:600;}
#menu li > a:after { content: '\f107'; font-family:'FontAwesome'; margin-left:5px; }
#menu li > a:only-child:after { margin-left: 0; content: ''; }
#menu ul li a:hover,
#menu ul li.active a,
#menu ul li.current_page_item>a,
#menu ul li.current-menu-ancestor>a,
#menu ul li.current-menu-item>a,
#menu ul li.current-menu-parent>a{color: #999;}
#menu ul li a:hover:before,
#menu ul li.active a:before,
#menu ul li.current_page_item>a:before,
#menu ul li.current-menu-ancestor>a:before,
#menu ul li.current-menu-item>a:before,
#menu ul li.current-menu-parent>a:before {opacity: 1;}
#menu li.active ul li a{color:#fff;background:#000}
#menu li.active ul li a:hover{color:#fff;background:#333}
#menu li>ul{position:absolute;left:0;top:100%;z-index:999;min-width:220px;white-space:nowrap;}
#menu ul li.active ul li a { background:#fff; color:#333; border-bottom:1px solid rgba(0,0,0,0.09)!important;}
#menu li>ul li{background:#fff;border-bottom:1px solid rgba(0,0,0,0.09);display:block;position:relative; margin:0; text-align:left;}
#menu li>ul li a{color:#333;font-size:13px; padding:10px 15px;  border-right:0;  font-weight:500;}
#menu li>ul li a:hover{color:#fff;text-decoration:none}
#menu li>ul li:last-child {border-bottom:0;}
#menu li ul li.current_page_item>a,
#menu li ul li.current-menu-ancestor>a,
#menu li ul li.current-menu-item>a,
#menu li ul li.current-menu-parent>a{background:#333;color:#fff}
#menu>li{border-left:1px solid #999}
#menu>li:first-child,#menu>li.has-submenu+li{border-left:0}
#menu li>ul>li>ul{position:absolute;left:100%;top:0;transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s;visibility:hidden;opacity:0}
#menu li>ul>li:hover>ul{visibility:visible;opacity:1;display:block}
#menu li>ul{transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s;visibility:hidden;opacity:0}
#menu li:hover>ul{visibility:visible;opacity:1}
#menu li>ul li a{padding:0 23px;transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s; font-size:14px;}
#menu li>ul li a:hover {background-color: #333;}
#menu li:hover>ul li a{padding:10px 23px}
#menu li>ul li:hover a {color:#fff;}
#menu li>ul li:hover ul li a {color:#000;}
#menu li>ul li ul li a:hover {color:#333;}
@keyframes menu_sticky {
  0%   {margin-top:-240px;}
  50%  {margin-top: -90px;}
  100% {margin-top: 0;}
}
.menu_bar.sticky {  margin:0;  position: fixed; top:0; left:0; width:100%; z-index:99999; animation-name:menu_sticky; animation-duration: 0.60s; animation-timing-function:ease-out;
  background-color: #fff; box-shadow: rgba(0,0,0,0.1) 0 0 10px; }

.hero_banner {position: relative; background-repeat:no-repeat; background-size:50% 100%; background-position:right; padding:150px 0; margin-top:185px;}
.hero_banner:before {content:""; background-color: rgba(0,0,0,0.9); position: absolute; left:0; top:0; right:50%; bottom:0; z-index: 0;}
.hero_banner h1 {font-size:50px; text-transform: uppercase; display: block; position: relative; color: #fff; margin-right:20px; font-weight: 600;}
.hero_banner p {font-size:20px; color: #fff; position: relative; font-weight: 400; margin-right:30px; display: block;}
.hero_banner .btn {position: relative; padding:8px 20px; text-transform: uppercase;}
.hero_banner .great_trustpilot {margin-top:20px; display: block; position: relative; text-align: center;}

.who_choose_section {position: relative;}
.why_choose_content {padding:70px 0 70px 50px; display: block;}
.why_choose_img {position: relative; background-repeat:no-repeat; background-size:cover; background-position:center; border-bottom:10px solid #111}
ul.dash_list {list-style: none; padding:0; margin:0; display: block; margin-bottom:30px;}
ul.dash_list li {display: block; position: relative; padding-left:25px;}
ul.dash_list li:before {content:""; position: absolute; left:0; top:12px; font-size:18px; width: 12px; background-color: #333; height: 2px;}
ul.dash_list li strong {font-weight: 600;}

.reviews_section {position: relative; background-repeat:no-repeat; background-size:50%; background-position:right; background-color: #f5f5f5; padding-top:0;}
.reviews_content {padding:100px 50px 50px 0; display: block; width: 50%;}

.review_slider_wrapper {flex: 1; position: relative; max-width: 1200px;}
#review_slider {margin-left:-10px; max-width: 1050px;}
.testi_item {background-color: #fff; padding:30px; display: block; -webkit-box-shadow:rgba(0,0,0,0.2) 0 0 10px; box-shadow:rgba(0,0,0,0.2) 0 0 10px; min-height: 480px; position: relative; margin:10px;}
.testi_item h4 {font-size:20px; font-weight: 600;}
.testi_item .testi_author {position: absolute; left:50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom:30px;}

.swiper-button-prev,
.swiper-button-next {right:0; left: auto; top:auto; bottom:5px; color: #000!important; font-size:36px; }
.swiper-button-prev {right:60px;}
.swiper-button-prev:after,
.swiper-button-next:after {background: none!important; display: none!important;}

.about_section {position: relative;}
.about_content {padding:70px 0 70px 50px; display: block;}
.about_img {position: relative; background-repeat:no-repeat; background-size:cover; background-position:center; border-bottom:10px solid #111}

.services_section {position: relative; background-color: #f5f5f5;}
.services_section .container {max-width: 1600px;}
.services_section h2 {text-align: center; position: relative;}
ul.services_list {list-style: none; padding:0; margin:0; display: block; text-align: center; margin-top:30px;}
ul.services_list li {display: inline-block; width:calc(14% - 11px); margin:5px; margin-bottom:15px;}
ul.services_list li .service_item {display: block; color: #000; text-decoration: none; -webkit-transition: all linear 0.2s 0s; transition: all linear 0.2s 0s;}
ul.services_list li .service_item:hover {color: #999;}
ul.services_list li .service_item .thumb {position: relative; display: block; margin-bottom:10px;}
ul.services_list li .service_item .thumb img {object-fit: cover; height: 300px; width: auto; opacity: 1; -webkit-transition: all linear 0.2s 0s; transition: all linear 0.2s 0s;}
ul.services_list li .service_item:hover .thumb img {opacity: 0.7;}
ul.services_list li .service_item h4 {text-align: center; text-transform: uppercase; font-size:13px;}

.video_section {position: relative; padding:0;}
.video_section iframe {margin-bottom:-10px;}
#video {margin-bottom:-10px;}
.contact_info_wrapper {padding:40px 30px 15px;}

footer {font-weight: 300; color: #fff; background: #111; padding: 70px 0 40px; position: relative; left: 0; bottom: 0; width: 100%; z-index: 9; font-size: 14px; line-height: 26px;}
.footer_wrapper { position: relative; z-index:9;}
ul.footer_list {list-style: none; margin: 0; padding: 0;}
ul.footer_list li {display: block; }
ul.footer_list li a{color:#fff; text-decoration:none;}
ul.footer_list li a:hover,
ul.footer_list li.active a,
ul.footer_list li.current_page_item>a,
ul.footer_list li.current-menu-ancestor>a,
ul.footer_list li.current-menu-item>a,
ul.footer_list li.current-menu-parent>a{color:#fff;}
ul.footer_list2 li {width: 50%; float: left;}

ul.social_list  {list-style: none; margin: 0; padding: 0;}
ul.social_list li {display: block; position: relative; padding-left: 30px; }
ul.social_list li a{color: #fff; text-decoration:none;}
ul.social_list li i.icon {position: absolute; left: 0; top: 4px; font-size: 20px;}
ul.social_list li.active a, ul.social_list li a:hover{color: #999;}

.footer_bar {padding-top: 40px; margin-top: 40px; border-top:rgba(0,0,0,0.4) solid 1px;}
.copyright_text {text-align: center;}

ul.contact_list {list-style:none; margin:0; padding:0; overflow:hidden; margin-top: 15px; margin-bottom: 15px;}
ul.contact_list li { position:relative; position:relative; padding-left:23px;  margin-bottom: 10px; }
ul.contact_list li a {transition: all 0.5s;color:#333;}
ul.contact_list li i { position: absolute; left: 0;top: 3px; color: #000;}
ul.contact_list li:last-child {border-bottom: 0; margin-bottom: 0;}
ul.contact_list li a:hover { color: #000;}
ul.contact_list li.info2{padding-left: 0;}

#booking_modal .modal-content {-webkit-border-radius:0; border-radius:0;}
.book_form_wrapper {position: relative; padding:50px;}
.book_form_wrapper .btn_close {position: absolute; right:10px; top:15px; padding:15px; color:#000; font-size:24px;}
.book_form_wrapper h3 {font-weight: 700; text-transform: uppercase;}
.book_form_wrapper label {color: #333; font-weight: bold; text-transform: uppercase; font-size:14px;}
.book_form_wrapper .form-control {height: inherit; padding:10px; font-size:16px;}
.book_form_wrapper .form-control:-ms-input-placeholder,
.book_form_wrapper .form-control::placeholder,
.book_form_wrapper .form-control::-ms-input-placeholder {color: #ccc!important; opacity: 0.1!important;}
.book_form_wrapper .btn {padding:8px 25px; text-transform: uppercase;}
.terms_form {font-size:14px;}
.terms_form a {color: #000; text-decoration: underline;}
.terms_form a:hover {text-decoration: none; color: #999;}

.inner_contents {position: relative; }
.inner_banner {background-repeat:no-repeat; background-size:cover; background-position:center; padding:70px 30px; text-align: center; margin-top:185px; position: relative;}
.inner_banner:before {content:""; position: absolute;left:0; top:0; right:0; bottom:0; background-color: rgba(0,0,0,0.5);}
.inner_banner_contents {position: relative; text-align: center; color: #fff;}
.inner_banner_contents h1 {font-weight: 700; margin:0;}

label.error { color: red; font-style: italic; margin-bottom: 0; font-weight: normal; text-transform: none;}
input.error, select.error, textarea.error { border: 1px solid red!important;}