@charset "UTF-8";
/*
Theme Name: Heartland Custom Tile & Flooring
Author: Webdesign 309
Author URI: http://www.webdesign309.com/
Description: We are a full service webdesign and development company delivering high end design and development solution for our clients and delivering best solutions to attract more visibility and customization to your website.
Version: 3.0.0
Tags: peoria web development, chicago web development, custom wordpress development, advertising agency solutions, florida webdesign, chicago webdesign, illinois webdesign, custom webdesign development
*/

/* CSS Document */
/*----------------------------------------------------------------------------- */
@font-face { font-family: 'Poppins_medium'; src: url('fonts/Poppins-Medium.eot'); src: url('fonts/Poppins-Medium.eot?#iefix') format('embedded-opentype'), url('fonts/Poppins-Medium.woff2') format('woff2'), url('fonts/Poppins-Medium.woff') format('woff'), url('fonts/Poppins-Medium.ttf') format('truetype'), url('fonts/Poppins-Medium.svg#Poppins-Medium') format('svg'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Poppins'; src: url('fonts/Poppins-Regular.eot'); src: url('fonts/Poppins-Regular.eot?#iefix') format('embedded-opentype'), url('fonts/Poppins-Regular.woff2') format('woff2'), url('fonts/Poppins-Regular.woff') format('woff'), url('fonts/Poppins-Regular.ttf') format('truetype'), url('fonts/Poppins-Regular.svg#Poppins-Regular') format('svg'); font-weight: normal; font-style: normal; font-display: swap; }
@font-face { font-family: 'Bricolage_Grotesque_medium'; src: url('fonts/BricolageGrotesque24pt-Medium.eot'); src: url('fonts/BricolageGrotesque24pt-Medium.eot?#iefix') format('embedded-opentype'), url('fonts/BricolageGrotesque24pt-Medium.woff2') format('woff2'), url('fonts/BricolageGrotesque24pt-Medium.woff') format('woff'), url('fonts/BricolageGrotesque24pt-Medium.ttf') format('truetype'), url('fonts/BricolageGrotesque24pt-Medium.svg#BricolageGrotesque24pt-Medium') format('svg'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'Bricolage Grotesque 24pt'; src: url('fonts/BricolageGrotesque24pt-SemiBold.eot'); src: url('fonts/BricolageGrotesque24pt-SemiBold.eot?#iefix') format('embedded-opentype'), url('fonts/BricolageGrotesque24pt-SemiBold.woff2') format('woff2'), url('fonts/BricolageGrotesque24pt-SemiBold.woff') format('woff'), url('fonts/BricolageGrotesque24pt-SemiBold.ttf') format('truetype'), url('fonts/BricolageGrotesque24pt-SemiBold.svg#BricolageGrotesque24pt-SemiBold') format('svg'); font-weight: 600; font-style: normal; font-display: swap; }


:root{
--body-color: #6B6B6B;
--header: #000000; 
--black-color:rgba(0, 0, 0, 1);
--primary-color:#8F1402;
--second-primary-color:rgba(35, 31, 32, 1);
--white-color:rgba(255, 255, 255, 1);


--body-font:'Poppins';
--heading-font:'Bricolage Grotesque 24pt';
--button-font:'Poppins_medium';
--font-medium:'Bricolage_Grotesque_medium';

}


html, body, br, hr, div, span, a, object, iframe, ul, ol, dl, li, dt, dd, h1, h2, h3, h4, h5, h6, p, blockquote, q, address,
small, big, cite, dfn, ins, del, i, em, b, strong, sup, sub, strike, pre, code, samp, kbd, var, tt, form, fieldset, legend, label,input, textarea, option, .nobox 
{background: transparent; border: 0; font-size: 100%; margin: 0; outline: 0; padding: 0; vertical-align: baseline;}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {display: block;}

blockquote, q {quotes: none;}
br {height: 0;}
ul, ol, dl, li {margin:0; padding:0; list-style-type: none;}
ul, ol {margin:0 0 0 0px;}
html, body{ border:none; -webkit-text-size-adjust:none;}


/* 2. Define Base Typography
------------------------------------------------------------------------------*/
body{padding: 0;margin: 0;font-family: var(--body-font); font-size: 20px; color: var(--body-color); line-height: 28px; box-sizing: border-box; overflow-x: hidden;}
*, *:after, *:before {box-sizing: border-box;}

svg path, svg rect{ transition: all 0.3s; }

/* Create the Default Headers  */
h1, h2, h3, h4, h5, h6 {margin: 0; font-weight: normal;color: var(--header); line-height:1.2; font-family: var(--heading-font);}

/* Specific Header Settings */
h1,.h1 {font-size:56px;}
h2,.h2 {font-size:40px;}
h3,.h3 {font-size:35px;}
h4,.h4 {font-size:28px;}
h5,.h5 {font-size: 24px;}
h6,.h6 {font-size: 22px;}

/* Create the Default Paragraphs */
p {margin-bottom: 20px; }

/* Other Typo */
strong {font-weight: bold;}
hr {border:0 #000 solid; border-top-width: 1px; clear: both; height: 0;}
ol {list-style: decimal;}
ul {list-style: disc;}

/* 3. images
------------------------------------------------------------------------------*/

/* Remove border around linked images */
img {max-width: 100%; border: 0; border-style: none;}

/* 4. Links
------------------------------------------------------------------------------*/

/* Default Link Types */
a {text-decoration:none; transition: 0.5s; display: inline-block; color:var(--primary-color); }


/* 5. Forms
------------------------------------------------------------------------------*/
.button, a.button, button, html input[type="button"], input[type="reset"], input[type="submit"] { font-family: var(--button-font); font-weight: normal; margin: 0 0 0 0;  padding:14px 38px;  border-radius:4px; background-color:#231F20; border: 2px solid #D5D5D5; display: inline-block; vertical-align: middle; font-size: 20px; color: var(--white-color); line-height: 20px; position: relative;outline: none;box-shadow: none;text-align: center; text-decoration: none; -webkit-transition: 0.3s ease-in-out; transition: 0.3s ease-in-out; overflow: hidden; position: relative; z-index: 1; text-transform: uppercase; cursor: pointer; }

.button.button-border, a.button.button-border, button.button-border, html input[type="button"].button-border, input[type="reset"].button-border, input[type="submit"].button-border {background-color:transparent; color: var(--primary-color); border: 1px solid var(--primary-color);}

.button.button-border:after, a.button.button-border:after{border-radius:0; content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 100%; background-color: var(--primary-color); z-index: -2; transition: all .35s}
.button.button-border:hover:after, a.button.button-border:hover:after{width: 0%;}

.button:hover, a.button:hover, button:hover, html input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { background-color: var(--primary-color); color: var(--white-color);  }

input[type="search"], input[type="text"], input[type="email"], input[type="password"], input[type="tel"], input[type="number"], textarea {padding:12px 12px; font-family: var(--body-font); font-size: 16px; background-color:var(--white-color); letter-spacing: 0;width: 100%; color:var(--black-color); text-transform: none; filter: alpha(opacity=100); border: 1px solid #D7D7D7;border-radius: 0px;-webkit-border-radius: 0px;-moz-border-radius:0px; line-height:20px; box-shadow: none;-webkit-box-shadow: none;-moz-box-shadow: none;outline: none !important; width: 100%;-webkit-appearance: none;-moz-appearance: none;appearance: none; resize: none;}

input::-webkit-input-placeholder {color:  #8D8A8A;opacity:1; text-transform: uppercase; } 
input:-moz-placeholder {color: #8D8A8A; opacity:1; text-transform: uppercase; } 
input::-moz-placeholder {color:  #8D8A8A; opacity:1; text-transform: uppercase; } 
input:-ms-input-placeholder {color:  #8D8A8A;opacity:1; text-transform: uppercase; } 
textarea::-webkit-input-placeholder {color:  #8D8A8A; opacity:1; text-transform: uppercase; } 
textarea:-moz-placeholder {color: #8D8A8A; opacity:1; text-transform: uppercase; } 
textarea::-moz-placeholder {color:  #8D8A8A; opacity:1; text-transform: uppercase; } 
textarea:-ms-input-placeholder {color:  #8D8A8A;opacity:1; text-transform: uppercase; }

[data-name="project_type"] select { color: #000; }
[data-name="project_type"] select:has(option:first-child:checked) { color: #8D8A8A; }
[data-name="project_type"] select option { color: #000; }


/* Removes fieldset borders. even on Opea 7 */
fieldset {border: 1px solid transparent;}

textarea{ min-height: 80px; }
/* 6. Tables
------------------------------------------------------------------------------*/

/* Table Fixes */
table {border-spacing: 0; border-collapse: collapse;}
td, th { border: 1px solid rgb(186, 186, 186); text-align: left; font-weight: normal; padding: 10px 15px;}


/* 7. Framework
------------------------------------------------------------------------------*/
/* container */
.container{max-width: 1660px; width: 100%; padding-left: 50px; padding-right: 50px; margin: 0 auto;}
.row{display: flex;flex-wrap: wrap; margin-left: -15px; margin-right: -15px;}
.col-12,.col-11,.col-10,.col-9,.col-8,.col-7,.col-6,.col-5,.col-4,.col-3,.col-2,.col-1{position: relative; width: 100%; padding-right: 0px; padding-left: 0px; }


.col-4 {max-width: 25%;}
.col-3 {max-width: 33.33%;}
.col-2 {max-width: 50%;}
.col-1 {max-width: 100%;}


.d-flex{ display:flex;}
.flex-wrap{flex-wrap:wrap;}
.justify-content-start{justify-content:flex-start;}
.justify-content-center{justify-content:center;}
.justify-content-end{justify-content:flex-end;}
.justify-content-between{justify-content:space-between;}
.align-items-start{align-items: flex-start;}
.align-items-center{align-items: center;}
.align-items-end{align-items: flex-end;}
.row-reverse{flex-direction: row-reverse;}
.text-center{text-align: center;}
.text-left{text-align: left;}
.text-right{text-align: right;}
.font-light {font-weight: 300;}
.table {width: 100%;}

.common_color{ color: var(--primary-color); }

/* Sub_menu */
ul li ul.sub-menu { padding-left: 0 !important; gap: 0 ; white-space: nowrap; display: block; border-radius: 5px; flex-direction: column; gap: 0; position: absolute; margin: 0; z-index: 3; margin-top: 11px; text-align: center; transform: scaleY(0); /* Hidden initially */ transition: all 0.3s ease; transform-origin: top; box-shadow: rgba(50, 50, 93, 0.15) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px; }
ul li:hover > ul.sub-menu { transform: scaleY(1); }
ul li ul.sub-menu li{  display: block; border-bottom: 1px solid #fff; overflow: hidden;}
ul li ul.sub-menu li:first-child{ border-radius: 4px 4px 0px 0px; }
ul li ul.sub-menu li:last-child{ border-bottom: 0; border-radius: 0 0 4px 4px; }
ul li ul.sub-menu li a{ color: var(--white-color) !important; text-align: left; display: block; padding: 10px 15px; background-color: var(--primary-color);} 
ul li ul.sub-menu li a:hover{ color: var(--white-color) !important; background-color: var(--header); }
ul li ul.sub-menu li a::before{ display: none; }
ul li ul.sub-menu li > ul.sub-menu { left: 103%; top: 5px; }
ul.dots li{position: relative; }
ul.dots li:before { content: ""; position: absolute; top: 14px; left: 0; width: 8px; height: 8px; background-color: var(--body-color); border-radius: 50%; }

header{ position: relative; background-color: var(--white-color); padding: 18px 0; }
.header_inr{ display: flex; align-items: center; justify-content: space-between; }
.header_logo{ max-width: 20%; width: 100%; line-height: 0; }
.header_logo a{ width: 100%; }
.header_inr nav{ max-width: 70%; width: 100%; }
.header_inr nav ul{ justify-content: center; gap: 40px; align-items: center; }
.header_inr nav ul li a{ color: var(--header); position: relative; transition: all 0.2s;}
.header_btn{ max-width: 20%; width: 100%; text-align: right; }
.header_btn a.button,.banner_btn a.button{ padding: 14px 24px; }

.header_inr nav > ul > li > a { text-decoration: none; position: relative; transition: color 0.5s ease; }
.header_inr nav > ul > li > a::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg, transparent, #000, transparent); background-size: 300% 100%; opacity: 0; transition: opacity 0.5s; }
.header_inr nav > ul > li > a:hover { color: var(--primary-color); }
.header_inr nav > ul > li > a:hover::after { opacity: 1; animation: shimmer111 2s linear infinite !important; }
@keyframes shimmer111 { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

.header_btn a.button.phone_icn{ padding-left: 40px; background-image: url(images/ic_baseline-call.svg); background-position: 10px; background-repeat: no-repeat; }


/* banner */
.banner{ padding: 77px 0; position: relative; }
.banner_img{ position: absolute; left: 0; top: 0; width: 100%; height: 100%;  }
.banner_img:before{ content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); }
.banner_img img{ width: 100%; height: 100%; object-fit: cover; }
.banner_content{ display: flex; align-items: center; justify-content: space-between; gap: 144px; position: relative; }
.banner_content .banner_left{ max-width: 55%; width: 100%; color: rgba(213, 213, 213, 1);}
.banner_content .banner_left h1{ color: var(--white-color); padding-bottom: 24px; line-height: 64px; letter-spacing: 1px; }
.banner_form{ background-color: var(--white-color); max-width: 45%; width: 100%; padding: 16px 32px 20px; text-align: center; border: 1px solid rgba(164, 164, 164, 1);box-shadow: 38px 62px 22px 0px rgba(38, 38, 38, 0.5); border-radius: 4px; font-size: 16px; line-height: 24px; }
.banner_form form{ display: flex; flex-wrap: wrap; gap: 20px 0; margin: 0 -10px; }
form .input-fild{ padding: 0 10px; line-height: 0; }
.banner_form h2{ font-size: 28px; line-height: 36px; padding: 0 0 5px; font-family: var(--font-medium); text-transform: uppercase; }
form .input-fild.submit_fild{ padding-top: 12px; }
.banner_btn { padding-top: 12px; }

.services{ padding: 72px 0;  position: relative; }
.services h2{ padding: 0 0 20px; }
.common_red_text{ display: block; padding: 0 0 10px; font-size: 16px; line-height: 24px; text-transform: uppercase; color: var(--primary-color);  }
.Service-inr{ padding-top: 12px; display: flex; justify-content: center; gap: 48px 0; flex-wrap: wrap; margin: 0 -24px; text-align: left; }
.service-item{ max-width: 33.33%; width: 100%; padding: 0 24px; }
.service-item .service-box{ border: 1px solid rgba(177, 177, 177, 1); background-color: rgba(255, 255, 255, 1); border-radius: 4px; padding: 24px;     height: 100%; display: flex; flex-direction: column; }
.service-item .service-box a.button{ margin-top: auto; width: fit-content; }
.service-item .service-box .service-img{ width: 100%; line-height: 0; height: 250px; margin: 0 0 20px; position: relative; }
.service-item .service-box .service-img .service-icon{ background-color: rgba(143, 20, 2, 1); width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; position: absolute; right: 20px; bottom: -33px; }
.service-item .service-box .service-img .service-icon img{ width: 42px; height: 42px; object-fit: contain; }
.service-item .service-box .service-img > img{ width: 100%; height: 100%; object-fit: cover;  border-radius: 4px; }
.service-item .service-box .h4{ line-height: 36px; padding: 0 0 12px; font-family: var(--font-medium); }

.Home_services{ position: relative; }
.Home_services .Service-inr{ margin: 0; display: block; }
.Home_services .Service-inr .service-item{ padding: 0; }
.swiper-button-prev, .swiper-button-next { width: 48px; height: 48px; margin-top: -0px; background: rgba(35, 31, 32, 0.5); color: #fff; border-radius: 4px; transition: background 0.3s ease;  top: 50%; transform: translateY(-50%); }
.swiper-button-prev::after, .swiper-button-next::after { font-size: 18px; }
.swiper-button-prev:hover, .swiper-button-next:hover { background: rgba(0, 0, 0, 1); }
.swiper-button-prev svg, .swiper-button-next svg{ width: 12px; }
.Home_services .swiper-button-prev { left: -76px; }
.Home_services .swiper-button-next { right: -76px; }

.about{ padding: 57px 0; background-color: rgba(237, 237, 237, 1);}
.about_inr{ gap: 48px; }
.about_inr > div{ max-width: 50%; width: 100% }
.about_inr .about_img{ line-height: 0; }
.about_inr .about_img img{ width: 100%; height: 100%; object-fit: cover; }
.about_inr .about_content{ padding: 25px 0; }
.about_inr .about_content h2{ padding: 0 0 20px; }
.about_inr .about_content ul{ padding-top: 12px; padding-bottom: 12px; }

main ul li{ position: relative; font-size: 20px; line-height: 28px; color: var(--header); padding-left: 34px; padding-top: 5px; padding-bottom: 5px; }
main ul li::before{ content: ''; position: absolute; left: 0; top: 7px; width: 26px; height: 26px; background-image: url(images/before_icon.png); background-repeat: no-repeat; background-position: center; background-size: contain; }
main ul.col_2, main ul.col_3 { overflow: hidden; padding-bottom: 20px; }
main ul.col_2 li {width: 50%;float: left; padding-bottom: 16px; }
main ul.col_3 li {width: 33.33%;float: left; padding-bottom: 16px;}

.servics_ares{ padding: 72px 0 0 0; line-height: 0; }
.servics_ares iframe{ width: 100%; height: 414px; object-fit: cover; }
.servics_ares h2{ padding: 0 0 32px; line-height: 48px; }
.servics_ares p{ line-height: 28px; }

.faq{background-color: rgba(237, 237, 237, 1); padding: 72px 0; }
.faq_inr{ display: flex; justify-content: space-between; gap: 48px; }
.faq_inr > div{ max-width: 50%; width: 100%; }
.faq_inr .faq_img{ line-height: 0; }
.faq_inr .faq_img img{ width: 100%; height: 100%; object-fit: cover; }
.faq_content h2{ padding: 0 0 40px; }

.accordion-item { max-width: 100%; width: 100%; overflow: hidden; transition: 0.7s ease-in-out; height: min-content; border-width: 1px; border-color: rgba(177, 177, 177, 1); border-style: solid; border-radius: 4px; background-color: rgb(255, 255, 255); text-align: left; margin-bottom: 20px; }
.accordion-item.active{ border-color: rgba(143, 20, 2, 1); }
.accordion-header { position: relative; font-family: var(--body-font); font-size: 20px; cursor: pointer; transition: 0.3s all; opacity: 1; text-align: left; padding: 13px; background: transparent; border: 0px solid #191919; margin: 3px; border-radius: 6px; line-height: 26px; color: var(--body-color); }
.accordion-item.active .accordion-header{ color: var(--header); }
.accordion-content { padding: 0px 30px 0 90px; max-height: 0; overflow: hidden; transition: max-height 0.4s ease; }
.accordion-header::before { content: "+"; display: inline-block;  width: 48px; height: 48px; background: var(--second-primary-color); border-radius: 5px; color: #fff; font-size: 28px; font-weight: 300; line-height: 48px; text-align: center; transition: all 0.3s ease; margin-right: 20px; }
.accordion-item.active .accordion-header::before { content: "−"; background: rgba(143, 20, 2, 1); font-size: 24px; }
.accordion-item:last-child{ margin-bottom: 0; }

footer{ background-color: var(--second-primary-color); padding: 50px 0 0; color: rgba(213, 213, 213, 1); }
.footer-inr{ display: flex; align-items: flex-start; justify-content: space-between; gap: 174px; padding: 0 0 32px; border-bottom: 1px solid rgba(93, 93, 93, 1) }
.footer-inr .footer_logo{ max-width: 28%; width: 100%; }
.footer-inr .footer_logo a{ line-height: 0; margin-bottom: 30px; background: #ffffff; padding: 15px;}
.footer-inr .footer_list{ max-width: 72%; width: 100%; display: flex; align-items: flex-start; justify-content: space-between; gap: 96px; }
.footer-inr .footer_list nav{ width: fit-content; }
.footer-inr .footer_list nav h2{ font-size: 20px; color: var(--white-color); font-family: var(--button-font); padding: 0 0 20px; text-transform: uppercase; }
.footer_list nav ul li { padding: 0 0 12px; position: relative; }
.footer_list nav ul li:last-child{ padding: 0; }
.footer_list nav ul li a{ color: rgba(213, 213, 213, 1); line-height: 28px; }
.footer_list nav ul li a:hover{ color: var(--white-color); text-decoration: underline; }
.footer_list nav ul.contact_footer li{ padding-left: 52px; }
.footer_list nav ul.contact_footer li::before{ content: ''; position: absolute; left: 0; top: 0; background-color: var(--primary-color); width: 30px; height: 30px; border-radius: 4px; background-position: center; background-repeat: no-repeat;  }
.footer_list nav ul.contact_footer li.location::before{ background-image: url(images/mdi_location.svg); }
.footer_list nav ul.contact_footer li.mail::before{background-image: url(images/mdi-light_email.svg);}
.footer_list nav ul.contact_footer li.call::before{background-image: url(images/ic_baseline-call.svg);}

.copyright{ padding: 25px 0; }
.copyright p{ margin-bottom: 0; }
ul.social_icon{ gap: 12px; }
ul.social_icon li a{ background-color: var(--primary-color); width: 30px; height: 30px; border-radius: 4px; line-height: 0; display: flex; align-items: center; justify-content: center; }
ul.social_icon li a:hover{ background-color: var(--white-color); }
ul.social_icon li a:hover img{ filter: invert(1) brightness(100); }

/* inner_page */
.inner_page{ background-color: var(--second-primary-color); text-align: center; padding: 58px 0; }
.inner_page h1{ color: var(--white-color); }

/* def-page */ 
.def-page { padding: 72px 0; }
.def-page p { margin: 0 0 25px; }
.def-page .right-img{float:right; margin:0 0 20px 47px; position: relative; z-index: 0; line-height: 0;}
.def-page .left-img{float:left; margin:0 47px 20px 0; position: relative; line-height: 0;}
.def-page .right-img img{border-radius: 4px; position: relative;}
.def-page .left-img img{border-radius: 4px; position: relative }
.def-page h2, .def-page h3, .def-page h4, .def-page h5, .def-page h6 { margin: 0 0 15px 0; line-height: 1.2; }
.def-page ul {margin: 0; padding-bottom: 20px; overflow: hidden; max-width: inherit; width: inherit; padding-left: 0; }
.def-page ul li { list-style: none; font-size: 20px; color: var(-header); position: relative; padding: 8px 22px 8px 34px; }
.def-page ul li:before { content: ''; position: absolute; left: 0; top: 8px; width: 26px; height: 26px; background-image: url(images/before_icon.png); background-repeat: no-repeat; background-position: center; background-size: contain;  }
.def-page ol{padding-left: 0; padding-bottom: 20px;}
.def-page ol li {list-style-type:none;counter-increment:item;font-size: 20px; color: var(--body-color); padding: 5px 0; }
.def-page ol li:before {display:inline-block; content: counter(item) ".";  color: var(--body-color);  padding-right:10px;}
.def-page ul.col-2, .def-page ul.col-3 { overflow: hidden }
.def-page ul.col-2 li {width: 50%;float: left;}
.def-page ul.col-3 li {width: 33.33%;float: left;}
.privacy-page ol { margin-bottom: 0px;}
.privacy-page ol>li:before { padding-right: 05px;}
.privacy-page .privacy-inner{ padding-left: 0px; margin-bottom: 0px;}
.privacy-page .privacy-inner ul{ margin-top: 05px; }
.privacy-page ul,.privacy-page ol{ margin-left:0px;}
.privacy-page ol li{padding: 5px 0px;}
.pagenotfound {width: 100%;display: block; padding: 70px 0px 80px; text-align: center;}
.pagenotfound h2 {font-size: 50px;font-weight: 600;}
.pagenotfound p{font-size: 20px;}
.thankyou {text-align: center;}
.thankyou h3 strong {font-size: 40px;}
.clearfix:after { clear: both; display: block; visibility: hidden; content: ""; }
.fl{float:left}
.fr{float:right}
.cl,.clear,.clr,.social_share{clear:both}
.clearfix:after{clear:both;display:block;visibility:hidden;content:""}
.def-page a { color: var(--primary-color); display: inline; }
.def-page a:hover { color:var(--body_color); }
.def-page p:last-child{ margin-bottom: 0; }
.def-service-icon { background-color: rgba(143, 20, 2, 1); width: 80px; height: 80px; border-radius: 50%; display: flex; align-items: center; justify-content: center; position: absolute; left: 20px; top: 20px; border: 2px solid rgba(255, 255, 255, 1);}

/* gallery */
.gallery{ padding: 72px 0; }
.gallery_inr{ display: flex; justify-content: center; gap: 48px; flex-wrap: wrap; }
.gallery-item{ max-width: calc(33.33% - 32px); width: 100%; }
.gallery-item a{ display: block; line-height: 0; width: 100%; height: 277px; border-radius: 4px; overflow: hidden; position: relative; } 
.gallery-item a::after{ content: ''; position: absolute; width: 100%; height: 100%; left: 0; top: 0; transform: scale(0); -webkit-transform: scale(0); transform-origin: center; background: url(images/zoom.webp) no-repeat local center rgba(236, 31, 35, 0.5); transition: 0.5s; }
.gallery-item a:hover::after{ transform: scale(1); -webkit-transform: scale(1); } 
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close { color: #FFF; right: -20px; top: 15px; text-align: center; padding-right: 0; width: 50px; height: 50px; background-color: var(--primary-color); border-radius: 50%; opacity: 1; display: flex; align-items: center; justify-content: center; border: 1px solid transparent; }
button.mfp-arrow { width: 50px; height: 50px; border-radius: 50%; background-color: var(--primary-color); padding: 0; left: 40px; }
button.mfp-arrow-right { right: 40px; left: auto; }
.mfp-arrow:before{ display: none; }
.mfp-arrow:before, .mfp-arrow:after{ margin: 0 !important; }
.mfp-arrow-left:after{ left: 11px; top: 12px; }
.mfp-arrow-right:after{    top: 12px; left: 18px;}
button.mfp-arrow:hover,button.mfp-close:hover{ background-color: var(--second-primary-color); } 

.contact{ padding: 72px 0; background-color: rgba(237, 237, 237, 1); }       
.contact_inr{ display: flex; align-items: flex-start; justify-content: space-between; } 
.contact_details{ max-width: 35%; width: 100%; }              
.contact_details h2{ padding: 0 0 32px; }   
.contact_details ul li::before{ display: none; } 
.contact_details ul li a{ color: var(--body-color); }  
.contact_details ul li a:hover{color: var(--primary-color);}
.contact_details > ul{ padding-bottom: 20px; }
.contact_details > ul > li{ position: relative; padding-left: 80px; margin-bottom: 30px; padding-top: 0; padding-bottom: 0;}
.contact_details > ul > li label{ display: block; padding: 0 0 4px; font-family: var(--font-medium); text-transform: uppercase; }
.contact_details > ul > li::after{ content: ''; position: absolute; left: 0; top: 0; background-color: var(--primary-color); width: 56px; height: 56px; border-radius: 4px; background-position: center; background-repeat: no-repeat; background-size: 36px; }
.contact_details ul.contact_footer li.location::after{ background-image: url(images/mdi_location.svg); }
.contact_details ul.contact_footer li.mail::after{background-image: url(images/mdi-light_email.svg);}
.contact_details ul.contact_footer li.call::after{background-image: url(images/ic_baseline-call.svg);}
.contact_details > ul > li:last-child{ margin-bottom: 0; }
.contact_bottom{ position: relative; padding-top: 20px; }
.contact_bottom:before{ content: ''; position: absolute; top: 0; left: 0; width: 377px; border: 1px solid rgba(201, 201, 201, 1)  }
.contact_bottom h3{ font-family: var(--font-medium); padding: 0 0 20px; } 
.contact_bottom ul li{ padding: 0; }   
.contact_bottom ul li a:hover{ background-color: var(--second-primary-color); }
.contact_bottom ul li a:hover img{ filter: none; }        
.contact .banner_form{  max-width: 65%; padding: 36px; }
.contact .banner_form h2{ font-size: 28px; line-height: 36px; padding-bottom: 5px; }

.custom-file { width: 100%; border: 1px solid #ddd; padding: 12px; box-sizing: border-box; }
.custom-file-input { display: none; }
.custom-file-label { display: flex; align-items: center; gap: 12px; width: 100%; min-width: 0; cursor: pointer; }
.choose-file { flex: 0 0 auto; display: block; padding: 8px 10px; background: #ededed; border: 1px solid #d7d7d7; border-radius: 4px; color: #000; font-size: 14px; line-height: 16px; font-family: var(--button-font); transition: all 0.3s; }
.file-name { flex: 1; min-width: 0; color: #b00000; font-size: 14px; line-height: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: left; }
.choose-file:hover { background-color: var(--second-primary-color); color: var(--white-color); }
.servics_ares.contact_areas{ padding-top: 0; }

.contact-map { flex: 1; min-height: 400px; border-radius: 10px; overflow: hidden; }
.contact-map .ser-area-map { width: 100%; height: 450px; display: block; }
.faq_page_inr {padding-top: 12px;}
.faq_page_inr h2{ padding: 0 0 15px; }
.service_bottom_content_sec{padding: 57px 0; background-color: rgba(237, 237, 237, 1);}

input.wpcf7-not-valid,.input-fild select.wpcf7-not-valid,textarea.wpcf7-not-valid{ border-color: #dc3232; }
.wpcf7-not-valid-tip{ display: none; }
.wpcf7 form .wpcf7-response-output { margin: 0; font-size: 16px; width: 100%; }
/* .submit_fild { position: relative; } */
.submit_fild .wpcf7-spinner{ position: absolute; right: 0; }
.input-fild.captcha_submit{ gap: 15px; line-height: normal; align-items: flex-start; width: 100%; position: relative;}
.copyright p a{ color: rgba(213, 213, 213, 1); text-decoration: underline; }
.copyright p a:hover{ text-decoration: none; }
.submit_fild { padding-top: 6px; }
.pagination.port_pagein { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 40px; }
.pagination.port_pagein .page-numbers { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; padding: 0; border: 1px solid #ddd; background: #fff; color: #333; font-size: 15px; font-weight: 500; text-decoration: none; transition: all 0.3s ease; box-sizing: border-box; }
.pagination.port_pagein .page-numbers:hover, .pagination.port_pagein .page-numbers.current { background: #222; border-color: #222; color: #fff; }
.pagination.port_pagein .page-numbers.dots {  background: transparent; color: #333; pointer-events: none; }
.pagination.port_pagein .next.page-numbers { font-size: 20px; }

 nav ul li.current-menu-item>a,  nav ul li.current-page-parent>a, nav ul li.current_page_parent > a,  nav ul li.current-menu-ancestor > a,  nav ul li.current-menu-item>a { color: var(--primary-color); }

 nav ul li.current-menu-item>a::after,  nav ul li.current-page-parent>a::after,  nav ul li.current_page_parent > a::after,  nav ul li.current-menu-ancestor > a::after,  nav ul li.current-menu-item>a::after{ opacity: 1; animation: shimmer111 2s linear infinite !important;  }
nav ul li > ul > li.current-menu-item>a{ background-color: var(--header); color: var(--white-color); } 
footer nav ul li.current-menu-item>a, footer nav ul li.current-page-parent>a, footer ul li.current_page_item > a, footer nav ul li.current_page_parent > a, footer nav ul li.current-menu-ancestor > a, footer nav ul li.current-menu-item>a{ text-decoration: underline; box-shadow: none; text-shadow: none; color: var(--white-color); }


#loading-spinner { text-align: center; padding: 40px 0; display: none; }
#loading-spinner img { width: 80px; height: 80px;}
/*#loading-spinner img { width: 80px; height: 80px; animation: flipLoader 1s infinite ease-in-out; }
@keyframes flipLoader { 0% { transform: perspective(400px) rotateY(0deg) scale(1); } 50% { transform: perspective(400px) rotateY(180deg) scale(1.1); } 100% { transform: perspective(400px) rotateY(360deg) scale(1); } }
*/

.menu-toggle{ display: none; }

.def-page a.button{ color: var(--white-color); }
.gallery{ text-align: center; }
.gallery h2{ padding: 0 0 10px; }
.input-fild.captcha_submit{ flex-wrap: wrap;}
.ptb_57{padding: 57px 0;}
.bg_gray{background-color: rgba(237, 237, 237, 1);}
.cta_btns{gap:10px;}
.faq_page{background-color: transparent;}
.page_content { padding-bottom: 25px; }
.input-fild.captcha_submit input[type="submit"]{ padding: 14px 18px; font-size: 16px; }

.page_content h2{ padding-bottom: 10px; }
.input-fild select{ width: 100%; border-radius: 0; padding: 10px 12px; font-family: var(--body-font); font-size: 16px; background-color: var(--white-color); border: 1px solid #D7D7D7;  line-height: 20px; height: 100%; }
.input-fild select:focus{ outline: none;  }

.privacy-page .privacy-inner { padding-left: 30px; margin-bottom: 20px; }
.privacy-page ul, .privacy-page ol { margin-left: 20px; }
.mobile-menu-logo{ display: none; }



/* media */
@media(max-width:1659px){
.banner { padding: 100px 0;}
.Home_services .swiper-button-next { right: -50px; }
.Home_services .swiper-button-prev{ left: -50px;}
}



@media(max-width:1599px){
h1,.h1 {font-size:52px;}
h2,.h2 {font-size:38px;}
h3,.h3 {font-size:34px;}
h4,.h4 {font-size:26px;}

.banner_form{ max-width: 45%; }
.banner_content .banner_left { max-width: 55%; }
.banner_content{ gap: 80px; }
.captcha_field iframe{ width: 250px !important; }
.services,.about,.faq,.gallery,.contact{ padding: 52px 0;}
.Home_services .swiper-button-next { right: -30px; background: rgba(35, 31, 32, 0.6); }
.Home_services .swiper-button-prev{ left: -30px; background: rgba(35, 31, 32, 0.6);}
.servics_ares{ padding-top: 52px; }
.accordion-header::before {  margin: 0; }
.accordion-header{ display: flex; align-items: flex-start; gap: 20px; }
.faq_content h2 { padding: 0 0 30px; }
.Home_services .service-item{ max-width: 100%; }

.def-page,.ptb_57{padding: 52px 0px;}
.service-item{ padding: 0 15px; }
.Service-inr{ margin: 0 -15px; gap: 30px 0; padding-top: 0; }


}


@media(max-width:1399px){
h1,.h1 {font-size:48px;}
h2,.h2 {font-size:36px;}
h3,.h3 {font-size:32px;}
h4,.h4 {font-size:26px;}
 
header{ padding: 14px 0; }
.header_inr nav ul{ gap: 25px; }
.header_inr nav { max-width: 50%; }
.header_logo a img{ width: 100%; height: 100%; object-fit: contain; }
.header_btn a.button, .banner_btn a.button { padding: 10px 15px; }
.button, a.button, button, html input[type="button"], input[type="reset"], input[type="submit"]{ font-size: 18px;  padding: 14px 25px; }
.banner { padding: 70px 0;}
.banner_content .banner_left h1{ line-height: 54px; letter-spacing: 1px; padding-bottom: 13px; }
.services h2,.about_inr .about_content h2{ padding: 0 0 16px; }
.service-item .service-box{ padding: 20px; }
.service-item .service-box .h4 { line-height: 34px; padding: 0 0 8px; }
.service-item .service-box .service-img .service-icon{ width: 60px; height: 60px; bottom: -25px; }
.service-item .service-box .service-img .service-icon img { width: 32px; height: 32px; }
.common_red_text{ padding-bottom: 0; }
.about_inr .about_content { padding: 10px 0; }
.servics_ares h2 { padding: 0 0 22px; line-height: 38px; }
.faq_inr .faq_img,.about_inr .about_img{ max-width: 40%; }
.faq_inr .faq_content,.about_inr .about_content{ max-width: 60%; }
.footer-inr .footer_list{  gap: 25px; }
.footer-inr{ gap: 100px; }
.copyright { padding: 20px 0; gap: 20px;}
.services,.about,.faq,.gallery,.contact{ padding: 50px 0;}
.def-page .right-img,.def-page .left-img{ max-width: 50%; }
.def-page .right-img img,.def-page .left-img img{ width: 100%; height: 100%; object-fit: cover; }
.contact .banner_form { max-width: 60%; padding: 25px; }
.gallery_inr{ gap: 28px; }
.gallery-item { max-width: calc(33.33% - 19px);}
.contact_details > ul > li { position: relative; padding-left: 60px; margin-bottom: 20px;  }
.contact_details > ul > li::after{ width: 46px; height: 46px; background-size: 29px; }
.contact_details h2 { padding: 0 0 22px; }
.def-page .def-service-icon img{ width: fit-content; height: auto; object-fit: contain; }
}

@media(max-width:1199px){
h1,.h1 {font-size:44px;}
h2,.h2 {font-size:34px;}
h3,.h3 {font-size:30px;}
h4,.h4 {font-size:24px;}
h5,.h5 {font-size: 22px;}
h6,.h6 {font-size: 20px;}

body,main ul li{ font-size: 18px; line-height: 26px; }
.accordion-header{ font-size: 18px; padding-left: 70px; }
.header_btn a.button, .banner_btn a.button { padding: 10px 10px; font-size: 16px; }
.header_inr nav > ul > li > a{ font-size: 17px; }
.header_inr nav ul { gap: 20px; }
.banner_content { gap: 50px; }
.input-fild.captcha_submit{ flex-wrap: wrap; }
.submit_fild { padding-top: 0; }
.banner_form form{  gap: 15px 0; }
.banner_form { max-width: 50%; padding: 16px 22px 20px; }
.banner_content .banner_left { max-width: 50%; }
.banner_btn { padding-top: 0; }
.services, .about, .faq,.ptb_57,.gallery,.contact{ padding: 40px 0; }
.button, a.button, button, html input[type="button"], input[type="reset"], input[type="submit"] { font-size: 16px; padding: 12px 21px; }
.about_inr { gap: 40px; }
main .about_content ul.col_2 li{ width: 100%; }
.about_inr .about_content ul { padding: 0 0 10px; }
.servics_ares { padding-top: 40px; }
.servics_ares h2 { padding: 0 0 15px; line-height: 38px; }
.contact-map{     min-height: 100%; border-radius: 0; }
.contact-map .ser-area-map{ height: 300px; }
.faq_content h2 { padding: 0 0 20px; }
.accordion-header::before { margin: 0; position: absolute; width: 40px; height: 40px; line-height: 40px; left: 10px; font-size: 22px; top: 6px;}
.accordion-content { padding: 0px 20px 0 72px;}
.footer-inr { gap: 70px; padding: 0 0 22px;}
.copyright { padding: 15px 0; gap: 20px; font-size: 16px; }
.footer-inr .footer_logo a{  margin-bottom: 15px; }
.footer-inr .footer_list nav h2{ font-size: 18px;  padding: 0 0 12px; }
.footer_list nav ul li { padding: 0 0 8px;}
.header_inr nav { max-width: 60%; }
.Service-inr { padding-top: 0;}

.def-page ul.col-3 li { width: 50%;}
.def-page ul li{ font-size: 18px; }
.inner_page {padding: 68px 0; }
.def-page { padding: 45px 0px; }
.def-page ol li{ font-size: 18px; line-height: 28px; }

.gallery-item a { height: 265px; }
.gallery-item a img{ width: 100%; height: 100%; object-fit: cover; }
.servics_ares iframe { height: 300px; }
.contact_bottom:before{ width: 277px; }

}

@media(max-width:1023px){
.service-item { max-width: 50%;}
.cta_btns,.contact_inr{ flex-wrap: wrap; }
.contact_inr{ gap: 25px; }
.contact_details { max-width: 100%; width: 100%; }
.contact .banner_form { max-width: 100%;     box-shadow: 21px 21px 22px 0px rgba(38, 38, 38, 0.3);}
.contact_bottom:before { width: 100%; }
.contact_bottom{  padding-bottom: 0;   display: flex; align-items: center; gap: 20px; }
.contact_details .contact_bottom h2 { padding: 0; }
 }



@media(max-width:991px){
h1,.h1 {font-size:40px;}
h2,.h2 {font-size:32px;}
h3,.h3 {font-size:28px;}
h4,.h4 {font-size:24px;}
h5,.h5 {font-size:22px;}
h6,.h6 {font-size:20px;}

body,main ul li{ font-size: 16px; line-height: 26px; }
.footer-inr { gap: 30px; padding: 0px 0 10px; flex-wrap: wrap; justify-content: center; }
.footer-inr .footer_list { gap: 25px; max-width: 100%; flex-wrap: wrap; }
.footer-inr .footer_logo { max-width: 100%; width: 100%; text-align: center; }
footer { padding: 40px 0 0; }
.faq_inr,.about_inr{ gap: 30px; flex-wrap: wrap; }
.faq_inr .faq_content, .about_inr .about_content { max-width: 100%; }
.faq_inr .faq_img, .about_inr .about_img { max-width: 70%; margin: 0 auto; }
.accordion-header::before{ top: 5px; }
main .about_content ul.col_2 li { width: 50%; }
.footer-inr .footer_logo a { margin-bottom: 10px; }
.footer_list nav ul.contact_footer li { padding-left: 40px; }
.header_logo { max-width: 30%;}
.header_btn {  max-width: fit-content; display: flex; align-items: center; gap: 20px;}
.banner_content { gap: 30px; flex-wrap: wrap; }
.banner_form { max-width: 100%; padding: 16px 22px 20px; }
.banner_content .banner_left { max-width: 100%; text-align: center; }
.banner_content .banner_left h1 { line-height: 45px; letter-spacing: 1px; padding-bottom: 12px; }
.banner { padding: 60px 0; }

/* mobile menu */
.menu-toggle { display: flex; flex-direction: column; justify-content: space-between; width: 30px; height: 22px; cursor: pointer; z-index: 999999; position: relative; }
.menu-toggle span { display: block; width: 100%; height: 3px; background: var(--header); border-radius: 2px; transition: all .3s ease; }
.menu-toggle.active { position: fixed; right: 20px; top: 20px; z-index: 9999999; }
.menu-toggle.active span { background: #fff; } .menu-toggle.active span:nth-child(1) { transform: translateY(9.5px) rotate(45deg); } .menu-toggle.active span:nth-child(2) { opacity: 0; } .menu-toggle.active span:nth-child(3) { transform: translateY(-9.5px) rotate(-45deg); }

.header_inr nav { position: fixed; top: 0; right: 0; width: 100%; max-width: 82%; height: 100dvh; padding: 95px 22px 30px; transform: translateX(100%); transform-origin: right center; transition: transform .4s cubic-bezier(.77,0,.18,1); z-index: 99999; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; box-shadow: -15px 0 45px rgba(0,0,0,.45); background-image: url(images/mobile_menu.png); background-size: 100% 100%; background-repeat: no-repeat; }
ul li > ul.sub-menu { transform: scaleY(1); }
.header_inr nav.open { transform: translateX(0); }

.header_inr nav > ul { display: block; width: 100%; margin: 0; padding: 0; text-align: left; }
.header_inr nav > ul > li { position: relative; display: flex; flex-wrap: wrap; align-items: center; width: 100%; margin: 0; padding: 0; border-bottom: 1px solid rgba(255,255,255,.16); transition: background .25s ease; }
.header_inr nav > ul > li > a { position: relative; display: flex; align-items: center; width: 100%; min-height: 62px; padding: 0 42px 0 12px; color: #fff; font-size: 18px; font-weight: 500; line-height: 1.3; text-decoration: none; transition: color .25s ease, padding-left .25s ease, background .25s ease; }
.header_inr nav > ul > li.current-menu-item > a, .header_inr nav > ul > li.current_page_item > a { color: #fff; background: linear-gradient( 90deg, #8F1402 0%, rgba(143,20,2,.72) 70%, rgba(143,20,2,.35) 100% ); border-left: 4px solid #b92a14; padding-left: 18px; box-shadow: inset 0 0 30px rgba(0,0,0,.15), 0 5px 20px rgba(143,20,2,.12); }
.header_inr nav > ul > li > a:hover { color: #fff; background: rgba(143,20,2,.16); padding-left: 18px; }
.header_inr nav > ul > li > a::before { display: none !important; content: none !important; }
.header_inr nav > ul > li > a::after { display: none !important; content: none !important; }
.menu-expand { display: block; position: absolute; right: 12px; top: 14px; width: 35px; height: 35px; background: transparent; border: 1px solid rgba(255,255,255,.45); border-radius: 3px; cursor: pointer; z-index: 5; }
.menu-expand::before, .menu-expand::after { content: ""; position: absolute; left: 50%; top: 50%; width: 10px; height: 2px; background: #fff; transform: translate(-50%, -50%); transition: transform .25s ease; }
.menu-expand::after { transform: translate(-50%, -50%) rotate(90deg); }
.menu-expand.menu-clicked::after { transform: translate(-50%, -50%) rotate(0deg); }
.header_inr nav ul li > ul.sub-menu { position: relative; top: auto; left: auto; display: none; width: calc(100% - 16px); margin: 0 8px 12px; padding: 5px 0; background: linear-gradient( 145deg, #292727, #1d1a1a ); box-shadow: inset 0 0 25px rgba(0,0,0,.25); transition: none; }
.header_inr nav ul li > ul.sub-menu li { position: relative; width: 100%; padding: 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.header_inr nav ul li > ul.sub-menu li:last-child { border-bottom: 0; }
.header_inr nav ul li > ul.sub-menu li a { display: flex; align-items: center; min-height: 52px; padding: 0 40px 0 18px; color: rgba(255,255,255,.92); font-size: 16px; font-weight: 400; text-decoration: none; transition: background .25s ease, color .25s ease, padding-left .25s ease; }
.header_inr nav ul li > ul.sub-menu li a:hover { color: #fff; background: rgba(143,20,2,.25); padding-left: 23px; }
.header_inr nav::-webkit-scrollbar { width: 3px; }
.header_inr nav::-webkit-scrollbar-track { background: transparent; }
.header_inr nav::-webkit-scrollbar-thumb { background: var(--primary-color); border-radius: 10px; }


.def-page ol li{ font-size: 16px; line-height: 26px; }
.def-page .right-img{ margin: 0 0 15px 30px; }
.def-page .left-img{     margin: 0 30px 15px 0; }
.def-page { padding: 40px 0px; }
.def-page ul li { font-size: 16px; }

header nav ul li.current-menu-item>a, header nav ul li.current-page-parent>a, header nav ul li.current_page_parent > a, header nav ul li.current-menu-ancestor > a, header nav ul li.current-menu-item>a{ color: #fff; background: linear-gradient(90deg, #8F1402 0%, rgba(143, 20, 2, .72) 70%, rgba(143, 20, 2, .35) 100%); border-left: 4px solid #b92a14; padding-left: 18px; box-shadow: inset 0 0 30px rgba(0, 0, 0, .15), 0 5px 20px rgba(143, 20, 2, .12); }

.gallery-item { max-width: calc(50% - 14px); }
img.mfp-img{ height: 620px; }
.privacy-page .privacy-inner{ padding-left: 20px; margin-bottom: 10px; } 
.privacy-page .privacy-inner ul { margin-top: 0; }

}

@media(max-width:767px){
h1,.h1 {font-size:38px;}
h2,.h2 {font-size:30px;}
h3,.h3 {font-size:26px;}
h4,.h4 {font-size:22px;}
h5,.h5 {font-size:21px;}
h6,.h6 {font-size:20px;}

.container{ max-width: 100%; padding: 0 30px; }
.faq_inr .faq_img, .about_inr .about_img { max-width: 100%; margin: 0 auto; }
main .about_content ul.col_2 li { width: 100%; }
.about_inr .about_content{ padding: 0; }
.accordion-header::before { top: 50%; transform: translateY(-50%); }
.Home_services .swiper-button-next { right: -15px;}
.Home_services .swiper-button-prev { left: -15px;}
.copyright { padding: 15px 0; gap: 10px; font-size: 16px; flex-wrap: wrap; justify-content: flex-start; }
p,.def-page p{ margin-bottom: 15px; }

.def-page { padding: 35px 0px; }
.def-page ul.col-3 li,.def-page ul.col-2 li,main ul.col_2 li,main ul.col_3 li{ width: 100%; }
.def-page .right-img { margin: 0 0 15px 0; }
.def-page .right-img, .def-page .left-img { max-width: 100%; float: none; }
.def-page .left-img { margin: 0 0px 15px 0; }
.inner_page { padding: 48px 0; }
.header_logo { max-width: 40%; }
.Service-inr{ margin: 0 0; gap: 20px 0; }
.service-item { max-width: 100%; padding: 0;}
main ul.col_2, main ul.col_3 { overflow: hidden; padding-bottom: 10px; }

.banner_form h2 { font-size: 24px;}
img.mfp-img{ height: 100%; }
.gallery-item a { height: 200px; }
.gallery_inr { gap: 15px; }
.gallery-item { max-width: calc(50% - 7.5px); }
.pagination.port_pagein{margin-top: 20px; }
.contact .banner_form form{ margin: 0; }
.contact .banner_form form .input-fild.col-2{ max-width: 100%; padding: 0; }
.contact .banner_form h2 { font-size: 24px; line-height: 35px;}
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close{ width: 40px; height: 40px; top: 13px;}
.mfp-figure figure { margin: 0; height: 350px; }
button.mfp-arrow{  margin-top: 0; transform: translateY(-50%) scale(0.75); }
.privacy-page .privacy-inner{ padding-left: 0px; } 
.privacy-page ul, .privacy-page ol { margin-left: 0; }
}

@media(max-width:499px){
.col-2 { max-width: 100%; }
.container{ padding: 0 20px; }
form .input-fild { padding: 0;}
.banner_form form{ margin: 0; }
.captcha_field { transform: scale(0.8); margin-left: -26px; }
.service-item .service-box { padding: 15px; }
.swiper-button-prev, .swiper-button-next { width: 38px; height: 38px;}
.swiper-button-prev svg, .swiper-button-next svg { width: 10px; }
.header_btn a.button{ width: 40px; height: 40px; border-radius: 50%; background-image: url(images/user.png); background-position: center; background-repeat: no-repeat; background-size: 20px; font-size: 0; padding: 0; }
.header_btn a.button.phone_icn{ padding: 0;     background-position: center;}
.banner_form h2 { font-size: 24px; line-height: 30px; padding: 0 0 12px;}
.header_logo { max-width: 47%; }
header { padding: 11px 0; }
.gallery-item { max-width:100%; }
.gallery-item a { height: 300px; }
.page_content { padding-bottom: 15px; }
.inner_page { padding: 38px 0; }
.services, .about, .faq, .ptb_57, .gallery, .contact { padding: 35px 0; }
.servics_ares iframe { height: 250px; }
.header_inr nav > ul > li > a{ font-size: 16px; min-height: 40px; padding: 0 32px 0 12px; }
.header_inr nav ul li > ul.sub-menu li a { padding: 0 20px 0 18px; min-height: 40px; }
.menu-expand{  top: 7px; width: 25px; height: 25px; right: 6px; }
.header_inr nav{  max-width: 90%; padding: 55px 15px 20px; background-size: cover; background-position: bottom; }
.copyright{ justify-content: center; text-align: center; }
}