/**
Theme Name: Vicbourne Homes
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. 
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: vicbourne-homes
Template: astra
*/

.entry-content p {
	margin-bottom: 15px;
}

.center{
	text-align:center;
}

.white{
	color:#fff!important;
}

:focus{
	outline:0px!important;
	border:0px!important;
}

*:not(p),
footer p,
header p,
body p:last-child,
.no-mb {
	margin-bottom: 0px !important;
}

:root {
        --site-border: 24px;
}

.vc_column-inner {
	padding-top: 0px !important;
}

a:focus {
	outline: 0px !important;
}

li.current-menu-ancestor > a .menu-text, li.current-menu-ancestor > a .ast-icon.icon-arrow{
	color:#000;
}

li.current-menu-ancestor:hover > a .menu-text, li.current-menu-ancestor:hover > a .ast-icon.icon-arrow{
	color:#0095e0!important;
}

.pd-side-none>div>div {
	padding-left: 0px !important;
	padding-right: 0px !important
}

.bg-video{
	    width: 100%;
	pointer-events:none;
	border-radius:15px;
}

.web-btns a, #gform_submit_button_1, #gform_submit_button_2, .white-btn{
	           background: #0095e0;
    font-size: 16px;
        padding: 6px 25px 8px;
    border-radius: 30px;
    color: #fff;
    font-weight: 600;
    font-family: 'Plus Jakarta Sans';
    display: inline-block;
    line-height: 26px;
    border: 1px solid #0095e0;
    transition: 0.5s all;
}

.web-btns a:hover, #gform_submit_button_1:hover, .dark-btn a, #gform_submit_button_2:hover{
	background:#262626;
	color:#fff!important;
	border-color:#262626;
}

.dark-btn a:hover, .web-btns .white-btn:hover{
	background:#fff;
	border-color:#fff;
	color:#262626!important;
}

.small-head.dark-small{
	color:#fff;
	border-color:#fff;
}

.head-btns{
	    display: flex;
    column-gap: 10px;
    align-items: center;
}

.head-call img{
	         background:#0095e0;
    padding: 8px;
    width: 33px;
    border-radius: 40px;
    margin-right: 5px;
}

.head-call{
	        font-size: 16px;
    color: #fff!important;
    background: #262626;
    padding: 5px 20px 5px 5px;
    border-radius: 30px;
    font-weight: 600;
    font-family: 'Plus Jakarta Sans';
	transition:0.5s all;
}

.head-call span{
	    position: relative;
    bottom: -2px;
}

.head-call:hover{
	background:#f5f5f5;
	color:#262626!important;
}

.header-widget-area[data-section="sidebar-widgets-header-widget-1"]{
	padding-right:0px!important;
}

.small-head{
	        font-size: 13px;
    border: 1px solid #0095e0;
    border-radius: 30px;
    padding: 5px 20px;
    display: inline-block;
    text-transform: uppercase;
    line-height: 20px;
    color: #0095e0;
}

.main-home-banner{
      position: absolute;
    bottom: 0;
    padding: 20px 20px 0;
    background: #ffff;
    border-radius: 15px 15px 0 0;
    left: 0;
    right: 0;
    margin: auto;
    display: block;
    text-align: center;
    width: 60%;
}

.home-about-big{
      font-size: 20px;
    font-family: 'Plus Jakarta Sans';
    width: 75%;
    margin: auto;
    line-height: 33px;
    color: #262626;
}

.h-ban-txt{
    font-family: 'Plus Jakarta Sans';
    color: #fff;
    margin-bottom: 10px !important;
}

.home-about-bot{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
    padding-top: 40px;
}

