/*
Theme Name: Mighty Fine Roofing 2025
Theme URI: https://proximatesolutions.com/professional-web-design-portfolio/
Author: Proximate Solutions
Author URI: https://proximatesolutions.com/
Description: Wordpress theme designed for Mighty Fine Roofing 2035.
Version: 1.0.2
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mightyfineroofing2025
Tags: one-column, two-columns, custom-menu, featured-images, left-sidebar, right-sidebar
*/
:root {
  --grey:#eeeeee;
  --grey_dark:#353E3E;
  --green:#82CEC0;
  --green_dark:#75c0b3;
  --green2:#05745F;
  --green2-hov:#118f77;
  --red:#ED1F24;
  --danger: #ff0000;
  --danger-dark: #e50404;
  --blue: #003a80;
  --blue_dark: #00234d;
  --light_bg :#d0c3b1;
  --dark:#212121;
  --heading_font:"Six Caps", sans-serif;
  --font1:"Oswald", sans-serif;
  --font2:"Roboto", sans-serif;
}
body{font-family:var(--font2); font-weight: 400; overflow-x: hidden;  }
a{color:var(--danger);-webkit-transition:all linear .3s 0s; transition:all linear .3s 0s;text-decoration:none;}
a:hover{color:var(--danger-dark);text-decoration:underline}
a:focus,button:focus{text-decoration:none;outline:0;}
a.under, span.under a { text-decoration:underline !important;}
h1,h2 {font-family: var(--heading_font); letter-spacing: 0.05em; text-transform:uppercase; -webkit-text-shadow: rgba(0, 0, 0, 0.1) 0  10px 10px; text-shadow: rgba(0, 0, 0, 0.1) 0  10px 10px; }
img {max-width: 100%;}

.default_shadow {-webkit-box-shadow: 0 50px 50px -20px rgba(0,0,0,.3); box-shadow: 0 50px 50px -20px rgba(0,0,0,.3);}
.default_shadow2{box-shadow:0 49px 40px -46px rgba(0,0,0,.25)}
.default_shadow_bottom { box-shadow: 0 50px 20px -20px rgba(0, 0, 0, .3);}

