/*!
Theme Name: Cornerstone Power Solutions
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: cornerstone-power-solutions
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/


@font-face {
    font-family: 'Montserrat-Black';
    src: url("./fonts/Montserrat-Black.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-ExtraBold';
    src: url("./fonts/Montserrat-ExtraBold.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-Bold';
    src: url("./fonts/Montserrat-Bold.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-Light';
    src: url("./fonts/Montserrat-Light.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-Medium';
    src: url("./fonts/Montserrat-Medium.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-Regular';
    src: url("./fonts/Montserrat-Regular.ttf") format("truetype");
}

@font-face {
    font-family: 'Montserrat-SemiBold';
    src: url("./fonts/Montserrat-SemiBold.ttf") format("truetype");
}

@font-face {
    font-family: 'Autogate Sans Regular';
    src: url("./fonts/Autogate Sans Regular.otf") format("opentype");
}


body{
	margin:0px;
	padding:0px;
	font-family: 'Montserrat-Medium';
	color:#000000;
}

h1,h2,h3{
	font-family: 'Montserrat-Bold';
}

p,a,li{
	font-size:16px;
	line-height:30px;
	font-family: 'Montserrat-Regular';
}

img{
	max-width:100%;
}


/* header css */

.announcement_bar {
    background: #6493D8;
    padding: 5px 0px;
}

.announcement_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.announcement_block_left a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #FFFFFF;
}

.announcement_block_left a img {
    margin-right: 7px;
    height: 27px;
}

.announcement_center p {
    margin: 0px;
    color: #fff;
    font-family: 'Montserrat-SemiBold';
    text-transform: uppercase;
    letter-spacing: 0.9px;
    font-size: 14px;
}

.announcement_block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.announcement_block p {
    margin: 0px;
    color: #fff;
    font-family: 'Montserrat-Medium';
}