.home-about-left{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.bg-img{
	background-size:cover!important;
	background-position:center!important;
	border-radius:15px;
}

.home-about-left{
	background:url('/wp-content/uploads/2026/08/interior-kitchen-img.webp');
}

.h-a-right{
	        border-top: 1px solid #ccc;
    padding: 20px 0 8px;
    display: grid;
    grid-template-columns: 2fr 1fr;
    justify-items: flex-end;
    grid-column-gap: 30px;
    align-content: center;
    margin-top: 25px !important;
}

.miss-txt{
	font-size: 14px;
    margin-bottom: 0px !important;
    color: #606060;
}

.counter-sec{
	    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 100px;
	text-align:center;
}

/* 1. Register custom numeric properties so CSS can animate them */
@property --num-houses {
  syntax: "<integer>";
  initial-value: 0;
  inherits: false;
}

@property --num-reviews {
  syntax: "<integer>";
  initial-value: 0;
  inherits: false;
}

@property --num-satisfaction {
  syntax: "<integer>";
  initial-value: 0;
  inherits: false;
}

/* 2. Keyframes defining target numbers */
@keyframes countHouses {
  to { --num-houses: 700; }
}

@keyframes countReviews {
  to { --num-reviews: 5; }
}

@keyframes countSatisfaction {
  to { --num-satisfaction: 100; }
}

/* 3. Render values using CSS Counters */
.count-houses {
  animation: countHouses 2.5s ease-out forwards;
  counter-reset: count var(--num-houses);
}
.count-houses::before {
  content: counter(count) "+";
}

.count-reviews {
  animation: countReviews 2s ease-out forwards;
  counter-reset: count var(--num-reviews);
}
.count-reviews::before {
  content: counter(count) ".0";
}

.count-satisfaction {
  animation: countSatisfaction 2.5s ease-out forwards;
  counter-reset: count var(--num-satisfaction);
}
.count-satisfaction::before {
  content: counter(count) "%";
}

.count-num{
	    font-size: 60px;
    line-height: 60px;
    font-weight: 700;
    margin-bottom: 0px ! Important;
}

.count-head{
	      font-family: 'Plus Jakarta Sans';
    font-size: 23px;
    padding-top: 10px;
    padding-bottom: 5px;
    margin-bottom: 0px !important;
}

.count-txt{
	color:#606060;
}

.wd70{
	width:70%;
	margin:auto;
}

.star img{
	       width: 75px;
    margin-top: -6px; 
}

.ch-right-top > div{
	     background: #000000ab;
    padding: 20px;
    border-radius: 15px;
    color: #fff;
}

.ch-r-top{
	display: flex;
    column-gap: 15px;
    border-bottom: 1px solid #fff;
    padding-bottom: 20px;
    margin-bottom: 20px !important;
    align-items: center;
}

.ch-num{
	      font-size: 30px;
    font-family: 'Plus Jakarta Sans';
    margin-bottom: 0px !important;
    line-height: 30px;
}

.ch-num span{
	    margin-top: -4px;
}

.why-ex{
	    font-size: 20px;
    font-family: 'Plus Jakarta Sans';
    margin-bottom: 0px !important;
}

.choose-bot-mid{
	    grid-template-rows: repeat(2, 1fr);
}

.why-choose-bot{
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    padding-top: 30px;
}

.choose-in{
	padding: 30px;
    border-radius: 15px;
	background:#fff;
	border:1px solid #f5f5f5;
	transition:0.5s all;
}

.choose-in:first-child, .choose-in:hover{
	background:#f5f5f5;
}

.choose-in .why-head{
	       grid-column-gap: 10px;
    padding-bottom: 30px;
    font-size: 17px;
    font-weight: 600;
    font-family: 'Plus Jakarta Sans';
    display: grid;
    grid-template-columns: 25px auto;
    line-height: 24px;
}

.choose-in .why-txt{
	border-bottom: 1px solid #ccc;
    padding-bottom: 25px;
    margin-bottom: 30px !important;
}

.why-point span{
	    font-size: 14px;
    border: 1px solid;
    padding: 5px 20px;
    border-radius: 30px;
    line-height: 20px;
}

.why-point{
	display:flex;
	column-gap:10px;
}

.why-head img{
	    width: 25px;
    margin-right: 8px;
}


.sub-head{
	      font-size: 18px;
    line-height: 30px;
}

.point-img{
	       width: 50px;
    margin-top: 10px;
}

.point-head{
	    font-family: 'Plus Jakarta Sans';
    font-size: 20px;
    margin-bottom: 5px !important;
    font-weight: 600;
}

.home-content2-sec{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
}

.cont-point-in{
	 display: grid;
    grid-template-columns: 80px auto;
    padding-bottom: 30px;
}

.content2-left{
	background:url('/wp-content/uploads/2026/08/staircase.webp');
}

.desk-space{
	    height: 700px;
}

.home-reviews-top{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
    padding-bottom: 30px;
}

.h-content3-sec{
	   display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 100px;
    align-items: center;
}

.h-cont3-left{
	    background: url('/wp-content/uploads/2026/08/bathroom-img.webp');
    height: 100%;
}

.process-bot-sec{
	    padding-top: 30px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: 20px;
}

.process-in{
	 background: #f5f5f5; 
    padding: 30px;
    border-radius: 15px;
	position:relative;
}

.process-top img{
	        width: 25px;
    height: 25px;
}

.process-top{
	       padding-bottom: 30px;
    display: flex;
    column-gap: 10px;
    min-height: 80px;
}

.process-head{
	       font-size: 18px;
    font-family: 'Plus Jakarta Sans';
    line-height: 24px;
}

.process-num{
           position: absolute;
    bottom: 0px;
    right: 0;
    font-size: 130px;
    line-height: 61px;
    margin-bottom: 0px !important;
    font-family: 'Manrope';
    font-weight: 800;
    color: #fff;
}

.process-txt {
	position:relative;
	z-index:1;
}

.faq-sec-main{
	    display: grid;
    grid-template-columns: 1.2fr 1.8fr;
    grid-column-gap: 100px;
}

.faq-answer{
	    display: none;
    padding: 20px;
}

.faq-question{
	       font-size: 16px;
    background: #f5f5f5;
    padding: 20px;
    border-radius: 15px;
    display: grid;
    justify-content: space-between;
    column-gap: 20px;
    line-height: 20px;
    grid-template-columns: auto 25px;
	    cursor: pointer;
}

.faq-head, .f-bot-links{
	    display: flex;
    column-gap: 10px;
}

.accordion{
	    display: grid;
    grid-row-gap: 10px;
}

.faq-plus:before{
	   content: '';
    display: block;
    width: 11px;
    height: 1px;
    background: #fff;
    position: absolute;
    right: 7px;
    top: 12px;
}

.faq-plus:after{
	      content: '';
    display: block;
    width: 1px;
    height: 11px;
    background: #fff;
    position: absolute;
    right: 12px;
    top: 7px;
}

.faq-plus{
	    background: #0095e0;
    width: 25px;
    height: 25px;
    border-radius: 30px;
    position: relative;
}

.faq-item.active .faq-plus:after, .gform_required_legend{
	display:none;
}

.foot-left-head{
	    font-size: 35px;
    padding-bottom: 20px;
    line-height: 35px;
	color:#000;
}

.foot-left-txt a, .f-bot-links a{
      text-decoration-line: underline;
}

.foot-social{
	    display: flex;
    column-gap: 10px;
    padding-top: 25px;
}

.foot-social a img{
	border: 1px solid #0095e0;
    border-radius: 10px;
    padding: 10px;
    width: 40px;
}

.footer-top, .footer-bottom{
	    display: grid;
    grid-template-columns: 1.2fr 1.8fr;
    grid-column-gap: 50px;
}

.foot-head{
	       font-family: 'Plus Jakarta Sans';
    text-transform: uppercase;
    font-size: 18px;
    padding-bottom: 20px;
    line-height: 18px;
    color: #000000;
    font-weight: 600;
}

footer p, footer a{
	color:#494949;
}

footer a:hover{
	color:#349dd5;
}

.foot-links{
	     display: grid;
    grid-row-gap: 6px;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
}

.footer-main{
	    display: grid;
    grid-row-gap: 50px;
}

.footer-bottom{
	    align-items: center;
    border-top: 1px solid #ccc;
    padding-top: 50px;
}

.foot-bot-left img{
	width:300px;
}

.foot-bot-right{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 30px;
    justify-items: flex-end;
}

.foot-right{
	    display: grid;
    grid-template-columns: 1.7fr 1.3fr;
    grid-column-gap: 50px;
}

.refer-txt p{
	padding-bottom:12px;
}

.home-subscribe, .bg-img-overlay, .home-content2{
	background-attachment:fixed!important;
}

.subscribe-main{
	background: #fff;
    padding: 50px;
    border-radius: 15px;
    width: 50%;
    margin: auto;
}

.gform_fields{
	    gap: 20px !important;
}

.gform_fields input[type=text], .gform_fields input[type=email]{
	    border-radius: 30px!important;
    padding: 10px 20px!important;
    line-height: 20px!important;
    height: inherit!important;
}

.subscribe-section{
	padding-bottom:20px;
}

.subscribe-main .gform-footer.gform_footer{   
	    justify-content: center;
}

.contact-ban-img{
	background:url('/wp-content/uploads/2026/07/happy-family.webp');
}

.about-ban-img{
	background:url('/wp-content/uploads/2026/07/happy-family.webp');
}

.inner-ban-img{
	height:400px;
	background-attachment:fixed;
}

.inner-ban-sec{
	      display: grid;
    grid-template-columns: 2fr 1fr;
    grid-column-gap: 100px;
    padding: 70px 0 50px;
    align-items: center;
}

.inner-ban-left h1{
	    font-size: 5vw;
}

.inner-ban-right p{
	margin-bottom:0px!important;
}

.main-header-bar-navigation .sub-menu{
	border-radius:0 0 15px 15px;
}

.process-main-section{
	    display: grid;
    grid-row-gap: 50px;
}

.process-bot-in{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 300px;
	position:relative;
	transition:0.5s all;
	padding:20px 30px 30px;
}

.process-bot-in:hover, .process-bot-in:first-child{
	background:#f5f5f5;
	border-radius:15px;
}

.process-sec-bot{
	    display: grid;
    grid-row-gap: 50px;
    position: relative;
}

.pro-img{
	      background: #f5f5f5;
    padding: 15px;
    border-radius: 15px;
    width: 80px;
    height: 80px;
}

.pro-num{
	      width: 40px;
    height: 40px;
    line-height: 40px;
    background: #f5f5f5;
    text-align: center;
    border-radius: 50px;
    font-weight: 600;
    margin-bottom: 0px !important;
}

.pro-img-num{
	       display: flex;
    column-gap: 20px;
    align-items: center;
    justify-content: flex-end;
}

.pro-bot-right.pro-img-num{
	   justify-content: flex-start;
}

.pro-head{
	    font-size: 20px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    margin-bottom: 0px !important;
    padding-bottom: 7px;
}

.process-sec-bot:before{
	   content: '';
    display: block;
    width: 3px;
    height: 100%;
    background: #7d7b7b;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    border-radius: 10px;
    z-index: 1;
}

.process-bot-in:before{
	    content: '';
    display: block;
    width: 23px;
    height: 23px;
    border-radius: 20px;
    border: 3px solid #7d7b7b;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    background: #fff;
	top:42%;
	z-index:2;
}

.process-bot-in:after{
	        content: '';
    display: block;
    width: 7px;
    height: 7px;
    border-radius: 20px;
    background: #7d7b7b;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 46%;
    opacity: 0;
	z-index:2;
}

.process-bot-in:hover::after{
	opacity:1;
		top:46.5%;
}

.process-bot-in:first-child::after{
	opacity:1;
}

.process-bot-in:hover .pro-img, .process-bot-in:hover .pro-num, .process-bot-in:first-child .pro-img, .process-bot-in:first-child .pro-num{
	background:#fff;
}

.pro-bot-left.pro-left-txt{
	text-align:right;
}

.faq-main-page{
    display: grid;
    grid-row-gap: 30px;
}

.faq-bot .accordion{
	    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 10px;
}

.about-page-main{
	display: grid;
    grid-template-columns: 1.2fr 1.8fr;
    grid-column-gap: 100px;
}

.abt-big{
	    font-size: 25px;
    line-height: 38px;
}

.about-ban-bot{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
}

.abt-img1 {
	background:url('/wp-content/uploads/2026/07/room3.webp');
}

.abt-img2 {
	background:url('/wp-content/uploads/2026/07/happy-family.webp');
}

.abt-img3 {
	background:url('/wp-content/uploads/2026/07/room3.webp');
}

.abt-bot-left{
	    display: grid;
    grid-template-rows: 2fr 1fr;
    grid-row-gap: 20px;
}

.abt-img-in{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 20px;
}

.abt-bot-right .faq-question{
	    padding: 0 0 20px 0;
    background: transparent;
    border-bottom: 1px solid #ccc;
    border-radius: 0;
}

.abt-bot-right .accordion{
grid-row-gap:20px;
	padding-top:20px;
}

.bg-img-overlay:before{
	       content: '';
    display: block;
    background: linear-gradient(1deg, #000000, #00000030);
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
}

.inner-ban-txt{
	    color: #fff;
    width: 55%;
    margin: auto;
    text-align: center;
}

.inner-ban-txt h1{
	color:#fff;
}

.policy-head{
	font-size: 22px;
    font-family: 'Plus Jakarta Sans';
    line-height: 22px;
    font-weight: 700;
}


.policy-subhead{
	font-size: 18px;
    font-family: 'Plus Jakarta Sans';
    line-height: 18px;
    font-weight: 700;
}

.policy-top{
	padding-bottom:30px;
}

.policy-bot{
	    display: grid;
    grid-row-gap: 35px;
}

.policy-head.pd-b{
	padding-bottom:5px;
}

.promote-big-head{
	       font-size: 40px;
    width: 80%;
    line-height: 55px;
    margin: auto;
    text-align: center;
    font-weight: 700;
    padding-bottom: 40px;
}

.promote-sec-bot {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-column-gap: 100px;
  align-items: center;
}

.offer1-img img,
.offer2-img img {
  border-radius: 15px;
  width: 100%;
  height: auto;
  display: block;
  transition: clip-path 0.8s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.8s ease;
  opacity: 0;
}

.offer1-img img {
  clip-path: inset(0 100% 0 0); 
}

.offer2-img img {
  clip-path: inset(0 0 0 100%); 
}

.offer1-img img.is-visible,
.offer2-img img.is-visible {
  clip-path: inset(0 0 0 0);
  opacity: 1;
}

.promote-head{
	    font-size: 30px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 600;
    border-bottom: 1px solid #000;
    display: inline-block;
    padding-bottom: 10px;
    margin-bottom: 20px !important;
}

.promote-sec{
	    display: grid;
    grid-row-gap: 80px;
}

.custom1-left{
	background:url('/wp-content/uploads/2026/07/room3.webp');
}

.custom-head{
	   font-size: 20px;
    line-height: 33px;
}

.custom1-home-bot{
	    padding-top: 35px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 50px;
}

.custom2-bot{
	          display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    margin-bottom: -100px !important;
    z-index: 1;
    position: relative;
    background: #f5f5f5;
    padding: 30px 20px 20px;
    border-radius: 0px 0px 15px 15px;
}

.desk-high{
	height: 500px;
    background-attachment: fixed !important;
    border-top-left-radius: 0px !important;
    border-top-right-radius: 0px !important;
}

.custom2-in img{
    width: 50px;
}

.custom2-section{
	overflow:inherit!important;
	border-bottom-left-radius:0px!important;
	border-bottom-right-radius:0px!important;
}

.custom2-in{
	background: #fff;
    padding: 30px;
    border-radius: 15px;
}

.cust2-head{
	font-size: 18px;
    font-family: 'Plus Jakarta Sans';
    font-weight: 600;
    margin-bottom: 5px !important;
    padding-top: 50px;
}

.custom3-right{
	background:url('/wp-content/uploads/2026/07/room3.webp');
}

.custom3-main{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
}

.single-post #comments{
	display:none!important;
}

.blog-head{
	    font-size: 20px;
    font-family: 'Plus Jakarta Sans';
    font-weight: 600;
    line-height: 20px;
}

.blog-sec{
	    padding-bottom: 35px;
}

.single-post .entry-content .blog-sec:last-child{
	padding-bottom:0px!important;
}

.single-post #primary, .single-post article{
	padding:0px!important;
	margin:0px!important;
}

