:root{
  --navy-950:#033D32;
  --navy-900:#033D32;
  --navy-800:#064E3B;
  --navy-700:#064E3B;
  --blue-500:#064E3B;
  --blue-100:#EEF5F1;
  --amber-500:rgb(255, 212, 90);
  --amber-600:#064E3B;
  --charcoal:#033D32;
  --slate-600:#5B6672;
  --slate-100:#F5F8FB;
  --slate-50:#FAFBFC;
  --white:#FFFFFF;
  --radius:10px;
  --shadow-soft:0 10px 30px -12px rgba(3,61,50,.18);
  --shadow-card:0 4px 18px rgba(3,61,50,.08);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
	font-family: 'Plus Jakarta Sans', sans-serif;
  color: #000;
  background:var(--white);
  line-height:1.65;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,.font-display{
	font-family: 'Manrope', sans-serif;
  color: #000;
  font-weight: 700;
  letter-spacing:-0.01em;
}
.mono{font-family: 'Manrope', sans-serif;}
a{text-decoration:none;}
img{max-width:100%;display:block;}
.container-xl{max-width:1280px;}

/* ---------- Signature: Glass-grid texture ---------- */
.glass-grid{
  position:relative;
}
.glass-grid::before{
  content:"";
  position:absolute; inset:0;
  background-image:
    repeating-linear-gradient(0deg, rgba(255,255,255,.06) 0 1px, transparent 1px 68px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.06) 0 1px, transparent 1px 68px);
  pointer-events:none;
}
.glass-grid-dark::before{
  background-image:
    repeating-linear-gradient(0deg, rgba(3,61,50,.06) 0 1px, transparent 1px 56px),
    repeating-linear-gradient(90deg, rgba(3,61,50,.06) 0 1px, transparent 1px 56px);
}

/* ---------- Eyebrow / labels ---------- */
.eyebrow{
  font-family:'Space Mono',monospace;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.74rem;
  font-weight:700;
  color:#064E3B;
  display:inline-flex;
  align-items:center;
  gap:.55rem;
}
.eyebrow::before{
  content:"";
  width:26px; height: 4px;
  background: #064E3B;
  display:inline-block;
}
.eyebrow.on-dark{color:var(--amber-500);}

.section-pad{padding: 3.5rem 0;}
@media(max-width:767px){.section-pad{padding:3.5rem 0;}}