.announcement_block ul {
    list-style: none;
    padding: 0px;
    margin: 0px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

.announcement_block ul li a {
    display: block;
}

.announcement_block ul li a img {
    height: 27px;
}

.announcement_block ul li a:hover {
    filter: invert(1);
}

section.header_center {
    background: #FFFFFF;
    padding: 7px 0px;
}

.header_center_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.logo_group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.header-logo a {
    display: block;
}

.header-logo img {
    height: 100px;
}

.kohler_logo {
    margin-left: 15px;
    padding-left: 15px;
    border-left: 1px solid #DCDCDC;
}
.kohler_logo img {
    width: 160px;
    height: auto;
}

/*.kohler_logo img {*/
/*    height: 58px;*/
/*}*/

.center_logo_right {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.google_review_logo {
    margin-right: 43px;
}

.google_review_logo img {
    height: 50px;
}

.center_logo_right_block {
    text-align: center;
    margin-right: 39px;
}

.center_logo_right_block p {
    margin: 0px;
    font-family: 'Montserrat-SemiBold';
    font-size: 14px;
    line-height: normal;
    margin-bottom: 3px;
}

.center_logo_right_block a {
    text-decoration: none;
    color: #62B661;
    font-family: 'Montserrat-ExtraBold';
    font-size: 21px;
}

h6.schedule_bg {
    margin: 0px;
    background-repeat: no-repeat !IMPORTANT;
    background-position: center center !IMPORTANT;
    background-size: 100% !IMPORTANT;
    height: 45px;
    width: 219px;
    display: flex;
    align-items: center;
    padding-left: 49px;
    color: #fff;
    font-size: 16px;
    font-family: 'Autogate Sans Regular';
    letter-spacing: 1.6px;
}

.announcement_block_left a:hover {
    color: #000;
}

.button_groups {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.button_groups a {
    line-height: normal;
    height: 50px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-family: 'Montserrat-SemiBold';
    padding: 0px 18px;
    border-radius: 10px;
    min-width: 200px;
}

a.green_button {
    background: #62B661;
    color: #fff;
}

a.green_button:hover {
    background: #47669d;
}

.logo a {
    display: block;
}

.logo {
    display: none;
}

header.site_header {
    background: #47659C;
    position: sticky;
    top: 0px;
    z-index: 999;
    border-top: 4px solid #62B661;
    box-shadow: 0px 3px 6px #00000059;
    padding: 14px 0px;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {
    border-right: 1px solid #ffffff40 !important;
    padding: 4px 15px;
    height: auto;
    line-height: normal;
    font-size: 15px;
    font-family: 'Montserrat-SemiBold';
}

div#mega-menu-wrap-menu-1 {
    background: transparent !IMPORTANT;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link:hover, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link:focus {
    background: transparent;
    color: #62b661;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item.mega-current-page-ancestor > a.mega-menu-link {
    background: transparent;
    color: #62b661;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
    background: transparent;
    color: #62b661;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
    background: #fff;
    font-size: 17px;
    line-height: 39px;
}

#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover, #mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {
    background: #47659c;
    color: #fff;
}

/* header css */

/* hero css */

section.hero_section {
    position: relative;
}

.hero_overlay {
    position: relative;
    z-index: 2;
    min-height: 80vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-top: 50px;
    padding-bottom: 150px;
}

.hero_slider {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
}

.hero_border_bottom {
    position: absolute;
    z-index: 2;
    bottom: -1px;
    left: 0px;
    width: 100%;
}

img.hero_product_image {
    position: absolute;
    z-index: 2;
    right: 3%;
    bottom: -61px;
    width: 402px;
}

img.hero_border {
    width: 100%;
}

img.small_image {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 7vh;
    width: 5vw;
}

.hero_content h5 {
    display: inline-block;
    background: #fff;
    border-radius: 8px;
    padding: 6px 21px;
    font-family: 'Montserrat-SemiBold';
    font-size: 17px;
    letter-spacing: 0.6px;
}

.hero_content h1 {
    color: #fff;
    font-size: 45px;
    line-height: 61px;
    text-shadow: 0 0 20px #62B661;
}

.hero_content h4 {
    color: #fff;
    margin: 15px 0px;
    margin-top: 0px;
    font-size: 23px;
    font-family: 'Montserrat-SemiBold';
    background: linear-gradient(45deg, #FFFFFF00, #FFFFFF61, #FFFFFF00);
    padding: 10px;
}

section.hero_section .swiper-button-next, section.hero_section .swiper-button-prev{
    background-size: contain !IMPORTANT;
    height: 58px;
    width: 58px;
    background-repeat: no-repeat !IMPORTANT;
}

section.hero_section .swiper-button-next:after, section.hero_section .swiper-button-prev:after{
    display:none;
}

section.hero_section .swiper-button-next {
    right: 45px;
}

section.hero_section .swiper-button-prev {
    left: 45px;
}

/* hero css */

/* company section */

section.company_section {
    padding: 50px 0px;
    padding-top: 100px;
    background-size: 92%;
}

h5.sub_heading {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Montserrat-SemiBold';
    font-size: 15px;
    background: #D2E5FF;
    padding: 5px 15px;
    border-radius: 7px;
    color: #000;
}

h5.sub_heading img {
    width: 20px;
}

section.company_section .row {
    align-items: center;
    gap: 25px 0px;
}

.title_text h2 {
    font-size: 35px;
    line-height: 42px;
}

.title_text h4 {
    color: #2D66C3;
    font-family: 'Montserrat-SemiBold';
    font-size: 19px;
}

.title_text .button_groups {
    margin-top: 25px;
}

.form_block {
    margin-left: 12%;
    border: 1px solid #D2E5FFBA;
    border-radius: 21px;
    overflow: hidden;
    background: #FFFFFF;
}

.form_header {
    position: relative;
}

.hero_form_overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 149px;
    text-align: center;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.hero_form_overlay h2 {
    font-size: 27px;
}

.hero_form_overlay p {
    margin: 0px;
    color: #2D66C3;
    font-family: 'Montserrat-Medium';
    letter-spacing: 0.9px;
}

.form_row {
    padding: 27px 20px;
    padding-top: 19px;
    display: flex;
    flex-wrap: wrap;
}

.field_half {
    width: 50%;
    padding: 0px 7px;
}

.input_field input, .input_field select {
    box-shadow: none;
    outline: none;
    width: 100%;
    background: #F4F4F4;
    border: none !IMPORTANT;
    height: 45px;
    padding: 5px 14px;
    border-radius: 7px;
    font-family: 'Montserrat-Regular';
    font-size: 15px;
    color: #000;
}

.input_field span[data-name="Service"] select {
    background-repeat: no-repeat !IMPORTANT;
    background-position-x: 98% !important;
    background-position-y: 15px !IMPORTANT;
    background-size: 17px !IMPORTANT;
}

.input_field span[data-name="Service"] select {
    appearance: none !IMPORTANT;
}

.form_row p {
    margin: 0px;
}

.field_full {
    width: 100%;
    padding: 0px 7px;
}

.input_field {
    margin-bottom: 10px;
}

span.wpcf7-spinner {
    display: none !IMPORTANT;
}

.input_field input[type="submit"] {
    background: #62B661 !IMPORTANT;
    color: #fff;
    font-family: 'Montserrat-SemiBold';
}

.text_center.form_footer {
    width: 100%;
}

.text_center.form_footer p {
    text-align: center;
    color: #62b661;
    font-family: 'Montserrat-SemiBold';
}

.text_center.form_footer p a {
    font-family: 'Montserrat-SemiBold';
    color: #000000;
}

::-webkit-input-placeholder {
  color: #000;
}
::-moz-placeholder {
  color: #000;
}
:-ms-input-placeholder {
  color: #000;
}
:-moz-placeholder {
  color: #000;
}

.text_center.form_footer p a:hover {
    text-decoration: none;
    color: #62b661;
}

/* company section */

/* service css */

img.border_image {
    display: block;
    width: 100%;
}

section.service_section {
    padding: 60px 0px;
}

.service_block {
    border: 1px solid #D2E5FF;
    border-radius: 20px;
    overflow: hidden;
    background: #FFFFFF;
    margin: 7px;
    box-shadow: 0px 0px 10px #84B7FE80;
}

.service_block a {
    display: block;
    text-decoration: none;
    color: #000;
}

.service_content {
    position: relative;
    padding: 23px;
}

.service_content h3 {
    font-family: 'Montserrat-SemiBold';
    font-size: 23px;
    min-height: 60px;
}

.service_content p {
    margin: 0px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.swiper-pagination {
    position: static !IMPORTANT;
    margin-top: 35px;
}

.swiper-pagination span {
    background: #fff;
    height: 12px;
    width: 12px;
    border-radius: 0px;
    transform: rotate(45deg);
    margin-right: 6px !IMPORTANT;
    opacity: 1;
}

.swiper-pagination span.swiper-pagination-bullet-active {
    background: #6493D8;
}

.title_text h3 {
    font-family: 'Montserrat-SemiBold';
    font-size: 25px;
}

/* service css */

/* product css */

section.product_section {
    padding: 70px 0px;
}

.product_block {
    border-radius: 20px;
    overflow: hidden;
    margin: 0px 7px;
	height:100%;
	transition:0.5s;
}

.product_image {
    padding: 15px 39px;
}

.product_image img {
    width: 100%;
    height: 270px;
    object-fit: contain;
}

.product_content {
    background: #8CBDFF;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 20px;
}

.product_content h3 {
    font-size: 20px;
    line-height: 30px;
    flex: 1;
    width: calc(100% - 50px);
    margin: 0px;
    transition: 0.5s;
}

.product_content a {
    transition: 0.5s;
    display: block;
}

.product_block:hover .product_content a {
    transform: rotate(-45deg);
    filter: invert(1);
}

.product_block:hover .product_content h3 {
    color: #fff;
}

section.product_section .row {
    gap: 25px 0px;
}

/* product css */

/* about css */

section.about_us_section {
    margin: 70px 0px;
}

section.about_us_section .row {
    gap: 25px 0px;
    align-items: center;
}

.about_content {
    display: flex;
    flex-direction: column;
    gap: 25px 0px;
    margin-top: 12px;
}

.about_content_row {
    display: flex;
    flex-wrap: wrap;
}

.about_content_icon {
    width: 40px;
    padding-right: 14px;
}

.about_content_data {
    width: calc(100% - 42px);
    padding-top: 5px;
}

.about_content_data p:last-child {
    margin: 0px;
}

.about_text {
    padding-left: 10px;
}

.about_image img {
	width: 100%;
	border-radius: 20px;
	border: 3px solid #6493D8;
}

/* about css */

/* why us css */

section.why_us_section {
    margin: 70px 0px;
}

section.why_us_section .row {
    gap: 25px 0px;
}

.whyus_block {
    height: 100%;
    text-align: center;
    border: 2px solid #47659c24;
    border-bottom: 6px solid #47659c;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    padding: 25px;
    transition: 0.5s;
    background-repeat: no-repeat !IMPORTANT;
    background-position-x: 109% !IMPORTANT;
    background-size: 30% !IMPORTANT;
    background-position-y: 123% !IMPORTANT;
}

.why_us_icon {
    display: inline-block;
    position: relative;
    margin-bottom: 15px;
}

img.why_us_icon_image {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    height: 43px;
}

img.why_icon_bg {
    height: 100px;
}

.whyus_block h4 {
    font-family: 'Montserrat-SemiBold';
    font-size: 22px;
    padding: 0px 11%;
    line-height: 30px;
}

.whyus_block:hover {
    box-shadow: 0px 0px 20px rgba(71 101 156/40%);
}

/* why us css */

/* our process css */

section.our_process_section {
    position: relative;
    padding-top: 103px;
    background-position: center center !IMPORTANT;
}

a.process_logo {
    position: absolute;
    left: 50px;
    top: 25px;
    display: block;
    width: 220px;
}

.process_content {
    position: relative;
    background-color: #00091C;
    border-radius: 20px;
    margin-bottom: -100px;
}

.process_content_inner{
    background-repeat: no-repeat !IMPORTANT;
    background-position: 89% 81% !IMPORTANT;
    background-size: 23% !IMPORTANT;
}

img.process_fave {
    height: 80px;
    right: -33px;
    position: absolute;
    top: -32px;
}

.process_content_inner {
    padding: 45px;
    position: relative;
    padding-bottom: 30px;
}

.process_content_inner ol li {
    font-family: 'Montserrat-SemiBold';
    margin-bottom: 5px;
}

.process_content_inner ol {
    margin: 0px;
    padding: 0px;
    padding-left: 20px;
}

.process_button {
    background: #47659C;
    padding: 25px 45px;
    border-radius: 0px 0px 20px 20px;
}

.process_title {
    margin-bottom: 45px;
}

.process_content_inner:before {
    content: '';
    position: absolute;
    width: 160px;
    height: 75px;
    bottom: 25px;
    background-repeat: no-repeat !IMPORTANT;
    background-size: contain !IMPORTANT;
    right: 32px;
}

section.our_process_section .row {
    gap: 25px 0px;
    margin-bottom: 0px !IMPORTANT;
}

/* our process css */



/* our service area css */

section.service_areas_section {
    padding-top: 155px;
    background-position: center center !important;
    padding-bottom: 100px;
}

.service_area_row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 25px 10px;
}

.service_area_block a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-family: 'Montserrat-Medium';
    font-size: 18px;
    color: #000000;
    background: #D2E5FF;
    border-radius: 10px;
    box-shadow: 0px 3px 0px #6493D8;
    width: 249px;
    padding: 13px;
    transition: 0.5s;
}

.service_area_block a img {
    height: 34px;
    margin-right: 6px;
}

section.feedback_section {
    margin-top: -40px;
    padding-bottom: 70px;
}

.service_area_block a:hover {
    background: #47659c;
    color: #fff;
}

/* our service area css */

/* feedback css */

.feedback_block {
    position: relative;
    border: 2px solid #47659c24;
    border-radius: 20px;
    background: #fff;
    margin-top: 40px;
}

.feedback_inner {
    padding: 25px;
    padding-top: 40px;
}

.feedback_logo {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -38px;
    width: 80px;
}

.feedback_top_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 17px;
}

.rating_stars {
    width: 137px;
}

.year_info {
    color: #929491;
    font-family: 'Montserrat-Regular';
    font-size: 16px;
}

.feedback_border {
    border-top: 4px solid #6493d8;
    border-bottom: 4px solid #6493d8;
    background: #182a35;
    padding: 4px;
    display: block;
}

.feedback_name_row {
    background: #d2e5ff;
    padding: 25px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    border-radius: 0px 0px 20px 20px;
}

.feedback_short {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    background: #2d66c3;
    color: #fff;
    font-family: 'Montserrat-SemiBold';
    font-size: 16px;
    text-transform: uppercase;
    margin-right: 8px;
}

.feedback_name_row h4 {
    margin: 0px;
    font-size: 18px;
    font-family: 'Montserrat-Medium';
    display: flex;
    align-items: center;
    gap: 5px;
    flex: 1;
}

.feedback_name_row h4 img {
    height: 17px;
}

.feedback_content {
    height: 153px;
    overflow: hidden;
}

.feedback_content.active {
    height: auto;
}

a.read_more {
    text-decoration: none;
    color: #62b661;
}

a.read_more:hover {
    color: #000;
}

.feedback_slider .swiper-pagination span {
    background: #D2E5FF;
}

.feedback_slider .swiper-pagination span.swiper-pagination-bullet-active {
    background: #6493D8;
}

/* feedback css

/* video css */

section.video_section {
    margin-top: 70px;
    /* position: relative; */
    margin-bottom: 70px;
}

.video_block {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.video_thumnail_block {
    position: relative;
}

img.satisfaction_image {
    position: absolute;
    right: 20px;
    top: 40px;
    width: 81px;
}

.play_video_button {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

a.play_button {
    width: 50px;
}

.video_data {
    width: 100%;
    display: none;
}

.video_data video {
    width: 100% !IMPORTANT;
    display: block;
}

/* video css */

/* blog css */

section.blog_section {
    padding-top: 220px;
    padding-bottom: 70px;
}

section.blog_section .row {
    gap: 25px 0px;
}

.blog_block {
    border-radius: 20px;
    overflow: hidden;
    background: #fff;
    height: 100%;
    transition: 0.5s;
}

.blog_feature_image a {
    display: block;
}

.blog_feature_image img {
    width: 100%;
    height: 203px;
    object-fit: cover;
    transition: 0.5s;
}

.blog_feature_image {
    border-bottom: 6px solid #2D66C3;
    overflow: hidden;
}

.blog_content {
    position: relative;
    padding: 25px;
}

img.blog_logo {
    position: absolute;
    right: 25px;
    top: -27px;
    width: 40px;
}

.blog_content h2 {
    font-size: 22px;
    line-height: 30px;
}

.blog_content p {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

a.blog_link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #62B661;
    font-family: 'Montserrat-SemiBold';
    transition: 0.5s;
}

a.blog_link img {
    height: 19px;
}

a.blog_link:hover {
    text-decoration: none;
    color: #47659c;
}

a.blog_link:hover {
    gap: 20px;
}

.blog_block:hover .blog_feature_image img {
    transform: scale(1.2);
}

.blog_block:hover {
    box-shadow: 0px 0px 20px rgba(0 0 0/50%);
}

/* blog css */


section.footer_map {
    margin-bottom: -100px;
}

section.footer_map iframe {
    display: block;
    width: 100%;
    height: 400px;
}

section.faq_section {
    margin: 70px 0px;
}

.accordion-item {
    border-radius: 0px !IMPORTANT;
    border: none !IMPORTANT;
    border-bottom: 1px solid #CFCFCF !IMPORTANT;
}

.accordion-item:first-child {
    border-top: 1px solid #CFCFCF !IMPORTANT;
}

.accordion-button {
    background: transparent !IMPORTANT;
    border: none !important;
    box-shadow: none !IMPORTANT;
    padding: 15px 0px !IMPORTANT;
    padding-right: 30px !IMPORTANT;
    color: #000000 !IMPORTANT;
    font-family: 'Montserrat-Medium';
    font-size:17px;
}

.accordion-body {
    padding: 0px;
}

.accordion-button::after {
    position: absolute;
    right: 0px;
    top: 14px;
}

.accordion-button[aria-expanded="true"] {
    font-family: 'Montserrat-SemiBold';
}

/* footer css */

footer.site_footer {
    background-color: #ECF4FF !IMPORTANT;
    padding: 50px 0px;
    position: relative;
}

.footer_cta {
    border-bottom: 1px solid #6493D873;
    padding-bottom: 40px;
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.footer_cta_text {
    flex: 1;
}

.footer_cta_text h2 {
    margin: 0px;
    font-size: 40px;
}

.button_groups a img {
    height: 27px;
    margin-right: 5px;
}

a.blue_button {
    background: #6493D8;
    color: #fff;
}

a.blue_button:hover {
    background: #62b661;
}

.footer_row {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.footer_logo {
    margin-bottom: 13px;
}

.footer_widget h6 {
    font-family: 'Montserrat-SemiBold';
    font-size: 18px;
    line-height: 31px;
    margin-bottom: 15px;
}

.footer_widget h4 {
    color: #47659C;
    font-family: 'Montserrat-SemiBold';
    font-size: 20px;
    margin-bottom: 15px;
}

ul.social_media {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0px;
    margin: 0px;
    gap: 10px;
}

ul.social_media a {
    display: block;
}

ul.social_media a img {
    height: 40px;
}

ul.social_media a:hover {
    opacity: 0.5;
}

.widget1 {
    width: 346px;
}

.widget2 {
    width: 170px;
}

.widget3 {
    width: 284px;
}

.widget4 {
    width: 420px;
}

.footer_widget ul {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

.footer_widget ul a {
    text-decoration: none;
    color: #000000;
}

.footer_widget ul a:hover, .contact_info_data a:hover {
    color: #62b661;
}

.contact_info_row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 12px;
}

.icon_ft {
    width: 46px;
}

.contact_info_data {
    flex: 1;
    padding-left: 10px;
    width: calc(100% - 46px);
}

.contact_info_data a {
    display: inline-block;
    text-decoration: none;
    color: #000;
}

.contact_info_row p {
    margin: 0px;
}

.contact_info_row:last-child {
    margin: 0px;
}

section.copyright_text {
    background: #47659C;
    padding: 7px 0px;
}

section.copyright_text p, section.copyright_text p a {
    text-decoration: none;
    color: #fff;
    margin: 0px;
}

section.copyright_text p a:hover {
    color: #62b661;
}


img.image_footer_top {
    width: 100%;
	display:block;
}

/* footer css */

.process_button a.green_button:hover {
    background: #fff;
    color: #000;
}

.common-hero-banner {
    padding: 80px 0px;
}

.page_title h1 {
    font-size: 36px;
    line-height: 45px;
    margin: 0px;
}

section.faq_page_section {
    margin: 50px 0px;
}

section.solution_sec {
    margin: 60px 0px;
}
.solution_title ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    grid-gap: 15px;
}
.solution_title ul li {
    background-repeat: no-repeat !important;
    background-size: contain !important;
    padding-left: 30px;
    font-family: 'Montserrat-Bold';
}


section.conerstone_section {
    margin: 60px 0px;
}

.conerstone_block {
    height: 100%;
    text-align: center;
    border: 2px solid #47659c24;
    border-bottom: 6px solid #47659c;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    transition: 0.5s;
}

.conerstone_top {
    display: flex;
    flex-wrap: wrap;
    text-align: left;
    align-items: center;
    border-bottom: 2px solid #47659c24;
}

.conerstone_icon {
    background: #D2E5FF;
    height: 105px;
    width: 85px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

.conerstone_icon img {
    height: 55px;
    width: 55px;
    object-fit: contain;
    object-position: center;
}

.conerstone_title {
    flex: 1;
    padding: 10px;
    padding-right: 15px;
    display: flex;
    flex-wrap: wrap;
	flex-direction:column;
}

section.conerstone_section .row > div {
    display: flex;
    flex-wrap: wrap;
}

.conerstone_description {
    padding: 20px;
}

.conerstone_title h4 {
    font-family: 'Montserrat-SemiBold';
    font-size: 19px;
}

.conerstone_title h5 {
    font-family: 'Montserrat-Medium';
    font-size: 15px;
    margin: 0px;
}

.conerstone_description h3 {
    font-size: 19px;
    line-height: 26px;
}

section.conerstone_section .row {
    gap: 25px 0px;
    justify-content: center;
}

section.solution_sec .row {
    gap: 25px 0px;
}

.solution_image img {
    border-radius: 20px;
}

.conerstone_block:hover {
    box-shadow: 0px 0px 20px rgba(0 0 0/20%);
}

body.page-template-why-choose section.blog_section {
    padding: 50px 0px;
}


/* blog detail css start */
section.post__detail {
    margin: 50px 0px;
}
.post__detail article.post p.post-meta {
    margin-bottom: 20px;
}
.post__detail article.post p.post-meta, .post__detail article.post p.post-meta a {
	color: #000000;
	text-decoration: none;
	font-size: 16px;
}
.post__detail .post h2 {
	font-size: 30px;
	margin: 0 0 12px 0;
	color: #000000;
}
.post__detail .post h2 a {
    font-size: 30px;
    margin: 0 0 12px 0;
    color: #CFD752;
    font-family: 'Gilroy-Semibold';
}
.post__detail .post h3 {
	font-size: 26px;
	color: #000000;
	margin: 0 0 12px 0;
}
.post__detail .post h4 {
	font-size: 22px;
	color: #000000;
	margin: 0 0 12px 0;
	font-family: 'Gilroy-Semibold';
}
.post__detail .post h4 a {
	font-size: 22px;
	color: #CFD752;
}
.post-navigation {
    display: none;
}
.sticky-area{
    position: sticky;
    top: 100px;
}
.contact_page_form_data.inquiry_form {
    border: 2px solid #B3E2DD;
    padding: 25px;
}
.contact_page_form_data.inquiry_form {
    height: auto;
	  margin-bottom: 20px;
}
.single__post__sidebar .sidebar__data {
	border: 2px solid #47659c24;
	padding: 25px;
	margin-bottom: 15px;
	border-radius: 15px;
	background: #ffffff !important;
	color: #000000;
}
.sidebar__data h4,
.inquiry_form h2 {
    margin-bottom: 10px;
    color: #000000;
    font-size: 24px !important;
    font-family: 'Montserrat-SemiBold';
}
.search__post__sidebar form {
    display: flex;
    align-items: center;
    position: relative;
}
.search__post__sidebar form input {
    width: 100%;
    height: 45px;
    padding: 10px;
    border-radius: 18px;
    border: 2px solid #47659c24;
    padding-right: 46px;
    font-size: 15px;
}
.search__post__sidebar form button {
    position: absolute;
    right: 0px;
    top: 0px;
    height: 45px;
    background: transparent ! IMPORTANT;
    border: none ! IMPORTANT;
    outline: none ! IMPORTANT;
    color: #000000;
}
ul.category-list-items {
    margin: 0px;
    list-style: none;
    padding: 0;
}
ul.category-list-items li a {
	display: block;
	padding: 12px 0px;
	border-bottom: 1px solid #B3E2DD;
	color: #000000;
	text-decoration: none;
}
.post-content p,
.post-content ul li,
.post-content ol li {
	color: #000000;
}
.post-content ul,
.post-content ol {
	display: flex;
	flex-direction: column;
	grid-gap: 8px;
}
.post-content a {
    color: #CFD752;
    text-decoration: none;
    font-family: 'Gilroy-Bold';
}
.post__detail .post h3 a {
	font-size: 26px;
	margin: 0 0 12px 0;
	font-family: 'Gilroy-Semibold';
}
.blog-faq-main {
    padding-top: 35px;
}

.blog-faq-main .title_text {
    margin-bottom: 30px;
}

.post__detail article.post p.post-meta a {
    font-family: 'Montserrat-SemiBold';
    color: #62b661;
}

.single__post__sidebar .sidebar__data ul {
    list-style: none;
    padding: 0px;
    margin: 0px;
}

.single__post__sidebar .sidebar__data ul li a, .single__post__sidebar .sidebar__data a {
    display: inline-block;
    text-decoration: none;
    color: #000;
}

.single__post__sidebar .sidebar__data ul li a:hover, .single__post__sidebar .sidebar__data a:hover {
    font-family: 'Montserrat-SemiBold';
    color: #62b661;
}

.post-content p a {
    text-decoration: none;
    color: #62b661;
}

/* blog detail css end */

main#primary {
    margin: 50px 0px;
}

main#primary .row {
    gap: 25px 0px;
}

main#primary .blog_block {
    border: 2px solid #47659c24;
}

main#primary .col-xl-4.col-md-6.mb-4 {
    margin: 0px !IMPORTANT;
}

nav.navigation.pagination .nav-links, .pagination-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 10px;
}

nav.navigation.pagination {
    width: 100%;
}

nav.navigation.pagination .nav-links span, nav.navigation.pagination .nav-links a, .pagination-wrapper span, .pagination-wrapper a {
    text-decoration: none;
    min-width: 45px;
    height: 45px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 5px 15px;
    background: #47659c;
    color: #fff;
    border-radius: 5px;
    font-size: 14px;
    font-family: 'Montserrat-Medium';
}

nav.navigation.pagination .nav-links .current, nav.navigation.pagination .nav-links span:hover, nav.navigation.pagination .nav-links a:hover, .pagination-wrapper .current, .pagination-wrapper span:hover, .pagination-wrapper a:hover{
    background: #62b661;
}

section.blog_page_section {
    margin: 50px 0px;
}

section.blog_page_section .row {
    gap: 25px 0px;
}

section.blog_page_section .blog_block {
    border: 2px solid #47659c24;
}

.blog_category_description{
	margin:50px 0px;
}

section.policy_section {
    margin: 50px 0px;
}

.service_se_image img {
    border-radius: 20px;
}

body.page-template-service-details section.service_areas_section {
    padding: 50px 0px;
}

section.service_page_section {
    margin: 50px 0px;
}

section.service_page_section .row {
    gap: 25px 0px;
}

.service_page_image img {
    border-radius: 20px;
}

section.service_page_section .title_text h3 {
    color: #2D66C3;
}

.service_border_block {
    border-top: 4px solid #62b661;
    border-bottom: 4px solid #62b661;
    background: #47659c;
    padding: 4px;
    display: block;
    position:relative;
}

.service_border_block:before {
    content:'';
    position:absolute;
    background-repeat:no-repeat !important;
    height:50px;
    width:50px;
    background-size:contain !important;
    background-position:center center !important;
    right:20px;
    top:-22px;
}

section.service_main_page_section {
    margin: 50px 0px;
}

section.service_main_page_section .row {
    gap: 25px 0px;
}

section.service_main_page_section .service_block {
    margin: 0px;
    height: 100%;
}

/* contact page css */

section.contact_page_section {
    padding: 50px 0px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 92%;
}

.contact_page_block {
    background: #d2e5ff;
    border-radius: 21px;
    overflow: hidden;
    padding: 40px;
    outline: 4px solid #2d66c3;
    border: 4px solid #62b661;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

section.contact_page_section .row {gap: 25px 0px;}

.contact_page_block .title_text {
    margin-bottom: 20px;
}

.contact_info_page .contact_info_footer {
    display: flex;
    flex-direction: column;
    gap: 20px 0px;
}

.contact_info_page_row {
    display: flex;
    flex-wrap: wrap;
}

.contact_info_page_row .contact_info_data h4 {
    font-family: 'Montserrat-SemiBold';
    font-size: 20px;
    color: #47659c;
    line-height: 30px;
}

.contact_info_page_row p {
    margin: 0px;
}

.contact_info_page_row .contact_info_data p, .contact_info_page_row .contact_info_data a {
    font-family: 'Montserrat-Medium';
}

section.contact_page_section .form_block {
    margin-left: 5%;
    outline: 4px solid #2d66c3;
    border: 4px solid #62b661;
}

/* contact page css */

body.page-template-service-areas section.service_areas_section {
    padding-top: 60px;
}

.about_page_content img {
    float: right;
    max-width: 600px; /* Adjust as needed */
    width: 100%;
    height: auto;
    margin: 20px;
    border-radius: 10px;
}

.about_page_content::after {
    content: "";
    display: block;
    clear: both;
}

.about_page_content .button_groups {
    width: 100%;
}

.about_page_content .button_groups img {
    width: auto;
}

section.about_page_section {
    margin: 50px 0px;
}

body.page-template-about-us section.service_areas_section {
    padding: 50px 0px;
}

body.page-template-about-us section.blog_section{
    padding: 50px 0px;
}

/* product page css */

section.product_page_section {
    margin: 50px 0px;
}

body.page-template-products section.feedback_section {
    margin: 50px 0px;
    padding: 0px 0px;
}

.product_block a {
    text-decoration: none;
    color: #000;
    display: block;
}

.product_block h6 {
    margin: 0px;
}

body.page-template-products .product_block {
    border: 2px solid #8cbdff;
    transition: 0.5s;
}

.product_block:hover {
    box-shadow: 0px 0px 20px rgba(0 0 0/20%);
}

.product_block:hover .product_content h6 img {
    filter: invert(1);
    transition: 0.5s;
    transform: rotate(-45deg);
}

.product_content h6 img {
    transition: 0.5s;
}

section.product_page_section .row {
    gap: 25px 0px;
}

/* product page css */


/* product listing css */

section.product_listing_section {
    margin: 50px 0px;
}

section.product_listing_section .row {
    gap: 25px 0px;
}

.product_listing_block {
    border: 1px solid #47659c4f;
    border-radius: 20px;
    overflow: hidden;
    background: #d2e5ff;
    text-align: center;
    height: 100%;
    transition: 0.5s;
}

.product_listing_image {
    height: 210px;
    width: 100%;
    padding: 7px;
    background: #fff;
}

.product_listing_image img{
	height:100%;
	width:100%;
	object-fit: contain;
}

.product_listing_content {
    padding: 15px;
}

.product_listing_content h3 {
    font-family: 'Montserrat-SemiBold';
    font-size: 20px;
}

.product_listing_content h4 {
    font-family: 'Montserrat-Regular';
    font-size: 18px;
}

.product_listing_block:hover {
    box-shadow: 0px 0px 20px rgba(0 0 0/20%);
}

/* product listing css */

body.page-template-products section.blog_section {
    padding: 50px 0px;
}

/* search page css */

section.search_page {
    margin: 50px 0px;
}

.search_page_page {
    padding: 40px;
    background: #47659c;
    border-radius: 20px;
}

form.search_page_block {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

form.search_page_block input {
    flex: 1;
    height: 50px;
    padding: 5px 17px;
    border: none;
    outline: none;
    box-shadow: none;
    border-radius: 10px;
}

form.search_page_block button.page_search_button {
    line-height: normal;
    height: 50px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-family: 'Montserrat-SemiBold';
    padding: 0px 18px;
    border-radius: 10px;
    background: #62B661;
    color: #fff;
    border: none;
    outline: none;
    box-shadow: none;
}

form.search_page_block button.page_search_button:hover {
    background: #fff;
    color: #000;
}

/* search page css */


section.reviews_page_section {
    margin: 50px 0px;
}

section.reviews_page_section .row {
    gap: 15px 0px;
}

body.page-template-reviews section.blog_section {
    padding: 50px 0px;
}
.service_form_block {
    margin-left: 0;
}
.service_form_overlay {
    position: inherit;
    background: #d2e5ff;
}
section.service_contact_form {
    padding: 0 0 80px 0;
}
section.service_faq_sec {
    padding: 40px 0 80px 0;
}

body.page-template-service-details section.feedback_section {
    margin-top: 50px;
}
.service_image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}

@media(max-width:1400px){
	p, a, li {
		font-size: 14px;
		line-height: 25px;
	}

	ul.social_media {
		gap: 5px;
	}

	.announcement_block_left a img, .announcement_block ul li a img {
		height: 22px;
	}

	.announcement_center p {
		font-size: 12px;
		letter-spacing: 0.5px;
	}

	.header-logo img {
		height: 72px;
	}

	.kohler_logo img {
        width: 120px;
    }

	.google_review_logo img {
		height: 42px;
	}

	.center_logo_right_block p {
		font-size: 12px;
		margin-bottom: 0px;
	}

	.center_logo_right_block a {
		font-size: 18px;
	}

	h6.schedule_bg {
		font-size: 13px;
		width: 195px;
		padding-left: 42px;
		margin-top: -7px;
	}

	.button_groups a {
		height: 44px;
		min-width: 150px;
	}

	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {
		font-size: 13px;
	}

	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
		font-size: 14px;
		line-height: 34px;
	}

	header.site_header {
		padding: 10px 0px;
	}

	.hero_content h5 {
		font-size: 14px;
	}

	.hero_content h1 {
		font-size: 39px;
		line-height: 54px;
	}

	.hero_content h4 {
		font-size: 20px;
	}

	.button_groups a img {
		height: 20px;
	}

	section.hero_section .swiper-button-next, section.hero_section .swiper-button-prev {
		height: 45px;
		width: 45px;
	}

	section.company_section {
		padding-top: 68px;
	}

	h5.sub_heading {
		font-size: 14px;
	}

	h5.sub_heading img {
		width: 16px;
	}

	.title_text h2 {
		font-size: 31px;
		line-height: 39px;
	}

	.title_text h4 {
		font-size: 17px;
	}

	.hero_form_overlay h2 {
		font-size: 23px;
	}

	section.service_section {
		padding: 50px 0px;
	}

	.service_content h3 {
		font-size: 18px;
		line-height: 26px;
	}

	.title_text h3 {
		font-size: 22px;
	}

	section.product_section {
		padding: 50px 0px;
	}

	.product_block {
		margin: 0px;
	}

	.product_content h3 {
		font-size: 18px;
		line-height: 28px;
	}

	.product_content a {
		width: 40px;
	}

	.product_image img {
		height: 220px;
	}

	section.about_us_section {
		margin: 50px 0px;
	}

	section.why_us_section {
		margin: 50px 0px;
	}

	.whyus_block h4 {
		font-size: 18px;
		line-height: 27px;
	}

	.service_area_block a {
		font-size: 16px;
		width: 200px;
	}

	.service_area_block a img {
		height: 27px;
	}

	section.feedback_section {
		padding-bottom: 50px;
	}

	section.video_section {
		margin: 50px 0px;
	}

	.blog_content h2 {
		font-size: 18px;
		line-height: 28px;
	}

	section.blog_section {
		padding-bottom: 50px;
	}

	section.faq_section {
		margin: 50px 0px;
	}

	.accordion-button {
		font-size: 16px;
	}

	.footer_cta_text h2 {
		font-size: 34px;
	}

	.footer_widget h6 {
		font-size: 16px;
		line-height: 28px;
	}

	.footer_widget h4 {
		font-size: 18px;
	}

	ul.social_media a img {
		height: 36px;
	}

	.icon_ft {
		width: 36px;
	}

	.contact_info_data {
		width: calc(100% - 36px);
	}

	.widget1 {
		width: 313px;
	}

	.widget2 {
		width: 144px;
	}

	.widget3 {
		width: 247px;
	}

	.widget4 {
		width: 370px;
	}

	.footer_logo img {
		height: 94px;
	}
	
	.post__detail .post h2 {
		font-size: 30px;
	}

	.post__detail .post h3 {
		font-size: 24px;
	}

	.post__detail .post h4 {
		font-size: 20px;
	}
	
	.contact_info_page_row .contact_info_data h4 {
		font-size: 18px;
		line-height: 28px;
	}
	
	.about_page_content img {
		max-width: 445px;
	}
}


@media(max-width:1200px){
	.announcement_center {
		display: none;
	}

	.header-logo img {
		height: 63px;
	}

	.kohler_logo {
		margin-left: 10px;
		padding-left: 10px;
	}

	.google_review_logo img {
		height: 38px;
	}

	.google_review_logo {
		margin-right: 22px;
	}

	.center_logo_right_block {
		margin-right: 20px;
	}

	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {
		padding: 4px 11px;
	}

	.hero_content h5 {
		font-size: 12px;
		padding: 6px 14px;
	}

	.hero_content h1 {
		font-size: 34px;
		line-height: 50px;
	}

	.hero_content h4 {
		font-size: 17px;
	}

	img.hero_product_image {
		right: 3%;
		bottom: -61px;
		width: 330px;
	}

	.title_text h2 {
		font-size: 24px;
		line-height: 30px;
	}

	.hero_form_overlay h2 {
		font-size: 20px;
	}

	.hero_form_overlay {
		height: 109px;
	}

	.input_field input, .input_field select {
		font-size: 14px;
		height: 42px;
	}

	.swiper-pagination span {
		font-size: 10px;
		width: 10px;
	}

	.title_text h3 {
		font-size: 20px;
	}

	.about_content {
		gap: 10px 0px;
	}

	section.why_us_section .row {
		justify-content: center;
	}

	.process_content_inner {
		padding: 21px;
	}

	.process_button {
		padding: 21px;
	}

	.process_content_inner:before {
		width: 108px;
		height: 50px;
	}

	a.process_logo {
		width: 173px;
	}

	img.process_fave {
		height: 60px;
		right: -25px;
		top: -26px;
	}

	.service_area_block a {
		font-size: 14px;
	}

	.service_area_block a {
		width: 178px;
		padding: 10px 10px;
	}

	section.footer_map iframe {
		height: 300px;
	}

	.footer_cta_text h2 {
		font-size: 27px;
	}

	.footer_row {
		gap: 20px 0px;
	}
	
	img.satisfaction_image {
		width: 63px;
	}
	
	.form_block {
		margin-left: 7%;
	}
	
	.input_field span[data-name="Service"] select{
		background-position-y: 12px ! IMPORTANT;
	}
	
	.post__detail .post h2 {
		font-size: 24px;
	}

	.post__detail .post h3 {
		font-size: 22px;
	}

	.post__detail .post h4 {
		font-size: 20px;
	}
	
	.service_content h3{
		font-size:17px;
	}
	
	.contact_page_block {
		padding: 28px;
	}
}


@media(max-width:993px){
	.logo {
		display: block;
	}

	.header_row {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}

	header.site_header {
		background: #fff;
	}

	.header-logo {
		display: none;
	}

	.kohler_logo {
		margin: 0px;
		padding: 0px;
		border: none;
	}

	.logo img {
		height: 70px;
	}

	.mega-menu-toggle {
		background: transparent !IMPORTANT;
	}

	#mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner, #mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before, #mega-menu-wrap-menu-1 .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {
		background: #2d66c3;
	}

	#mega-menu-wrap-menu-1 .mega-menu-toggle + #mega-menu-menu-1 {
		background: #47659C;
	}

	#mega-menu-wrap-menu-1 #mega-menu-menu-1 > li.mega-menu-item > a.mega-menu-link {
		line-height: 30px;
		font-size: 14px;
	}

	button.mega-close {
		display: none !IMPORTANT;
	}

	.google_review_logo img {
		height: 49px;
	}
	
	    .about_page_content img {
			max-width: 290px;
		}
}