.single-post #primary{
	padding:120px 0!important;
}

.single-post .entry-meta{
	padding: 20px 0;
}

.banner-section{
	    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.banner-left{
	    padding: 120px 120px 120px 0;
}

.house-design-left{
	background: url(/wp-content/uploads/2026/07/happy-family.webp);
}

.tailor-bot{
	    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding-top: 30px;
    grid-column-gap: 30px;
}

.tailor-in{
	    background: #fff;
    border-radius: 15px;
}

.tailor-in img{
	border-radius:15px 15px 0 0;
}

.tail-in-bot{
	  padding: 20px;
    text-align: center;
}

.tail-head{
	    font-family: 'Plus Jakarta Sans';
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 0px !important;
    padding-bottom: 5px;
}

.house-sec2-right{
	background:url('/wp-content/uploads/2026/07/happy-family.webp');
}

.house-des-sec2-bot{
	    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 50px;
    padding-top: 20px;
}

.home-video{
	    height: 85vh;
    overflow: hidden;
    border-radius: 15px;
}

/* Contact Page Css Start */

.contact-top h2{
	    font-size: 120px;
    line-height: 120px;
}

.contact-top{
	       display: grid;
    grid-template-columns: 2fr 1fr;
    grid-column-gap: 100px;
    align-items: end;
}

.contact-main{
	    display: grid;
    grid-row-gap: 70px;
}

.contact-bot{
	    display: grid;
    grid-template-columns: 1fr 2fr;
    grid-column-gap: 100px;
}

.contact-head{
	      font-size: 20px;
    margin-bottom: 5px !important;
    font-weight: 600;
    font-family: 'Plus Jakarta Sans';
}

.contact-left{
	         display: grid;
    grid-row-gap: 25px;
    align-content: flex-start;
}

.contact-left a{
	color:#262626;
}

.contact-txt{
	margin-bottom:0px!important;
}

.contact-left a:hover{
	color:#0095e0;
}

.contact-right input[type=text], .contact-right input[type=email], .contact-right input[type=tel], .contact-right textarea{
	border: 0px !important;
    box-shadow: 0 0 0 !important;
    border-bottom: 1px solid #000 !important;
    border-radius: 0px !important;
    padding: 20px 0 !important;
    height: inherit !important;
    line-height: 20px !important;
}

.contact-right textarea{
	    height: 150px !important;
}

.cont-map iframe{
	border: 0;
    margin-bottom: 10px !important;
    border-radius: 15px;
}

/* Contact Page Css End */

/* Why Build With Us Page Css Start */

.why-card-wrapper{
	    display: grid;
    grid-row-gap: 20px;
	padding-top:20px;
}

.why-card-in{
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #f5f5f5;
    padding: 50px;
    border-radius: 15px;
    grid-column-gap: 50px;
}

.why-img{
	border-radius:15px;
}

.why-icon{
	       background: #fff;
    padding: 15px;
    border-radius: 15px;
    width: 80px;
}

.why-card-head{
	    font-size: 20px;
    font-family: 'Plus Jakarta Sans';
    font-weight: 700;
}

.why-card-top, .why-card-bot{
	    display: grid;
    align-content: space-between;
    grid-row-gap: 20px;
}

/* Why Build With Us Page Css End */

/* Our People Page Css Start */

.team-sec-bot{
	    padding-top: 30px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 30px;
    grid-row-gap: 30px;
}

.team-bot{
	   position: absolute;
    bottom: 10px;
    left: 10px;
    right: 10px;
    background: #fff;
    border-radius: 15px;
    padding: 10px 10px 15px;
    margin: auto;
	text-align:center;
}

.team-head{
	    font-family: 'Plus Jakarta Sans';
    font-size: 20px;
    margin-bottom: 0px !important;
    font-weight: 600;
}

.team-in img{
	border-radius:15px;
}

.team-in {
	position:relative;
}

/* Our People Page Css End */

/* Blog Page Css Start */

.ast-no-sidebar .site-content .ast-article-image-container--wide{
	margin:0px!important;
}

.single-post .ast-single-post-featured-section img{
	        object-fit: none !important;
    border-radius: 15px;
    width: 100%;
    margin-bottom: 30px !important;
}

.blog-post-grid .vc_gitem-zone.vc_gitem-zone-a{
	    border: 1px solid #ccc;
    border-radius: 15px;
    padding: 20px;
}

.blog-post-grid .vc_single_image-img{
	border-radius:15px!important;
}

.blog-post-grid .blog-head{
	    line-height: 30px;
    padding-top: 15px;
}

.blog-post-grid .vc_col-sm-12.vc_gitem-col, .blog-post-grid .vc_gitem_row.vc_row.vc_gitem-row-position-top, .vc_gitem-zone-mini{
	padding:0px!important;
}

:is(.vc_gitem-zone-a,.vc_gitem-zone-b) .vc_gitem-row-position-bottom, .vc_gitem_row.vc_row.vc_gitem-row-position-top{
	position:relative;
}

.vc-gitem-zone-height-mode-auto:before{
	display:none!important;
}

.blog-post-grid{
	padding-top:20px;
}


/* Blog Page Css End */

/* House Designs Page Css Start*/
#clear-filter{
		    width: 100%;
    border-radius: 30px;
	}
	
