:root{--ink:#172033;--muted:#667085;--line:#e6eaf0;--navy:#102a43;--green:#0f8a5f;--green2:#19a974;--mint:#eaf8f2;--cream:#fff8ed;--soft:#f6f8fb;--blue:#eef5ff;--shadow:0 16px 45px rgba(16,42,67,.10);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.6;background:#fff;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,select{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #9be5c8;outline-offset:2px}.wrap{width:min(1180px,92%);margin:auto}header{position:sticky;top:0;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid #edf0f3;z-index:50}.nav{min-height:64px;display:flex;align-items:center;gap:22px}.logo{display:flex;align-items:center;white-space:nowrap;line-height:0;background:transparent;padding:0;margin:0}.logo img{display:block;width:160px;height:auto;max-height:52px;object-fit:contain;background:transparent}.foot .logo img{width:175px;max-height:76px}.nav nav{display:flex;gap:20px;align-items:center;margin-left:auto;font-size:14px;font-weight:750;color:#475467}.nav nav>a:not(.navcta):hover{color:var(--green)}.navcta,.btn{background:var(--green);color:#fff;padding:12px 18px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-weight:850;border:1px solid var(--green);transition:.18s ease;box-shadow:0 8px 20px rgba(15,138,95,.16)}.navcta:hover,.btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(15,138,95,.22)}.btn.alt{background:#fff;color:var(--navy);border-color:#d6dce5;box-shadow:none}.btn.dark{background:var(--navy);border-color:var(--navy)}.btn.full{width:100%}.menu{display:none;margin-left:auto;border:0;background:#fff;font-size:25px}.hero{padding:58px 0 50px;background:radial-gradient(circle at 80% 15%,#eaf8f2 0,transparent 28%),linear-gradient(180deg,#fff8ed,#fff 85%)}.heroGrid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.eyebrow,.hero small,.section small,.page small{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase;color:var(--green);background:var(--mint);padding:7px 12px;border-radius:999px;margin-bottom:14px}.hero h1{font-size:clamp(40px,5.2vw,64px);line-height:1.04;letter-spacing:-3px;margin:4px 0 18px;max-width:720px}.hero p,.page p{font-size:17px;color:var(--muted);max-width:720px}.heroActions{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}.heroVisual{position:relative;min-height:390px;border-radius:28px;background:linear-gradient(145deg,#dff5e9,#eef5ff 55%,#fff3db);overflow:hidden;box-shadow:var(--shadow);border:1px solid #e8ecef}.heroVisual:before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.65);right:-90px;top:-90px}.cleanScene{position:absolute;inset:38px;display:grid;place-items:center}.popularHouseImage{display:block;width:100%;height:100%;object-fit:cover;border-radius:22px;box-shadow:0 20px 40px rgba(16,42,67,.12)}.house{width:78%;height:74%;background:#fff;border-radius:26px 26px 22px 22px;box-shadow:0 20px 40px rgba(16,42,67,.12);position:relative}.house:before{content:"";position:absolute;left:50%;top:-65px;transform:translateX(-50%);border-left:150px solid transparent;border-right:150px solid transparent;border-bottom:95px solid var(--navy)}.window{position:absolute;width:72px;height:72px;background:#dff1ff;border:8px solid var(--navy);border-radius:12px;top:45px;left:32px}.window.two{left:auto;right:32px}.door{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:78px;height:118px;background:var(--green);border-radius:16px 16px 0 0}.spark{position:absolute;font-size:28px}.s1{right:18%;top:18%}.s2{left:10%;bottom:18%}.s3{right:8%;bottom:10%}.heroBadge{position:absolute;left:20px;bottom:20px;background:#fff;padding:14px 16px;border-radius:16px;box-shadow:var(--shadow);font-weight:850}.heroBadge span{display:block;font-size:12px;color:var(--muted);font-weight:600}.booking{margin-top:-2px;position:relative;z-index:5}.bookingBox{background:#fff;border:1px solid #e1e6ed;border-radius:18px;padding:10px;box-shadow:0 15px 45px rgba(16,42,67,.12);display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:center}.locationBox,.searchBox{display:flex;align-items:center;gap:10px;padding:13px 15px;border-radius:12px;background:#f7f8fa;color:#475467}.locationBox b,.searchBox b{display:block;font-size:11px;color:#98a2b3;font-weight:800}.locationBox strong,.searchBox strong{font-size:14px}.searchIcon{font-size:20px}.bookingBox .btn{min-height:52px;padding-inline:24px}.section{padding:72px 0}.sectionHead{display:flex;justify-content:space-between;gap:20px;align-items:end}.section h2,.page h2{font-size:clamp(28px,3vw,40px);line-height:1.15;letter-spacing:-1.3px;margin:5px 0 0}.sectionHead p{color:var(--muted);max-width:520px;margin:0}.soft{background:var(--soft)}.cream{background:var(--cream)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.categoryGrid{grid-template-columns:repeat(4,1fr)}.card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:21px;background:#fff;transition:.2s ease;box-shadow:0 3px 10px rgba(16,42,67,.025)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d4dae3}.card i{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#eef5ff,#e6f8f0);color:var(--green);font-style:normal;font-weight:900;font-size:21px}.card h3,.card h2{font-size:18px;margin:15px 0 6px;letter-spacing:-.3px}.card p{font-size:14px;color:var(--muted);margin:0 0 15px}.card b{font-size:13px;color:var(--navy)}.serviceCard{padding:0;overflow:hidden}.serviceThumb{height:155px;background:linear-gradient(135deg,#dff5e9,#eef5ff);display:grid;place-items:center;font-size:55px}.serviceBody{padding:18px}.rating{font-size:13px;font-weight:800;color:#b76b00}.price{font-size:17px;font-weight:900;margin-top:8px}.serviceMeta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:15px}.miniBtn{padding:9px 14px;border-radius:9px;border:1px solid #cfd7e2;color:var(--navy);font-size:13px;font-weight:850}.miniBtn:hover{border-color:var(--green);color:var(--green)}.iconRow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}.iconTile{background:#fff;border:1px solid var(--line);padding:20px;border-radius:16px}.iconTile .ico{font-size:27px}.iconTile strong{display:block;margin-top:8px}.iconTile span{font-size:13px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.stepNum{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--navy);color:#fff;font-weight:900}.step h3{margin:18px 0 5px}.step p{font-size:14px;color:var(--muted)}.areas{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:28px}.areas a{padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;font-weight:750;font-size:14px;display:flex;justify-content:space-between;gap:8px}.areas a:hover{border-color:#b8dfd0;color:var(--green)}.testis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}.testi{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px}.stars{color:#f5a623;letter-spacing:2px}.testi p{font-size:14.5px;margin:10px 0}.testi b{font-size:13px;color:var(--muted)}.cta{padding:48px 0;background:var(--navy);color:#fff}.cta .two{display:grid;grid-template-columns:1fr auto;align-items:center}.cta h2{margin:0}.white{background:#fff;color:var(--navy);border-color:#fff;box-shadow:none}.page{padding:60px 0 48px;background:radial-gradient(circle at 85% 10%,#eaf8f2,transparent 25%),linear-gradient(180deg,#f8fafc,#fff)}.crumb{font-size:13px;color:#667085;margin-bottom:20px}.page h1{font-size:clamp(36px,4.7vw,56px);line-height:1.05;letter-spacing:-2px;margin:5px 0 16px}.pageHero{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:center}.pageHeroCard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:var(--shadow)}.page+.section{padding-top:52px}.two{display:grid;grid-template-columns:1.25fr .75fr;gap:42px;align-items:start}.heroCard{background:#fff;border:1px solid var(--line);padding:26px;border-radius:20px;box-shadow:var(--shadow)}.heroCard strong{font-size:28px;display:block;margin:12px 0}.prices{max-width:850px;margin:28px 0}.prices div{display:flex;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}.box{background:#f7f8fa;padding:24px;border-radius:16px;margin-top:26px}.faq{max-width:880px}.faq details{padding:18px 0;border-bottom:1px solid var(--line)}.faq summary{font-weight:800;cursor:pointer}.chips{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 30px}.chip{border:1px solid var(--line);background:#fff;padding:9px 14px;border-radius:999px;font-size:13px;font-weight:750}.chip:hover{border-color:var(--green2);color:var(--green)}.trustbar{display:flex;flex-wrap:wrap;gap:10px 18px;font-size:13px;font-weight:700;color:#667085;margin-top:20px}.trustbar span:before{content:"✓";color:var(--green);margin-right:6px;font-weight:900}.badge{display:inline-block;background:#eaf7f0;color:var(--green);font-weight:800;font-size:11px;letter-spacing:.4px;padding:5px 10px;border-radius:99px;text-transform:uppercase}.packageGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.package{border:1px solid var(--line);border-radius:18px;background:#fff;padding:22px;box-shadow:0 5px 18px rgba(16,42,67,.04)}.package.featured{border:2px solid var(--green);position:relative}.package .tag{display:inline-block;background:var(--mint);color:var(--green);font-size:11px;font-weight:900;text-transform:uppercase;padding:5px 9px;border-radius:99px}.package h3{margin:13px 0 4px}.package .from{font-size:26px;font-weight:900}.package ul{padding-left:18px;color:var(--muted);font-size:14px}.package li{margin:7px 0}.localBanner{margin-top:28px;background:linear-gradient(135deg,#102a43,#163d5e);color:#fff;border-radius:20px;padding:25px}.localBanner h2{margin:0 0 5px}.localBanner p{color:#d6e1ec}.localBanner .btn{background:#fff;color:var(--navy);border-color:#fff}.stickyBook{position:fixed;right:18px;bottom:18px;z-index:42;display:flex;gap:8px}.stickyBook a{padding:12px 16px;border-radius:999px;font-weight:900;box-shadow:0 12px 28px rgba(16,42,67,.18)}.stickyBook .call{background:#fff;border:1px solid var(--line);color:var(--navy)}.stickyBook .wa{background:var(--green);color:#fff}.faqBand{background:var(--soft)}footer{background:#0b1727;color:#cbd5e1;padding:54px 0 22px}.foot{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}.foot .logo{color:#fff}.foot .logo span{color:#cbd5e1}.foot a{display:block;margin:8px 0;font-size:14px}.foot b{color:#fff}.copy{border-top:1px solid #243247;margin-top:30px;padding-top:18px;font-size:13px}.mobile{display:none}.floatWa{position:fixed;right:22px;bottom:22px;width:55px;height:55px;border-radius:50%;background:#16a66d;color:#fff;display:grid;place-items:center;font-size:25px;box-shadow:0 12px 30px rgba(22,166,109,.35);z-index:40}@media(max-width:900px){.stickyBook{display:none!important}.logo img{width:148px;max-height:48px}.foot .logo img{width:165px;max-height:70px}.nav nav{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;padding:18px 4%;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav nav.open{display:flex}.menu{display:block}.heroGrid,.two,.pageHero{grid-template-columns:1fr}.bookingBox{grid-template-columns:1fr}.categoryGrid{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:repeat(2,1fr)}.iconRow{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:1fr}.areas{grid-template-columns:repeat(3,1fr)}.packageGrid{grid-template-columns:1fr 1fr}.foot{grid-template-columns:1fr 1fr}.cta .two{grid-template-columns:1fr}.heroVisual{min-height:330px}}@media(max-width:560px){.wrap{width:min(94%,1180px)}.nav{min-height:60px}.hero{padding:40px 0 32px}.hero h1{font-size:39px;letter-spacing:-2px}.heroVisual{min-height:280px}.cleanScene{inset:30px}.house:before{border-left-width:105px;border-right-width:105px;border-bottom-width:70px;top:-50px}.window{width:54px;height:54px;top:35px;left:22px;border-width:6px}.window.two{right:22px}.door{width:62px;height:95px}.section{padding:54px 0}.sectionHead{display:block}.grid,.categoryGrid,.packageGrid{grid-template-columns:1fr}.iconRow{grid-template-columns:1fr 1fr}.areas{grid-template-columns:1fr 1fr}.testis{grid-template-columns:1fr}.foot{grid-template-columns:1fr}.floatWa{right:16px;bottom:75px}.mobile{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:45;box-shadow:0 -6px 20px rgba(0,0,0,.08)}.mobile a{background:var(--navy);color:#fff;text-align:center;padding:13px;font-weight:850}.mobile a:last-child{background:var(--green)}footer{padding-bottom:72px}.page{padding:45px 0}.page h1{font-size:38px}.booking{margin-top:0}.bookingBox{border-radius:14px}.heroBadge{left:14px;bottom:14px}.cta{padding:38px 0}.cta .btn{margin-top:12px;width:100%}.stickyBook{left:12px;right:12px;bottom:70px}.stickyBook a{flex:1;text-align:center}.pageHeroCard{padding:20px}}

/* --- Image-first service cards: inspired by modern marketplace layouts --- */
.categoryGrid .card,.imageCard{padding:0;overflow:hidden;background:#fff}
.categoryGrid .card i{display:none}
.cardImage{height:150px;overflow:hidden;background:#eef5ff}
.cardImage img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.categoryGrid .card:hover .cardImage img,.imageCard:hover .cardImage img{transform:scale(1.045)}
.categoryGrid .card h3,.categoryGrid .card p,.categoryGrid .card b{margin-left:20px;margin-right:20px}
.categoryGrid .card h3{margin-top:17px}
.categoryGrid .card b{display:block;margin-bottom:20px}
.serviceCard .serviceThumb{height:175px;position:relative;overflow:hidden}
.serviceCard .serviceThumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.serviceCard:hover .serviceThumb img{transform:scale(1.045)}
.serviceCard .serviceThumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(16,42,67,.08))}
.marketCard{padding:0;overflow:hidden}
.marketCard .cardImage{height:175px}
.marketCard .cardBody{padding:18px 20px 20px}
.marketCard .cardBody h2{margin:8px 0 6px}
.marketCard .cardBody p{margin:0 0 14px}
.ratingPill{display:inline-flex;align-items:center;gap:5px;background:#fff7e8;color:#9a6500;border:1px solid #f5dfb3;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850}
@media(max-width:560px){
 .categoryGrid{grid-template-columns:1fr 1fr}
 .cardImage{height:125px}
 .serviceCard .serviceThumb{height:150px}
 .marketCard .cardImage{height:150px}
}

/* HomeTriangle-style compact service-card icons */
.service-card .service-icon,
.service-card .icon,
.service-card img,
.service-card svg,
.service-card .card-icon {
  width: 72px !important;
  height: 72px !important;
  max-width: 72px !important;
  max-height: 72px !important;
  object-fit: contain !important;
}
.service-card .service-image,
.service-card .image-wrap,
.service-card .card-image {
  min-height: 120px !important;
  height: 120px !important;
}
@media (max-width: 600px) {
  .service-card .service-icon,
  .service-card .icon,
  .service-card img,
  .service-card svg,
  .service-card .card-icon {
    width: 58px !important;
    height: 58px !important;
    max-width: 58px !important;
    max-height: 58px !important;
  }
  .service-card .service-image,
  .service-card .image-wrap,
  .service-card .card-image {
    min-height: 100px !important;
    height: 100px !important;
  }
}