@media(max-width:992px){
	.logo_group {
		display: none;
	}

	.google_review_logo {
		margin: 0px;
	}

	.center_logo_right_block {
		margin: 0px;
	}

	.center_logo_right {
		justify-content: space-between;
		width: 100%;
	}

	.hero_content h1 {
		font-size: 24px;
		line-height: 36px;
	}

	.form_block {
		margin: 0px;
	}

	section.company_section .col-md-6 {
		width: 100%;
	}

	img.home_form_image {
		width: 100%;
	}

	.hero_form_overlay {
		height: 189px;
	}

	.hero_form_overlay h2 {
		font-size: 31px;
	}

	.service_content {
		padding: 13px;
	}

	.service_content h3 {
		font-size: 16px;
		line-height: 25px;
	}

	.swiper-pagination span {
		height: 10px;
		width: 10px;
	}

	.title_text h2 {
		font-size: 21px;
		line-height: 30px;
	}

	.process_content {
		margin-bottom: -141px;
	}

	section.service_areas_section {
		padding-top: 200px;
	}

	img.satisfaction_image {
		width: 56px;
	}

	section.copyright_text p, section.copyright_text p a {
		font-size: 13px;
	}

	.rating_stars {
		width: 98px;
	}

	.year_info {
		font-size: 14px;
	}

	.feedback_name_row h4 {
		font-size: 16px;
	}

	.feedback_short {
		font-size: 14px;
		height: 44px;
		width: 44px;
	}

	.feedback_name_row {
		padding: 15px 25px;
	}

	section.video_section .col-md-6 {
		width: 100%;
	}

	.footer_cta_text h2 {
		font-size: 22px;
	}

	.footer_cta_text h2 br {
		display: none;
	}

	.footer_cta {
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
	
	.process_content_inner:before {
	    display: none;
	}
	
	section.contact_page_section .col-md-6 {
		width: 100%;
	}

	section.contact_page_section .form_block {
		margin: 0px;
	}

	.contact_page_block .title_text h2 {
		font-size: 31px;
	}
	
	.product_content h6 img {
		height: 37px;
	}
	
	.product_listing_image{
		height:165px;
	}
	
	.product_listing_content h3{
		font-size:18px;
	}
	
	.product_listing_content h4{
		font-size: 16px;
	}

}

@media(max-width:767px){
	section.header_center {
		display: none;
	}

	.hero_overlay {
		min-height: auto;
	}

	img.hero_product_image {
		width: 166px;
		bottom: 0px;
	}

	.title_text {
		text-align: center;
	}

	.title_text ul, .title_text ol {
		text-align: left;
	}

	.title_text h2 {
		font-size: 26px;
		line-height: 37px;
	}

	section.company_section {
		padding-top: 50px;
	}

	.button_groups {
		justify-content: center;
	}

	.hero_form_overlay h2 {
		font-size: 25px;
	}

	.hero_form_overlay {
		height: 140px;
	}

	.about_content_data {
		text-align: left;
	}

	a.process_logo {
		position: static;
		text-align: center;
		width: 100%;
		margin-bottom: 18px;
	}

	a.process_logo img {
		height: 66px;
	}

	section.our_process_section {
		padding-top: 50px;
	}

	.process_content {
		margin-bottom: -86px;
	}

	section.service_areas_section {
		padding-top: 150px;
	}

	.service_area_block a {
		width: 160px;
	}

	section.faq_section .row {
		gap: 25px 0px;
	}

	.footer_cta_text {
		flex: auto;
		width: 100%;
		text-align: center;
		margin-bottom: 15px;
	}

	.cta_buttons {
		width: 100%;
	}

	.footer_widget {
		width: 100% !IMPORTANT;
	}

	section.copyright_text {
		text-align: center;
	}
	
	img.process_fave {
		display: none;
	}
	
	.page_title h1 {
		font-size: 26px;
		line-height: 34px;
	}

	.common-hero-banner {
		padding: 50px 0px;
	}
	
	.sticky-area {
		margin-top: 40px;
		position: static !IMPORTANT;
	}
	
	.contact_page_block .title_text h2 {
		font-size: 25px;
		margin: 0px;
	}
	
	.contact_info_page_row .contact_info_data h4 {
		font-size: 17px;
	}
}


@media(max-width:610px){
	.announcement_row {
		justify-content: center;
		gap: 10px;
	}
	
	.about_page_content img {
		float: none;
		width: 100%;
		max-width: 100%;
		margin: 10px 0px;
		
	}
	
	.search_page_page {
		padding: 16px;
		border-radius: 10px;
	}

	form.search_page_block input, form.search_page_block button.page_search_button {
		height: 40px;
	}
}  

@media(max-width:510px){
	.hero_content h1 {
		font-size: 20px;
		line-height: 32px;
	}

	section.hero_section .swiper-button-prev {
		left: 6px;
	}

	section.hero_section .swiper-button-next {
		right: 6px;
	}

	section.hero_section .swiper-button-next, section.hero_section .swiper-button-prev {
		height: 30px;
		width: 30px;
	}

	.hero_content.text-center {
		padding: 0px 30px;
	}

	.hero_content h4 {
		font-size: 13px;
	}

	.title_text h2 {
		font-size: 20px;
		line-height: 29px;
	}

	.title_text h4 {
		font-size: 16px;
	}

	.hero_form_overlay h2 {
		font-size: 20px;
	}

	.hero_form_overlay {
		height: 103px;
	}

	.field_half {
		width: 100%;
	}
	
	.hero_form_overlay h2{
		margin:0px;
	}
	
	.conerstone_icon img {
		height: 45px;
		width: 45px;
	}

	.conerstone_icon {
		width: 68px;
		height: 90px;
	}

	.conerstone_description h3 {
		font-size: 17px;
		line-height: 24px;
	}

	.conerstone_title h4 {
		font-size: 17px;
	}
	
	.page_title h1 {
		font-size: 26px;
        line-height: 36px;
	}

	.post__detail .post h2 {
		font-size: 20px;
	}

	.post__detail .post h3 {
		font-size: 18px;
	}

	.post__detail .post h4 {
		font-size: 16px;
	}

	.sidebar__data h4, .inquiry_form h2 {
		font-size: 20px !IMPORTANT;
	}
	
	.contact_page_block .title_text h2 {
		font-size: 22px;
	}
	
	.contact_page_block {
		padding: 20px;
	}

	.contact_page_block .contact_info_page_row .contact_info_data a {
		word-break: break-all;
	}
	
	.hero_form_overlay p{
		display:none;
	}
	
	.contact_info_page .contact_info_footer{
		gap: 10px 0px;
	}
}

@media(max-width:391px){
	.hero_form_overlay h2 {
		font-size: 17px;
	}

	.hero_form_overlay p {
		display: none;
	}

	.hero_form_overlay {
		height: 97px;
	}

	.process_content {
		margin-bottom: -142px;
	}

	section.service_areas_section {
		padding-top: 200px;
	}
}