.filter-group select, #search-design{
		    padding: 10px 20px;
    height: inherit;
    border-radius: 30px;
	}

.house-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding-top: 30px;
}

.house-card {
  background: #fff;
  transition: 0.3s;
  border-radius: 15px;
  border: 1px solid #f5f5f5;
}

.house-card:hover {
  transform: translateY(-5px);
}

.house-image {
  position: relative;
  border-radius: 15px 15px 0 0;
}

.house-image img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  display: block;
}

.floorplan-btn {
  position: absolute;
  top: 15px;
  right: 15px;
	z-index:5;
  background: #fff;
  color: #000000;
  padding: 10px 15px;
  text-decoration: none;
  font-size: 14px;
  border-radius: 15px;
  font-family: "Plus Jakarta Sans";
}

.house-content {
  padding: 20px;
}

.house-content h2 {
  font-size: 22px;
}

.frontage {
  color: #000000;
  font-size: 15px;
  margin-bottom: 0px;
  padding: 10px 0 5px 0;
}

.house-specs {
  display: flex;
  gap: 20px;
  margin-bottom: 10px !important;
  padding-bottom: 10px;
}

.house-specs span {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 700;
}

.details-btn {
  display: block;
  text-align: center;
  width: 100%;
  background: #005d9b;
  color: #fff;
  padding: 10px;
  text-decoration: none;
  font-weight: bold;
  transition: 0.3s;
}