.pull-left { float:left;}
.pull-right { float:right;}
.alignleft { float:left; margin:0 15px 10px 0; border-radius: 8px;}
.alignright { float:right; margin:0 0 10px 15px; border-radius: 8px;}
.alignleft img { border-radius: 8px;}
.alignright img { border-radius: 8px;}
.aligncenter { text-align:center; margin:0 auto 10px; display:block;}
.alignnone { float:none;}
.wp-caption { border:1px solid #ddd; text-align:center; background-color:#f3f3f3; margin-bottom:1rem; padding:4px; max-width:100%; border-radius:4px; -webkit-border-radius:4px;}
.wp-caption img { margin:0; padding:0; border:0;}
.wp-caption p.wp-caption-text { font-size:12px; padding:0 5px; margin:0;}
.sticky {}
.gallery-caption {}
.bypostauthor {}
.br-0 { border-radius:0; -webkit-border-radius:0;}
.clear { clear:both;}
.mrb-10 { margin:0 10px 10px 0;}
.form-group { margin-bottom:1rem;}

h1 {font-size:120px; font-weight:normal;}
h2, .h2 {font-size:4.25rem; font-weight:normal; text-transform:uppercase;}

h3,h4, h5{font-family:var(--font1);text-transform:uppercase;}
h3 {font-size:2em;}
h4 {font-size:1.5em;}
h5 {font-size:1.25em;}
h6 {font-size:1.5em;}

.grey_bg {background: var(--grey);}

.btn_styled {padding:10px 20px 6px;   line-height: 1.6; text-transform: uppercase;}
.btn_styled2 {padding:10px 20px;  width:auto; font-size: 15px; text-transform: uppercase;}
.btn_styled { font-size: 18px;}
.btn { position: relative;}
.btn i {position: absolute; right:18px; top:9px; -webkit-transition: all linear 0.3s 0s; transition: all linear 0.3s 0s;}
.btn:hover i {-webkit-transform: rotate(90deg); transform: rotate(90deg);}
.clear{clear: both; overflow: hidden;}
section{padding: 80px 0;}
.btn,.btn:hover,.btn:focus {box-shadow:none;outline:none; text-decoration: none;}

.form-control,
.form-control:hover,
.form-control:focus,
input:hover,
input:focus {outline:none; box-shadow: none;}
.form-control:hover,
.form-control:focus{border-color: #333;}

.btn-danger {background: var(--danger); border-color: var(--danger); color: white;}
.btn-danger:hover, .btn-danger:focus {background: var(--danger-dark); border-color: var(--danger-dark);color: white;}

.btn-secondary {background: var(--grey); border-color: var(--grey); color: white;}
.btn-secondary:hover, .btn-secondary:focus {background: var(--grey_dark); border-color: var(--grey_dark);color: #000;}

.text-success {color: var(--green) !important;}
.btn-success {background: var(--green); border-color: var(--green); color: var(--grey_dark);}
.btn-success:hover, .btn-success:focus {background: var(--green); border-color: var(--green);color: #000;}

.btn-primary {background: var(--blue); border-color: var(--blue); color: white;}
.btn-primary:hover, .btn-primary:focus {background: var(--blue_dark); border-color: var(--blue_dark);color: #fff;}

.text-success2 {color: var(--green2) !important;}
.btn-success2 {background: var(--green2); border-color: var(--green2); color: white;}
.btn-success2:hover, .btn-success2:focus {background: var(--green2-hov); border-color: var(--green2-hov);color: white;}

header {position: absolute; left:0; top:0; right:0; z-index: 99; padding:20px 0;}
header .container {max-width: 1600px; margin: 0 auto;}
.herocontact_info h4 a,.get_a_quote_section h2 a { color: #fff;text-decoration: none;}

.top_bar {padding: 20px 0 0; display: block; text-align: center;}
.logo {position: relative; display: inline-block; top: -4px;}
.logo img {width:250px;}

.heading{margin-bottom: 30px;}

.top_header_right {float: right;}
.google_review_top{text-align: center; color: white;  max-width: 358px; margin: 0 auto;}
.google_review_top .text {line-height: 1.2; text-align: left;}
.google_review_top .text small{font-size: 21px;display: block;}
.google_review_top .text span{font-size: 25px; }

.review_top_wrapper ul {list-style: none; margin: 0; padding: 0; text-align: center;}
.review_top_wrapper ul li {display: inline-block; margin: 0 7px; vertical-align: middle;}
.review_top_wrapper ul li img{height: 66px;}
.review_top_wrapper ul li.review_top_text {line-height: 1.2; text-align: left; color: white;}
.review_top_wrapper ul li.review_top_text small{font-size: 21px;display: block;}
.review_top_wrapper ul li.review_top_text span{font-size: 25px; }

.top_phone {display: inline-block; vertical-align: middle;  line-height: 1.1; color: white; text-align: left;}
.top_phone a{color: white; font-size: 21px; font-weight: 400; }
.top_phone small{display: block;}
.top_phone img, .top_phone i.bi{display: inline-block; margin-right: 5px; position: relative; width: 25px; font-size: 23px;}

ul.top_featured {padding: 0; margin: 25px 0 0; list-style: none; display: flex; flex-wrap: wrap; max-width: 500px;}
ul.top_featured li {flex: 50%; max-width: 50%; margin: 0 0 10px;}
ul.top_featured li i {margin: 0 10px 0 0; color: var(--green);}

.top_btn {display: inline-block;  margin-right: 15px;}

.menu_bar2,.top_phone_icon {display: none;}

#menu {padding:0;text-align: center; }
#menu ul{list-style:none;margin:0;padding:0;}
#menu ul li{display:inline-block; position:relative;}
#menu ul li:last-child {margin-right:0; }
#menu ul li a{color:white; padding:0 15px; display:block; text-decoration:none; position:relative; font-size:17px; }
#menu li > a:after { content: '\F282'; font-family: bootstrap-icons; margin-left:5px; position: relative; top: 3px; }
#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: var(--green);}
#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:#404040}
#menu li.active ul li a:hover{color:#fff;background:var(--primary-hover);}
#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;}
#menu li>ul li{ display:block; position:relative; margin:0; text-align:left;}
#menu li>ul li a{color:#333; border-right:0; white-space: normal;}
#menu li>ul li a:after { content: '\F285'; font-family: bootstrap-icons; position: absolute; right:15px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); font-size: 14px; }
#menu li>ul li a:hover{color:var(--dark)!important; text-decoration:underline!important; }
#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{color:var(--dark); text-decoration:underline;}
#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; background-color: #f4f4f4; padding:10px; -webkit-border-radius:0; border-radius:0;}
#menu li:hover>ul{visibility:visible;opacity:1}
#menu li>ul li a{padding:3px 5px; transition:all linear .2s 0s;-webkit-transition:all linear .2s 0s; font-weight: 400; font-size: 14px;}
#menu li>ul li a:hover {text-decoration: underline;}
#menu li>ul li:hover a {color:var(--dark);}
#menu li>ul li:hover ul li a {color:var(--dark);}
#menu li>ul li ul li a:hover {color:var(--dark);}
@keyframes menu_sticky {
  0%   {margin-top:-240px;}
  50%  {margin-top: -90px;}
  100% {margin-top: 0;}
}
#menu ul li a.btn {color: #fff; padding: 6px 20px; margin-left:10px; position: relative;  top:0;}
#menu ul li a.btn:hover {top:-5px;}

header.sticky {margin:0; position: fixed; top:0; left:0; width:100%; z-index:9; animation-name:menu_sticky; animation-duration: 0.60s; animation-timing-function:ease-out; background-color: black; -webkit-box-shadow:rgba(0,0,0,0.1) 0 0 10px; box-shadow:rgba(0,0,0,0.1) 0 0 10px; z-index: 99; padding: 15px 0; }
header.sticky .logo img{max-width: 166px;}

.hero_banner{position:relative;display:block;height:100vh;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;background-position:center;width:100%; overflow: hidden;}
.hero_banner:before{position:absolute;left:0;right:0;top:0;bottom:0;background-color:rgba(0,0,0,0.6);content:""}
.hero_banner video{position:absolute;width:100%;height:120vh;top:-10%;z-index:-1; background-size:cover;}

.hero_caption {color: #fff; position: absolute; left:50%; top:55%;  transform: translate(-50%,-50%); width:100%;  z-index: 2; }
.hero_caption h1 {margin-bottom: 20px; line-height: 1.15em; color: var(--green); font-size: 5.2rem; font-weight: 400; text-transform: uppercase; }
.herocontact_info {position: relative; text-align: right;}
.herocontact_info h3 {font-weight: 400;}
.hero_caption .center_heading {padding-bottom: 15px;}
.herocontact_info p {margin:0; font-size: 18px; line-height:24px;}
ul.banner_list {list-style: none; margin: 0; padding: 0; overflow: hidden;}
ul.banner_list li {position: relative; padding-left: 50px; font-size: 2rem; background: url(images/icons/tick.png) 0 12px no-repeat;}
.banner_form_wrapper {position: relative;}
.circle_text {position: absolute; right:-85px; bottom: 92px;}

@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -ms-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -ms-transform: rotate(360deg);
    -moz-transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
    -o-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.rotating {  -webkit-animation: rotating 15s linear infinite;
  -moz-animation: rotating 15s linear infinite;
  -ms-animation: rotating 15s linear infinite;
  -o-animation: rotating 15s linear infinite;
  animation: rotating 15s linear infinite;}

  @keyframes elementMoveY {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-20px); /* Adjust this value to change movement distance */
  }
}

.hero__shape-arrow {text-align: left;}
.hero__shape-arrow img{animation: 2s ease-in-out infinite alternate elementMoveY;}

.banner_form {border-radius: 30px; position: relative; max-width: 458px; background-color: white; color: black;}
.banner_form_top{text-align: center; padding: 20px ; padding-bottom: 10px; }

.banner_form div.wpforms-container-full {margin-top: 0;}
.banner_form_top h3{ font-family: var(--font1); font-weight: 500;}
.banner_form_top h3 span{ display: block; font-size:70%; }
.banner_form .inner {padding:0 30px 30px;}
.banner_form .form-control{ background-color: transparent; margin-bottom: 10px; border-color: #ddd;  box-shadow: none;font-family: var(--font1); border-radius: 7px;}
  .banner_form .wpforms-form input{background-color: transparent ;border-color: #ddd;  box-shadow: none;font-family: var(--font1); border-radius: 7px !important; }


   div.wpforms-container-full .wpforms-form input, div.wpforms-container-full .wpforms-form input[type="text"], div.wpforms-container-full .wpforms-form select, div.wpforms-container-full .wpforms-form textarea{border-radius: 7px !important;}




  .banner_form div.wpforms-container-full .wpforms-form textarea.wpforms-field-large { height: 110px !important; border-radius: 7px;border-color: #ddd; }
 .banner_form .wpforms-field-large{  margin-bottom: 15px; }

 .banner_form div.wpforms-container-full .wpforms-form button[type="submit"], div.wpforms-container-full .wpforms-form button[type="submit"] {background-color: var(--danger)!important; border-color: var(--danger)!important; color: white!important;font-size: 18px; padding: 10px 20px 6px; text-transform: uppercase; border-radius: 7px}
 .banner_form div.wpforms-container-full .wpforms-form button[type="submit"]:hover, div.wpforms-container-full .wpforms-form button[type="submit"]:focus, div.wpforms-container-full .wpforms-form button[type="submit"]:hover,  div.wpforms-container-full .wpforms-form button[type="submit"]:focus{background-color: var(--danger-dark)!important; border-color: var(--danger-dark)!important;}

.banner_phone{font-size: 16px; color: black;font-family: var(--font1); line-height: 1.1;}
.banner_phone p {padding: 0;margin: 0;}
.banner_phone a{color:var(--red); font-size: 30px;}

.scrolling-text-container {background: var(--green); padding: 12px 0; text-align: center; color: black; overflow: hidden;}
.scrolling-text-inner {display: flex; white-space: nowrap; font-size: 16px; font-weight: 400; font-family: var(--font1); padding: 8px 0;}
.scrolling-text { display: flex;}
.scrolling-text-item { padding: 0 30px; }
.scrolling-text-item i{font-size: 7px; margin-right: 7px; position: relative; top: -4px;}
.scrolling-text-inner > div { animation: var(--direction) var(--marquee-speed) linear infinite;}
.scrolling-text-container:hover .scrolling-text-inner > div { animation-play-state: paused;}

@keyframes scroll-left {
  0% {
      transform: translateX(0%);
  }
  100% {
      transform: translateX(-100%);
  }
}

@keyframes scroll-right {
  0% {
      transform: translateX(-100%);
  }
  100% {
      transform: translateX(0%);
  }
}

.banner_bar {background-color: var(--green); color: white; color: black; padding: 40px 0; text-align: center; }
/* .col_item img {border-radius: 15px; box-shadow: rgba(0, 0, 0, .3) 1px 2px 5px; margin-bottom: 15px;}
.col_item h4 {font-size: 24px;} */

.counter_block h4 {font-size: 4em; font-weight: 400;}
.counter_block h3, .counter_block h4,.counter_block h5{margin-bottom: 10px; font-family: var(--font1); }
.counter_block h3 .counter-value, .counter_block h4 .counter-value, .counter_block h5 .counter-value {display: inline-block;}
.counter_block h3 span, .counter_block h4 span,.counter_block h5 span{ font-weight:normal; }
.counter_block h6 {font-weight: 400; font-size: 1.25em; margin: 0; }
.about_img {padding-left:70px; position: relative;}

.about_img img{border-radius: 7px;}
.about_img .about__stat{position:absolute;left:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);z-index:10; background:var(--danger);border-radius:10px;color:#fff;max-width:250px; padding: 30px;}
.about__stat a{color: white; font-size: 25px; font-weight: 400; }
.about__stat small{display: block;}
.about__stat img, .about__stat i.bi{display: inline-block; margin-right: 5px; position: relative; width: 25px; font-size: 23px;}

.ab_icon { position: relative; width: 60px; height: 60px; text-align: center; margin-bottom: 12px; border-radius: 100%; background-color: var(--green);}
.ab_icon img {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); height: 35px; }
.services_section {background-color: var(--green2); background-position: center; background-repeat: no-repeat;  background-size: cover; }

.services_item {text-align: center;}
.services_thumb {margin-bottom: 15px;}
.services_thumb img{border-radius: 12px;}
.services_item a {color: white; text-decoration: none;}

h5 small{font-weight: 400;}

.tab_main_wrapper h4 {font-size: 1.25em;}

.sidebar{background-color:#fff;padding: 30px 20px 32px 30px; box-shadow: 0 0 32px 0 rgb(80 80 80 / 10%); border-radius: 8px;}
.nav-tabs{border-bottom:none;flex-direction:column}
.nav-tabs .nav-link{/* border:none;border-radius:0;padding:12px 20px;color:#495057;transition:all .2s;display:flex;align-items:center;gap:10px; */position: relative;text-align: center; padding: 27px 35px 23px 35px; border: 1px solid #eaeaea; border-bottom: 0; width: 100%; border-radius: 0; color: black;}
.nav-tabs .nav-link i{display: block; color: black;}
.nav-tabs .nav-link i img{max-width: 53px;}
.nav-tabs .nav-link:hover{background-color:var(--danger);color:white}
.nav-tabs .nav-link.active{background-color:var(--danger);color:white;font-weight:500;}
.nav-tabs .nav-link.active:before{background: var(--danger); width: 6px; height: 100%; content: ""; position: absolute; left: -33px; top: 0; bottom: 0;}
.nav-tabs .nav-link:hover i, .nav-tabs .nav-link.active i {color: white;}
.nav-tabs .nav-link:hover i img, .nav-tabs .nav-link.active i img{filter: brightness(0) invert(1);}

.tab-content{padding:20px;background-color:#f5f5f5;border-radius:8px;box-shadow:0 0 10px #0000000d;min-height:80vh}
.header{background-color:#fff;box-shadow:0 2px 4px #0000000d;padding:15px 0;margin-bottom:20px}
.card{border:none;box-shadow:0 2px 5px #0000000d;transition:transform .2s}
.card:hover{transform:translateY(-5px)}
.card-header{background-color:#f8f9fa;border-bottom:1px solid #e9ecef;font-weight:500}
@media (max-width: 768px) {
.sidebar{min-height:auto;border-right:none;border-bottom:1px solid #dee2e6}
.nav-tabs{flex-direction:row;overflow-x:auto}
.nav-tabs .nav-link.active{border-right:none;border-bottom:3px solid var(--danger)}
}
.tab_big_image {margin-bottom: 20px;}
.tab_big_image img {border-radius: 12px;  object-fit: cover;}

.title_bar h2, .title_bar p{ margin: 0;}
.title_bar_text {margin: 0 auto; padding: 0 50px;}

.coverage_thumb{margin-bottom: 15px; display: block; position: relative;}
.coverage_thumb img{border-radius: 12px;}

.coverage_item h3 a, .coverage_item h4 a{color: black; text-decoration: none;}
.info_wrapper {background-position: center bottom; background-repeat: no-repeat; position: relative; background-attachment: fixed; color: white; background-size: cover;}
.info_wrapper:after{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ""; background-color: black; opacity: .4;}
.info_wrapper2:after{opacity: .8;}
.info_wrapper2 h2 a{color: var(--green);}
.info_wrapper .container{position: relative; z-index: 1;}
 .why-choose-us__shape { height: calc(100% + 5rem) !important;  transform: translateY(-50%);position: absolute; width: 125%;top: 50%; right: 0; border-radius: 0 200px 200px 0; z-index: -1; background-position: center; background-repeat: no-repeat; background-size: cover; }

.why-choose-us__card{background: #ffffff; border-radius: 8px; padding: 1.5rem 2rem; -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08); position: relative; overflow: hidden; height: 100%; color: black; font-size: 15px;}
.why-choose-us__card ul {list-style: none; margin: 0; padding: 0;}
.why-choose-us__card ul li {line-height: 1.4; position: relative; padding-left: 25px;}
.why-choose-us__card ul li:before{position: absolute; left: 0; top: 5px;  content: '\F26A'; font-family: bootstrap-icons; color: var(--green2); }
.why-choose-us__card ul li+li{margin-top: 12px;}
.why-choose-us__card2{background: var(--grey); border-radius: 8px; padding: 1.5rem 2rem; -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08);  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08); position: relative; overflow: hidden; height: 100%; color: black; }
.why-choose-us__card2 ul {list-style: none; margin: 0; padding: 0;}
.why-choose-us__card2 ul li {line-height: 1.4; position: relative; padding-left: 25px; font-size: 15px;}
.why-choose-us__card2 ul li:before{position: absolute; left: 0; top: 5px;  content: '\F26A'; font-family: bootstrap-icons; color: var(--green2); }
.why-choose-us__card2 ul li+li{margin-top: 12px;}

.choose_block {box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.08); background-color: white; position: relative; border-radius: 8px; padding: 1.5rem 2rem; transition: 0.5s ease; height: 100%;}
.choose_block:after{content: ""; position: absolute; left: 0; bottom: 0; height: 3px; width: 0; background: var(--danger); transition: width 0.5s ease;}
.choose_block:hover:after{width: 100%;}
.choose_block h3, .choose_block h4{font-family: var(--font1);}
.choose_block h4 {font-size: 20px;}

.choice_icon {width: 50px;height: 50px;display: grid; place-items: center;border: 1px solid var(--danger); border-radius: 50%; margin-bottom: 1rem; margin: 0 auto; -webkit-transition: 0.5s ease; transition: 0.5s ease; margin-bottom: 12px; position: relative;}
.choice_icon img{  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); filter: invert(21%) sepia(99%) saturate(7471%) hue-rotate(6deg) brightness(101%) contrast(120%); max-width: 35px;}
.choose_block:hover .choice_icon { background-color: var(--danger);}
.choose_block:hover .choice_icon  img{filter: brightness(0) invert(1);}

.about_img2 {padding-right:70px; position: relative;}
.about_img2 img{border-radius: 8px;}
.about_img3 { position: relative;}
.about_img3 img{border-radius: 8px;}

.about_phone {background: #ffffff; position: absolute; top: 0; right: 0; padding: 10px 1rem; border-radius: 8px; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1); animation: 2s ease-in-out infinite alternate elementMoveY;}
.about_phone i{color: var(--danger);}
.about_phone a{color: black;}

.about-video{display:block;width:73px;height:73px;background:#FFF;position:absolute;left:60%;padding:24px 0 24px 5px;bottom:30%;text-align:center;border-radius:50%;color:black;margin:auto;text-align:center; z-index: 2; line-height: 23px;  animation: 2s ease-in-out infinite alternate elementMoveY; }

.about-video i{font-size:30px;}
.about-video:hover i{color:var(--danger);}
.about-video:before{position:absolute;left:0;top:0;right:0;bottom:0;margin:auto;border:20px solid rgba(255,255,255,0.3);border-radius:50%;content:'';-webkit-animation:move 3s infinite ease-in-out;animation:move 3s infinite ease-in-out}

@-webkit-keyframes move {
0% { -webkit-transform: scale(1) rotate(0deg); transform: scale(1) rotate(0deg); }
 40% {-webkit-transform: scale(1.5) rotate(0.1deg);transform: scale(1.5) rotate(0.1deg); }
}
@keyframes move {
0% { -webkit-transform: scale(1) rotate(0deg);transform: scale(1) rotate(0deg); }
 40% {-webkit-transform: scale(1.5) rotate(0.1deg);transform: scale(1.5) rotate(0.1deg); }
}

.vid_img {position: absolute; bottom: -2rem; right:0; border-radius: 10px; overflow: hidden; max-width: 300px; z-index: 1;}
.project_block img{border-radius: 12px;}

.logo_bar { padding: 40px 0;}
.logo_bar h5{margin: 0;}
.logo_bar ul {list-style: none; margin: 0;  padding: 15px 15px; border-radius: 3px; text-align: center;}
.logo_bar ul li {display: inline-block; vertical-align: middle; padding: 15px 25px; width: 30%; position: relative;}
.logo_bar ul li:first-child{border-left: 0;}
.logo_bar ul li:before{background: #ddd; height: 70px; width: 1px; left: 0; top: 50%; transform: translateY(-50%); content: ""; position: absolute;  }
.logo_bar ul li:first-child:before   {display: none;}
.logo_bar ul li .certify_logo { position: relative;}

.g-6, .gy-6 {--bs-gutter-y: 7rem; --bs-gutter-x: 7rem;}

.cta_block {background: #F3F3F3; padding: 50px 50px 50px 56px; text-align: center; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1); }
.block_stat {text-align: center;}
.block_stat a{color: var(--danger); font-size: 25px; font-weight: 400; }
.block_stat small{display: block;}
.block_stat img, .block_stat i.bi{display: inline-block; margin-right: 5px; position: relative; width: 25px; font-size: 23px;}

.devider_part {position: relative; padding: 30px 0; text-align: center; margin: 20px 0;color: var(--danger);}
.devider_part:before, .devider_part:after{position: absolute; content: ""; height: 25px; width: 1px; background: #ccc; left: 50%; transform: translateX(-50%);}
.devider_part:after{bottom: 0;}
.devider_part:before{top: 0;}

#testimonial_slider .item{color: black;}
#testimonial_slider .item img {width: 118px; height: 118px; object-fit: cover; object-position: center;}
.testimonial_title {color: var(--danger); text-transform: none; font-family: var(--font2);}
#testimonial_slider .item p{font-size: 22px; font-weight: 500; font-style: italic; line-height: 1.7em; margin-bottom: 20px;}
.testi_thumb img { border-radius: 100%;}
.testi_star {margin-bottom: 15px;}
.testi_star i.checked {color: orange;}

#testimonial_slider .owl-dots {  text-align: center;  position: absolute; right: 86px; bottom: 20px;margin-top: 0;}
#testimonial_slider .owl-dots button.owl-dot {width: 35px;height: 7px;margin: 0 5px; opacity: .5; border-radius: 0; box-shadow: 0 3px 3px rgb(0 0 0 / 15%); transform: scale(1) rotate(0); background: var(--danger);}
#testimonial_slider .owl-dots button.owl-dot.active{opacity: 1;}
.post-thumb { margin-bottom: 18px; position: relative;}
.post-thumb img{display: inline-block; width: auto; border-style: solid; border-width: 4px 4px 4px 4px; border-color: var( --danger );}
#testimonial_slider .desc{color: #333; font-size: 14px;}
.testimonial_block{position: relative;}
.testi_quote {position: absolute; right: 30px; top: 35px;}
.testi_quote img{max-width: 70px;}

.btn-light {background: white; border-color: white; color: var(--red);}
.btn-light:hover, .btn-light:focus {background: rgb(252, 252, 252) !important; border-color: rgb(252, 252, 252) !important; color: var(--red) !important}
.btn-outline-light {background: transparent; border-color: white; color: white;}
.btn-outline-light:hover, .btn-light:focus {background: white !important; border-color: white !important; color: var(--red) !important}

.faqs .accordion{--bs-accordion-btn-focus-box-shadow: none; --bs-accordion-btn-bg: white; --bs-accordion-btn-color: black; --bs-accordion-active-color:black; --bs-accordion-active-bg:rgb(238, 238, 238); --bs-accordion-border-width: 0;}
.faqs .accordion .accordion-button{font-size: 25px; font-family: var(--font1); border-radius: 10px; background-color: rgb(238, 238, 238); gap: 15px;
padding-top: 14px; padding-bottom: 20px;}

.faqs .accordion-item:first-of-type>.accordion-header .accordion-button , .accordion-item:last-of-type>.accordion-header .accordion-button.collapsed{border-radius: 10px !important;}
 .faqs .accordion .accordion-item+.accordion-item{margin-top: 20px;} 
.faqs .accordion-button::after {background: none; content: "\F4FE"; font-family: "bootstrap-icons"; transform: none; color: var(--red);}
.faqs .accordion-button:not(.collapsed)::after {background: none; content: "\F2EA"; font-family: "bootstrap-icons"; transform: none; color: var(--red);}

.cta_wrapper {background-color: var(--red); padding:60px; color: white; border-radius: 10px; position: relative;overflow: hidden; margin-bottom: -200px; position: relative; z-index: 9;}
.cta_wrapper p{font-size: 20px;}
.footer_cta_thumb{position: absolute; right: 0;bottom: 0; width: 60%; z-index: -1;}

footer{position: relative; background-position: center; background-repeat: no-repeat; background-size: cover; background-attachment: fixed; font-size: 15px;}
footer:after{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; content: ""; background-color: black; opacity: .8;}
footer .container{position: relative; z-index: 1;}

footer{background-color: black; color: white; padding-top: 300px;}
footer a{color: white;}
.footer_logo{margin-bottom: 10px; display: inline-block;}
.textwidget p {margin-bottom: 5px;}
ul.social_list{list-style: none; padding: 0; margin: 0; margin-top: 40px;}
ul.social_list li{ display: inline-block;}
ul.social_list li{margin-right: 15px;}
ul.social_list li a{ background-color: red; width: 40px; height: 40px; border-radius: 100%; position: relative; display: inline-block; transition: all .2s linear;}
ul.social_list li a img{ width: 20px; height: 20px; object-fit: scale-down; position: absolute; top: 50%; left: 50%; transform: translate(-50% , -50%); filter: invert(99%) sepia(93%) saturate(0%) hue-rotate(122deg) brightness(107%) contrast(100%);}
ul.social_list li a:hover{background-color: white; transition: all .2s linear;}
ul.social_list li a:hover img{filter: invert(19%) sepia(87%) saturate(6670%) hue-rotate(352deg) brightness(97%) contrast(91%);}

ul.footer_contact_list{list-style-type:none; padding: 0; margin: 0;}
ul.footer_contact_list li+li{margin-top: 8px;}
ul.footer_contact_list li{position: relative; padding-left: 28px;}
ul.footer_contact_list li img{position: absolute; left: 0;top: 7px; width: 17px; height: 17px; object-fit: scale-down; filter: invert(99%) sepia(93%) saturate(0%) hue-rotate(122deg) brightness(107%) contrast(100%);}
.footer_title{display: inline-block; position: relative;padding-bottom:10px; margin-bottom: 15px;}
.footer_title::before{ position: absolute; content: ""; left: 0; right: 0; bottom: 0; height: 3px; background-color: var(--red); }

ul.footer-menu{list-style: none; padding: 0; margin: 0; text-align: center; margin-top: 80px; padding: 20px 0; border-top: 1px solid white;}
ul.footer-menu li{display: inline-block; margin: 0 20px; }
ul.footer-menu li a:hover, ul.footer-menu li.active a {color: var(--danger); text-decoration: none;}
ul.footer-menu li.current_page_item a {color: var(--danger); text-decoration: none;}
.copyright_bar{padding: 10px 0; text-align: center; background-color: var(--green); color: black; font-size: 14px; position: relative; z-index: 1;}

.inner_banner{width:100%;height:auto;position:relative;padding:180px 0 80px;background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;text-align:center;color:#fff}
.inner_banner:before{content:"";position:absolute;left:0;top:0;right:0;bottom:0;background-color: rgba(0, 0, 0, 0.5); }
.inner_banner .container {position: relative; z-index: 1;}

.inner_banner h1{margin-bottom:5px;color:#fff;display:inline-block;}
.inner_banner p{font-size: 18px;}
.about_text-block {padding: 15px 10px 15px 25px;border-radius: 5px;  background: rgba(233, 233, 233, 0.41); margin-bottom: 1.5em; margin-top:1.5em;}
.about_text-block p{margin: 0;}
.about_text-block p+p{margin-top: 10px;}
.about_text-block p strong{color: red;}

.banner_form_inner { max-width: 100%; background-color: #333; color: white; border-radius: 15px;}
.banner_form_inner .form-control{background-color: white;}
.sidebar-right #testimonial_slider .item img {width: 92px; height: 92px;}
.sidebar-right .post-thumb img {border-width: 2px;}
.sidebar-right .testi_quote img {max-width: 50px;}
.sidebar-right #testimonial_slider .item p {font-size: 18px;}
.sidebar-right .testimonial_title {font-size: 18px;}
.sidebar-right #testimonial_slider .owl-dots {position: relative; right: inherit; bottom: inherit; margin-top: 20px;}
.services_block {background-color: var(--grey); color: black; border-radius: 15px; padding: 30px;}
.head_icon img{max-width: 28px; margin-right: 7px; display: inline-block; vertical-align: middle;}
.services_block ul{list-style: none; margin: 0; padding: 0; margin-top: 10px;}
.services_block ul li {position: relative;padding: 15px 0px 15px 0; align-items: center; justify-content: space-between;  border-bottom: 1px solid #21212133; margin-bottom:0 !important;}
.services_block ul li a{color: black; display: block;}
.services_block ul li i{position: absolute; top: 8px; transform:rotate(-45deg); right: 0; font-size: 25px;}
.services_block ul li a:hover{color: var(--danger); text-decoration: none;}
.services_block ul li:last-child{border-bottom: 0; padding-bottom: 0;}

.masonry-container{column-count:1;column-gap:1rem;margin:0 auto;padding:1rem}
.masonry-item{break-inside:avoid;margin-bottom:1rem;border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000001a;transition:transform .3s ease}
.masonry-item:hover{transform:translateY(-5px);box-shadow:0 8px 16px #0003}
.masonry-item img{width:100%;height:auto;display:block}
@media (min-width: 576px) {
.masonry-container{column-count:2}
}

.side_img {position: relative; margin-bottom: 20px;}
.side_img img{border-radius: 8px;}
.img_caption {background: #ffffff; position: absolute; bottom:30px; right: 15px; padding: 10px 1rem; border-radius: 8px; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.1); font-size: 14px; border-left: var(--danger) 2px solid;}
.google_map_wrapper{line-height: 0;}
.google_map_wrapper iframe{ width: 100%; height: 400px; filter: grayscale(100%) invert(92%) contrast(83%);}
.page_slider {margin-top: 30px;}
.page_slider .item img{border-radius: 8px;}

.page_slider .owl-prev,
.page_slider .owl-next {position:absolute; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right:0; text-align:center;}
.page_slider .owl-prev {left:15px;}
.page_slider .owl-next {right:15px;}
.page_slider.owl-theme .owl-nav [class*="owl-"] {color:#333; border-radius: 100%; background-color: white; font-size:16px; line-height: 16px; width: 40px; height: 40px; }
.page_slider.owl-theme .owl-nav [class*="owl-"]:hover {color: black;}

.inner_banner_white:before{display: none;}
.blog_item{ margin-bottom: 50px}

.post-date {color: #6c757d;font-size: 0.9rem;margin-bottom: 15px;display: flex;align-items: center; }
.post-date i {margin-right: 8px; }

.blog_item h4 a, .blog_item h5 a{color: black;}
.active>.page-link {text-decoration: none;}
.page-link {color: #333;}
.page-link:hover{color: var(--danger); text-decoration: none;}

.active>.page-link, .page-link.active {background-color: var(--danger); border-color: var(--danger);}
.blog_detail_banner{padding: 80px 0;}
ul.cat_list {list-style: none; margin: 0; padding: 0;}
ul.cat_list li {display: inline-block; position: relative; margin: 0 10px; font-size: 14px;color: rgba(0,0,0,.45);}
ul.cat_list li a{color: rgba(0,0,0,.45);}
ul.cat_list li:before{ content: "|"; margin-right: 15px;}
ul.cat_list li:first-child:before{display: none;}
ul.cat_list li a:hover{color:var(--danger); text-decoration: none;}
.meta-category {border: 2px solid #000; padding: 4px 8px; margin: 5px 6px 0 5px; display: inline-block; transition: all .2s ease; font-size: 14px; line-height: 18px; font-weight: 600; color: #000; border-radius: 5px; margin-bottom: 10px;}
.meta-category:hover {transform: translateY(-3px) !important; color: white; text-decoration: none; border-color: var(--danger); background-color: var(--danger);}

.side_img2 {position: relative; margin-bottom: 20px;}
.side_img2 img{border-radius: 8px;}
.side_img2 .img_caption {left: 15px; right: inherit; }

.author-bio .avatar { border-radius: 100%;}
.author-bio img { width: 80px; height: 80px; margin-bottom: 0; position: absolute; left: 0; top: 0;  display: inline-block; position: relative; vertical-align: middle;}
.author-bio #author-info { vertical-align: middle; display: inline-block; padding-left: 30px; font-size: 23px;}
.author-bio #author-info a {color: black; text-decoration: underline;}
.author-bio #author-info a:hover {text-decoration: none;}

.next_post_link {background-color: #333; display: block; text-align: center;}
.next_post_link  .next-arrow{animation: rightArrowEnd .7s cubic-bezier(0,.2,.1,1) forwards; position: absolute; backface-visibility: hidden; right: -43px; top: 50%; margin-top: -15px; height: 30px; width: 40px; display: block;
  transform: translateX(38px);}

.custom_pagination,.woocommerce-pagination{text-align:center}
.page-numbers{display:inline-block;padding:0;margin:0}
.page-numbers>li{display:inline}
.page-numbers>li>a,.page-numbers>li>span{position:relative;float:left;padding:5px 15px;font-size:14px;margin-left:-1px;line-height:1.42857143;color:#333;text-decoration:none;background-color:#fff;border:1px solid #ddd}
.page-numbers>li:first-child>a,.page-numbers>li:first-child>span{border-top-left-radius:4px;border-bottom-left-radius:4px}
.page-numbers>li:last-child>a,.page-numbers>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}
.page-numbers>li>a:hover,.page-numbers>li>span:hover,.page-numbers>li>a:focus,.page-numbers>li>span:focus{color:var(--danger);background-color:#eee;border-color:#ddd}
.page-numbers>.active>a,.page-numbers>.active>span,.page-numbers>.active>a:hover,.page-numbers>.active>span:hover,.page-numbers>.active>a:focus,.page-numbers>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:var(--danger);border-color:var(--danger)}
.page-numbers .current,.page-numbers .current:hover{z-index:2;color:#fff;cursor:default;background-color:var(--danger);border-color:var(--danger)}
.page-numbers>.disabled>span,.page-numbers>.disabled>span:hover,.page-numbers>.disabled>span:focus,.page-numbers>.disabled>a,.page-numbers>.disabled>a:hover,.page-numbers>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}

.inner_section ol li, .inner_section ul li { margin-bottom:12px;}
.inner_section ul { overflow:hidden;}