/* ---------- TOP BAR ---------- */
.topbar{
  position:sticky;
  top:0;
  z-index:1030;
  background:#fff;
  color:#064E3B;
  font-size:.82rem;
  padding:.5rem 0;
  border-bottom:1px solid rgba(6,78,59,.12);
  transition:background-color .25s ease,color .25s ease,border-color .25s ease;
}
.topbar a{color:#064E3B; transition:.2s;}
.topbar a:hover{color:var(--amber-500);}
.topbar .divider{width:1px;height:14px;background:rgba(6,78,59,.2);display:inline-block;}
.iso-chip{
  background:rgba(6,78,59,.06);
  border:1px solid rgba(6,78,59,.25);
  color: #064E3B;
  padding:.15rem .65rem;
  border-radius:20px;
  font-weight:700;
  letter-spacing:.03em;
  font-size:.72rem;
}
.topbar.scrolled{
  background:#064E3B;
  color:#fff;
  border-bottom-color:rgba(255,255,255,.18);
}
.topbar.scrolled a,
.topbar.scrolled a:hover { color:#fff; }
.topbar.scrolled .divider { background:rgba(255,255,255,.35); }
.topbar.scrolled .iso-chip {
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.45);
  color:#fff;
}

/* ---------- MAIN NAV ---------- */
.navbar-main{
  position:relative;
  z-index:1031;
  overflow:visible;
  background:
    radial-gradient(ellipse at 8% 50%,rgba(17,115,82,.38),transparent 30%),
    linear-gradient(110deg,#033D32 0%,#064E3B 52%,#033D32 100%);
  padding:.45rem 0;
  border-bottom:1px solid rgba(255,212,90,.3);
}
.navbar-main .container-xl{position:relative;z-index:1;max-width:none;padding-right:20px;padding-left:20px;}
.brand-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:128px;
  height:92px;
  padding:0;
  flex:0 0 auto;
}
.brand-logo img{display:block; width:100%; height:100%; object-fit:contain; transition:.3s;}

.nav-link-custom{
  font-family:'Sora',sans-serif;
  font-weight:600;
  font-size:.82rem;
  color:#fff!important;
  padding:.5rem .62rem!important;
  position:relative;
  white-space:nowrap;
}
.nav-link-custom::after{
  content:"";
  position:absolute; left:1rem; right:1rem; bottom:.2rem;
  height:2px; background:var(--amber-500);
  transform:scaleX(0); transform-origin:left;
  transition:.25s ease;
}
.nav-link-custom:hover::after,.nav-link-custom.active::after{transform:scaleX(1);}
.nav-link-custom:hover,
.nav-link-custom.active { color:#fff!important; }
.nav-link-custom.kk-groups-return{
  border:1px solid rgba(255,212,90,.75);
  border-radius:6px;
  color:#FFD45A!important;
  font-size:.66rem;
  line-height:1.2;
  padding:.28rem .4rem!important;
  white-space:nowrap;
}
.nav-link-custom.kk-groups-return:hover{background:rgba(255,212,90,.12);}
.navbar-main .btn-amber{
  position:relative;
  z-index:2;
  display:inline-flex;
  min-width:150px;
  min-height:46px;
  align-items:center;
  justify-content:center;
  border:2px solid #FFD45A;
  border-radius:12px;
  background:#064E3B;
  color:#FFD45A!important;
  font:700 .84rem 'Sora',sans-serif;
  white-space:nowrap;
}
.navbar-main .btn-amber:hover,
.navbar-main .btn-amber:focus-visible{background:#FFD45A;color:#033D32!important;}
.navbar-group-logo{
  display:flex;
  width:86px;
  height:62px;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  margin-left:12px;
}
.navbar-group-logo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.navbar-toggler { border-color:rgba(255,255,255,.55); }
.navbar-toggler-icon { filter:brightness(0) invert(1); }
@media (max-width:1199px){
  .navbar-main .container-xl{padding-right:16px;padding-left:16px;}
  .brand-logo{width:112px;height:82px;}
  .nav-link-custom{padding:.45rem .42rem!important;font-size:.76rem;}
  .nav-link-custom.kk-groups-return{font-size:.62rem;padding:.25rem .3rem!important;}
  .navbar-group-logo{display:none;}
  .navbar-main .btn-amber{min-width:138px;min-height:42px;font-size:.76rem;}
}
@media (max-width:991px){
  .navbar-main .container-xl{flex-wrap:wrap;}
  .navbar-main .navbar-collapse{flex-basis:100%;padding:8px 0 14px;}
  .navbar-main .navbar-nav{align-items:stretch!important;}
  .navbar-main .navbar-nav .nav-link{padding:.7rem .5rem!important;}
  .navbar-main .navbar-nav .kk-groups-return{display:inline-flex;width:max-content;margin:.35rem 0;padding:.35rem .5rem!important;font-size:.72rem;}
  .navbar-main .navbar-nav .nav-link::after{left:.5rem;right:auto;width:50px;}
  .navbar-main .navbar-collapse > .d-flex{margin-top:8px!important;}
  .navbar-group-logo{display:none;}
}

@media(min-width:992px){
  .nav-item.dropdown:hover .dropdown-menu{
    display:block; margin-top:0; animation:fadeDown .22s ease;
  }
  @keyframes fadeDown{from{opacity:0; transform:translateY(6px);} to{opacity:1; transform:translateY(0);}}
}
.dropdown-menu{
  border:none; border-radius:12px;
  box-shadow:var(--shadow-soft);
  padding:.6rem;
  min-width:280px;
}
.dropdown-item{
  border-radius:8px; padding:.6rem .75rem;
  font-size:.88rem; font-weight:500;
  color:var(--navy-800);
  display:flex; align-items:center; gap:.6rem;
}
.dropdown-item i{color:var(--amber-500); font-size:1.05rem;}
.dropdown-item:hover{background:var(--slate-100); color:var(--blue-500);}

.btn-amber{
	background: #033D32; 
	color: #fff!important;
  font-family:'Sora',sans-serif; font-weight:700; font-size:.88rem;
  padding:.65rem 1.4rem; border-radius:8px; border:none;
  transition:.25s;
}
.btn-amber:hover{background:#033D32; 
	color:#fff!important; transform:translateY(-1px);}
.btn-outline-navy{
  border:1.5px solid var(--navy-900); color:var(--navy-900);
  font-family:'Sora',sans-serif; font-weight:700; font-size:.88rem;
  padding:.6rem 1.3rem; border-radius:8px; transition:.25s;
}
.btn-outline-navy:hover{background:var(--navy-900); color:#fff;}
.phone-pill{
  display:flex; align-items:center; gap:.6rem;
}
.phone-pill .ic{
  width:40px;height:40px;border-radius:50%;
  background:var(--blue-100); color:var(--navy-800);
  display:flex; align-items:center; justify-content:center; font-size:1.1rem;
}
.phone-pill .lbl{font-size:.72rem; color:var(--slate-600); text-transform:uppercase; letter-spacing:.05em;}
.phone-pill .num{font-family:'Sora',sans-serif; font-weight:700; color:var(--navy-950); font-size:.95rem;}

/* ---------- HERO ---------- */
.hero-wrap{position:relative; background:var(--navy-950); overflow:hidden;}
.hero-slide{
  min-height:640px;
  display:flex; align-items:center;
  position:relative;
}
.hero-slide .bg-graphic{position:absolute; inset:0; z-index:0;}
.hero-overlay{
  position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(8,29,51,.97) 30%, rgba(3,61,50,.75) 62%, rgba(3,61,50,.35) 100%);
  z-index:1;
}
.hero-content{position:relative; z-index:2; padding:7rem 0 9rem;}
.hero-content h1{
  color:#fff; font-size:clamp(2.1rem,4vw,3.4rem); font-weight:800; line-height:1.12;
}
.hero-content h1 span{color:var(--amber-500);}
.hero-content p.lead-txt{
  color:#B9C7D6; font-size:1.08rem; max-width:560px; margin:1.2rem 0 2rem;
}
.hero-badge{
  display:inline-flex; align-items:center; gap:.5rem;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  color:#fff; padding:.4rem .9rem; border-radius:30px;
  font-size:.78rem; font-weight:600; letter-spacing:.03em;
  margin-bottom:1.3rem;
}
.hero-badge i{color:var(--amber-500);}

/* Skyline SVG illustration in hero */
.skyline-illustration{
  position:absolute; right:0; bottom:0; top:0; width:58%;
  z-index:1; opacity:.9;
}
@media(max-width:991px){.skyline-illustration{display:none;}}

/* Carousel controls custom */
.hero-wrap .carousel-indicators{bottom:0; margin-bottom:1.2rem;}
.hero-wrap .carousel-indicators [data-bs-target]{
  width:34px; height:3px; background:rgba(255,255,255,.35); border:none; border-radius:2px;
}
.hero-wrap .carousel-indicators .active{background:var(--amber-500);}
.hero-wrap .carousel-control-prev,.hero-wrap .carousel-control-next{width:5%; opacity:.6;}

/* Stat bar overlapping hero */
.stat-bar{
  position:relative; z-index:3;
  margin-top:-64px;
}
.stat-card{
  background:#fff; border-radius:16px; box-shadow:var(--shadow-soft);
  padding:1.6rem 1rem; text-align:center;
  border-bottom:3px solid var(--amber-500);
}
.stat-card .num{
  font-family:'Sora',sans-serif; font-weight:800; font-size:2.1rem; color:var(--navy-950);
  display:flex; align-items:baseline; justify-content:center; gap:.15rem;
}
.stat-card .num small{font-size:1.1rem; color:var(--amber-600);}
.stat-card .lbl{font-size:.82rem; color:var(--slate-600); font-weight:600; margin-top:.2rem;}

/* ---------- Trust strip ---------- */
.trust-strip{
  background:var(--slate-100); padding:1.6rem 0; border-bottom:1px solid #EDF1F5;
}
.trust-strip .heading-sm{
  font-family:'Space Mono',monospace; font-size:.72rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--slate-600); font-weight:700;
}
.client-chip{
  font-family:'Sora',sans-serif; font-weight:600; font-size:.88rem;
  color:var(--navy-800); background:#fff; border:1px solid #E4E9EF;
  padding:.5rem 1rem; border-radius:8px; white-space:nowrap;
}

/* ---------- About ---------- */
.about-visual{position:relative;}
.about-visual .frame-main{
  border-radius:18px; overflow:hidden; box-shadow:var(--shadow-soft);
}
.about-visual .frame-tag{
  position:absolute; bottom:-24px; left:-24px;
  background:var(--navy-950); color:#fff; border-radius:14px;
  padding:1.1rem 1.4rem; box-shadow:var(--shadow-soft);
  display:flex; align-items:center; gap:.8rem;
}
@media(max-width:575px){.about-visual .frame-tag{left:8px; bottom:-18px; padding:.8rem 1rem;}}
.frame-tag .yr{font-family:'Sora',sans-serif; font-weight:800; font-size:1.5rem; color:var(--amber-500);}
.frame-tag .txt{font-size:.72rem; color:#B9C7D6; line-height:1.3;}

.check-list{list-style:none; padding:0; margin:1.4rem 0;}
.check-list li{
  display:flex; align-items:flex-start; gap:.7rem; margin-bottom:.7rem;
color: #000; font-size:.95rem;
}
.check-list li i{color:var(--amber-500); font-size:1.05rem; margin-top:.15rem;}

/* ---------- Services ---------- */
.bg-slate{background:var(--slate-100);}
.service-card{
  background:#fff; border-radius:16px; 
  height:100%; border:1px solid #EEF1F4; transition:.3s;
  position:relative; overflow:hidden;
}
.service-card::before{
  content:""; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg,var(--blue-500),var(--amber-500));
  transform:scaleX(0); transform-origin:left; transition:.3s;
}
.service-card:hover{transform:translateY(-6px); box-shadow:var(--shadow-soft); border-color:transparent;}
.service-card:hover::before{transform:scaleX(1);}
.service-icon{
  width:58px; height:58px; border-radius:14px;
  background:var(--blue-100); color:var(--navy-800);
  display:flex; align-items:center; justify-content:center;
  font-size:1.6rem; margin-bottom:1.2rem; transition:.3s;
}
.service-card:hover .service-icon{background:var(--navy-950); color:var(--amber-500);}
.service-card h5{font-size:1.08rem; margin-bottom:.6rem;}
.service-card p{font-size:.88rem; color:var(--slate-600); margin-bottom:0;}
.service-card .num-tag{
  position:absolute; top:1.4rem; right:1.6rem;
  font-family:'Space Mono',monospace; font-size:.75rem; color:#D7DEE5; font-weight:700;
}

/* ---------- Facade technique tags ---------- */
.tech-tag{
  display:inline-flex; align-items:center; gap:.5rem;
  background:#fff; border:1px solid #E4E9EF; border-radius:30px;
  padding:.5rem 1rem; font-size:.85rem; font-weight:600; color:var(--navy-800);
  margin:.25rem;
}
.tech-tag i{color:var(--amber-600);}

/* ---------- BMU section (dark) ---------- */
.bmu-section{
  background:var(--navy-950); color:#fff; position:relative;
}
.bmu-section .eyebrow{color:var(--amber-500);}
.bmu-section h2{color:#fff;}
.bmu-section p.lead-p{color:#AFC0D2;}
.bmu-feature{
  display:flex; gap:1rem; padding:1rem 0; border-bottom:1px solid rgba(255,255,255,.08);
}
.bmu-feature:last-child{border-bottom:none;}
.bmu-feature .ic{
  width:44px;height:44px; min-width:44px; border-radius:10px;
  background:rgba(255,212,90,.12); color:var(--amber-500);
  display:flex; align-items:center; justify-content:center; font-size:1.15rem;
}
.bmu-feature h6{color:#fff; font-family:'Sora',sans-serif; font-weight:600; margin-bottom:.2rem; font-size:.95rem;}
.bmu-feature p{color:#93A5B9; font-size:.84rem; margin-bottom:0;}
.bmu-visual{
  border-radius:18px; overflow:hidden; position:relative; box-shadow:var(--shadow-soft);
}

/* ---------- Why choose us ---------- */
.why-item{
  display:flex; gap:1.1rem; position:relative; padding-bottom:2.1rem;
}
.why-item .idx{
  width:46px; height:46px; min-width:46px; border-radius:50%;
  background:var(--navy-950); color:var(--amber-500);
  display:flex; align-items:center; justify-content:center;
  font-family:'Space Mono',monospace; font-weight:700; font-size:.85rem;
  position:relative; z-index:2;
}
.why-item .rope-line{
  position:absolute; left:23px; top:46px; bottom:0; width:2px;
  background-image:linear-gradient(var(--amber-500) 60%, transparent 0%);
  background-size:2px 8px; background-repeat:repeat-y;
}
.why-item:last-child .rope-line{display:none;}
.why-item h5{font-size:1.02rem; margin-bottom:.35rem;}
.why-item p{font-size:.87rem; color:var(--slate-600); margin-bottom:0;}
.why-visual{
  border-radius:20px; overflow:hidden; box-shadow:var(--shadow-soft); position:relative;
}
.why-visual .badge-float{
  position:absolute; top:20px; right:20px;
  background:rgba(255,255,255,.95); backdrop-filter:blur(4px);
  border-radius:12px; padding:.8rem 1.1rem; box-shadow:var(--shadow-card);
  display:flex; align-items:center; gap:.7rem;
}
.badge-float .ic{
  width:38px; height:38px; border-radius:9px; background:var(--navy-950); color:var(--amber-500);
  display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.badge-float .t1{font-family:'Sora',sans-serif; font-weight:800; font-size:1rem; color:var(--navy-950); line-height:1;}
.badge-float .t2{font-size:.7rem; color:var(--slate-600);}

/* ---------- Projects ---------- */
.project-card{
  border-radius:16px; overflow:hidden; position:relative;
  height:290px; display:flex; align-items:flex-end;
  box-shadow:var(--shadow-card);
}
.project-card .pc-bg{position:absolute; inset:0;}
.project-card .pc-overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(8,29,51,0) 30%, rgba(8,29,51,.92) 100%);
}
.project-card .pc-body{position:relative; z-index:2; padding:1.3rem; color:#fff; width:100%;}
.project-card .pc-tag{
  font-family:'Space Mono',monospace; font-size:.68rem; letter-spacing:.08em;
  text-transform:uppercase; color:var(--amber-500); font-weight:700;
}
.project-card h6{color:#fff; font-family:'Sora',sans-serif; font-weight:700; margin:.3rem 0 0; font-size:1rem;}
.project-card:hover .pc-bg{transform:scale(1.06);}
.project-card .pc-bg{transition:.5s ease;}

/* ---------- Registrations ---------- */
.reg-badge{
  background:#fff; border:1px solid #E4E9EF; border-radius:14px;
  padding:1.3rem 1rem; text-align:center; height:100%;
  transition:.25s;
}
.reg-badge:hover{border-color:var(--amber-500); transform:translateY(-4px); box-shadow:var(--shadow-card);}
.reg-badge .ic{
  width:52px; height:52px; margin:0 auto .8rem; border-radius:50%;
  background:var(--blue-100); color:var(--navy-800);
  display:flex; align-items:center; justify-content:center; font-size:1.35rem;
}
.reg-badge .name{font-family:'Sora',sans-serif; font-weight:700; font-size:.82rem; color:var(--navy-900);}
.reg-badge .full{font-size:.72rem; color:var(--slate-600); margin-top:.15rem;}

/* ---------- CTA banner ---------- */
.cta-banner{
  background:linear-gradient(120deg, var(--navy-950) 0%, var(--navy-800) 100%);
  border-radius:24px; padding:3.2rem 2.5rem; color:#fff; position:relative; overflow:hidden;
}
.cta-banner h3{color:#fff; font-size:1.7rem; margin-bottom:.4rem;}
.cta-banner p{color:#AFC0D2; margin-bottom:0;}
@media(max-width:767px){.cta-banner{padding:2.2rem 1.4rem; text-align:center;}}

/* ---------- Contact ---------- */
.contact-card{
  background:#fff; border-radius:18px; box-shadow:var(--shadow-soft); padding:2.4rem;
}
.form-control{
  border-radius:9px; border:1.4px solid #E4E9EF; padding:.72rem 1rem; font-size:.92rem;
}
.form-control:focus{border-color:var(--blue-500); box-shadow:0 0 0 3px rgba(6,78,59,.12);}
.contact-info-item{display:flex; gap:1rem; margin-bottom:1.6rem;}
.contact-info-item .ic{
  width:46px; height:46px; min-width:46px; border-radius:12px;
  background:var(--navy-950); color:var(--amber-500);
  display:flex; align-items:center; justify-content:center; font-size:1.15rem;
}
.contact-info-item h6{font-size:.9rem; margin-bottom:.15rem; color:var(--navy-900);}
.contact-info-item p{font-size:.85rem; color:var(--slate-600); margin-bottom:0;}

/* ---------- Footer ---------- */
footer{background:var(--navy-950); color:#93A5B9; padding-top:4rem;}
footer h6{color:#fff; font-family:'Sora',sans-serif; font-weight:700; font-size:.95rem; margin-bottom:1.1rem;}
footer a{color:#93A5B9; font-size:.87rem; transition:.2s;}
footer a:hover{color:var(--amber-500);}
footer ul{list-style:none; padding:0;}
footer ul li{margin-bottom:.65rem;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08); margin-top:2.5rem; padding:1.3rem 0; font-size:.8rem;
}
.social-ic{
  width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,.06);
  display:flex; align-items:center; justify-content:center; color:#fff; transition:.25s;
}
.social-ic:hover{background:var(--amber-500); color:var(--navy-950);}

/* ---------- Back to top ---------- */
#backToTop{
  position:fixed; right:24px; bottom:24px; z-index:999;
  width:46px; height:46px; border-radius:50%;
  background:var(--amber-500); color:var(--navy-950);
  display:flex; align-items:center; justify-content:center;
  box-shadow:var(--shadow-soft); opacity:0; visibility:hidden; transition:.3s; border:none; font-size:1.1rem;
}
#backToTop.show{opacity:1; visibility:visible;}

/* Reveal animation */
.reveal{opacity:0; transform:translateY(24px); transition:.7s cubic-bezier(.2,.8,.2,1);}
.reveal.in{opacity:1; transform:translateY(0);}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1; transform:none; transition:none;}} 


/* =========================================================
			   RONAK ENTERPRISES - PREMIUM SLIDER
			   DESKTOP VERSION
			========================================================= */
			
			.ronak-fm-slider {
				--navy: #033D32;
				--blue: #064E3B;
				--white: #fff;
			
				position: relative;
				width: 100%;
				height: 75vh;
				min-height: 520px;
				overflow: hidden;
				background: var(--navy);
			
				font-family: "Inter", Arial, sans-serif;
			}

			.ronak-fm-track {
				position: relative;
				z-index: 1;
				width: 100%;
				height: 100%;
			
				display: flex;
				overflow: hidden;
			}
			
			.ronak-fm-slide {
				position: relative;
			
				height: 100%;
			
				flex: 0 0 72px;
			
				overflow: hidden;
				cursor: pointer;
			
				background: transparent;
			
				transition:
					flex-basis .95s cubic-bezier(.77,0,.18,1);
			}
			
			.ronak-fm-slide.active {
				flex: 1 1 auto;
				cursor: default;
			}
			
			
			/* IMAGE */
			
			.ronak-fm-img {
				position: absolute;
				inset: 0;
			
				width: 100%;
				height: 100%;
			
				object-fit: cover;
			
				opacity: 0;
				transform: scale(1.08);
			
				transition:
					opacity .8s ease,
					transform 1.5s cubic-bezier(.77,0,.18,1);
			}
			
			.ronak-fm-slide.active .ronak-fm-img {
				opacity: 1;
				transform: scale(1);
			}
			
			.ronak-fm-slide:not(.active) .ronak-fm-img {
				opacity: .12;
				filter: grayscale(.25);
			}
			
			
			/* OVERLAY */
			
			.ronak-fm-overlay {
				position: absolute;
				inset: 0;
			
				z-index: 2;
			
				background: linear-gradient(
					90deg,
					rgb(24 21 21),
					rgb(28 25 25),
					rgb(14 13 13)
				   )
			}
			
			.ronak-fm-slide.active .ronak-fm-overlay {
				background:
					linear-gradient(
						90deg,
						rgba(0, 0, 0, 0.4) 0%,
						rgba(0, 0, 0, 0.18) 40%,
						rgba(0, 0, 0, 0.08) 75%,
						rgba(3,25,45,.2) 100%
					);
			}
			
			
			/* COLLAPSED */
			
			.ronak-fm-collapsed {
				position: absolute;
				inset: 0;
			
				z-index: 10;
			
				display: flex;
				align-items: center;
				justify-content: center;
			
				flex-direction: column;
				gap: 15px;
			
				color: #fff;
			
				transition:
					opacity .35s ease,
					transform .5s ease;
			
				pointer-events: none;
			}

			@media (min-width: 768px) {
				.ronak-fm-slider.is-transitioning .ronak-fm-collapsed {
					opacity: 0;
					transition: none;
				}
			}
			
			.ronak-fm-slide.active .ronak-fm-collapsed {
				opacity: 0;
				transform: scale(.85);
			}
			
			.ronak-fm-number {
				font-size: 18px;
				font-weight: 700;
				letter-spacing: 2px;
				opacity: .55;
			}
			
			.ronak-fm-collapsed-title {
				writing-mode: vertical-rl;
				transform: rotate(180deg);
			
				white-space: nowrap;
			
				font-size: 22px;
				line-height: 1.2;
			
				font-weight: 600;
				text-align: center;
			}
			
			
			/* ACTIVE CONTENT */
			
			.ronak-fm-content {
				position: absolute;
			
				z-index: 20;
			
				left: 7.5%;
				bottom: 14%;
			
				width: min(680px, 65%);
			
				color: #fff;
			
				opacity: 0;
			
				transform: translateY(35px);
			
				transition:
					opacity .5s ease .25s,
					transform .8s cubic-bezier(.77,0,.18,1) .2s;
			
				pointer-events: none;
			}
			
			.ronak-fm-slide.active .ronak-fm-content {
				opacity: 1;
				transform: translateY(0);
			
				pointer-events: auto;
			}
			
			
			/* EYEBROW */
			
			.ronak-fm-eyebrow {
				display: flex;
				align-items: center;
				gap: 13px;
			
				margin-bottom: 26px;
			
				font-size: 12px;
				font-weight: 700;
			
				letter-spacing: 2px;
			}
			
			.ronak-fm-eyebrow span {
				width: 38px;
				height: 2px;
			
				display: block;
			
				background: #fff;
			}
			
			
			/* HEADING */
			
			.ronak-fm-content h2 {
				margin: 0;
			
				max-width: 720px;
			
				font-size: clamp(50px, 5vw, 76px);
			
				line-height: .98;
			
				font-weight: 400;
			
				letter-spacing: -3px;
			
				color: #fff;
			}
			
			.ronak-fm-content h2 strong {
				font-weight: 800;
			}
			
			
			/* DESCRIPTION */
			
			.ronak-fm-content p {
				max-width: 650px;
			
				margin: 28px 0 0;
			
				color: rgba(255,255,255,.85);
			
				font-size: 15px;
			
				line-height: 1.7;
			}
			
			
			/* COUNTER */
			
			.ronak-fm-counter {
				display: flex;
				align-items: center;
			
				gap: 12px;
			
				margin-top: 33px;
			
				font-size: 11px;
			
				letter-spacing: 2px;
			}
			
			.ronak-fm-counter b {
				font-weight: 700;
			}
			
			.ronak-fm-counter span {
				opacity: .55;
			}
			
			.ronak-fm-counter i {
				display: block;
			
				width: 64px;
				height: 1px;
			
				background: rgba(255,255,255,.65);
			}
			
			
			/* BUTTON */
			
			.ronak-fm-btn {
				display: inline-flex;
				align-items: center;
				justify-content: space-between;
			
				width: 195px;
				height: 52px;
			
				margin-top: 27px;
				padding: 0 18px 0 21px;
			
				border: 1px solid rgba(255,255,255,.55);
			
				color: #fff;
			
				text-decoration: none;
			
				font-size: 13px;
				font-weight: 700;
			
				transition: .3s ease;
			}
			
			.ronak-fm-btn span {
				font-size: 20px;
			
				transition: transform .3s ease;
			}
			
			.ronak-fm-btn:hover {
				background: #fff;
				color: var(--navy);
				border-color: #fff;
			}
			
			.ronak-fm-btn:hover span {
				transform: translate(4px,-4px);
			}
			
			
			/* CONTROLS */
			
			.ronak-fm-controls {
				position: absolute;
			
				right: 0;
				bottom: 0;
			
				z-index: 50;
			
				display: flex;
			}
			
			.ronak-fm-controls button {
				width: 58px;
				height: 58px;
			
				border: 1px solid rgba(255,255,255,.25);
				border-right: 0;
			
				background: rgba(3,25,45,.45);
			
				color: #fff;
			
				font-size: 20px;
			
				cursor: pointer;
			
				transition: .3s ease;
			}
			
			.ronak-fm-controls button:hover {
				background: #fff;
				color: var(--navy);
			}
			
			
			/* PROGRESS */
			
			.ronak-fm-progress {
				position: absolute;
			
				left: 7.5%;
				bottom: 6%;
			
				width: 230px;
				height: 2px;
			
				z-index: 40;
			
				background: rgba(255,255,255,.25);
			}
			
			.ronak-fm-progress span {
				display: block;
			
				width: 25%;
				height: 100%;
			
				background: #fff;
			
				transition: width .5s ease;
			}
			
			
			/* =========================================================
			   TABLET
			========================================================= */
			
			@media (max-width: 991px) {
			
				.ronak-fm-content {
					left: 8%;
					width: 68%;
				}
			
				.ronak-fm-content h2 {
					font-size: 52px;
				}
			
			}
			
			
			/* =========================================================
			   MOBILE
			   REWORKED FOR READABILITY
			========================================================= */
			
			@media (max-width: 767px) {
			
				.ronak-fm-slider {
			
					/*
					 * Enough vertical space for:
					 * collapsed tabs
					 * image
					 * readable content
					 */
			
					height: 680px;
					min-height: 680px;
			
					background: #033D32;
				}
			
			
				.ronak-fm-track {
					height: 100%;
			
					display: flex;
				}
			
			
				/* -----------------------------------------------
				   COLLAPSED SLIDE WIDTH
				----------------------------------------------- */
			
				.ronak-fm-slide {
					flex: 0 0 34px;
			
					height: 100%;
			
					transition:
						flex-basis .75s cubic-bezier(.77,0,.18,1);
				}
			
				.ronak-fm-slide.active {
					flex: 1 1 auto;
				}
			
			
				/* -----------------------------------------------
				   INACTIVE MOBILE SERVICE NAME
				   HORIZONTAL — NOT VERTICAL
				----------------------------------------------- */
			
				.ronak-fm-collapsed {
			
					gap: 6px;
			
					padding: 8px 2px;
			
					justify-content: center;
				}
			
				.ronak-fm-number {
					font-size: 7px;
			
					letter-spacing: 1px;
				}
			
				.ronak-fm-collapsed-title {
			
					writing-mode: horizontal-tb;
					transform: none;
			
					width: 125px;
			
					white-space: normal;
			
					text-align: center;
			
					font-size: 8.5px;
			
					line-height: 1.2;
			
					font-weight: 600;
				}
			
			
				/* -----------------------------------------------
				   ACTIVE IMAGE
				----------------------------------------------- */
			
				.ronak-fm-slide.active .ronak-fm-img {
			
					opacity: 1;
			
					transform: scale(1);
			
					/*
					 * Image remains visible behind content.
					 */
					object-position: center center;
				}
			
			
				/* -----------------------------------------------
				   MOBILE OVERLAY
				   Darker at bottom for readable text
				----------------------------------------------- */
			
				.ronak-fm-slide.active .ronak-fm-overlay {
			
					background:
						linear-gradient(
							to bottom,
							rgba(3,25,45,.03) 0%,
							rgba(3,25,45,.08) 27%,
							rgba(3,25,45,.30) 48%,
							rgba(3,25,45,.76) 69%,
							rgba(3,25,45,.97) 100%
						);
				}
			
			
				/* -----------------------------------------------
				   ACTIVE CONTENT
				----------------------------------------------- */
			
				.ronak-fm-content {
			
					left: 24px;
					right: 24px;
			
					bottom: 104px;
			
					width: auto;
			
					max-width: none;
			
					transform: translateY(25px);
				}
			
				.ronak-fm-slide.active .ronak-fm-content {
			
					transform: translateY(0);
				}
			
			
				/* -----------------------------------------------
				   EYEBROW
				----------------------------------------------- */
			
				.ronak-fm-eyebrow {
			
					margin-bottom: 16px;
			
					gap: 9px;
			
					font-size: 9px;
			
					line-height: 1;
			
					letter-spacing: 1.4px;
				}
			
				.ronak-fm-eyebrow span {
			
					width: 25px;
					height: 1px;
				}
			
			
				/* -----------------------------------------------
				   MOBILE HEADING
				   MUCH MORE READABLE
				----------------------------------------------- */
			
				.ronak-fm-content h2 {
			
					margin: 0;
			
					max-width: 100%;
			
					font-size: 37px;
			
					line-height: 1.02;
			
					letter-spacing: -1.4px;
			
					font-weight: 400;
				}
			
				.ronak-fm-content h2 strong {
					font-weight: 800;
				}
			
			
				/* -----------------------------------------------
				   MOBILE DESCRIPTION
				----------------------------------------------- */
			
				.ronak-fm-content p {
			
					max-width: 100%;
			
					margin-top: 17px;
					margin-bottom: 0;
			
					font-size: 13px;
			
					line-height: 1.55;
			
					color: rgba(255,255,255,.90);
				}
			
			
				/* -----------------------------------------------
				   COUNTER
				----------------------------------------------- */
			
				.ronak-fm-counter {
			
					margin-top: 20px;
			
					gap: 10px;
			
					font-size: 9px;
			
					letter-spacing: 1.5px;
				}
			
				.ronak-fm-counter i {
			
					width: 45px;
					height: 1px;
				}
			
			
				/* -----------------------------------------------
				   BUTTON
				----------------------------------------------- */
			
				.ronak-fm-btn {
			
					width: 170px;
			
					height: 48px;
			
					margin-top: 18px;
			
					padding: 0 16px 0 18px;
			
					font-size: 12px;
				}
			
				.ronak-fm-btn span {
					font-size: 18px;
				}
			
			
				/* -----------------------------------------------
				   PROGRESS
				----------------------------------------------- */
			
				.ronak-fm-progress {
			
					left: 24px;
					right: 24px;
			
					bottom: 62px;
			
					width: auto;
			
					height: 2px;
				}
			
			
				/* -----------------------------------------------
				   CONTROLS
				----------------------------------------------- */
			
				.ronak-fm-controls {
			
					right: 0;
					bottom: 0;
				}
			
				.ronak-fm-controls button {
			
					width: 46px;
					height: 46px;
			
					font-size: 16px;
				}
			
			}
			
			@media (max-width: 767px) {

/* MAIN SLIDER */
.ronak-fm-slider {
	width: 100%;
	height: 620px;
	min-height: 620px;
	overflow: hidden;
	background: #ffffff;
}


/* TRACK BECOMES VERTICAL */
.ronak-fm-track {
	width: 100%;
	height: 100%;

	display: flex;
	flex-direction: column;

	overflow: hidden;
}


/* =====================================================
   EACH SLIDE
===================================================== */

.ronak-fm-slide {
	position: relative;

	width: 100%;
	height: 45px;
	min-height: 45px;

	flex: 0 0 45px;

	overflow: hidden;

	background: transparent;

	cursor: pointer;

	transition:
		height .65s cubic-bezier(.77,0,.18,1),
		flex-basis .65s cubic-bezier(.77,0,.18,1);
}


/* =====================================================
   ACTIVE SLIDE
   REMAINING HEIGHT GOES TO IMAGE + CONTENT
===================================================== */

.ronak-fm-slide.active {

	height: calc(100% - 135px);
	min-height: 0;

	flex: 1 1 auto;

	cursor: default;

	background: transparent;
}


/* =====================================================
   COLLAPSED / SERVICE TAB
===================================================== */

.ronak-fm-collapsed {

	position: absolute;

	top: 0;
	left: 0;
	right: 0;

	width: 100%;
	height: 45px;

	min-height: 45px;

	padding: 0 10px;

	display: flex;

	flex-direction: row;

	align-items: center;
	justify-content: center;

	gap: 0;

	z-index: 30;

	opacity: 1;

	transform: none;

	pointer-events: auto;

	/* background: #f21d21; */

	color: #fff;

	border-bottom: 1px solid rgba(255,255,255,.35);

	transition: none;
}


/* ACTIVE TAB */
.ronak-fm-slide.active .ronak-fm-collapsed {

	opacity: 1;

	transform: none;

	background: #fff8ff;

	color: #111;

	border-bottom: 1px solid #e8dce7;

	pointer-events: none;
}


/* REMOVE NUMBER ON MOBILE */
.ronak-fm-number {

	display: none;
}


/* SERVICE NAME */
.ronak-fm-collapsed-title {

	display: block;

	width: auto;

	white-space: nowrap;

	writing-mode: horizontal-tb;

	transform: none;

	text-align: center;

	font-size: 11px;

	line-height: 1;

	font-weight: 500;

	letter-spacing: 0;

}


.ronak-fm-slide.active .ronak-fm-collapsed-title {

	font-weight: 500;

	color: #111;

}

/* =====================================================
   IMAGE
   IMAGE STARTS BELOW ACTIVE TAB
===================================================== */

.ronak-fm-img {

	position: absolute;

	top: 45px;
	left: 0;
	right: 0;
	bottom: 0;

	width: 100%;
	height: calc(100% - 45px);

	object-fit: cover;

	object-position: center center;

	opacity: 0;

	transform: scale(1);

	transition:
		opacity .55s ease;
}


/* ACTIVE IMAGE */
.ronak-fm-slide.active .ronak-fm-img {

	opacity: 1;

	transform: scale(1);

	object-fit: cover;
}


/* INACTIVE IMAGES MUST NOT SHOW */
.ronak-fm-slide:not(.active) .ronak-fm-img {

	opacity: 0;

	visibility: hidden;
}


/* =====================================================
   IMAGE OVERLAY
===================================================== */

.ronak-fm-overlay {

	position: absolute;

	top: 45px;
	left: 0;
	right: 0;
	bottom: 0;

	z-index: 5;

	background: transparent;

	pointer-events: none;
}


.ronak-fm-slide.active .ronak-fm-overlay {

	background:
		linear-gradient(
			to bottom,
			rgba(3,25,45,.04) 0%,
			rgba(3,25,45,.05) 25%,
			rgba(3,25,45,.22) 45%,
			rgba(3,25,45,.68) 68%,
			rgba(3,25,45,.96) 100%
		);
}


/* =====================================================
   CONTENT
===================================================== */

.ronak-fm-content {

	position: absolute;

	left: 28px;
	right: 28px;

	top: auto;
	bottom: 30px;

	width: auto;
	max-width: none;

	z-index: 20;

	color: #fff;

	opacity: 0;

	transform: translateY(20px);

	pointer-events: none;

	transition:
		opacity .45s ease .15s,
		transform .55s ease .15s;
}


.ronak-fm-slide.active .ronak-fm-content {

	opacity: 1;

	transform: translateY(0);

	pointer-events: auto;
}


/* =====================================================
   EYEBROW
===================================================== */

.ronak-fm-eyebrow {

	display: flex;

	align-items: center;

	gap: 9px;

	margin-bottom: 13px;

	font-size: 8px;

	line-height: 1;

	letter-spacing: 1.5px;

	font-weight: 700;

	color: #fff;
}


.ronak-fm-eyebrow span {

	display: block;

	width: 24px;

	height: 1px;

	flex-shrink: 0;

	background: #fff;
}


/* =====================================================
   HEADING
===================================================== */

.ronak-fm-content h2 {

	margin: 0;

	width: 100%;

	max-width: 330px;

	font-size: 34px;

	line-height: 1.02;

	letter-spacing: -1.2px;

	font-weight: 400;

	color: #fff;
}


.ronak-fm-content h2 strong {

	font-weight: 800;

	color: #fff;
}


/* =====================================================
   DESCRIPTION
===================================================== */

.ronak-fm-content p {

	margin: 15px 0 0;

	max-width: 335px;

	font-size: 12px;

	line-height: 1.55;

	font-weight: 400;

	color: rgba(255,255,255,.94);
}


/* =====================================================
   COUNTER
===================================================== */

.ronak-fm-counter {

	display: flex;

	align-items: center;

	gap: 9px;

	margin-top: 18px;

	font-size: 8px;

	line-height: 1;

	letter-spacing: 1.5px;

	color: #fff;
}


.ronak-fm-counter b {

	font-weight: 700;

	color: #fff;
}


.ronak-fm-counter span {

	color: rgba(255,255,255,.65);
}


.ronak-fm-counter i {

	display: block;

	width: 42px;

	height: 1px;

	background: rgba(255,255,255,.7);
}


/* =====================================================
   BUTTON
===================================================== */

.ronak-fm-btn {

	display: inline-flex;

	align-items: center;

	justify-content: space-between;

	width: 145px;

	height: 42px;

	margin-top: 17px;

	padding: 0 13px 0 15px;

	border: 1px solid rgba(255,255,255,.65);

	background: transparent;

	color: #fff;

	text-decoration: none;

	font-size: 11px;

	font-weight: 700;

	transition: .3s ease;
}


.ronak-fm-btn span {

	font-size: 17px;

	line-height: 1;

	transition: transform .3s ease;
}


.ronak-fm-btn:hover {

	background: #fff;

	color: #033D32;

	border-color: #fff;
}


/* =====================================================
   PROGRESS BAR
===================================================== */

.ronak-fm-progress {

	position: absolute;

	left: 28px;
	right: 28px;

	bottom: 11px;

	width: auto;

	height: 2px;

	z-index: 45;

	background: rgba(255,255,255,.28);
}


.ronak-fm-progress span {

	display: block;

	width: 25%;

	height: 100%;

	background: #fff;

	transition: width .5s ease;
}


/* =====================================================
   ARROWS
===================================================== */

.ronak-fm-controls {

	position: absolute;

	right: 0;

	bottom: 0;

	z-index: 50;

	display: flex;
}


.ronak-fm-controls button {

	width: 42px;

	height: 42px;

	border: 1px solid rgba(255,255,255,.25);

	border-bottom: 0;

	border-right: 0;

	background: rgba(3,25,45,.65);

	color: #fff;

	font-size: 15px;

	cursor: pointer;
}


/* =====================================================
   390px
===================================================== */

@media (max-width: 390px) {

	.ronak-fm-slider {

		height: 600px;

		min-height: 600px;
	}


	.ronak-fm-slide {

		height: 43px;

		min-height: 43px;

		flex-basis: 43px;
	}


	.ronak-fm-slide.active {

		height: calc(100% - 129px);
	}


	.ronak-fm-collapsed {

		height: 43px;

		min-height: 43px;
	}


	.ronak-fm-img {

		top: 43px;

		height: calc(100% - 43px);
	}


	.ronak-fm-overlay {

		top: 43px;
	}


	.ronak-fm-collapsed-title {

		font-size: 10px;
	}


	.ronak-fm-content {

		left: 22px;
		right: 22px;

		bottom: 27px;
	}


	.ronak-fm-content h2 {

		font-size: 32px;

		letter-spacing: -1px;
	}


	.ronak-fm-content p {

		max-width: 320px;

		font-size: 11.5px;

		line-height: 1.5;
	}


	.ronak-fm-progress {

		left: 22px;
		right: 22px;

		bottom: 9px;
	}

}


/* =====================================================
   350px
===================================================== */

@media (max-width: 350px) {

	.ronak-fm-slider {

		height: 580px;

		min-height: 580px;
	}


	.ronak-fm-slide {

		height: 40px;

		min-height: 40px;

		flex-basis: 40px;
	}


	.ronak-fm-slide.active {

		height: calc(100% - 120px);
	}


	.ronak-fm-collapsed {

		height: 40px;

		min-height: 40px;
	}


	.ronak-fm-img {

		top: 40px;

		height: calc(100% - 40px);
	}


	.ronak-fm-overlay {

		top: 40px;
	}


	.ronak-fm-collapsed-title {

		font-size: 9px;
	}


	.ronak-fm-content {

		left: 18px;
		right: 18px;

		bottom: 25px;
	}


	.ronak-fm-content h2 {

		font-size: 29px;
	}


	.ronak-fm-content p {

		font-size: 11px;

		line-height: 1.45;

		margin-top: 12px;
	}


	.ronak-fm-counter {

		margin-top: 14px;
	}


	.ronak-fm-btn {

		width: 138px;

		height: 40px;

		margin-top: 14px;

		font-size: 10px;
	}

}

}

.gew-happy-customers {
    position: relative;
    padding: 50px 0 60px;
    overflow: hidden;
    font-family: 'Manrope', sans-serif;
    background:
      radial-gradient(circle at 10% 10%, rgba(255,212,90,0.13), transparent 26%),
      linear-gradient(180deg, #ffffff 0%, #f6f9fb 100%);
  }
  
  .gew-happy-customers::before {
    content: "";
    position: absolute;
    right: -120px;
    top: -120px;
    width: 380px;
    height: 380px;
    border-radius: 50%;
    background: rgba(3,61,50,0.07);
  }
  
  .gew-customer-head {
    max-width: 780px;
    margin: 0 auto 20px;
    text-align: center;
    position: relative;
    z-index: 2;
  }
  
  .gew-customer-head span {
    display: inline-block;
    padding: 9px 20px;
    border-radius: 50px;
    background: rgba(255,212,90,0.13);
    color: #081d33;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 16px;
  }
  
  .gew-customer-head h2 {
    margin: 0;
    color: #e81b1d;
    font-size: 30px;
    line-height: 1.08;
    font-weight: 900; 
  }
  
  .gew-customer-head h2 b {
    color: #064E3B;
  }
  
  .gew-customer-head p { 
    margin: 10px auto 0;
    color: #64737e;
    font-size: 16.5px;
    line-height: 1.8;
    font-weight: 500;
  }
  
  .gew-logo-slider {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 18px 0;
  }
  
  .gew-logo-slider::before,
  .gew-logo-slider::after {
    content: "";
    position: absolute;
    top: 0;
    width: 170px;
    height: 100%;
    z-index: 3;
    pointer-events: none;
  }
  
  .gew-logo-slider::before {
    left: 0;
    background: linear-gradient(90deg, #f6f9fb, transparent);
  }
  
  .gew-logo-slider::after {
    right: 0;
    background: linear-gradient(270deg, #f6f9fb, transparent);
  }
  
  .gew-logo-track {
    display: flex;
    align-items: center;
    gap: 28px;
    width: max-content;
    animation: gewLogoSlide 28s linear infinite;
  }
  
  .gew-logo-slider:hover .gew-logo-track {
    animation-play-state: paused;
  }
  
  .gew-logo-card {
    width: 230px; 
    border-radius: 28px;
    background: rgba(255,255,255,0.86);
    border: 1px solid rgba(3,61,50,0.08);
    box-shadow: 0 20px 50px rgba(3,61,50,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px;
    transition: 0.35s ease;
  }
  
  .gew-logo-card img { 
    object-fit: contain; 
    transition: 0.35s ease;
  }
  
  .gew-logo-card:hover {
    transform: translateY(-8px);
    border-color: rgba(247,148,29,0.45);
    box-shadow: 0 30px 70px rgba(3,61,50,0.15);
  }
  
  .gew-logo-card:hover img {
    filter: grayscale(0);
    opacity: 1;
    transform: scale(1.08);
  }
  
  @keyframes gewLogoSlide {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
  
  @media (max-width: 767px) {
    .gew-happy-customers {
      padding: 70px 0;
    }
  
    .gew-customer-head {
      text-align: left;
      margin-bottom: 34px;
    }
  
    .gew-logo-card { 
      border-radius: 22px;
    } 
  
    .gew-logo-slider::before,
    .gew-logo-slider::after {
      width: 70px;
    }
  }

  /* ===== Service Cards ===== */
.service-card{
	background:#fff; border-radius:16px; overflow:hidden;
	box-shadow:0 10px 30px rgba(8,27,46,.07);
	transition:.35s; height:100%;
	border:1px solid var(--gray-100);
  }
  .service-card:hover{transform:translateY(-8px); box-shadow:0 26px 50px rgba(8,27,46,.16);}
  .service-card .img-wrap{height:200px; overflow:hidden; position:relative;}
  .service-card .img-wrap img{width:100%; height:100%; object-fit:cover; transition:.5s;}
  .service-card:hover .img-wrap img{transform:scale(1.08);}
  .service-card .icon-badge{
	position:absolute; bottom: -15px; left:22px;
	width:52px; height:52px; border-radius:12px;
	background:var(--amber-500); color:var(--navy-950);
	display:flex; align-items:center; justify-content:center;
	font-size:1.35rem; box-shadow:0 10px 20px rgba(242,169,59,.35);
  }
  .service-card .body{padding:2.1rem 1.6rem 1.6rem;}
  .service-card h5{font-size:1.1rem; font-weight:700; margin-bottom:.7rem;}
  .service-card p{font-size:.9rem; margin-bottom:0;}
  .service-card .arrow-link{
	display:inline-flex; align-items:center; gap:.4rem; margin-top:1rem;
	font-weight:700; font-size:.85rem; color:var(--navy-800); transition:.2s;
  }
  .service-card:hover .arrow-link{color:var(--sky-500); gap:.65rem;}

  /* =========================================
   PREMIUM SERVICES SECTION
========================================= */

.kk-services-section {
	position: relative;
	padding: 105px 0;
	background: #111815;
	overflow: hidden;
  }
  
  
  /* Background architectural lines */
  
  .kk-services-section::before {
	content: "";
	position: absolute;
	width: 700px;
	height: 700px;
	right: -350px;
	top: -350px;
  
	border: 1px solid rgba(255,255,255,.045);
	border-radius: 50%;
  }
  
  .kk-services-section::after {
	content: "";
	position: absolute;
	width: 500px;
	height: 500px;
	left: -300px;
	bottom: -300px;
  
	border: 1px solid rgba(6,78,59,.08);
	border-radius: 50%;
  }
  
  
  /* =========================================
	 SECTION HEADING
  ========================================= */
  
  .kk-section-eyebrow {
	display: flex;
	align-items: center;
	gap: 11px;
  
	margin-bottom: 17px;
  
	color: #064E3B;
	font-family: 'Sora', sans-serif;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 2.5px;
  }
  
  .kk-section-eyebrow span {
	display: block;
	width: 35px;
	height: 2px;
	background: #FFD45A;
  }
  
  .kk-section-title {
	margin: 0;
  
	color: #ffffff;
	font-family: 'Sora', sans-serif;
	font-size: 35px;
	font-weight: 600;
	line-height: 1.08;
	letter-spacing: -1.8px;
  }
  
  .kk-section-title em {
	color: #064E3B;
	font-style: normal;
  }
  
  .kk-section-title strong {
	color: #ffffff;
	font-weight: 600;
  }
  
  .kk-section-intro {
	max-width: 470px;
	margin: 0 0 4px auto;
  
	color: #a6b0aa;
	font-size: 14px;
	line-height: 1.85;
  }
  
  
  /* =========================================
	 SERVICE CARD
  ========================================= */
  
  .kk-service-card {
	position: relative;
	height: 100%;
  
	background: #ffffff;
  
	border: 1px solid rgba(255,255,255,.07);
	border-radius: 18px;
  
	overflow: hidden;
  
	box-shadow:
	  0 18px 50px rgba(0,0,0,.18);
  
	transition:
	  transform .45s cubic-bezier(.2,.7,.2,1),
	  box-shadow .45s ease,
	  border-color .45s ease;
  }
  
  .kk-service-card:hover {
	transform: translateY(-10px);
  
	border-color: rgba(115,199,122,.35);
  
	box-shadow:
	  0 28px 70px rgba(0,0,0,.30);
  }
  
  
  /* =========================================
	 SERVICE IMAGE
  ========================================= */
  
  .kk-service-img {
	position: relative; 
	overflow: hidden; 
	background: #033D32;
  }
  
  .kk-service-img img {
	width: 100%;
	height: 100%;
  
	display: block;
  
	object-fit: cover;
  
	transition:
	  transform .8s cubic-bezier(.2,.7,.2,1);
  }
  
  .kk-service-card:hover .kk-service-img img {
	transform: scale(1.09);
  }
  
  
  /* Image shade */
  
  .kk-service-shade {
	position: absolute;
	inset: 0;
  
	background:
	  linear-gradient(
		180deg,
		rgba(5,12,8,.20) 0%,
		rgba(5,12,8,.02) 35%,
		rgba(5,12,8,.78) 100%
	  );
  }
  
  
  /* =========================================
	 TOP IMAGE CONTENT
  ========================================= */
  
  .kk-service-top {
	position: absolute;
	top: 16px;
	left: 16px;
	right: 16px;
  
	display: flex;
	align-items: center;
	justify-content: space-between;
  
	z-index: 3;
  }
  
  .kk-service-no {
	display: flex;
	align-items: center;
	justify-content: center;
  
	width: 39px;
	height: 39px;
  
	border-radius: 50%;
  
	background: rgba(17,24,21,.45);
	border: 1px solid rgba(255,255,255,.25);
  
	backdrop-filter: blur(9px);
  
	color: #ffffff;
  
	font-family: 'Sora', sans-serif;
	font-size: 10px;
	font-weight: 600;
  }
  
  .kk-service-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
  
	width: 39px;
	height: 39px;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.12);
	border: 1px solid rgba(255,255,255,.25);
  
	backdrop-filter: blur(9px);
  
	color: #ffffff;
  
	font-size: 15px;
  
	transition:
	  background .3s ease,
	  transform .3s ease;
  }
  
  .kk-service-card:hover .kk-service-arrow {
	background: #064E3B;
	border-color: #064E3B;
  
	transform: rotate(5deg);
  }
  
  
  /* Image category */
  
  .kk-service-image-title {
	position: absolute;
	left: 20px;
	bottom: 18px;
  
	z-index: 3;
  
	color: rgba(255,255,255,.82);
  
	font-family: 'Sora', sans-serif;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 1.8px;
	text-transform: uppercase;
  }
  
  
  /* =========================================
	 SERVICE BODY
  ========================================= */
  
  .kk-service-body {
	position: relative;
  
	min-height: 275px;
  
	padding: 27px 24px 24px;
  
	background: #ffffff;
  }
  
  
  /* Green top accent */
  
  .kk-service-body::before {
	content: "";
  
	position: absolute;
  
	left: 24px;
	top: 0;
  
	width: 42px;
	height: 3px;
  
	background: #064E3B;
  
	transition: width .4s ease;
  }
  
  .kk-service-card:hover .kk-service-body::before {
	width: 75px;
  }
  
  
  /* Icon */
  
  .kk-service-mini-icon {
	width: 44px;
	height: 44px;
  
	display: flex;
	align-items: center;
	justify-content: center;
  
	margin-bottom: 17px;
  
	border-radius: 12px;
  
	background: #eef7ef;
  
	color: #064E3B;
  
	font-size: 18px;
  
	transition: all .35s ease;
  }
  
  .kk-service-card:hover .kk-service-mini-icon {
	background: #064E3B;
	color: #ffffff;
  
	transform: translateY(-3px);
  }
  
  
  /* Heading */
  
  .kk-service-body h3 {
	margin: 0 0 11px;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
	font-size: 17px;
	font-weight: 650;
	line-height: 1.35;
  
	letter-spacing: -.35px;
  }
  
  
  /* Description */
  
  .kk-service-body p {
	margin: 0;
  
	color: #000;
  
	font-size: 12.5px;
	line-height: 1.75;
  }
  
  
  /* =========================================
	 CTA
  ========================================= */
  
  .kk-service-link {
	position: absolute;
  
	left: 24px;
	right: 24px;
	bottom: 21px;
  
	display: flex;
	align-items: center;
	justify-content: space-between;
  
	padding-top: 16px;
  
	border-top: 1px solid #edf0ed;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
	font-size: 10px;
	font-weight: 650;
	letter-spacing: .2px;
  
	text-decoration: none;
  
	transition: color .3s ease;
  }
  
  .kk-service-link span {
	display: flex;
	align-items: center;
	justify-content: center;
  
	width: 27px;
	height: 27px;
  
	border: 1px solid #dce2dd;
	border-radius: 50%;
  
	color: #033D32;
  
	transition:
	  all .35s ease;
  }
  
  .kk-service-link:hover {
	color: #064E3B;
  }
  
  .kk-service-link:hover span {
	background: #064E3B;
	border-color: #064E3B;
  
	color: #ffffff;
  
	transform: translateX(4px);
  }
  
  
  /* =========================================
	 BOTTOM SIGNATURE LINE
  ========================================= */
  
  .kk-services-bottom {
	position: relative;
	z-index: 2;
  
	display: flex;
	align-items: center;
	gap: 20px;
  
	margin-top: 45px;
  }
  
  .kk-bottom-line {
	flex: 1;
	height: 1px;
  
	background: rgba(255,255,255,.09);
  }
  
  .kk-services-bottom span {
	white-space: nowrap;
  
	color: #fff;
  
	font-family: 'Sora', sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 1.8px;
	text-transform: uppercase;
  }
  
  .kk-services-bottom b {
	margin: 0 7px;
  
	color: #FFD45A;
  }
  
  
  /* =========================================
	 TABLET
  ========================================= */
  
  @media (max-width: 991px) {
  
	.kk-services-section {
	  padding: 80px 0;
	}
  
	.kk-section-intro {
	  margin: 25px 0 0;
	} 
  
	.kk-service-body {
	  min-height: 285px;
	}
  
  }
  
  
  /* =========================================
	 MOBILE
  ========================================= */
  
  @media (max-width: 767px) {
  
	.kk-services-section {
	  padding: 65px 0;
	}
  
	.kk-section-title {
	  font-size: 35px;
	}
  
	.kk-section-intro {
	  font-size: 13px;
	  line-height: 1.75;
	} 
  
	.kk-service-body {
	  min-height: 270px;
	}
  
	.kk-services-bottom {
	  display: none;
	}
  
  }

  /* =========================================================
   FOOTER BASE
========================================================= */

.kk-premium-footer {
	position: relative;
	overflow: hidden;
  
	padding: 90px 0 0;
  
	background: #ffffff;
  
	color: #ffffff;
  }
  
  
  /* =========================================================
	 BACKGROUND GRID
  ========================================================= */
  
  .kk-footer-grid {
	position: absolute;
	inset: 0;
  
	background-image:
	  linear-gradient(
		rgba(255,255,255,.025) 1px,
		transparent 1px
	  ),
	  linear-gradient(
		90deg,
		rgba(255,255,255,.025) 1px,
		transparent 1px
	  );
  
	background-size: 70px 70px;
  
	opacity: .45;
  
	pointer-events: none;
  }
  
  
  /* =========================================================
	 AMBIENT GLOW
  ========================================================= */
  
  .kk-footer-glow {
	position: absolute;
  
	width: 450px;
	height: 450px;
  
	border-radius: 50%;
  
	filter: blur(100px);
  
	pointer-events: none;
  }
  
  
  .kk-footer-glow-green {
	top: -300px;
	left: -150px;
  
	background: rgba(6,78,59,.12);
  }
  
  
  .kk-footer-glow-red {
	bottom: -350px;
	right: -150px;
  
	background: rgba(255,212,90,.08);
  }
  
  
  /* =========================================================
	 TOP CTA
  ========================================================= */
  
  .kk-footer-cta {
	position: relative;
	z-index: 2;
  
	display: flex;
  
	align-items: center;
	justify-content: space-between;
  
	gap: 50px;
  
	padding: 48px 52px;
  
	margin-bottom: 30px;
  
	border: 1px solid rgba(255,255,255,.10);
  
	border-radius: 24px;
  
	background:
	  linear-gradient(
		135deg,
		rgba(255,255,255,.065),
		rgba(255,255,255,.025)
	  );
  
	backdrop-filter: blur(10px);
  
	box-shadow:
	  0 30px 80px rgba(0,0,0,.22);
  }
  
  
  .kk-footer-eyebrow {
	display: flex;
	align-items: center;
  
	gap: 10px;
  
	margin-bottom: 15px;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 10px;
  
	font-weight: 700;
  
	letter-spacing: 2.4px;
  }
  
  
  .kk-footer-eyebrow i {
	display: block;
  
	width: 27px;
	height: 2px;
  
	background: #FFD45A;
  }
  
  
  .kk-footer-cta h2 {
	max-width: 650px;
  
	margin: 0;
  
	font-family: 'Sora', sans-serif;
  color: #1e1c1c;
	font-size:  30px;
  
	line-height: 1.1;
  
	font-weight: 600; 
  }
  
  
  .kk-footer-cta h2 span {
	color: #033D32;
  }
  
  
  .kk-footer-cta-content p {
	max-width: 610px;
  
	margin: 17px 0 0;
  
	color: #484545;
  
	font-size: 15px;
  
	line-height: 1.8;
  }
  
  
  /* CTA BUTTON */
  
  .kk-footer-main-btn {
	flex-shrink: 0;
  
	display: inline-flex;
  
	align-items: center;
	gap: 15px;
  
	padding: 15px 19px 15px 22px;
  
	color: #ffffff;
  
	text-decoration: none;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 14px;
  
	font-weight: 600;
  
	border-radius: 50px;
  
	background: #033D32;
  
	transition: all .35s ease;
  
	box-shadow:
	  0 12px 30px rgba(6,78,59,.20);
  }
  
  
  .kk-footer-main-btn i {
	width: 31px;
	height: 31px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.16);
  
	transition: transform .35s ease;
  }
  
  
  .kk-footer-main-btn:hover {
	color: #ffffff;
  
	background: #926c03;
  
	transform: translateY(-3px);
  
	box-shadow:
	  0 15px 35px rgba(255,212,90,.22);
  }
  
  
  .kk-footer-main-btn:hover i {
	transform: translate(3px,-3px);
  }
  
  
  /* =========================================================
	 CONTACT CARDS
  ========================================================= */
  
  .kk-footer-contact-grid {
	position: relative;
	z-index: 2;
  
	display: grid;
  
	grid-template-columns:
	  1.35fr
	  .9fr
	  .95fr
	  .9fr;
  
	gap: 1px;
  
	margin-bottom: 75px;
  
	overflow: hidden;
  
	border: 1px solid rgba(255,255,255,.08);
  
	border-radius: 18px;
  
	background: rgba(255,255,255,.07);
  }
  
  
  .kk-footer-contact-card {
	min-height: 155px;
  
	display: flex;
  
	gap: 17px;
  
	padding: 27px 24px;
  
	background: #033D32;
  
	transition: background .3s ease;
  }
  
  
  .kk-footer-contact-card:hover {
	background: #21352b;
  }
  
  
  .kk-footer-contact-icon {
	flex-shrink: 0;
  
	width: 43px;
	height: 43px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 12px;
  
	color: #997519;
  
	background: rgb(255 255 255);;
  
	font-size: 17px;
  
	transition: all .3s ease;
  }
  
  
  .kk-footer-contact-card:hover .kk-footer-contact-icon {
	color: #ffffff;
  
	background: #033D32;
  
	transform: translateY(-2px);
  }
  
  
  .kk-footer-contact-card:nth-child(2) .kk-footer-contact-icon,
  .kk-footer-contact-card:nth-child(4) .kk-footer-contact-icon {
	color: #033D32;
  
	background: rgb(255 255 255);
  }
  
  
  .kk-footer-contact-card:nth-child(2):hover .kk-footer-contact-icon,
  .kk-footer-contact-card:nth-child(4):hover .kk-footer-contact-icon {
	color: #ffffff;
  
	background: #033D32;
  }
  
  
  .kk-footer-contact-label {
	display: block;
  
	margin-bottom: 9px;
  
	color: #fff;
  
	font-size: 12px;
  
	font-weight: 700; 
  }
  
  
  .kk-footer-contact-card a {
	display: block;
  
	color: rgba(255,255,255,.82);
  
	text-decoration: none;
  
	font-size: 15px;
  
	line-height: 1.65;
  
	transition: color .25s ease;
  }
  
  
  .kk-footer-contact-card a:hover {
	color: #ffffff;
  }
  
  
  .kk-footer-contact-card strong {
	display: block;
  
	color: #ffffff;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 11px;
  
	font-weight: 600;
  
	margin-bottom: 4px;
  }
  
  
  .kk-footer-hours {
	display: block;
  
	color: #064E3B;
  
	font-size: 11px;
  
	margin-bottom: 5px;
  }
  
  
  .kk-footer-contact-card small {
	display: block;
  
	color: rgba(255,255,255,.36);
  
	font-size: 13px;
  
	margin-top: 4px;
  }
  
  
  /* =========================================================
	 MAIN FOOTER
  ========================================================= */
  
  .kk-footer-main {
	position: relative;
	z-index: 2;
  
	display: grid;
  
	grid-template-columns:
	  1.45fr
	  .75fr
	  .95fr
	  1fr;
  
	gap: 60px;
  
	padding-bottom: 65px;
  }
  
  
  /* =========================================================
	 BRAND
  ========================================================= */
  
  .kk-footer-logo {
	display: inline-block;
  
	margin-bottom: 20px;
  }
  
  
  .kk-footer-logo img {
	max-width: 190px;
  
	max-height: 58px;
  
	width: auto;
  
	object-fit: contain;
  }
  
  
  .kk-footer-brand p {
	max-width: 390px;
  
	margin: 0;
  
	color: #484545;
  
	font-size: 14px;
  
	line-height: 1.9;
  }
  
  
  /* =========================================================
	 SOCIAL
  ========================================================= */
  
  .kk-footer-social {
	display: flex;
  
	gap: 8px;
  
	margin-top: 24px;
  }
  
  
  .kk-footer-social a {
	width: 34px;
	height: 34px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	color: rgba(255,255,255,.55);
  
	border: 1px solid rgba(255,255,255,.12);
  
	border-radius: 50%;
  
	text-decoration: none;
  
	font-size: 12px;
  
	transition: all .3s ease;
  }
  
  
  .kk-footer-social a:hover {
	color: #ffffff;
  
	background: #064E3B;
  
	border-color: #064E3B;
  
	transform: translateY(-3px);
  }
  
  
  /* =========================================================
	 FOOTER LINKS
  ========================================================= */
  
  .kk-footer-links h4 {
	margin: 7px 0 23px;
  
	color: #ffffff;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 18px;
  
	font-weight: 600;
  }
  
  
  .kk-footer-links h4::after {
	content: "";
  
	display: block;
  
	width: 24px;
	height: 2px;
  
	margin-top: 9px;
  
	background: rgb(255, 212, 90);
  }
  
  
  .kk-footer-links a {
	display: block;
  
	width: fit-content;
  
	margin-bottom: 12px;
  
	color: #484545;
  
	text-decoration: none;
  
	font-size: 14px;
  
	line-height: 1.5;
  
	transition:
	  color .25s ease,
	  transform .25s ease;
  }
  
  
  .kk-footer-links a:hover {
	color: #72c478;
  
	transform: translateX(4px);
  }
  
  
  /* =========================================================
	 BUSINESS CTA
  ========================================================= */
  
  .kk-footer-business {
	padding-left: 10px;
  }
  
  
  .kk-footer-business h3 {
	margin: 8px 0 22px;
  
	color: #484545;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 20px;
  
	line-height: 1.45;
  
	font-weight: 550;
  }
  
  
  .kk-footer-business h3 span {
	color: #033D32;
  }
  
  
  .kk-footer-outline-btn {
	display: inline-flex;
  
	align-items: center;
  
	gap: 12px;
  
	padding: 11px 15px;
  
	color: #ffffff;
	background: #033D32;
  
	text-decoration: none;
  
	border: 1px solid rgba(255,255,255,.18);
  
	border-radius: 50px;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 10px;
  
	font-weight: 600;
  
	transition: all .3s ease;
  }
  
  
  .kk-footer-outline-btn i {
	font-size: 13px;
  
	transition: transform .3s ease;
  }
  
  
  .kk-footer-outline-btn:hover {
	color: #ffffff;
  
	border-color: #033D32;
  
	background: #033D32;
  }
  
  
  .kk-footer-outline-btn:hover i {
	transform: translate(3px,-3px);
  }
  
  
  /* =========================================================
	 BOTTOM BAR
  ========================================================= */
  
  .kk-footer-bottom {
	position: relative;
	z-index: 2;
  
	display: flex;
  
	align-items: center;
	justify-content: space-between;
  
	gap: 20px;
  
	min-height: 70px;
  
	border-top: 1px solid rgb(22 80 76);
  }
  
  
  .kk-footer-bottom p {
	margin: 0;
  
	color: #484545;
  
	font-size: 14px;
  }
  
  
  .kk-footer-bottom p strong {
	color: rgba(255,255,255,.60);
  
	font-weight: 500;
  }
  
  
  .kk-footer-bottom-links {
	display: flex;
  
	align-items: center;
  
	gap: 13px;
  }
  
  
  .kk-footer-bottom-links a {
	color: #484545;
  
	text-decoration: none;
  
	font-size: 14px;
  
	transition: color .25s ease;
  }
  
  
  .kk-footer-bottom-links a:hover {
	color: #064E3B;
  }
  
  
  .kk-footer-bottom-links span {
	width: 3px;
	height: 3px;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.20);
  }
  
  
  /* =========================================================
	 RESPONSIVE — TABLET
  ========================================================= */
  
  @media (max-width: 991px) {
  
	.kk-premium-footer {
	  padding-top: 70px;
	}
  
	.kk-footer-cta {
	  padding: 38px;
	}
  
	.kk-footer-contact-grid {
	  grid-template-columns: 1fr 1fr;
	}
  
	.kk-footer-main {
	  grid-template-columns: 1.3fr 1fr 1fr;
	  gap: 40px;
	}
  
	.kk-footer-business {
	  padding-left: 0;
	}
  
  }
  
  
  /* =========================================================
	 RESPONSIVE — MOBILE
  ========================================================= */
  
  @media (max-width: 767px) {
  
	.kk-premium-footer {
	  padding-top: 55px;
	}
  
  
	.kk-footer-cta {
	  display: block;
  
	  padding: 30px 25px;
  
	  border-radius: 18px;
	}
  
  
	.kk-footer-cta h2 {
	  font-size: 30px;
	}
  
  
	.kk-footer-main-btn {
	  margin-top: 25px;
	}
  
  
	.kk-footer-contact-grid {
	  grid-template-columns: 1fr;
  
	  margin-bottom: 55px;
	}
  
  
	.kk-footer-contact-card {
	  min-height: auto;
  
	  padding: 23px;
	}
  
  
	.kk-footer-main {
	  grid-template-columns: 1fr 1fr;
  
	  gap: 42px 25px;
  
	  padding-bottom: 45px;
	}
  
  
	.kk-footer-brand {
	  grid-column: 1 / -1;
	}
  
  
	.kk-footer-business {
	  grid-column: 1 / -1;
	}
  
  
	.kk-footer-bottom {
	  display: block;
  
	  padding: 20px 0;
	}
  
  
	.kk-footer-bottom-links {
	  margin-top: 10px;
	}
  
  }
  
  
  /* =========================================================
	 SMALL MOBILE
  ========================================================= */
  
  @media (max-width: 480px) {
  
	.kk-footer-main {
	  grid-template-columns: 1fr;
	}
  
	.kk-footer-brand,
	.kk-footer-business {
	  grid-column: auto;
	}
  
	.kk-footer-cta h2 {
	  font-size: 30px;
	}
  
	.kk-footer-ctacontent p {
	  font-size: 14px;
	}
  
  }

  /* =========================================================
   SECTION
========================================================= */

.kk-how-work {
	position: relative;
  
	padding: 60px 0 50px;
  
	background: #ffffff;
  
	overflow: hidden;
  }
  
  
  /* Very subtle architectural grid */
  
  .kk-how-work::before {
	content: "";
  
	position: absolute;
  
	top: 0;
	right: 0;
  
	width: 38%;
	height: 100%;
  
	background-image:
	  linear-gradient(
		90deg,
		rgba(23,32,28,.025) 1px,
		transparent 1px
	  ),
	  linear-gradient(
		rgba(23,32,28,.025) 1px,
		transparent 1px
	  );
  
	background-size: 65px 65px;
  
	mask-image: linear-gradient(
	  to left,
	  black,
	  transparent
	);
  
	pointer-events: none;
  }
  
  
  /* =========================================================
	 HEADER
  ========================================================= */
  
  .kk-work-header {
  
	position: relative;
	z-index: 2;
  
	display: flex;
  
	align-items: flex-end;
  
	justify-content: space-between;
  
	gap: 50px;
  
	margin-bottom: 30px;
  }
  
  
  .kk-work-eyebrow {
  
	display: flex;
  
	align-items: center;
  
	gap: 10px;
  
	margin-bottom: 14px;
  
	color: #064E3B;
  
	font-size: 10px;
  
	font-weight: 700;
  
	letter-spacing: 2.5px;
  }
  
  
  .kk-work-eyebrow i {
  
	display: block;
  
	width: 30px;
	height: 2px;
  

  }
  
  
  .kk-work-heading h2 {
  
	margin: 0;
  
	color: #151d19;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 30px;
  
	font-weight: 650;
  
	line-height: 1.05;
  
	letter-spacing: -2px;
  }
  
  
  .kk-work-heading h2 span {
  
	color: #064E3B;
  
  }
  
  
  .kk-work-intro {
  
	max-width: 500px;
  
  }
  
  
  .kk-work-intro p {
  
	margin: 0;
  
	color: #000;
  
	font-size: 14px;
  
	line-height: 1.9;
  }
  
  
  /* =========================================================
	 PROCESS
  ========================================================= */
  
  .kk-work-process {
  
	position: relative;
  
	z-index: 2;
  }
  
  
  /* =========================================================
	 CONNECTING LINE
  ========================================================= */
  
  .kk-process-line {
  
	position: absolute;
  
	top: 39px;
  
	left: 12.5%;
  
	right: 12.5%;
  
	height: 1px;
  
	background: #dfe5e1;
  
	z-index: 0;
  }
  
  
  .kk-process-progress {
  
	width: 100%;
  
	height: 100%;
  
	background:
	  linear-gradient(
		90deg,
		#064E3B 0%,
		#064E3B 49%,
		#FFD45A 51%,
		#FFD45A 100%
	  );
  
	opacity: .25;
  }
  
  
  /* =========================================================
	 STEP CARD
  ========================================================= */
  
  .kk-work-step {
  
	position: relative;
  
	min-height: 405px;
  
	padding: 0 25px 25px;
  
	background: #ffffff;
  
	border: 1px solid #e5e9e6;
  
	border-radius: 18px;
  
	box-shadow:
	  0 8px 30px rgba(20,30,25,.035);
  
	overflow: hidden;
  
	transition:
	  transform .45s cubic-bezier(.2,.7,.2,1),
	  box-shadow .45s ease,
	  border-color .45s ease;
  }
  
  
  .kk-work-step:hover {
  
	transform: translateY(-9px);
  
	border-color: rgba(6,78,59,.25);
  
	box-shadow:
	  0 25px 55px rgba(20,30,25,.10);
  }
  
  
  /* =========================================================
	 TOP AREA
  ========================================================= */
  
  .kk-step-top {
  
	position: relative;
  
	display: flex;
  
	align-items: center;
  
	justify-content: space-between;
  
	height: 80px;
  
	margin: 0 -25px;
  
	padding: 0 25px;
  
	border-bottom: 1px solid #edf0ee;
  }
  
  
  /* =========================================================
	 NUMBER
  ========================================================= */
  
  .kk-step-number {
  
	position: relative;
  
	color: #dfe5e1;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 38px;
  
	font-weight: 650;
  
	letter-spacing: -2px;
  
	transition: color .35s ease;
  }
  
  
  .kk-work-step:hover .kk-step-number {
  
	color: rgba(6,78,59,.22);
  }
  
  
  .kk-step-red:hover .kk-step-number {
  
	color: rgba(255,212,90,.20);
  }
  
  
  /* =========================================================
	 ICON
  ========================================================= */
  
  .kk-step-icon {
  
	position: relative;
  
	width: 46px;
	height: 46px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 12px;
  
	background: rgba(6,78,59,.08);
  
	color: #064E3B;
  
	font-size: 19px;
  
	transition:
	  transform .35s ease,
	  background .35s ease,
	  color .35s ease;
  }
  
  
  .kk-work-step:hover .kk-step-icon {
  
	color: #ffffff;
  
	background: #064E3B;
  
	transform: rotate(-3deg) translateY(-2px);
  
  }
  
  
  .kk-step-red .kk-step-icon {
  
	color: #FFD45A;
  
	background: rgba(255,212,90,.07);
  }
  
  
  .kk-step-red:hover .kk-step-icon {
  
	color: #ffffff;
  
	background: #FFD45A;
  }
  
  
  /* =========================================================
	 CONTENT
  ========================================================= */
  
  .kk-step-content {
  
	padding-top: 31px;
  }
  
  
  .kk-step-label {
  
	display: block;
  
	margin-bottom: 11px;
  
	color: #064E3B;
  
	font-size: 12px;
  
	font-weight: 700;
  
	letter-spacing: 1.8px;
  }
  
  
  .kk-step-red .kk-step-label {
  
	color: #FFD45A;
  }
  
  
  .kk-step-content h3 {
  
	margin: 0 0 16px;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 20px;
  
	line-height: 1.25;
  
	font-weight: 650;
  
	letter-spacing: -.6px;
  }
  
  
  .kk-step-content p {
  
	margin: 0;
  
	color: #000;
  
	font-size: 14px;
  
	line-height: 1.8;
  }
  
  
  /* =========================================================
	 BOTTOM
  ========================================================= */
  
  .kk-step-footer {
  
	position: absolute;
  
	left: 25px;
	right: 25px;
  
	bottom: 24px;
  
	display: flex;
  
	align-items: center;
  
	justify-content: space-between;
  
	padding-top: 17px;
  
	border-top: 1px solid #edf0ee;
  
	color: #222;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 12px;
  
	font-weight: 600;
  
	letter-spacing: 1px;
  }
  
  
  .kk-step-footer i {
  
	width: 28px;
	height: 28px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border: 1px solid #e1e6e3;
  
	border-radius: 50%;
  
	font-size: 12px;
  
	transition:
	  transform .35s ease,
	  background .35s ease,
	  color .35s ease,
	  border-color .35s ease;
  }
  
  
  .kk-work-step:hover .kk-step-footer i {
  
	color: #ffffff;
  
	background: #064E3B;
  
	border-color: #064E3B;
  
	transform: translateX(3px);
  }
  
  
  .kk-step-red:hover .kk-step-footer i {
  
	background: #FFD45A;
  
	border-color: #FFD45A;
  
  }
  
  
  /* =========================================================
	 BOTTOM QUALITY STRIP
  ========================================================= */
  
  .kk-work-bottom {
  
	position: relative;
  
	z-index: 2;
  
	display: flex;
  
	align-items: center;
  
	gap: 25px;
  
	margin-top: 30px;
  }
  
  
  .kk-work-bottom-line {
  
	flex: 1;
  
	height: 1px;
  
	background: #e4e9e6;
  }
  
  
  .kk-work-bottom-content {
  
	display: flex;
  
	align-items: center;
  
	justify-content: center;
  
	gap: 28px;
  }
  
  
  .kk-work-bottom-content span {
  
	display: flex;
  
	align-items: center;
  
	gap: 7px;
  
	white-space: nowrap;
  
	color: #222;
  
	font-size: 12px;
  
	font-weight: 700;
  
	letter-spacing: 1.2px;
  }
  
  
  .kk-work-bottom-content i {
  
	color: #064E3B;
  
	font-size: 12px;
  }
  
  
  .kk-work-bottom-content span:nth-child(2) i {
  
	color: #FFD45A;
  }
  
  
  /* =========================================================
	 TABLET
  ========================================================= */
  
  @media (max-width: 991px) {
  
	.kk-how-work {
  
	  padding: 50px 0 45px;
  
	}
  
  
	.kk-work-header {
  
	  margin-bottom: 45px;
  
	}
  
  
	.kk-work-step {
  
	  min-height: 390px;
  
	}
  
  
	.kk-step-content h3 {
  
	  font-size: 18px;
  
	}
  
  
	.kk-step-content p {
  
	  font-size: 11.5px;
  
	}
  
  
	.kk-work-bottom-content {
  
	  gap: 15px;
  
	}
  
  }
  
  
  /* =========================================================
	 MOBILE
  ========================================================= */
  
  @media (max-width: 767px) {
  
	.kk-how-work {
  
	  padding: 50px 0 40px;
  
	}
  
  
	.kk-work-header {
  
	  display: block;
  
	  margin-bottom: 40px;
  
	}
  
  
	.kk-work-intro {
  
	  margin-top: 20px;
  
	}
  
  
	.kk-work-heading h2 {
  
	  font-size: 30px;
  
	}
  
  
	/* Vertical timeline */
  
	.kk-process-line {
  
	  top: 0;
  
	  bottom: 0;
  
	  left: 20px;
  
	  right: auto;
  
	  width: 1px;
  
	  height: auto;
  
	}
  
  
	.kk-process-progress {
  
	  width: 100%;
  
	  height: 100%;
  
	}
  
  
	.kk-work-step {
  
	  min-height: 350px;
  
	  margin-left: 35px;
  
	}
  
  
	.kk-work-bottom {
  
	  display: none;
  
	}
  
  }
  
  
  /* =========================================================
	 SMALL MOBILE
  ========================================================= */
  
  @media (max-width: 480px) {
  
	.kk-work-heading h2 {
  
	  font-size: 30px;
  
	}
  
  
	.kk-work-step {
  
	  margin-left: 25px;
  
	  padding-left: 21px;
  
	  padding-right: 21px;
  
	}
  
  
	.kk-step-top {
  
	  margin-left: -21px;
  
	  margin-right: -21px;
  
	  padding-left: 21px;
  
	  padding-right: 21px;
  
	}
  
  
	.kk-step-footer {
  
	  left: 21px;
  
	  right: 21px;
  
	}
  
  }

  .gew-google-reviews {
    padding: 50px 0;
    font-family: 'Manrope', sans-serif;
    background: linear-gradient(180deg, #ffffff 0%, #f6f9fb 100%);
    overflow: hidden;
  }
  
  .gew-greview-head {
    max-width: 760px;
    margin: 0 auto 55px;
    text-align: center;
  }
  
  .gew-greview-head span {
    display: inline-block;
    padding: 9px 20px;
    border-radius: 50px;
    background: rgba(247,148,29,.13);
    color: #222;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 16px;
  }
  
  .gew-greview-head h2 {
    margin: 0;
    color: #ee1f1f;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 900; 
  }
  
  .gew-greview-head h2 b {
    color: #064E3B;
  }
  
  .gew-review-layout {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 28px;
    align-items: stretch;
  }
  
  .gew-rating-box {
    background: #fff;
    border-radius: 28px;
    padding: 34px;
    box-shadow: 0 22px 55px rgba(3,61,50,.09);
    border: 1px solid rgba(3,61,50,.08);
  }
  
  .gew-rating-box h3 {
    margin: 0 0 12px;
    color: #111;
    font-size: 24px;
    font-weight: 900;
  }
  
  .gew-big-stars,
  .gew-stars {
    color: #fbbc04;
    letter-spacing: 2px;
    font-size: 23px;
    line-height: 1;
  }
  
  .gew-rating-box p {
    margin-top: 5px;
    margin-bottom: 0px;
    color: #5f6368;
    font-size: 18px;
    font-weight: 900;
  }
  
  .gew-google-brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #5f6368;
    font-size: 15px;
    font-weight: 800;
  }
  
  .gew-google-brand span,
  .gew-google-g {
    font-weight: 900;
    font-size: 22px;
    color: #4285f4;
  }
  
  .gew-review-slider {
    overflow: hidden;
    padding: 4px;
  }
  
  .gew-review-track {
    display: flex;
    gap: 22px;
    width: max-content;
    animation: gewGoogleReviewSlide 24s linear infinite;
  }
  
  .gew-review-slider:hover .gew-review-track {
    animation-play-state: paused;
  }
  
  .gew-review-card {
    width: 335px;
    min-height: 245px;
    background: #fff;
    border-radius: 24px;
    padding: 24px;
    border: 1px solid rgba(3,61,50,.08);
    box-shadow: 0 20px 50px rgba(3,61,50,.08);
    transition: .35s ease;
  }
  
  .gew-review-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 30px 75px rgba(3,61,50,.15);
  }
  
  .gew-review-top {
    display: grid;
    grid-template-columns: 48px 1fr 50px;
    gap: 14px;
    align-items: center;
    margin-bottom: 18px;
  }
  
  .gew-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #7b5f56;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 900;
  }
  
  .gew-review-top h4 {
    margin: 0;
    color: #202124;
    font-size: 16px;
    font-weight: 900;
  }
  
  .gew-review-top p {
    margin: 3px 0 0;
    color: #70757a;
    font-size: 14px;
    font-weight: 500;
  }
  
  .gew-stars {
    font-size: 18px;
    margin-bottom: 14px;
  }
  
  .gew-stars span {
    display: inline-flex;
    width: 16px;
    height: 16px;
    background: #4285f4;
    color: #fff;
    border-radius: 50%;
    font-size: 10px;
    align-items: center;
    justify-content: center;
    letter-spacing: 0;
  }
  
  .gew-review-text {
    margin: 0;
    color: #3c4043;
    font-size: 15px;
    line-height: 1.65;
    font-weight: 500;
  }
  
  @keyframes gewGoogleReviewSlide {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }
  
  @media (max-width: 991px) {
    .gew-review-layout {
      grid-template-columns: 1fr;
    }
  
    .gew-rating-box {
      text-align: center;
    }
  }
  
  @media (max-width: 575px) {
    .gew-google-reviews {
      padding: 70px 0;
    }
  
    .gew-greview-head {
      text-align: left;
    }
  
    .gew-review-card {
      width: 290px;
    }
  }

  /* =========================================================
   SECTION
========================================================= */

.kk-why-section {

	position: relative;
  
	padding: 60px 0 50px;
  
	background: #f7faf8;
  
	overflow: hidden;
  
  }
  
  
  /* =========================================================
	 BACKGROUND DECORATION
  ========================================================= */
  
  .kk-why-decoration {
  
	position: absolute;
  
	top: 0;
	right: 0;
  
	width: 43%;
	height: 100%;
  
	background-image:
  
	  linear-gradient(
		90deg,
		rgba(6,78,59,.035) 1px,
		transparent 1px
	  ),
  
	  linear-gradient(
		rgba(6,78,59,.035) 1px,
		transparent 1px
	  );
  
	background-size: 70px 70px;
  
	opacity: .7;
  
	pointer-events: none;
  
	mask-image:
	  linear-gradient(
		to left,
		black,
		transparent
	  );
  
  }
  
  
  /* =========================================================
	 LEFT
  ========================================================= */
  
  .kk-why-left {
  
	position: relative;
  
	padding-right: 30px;
  
  }
  
  
  .kk-why-eyebrow {
  
	display: flex;
  
	align-items: center;
  
	gap: 10px;
  
	margin-bottom: 17px;
  
	color: #064E3B;
  
	font-size: 13px;
  
	font-weight: 700;
  
	letter-spacing: 2.5px;
  
  }
  
  
  .kk-why-eyebrow i {
  
	width: 29px;
	height: 2px;
  
	display: block;
  
	background: #FFD45A;
  
  }
  
  
  .kk-why-left h2 {
  
	margin: 0;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 32px;
  
	font-weight: 600;
  
	line-height: 1.1; 
  
  }
  
  
  .kk-why-left h2 span {
  
	color: #064E3B;
  
  }
  
  
  .kk-why-left h2 strong {
  
	color: #FFD45A;
  
	font-weight: 600;
  
  }
  
  
  .kk-why-intro {
  
	max-width: 490px;
  
	margin: 25px 0 32px;
  
	color: #222;
  
	font-size: 14px;
  
	line-height: 1.9;
  
  }
  
  
  /* =========================================================
	 EXPERIENCE
  ========================================================= */
  
  .kk-why-experience {
  
	display: flex;
  
	align-items: center;
  
	gap: 20px;
  
	padding: 20px 0;
  
	border-top: 1px solid #dfe6e1;
  
	border-bottom: 1px solid #dfe6e1;
  
  }
  
  
  .kk-why-exp-number {
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 48px;
  
	font-weight: 650;
  
	line-height: 1;
  
	letter-spacing: -3px;
  
  }
  
  
  .kk-why-exp-number span {
  
	color: #064E3B;
  
	font-size: 30px;
  
  }
  
  
  .kk-why-exp-text {
  
	display: flex;
  
	flex-direction: column;
  
	gap: 5px;
  
  }
  
  
  .kk-why-exp-text strong {
  
	color: #1c2521;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 14px;
  
	font-weight: 650;
  
  }
  
  
  .kk-why-exp-text span {
  
	color: #89918d;
  
	font-size: 12px;
  
  }
  
  
  /* =========================================================
	 TRUST LINE
  ========================================================= */
  
  .kk-why-trust-line {
  
	display: flex;
  
	align-items: center;
  
	gap: 13px;
  
	margin-top: 25px;
  
  }
  
  
  .kk-why-trust-icon {
  
	width: 39px;
	height: 39px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	flex-shrink: 0;
  
	border-radius: 50%;
  
	color: #064E3B;
  
	background: #e7f3e8;
  
	font-size: 16px;
  
  }
  
  
  .kk-why-trust-line strong {
  
	display: block;
  
	margin-bottom: 3px;
  
	color: #222;
  
	font-size: 14px;
  
	font-weight: 700;
  
  }
  
  
  .kk-why-trust-line span {
  
	color: #89918d;
  
	font-size: 12px;
  
  }
  
  
  /* =========================================================
	 RIGHT GRID
  ========================================================= */
  
  .kk-why-grid {
  
	position: relative;
  
	display: grid;
  
	grid-template-columns: 1fr 1fr;
  
	gap: 15px;
  
  }
  
  
  /* =========================================================
	 CARD
  ========================================================= */
  
  .kk-why-card {
  
	position: relative;
  
	min-height: 285px;
  
	padding: 25px;
  
	background: #ffffff;
  
	border: 1px solid #e1e7e3;
  
	border-radius: 16px;
  
	box-shadow:
	  0 7px 25px rgba(21,35,27,.035);
  
	overflow: hidden;
  
	transition:
	  transform .4s cubic-bezier(.2,.7,.2,1),
	  box-shadow .4s ease,
	  border-color .4s ease;
  
  }
  
  
  .kk-why-card:hover {
  
	transform: translateY(-7px);
  
	border-color: rgba(6,78,59,.28);
  
	box-shadow:
	  0 22px 50px rgba(21,35,27,.10);
  
  }
  
  
  /* =========================================================
	 TOP
  ========================================================= */
  
  .kk-why-card-top {
  
	display: flex;
  
	align-items: center;
  
	justify-content: space-between;
  
	margin-bottom: 32px;
  
  }
  
  
  .kk-why-number {
  
	color: #dce4df;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 30px;
  
	font-weight: 650;
  
	letter-spacing: -1.5px;
  
	transition: color .3s ease;
  
  }
  
  
  .kk-why-card:hover .kk-why-number {
  
	color: rgba(6,78,59,.22);
  
  }
  
  
  .kk-why-card-red:hover .kk-why-number {
  
	color: rgba(255,212,90,.18);
  
  }
  
  
  /* =========================================================
	 ICON
  ========================================================= */
  
  .kk-why-icon {
  
	width: 43px;
	height: 43px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 11px;
  
	color: #064E3B;
  
	background: #edf7ee;
  
	font-size: 17px;
  
	transition: all .35s ease;
  
  }
  
  
  .kk-why-card:hover .kk-why-icon {
  
	color: #ffffff;
  
	background: #064E3B;
  
	transform: rotate(-4deg);
  
  }
  
  
  .kk-why-card-red .kk-why-icon {
  
	color: #FFD45A;
  
	background: #fff0f1;
  
  }
  
  
  .kk-why-card-red:hover .kk-why-icon {
  
	color: #ffffff;
  
	background: #FFD45A;
  
  }
  
  
  /* =========================================================
	 CARD BODY
  ========================================================= */
  
  .kk-why-card-body h3 {
  
	margin: 0 0 12px;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 20px;
  
	line-height: 1.35;
  
	font-weight: 650;
  
	letter-spacing: -.4px;
  
  }
  
  
  .kk-why-card-body p {
  
	margin: 0;
  
	color: #222;
  
	font-size: 13px;
  
	line-height: 1.8;
  
  }
  
  
  /* =========================================================
	 ARROW
  ========================================================= */
  
  .kk-why-card-arrow {
  
	position: absolute;
  
	right: 22px;
	bottom: 21px;
  
	width: 28px;
	height: 28px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border: 1px solid #e3e8e5;
  
	border-radius: 50%;
  
	color: #929b96;
  
	font-size: 10px;
  
	transition: all .35s ease;
  
  }
  
  
  .kk-why-card:hover .kk-why-card-arrow {
  
	color: #ffffff;
  
	background: #064E3B;
  
	border-color: #064E3B;
  
	transform: translate(2px,-2px);
  
  }
  
  
  .kk-why-card-red:hover .kk-why-card-arrow {
  
	background: #FFD45A;
  
	border-color: #FFD45A;
  
  }
  
  
  /* =========================================================
	 BOTTOM BUSINESS STRIP
  ========================================================= */
  
  .kk-why-bottom {
  
	display: flex;
  
	align-items: center;
  
	justify-content: center;
  
	gap: 20px;
  
	margin-top: 20px;
  
	padding-top: 22px;
  
	border-top: 1px solid #dfe6e1;
  
  }
  
  
  .kk-why-bottom span {
  
	display: flex;
  
	align-items: center;
  
	gap: 7px;
  
	color: #222;
  
	font-size: 13px;
  
	font-weight: 700;
  
	letter-spacing: 1.2px;
  
  }
  
  
  .kk-why-bottom i {
  
	color: #064E3B;
  
	font-size: 12px;
  
  }
  
  
  .kk-why-bottom span:nth-of-type(2) i,
  .kk-why-bottom span:nth-of-type(4) i {
  
	color: #FFD45A;
  
  }
  
  
  .kk-why-bottom b {
  
	width: 3px;
	height: 3px;
  
	border-radius: 50%;
  
	background: #cbd3ce;
  
  }
  
  
  /* =========================================================
	 TABLET
  ========================================================= */
  
  @media (max-width: 991px) {
  
	.kk-why-section {
  
	  padding: 50px 0;
  
	}
  
  
	.kk-why-left {
  
	  padding-right: 0;
  
	}
  
  
	.kk-why-grid {
  
	  margin-top: 15px;
  
	}
  
  
	.kk-why-card {
  
	  min-height: 270px;
  
	}

  }

  /* ---------- PRICE LIST PAGE ---------- */
  .price-list-page {
    --price-green: #064E3B;
    --price-green-dark: #033D32;
    --price-gold: rgb(255, 212, 90);
    --price-ink: #033D32;
    background: #fbfaf6;
    color: var(--price-ink);
    font-family: 'Inter', sans-serif;
  }
  .price-hero {
    position: relative;
    overflow: visible;
    min-height: 440px;
    padding: 1.4rem 0 5.5rem;
    color: #fff;
    background: var(--price-green-dark);
  }
  .price-hero-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 44%;
  }
  .price-hero-shade {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(120deg, var(--price-green), var(--price-green-dark));
    clip-path: polygon(0 0, 41.8% 0, 42.3% 3%, 43% 6%, 44% 10%, 45.2% 15%, 46.6% 20%, 48.1% 26%, 49.8% 32%, 51.6% 38%, 53.5% 44%, 55.4% 50%, 57.4% 56%, 59.4% 62%, 61.4% 68%, 63.4% 74%, 65.4% 80%, 67.3% 86%, 69% 92%, 71% 100%, 0 100%);
  }
  .price-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 2;
    background:
      radial-gradient(ellipse at 18% 35%, rgba(6,78,59,.42), transparent 42%),
      linear-gradient(115deg, rgba(6,61,52,.78) 0%, rgba(6,75,63,.8) 72%, rgba(6,61,52,.84) 100%);
    clip-path: polygon(0 0, 41.2% 0, 41.7% 3%, 42.4% 6%, 43.4% 10%, 44.6% 15%, 46% 20%, 47.5% 26%, 49.2% 32%, 51% 38%, 52.9% 44%, 54.8% 50%, 56.8% 56%, 58.8% 62%, 60.8% 68%, 62.8% 74%, 64.8% 80%, 66.7% 86%, 68.4% 92%, 70.3% 100%, 0 100%);
  }
  .price-hero-content { position: relative; z-index: 3; padding-top: .25rem; }
  .price-hero-logo {
    width: 104px;
    height: 74px;
    margin-bottom: .25rem;
    object-fit: contain;
    object-position: left center;
  }
  .price-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #FFD45A;
    font: 700 .78rem 'Space Mono', monospace;
    letter-spacing: .12em;
    text-transform: uppercase;
  }
  .price-hero h1 {
    margin: .2rem 0 .8rem;
    color: #fff;
    font: 700 clamp(2.6rem, 5.2vw, 4rem) Georgia, serif;
    letter-spacing: -.025em;
    text-transform: uppercase;
  }
  .price-hero h1 span, .price-section h2 span, .price-notes h2 span { color: var(--price-gold); }
  .price-hero-features {
    display: flex;
    gap: 0;
    width: min(520px, 52%);
    margin: 1.1rem 0 0;
    padding: 0;
    list-style: none;
  }
  .price-hero-features li {
    display: flex;
    min-width: 0;
    flex: 1 1 0;
    flex-direction: column;
    align-items: center;
    gap: .35rem;
    padding: .15rem .5rem;
    border-right: 1px solid rgba(255,255,255,.23);
    color: #fff;
    font-size: .72rem;
    line-height: 1.3;
    text-align: center;
  }
  .price-hero-features li:first-child { padding-left: 0; }
  .price-hero-features li:last-child { border: 0; }
  .price-hero-features i { color: #FFD45A; font-size: 1.25rem; }
  .price-project-facts {
    position: absolute;
    z-index: 4;
    bottom: -42px;
    left: 50%;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: min(1256px, calc(100% - 24px));
    padding: 1.15rem 1.2rem;
    transform: translateX(-50%);
    border: 1px solid #efeee9;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 13px 32px rgba(20,35,27,.14);
  }
  .price-project-facts > div {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    padding: .35rem 1rem;
    border-right: 1px solid #d9d8d2;
  }
  .price-project-facts > div:first-child { padding-left: .25rem; }
  .price-project-facts > div:last-child { border: 0; }
  .price-project-facts i { flex: 0 0 auto; color: var(--price-green); font-size: 1.45rem; }
  .price-project-facts span { color: #5a625e; font-size: .72rem; line-height: 1.5; }
  .price-project-facts strong { display: block; color: #253c34; font-size: .8rem; overflow-wrap: anywhere; }
  .price-content { padding-top: 5rem; padding-bottom: 3.5rem; }
  .price-section { margin-bottom: 2.4rem; }
  .price-section h2, .price-notes h2 {
    margin: 0 0 1rem;
    color: var(--price-green-dark);
    font: 700 clamp(1.25rem, 2.5vw, 1.75rem) 'Sora', sans-serif;
    letter-spacing: -.03em;
    text-transform: uppercase;
  }
  .price-table-wrap {
    overflow: hidden;
    border: 1px solid #e7e4dc;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(26,54,43,.055);
  }
  .price-table { width: 100%; margin: 0; border-collapse: collapse; }
  .price-table th {
    padding: .78rem 1rem;
    color: #fff;
    background: var(--price-green);
    font-size: .8rem;
    font-weight: 700;
    text-align: left;
    text-transform: uppercase;
  }
  .price-table td {
    padding: .7rem 1rem;
    border-top: 1px solid #e9e7e1;
    color: var(--price-ink);
    font-size: .88rem;
    line-height: 1.45;
    vertical-align: middle;
  }
  .price-table tbody tr:nth-child(even) { background: #faf9f6; }
  .price-table th:not(:first-child), .price-table td:not(:first-child) { border-left: 1px solid #e9e7e1; }
  .price-table th:not(:first-child), .price-table td:not(:first-child) { text-align: center; }
  .price-table-note {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: 0;
    padding: .8rem 1rem;
    color: #473816;
    background: #fff1cf;
    font-size: .84rem;
    font-weight: 600;
  }
  .price-table-note i { color: rgb(255, 212, 90); font-size: 1.1rem; }
  .price-charges-table td { font-size: .82rem; }
  .price-notes {
    padding: 1.5rem;
    border: 1px solid #eee4cc;
    border-radius: 12px;
    background: #fffdf8;
  }
  .price-notes ul { display: grid; gap: .65rem; margin: 0; padding: 0; list-style: none; }
  .price-notes li { position: relative; padding-left: 1.7rem; color: #39443f; font-size: .87rem; }
  .price-notes li::before {
    content: "\F26A";
    position: absolute;
    left: 0;
    top: .08rem;
    color: var(--price-gold);
    font-family: "bootstrap-icons";
    font-size: 1rem;
  }
  .price-actions { display: flex; justify-content: center; gap: .85rem; margin-top: 1.7rem; }
  .btn-price-print, .btn-price-enquire {
    padding: .75rem 1.35rem;
    border: 1px solid var(--price-gold);
    border-radius: 8px;
    font-weight: 700;
  }
  .btn-price-print { color: #fff; background: var(--price-gold); }
  .btn-price-print:hover { color: #fff; background: #FFD45A; }
  .btn-price-enquire { color: var(--price-green); background: transparent; }
  .btn-price-enquire:hover { color: #fff; background: var(--price-green); }
  .price-footer { padding: 1.3rem 0; color: #fff; background: var(--price-green-dark); }
  .price-footer-brand img { width: 72px; height: 52px; object-fit: contain; }
  .price-footer p { margin: 0; color: rgba(255,255,255,.82); font-size: .86rem; }
  .price-footer p a { color: #FFD45A; font-weight: 700; }
  .price-footer > .container-xl > span { color: rgba(255,255,255,.68); font-size: .78rem; }
  @media (max-width: 767px) {
    .price-hero { min-height: 465px; padding: 1rem 0 6.5rem; }
    .price-hero-image { object-position: 64% center; }
    .price-hero-shade {
      background: linear-gradient(120deg, var(--price-green), var(--price-green-dark));
      clip-path: polygon(0 0, 78% 0, 78.8% 5%, 80% 10%, 81.4% 16%, 83% 23%, 84.8% 30%, 86.8% 38%, 88.8% 46%, 90.8% 54%, 92.8% 62%, 94.6% 70%, 96.2% 78%, 97.6% 86%, 98.7% 93%, 100% 100%, 0 100%);
    }
    .price-hero::before {
      z-index: 2;
      background: linear-gradient(115deg, rgba(6,61,52,.78) 0%, rgba(6,75,63,.8) 74%, rgba(6,61,52,.84) 100%);
      clip-path: polygon(0 0, 77% 0, 77.8% 5%, 79% 10%, 80.4% 16%, 82% 23%, 83.8% 30%, 85.8% 38%, 87.8% 46%, 89.8% 54%, 91.8% 62%, 93.6% 70%, 95.2% 78%, 96.6% 86%, 97.7% 93%, 99% 100%, 0 100%);
    }
    .price-hero-content { padding-top: .5rem; }
    .price-hero-logo { width: 92px; height: 64px; }
    .price-hero-features { width: min(100%, 420px); margin-top: .75rem; }
    .price-hero-features li { padding: .15rem .25rem; font-size: .68rem; }
    .price-project-facts { bottom: -62px; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .7rem; border-radius: 15px; }
    .price-project-facts > div { padding: .55rem; border-right: 0; }
    .price-project-facts > div:first-child { padding-left: .55rem; }
    .price-project-facts > div:nth-child(-n+2) { border-bottom: 1px solid #d9d8d2; }
    .price-project-facts > div:nth-child(odd) { border-right: 1px solid #d9d8d2; }
    .price-content { padding-top: 5.2rem; }
    .price-table { min-width: 560px; }
    .price-table-wrap { overflow-x: auto; }
    .price-charges-table { min-width: 760px; }
    .price-table td, .price-table th { padding: .65rem .75rem; }
    .price-notes { padding: 1.1rem; }
  }
  @media print {
    .topbar, #mainNav, .price-actions, .price-footer { display: none !important; }
    .price-hero { padding: 1rem 0; color: #000; background: #fff; }
    .price-hero h1, .price-project-facts span, .price-project-facts strong { color: #000; }
    .price-hero-content > p, .price-eyebrow { color: #333; }
    .price-project-facts { border-color: #ccc; background: #fff; }
    .price-project-facts > div { border-color: #ccc; }
    .price-project-facts i { color: #333; }
    .price-content { padding-top: 1rem; }
    .price-section, .price-notes { break-inside: avoid; }
  }

/* ---------- HOME PRICE LIST PROMO ---------- */
.home-price-promo {
  --promo-green: #003f35;
  --promo-gold: rgb(255, 212, 90);
  position: relative;
  min-height: 500px;
  margin: 2rem 0 0;
  overflow: hidden;
  isolation: isolate;
  color: #fff;
  background: #0d5144;
}
.home-price-promo-image {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 45%;
}
.home-price-promo-shapes {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.home-price-promo-gold { fill: var(--promo-gold); }
.home-price-promo-green { fill: rgba(0, 54, 46, .94); }
.home-price-promo-bottom {
  position: absolute;
  z-index: 2;
  inset: auto 0 0;
  width: 100%;
  height: 78px;
  overflow: visible;
  pointer-events: none;
}
.home-price-promo-bottom path {
  fill: none;
  stroke: var(--promo-gold);
  stroke-width: 7;
  vector-effect: non-scaling-stroke;
}
.home-price-promo-content {
  position: relative;
  width: min(54%, 920px);
  padding: 2.4rem 0 5rem 6.2%;
}
.home-price-promo-kicker {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: .55rem;
  color: var(--promo-gold);
  font: 500 clamp(.8rem, 1.4vw, 1.2rem) 'Sora', sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.home-price-promo-kicker span {
  width: clamp(28px, 5vw, 80px);
  height: 2px;
  background: var(--promo-gold);
}
.home-price-promo-content h2 {
  margin: 0;
  color: #fff;
  font: 700 clamp(2.8rem, 4.4vw, 5.3rem)/.98 Georgia, 'Times New Roman', serif;
  letter-spacing: -.035em;
}
.home-price-promo-content h2 > span { white-space: nowrap; }
.home-price-promo-content h2 strong {
  color: rgb(255, 212, 90);
  font-weight: 700;
}
.home-price-promo-content > p {
  max-width: 560px;
  margin: .5rem 0 1rem;
  color: rgba(255,255,255,.86);
  font-size: clamp(.9rem, 1.3vw, 1.15rem);
  line-height: 1.4;
}
.home-price-promo-features {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .6rem;
  max-width: 690px;
  margin: 0 0 1rem;
  padding: 0;
  list-style: none;
}
.home-price-promo-features li {
  display: flex;
  min-height: 88px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  padding: .7rem .4rem;
  border: 1px solid rgba(255,255,255,.32);
  border-radius: 12px;
  background: rgba(0,35,30,.22);
  color: #fff;
  font-size: clamp(.7rem, 1vw, .95rem);
  line-height: 1.35;
  text-align: center;
}
.home-price-promo-features i {
  color: var(--promo-gold);
  font-size: clamp(1.5rem, 2.4vw, 2.5rem);
}
.home-price-promo-button {
  display: flex;
  width: min(100%, 320px);
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: .8rem;
  padding: .65rem 1.1rem;
  border: 1px solid #FFD45A;
  border-radius: 10px;
  color: #033D32;
  background: linear-gradient(110deg, #FFD45A, #FFD45A);
  box-shadow: 0 8px 24px rgba(0,0,0,.15);
  font: 700 clamp(.95rem, 1.3vw, 1.2rem) 'Sora', sans-serif;
  text-align: center;
  transition: transform .2s ease, box-shadow .2s ease;
}
.home-price-promo-button:hover {
  transform: translateY(-2px);
  color: #033D32;
  box-shadow: 0 12px 28px rgba(0,0,0,.22);
}
.home-price-promo-button i { font-size: 1.5em; }
.home-price-promo-brand {
  position: absolute;
  top: 2rem;
  right: 5%;
  display: flex;
  width: 145px;
  flex-direction: column;
  align-items: center;
  color: #033D32;
  font: 700 .75rem Georgia, serif;
  text-align: center;
  text-transform: uppercase;
}
.home-price-promo-brand img {
  width: 96px;
  height: 90px;
  margin-bottom: .35rem;
  border: 1px solid rgba(255,212,90,.6);
  border-radius: 50%;
  object-fit: cover;
  object-position: center 37%;
  box-shadow: 0 5px 20px rgba(0,0,0,.16);
}
@media (max-width: 991px) and (min-width: 768px) {
  .home-price-promo { min-height: 480px; }
  .home-price-promo-content {
    width: 58%;
    padding-left: 4%;
    padding-top: 2.4rem;
  }
  .home-price-promo-content > p { max-width: 100%; }
  .home-price-promo-features { gap: .45rem; max-width: 100%; }
  .home-price-promo-features li { min-height: 82px; }
  .home-price-promo-brand { right: 2%; transform: scale(.82); transform-origin: top right; }
}
@media (max-width: 767px) {
  .home-price-promo {
    min-height: 610px;
    margin-top: 1.5rem;
  }
  .home-price-promo-image { object-position: 62% center; }
  .home-price-promo-shapes .home-price-promo-gold {
    d: path("M0 0 H920 C900 200 865 400 795 600 H0 Z");
  }
  .home-price-promo-shapes .home-price-promo-green {
    d: path("M0 0 H905 C885 200 850 400 780 600 H0 Z");
    fill: rgba(3,61,50,.91);
  }
  .home-price-promo-content {
    width: 100%;
    padding: 1.9rem 1.25rem 5.5rem;
  }
  .home-price-promo-content h2 { font-size: clamp(2.1rem, 9vw, 3.1rem); }
  .home-price-promo-content > p { max-width: 92%; font-size: .92rem; }
  .home-price-promo-features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: min(100%, 390px);
    gap: .55rem;
  }
  .home-price-promo-features li { min-height: 76px; }
  .home-price-promo-features i { font-size: 1.4rem; }
  .home-price-promo-button { width: min(100%, 280px); min-height: 48px; }
  .home-price-promo-brand {
    top: 1rem;
    right: 1rem;
    width: 100px;
    color: #fff;
    font-size: .55rem;
  }
  .home-price-promo-brand img { width: 62px; height: 58px; }
  .home-price-promo-bottom { height: 55px; }
  .home-price-promo-bottom path {
    d: path("M0 22 C180 93 315 83 462 43 C585 25 700 34 780 58");
  }
  .home-price-promo-bottom path { stroke-width: 5; }
}
  
  
  /* =========================================================
	 MOBILE
  ========================================================= */
  
  @media (max-width: 767px) {
  
	.kk-why-section {
  
	  padding: 50px 0 40px;
  
	}
  
  
	.kk-why-left h2 {
  
	  font-size: 38px;
  
	}
  
  
	.kk-why-grid {
  
	  grid-template-columns: 1fr;
  
	  gap: 13px;
  
	  margin-top: 15px;
  
	}
  
  
	.kk-why-card {
  
	  min-height: 250px;
  
	}
  
  
	.kk-why-bottom {
  
	  flex-wrap: wrap;
  
	  gap: 13px;
  
	  margin-top: 45px;
  
	}
  
  
	.kk-why-bottom b {
  
	  display: none;
  
	}
  
  }
  
  
  /* =========================================================
	 SMALL MOBILE
  ========================================================= */
  
  @media (max-width: 480px) {
  
	.kk-why-left h2 {
  
	  font-size: 34px;
  
	  letter-spacing: -1.5px;
  
	}
  
  
	.kk-why-exp-number {
  
	  font-size: 42px;
  
	}
  
  
	.kk-why-card {
  
	  padding: 22px;
  
	}
  
  }

  /* =========================================================
   MAIN
========================================================= */

.kk-cta-partition {

	position: relative;
  
	padding: 0 0;
  
	background: #101a15;
  
	overflow: hidden;
  
  }
  
  
  /* =========================================================
	 INNER CTA
  ========================================================= */
  
  .kk-cta-inner {
  
	position: relative;
  
	min-height: 390px;
  
	display: flex;
  
	flex-direction: column;
  
	justify-content: center;
  
	padding: 70px 65px 30px;
  
	border-left: 1px solid rgba(255,255,255,.07);
  
	border-right: 1px solid rgba(255,255,255,.07);
  
	overflow: hidden;
  
  }
  
  
  /* =========================================================
	 ARCHITECTURAL GRID
  ========================================================= */
  
  .kk-cta-grid {
  
	position: absolute;
  
	inset: 0;
  
	background-image:
  
	  linear-gradient(
		rgba(255,255,255,.028) 1px,
		transparent 1px
	  ),
  
	  linear-gradient(
		90deg,
		rgba(255,255,255,.028) 1px,
		transparent 1px
	  );
  
	background-size: 65px 65px;
  
	opacity: .55;
  
	pointer-events: none;
  
  }
  
  
  /* =========================================================
	 GLOW
  ========================================================= */
  
  .kk-cta-glow {
  
	position: absolute;
  
	width: 430px;
	height: 430px;
  
	border-radius: 50%;
  
	filter: blur(100px);
  
	pointer-events: none;
  
  }
  
  
  .kk-cta-glow-one {
  
	top: -260px;
	left: 15%;
  
	background: rgba(6,78,59,.15);
  
  }
  
  
  .kk-cta-glow-two {
  
	bottom: -320px;
	right: 8%;
  
	background: rgba(255,212,90,.08);
  
  }
  
  
  /* =========================================================
	 WATERMARK
  ========================================================= */
  
  .kk-cta-watermark {
  
	position: absolute;
  
	right: -10px;
	bottom: 25px;
  
	color: rgba(255,255,255,.025);
  
	font-family: 'Sora', sans-serif;
  
	font-size: 210px;
  
	font-weight: 700;
  
	line-height: 1;
  
	letter-spacing: -15px;
  
	user-select: none;
  
	pointer-events: none;
  
  }
  
  
  /* =========================================================
	 CONTENT
  ========================================================= */
  
  .kk-cta-content {
  
	position: relative;
  
	z-index: 2;
  
	max-width: 720px;
  
  }
  
  
  .kk-cta-eyebrow {
  
	display: flex;
  
	align-items: center;
  
	gap: 10px;
  
	margin-bottom: 16px;
  
	color: #70c477;
  
	font-size: 9px;
  
	font-weight: 700;
  
	letter-spacing: 2.5px;
  
  }
  
  
  .kk-cta-eyebrow i {
  
	width: 29px;
	height: 2px;
  
	display: block;
  
	background: #FFD45A;
  
  }
  
  
  .kk-cta-content h2 {
  
	margin: 0;
  
	color: #ffffff;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 35px;
  
	line-height: 1.08;
  
	font-weight: 600; 
  
  }
  
  
  .kk-cta-content h2 span {
  
	color: #61b968;
  
  }
  
  
  .kk-cta-content p {
  
	max-width: 650px;
  
	margin: 20px 0 0;
  
	color: #fff;
  
	font-size: 15px;
  
	line-height: 1.9;
  
  }
  
  
  /* =========================================================
	 ACTION
  ========================================================= */
  
  .kk-cta-action {
  
	position: relative;
  
	z-index: 2;
  
	display: flex;
  
	flex-direction: column;
  
	align-items: flex-start;
  
	padding-left: 25px;
  
  }
  
  
  /* =========================================================
	 BUTTON
  ========================================================= */
  
  .kk-cta-button {
  
	display: inline-flex;
  
	align-items: center;
  
	gap: 14px;
  
	padding: 7px 8px 7px 20px;
  
	color: #ffffff;
  
	text-decoration: none;
  
	background: #064E3B;
  
	border-radius: 50px;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 14px;
  
	font-weight: 600;
  
	box-shadow:
	  0 15px 40px rgba(6,78,59,.22);
  
	transition:
	  background .3s ease,
	  transform .3s ease,
	  box-shadow .3s ease;
  
  }
  
  
  .kk-cta-button i {
  
	width: 38px;
	height: 38px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.16);
  
	font-size: 13px;
  
	transition: transform .3s ease;
  
  }
  
  
  .kk-cta-button:hover {
  
	color: #ffffff;
  
	background: #FFD45A;
  
	transform: translateY(-4px);
  
	box-shadow:
	  0 18px 40px rgba(255,212,90,.20);
  
  }
  
  
  .kk-cta-button:hover i {
  
	transform: translate(3px,-3px);
  
  }
  
  
  /* =========================================================
	 PHONE
  ========================================================= */
  
  .kk-cta-contact {
  
	margin-top: 21px;
  
	padding-left: 4px;
  
  }
  
  
  .kk-cta-contact span {
  
	display: block;
  
	margin-bottom: 5px;
  
	color: rgba(255,255,255,.32);
  
	font-size: 12px;
  
  }
  
  
  .kk-cta-contact a {
  
	color: rgba(255,255,255,.75);
  
	text-decoration: none;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 14px;
  
	font-weight: 500;
  
	transition: color .25s ease;
  
  }
  
  
  .kk-cta-contact a:hover {
  
	color: #064E3B;
  
  }
  
  
  /* =========================================================
	 BOTTOM BUSINESS STRIP
  ========================================================= */
  
  .kk-cta-bottom {
  
	position: relative;
  
	z-index: 3;
  
	display: flex;
  
	align-items: center;
  
	gap: 18px;
  
	margin-top: 55px;
  
	padding-top: 18px;
  
	border-top: 1px solid rgba(255,255,255,.09);
  
  }
  
  
  .kk-cta-bottom div {
  
	display: flex;
  
	align-items: center;
  
	gap: 7px;
  
  }
  
  
  .kk-cta-bottom i {
  
	color: #60b967;
  
	font-size: 11px;
  
  }
  
  
  .kk-cta-bottom div:nth-of-type(2) i,
  .kk-cta-bottom div:nth-of-type(4) i {
  
	color: #FFD45A;
  
  }
  
  
  .kk-cta-bottom span {
  
	color: #fff;
  
	font-size: 12px;
  
	font-weight: 700;
  
	letter-spacing: 1.2px;
  
  }
  
  
  .kk-cta-bottom b {
  
	width: 3px;
	height: 3px;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.18);
  
  }
  
  
  /* =========================================================
	 TABLET
  ========================================================= */
  
  @media (max-width: 991px) {
  
	.kk-cta-inner {
  
	  padding: 60px 40px 28px;
  
	}
  
  
	.kk-cta-action {
  
	  padding-left: 0;
  
	}
  
  
	.kk-cta-content h2 {
  
	  font-size: 43px;
  
	}
  
  
	.kk-cta-watermark {
  
	  font-size: 160px;
  
	}
  
  }
  
  
  /* =========================================================
	 MOBILE
  ========================================================= */
  
  @media (max-width: 767px) {
  
	.kk-cta-inner {
  
	  min-height: auto;
  
	  padding: 60px 24px 25px;
  
	}
  
  
	.kk-cta-content h2 {
  
	  font-size: 36px; 
  
	}
  
  
	.kk-cta-content p {
  
	  font-size: 13px;
  
	}
  
  
	.kk-cta-action {
  
	  margin-top: 30px;
  
	}
  
  
	.kk-cta-bottom {
  
	  flex-wrap: wrap;
  
	  gap: 12px 17px;
  
	  margin-top: 42px;
  
	}
  
  
	.kk-cta-bottom b {
  
	  display: none;
  
	}
  
  
	.kk-cta-watermark {
  
	  right: -20px;
  
	  bottom: 65px;
  
	  font-size: 110px;
  
	}
  
  }
  
  
  /* =========================================================
	 SMALL MOBILE
  ========================================================= */
  
  @media (max-width: 480px) {
  
	.kk-cta-content h2 {
  
	  font-size: 32px;
  
	}
  
  
	.kk-cta-watermark {
  
	  font-size: 85px;
  
	}
  
  }

  /* =========================================================
   SECTION
========================================================= */

.kk-faq-section {

	position: relative;
  
	padding: 105px 0 110px;
  
	background: #ffffff;
  
	overflow: hidden;
  
  }
  
  
  /* =========================================================
	 BACKGROUND
  ========================================================= */
  
  .kk-faq-bg {
  
	position: absolute;
  
	right: 0;
	top: 0;
  
	width: 35%;
	height: 100%;
  
	background-image:
	  linear-gradient(
		90deg,
		rgba(6,78,59,.025) 1px,
		transparent 1px
	  ),
	  linear-gradient(
		rgba(6,78,59,.025) 1px,
		transparent 1px
	  );
  
	background-size: 65px 65px;
  
	mask-image:
	  linear-gradient(
		to left,
		black,
		transparent
	  );
  
	pointer-events: none;
  
  }
  
  
  /* =========================================================
	 FAQ LEFT
  ========================================================= */
  
  .kk-faq-left {
  
	position: relative;
  
	z-index: 2;
  
  }
  
  
  .kk-faq-eyebrow {
  
	display: flex;
  
	align-items: center;
  
	gap: 10px;
  
	margin-bottom: 15px;
  
	color: #064E3B;
  
	font-size: 13px;
  
	font-weight: 700; 
  
  }
  
  
  .kk-faq-eyebrow i {
  
	width: 29px;
	height: 2px;
  
	display: block;
  
	background: #FFD45A;
  
  }
  
  
  .kk-faq-left h2 {
  
	margin: 0;
  
	color: #033D32;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 35px;
  
	line-height: 1.08;
  
	font-weight: 600;
  
	letter-spacing: -2px;
  
  }
  
  
  .kk-faq-left h2 span {
  
	color: #064E3B;
  
  }
  
  
  .kk-faq-intro {
  
	max-width: 600px;
  
	margin: 19px 0 38px;
  
	color: #000;
  
	font-size: 14px;
  
	line-height: 1.85;
  
  }
  
  
  /* =========================================================
	 FAQ LIST
  ========================================================= */
  
  .kk-faq-list {
  
	max-width: 760px;
  
	border-top: 1px solid #e2e8e4;
  
  }
  
  
  /* =========================================================
	 ITEM
  ========================================================= */
  
  .kk-faq-item {
  
	border-bottom: 1px solid #e2e8e4;
  
  }
  
  
  .kk-faq-question {
  
	width: 100%;
  
	display: grid;
  
	grid-template-columns: 43px 1fr 35px;
  
	align-items: center;
  
	gap: 15px;
  
	padding: 21px 0;
  
	border: 0;
  
	background: transparent;
  
	text-align: left;
  
	cursor: pointer;
  
  }
  
  
  /* =========================================================
	 NUMBER
  ========================================================= */
  
  .kk-faq-q-number {
  
	color: #000;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 15px;
  
	font-weight: 600;
  
  }
  
  
  .kk-faq-item.active .kk-faq-q-number {
  
	color: #064E3B;
  
  }
  
  
  /* =========================================================
	 QUESTION
  ========================================================= */
  
  .kk-faq-q-text {
  
	color: #29322e;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 15px;
  
	line-height: 1.5;
  
	font-weight: 600;
  
	transition: color .25s ease;
  
  }
  
  
  .kk-faq-question:hover .kk-faq-q-text {
  
	color: #064E3B;
  
  }
  
  
  /* =========================================================
	 TOGGLE
  ========================================================= */
  
  .kk-faq-toggle {
  
	width: 29px;
	height: 29px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border: 1px solid #dfe5e1;
  
	border-radius: 50%;
  
	color: #68736d;
  
	font-size: 12px;
  
	transition:
	  transform .35s ease,
	  color .35s ease,
	  background .35s ease,
	  border-color .35s ease;
  
  }
  
  
  .kk-faq-item.active .kk-faq-toggle {
  
	color: #ffffff;
  
	background: #064E3B;
  
	border-color: #064E3B;
  
	transform: rotate(45deg);
  
  }
  
  
  /* =========================================================
	 ANSWER
  ========================================================= */
  
  .kk-faq-answer {
  
	display: none;
  
	padding:
  
	  0
	  70px
	  22px
	  58px;
  
  }
  
  
  .kk-faq-item.active .kk-faq-answer {
  
	display: block;
  
  }
  
  
  .kk-faq-answer p {
  
	margin: 0;
  
	color: #222;
  
	font-size: 14px;
  
	line-height: 1.85;
  
  }
  
  
  /* =========================================================
	 FORM WRAPPER
  ========================================================= */
  
  .kk-faq-form-wrapper {
  
	position: relative;
  
	z-index: 2;
  
	padding: 36px 34px 31px;
  
	background: #111b16;
  
	border-radius: 22px;
  
	overflow: hidden;
  
	box-shadow:
	  0 25px 65px rgba(17,28,22,.16);
  
  }
  
  
  /* =========================================================
	 FORM PATTERN
  ========================================================= */
  
  .kk-form-pattern {
  
	position: absolute;
  
	inset: 0;
  
	background-image:
  
	  linear-gradient(
		rgba(255,255,255,.025) 1px,
		transparent 1px
	  ),
  
	  linear-gradient(
		90deg,
		rgba(255,255,255,.025) 1px,
		transparent 1px
	  );
  
	background-size: 50px 50px;
  
	pointer-events: none;
  
  }
  
  
  .kk-form-watermark {
  
	position: absolute;
  
	right: -10px;
	top: -50px;
  
	color: rgba(255,255,255,.035);
  
	font-family: 'Sora', sans-serif;
  
	font-size: 210px;
  
	font-weight: 700;
  
	line-height: 1;
  
	pointer-events: none;
  
  }
  
  
  /* =========================================================
	 FORM HEADER
  ========================================================= */
  
  .kk-form-header {
  
	position: relative;
  
	z-index: 2;
  
	margin-bottom: 27px;
  
  }
  
  
  .kk-form-eyebrow {
  
	color: #064E3B;
  
	font-size: 12px;
  
	font-weight: 700; 
  
  }
  
  
  .kk-form-header h3 {
  
	max-width: 400px;
  
	margin: 9px 0 10px;
  
	color: #ffffff;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 26px;
  
	line-height: 1.2;
  
	font-weight: 600;
  
	letter-spacing: -.8px;
  
  }
  
  
  .kk-form-header h3 span {
  
	color: #67ba6d;
  
  }
  
  
  .kk-form-header p {
  
	margin: 0;
  
	color: #fff;
  
	font-size: 14px;
  
	line-height: 1.75;
  
  }
  
  
  /* =========================================================
	 FORM
  ========================================================= */
  
  .kk-premium-form {
  
	position: relative;
  
	z-index: 2;
  
  }
  
  
  /* =========================================================
	 FIELD
  ========================================================= */
  
  .kk-form-field {
  
	margin-bottom: 14px;
  
  }
  
  
  .kk-form-field label {
  
	display: block;
  
	margin: 0 0 6px;
  
	color: rgba(255,255,255,.52);
  
	font-size: 13px;
  
	font-weight: 600;
  
	letter-spacing: .7px;
  
  }
  
  
  .kk-input-wrap {
  
	position: relative;
  
  }
  
  
  .kk-input-wrap > i {
  
	position: absolute;
  
	left: 13px;
  
	top: 50%;
  
	transform: translateY(-50%);
  
	color: rgba(255,255,255,.30);
  
	font-size: 12px;
  
	pointer-events: none;
  
  }
  
  
  .kk-input-wrap input,
  .kk-input-wrap select,
  .kk-input-wrap textarea {
  
	width: 100%;
  
	border: 1px solid rgba(255,255,255,.09);
  
	border-radius: 9px;
  
	background: rgba(255,255,255,.045);
  
	color: #ffffff;
  
	outline: none;
  
	font-family: inherit;
  
	font-size: 10.5px;
  
	transition:
	  border-color .25s ease,
	  background .25s ease,
	  box-shadow .25s ease;
  
  }
  
  
  .kk-input-wrap input,
  .kk-input-wrap select {
  
	height: 43px;
  
	padding:
	  0
	  13px
	  0
	  38px;
  
  }
  
  
  .kk-input-wrap textarea {
  
	min-height: 80px;
  
	resize: vertical;
  
	padding:
	  12px
	  13px
	  12px
	  38px;
  
  }
  
  
  .kk-input-wrap select {
  
	appearance: none;
  
	cursor: pointer;
  
  }
  
  
  .kk-input-wrap select option {
  
	color: #033D32;
  
	background: #ffffff;
  
  }
  
  
  .kk-input-wrap input::placeholder,
  .kk-input-wrap textarea::placeholder {
  
	color: rgba(255,255,255,.27);
  
  }
  
  
  .kk-input-wrap input:focus,
  .kk-input-wrap select:focus,
  .kk-input-wrap textarea:focus {
  
	border-color: rgba(6,78,59,.65);
  
	background: rgba(6,78,59,.07);
  
	box-shadow:
	  0 0 0 3px rgba(6,78,59,.08);
  
  }
  
  
  .kk-input-wrap:focus-within > i {
  
	color: #064E3B;
  
  }
  
  
  /* =========================================================
	 TEXTAREA ICON
  ========================================================= */
  
  .kk-textarea-wrap > i {
  
	top: 15px;
  
	transform: none;
  
  }
  
  
  /* =========================================================
	 SUBMIT
  ========================================================= */
  
  .kk-form-submit {
  
	width: 100%;
  
	min-height: 46px;
  
	display: flex;
  
	align-items: center;
  
	justify-content: space-between;
  
	padding: 6px 7px 6px 18px;
  
	margin-top: 20px;
  
	border: 0;
  
	border-radius: 50px;
  
	color: #ffffff;
  
	background: #064E3B;
  
	font-family: 'Sora', sans-serif;
  
	font-size: 10px;
  
	font-weight: 600;
  
	cursor: pointer;
  
	transition:
	  background .3s ease,
	  transform .3s ease,
	  box-shadow .3s ease;
  
  }
  
  
  .kk-form-submit i {
  
	width: 34px;
	height: 34px;
  
	display: flex;
  
	align-items: center;
	justify-content: center;
  
	border-radius: 50%;
  
	background: rgba(255,255,255,.15);
  
	font-size: 12px;
  
	transition: transform .3s ease;
  
  }
  
  
  .kk-form-submit:hover {
  
	background: #FFD45A;
  
	transform: translateY(-2px);
  
	box-shadow:
	  0 12px 30px rgba(255,212,90,.20);
  
  }
  
  
  .kk-form-submit:hover i {
  
	transform: translate(3px,-3px);
  
  }
  
  
  /* =========================================================
	 FORM NOTE
  ========================================================= */
  
  .kk-form-note {
  
	display: flex;
  
	align-items: flex-start;
  
	gap: 7px;
  
	margin-top: 15px;
  
	color: rgba(255,255,255,.30);
  
	font-size: 8px;
  
	line-height: 1.55;
  
  }
  
  
  .kk-form-note i {
  
	flex-shrink: 0;
  
	color: #064E3B;
  
	font-size: 11px;
  
  }
  
  
  /* =========================================================
	 TABLET
  ========================================================= */
  
  @media (max-width: 991px) {
  
	.kk-faq-section {
  
	  padding: 80px 0;
  
	}
  
  
	.kk-faq-form-wrapper {
  
	  margin-top: 15px;
  
	}
  
  
	.kk-faq-left h2 {
  
	  font-size: 30px;
  
	}
  
  }
  
  
  /* =========================================================
	 MOBILE
  ========================================================= */
  
  @media (max-width: 767px) {
  
	.kk-faq-section {
  
	  padding: 65px 0 70px;
  
	}
  
  
	.kk-faq-left h2 {
  
	  font-size: 30px;
  
	}
  
  
	.kk-faq-question {
  
	  grid-template-columns: 32px 1fr 31px;
  
	  gap: 10px;
  
	  padding: 18px 0;
  
	}
  
  
	.kk-faq-q-text {
  
	  font-size: 15px;
  
	}
  
  
	.kk-faq-answer {
  
	  padding:
		0
		45px
		20px
		42px;
  
	}
  
  
	.kk-faq-form-wrapper {
  
	  padding: 30px 22px 25px;
  
	  border-radius: 18px;
  
	}
  
  
	.kk-form-header h3 {
  
	  font-size: 24px;
  
	}
  
  }
  
  
  /* =========================================================
	 SMALL MOBILE
  ========================================================= */
  
  @media (max-width: 480px) {
  
	.kk-faq-left h2 {
  
	  font-size: 30px;
  
	}
  
  
	.kk-faq-answer {
  
	  padding-left: 42px;
  
	}
  
  
	.kk-form-watermark {
  
	  font-size: 150px;
  
	}
  
	}
	
	/* ================================
   PROJECT SECTION
================================ */

.kk-project-card {
	background: #fff;
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 30px;
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.10);
	transition: all 0.4s ease;
	height: 100%;
}

/* Green top accent */
  
.kk-project-body::before {
	content: "";
  
	position: absolute;
  
	left: 24px;
	top: 0;
  
	width: 42px;
	height: 3px;
  
	background: #064E3B;
  
	transition: width .4s ease;
  }

.kk-project-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 15px 35px rgba(0, 0, 0, 0.18);
}


/* ================================
 PROJECT IMAGE
================================ */

.kk-project-img {
	width: 100%;
	height: 240px;
	overflow: hidden;
	position: relative;
}

.kk-project-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.5s ease;
}

.kk-project-card:hover .kk-project-img img {
	transform: scale(1.08);
}


/* ================================
 PROJECT BODY
================================ */

.kk-project-body {
	padding: 22px 20px 24px;
	background: #fff;
}

.kk-project-body h3 {
	font-size: 21px;
	font-weight: 700;
	margin: 0 0 10px;
	color: #222;
	line-height: 1.3;
}

.kk-project-body p {
	font-size: 14px;
	line-height: 1.7;
	color: #777;
	margin: 0;
}


/* ================================
 RESPONSIVE
================================ */

@media (max-width: 991px) {

	.kk-project-img {
			height: 220px;
	}

	.kk-project-body h3 {
			font-size: 19px;
	}
}

@media (max-width: 767px) {

	.kk-project-img {
			height: 250px;
	}

	.kk-project-body {
			padding: 20px;
	}
}

@media (max-width: 575px) {

	.kk-project-img {
			height: 230px;
	}

	.kk-project-body h3 {
			font-size: 18px;
	}

	.kk-project-body p {
			font-size: 14px;
	}
}
/* ### */

/* nirman-page - project malawi */
/* ================================
   OVERSEAS PROJECT
================================ */

.kk-overseas-project {
	width: 100%;
	padding: 90px 0;
	background: #fff;
	overflow: hidden;
}

.kk-project-container {
	width: 90%;
	max-width: 1250px;
	margin: auto;

	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: 75px;
}


/* ================================
 IMAGE
================================ */

.kk-project-image {
	position: relative;
	padding: 25px;
}

.kk-project-image img {
	position: relative;
	z-index: 2;

	width: 100%;
	height: 500px;

	object-fit: cover;

	display: block;

	border-radius: 22px;

	border: 8px solid #fff;

	box-shadow: 0 12px 35px rgba(0, 0, 0, 0.15);
}


/* Orange Decorative Shapes */

.kk-orange-shape {
	position: absolute;
	width: 180px;
	height: 180px;

	background: #033D32;

	border-radius: 25px;

	z-index: 1;
}

.kk-shape-top {
	top: 0;
	left: 0;
}

.kk-shape-bottom {
	right: 0;
	bottom: 0;
}


/* ================================
 RIGHT CONTENT
================================ */

.kk-project-content {
	position: relative;
	z-index: 3;
}


/* Small Heading */

.kk-small-heading {
	display: flex;
	align-items: center;

	gap: 25px;

	color: #555;

	font-size: 17px;

	letter-spacing: 4px;

	font-weight: 600;

	margin-bottom: 22px;
}

.kk-small-heading span {
	width: 48px;
	height: 5px;

	background: #FFD45A;

	border-radius: 10px;

	display: inline-block;
}


/* Main Heading */

.kk-project-content h2 {
	margin: 0 0 30px;

	font-size: 48px;

	line-height: 1.08;

	font-weight: 700;

	color: #033D32;
}

.kk-project-content h2 strong {
	color: #FFD45A;
	font-weight: 700;
}


/* Client */

.kk-project-content h3 {
	margin: 0 0 25px;

	font-size: 21px;

	color: #033D32;

	font-weight: 700;
}


/* ================================
 PROJECT LIST
================================ */

.kk-project-list {
	list-style: none;

	margin: 0;
	padding: 0;
}

.kk-project-list li {
	display: flex;

	align-items: flex-start;

	gap: 18px;

	margin-bottom: 22px;
}


/* Check Circle */

.kk-check {
	flex-shrink: 0;

	width: 32px;
	height: 32px;

	display: flex;

	align-items: center;
	justify-content: center;

	background: #FFD45A;

	color: #fff;

	border-radius: 50%;

	font-size: 18px;

	font-weight: 700;

	margin-top: 2px;
}


/* Text */

.kk-project-list p {
	margin: 0;

	color: #404854;

	font-size: 16px;

	line-height: 1.65;
}


/* ================================
 RESPONSIVE TABLET
================================ */

@media (max-width: 991px) {

	.kk-project-container {
			grid-template-columns: 1fr;

			gap: 50px;

			width: 90%;
	}

	.kk-project-image {
			max-width: 750px;

			width: 100%;

			margin: auto;
	}

	.kk-project-content {
			max-width: 750px;

			margin: auto;
	}

	.kk-project-content h2 {
			font-size: 42px;
	}

}


/* ================================
 MOBILE
================================ */

@media (max-width: 767px) {

	.kk-overseas-project {
			padding: 60px 0;
	}

	.kk-project-container {
			width: 92%;

			gap: 40px;
	}

	.kk-project-image {
			padding: 15px;
	}

	.kk-project-image img {
			height: 300px;

			border-radius: 15px;

			border-width: 5px;
	}

	.kk-orange-shape {
			width: 100px;
			height: 100px;

			border-radius: 15px;
	}

	.kk-small-heading {
			font-size: 13px;

			letter-spacing: 2px;

			gap: 12px;
	}

	.kk-small-heading span {
			width: 30px;
			height: 4px;
	}

	.kk-project-content h2 {
			font-size: 32px;

			line-height: 1.15;

			margin-bottom: 25px;
	}

	.kk-project-content h3 {
			font-size: 18px;
	}

	.kk-project-list li {
			gap: 12px;

			margin-bottom: 18px;
	}

	.kk-check {
			width: 27px;
			height: 27px;

			font-size: 15px;
	}

	.kk-project-list p {
			font-size: 14px;

			line-height: 1.6;
	}

}
/* ## */

/* project-sec */
/* ==========================================
   PROJECT SECTION
========================================== */

.kk-projects-section {
	padding: 100px 0;
	background: radial-gradient(circle at 10% 10%, 
	rgba(255,212,90,0.13), transparent 26%), 
	linear-gradient(180deg, #ffffff 0%, #f6f9fb 100%);
}

.kk-projects-container {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}


/* ==========================================
 HEADING
========================================== */

.kk-projects-heading {
	text-align: center;
	max-width: 800px;
	margin: 0 auto 55px;
}

.kk-project-label {
	display: inline-block;

	color: #064E3B;

	font-size: 14px;
	font-weight: 700;

	letter-spacing: 3px;

	margin-bottom: 12px;

	position: relative;
}

.kk-project-label::before,
.kk-project-label::after {
	content: "";

	display: inline-block;

	width: 35px;
	height: 3px;

	background: #FFD45A;

	vertical-align: middle;

	margin: 0 12px;
}


.kk-projects-heading h2 {
	font-size: 45px;

	line-height: 1.2;

	margin: 0 0 18px;

	color: #033D32;

	font-weight: 700;
}

.kk-projects-heading h2 strong {
	color: #FFD45A;
}


.kk-projects-heading p {
	font-size: 16px;

	line-height: 1.8;

	color: #666;

	margin: 0 auto;
}


/* ==========================================
 PROJECT ROW
========================================== */

.kk-project-row {
	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 25px;
}


/* ==========================================
 PROJECT CARD
========================================== */

.kk-project-card {
	position: relative;

	overflow: hidden;

	border-radius: 15px;

	background: #fff;

	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.10);
}


.kk-project-img {
	position: relative;

	width: 100%;

	height: 250px;

	overflow: hidden;
}


.kk-project-img img {
	width: 100%;
	height: 100%;

	object-fit: cover;

	display: block;

	transition: transform 0.6s ease;
}


/* ==========================================
 HOVER
========================================== */

.kk-project-overlay {
	position: absolute;

	left: 0;
	right: 0;
	bottom: 0;

	padding: 35px 25px 25px;

	color: #fff;

	background: linear-gradient(
			to top,
			rgba(0, 0, 0, 0.85),
			rgba(0, 0, 0, 0)
	);

	transform: translateY(15px);

	transition: all 0.4s ease;
}


.kk-project-overlay span {
	display: block;

	color: #FFD45A;

	font-size: 14px;

	font-weight: 700;

	margin-bottom: 6px;
}


.kk-project-overlay h3 {
	margin: 0;

	font-size: 23px;

	font-weight: 700;
}


.kk-project-overlay p {
	margin: 5px 0 0;

	font-size: 14px;

	color: #eee;
}


/* Image Zoom */

.kk-project-card:hover .kk-project-img img {
	transform: scale(1.08);
}


.kk-project-card:hover .kk-project-overlay {
	transform: translateY(0);
}


/* ==========================================
 TABLET
========================================== */

@media (max-width: 991px) {

	.kk-project-row {
			grid-template-columns: repeat(2, 1fr);
	}

	.kk-project-img {
			height: 350px;
	}

}


/* ==========================================
 MOBILE
========================================== */

@media (max-width: 767px) {

	.kk-projects-section {
			padding: 65px 0;
	}

	.kk-projects-container {
			width: 92%;
	}

	.kk-projects-heading {
			margin-bottom: 35px;
	}

	.kk-project-label::before,
	.kk-project-label::after {
			width: 20px;

			margin: 0 7px;
	}

	.kk-projects-heading h2 {
			font-size: 32px;
	}

	.kk-projects-heading p {
			font-size: 14px;
			line-height: 1.7;
	}

	.kk-project-row {
			grid-template-columns: 1fr;

			gap: 25px;
	}

	.kk-project-img {
			height: 350px;
	}

}
/* ## */

/* Construction Sub Dropdown */
/* =========================================
   NESTED CONSTRUCTION DROPDOWN
========================================= */

.dropdown-submenu {
	position: relative;
}

/* KK / KKC initially hidden */
.dropdown-submenu .construction-submenu {
	display: none !important;
	position: absolute;
	top: 0;
	left: 100%;
	margin-left: 80px;
	margin-top: 0;
	min-width: 280px;
	z-index: 9999;
}

/* ONLY when mouse is on Construction */
.dropdown-submenu:hover > .construction-submenu {
	display: block !important;
}

/* Arrow */
.dropdown-submenu > .dropdown-toggle::after {
	float: right;
	margin-top: 7px;
	transform: rotate(-90deg);
}

/* Keep submenu visible when moving mouse from Construction to KK/KKC */
.dropdown-submenu:hover > .construction-submenu {
	visibility: visible;
	opacity: 1;
}
/* Construction submenu */
.dropdown-submenu {
	position: relative;
}

.dropdown-submenu .construction-submenu {
	display: none !important;
	position: absolute;
	top: 100%;
	left: 0;
	margin-top: 0;
	min-width: 280px;
	z-index: 9999;
}

/* Construction par cursor karne par submenu open */
.dropdown-submenu:hover > .construction-submenu {
	display: block !important;
}

/* Arrow remove/normal */
.dropdown-submenu > .dropdown-toggle::after {
	display: none;
}

/* Shared mobile navigation drawer */
.mobile-nav-backdrop {
	position: fixed;
	inset: 0;
	z-index: 1049;
	border: 0;
	background: rgba(3, 24, 20, .62);
	opacity: 0;
	pointer-events: none;
	transition: opacity .28s ease, visibility .28s ease;
	visibility: hidden;
}

.mobile-nav-backdrop.is-visible {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

html.mobile-menu-open,
body.mobile-menu-open {
	overscroll-behavior: none;
}

@media (max-width: 991.98px) {
	.navbar.mobile-nav-open {
		z-index: 1051 !important;
	}

	.navbar-collapse.mobile-nav-drawer.mobile-nav-ready {
		position: fixed !important;
		inset: 0 0 0 auto;
		z-index: 1052;
		display: block !important;
		width: min(84vw, 380px);
		max-width: calc(100vw - 28px);
		height: 100vh;
		height: 100dvh;
		max-height: none !important;
		margin: 0;
		padding: 78px 22px 28px;
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		background: linear-gradient(165deg, #064e3b, #033d32);
		box-shadow: -18px 0 44px rgba(0, 0, 0, .25);
		transform: translateX(105%);
		transition: transform .32s cubic-bezier(.22, .75, .25, 1), visibility .32s ease;
		visibility: hidden;
		flex-basis: auto !important;
		align-items: stretch !important;
	}

	.navbar.mobile-nav-open .navbar-collapse.mobile-nav-drawer {
		transform: translateX(0);
		visibility: visible;
	}

	.navbar.mobile-nav-open .navbar-toggler {
		position: fixed;
		top: 14px;
		right: 16px;
		z-index: 1054;
		display: grid;
		width: 46px;
		height: 46px;
		place-items: center;
		padding: 0;
		border: 1px solid rgba(255, 212, 90, .45);
		border-radius: 10px;
		background: #064e3b;
		color: #fff;
		box-shadow: 0 4px 16px rgba(0, 0, 0, .22);
	}

	.navbar .navbar-toggler-icon {
		position: relative;
		display: block;
		width: 22px;
		height: 16px;
		border-top: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		background-image: none !important;
		transition: border-color .2s ease;
	}

	.navbar .navbar-toggler-icon::before {
		position: absolute;
		top: 5px;
		left: 0;
		width: 100%;
		height: 2px;
		background: currentColor;
		content: "";
		transition: transform .2s ease, top .2s ease;
	}

	.navbar.mobile-nav-open .navbar-toggler-icon {
		border-color: transparent;
	}

	.navbar.mobile-nav-open .navbar-toggler-icon::before {
		top: 5px;
		transform: rotate(45deg);
	}

	.navbar.mobile-nav-open .navbar-toggler-icon::after {
		position: absolute;
		top: 5px;
		left: 0;
		width: 100%;
		height: 2px;
		background: currentColor;
		content: "";
		transform: rotate(-45deg);
	}

	.navbar-collapse.mobile-nav-drawer .navbar-nav {
		width: 100%;
		align-items: stretch !important;
		gap: 0 !important;
	}

	.navbar-collapse.mobile-nav-drawer .nav-item {
		width: 100%;
	}

	.navbar-collapse.mobile-nav-drawer .nav-link,
	.navbar-collapse.mobile-nav-drawer .dropdown-item {
		display: flex;
		min-height: 48px;
		align-items: center;
		padding: .75rem .6rem !important;
		border-radius: 8px;
		color: #fff !important;
		font-size: .96rem;
		line-height: 1.4;
		white-space: normal;
	}

	.navbar-collapse.mobile-nav-drawer .dropdown-menu,
	.navbar-collapse.mobile-nav-drawer .dropdown-submenu .construction-submenu {
		position: static !important;
		width: 100%;
		min-width: 0;
		margin: 0;
		padding: .25rem 0 .45rem .75rem;
		border: 0;
		border-radius: 0;
		background: rgba(255, 255, 255, .06);
		box-shadow: none;
		transform: none !important;
	}

	.navbar-collapse.mobile-nav-drawer .dropdown-item:hover,
	.navbar-collapse.mobile-nav-drawer .dropdown-item:focus-visible {
		background: rgba(255, 255, 255, .1);
		color: #ffd45a !important;
	}

	.navbar-collapse.mobile-nav-drawer .dropdown-menu:not(.show) {
		display: none !important;
	}

	.navbar-collapse.mobile-nav-drawer .dropdown-submenu:hover > .construction-submenu {
		display: none !important;
	}

	.navbar-collapse.mobile-nav-drawer .dropdown-submenu.is-open > .construction-submenu {
		display: block !important;
	}

	.navbar-collapse.mobile-nav-drawer > .d-flex {
		width: 100%;
		margin: 1rem 0 0 !important;
	}

	.navbar-collapse.mobile-nav-drawer > .d-flex .btn {
		display: flex;
		width: 100%;
		min-height: 48px;
		align-items: center;
		justify-content: center;
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mobile-nav-backdrop,
	.navbar-collapse.mobile-nav-drawer,
	.navbar .navbar-toggler-icon,
	.navbar .navbar-toggler-icon::before,
	.navbar.mobile-nav-open .navbar-toggler-icon::after {
		transition-duration: .01ms !important;
	}
}

/* client */
/* =========================
   OUR CLIENTS SECTION
========================= */

.clients-section {
	padding: 80px 0;
	background: #ffffff;
}

.clients-section .container {
	width: 90%;
	max-width: 1200px;
	margin: auto;
}

/* Section Heading */

.section-title {
	text-align: center;
	margin-bottom: 55px;
}

.section-title h2 {
	margin: 0;
	font-size: 32px;
	font-weight: 700;
	color: #071a36;
}

/* Clients Grid */

.clients-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

/* Client Card */

.client-card {
	height: 140px;
	background: #ffffff;
	border-radius: 12px;

	display: flex;
	align-items: center;
	justify-content: center;

	padding: 25px;

	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);

	transition: all 0.3s ease;
}

.client-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.20);
}

.client-card img {
	max-width: 75%;
	max-height: 90px;
	width: auto;
	height: auto;
	object-fit: contain;
}

/* =========================
 TABLET
========================= */

@media (max-width: 991px) {

	.clients-grid {
			grid-template-columns: repeat(2, 1fr);
	}

	.clients-section {
			padding: 60px 0;
	}

}

/* =========================
 MOBILE
========================= */

@media (max-width: 575px) {

	.clients-grid {
			grid-template-columns: 1fr;
			gap: 18px;
	}

	.clients-section {
			padding: 50px 15px;
	}

	.section-title {
			margin-bottom: 35px;
	}

	.section-title h2 {
			font-size: 28px;
	}

	.client-card {
			height: 130px;
	}

	.client-card img {
			max-width: 70%;
			max-height: 80px;
	}
}

/* contact */
/* ==========================================
   CONTACT PAGE - LEFT CONTENT
========================================== */

.kk-contact-details {
	margin-top: 35px;

	display: grid;
	grid-template-columns: repeat(2, 1fr);

	gap: 18px;
}


/* Contact Card */

.kk-contact-card {
	padding: 22px;

	background: #ffffff;

	border: 1px solid #e8ece8;

	border-radius: 14px;

	display: flex;
	align-items: flex-start;

	gap: 16px;

	transition: all 0.3s ease;
}


.kk-contact-card:hover {
	transform: translateY(-4px);

	border-color: #064E3B;

	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.07);
}


/* Icon */

.kk-contact-icon {
	min-width: 46px;
	width: 46px;
	height: 46px;

	border-radius: 50%;

	background: rgba(85, 169, 70, 0.10);

	color: #064E3B;

	display: flex;
	align-items: center;
	justify-content: center;

	font-size: 18px;
}


/* Text */

.kk-contact-text span {
	display: block;

	font-size: 12px;
	font-weight: 600;

	text-transform: uppercase;

	letter-spacing: 0.8px;

	color: #8a928c;

	margin-bottom: 5px;
}


.kk-contact-text a,
.kk-contact-text strong {
	display: block;

	font-size: 15px;

	font-weight: 700;

	color: #17241d;

	text-decoration: none;

	line-height: 1.5;
}


.kk-contact-text a:hover {
	color: #064E3B;
}


.kk-contact-text p {
	margin: 6px 0 0;

	font-size: 12px;

	line-height: 1.5;

	color: #7b827e;
}


/* ==========================================
 CONTACT CTA
========================================== */

.kk-contact-cta {
	margin-top: 25px;

	padding: 20px 22px;

	background: #10231a;

	border-radius: 14px;

	display: flex;

	align-items: center;

	gap: 16px;
}


.kk-contact-cta-icon {
	min-width: 45px;
	width: 45px;
	height: 45px;

	border-radius: 50%;

	background: #064E3B;

	color: #ffffff;

	display: flex;

	align-items: center;

	justify-content: center;

	font-size: 18px;
}


.kk-contact-cta strong {
	display: block;

	color: #ffffff;

	font-size: 15px;

	margin-bottom: 4px;
}


.kk-contact-cta p {
	margin: 0;

	color: #aeb8b2;

	font-size: 12px;

	line-height: 1.5;
}


/* ==========================================
 TABLET
========================================== */

@media (max-width: 991px) {

	.kk-contact-details {
			grid-template-columns: repeat(2, 1fr);
	}

}


/* ==========================================
 MOBILE
========================================== */

@media (max-width: 575px) {

	.kk-contact-details {
			grid-template-columns: 1fr;

			gap: 14px;

			margin-top: 28px;
	}

	.kk-contact-card {
			padding: 18px;
	}

	.kk-contact-cta {
			padding: 18px;
	}

}

/* ---------- Shared inner pages and home highlight ---------- */
.home-why-section {
  padding: 86px 0 92px;
  background: #f7f8f4;
}
.home-why-heading,
.inner-section-heading {
  max-width: 720px;
  margin: 0 auto 38px;
  text-align: center;
}
.home-why-kicker,
.inner-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #064E3B;
  font: 700 .76rem/1.4 'Sora', sans-serif;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.home-why-kicker i {
  width: 24px;
  height: 1px;
  background: #c79e55;
}
.home-why-heading h2,
.inner-section-heading h2 {
  margin: 14px 0;
  color: #033D32;
  font: 700 clamp(2rem, 4vw, 3.1rem)/1.18 'Sora', sans-serif;
  letter-spacing: -.04em;
}
.home-why-heading h2 span { color: #FFD45A; }
.home-why-heading p,
.inner-section-heading p {
  max-width: 590px;
  margin: 0 auto;
  color: #697572;
  font-size: 1rem;
}
.home-why-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.home-why-card {
  padding: 30px 28px;
  border: 1px solid #e7e9e1;
  border-radius: 12px;
  background: #fff;
}
.home-why-card-featured {
  border-color: #033D32;
  background: #033D32;
}
.home-why-icon {
  display: grid;
  width: 48px;
  height: 48px;
  margin-bottom: 22px;
  place-items: center;
  border-radius: 50%;
  background: #f3ead7;
  color: #FFD45A;
  font-size: 1.3rem;
}
.home-why-card h3 {
  margin-bottom: 10px;
  color: #033D32;
  font: 700 1.08rem/1.4 'Sora', sans-serif;
}
.home-why-card p { margin: 0; color: #697572; font-size: .92rem; }
.home-why-card-featured h3 { color: #fff; }
.home-why-card-featured p { color: rgba(255,255,255,.78); }
.home-why-link,
.inner-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 28px;
  color: #033D32;
  font: 700 .9rem 'Sora', sans-serif;
}
.home-why-link:hover,
.inner-link:hover { color: #ad8137; }

.inner-hero {
  position: relative;
  display: flex;
  min-height: 420px;
  align-items: center;
  overflow: hidden;
  background: #033D32 center/cover no-repeat;
}
.inner-hero::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(24,52,49,.94) 0%, rgba(24,52,49,.78) 48%, rgba(24,52,49,.23) 100%);
  content: "";
}
.inner-hero-about { background-image: url("3D%20RENDERS/EXTERIOR/AMENITIES-05.jpg"); }
.inner-hero-contact { background-image: url("3D%20RENDERS/EXTERIOR/KK%20LAKESIDE_AERIAL%20VIEW_01.jpg"); }
.inner-hero-clients { background-image: url("3D%20RENDERS/EXTERIOR/AMENITIES-04.jpg"); }
.inner-hero-projects { background-image: url("3D%20RENDERS/EXTERIOR/RETAIL-02.jpg"); }
.inner-hero-content {
  position: relative;
  z-index: 1;
  padding-top: 54px;
  padding-bottom: 54px;
  color: #fff;
}
.inner-eyebrow {
  display: inline-block;
  margin-bottom: 14px;
  color: #FFD45A;
  font: 700 .77rem 'Sora', sans-serif;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.inner-hero h1 {
  margin: 0;
  color: #fff;
  font: 700 clamp(2.5rem, 5.4vw, 4.6rem)/1.12 'Sora', sans-serif;
  letter-spacing: -.045em;
}
.inner-hero h1 span { color: #FFD45A; }
.clients-bottom-cta .inner-kicker { color: #FFD45A; }
.inner-hero-content > p {
  max-width: 560px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.86);
  font-size: 1.04rem;
}
.inner-hero nav {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 28px;
  color: rgba(255,255,255,.75);
  font-size: .85rem;
}
.inner-hero nav a { color: #fff; }
.inner-hero nav i { color: #FFD45A; font-size: .7rem; }
.inner-section { padding: 78px 0; }
.inner-section-tint { background: #f7f8f4; }
.about-story-grid {
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  align-items: center;
  gap: clamp(32px, 6vw, 76px);
}
.about-story-image {
  min-height: 360px;
  overflow: hidden;
  border-radius: 14px;
  background: #e9ede7;
}
.about-story-image img { width: 100%; height: 100%; min-height: 360px; object-fit: cover; }
.about-story-copy h2 {
  margin: 14px 0 18px;
  color: #033D32;
  font: 700 clamp(1.8rem, 3.3vw, 2.65rem)/1.2 'Sora', sans-serif;
  letter-spacing: -.035em;
}
.about-story-copy p { color: #697572; font-size: .97rem; }
.inner-values-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.inner-value-card {
  padding: 30px;
  border: 1px solid #e7e9e1;
  border-radius: 12px;
  background: #fff;
}
.inner-value-card > i {
  display: inline-grid;
  width: 48px;
  height: 48px;
  margin-bottom: 18px;
  place-items: center;
  border-radius: 50%;
  background: #f3ead7;
  color: #FFD45A;
  font-size: 1.25rem;
}
.inner-value-card h3 { color: #033D32; font: 700 1.08rem 'Sora', sans-serif; }
.inner-value-card p { margin: 0; color: #697572; font-size: .93rem; }

.contact-layout {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 30px;
  align-items: start;
}
.contact-details { display: grid; gap: 14px; }
.contact-detail-card {
  display: flex;
  gap: 16px;
  padding: 21px;
  border: 1px solid #e7e9e1;
  border-radius: 10px;
  background: #fff;
  color: inherit;
}
.contact-detail-card > span {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  border-radius: 50%;
  background: #f3ead7;
  color: #FFD45A;
  font-size: 1.1rem;
}
.contact-detail-card small,
.contact-detail-card strong,
.contact-detail-card em { display: block; }
.contact-detail-card small { margin-bottom: 3px; color: #9b793d; font-size: .75rem; font-weight: 700; text-transform: uppercase; }
.contact-detail-card strong { color: #033D32; font: 700 .94rem 'Sora', sans-serif; }
.contact-detail-card em { margin-top: 5px; color: #697572; font-size: .84rem; font-style: normal; }
.contact-detail-card:hover strong { color: #FFD45A; }
.contact-hours {
  display: flex;
  gap: 14px;
  padding: 17px 20px;
  color: #697572;
  font-size: .87rem;
}
.contact-hours i { color: #FFD45A; font-size: 1.2rem; }
.contact-hours strong { color: #033D32; }
.contact-form {
  padding: clamp(24px, 4vw, 38px);
  border: 1px solid #e7e9e1;
  border-radius: 13px;
  background: #f7f8f4;
}
.contact-form h3 { margin-bottom: 6px; color: #033D32; font: 700 1.45rem 'Sora', sans-serif; }
.contact-form > p { margin-bottom: 22px; color: #697572; font-size: .9rem; }
.contact-form label { display: block; margin: 14px 0 6px; color: #334846; font-size: .84rem; font-weight: 700; }
.contact-form input,
.contact-form textarea {
  display: block;
  width: 100%;
  padding: 11px 12px;
  border: 1px solid #dce1d8;
  border-radius: 7px;
  background: #fff;
  color: #033D32;
  font: inherit;
}
.contact-form input:focus,
.contact-form textarea:focus { border-color: #FFD45A; outline: 2px solid rgba(184,139,60,.14); }
.inner-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  margin-top: 19px;
  padding: 0 21px;
  border: 0;
  border-radius: 7px;
  background: #033D32;
  color: #fff;
  font: 700 .86rem 'Sora', sans-serif;
}
.inner-submit:hover { background: #FFD45A; color: #fff; }

.client-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}
.clients-gallery-section { background: #f6f8f5; }
.clients-logo-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}
.clients-logo-card {
  display: grid;
  min-height: 160px;
  place-items: center;
  margin: 0;
  padding: 24px;
  border: 1px solid #e6ebe6;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(3, 61, 50, .045);
  transition: transform .25s ease, box-shadow .25s ease;
}
.clients-logo-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(3, 61, 50, .1);
}
.clients-logo-card img {
  display: block;
  width: 100%;
  height: 100px;
  object-fit: contain;
}
.client-review-card {
  position: relative;
  padding: 28px;
  border: 1px solid #e7e9e1;
  border-radius: 12px;
  background: #fff;
}
.client-quote-mark { position: absolute; top: 12px; right: 22px; color: rgb(255, 212, 90); font: 700 4rem/1 Georgia, serif; }
.client-review-stars { color: #FFD45A; font-size: .95rem; letter-spacing: .13em; }
.client-review-card > p { min-height: 92px; margin: 15px 0 20px; color: #56645f; font-size: .94rem; }
.client-review-person { display: flex; align-items: center; gap: 11px; color: #033D32; font: 700 .9rem 'Sora', sans-serif; }
.client-review-person span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: #033D32; color: #fff; }
.clients-bottom-cta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-top: 36px;
  padding: 28px 32px;
  border-radius: 12px;
  background: #033D32;
}
.clients-bottom-cta h2 { margin: 7px 0 0; color: #fff; font: 700 clamp(1.3rem, 2.5vw, 1.8rem) 'Sora', sans-serif; }
.clients-bottom-cta .inner-submit { flex: 0 0 auto; margin: 0; background: rgb(255, 212, 90); color: #033D32; }

.project-showcase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; }
.project-showcase-grid-featured { grid-template-columns: minmax(0, 1fr); }
.project-showcase-grid-featured .project-showcase-card { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.project-showcase-grid-featured .project-showcase-image { height: 100%; min-height: 320px; }
.project-showcase-grid-featured .project-showcase-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(26px, 4vw, 54px); }
.project-showcase-card { overflow: hidden; border: 1px solid #e7e9e1; border-radius: 13px; background: #fff; scroll-margin-top: 120px; }
.project-showcase-image { height: 280px; overflow: hidden; background: #e9ede7; }
.project-showcase-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.project-showcase-card:hover .project-showcase-image img { transform: scale(1.035); }
.project-showcase-copy { padding: 26px; }
.project-category { color: #FFD45A; font: 700 .72rem 'Sora', sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.project-showcase-copy h3 { margin: 9px 0 11px; color: #033D32; font: 700 1.45rem 'Sora', sans-serif; }
.project-showcase-copy p { min-height: 75px; color: #697572; font-size: .93rem; }
.project-showcase-links { display: flex; flex-wrap: wrap; gap: 12px 22px; }
.project-showcase-links a { color: #033D32; font-size: .84rem; font-weight: 700; }
.project-showcase-links a i { margin-left: 4px; color: #FFD45A; }
.lake-unit-gallery { padding: 78px 0; background: #f7f8f4; }
.lake-unit-gallery .inner-section-heading { margin-bottom: 34px; }
.lake-unit-gallery .inner-section-heading p { margin: 0 auto; color: #697572; }
.lake-unit-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.lake-unit-card { display: flex; min-width: 0; flex-direction: column; margin: 0; overflow: hidden; border: 1px solid rgba(255,212,90,.6); border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(3,61,50,.12); }
.lake-unit-image-trigger { display: block; width: 100%; padding: 0; overflow: hidden; border: 0; background: #fff; line-height: 0; cursor: zoom-in; }
.lake-unit-image-trigger:focus-visible { position: relative; z-index: 1; outline: 3px solid #FFD45A; outline-offset: -3px; }
.lake-unit-image-trigger img { display: block; width: 100%; height: auto; aspect-ratio: 8059 / 5661; object-fit: contain; background: #fff; }
.lake-unit-card figcaption { display: flex; min-height: 54px; flex-direction: column; justify-content: center; gap: 3px; padding: 8px 14px; background: #033D32; color: #fff; }
.lake-unit-card figcaption span { color: #FFD45A; font: 700 .68rem 'Sora',sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.lake-unit-card figcaption strong { font: 700 1.12rem 'Sora',sans-serif; }
.lake-unit-dialog { width: min(94vw,1100px); padding: 20px; overflow: visible; background: #071f1a; }
.lake-unit-dialog img { display: block; width: auto; max-width: 100%; max-height: 76vh; margin: 12px auto 0; object-fit: contain; }
.lake-unit-dialog .lake-dialog-close { z-index: 1; }
.lake-unit-dialog p { margin: 10px 42px 0 0; color: #fff; font-size: .83rem; }
.project-render-gallery { padding: 78px 0; background: #fff; }
.project-render-gallery-2d { background: #f7f8f4; }
.project-render-gallery .inner-section-heading { margin-bottom: 42px; }
.project-render-gallery .inner-section-heading p { margin: 0 auto; color: #697572; }
.project-render-category + .project-render-category { margin-top: 48px; }
.project-render-category > h3 { margin: 0 0 20px; padding-left: 15px; border-left: 4px solid #FFD45A; color: #033D32; font: 700 1.25rem 'Sora',sans-serif; }
.project-render-category-exterior { padding: clamp(18px, 3vw, 34px); border: 1px solid rgba(3,61,50,.12); border-radius: 16px; background: #f7f8f4; box-shadow: 0 12px 32px rgba(3,61,50,.08); }
.project-render-grid { display: grid; grid-template-columns: repeat(auto-fill,minmax(min(100%,240px),1fr)); gap: 18px; }
.project-render-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid rgba(3,61,50,.12); border-radius: 12px; background: #fff; box-shadow: 0 8px 24px rgba(3,61,50,.08); }
.project-render-card img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: contain; background: #fff; }
.project-render-card figcaption { min-height: 58px; padding: 13px 15px; border-top: 1px solid rgba(3,61,50,.08); }
.project-render-card h4 { margin: 0; color: #033D32; font: 600 .83rem/1.5 'Inter',sans-serif; overflow-wrap: anywhere; }
@media (min-width: 768px) and (max-width: 991px) {
  .lake-unit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
.projects-contact-strip { padding: 34px 0; background: #033D32; }
.projects-contact-strip .container-xl { display: flex; align-items: center; justify-content: space-between; gap: 22px; }
.projects-contact-strip span { color: #FFD45A; font: 700 .75rem 'Sora', sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.projects-contact-strip h2 { margin: 6px 0 0; color: #fff; font: 700 1.5rem 'Sora', sans-serif; }
.projects-contact-strip a { color: #fff; font: 700 .9rem 'Sora', sans-serif; }
.projects-contact-strip a i { margin-left: 7px; color: #FFD45A; }

.site-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 58px clamp(20px, 2.1vw, 44px) 0;
  background:
    radial-gradient(ellipse at 94% 27%, rgba(6, 78, 59, .35), transparent 24rem),
    linear-gradient(115deg, #033D32 0%, #064E3B 56%, #033D32 100%);
  color: #fff;
}
.site-footer::before {
  position: absolute;
  z-index: -1;
  top: -115px;
  right: 1%;
  width: 420px;
  height: 420px;
  border: 1px solid rgba(255, 212, 90, .045);
  border-radius: 50%;
  box-shadow: 0 0 0 34px rgba(255, 212, 90, .025), 0 0 0 72px rgba(255, 212, 90, .018);
  content: "";
}
.site-footer-main {
  display: grid;
  grid-template-columns: 1.25fr 1.28fr .7fr 1.12fr 1.28fr;
  gap: clamp(24px, 3vw, 64px);
  max-width: 1920px;
  margin: 0 auto;
  padding: 12px 0 46px;
}
.site-footer-main h2 {
  position: relative;
  margin: 0 0 28px;
  padding-bottom: 15px;
  color: #ffd45a;
  font: 700 1rem 'Sora', sans-serif;
  letter-spacing: .035em;
  text-transform: uppercase;
}
.site-footer-main h2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 46px;
  height: 3px;
  background: #ffd45a;
  content: "";
}
.site-footer-brand { min-width: 0; }
.site-footer-logo {
  display: flex;
  width: min(100%, 300px);
  height: 190px;
  align-items: center;
  justify-content: flex-start;
  margin: 0 0 16px;
}
.site-footer-logo img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; object-position: left center; }
.site-footer-brand p,
.site-footer-action p {
  margin: 0;
  color: rgba(255,255,255,.88);
  font-size: .95rem;
  line-height: 1.65;
}
.site-footer-socials { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.site-footer-socials span {
  display: inline-flex;
  width: 48px;
  height: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid #ffd45a;
  border-radius: 50%;
  color: #fff;
  font-size: 1.15rem;
}
.site-footer-contact,
.site-footer-links,
.site-footer-action { min-width: 0; padding-top: 18px; }
.site-footer-contact { display: flex; flex-direction: column; gap: 17px; }
.site-footer-contact h2,
.site-footer-links h2,
.site-footer-action h2 { flex: 0 0 auto; }
.site-footer-contact-item {
  display: flex;
  align-items: center;
  gap: 16px;
  color: rgba(255,255,255,.92);
  font-size: .9rem;
  line-height: 1.55;
  text-decoration: none;
}
.site-footer-contact-item > i {
  display: inline-flex;
  width: 54px;
  height: 54px;
  flex: 0 0 54px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255,255,255,.1);
  color: #ffd45a;
  font-size: 1.25rem;
}
.site-footer-contact a:hover { color: #ffd45a; }
.site-footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 15px; }
.site-footer-links h2 { margin-bottom: 8px; }
.site-footer-links a {
  position: relative;
  padding-left: 20px;
  color: rgba(255,255,255,.92);
  font-size: .9rem;
  line-height: 1.5;
  text-decoration: none;
  transition: color .2s ease, transform .2s ease;
}
.site-footer-links a::before {
  position: absolute;
  left: 0;
  color: #ffd45a;
  content: "\F285";
  font-family: "bootstrap-icons";
  font-size: .72rem;
  font-weight: 700;
}
.site-footer-links a:hover { transform: translateX(3px); color: #ffd45a; }
.site-footer-action p { margin-bottom: 20px; }
.site-footer-button {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  gap: 11px;
  padding: 0 28px;
  border-radius: 12px;
  background: #ffd45a;
  color: #033D32;
  font: 700 .95rem 'Sora', sans-serif;
  text-decoration: none;
  transition: background .2s ease, transform .2s ease;
}
.site-footer-button:hover { transform: translateY(-2px); background: #ffe08a; color: #033D32; }
.site-footer-bottom {
  display: flex;
  max-width: 2008px;
  min-height: 90px;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 auto;
  padding: 20px 22px;
  border-top: 2px solid #ffd45a;
  color: rgba(255,255,255,.88);
  font-size: .88rem;
}
.site-footer-bottom nav { display: flex; align-items: center; gap: 20px; }
.site-footer-bottom a { color: inherit; text-decoration: none; }
.site-footer-bottom a:hover { color: #ffd45a; }
.site-footer-bottom nav span { width: 1px; height: 18px; background: #ffd45a; }

@media (max-width: 767px) {
  .ronak-fm-eyebrow { font-size: .58rem; }
  .ronak-fm-content p { font-size: .82rem; }
  .home-why-section { padding: 58px 0 62px; }
  .home-why-grid,
  .inner-values-grid,
  .project-showcase-grid { grid-template-columns: 1fr; }
  .project-showcase-grid-featured .project-showcase-card { grid-template-columns: 1fr; }
  .project-showcase-grid-featured .project-showcase-image { height: 230px; min-height: 0; }
  .home-why-grid { gap: 13px; }
  .home-why-card { padding: 24px; }
  .home-why-icon { margin-bottom: 14px; }
  .inner-hero { min-height: 360px; }
  .inner-hero::before { background: linear-gradient(90deg, rgba(24,52,49,.92), rgba(24,52,49,.58)); }
  .inner-section { padding: 56px 0; }
  .about-story-grid,
  .contact-layout { grid-template-columns: 1fr; }
  .about-story-image,
  .about-story-image img { min-height: 250px; }
  .inner-values-grid { gap: 13px; }
  .client-review-grid { grid-template-columns: 1fr; }
  .clients-logo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
  .clients-logo-card { min-height: 120px; padding: 15px; }
  .clients-logo-card img { height: 82px; }
  .client-review-card > p { min-height: 0; }
  .clients-bottom-cta,
  .projects-contact-strip .container-xl { align-items: flex-start; flex-direction: column; }
  .lake-unit-gallery { padding: 56px 0; }
  .project-render-gallery { padding: 56px 0; }
  .project-render-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .project-render-category + .project-render-category { margin-top: 36px; }
  .project-render-card figcaption { min-height: 52px; padding: 10px; }
  .project-render-card h4 { font-size: .75rem; }
  .lake-unit-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
  .lake-unit-card figcaption { min-height: 50px; padding: 7px 10px; }
  .lake-unit-card figcaption strong { font-size: .95rem; }
  .project-showcase-image { height: 230px; }
  .project-showcase-copy p { min-height: 0; }
  .site-footer { padding: 38px 20px 0; }
  .site-footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 22px; padding-bottom: 32px; }
  .site-footer-brand,
  .site-footer-action { grid-column: 1 / -1; }
  .site-footer-logo { width: 230px; height: 145px; margin-bottom: 12px; }
  .site-footer-socials { gap: 9px; margin-top: 16px; }
  .site-footer-socials span { width: 42px; height: 42px; font-size: 1rem; }
  .site-footer-main h2 { margin-bottom: 20px; font-size: .9rem; }
  .site-footer-contact { gap: 13px; }
  .site-footer-contact-item { align-items: flex-start; gap: 10px; font-size: .8rem; overflow-wrap: anywhere; }
  .site-footer-contact-item > i { width: 40px; height: 40px; flex-basis: 40px; font-size: 1rem; }
  .site-footer-links { gap: 12px; }
  .site-footer-links a { padding-left: 16px; font-size: .82rem; }
  .site-footer-bottom { min-height: 0; flex-direction: column; align-items: flex-start; padding: 18px 0; font-size: .78rem; }
  .site-footer-bottom nav { flex-wrap: wrap; gap: 12px; }
}

@media (max-width: 380px) {
  .lake-unit-grid { grid-template-columns: 1fr; }
}

@media (min-width: 768px) and (max-width: 1100px) {
  .site-footer-main { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
  .site-footer-brand { grid-column: 1 / 2; }
  .site-footer-action { grid-column: 3 / 4; }
  .site-footer-logo { height: 160px; }
}

.home-homes-section { padding: 82px 0 76px; background: #fff; }
.home-homes-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 36px;
  margin-bottom: 32px;
}
.home-homes-heading h2 {
  margin: 13px 0 0;
  color: #033D32;
  font: 700 clamp(2rem, 4vw, 3rem)/1.15 'Sora', sans-serif;
  letter-spacing: -.04em;
}
.home-homes-heading h2 span { color: #FFD45A; }
.home-homes-heading > p {
  max-width: 475px;
  margin: 0 0 4px;
  color: #697572;
  font-size: .94rem;
}
.home-homes-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.home-home-card {
  padding: 25px 25px 21px;
  border: 1px solid #e8e9e2;
  border-radius: 12px;
  background: #fbfcfa;
}
.home-home-card-featured {
  border-color: #033D32;
  background: #033D32;
  box-shadow: 0 14px 30px rgba(35,64,65,.14);
}
.home-home-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 17px;
  border-bottom: 1px solid #e8e9e2;
  color: #FFD45A;
  font: 700 .78rem 'Sora', sans-serif;
}
.home-home-card-top i { font-size: 1.25rem; }
.home-home-card-featured .home-home-card-top { border-color: rgba(255,255,255,.18); }
.home-home-view {
  display: inline-block;
  margin-top: 19px;
  color: #9c7736;
  font: 700 .7rem 'Sora', sans-serif;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.home-home-card h3 {
  min-height: 52px;
  margin: 7px 0 15px;
  color: #033D32;
  font: 700 1.05rem/1.4 'Sora', sans-serif;
}
.home-home-card-featured h3 { color: #fff; }
.home-home-size {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-height: 47px;
  color: #033D32;
}
.home-home-size strong { font: 700 1.7rem/1 'Sora', sans-serif; letter-spacing: -.04em; }
.home-home-size span { color: #697572; font-size: .82rem; }
.home-home-card-featured .home-home-size strong { color: #fff; }
.home-home-card-featured .home-home-size span { color: rgba(255,255,255,.72); }
.home-home-rate {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  margin-top: 13px;
  padding-top: 13px;
  border-top: 1px solid #e8e9e2;
}
.home-home-rate > span { color: #697572; font-size: .77rem; }
.home-home-rate > strong { color: #033D32; font: 700 .9rem 'Sora', sans-serif; white-space: nowrap; }
.home-home-rate small { font-size: .68rem; font-weight: 500; }
.home-home-card-featured .home-home-rate { border-color: rgba(255,255,255,.18); }
.home-home-card-featured .home-home-rate > span { color: rgba(255,255,255,.72); }
.home-home-card-featured .home-home-rate > strong { color: #FFD45A; }
.home-home-card > a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
  color: #033D32;
  font: 700 .8rem 'Sora', sans-serif;
}
.home-home-card > a i { color: #FFD45A; }
.home-home-card-featured > a { color: #fff; }
.home-homes-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin-top: 22px;
  color: #697572;
  font-size: .79rem;
}
.home-homes-bottom > span { display: flex; align-items: center; gap: 8px; }
.home-homes-bottom > span i { color: #FFD45A; }
.home-homes-bottom > a {
  flex: 0 0 auto;
  color: #033D32;
  font: 700 .8rem 'Sora', sans-serif;
}
.home-homes-bottom > a i { margin-left: 5px; color: #FFD45A; }
@media (max-width: 767px) {
  .home-homes-section { padding: 58px 0; }
  .home-homes-heading { align-items: flex-start; flex-direction: column; gap: 14px; margin-bottom: 24px; }
  .home-homes-grid { grid-template-columns: 1fr; gap: 12px; }
  .home-home-card { padding: 21px; }
  .home-home-card h3 { min-height: 0; }
  .home-homes-bottom { align-items: flex-start; flex-direction: column; }
}

/* ---------- KK Lake City homepage sections ---------- */
:root {
  --lake-green: #064e3b;
  --lake-dark: #033d32;
  --lake-gold: #ffd45a;
  --lake-ink: #033D32;
  --lake-muted: #66756f;
  --lake-line: #e4eae5;
  --lake-soft: #f5f8f5;
}
.lake-section { padding: 82px 0; }
.lake-section-heading { max-width: 700px; margin: 0 auto 38px; text-align: center; }
.lake-eyebrow {
  display: inline-block;
  color: #064E3B;
  font: 700 .72rem/1.5 'Sora', sans-serif;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.lake-section-heading h2,
.lake-about-copy h2,
.lake-overview-intro h2,
.lake-faq-intro h2,
.lake-enquiry-copy h2 {
  margin: 10px 0 12px;
  color: var(--lake-dark);
  font: 700 clamp(1.95rem, 3.6vw, 3rem)/1.17 'Sora', sans-serif;
  letter-spacing: -.04em;
}
.lake-section-heading h2 span,
.lake-about-copy h2 span,
.lake-overview-intro h2 span,
.lake-faq-intro h2 span { color: var(--lake-gold); text-shadow: 0 1px 1px rgba(3,61,50,.72); }
.lake-section-heading > p,
.lake-overview-intro > p,
.lake-about-copy > p,
.lake-faq-intro > p { color: var(--lake-muted); font-size: .96rem; line-height: 1.75; }
.lake-highlights { background: var(--lake-soft); }
.lake-highlights-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; }
.lake-highlight-card {
  min-height: 218px;
  padding: 24px;
  border: 1px solid var(--lake-line);
  border-radius: 13px;
  background: #fff;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.lake-highlight-card:hover,
.lake-amenity-card:hover,
.lake-floor-card:hover { transform: translateY(-4px); border-color: rgba(6,78,59,.35); box-shadow: 0 16px 36px rgba(3,61,50,.09); }
.lake-highlight-icon {
  display: grid;
  width: 46px;
  height: 46px;
  margin-bottom: 19px;
  place-items: center;
  border-radius: 12px;
  background: #eff5ee;
  color: var(--lake-green);
  font-size: 1.25rem;
}
.lake-card-index { display: block; color: #FFD45A; font: 700 .65rem 'Sora',sans-serif; letter-spacing: .1em; }
.lake-highlight-card h3,
.lake-amenity-card h3,
.lake-floor-info h3 { margin: 8px 0 6px; color: var(--lake-dark); font: 700 1.04rem/1.4 'Sora',sans-serif; }
.lake-highlight-card p,
.lake-amenity-card p { margin: 0; color: var(--lake-muted); font-size: .86rem; line-height: 1.65; }
.lake-about { background: #fff; }
.lake-about-grid { display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: clamp(34px,6vw,78px); }
.lake-about-photo { position: relative; min-height: 370px; overflow: hidden; border-radius: 15px; background: #e8eee9; }
.lake-about-photo img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.lake-about-photo > span { position: absolute; bottom: 16px; left: 16px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.4); border-radius: 4px; background: rgba(3,61,50,.82); color: #fff; font: 600 .65rem 'Sora',sans-serif; letter-spacing: .1em; }
.lake-about-copy h2 { margin-top: 9px; }
.lake-about-copy > p { margin-bottom: 12px; }
.lake-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 19px;
  border: 1px solid transparent;
  border-radius: 7px;
  font: 700 .82rem 'Sora',sans-serif;
  text-decoration: none;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}
.lake-button:hover { transform: translateY(-2px); }
.lake-button-dark { background: var(--lake-green); color: #fff; }
.lake-button-dark:hover { background: var(--lake-dark); color: #fff; }
.lake-button-gold { background: var(--lake-gold); color: var(--lake-dark); }
.lake-button-gold:hover { background: rgb(255, 212, 90); color: var(--lake-dark); }
.lake-button-outline { border-color: rgba(255,255,255,.65); background: transparent; color: #fff; }
.lake-button-outline:hover { background: #fff; color: var(--lake-dark); }
.lake-overview { background: var(--lake-dark); color: #fff; }
.lake-overview-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(35px,7vw,90px); align-items: center; }
.lake-overview .lake-eyebrow { color: var(--lake-gold); }
.lake-overview-intro h2 { color: #fff; }
.lake-overview-intro h2 span { color: var(--lake-gold); }
.lake-overview-intro > p { color: rgba(255,255,255,.72); }
.lake-text-link { display: inline-flex; align-items: center; gap: 8px; padding: 0; border: 0; background: none; color: var(--lake-green); font: 700 .82rem 'Sora',sans-serif; text-decoration: none; cursor: pointer; }
.lake-text-link:hover { color: #FFD45A; }
.lake-overview .lake-text-link { margin-top: 10px; color: var(--lake-gold); }
.lake-overview-facts { border-top: 1px solid rgba(255,255,255,.2); }
.lake-overview-facts > div { display: flex; justify-content: space-between; gap: 20px; padding: 17px 0; border-bottom: 1px solid rgba(255,255,255,.17); }
.lake-overview-facts > div > span { color: rgba(255,255,255,.65); font-size: .83rem; }
.lake-overview-facts > div > strong { color: #fff; font: 600 .84rem 'Sora',sans-serif; text-align: right; }
.lake-overview-facts > a { display: inline-flex; gap: 8px; margin-top: 17px; color: var(--lake-gold); font-size: .82rem; }
.lake-amenities { background: #fff; }
.lake-amenity-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; max-width: 850px; margin: 0 auto; }
.lake-amenity-card { padding: 28px; border: 1px solid var(--lake-line); border-radius: 12px; background: var(--lake-soft); transition: transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.lake-amenity-card > i { display: inline-grid; width: 50px; height: 50px; place-items: center; border-radius: 50%; background: #fff2c4; color: var(--lake-green); font-size: 1.3rem; }
.lake-amenity-card h3 { margin-top: 17px; }
.lake-amenity-note { margin: 22px 0 0; color: var(--lake-muted); font-size: .8rem; text-align: center; }
.lake-floorplans { background: var(--lake-soft); }
.lake-floorplans .lake-eyebrow { color: var(--lake-dark); }
.lake-floorplans .lake-section-heading h2 { color: var(--lake-dark); }
.lake-floorplans .lake-section-heading h2 span {
  display: inline;
  padding: 0;
  border-radius: 0;
  background: none;
  color: rgb(255, 212, 90);
  text-shadow: 0 1px 1px rgba(3,61,50,.72);
}
.lake-floorplans .lake-section-heading > p { color: #43554e; }
.lake-floor-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; }
.lake-floor-card { overflow: hidden; border: 1px solid var(--lake-line); border-radius: 11px; background: #fff; transition: transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.lake-floor-preview {
  position: relative;
  display: flex;
  min-height: 190px;
  align-items: flex-start;
  justify-content: space-between;
  flex-direction: column;
  padding: 15px;
  overflow: hidden;
  background: var(--lake-dark);
  color: #fff;
}
.lake-floor-preview::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(3,61,50,.43), transparent 42%, rgba(3,61,50,.68));
  content: "";
  pointer-events: none;
}
.lake-floor-preview > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.lake-floor-card:hover .lake-floor-preview > img { transform: scale(1.045); }
.lake-floor-unit-badge,
.lake-floor-preview > small { position: relative; z-index: 1; }
.lake-floor-unit-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 7px;
  background: rgba(3,61,50,.86);
  color: #FFD45A;
  font: 700 .68rem 'Sora',sans-serif;
  letter-spacing: .1em;
}
.lake-floor-unit-badge i { font-size: 1rem; }
.lake-floor-preview > small {
  padding: 5px 8px;
  border-radius: 4px;
  background: rgba(3,61,50,.82);
  color: #fff;
  font: 600 .58rem 'Sora',sans-serif;
  letter-spacing: .12em;
}
.lake-floor-info { padding: 19px; }
.lake-floor-info > span { color: var(--lake-green); font: 700 .64rem 'Sora',sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.lake-floor-info h3 { min-height: 45px; margin-top: 7px; font-size: .91rem; }
.lake-floor-info > p { margin: 0 0 14px; color: var(--lake-muted); font-size: .8rem; }
.lake-dialog,
.lake-gallery-dialog { position: fixed; width: min(92vw,520px); max-width: none; max-height: 88vh; padding: 34px; overflow: auto; border: 1px solid var(--lake-line); border-radius: 14px; background: #fff; color: var(--lake-ink); box-shadow: 0 24px 80px rgba(0,0,0,.24); }
.lake-dialog::backdrop,
.lake-gallery-dialog::backdrop { background: rgba(2,28,23,.76); backdrop-filter: blur(3px); }
.lake-dialog-close { position: absolute; top: 12px; right: 12px; display: grid; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 50%; background: #eef3ef; color: var(--lake-dark); cursor: pointer; }
.lake-dialog h2 { margin: 12px 0; color: var(--lake-dark); font: 700 1.55rem 'Sora',sans-serif; }
.lake-dialog h2 span { color: var(--lake-green); }
.lake-dialog > p { color: var(--lake-muted); font-size: .92rem; line-height: 1.7; }
.lake-price-banner { position: relative; display: flex; min-height: 370px; align-items: center; overflow: hidden; background: var(--lake-dark); color: #fff; }
.lake-price-banner-image { position: absolute; inset: 0 0 0 42%; background: linear-gradient(90deg,var(--lake-dark) 0%,rgba(3,61,50,.55) 42%,rgba(3,61,50,.12) 100%),url("3D%20RENDERS/EXTERIOR/KK%20LAKESIDE_AERIAL%20VIEW_01.jpg") center/cover no-repeat; }
.lake-price-banner-content { position: relative; padding-top: 56px; padding-bottom: 56px; }
.lake-price-banner .lake-eyebrow { color: var(--lake-gold); }
.lake-price-banner h2 { margin: 10px 0 12px; color: #fff; font: 700 clamp(2rem,4.4vw,3.4rem)/1.12 'Sora',sans-serif; letter-spacing: -.04em; }
.lake-price-banner h2 span { color: var(--lake-gold); }
.lake-price-banner p { max-width: 560px; margin: 0 0 23px; color: rgba(255,255,255,.82); font-size: .94rem; line-height: 1.7; }
.lake-gallery { background: #fff; }
.lake-gallery-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 14px; }
.lake-gallery-item { position: relative; min-width: 0; height: 245px; padding: 0; overflow: hidden; border: 0; border-radius: 10px; background: #e6ece7; cursor: zoom-in; }
.lake-gallery-large { height: 330px; grid-row: span 2; }
.lake-gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.lake-gallery-item:hover img { transform: scale(1.04); }
.lake-gallery-item > span { position: absolute; right: 11px; bottom: 11px; display: flex; align-items: center; gap: 8px; padding: 8px 11px; border-radius: 5px; background: rgba(3,61,50,.88); color: #fff; font: 600 .7rem 'Sora',sans-serif; }
.lake-gallery-dialog { width: min(94vw,1100px); padding: 20px; overflow: visible; background: #071f1a; }
.lake-gallery-dialog img { display: block; max-width: 100%; max-height: 76vh; margin: 12px auto 0; object-fit: contain; }
.lake-gallery-dialog p { margin: 10px 42px 0 0; color: #fff; font-size: .83rem; }
.lake-gallery-dialog .lake-dialog-close { z-index: 1; }
.lake-location { background: var(--lake-soft); }
.lake-location-grid { display: grid; grid-template-columns: 1.2fr .8fr; min-height: 350px; overflow: hidden; border: 1px solid var(--lake-line); border-radius: 13px; background: #fff; }
.lake-map-wrap { min-height: 350px; background: #e6ece7; }
.lake-map-wrap iframe { display: block; width: 100%; height: 100%; min-height: 350px; border: 0; }
.lake-location-card { display: flex; align-items: flex-start; flex-direction: column; justify-content: center; padding: clamp(24px,4vw,42px); }
.lake-location-icon { display: grid; width: 46px; height: 46px; margin-bottom: 18px; place-items: center; border-radius: 50%; background: #eff5ee; color: var(--lake-green); font-size: 1.2rem; }
.lake-location-card h3 { margin: 8px 0; color: var(--lake-dark); font: 700 1.3rem 'Sora',sans-serif; }
.lake-location-card > p { color: var(--lake-muted); font-size: .88rem; line-height: 1.7; }
.lake-location-card > small { margin-top: 16px; color: #77817c; font-size: .72rem; line-height: 1.6; }
.lake-partners { background: #fff; }
.lake-logo-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 12px; }
.lake-logo-grid > div { display: grid; min-height: 105px; padding: 15px; place-items: center; border: 1px solid var(--lake-line); border-radius: 8px; background: #fff; }
.lake-logo-grid img { display: block; width: 100%; max-width: 145px; max-height: 60px; object-fit: contain; }
.lake-partners-link { display: flex; width: fit-content; margin: 24px auto 0; }
.lake-faq { background: var(--lake-soft); }
.lake-faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(34px,7vw,86px); align-items: start; }
.lake-faq-intro > .lake-text-link { margin-top: 8px; }
.lake-faq-list { border-top: 1px solid #dce5de; }
.lake-faq-list details { border-bottom: 1px solid #dce5de; }
.lake-faq-list summary { position: relative; padding: 18px 34px 18px 0; color: var(--lake-dark); font: 600 .92rem/1.5 'Sora',sans-serif; list-style: none; cursor: pointer; }
.lake-faq-list summary::-webkit-details-marker { display: none; }
.lake-faq-list summary::after { position: absolute; top: 16px; right: 2px; color: #FFD45A; content: "+"; font: 400 1.4rem 'Inter',sans-serif; }
.lake-faq-list details[open] summary::after { content: "−"; }
.lake-faq-list details > p { max-width: 720px; margin: -3px 32px 18px 0; color: var(--lake-muted); font-size: .86rem; line-height: 1.7; }
.lake-enquiry { background: #fff; }
.lake-enquiry-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(34px,7vw,84px); align-items: start; }
.lake-enquiry-copy h2 { margin-bottom: 15px; }
.lake-enquiry-copy > p { margin-bottom: 20px; color: var(--lake-muted); font-size: .93rem; line-height: 1.75; }
.lake-enquiry-copy > a { display: flex; width: fit-content; align-items: center; gap: 10px; margin: 12px 0; color: var(--lake-green); font-size: .88rem; font-weight: 600; }
.lake-enquiry-copy > a i { color: #FFD45A; }
.lake-enquiry-form { padding: clamp(22px,4vw,36px); border: 1px solid var(--lake-line); border-radius: 12px; background: var(--lake-soft); }
.lake-form-heading { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; margin-bottom: 12px; }
.lake-form-heading > span { color: var(--lake-green); font: 700 .73rem 'Sora',sans-serif; letter-spacing: .12em; }
.lake-form-heading > p { margin: 0; color: var(--lake-muted); font-size: .72rem; }
.lake-enquiry-form label { display: block; margin: 12px 0 5px; color: var(--lake-ink); font: 600 .78rem 'Sora',sans-serif; }
.lake-enquiry-form input,
.lake-enquiry-form select { display: block; width: 100%; min-height: 43px; padding: 9px 11px; border: 1px solid #d7e1d9; border-radius: 6px; background: #fff; color: var(--lake-ink); font: 400 .87rem 'Inter',sans-serif; }
.lake-enquiry-form input:focus,
.lake-enquiry-form select:focus { border-color: var(--lake-green); outline: 3px solid rgba(6,78,59,.12); }
.lake-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.lake-form-feedback { min-height: 1.2em; margin: 10px 0 0; color: var(--lake-green); font-size: .78rem; }
.lake-form-feedback.is-error { color: #a12c22; }
.lake-final-cta { padding: 68px 0; background: var(--lake-dark); color: #fff; text-align: center; }
.lake-final-cta .lake-eyebrow { color: var(--lake-gold); }
.lake-final-cta h2 { margin: 12px 0; color: #fff; font: 700 clamp(2.4rem,5vw,4.2rem)/1.08 'Sora',sans-serif; letter-spacing: -.045em; }
.lake-final-cta h2 span { color: var(--lake-gold); }
.lake-final-cta p { margin: 0 0 23px; color: rgba(255,255,255,.77); }
.lake-final-cta-inner > div { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.lake-reveal { opacity: 1; transform: none; }
.lake-motion-ready .lake-reveal { opacity: 0; transform: translateY(18px); transition: opacity .55s ease,transform .55s ease; }
.lake-motion-ready .lake-reveal.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  .lake-motion-ready .lake-reveal,
  .lake-highlight-card,
  .lake-amenity-card,
  .lake-floor-card,
  .lake-gallery-item img,
  .lake-button { transition: none !important; }
  .lake-motion-ready .lake-reveal { opacity: 1; transform: none; }
  html { scroll-behavior: auto; }
}
@media (max-width: 991px) {
  .lake-highlights-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lake-floor-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .lake-logo-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 767px) {
  .lake-section { padding: 58px 0; }
  .lake-section-heading { margin-bottom: 27px; }
  .lake-highlights-grid { gap: 11px; }
  .lake-highlight-card { min-height: 0; padding: 19px; }
  .lake-highlight-icon { width: 40px; height: 40px; margin-bottom: 14px; }
  .lake-highlight-card h3 { font-size: .92rem; }
  .lake-highlight-card p { font-size: .79rem; }
  .lake-about-grid,
  .lake-overview-grid,
  .lake-faq-layout,
  .lake-enquiry-grid { grid-template-columns: 1fr; gap: 26px; }
  .lake-about-photo { min-height: 250px; }
  .lake-overview-facts > div { align-items: flex-start; flex-direction: column; gap: 5px; }
  .lake-overview-facts > div > strong { text-align: left; }
  .lake-amenity-grid { gap: 12px; }
  .lake-amenity-card { padding: 21px; }
  .lake-floor-grid { gap: 11px; }
  .lake-floor-preview { min-height: 115px; }
  .lake-floor-info { padding: 14px; }
  .lake-floor-info h3 { min-height: 0; font-size: .82rem; }
  .lake-floor-info .lake-text-link { font-size: .73rem; }
  .lake-price-banner { min-height: 350px; }
  .lake-price-banner-image { inset: 0; opacity: .4; background-image: linear-gradient(90deg,rgba(3,61,50,.96),rgba(3,61,50,.66)),url("3D%20RENDERS/EXTERIOR/KK%20LAKESIDE_AERIAL%20VIEW_01.jpg"); }
  .lake-price-banner-content { padding-top: 48px; padding-bottom: 48px; }
  .lake-gallery-grid { grid-template-columns: 1fr 1fr; gap: 9px; }
  .lake-gallery-large { height: 220px; grid-column: 1 / -1; grid-row: auto; }
  .lake-gallery-item { height: 160px; }
  .lake-gallery-large img { object-position: center; }
  .lake-location-grid { grid-template-columns: 1fr; }
  .lake-map-wrap,
  .lake-map-wrap iframe { min-height: 260px; }
  .lake-logo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .lake-logo-grid > div { min-height: 82px; padding: 11px; }
  .lake-form-row { grid-template-columns: 1fr; gap: 0; }
  .lake-final-cta { padding: 56px 0; }
}

main h1,
main h2,
main h3 { color: #033D32; }
main h1 span,
main h1 strong,
main h2 span,
main h2 strong,
main h2 b,
main h3 span,
main h3 strong {
  color: rgb(255, 212, 90);
  background: none;
  box-shadow: none;
  text-shadow: 0 1px 1px rgba(3,61,50,.72);
}

.site-footer {
  padding: 44px clamp(20px, 2vw, 40px) 0;
  background:
    radial-gradient(ellipse at 96% 24%, rgba(6,78,59,.45), transparent 25rem),
    linear-gradient(112deg,#033D32 0%,#064E3B 54%,#033D32 100%);
}
.site-footer-main {
  position: relative;
  grid-template-columns: minmax(260px,1.25fr) minmax(145px,.7fr) minmax(180px,1fr) minmax(210px,.92fr);
  gap: clamp(24px,3vw,58px);
  padding: 0 190px 36px 0;
}
.site-footer-brand { max-width: 440px; }
.site-footer-logo {
  width: min(100%,390px);
  height: 176px;
  margin-bottom: 12px;
}
.site-footer-brand p { max-width: 420px; }
.site-footer-socials { gap: 16px; margin-top: 18px; }
.site-footer-socials span {
  width: 50px;
  height: 50px;
  border-width: 2px;
  color: #fff;
}
.site-footer-main h2 {
  margin-bottom: 26px;
  padding-bottom: 12px;
  font-size: 1rem;
}
.site-footer-links { gap: 11px; }
.site-footer-links h2 { margin-bottom: 12px; }
.site-footer-brand p,
.site-footer-action p,
.site-footer-links a,
.site-footer-office a,
.site-footer-office p { font-size: .875rem; }
.site-footer-links a::before { font-size: .68rem; }
.site-footer-action {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0;
}
.site-footer-button {
  min-height: 60px;
  border: 2px solid #FFD45A;
  background: transparent;
  color: #FFD45A;
  white-space: nowrap;
}
.site-footer-button:hover,
.site-footer-button:focus-visible { background: #FFD45A; color: #033D32; }
.site-footer-groupmark {
  position: absolute;
  top: 0;
  right: 0;
  display: grid;
  width: 150px;
  height: 176px;
  place-items: center;
}
.site-footer-groupmark img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.site-footer-offices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 38px;
  max-width: 1920px;
  margin: 0 auto;
  padding: 22px clamp(12px,5.5vw,110px);
  border-top: 2px solid #FFD45A;
  border-bottom: 2px solid #FFD45A;
}
.site-footer-office {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  min-width: 0;
}
.site-footer-office + .site-footer-office {
  padding-left: clamp(24px,5vw,90px);
  border-left: 1px solid #FFD45A;
}
.site-footer-office-icon {
  display: grid;
  width: 72px;
  height: 72px;
  flex: 0 0 72px;
  place-items: center;
  border: 2px solid #FFD45A;
  border-radius: 50%;
  color: #FFD45A;
  font-size: 1.8rem;
}
.site-footer-office h2 {
  margin: 3px 0 8px;
  color: #FFD45A;
  font: 700 .94rem 'Sora',sans-serif;
  text-transform: uppercase;
}
.site-footer-office a,
.site-footer-office p {
  display: block;
  margin: 0 0 7px;
  color: rgba(255,255,255,.92);
  font-size: .875rem;
  line-height: 1.55;
  text-decoration: none;
}
.site-footer-office a:hover { color: #FFD45A; }
.site-footer-office-details i { margin-right: 7px; color: #FFD45A; }
.site-footer-office-details > p a { display: inline; margin: 0; }
.site-footer-contact-office > div > a i,
.site-footer-contact-office > div > p i { margin-right: 8px; color: #FFD45A; }
.site-footer-bottom {
  max-width: 1920px;
  min-height: 78px;
  padding: 18px clamp(12px,1.5vw,28px);
  border-top: 0;
}

@media (max-width: 1100px) {
  .site-footer-main {
    grid-template-columns: minmax(220px,1.1fr) minmax(140px,.75fr) minmax(175px,1fr);
    padding-right: 130px;
  }
  .site-footer-action { grid-column: 2 / 4; justify-content: flex-start; }
  .site-footer-groupmark { width: 112px; height: 140px; }
  .site-footer-offices { padding-right: 24px; padding-left: 24px; gap: 22px; }
  .site-footer-office + .site-footer-office { padding-left: 24px; }
}
@media (max-width: 767px) {
  .site-footer { padding: 36px 20px 0; }
  .site-footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 28px 18px;
    padding: 0 0 28px;
  }
  .site-footer-brand { grid-column: 1 / -1; }
  .site-footer-logo { width: min(100%,300px); height: 150px; }
  .site-footer-main h2 { font-size: .9rem; }
  .site-footer-links { gap: 10px; }
  .site-footer-links a { padding-left: 16px; font-size: .8rem; }
  .site-footer-action { grid-column: 1 / -1; justify-content: flex-start; }
  .site-footer-groupmark { display: none; }
  .site-footer-offices { grid-template-columns: 1fr; gap: 20px; padding: 20px 0; }
  .site-footer-office { gap: 14px; }
  .site-footer-office + .site-footer-office { padding: 18px 0 0; border-top: 1px solid rgba(255,212,90,.55); border-left: 0; }
  .site-footer-office-icon { width: 48px; height: 48px; flex-basis: 48px; font-size: 1.25rem; }
  .site-footer-office a,.site-footer-office p { font-size: .8rem; }
  .site-footer-bottom { padding: 16px 0; }
}

@media (min-width: 768px) {
  .ronak-fm-slide .ronak-fm-content {
    visibility: hidden;
    opacity: 0;
    transition: none;
  }
  .ronak-fm-slide.active .ronak-fm-content {
    visibility: visible;
    opacity: 1;
    transition: opacity .45s ease 1s, transform .55s ease 1s;
  }
}