.details-btn:hover {
  background: #003f70;
  color: #fff;
}

.house-image {
  position: relative;
  overflow: hidden;
}

.house-main-image {
  width: 100%;
  height: 280px;
  object-fit: cover;
  transition: all 0.35s ease;
}

/* Default facade image */
.house-main-image:not(.show-floorplan) {
  object-fit: cover;
}

/* Floor plan image */
.house-main-image.show-floorplan {
  object-fit: contain;

  background: #fff;

  padding: 15px;

  height: 280px;
}

.house-filters {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
  padding: 20px;
  background: #f5f5f5;
  border-radius: 15px;
  margin-top: 30px;
}

.filter-group label {
  color: #000;
}

.house-specs span img {
  width: 30px;
}

.house-facade img{
	border-radius:15px;
}

.house-design-header{
	padding-top:50px;
}

.floor-plan-bot{
	       display: grid;
    grid-template-columns: 1fr 2fr;
    padding: 50px 0;
    grid-column-gap: 150px;
}

.front-desc{
	       font-size: 20px;
    margin-bottom: 15px !important;
    line-height: 20px;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 700;
    padding-bottom: 15px;
}

.house-design-specs strong img{
	width: 40px;
    display: block;
}

.house-in-specs {
	    display: flex;
    column-gap: 40px;
    text-align: center;
}

.single-floor-desc{
	  display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 100px;
    padding-top: 50px;
}

.single-house_design p{
	margin-bottom:15px!important;
}

.desc-head{
	    font-family: 'Plus Jakarta Sans';
    font-size: 20px;
    font-weight: 600;
}

.bullet-points ol li{
	list-style-type:circle;
}

.bullet-points > li{
	position: relative;
    list-style-type: none;
    padding-left: 32px;
}

.bullet-points > li:before{
	      content: '✓';
    display: block;
    width: 20px;
    height: 20px;
    background: #0095e0;
    line-height: 20px;
    text-align: center;
    font-size: 13px;
    color: #fff;
    border-radius: 5px;
    position: absolute;
    left: 0;
    top: 4px;
}

.bullet-points{
	    margin: 0px;
    display: grid;
    grid-row-gap: 7px;
}

.recent-house-card{
	border:1px solid #f5f5f5;
	border-radius:15px;
}
.dimension-head{
	    font-family: 'Plus Jakarta Sans';
    font-weight: 600;
    text-transform: capitalize;
    font-size: 18px;
}

.house-designs-description{
	padding-top:50px;
}

.single-floor-areas table{
	    border: 1px solid #ccc;
    border-radius: 15px;
    text-align: center;
    margin-bottom: 20px !important;
}

.single-floor-areas table td, .single-floor-areas table tr, .single-floor-areas table th{
	border:0px;
}

.single-floor-areas table tr:first-child{
	    background: #0095e0;
    color: #fff;
    border-radius: 15px 15px 0 0;
}

.single-floor-areas table tr:first-child th:first-child{
	border-top-left-radius:15px;
}

.single-floor-areas table tr:first-child th:last-child{
	border-top-right-radius:15px;
}

.single-floor-areas table tr:nth-child(even){
	background:#f5f5f5;
}

.recent-house-designs{
	padding-top:10px;
}

  .floorplan-wrapper {
        position: relative;
    border: 1px solid #f5f5f5;
    border-radius: 15px;
    }
    .floorplan-controls {
          display: flex;
    justify-content: center;
    gap: 20px;
    padding-bottom: 15px;
    background: #f5f5f5;
    padding: 10px;
    }
    .floorplan-controls button {
           background: none;
    border: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 12px;
    color: #000000;
    padding: 5px 10px;
    transition: opacity 0.2s;
    box-shadow: 0 0 0;
    }
    .floorplan-controls button:hover {
        opacity: 0.6;
    }
    .floorplan-controls button svg {
        width: 24px;
        height: 24px;
        margin-bottom: 5px;
        fill: currentColor;
    }
    .house-floorplan {
           overflow: hidden;
    text-align: center;
    width: 100%;
    padding: 50px;
    }
    #floorplan-img {
        transition: transform 0.3s ease;
        transform-origin: center center;
        max-width: 100%;
        height: auto;
		max-height: 700px;
    }

  .recent-house-designs-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 25px;
    }

    .recent-house-image {
           position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
    background: #fff;
    object-fit: contain;
    border-radius: 15px 15px 0 0;
    }

    .recent-house-img {
       position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    transition: opacity .4s ease;
    }

    .house-facade-image {
        opacity: 1;
        z-index: 2;
    }

    .house-floorplan-image {
        opacity: 0;
        z-index: 1;
    }

    .recent-house-card.show-floorplan .house-facade-image {
        opacity: 0;
    }


    .recent-house-card.show-floorplan .house-floorplan-image {
        opacity: 1;
        z-index: 2;
    }


/* House Designs Page Css End*/

/* – Media Screen Css – */

@media only screen and (min-width:1600px) {
	.wd-contained {
		max-width: 1440px;
		margin: auto !important;
	}
}



@media only screen and (min-width:768px) {
	
	.vc_row[data-vc-full-width="true"], .stretchMe, .site-footer {
		position: relative;
		        width: calc(100vw - (var(--site-border) * 2)) !important;
        left: 50% !important;
        margin-left: calc(-50vw + var(--site-border)) !important;
        max-width: none !important;
        border-radius: 15px;
	}

	nav#primary-site-navigation ul.main-header-menu li:last-child a {
		padding-right: 0px !important;
	}
	
	.site-footer{
		margin-bottom:20px!important;
	}
}


@media only screen and (min-width:1024px) {
	.pd-100 {
		padding: 120px 0px !important;
	}

	.pd-top {
		padding-top: 120px !important;
	}

	.pd-bottom {
		padding-bottom: 120px !important;
	}
	
	.site-primary-header-wrap{
		padding:0px 20px!important;
	}
	
	
}

@media only screen and (min-width:768px) and (max-width:1023px) {

	.pd-100 {
		padding: 100px 0px !important;
	}

	.pd-top {
		padding-top: 100px !important;
	}

	.pd-bottom {
		padding-bottom: 100px !important;
	}

	.site-primary-footer-inner-wrap,
	.wd-contained {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row,
	.site-below-footer-inner-wrap,
	.site-above-footer-inner-wrap {
		padding-left: 20px !important;
		padding-right: 20px !important;
		column-gap: 30px;
	}
}

@media only screen and (min-width:1024px) and (max-width: 1365px) {
	.ast-primary-header-bar .site-primary-header-wrap {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}


	.site-above-footer-inner-wrap,
	.ast-container,
	.wd-contained {
		padding-left: 30px !important;
		padding-right: 30px !important;
	}


	h2,
	.entry-content h2,
	h1,
	.entry-content h1 {
		font-size: 35px;
		line-height: 45px;
	}


}

@media only screen and (max-width:767px) {
	.pd-100 {
		padding: 70px 0px !important;
	}

.pd-top{
padding-top:70px!important;
}

.pd-bottom{
padding-bottom:70px!important;
}
	.wd-contained {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	.ast-builder-footer-grid-columns.site-primary-footer-inner-wrap.ast-builder-grid-row {
		grid-template-columns: 1fr;
		row-gap: 20px;
		padding-left: 20px;
		padding-right: 20px;
	}

	.site-above-footer-wrap[data-section="section-above-footer-builder"] .ast-builder-grid-row,
	.site-below-footer-inner-wrap {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	
	.why-card-wrapper{
	padding-top: 15px;
	}
	
	.inner-ban-sec{
		    grid-template-columns: 1fr;
    grid-row-gap: 15px;
    padding-bottom: 30px;
	}
	
	.why-card-in{
		    grid-template-columns: 1fr;
    padding: 20px;
    grid-row-gap: 20px;
	}
	
	.why-card-txt{
		    margin-bottom: 0px !important;
	}
	
	.h-main-ban-bot{
		width:100%;
		text-align:left;
	}
	
	.h-ban-head{
		         font-size: 20px;
        color: #000;
        line-height: 30px;
        width: 100%;
	}
	
	.home-video:before, .process-sec-bot:before, .process-bot-in:before, .process-bot-in:after{
		display:none;
	}
	
	.home-video {
    height: inherit;
	}
	
	.main-home-banner{
		    padding: 15px 15px 0;
		        width: 80%;
	}
	
	.home-ban1{
		padding:0px!important;
	}
	
	.h-ban-txt{
		color:#000;
	}
	
	.home-about-big{
		               width: 100%;
        font-size: 16px;
        line-height: 28px;
	}
	
	.home-about-bot{
		    padding-top: 20px;
    grid-template-columns: 1fr;
	}
	
	.home-about-top{
		text-align:left;
	}
	
	.h-a-right{
		   grid-template-columns: 1fr;
        grid-row-gap: 20px;
        justify-items: flex-start;
        padding-bottom: 0px;
	}
	
	.counter-sec, .home-content2-sec, .h-content3-sec, .faq-sec-main, .custom3-main, .about-ban-bot{
		    grid-template-columns: 1fr;
    grid-row-gap: 30px;
	}
	
	.abt-bot-left{
		grid-template-rows:auto;
	}
	
	.count-num{
		font-size: 35px;
    line-height: 40px;
	}
	
	.count-head{
		    font-size: 20px;
    padding: 5px 0 0;
	}
	
	.head-sep{
		height:10px!important;
	}
	
	.sub-head, .abt-big, .custom-head {
    font-size: 16px;
    line-height: 26px;
}
	
	.wd70, .subscribe-main, .inner-ban-txt{
		width:100%!important;
	}
	
	.subscribe-main{
		padding:30px;
	}
	
	.why-choose-bot, .process-bot-sec{
		padding-top: 20px;
    grid-template-columns: 1fr;
    grid-row-gap: 20px;
	}
	
	.choose-in .why-head{
    padding-bottom: 0px;
	}
	
	.choose-in{
		padding:20px;
	}
	
	.choose-in .why-txt {
    padding-bottom: 20px;
    margin-bottom: 25px !important;
}
	
	.home-subscribe, .bg-img-overlay, .home-content2, .desk-high{
		    background-attachment: inherit !important;
	}
	
	.desk-space, .desk-high {
    height: 220px;
}
	
	.small-head{
		font-size:12px;
	}

	.point-head {
    font-size: 18px;
    line-height: 24px;
}
	
	.point-img{
		width:40px;
		margin-top: 5px;
	}
	
	.cont-point-in {
    grid-template-columns: 60px auto;
	}
	
	.process-in, .custom2-in{
		padding:20px;
	}
	
	.cust2-head{
		padding-top:15px;
	}
	
	.process-top {
    min-height: inherit;
    padding-bottom: 15px !important;
	}
	
	.bg-img{
		height:250px;
	}
	
	.home-about-right{
		padding-top:20px;
	}
	
	.faq-question{
		font-size:15px;
	}
	
	.footer-top, .foot-right, .footer-bottom{
		    grid-template-columns: 1fr;
    grid-row-gap: 40px;
	}
	
	.site-primary-footer-wrap{
		padding:70px 0!important;
	}
	
	.foot-bot-right {
        grid-template-columns: 1fr;
        grid-row-gap: 20px;
        justify-items: flex-start;
    }
	
	.custom1-home-bot{
		padding-top:25px;
		grid-template-columns:1fr;
		grid-row-gap:30px;
	}
	
	.custom2-bot{
		    margin: 0px !important;
    padding: 30px 0 70px;
    grid-template-columns: 1fr;
    grid-row-gap: 20px;
	}
	
	.faq-main-page .accordion, .process-bot-in, .about-page-main, .home-reviews-top, .team-sec-bot{
		grid-template-columns:1fr;
	}
	
	.process-main-section{
		grid-row-gap:30px;
	}
	
	.pro-img-num{
		order:1;
		    justify-content: center!important;
	}
	
	.pro-left-txt{
		        order: 2;
        text-align: center!important;
        padding-top: 15px;
	}
	
	.process-bot-in{
		        border: 1px solid #f5f5f5;
        border-radius: 15px;
        padding: 30px;
	}
	
	.process-sec-bot, .team-sec-bot{
		grid-row-gap:20px;
	}
	
	
	.home-reviews-top{
		grid-row-gap:15px;
	}
	
	.promote-big-head{
		width: 100%;
    font-size: 22px;
    line-height: 35px;
    padding-bottom: 20px;
	}
	
	.offer1-img img, .offer2-img img{
		opacity: 1;
    clip-path: inherit;
	}
	
	.promote-sec-bot{
		        grid-template-columns: 1fr;
        grid-row-gap: 20px;
	}
	
	.promote-head{
		font-size:22px;
	}
	
	.promote-right{
		order:2;
	}
	
	.house-grid{
    grid-template-columns:1fr;
}

.house-content h2{
    font-size:30px;
}
}

@media only screen and (min-width:1366px) and (max-width: 1599px) {

	.ast-container,
	.ast-container-fluid {
		max-width: 1240px;
	}

	.wd-contained {
		max-width: 1200px;
		margin: auto !important;
	}

	h2,
	.entry-content h2,
	h1,
	.entry-content h1 {
		font-size: 40px;
	}

	header .custom-logo-link img{
		    max-width: 160px;
    width: 160px;
	}
	
	.ast-builder-menu-1 .menu-item > .menu-link{
	font-size: 15px !important;
        padding: 0px 12px;
	}
	
	.ast-builder-menu-1 .menu-item .sub-menu .menu-link{
        padding: 10px 12px;
	}
	
	header .web-btns a{
		    font-size: 14px;
    padding: 6px 20px 8px;
	}
	
	.site-header-primary-section-right-center{
	display:none;
}
	
	.h-ban-head {
    line-height: 80px;
    font-size: 70px !important;
}
	
	.header-widget-area-inner[data-section="sidebar-widgets-header-widget-1"]{
		padding:0px!important;
	}
	
	.head-call{
		 font-size: 14px;
	}
	
	.choose-in .why-head {
    min-height: 80px;
}
	
	.choose-in .why-txt{
		min-height:200px;
	}
	
	.desk-space {
    height: 500px;
}
	
	.process-head {
        font-size: 15px;
        line-height: 22px;
        font-weight: 600;
}
	
	.process-num {
    font-size: 100px;
	}
	
	.site-primary-footer-wrap .ast-builder-grid-row-container-inner{
		padding:0px 20px;
	}
	
.inner-ban-txt {
    width: 65%;
	}
	
	.inner-ban-left h1 {
    font-size: 4.5vw!important;
}
}

