/* The hero is a single image with a generous white overlay on its left edge. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:#fbfaf6}
.hero-background{position:absolute;z-index:-1;inset:0 0 80px 39%;overflow:hidden;pointer-events:none}
.hero-background img{height:100%;width:100%;object-fit:cover;object-position:58% 51%}
.hero:before{content:"";position:absolute;z-index:0;inset:0 0 80px 0;pointer-events:none;background:linear-gradient(90deg,#fbfaf6 0%,#fbfaf6 24%,rgba(251,250,246,.96) 37%,rgba(251,250,246,.67) 48%,rgba(251,250,246,0) 67%)}
.hero:after{content:"";position:absolute;z-index:0;pointer-events:none;bottom:79px;left:0;right:0;height:100px;background:linear-gradient(0deg,#fbfaf6 0%,rgba(251,250,246,0) 100%)}
.hero-inner{position:relative;z-index:1;min-height:380px;display:flex;align-items:center;padding-block:39px 38px}
.hero-copy{width:56%;max-width:650px}
.hero-copy .eyebrow{margin-bottom:17px}
.hero h1{font-size:clamp(39px,4.25vw,59px);font-weight:800;line-height:.99;letter-spacing:-.069em;white-space:nowrap}
.hero h1 em{color:#52794e;font-size:1.04em;font-weight:400;letter-spacing:-.04em}
.hero-intro{color:#58645f;max-width:440px;font-size:14px;line-height:1.48;margin-top:20px}
.hero-actions{display:flex;gap:14px;margin-top:24px}
.hero-floating-note{position:absolute;top:42px;right:10%;display:flex;align-items:center;gap:16px;padding:15px 19px;border-radius:9px;background:rgba(255,255,255,.95);box-shadow:0 10px 40px rgba(40,50,39,.12);font-size:12px;font-weight:800;line-height:1.35}
.hero-floating-note .icon{height:26px;width:26px}
.hero-perks{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:6px;padding-bottom:22px;gap:0}
.perk{display:flex;align-items:center;gap:13px;min-height:52px;padding:0 26px;border-right:1px solid var(--hairline)}
.perk:first-child{padding-left:0}.perk:last-child{border-right:0;padding-right:0}
.perk-icon{height:42px;width:42px;border-radius:9px;background:#e7efdf;color:var(--forest);display:grid;place-items:center;flex:0 0 auto}
.perk-icon .icon{height:25px;width:25px}
.perk strong,.perk small{display:block}.perk strong{font-size:12px;line-height:1.25;font-weight:800}.perk small{font-size:11px;color:#68726d;margin-top:4px}
/* Services */
.services{background:#fbfaf6}
.services-heading h2{font-weight:800}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.service-card{border-radius:13px;min-width:0;min-height:326px;overflow:hidden;display:grid;grid-template-columns:59% 41%;isolation:isolate}
.service-card--cleaning{background:#0e3c31;color:#fff}
.service-card--removals{background:#f1e7d7;color:#152b24}
.service-card-content{padding:23px 12px 22px 26px;position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start}
.service-decor{width:35px;height:35px;color:#d9ef94;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round;margin-bottom:10px}
.service-decor--truck{color:#385b51}
.service-card h3{font-size:25px;white-space:nowrap;margin-bottom:10px;letter-spacing:-.05em}
.service-card p{font-size:12px;line-height:1.47;max-width:290px;margin-bottom:12px;color:rgba(255,255,255,.87)}
.service-card--removals p{color:#68716b}
.service-list{display:grid;gap:5px;font-size:12px;line-height:1.27;margin-bottom:16px}
.service-list li{display:flex;align-items:center;gap:10px}
.service-list .icon{height:16px;width:16px;padding:3px;border-radius:50%;background:#e9f5dd;color:var(--forest);stroke-width:3.6;overflow:visible}
.service-card--removals .service-list .icon{background:#e4c18e}
.service-card .button{margin-top:auto;min-height:37px;padding:10px 20px;font-size:11px;gap:19px}
.service-card-image{min-width:0;position:relative;overflow:hidden}
.service-card-image:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(13,51,42,.19) 0%,transparent 28%)}
.service-card--removals .service-card-image:before{background:linear-gradient(90deg,rgba(241,231,215,.25),transparent 28%)}
.service-card-image img{width:100%;height:100%;object-fit:cover;object-position:42% center;position:absolute;inset:0;transition:transform .4s ease}
.service-card:hover img{transform:scale(1.04)}
/* About / value proposition */
.about{position:relative;overflow:hidden;background:var(--forest-deep);color:#fff;isolation:isolate}
.about:before{content:"";position:absolute;right:-190px;top:-280px;width:660px;height:660px;border-radius:50%;background:radial-gradient(circle,transparent 0 41%,rgba(211,239,192,.05) 41.2%,transparent 41.4%,transparent 56%,rgba(211,239,192,.04) 56.2%,transparent 56.4%,transparent 72%,rgba(211,239,192,.035) 72.2%,transparent 72.4%);pointer-events:none}
.about-grid{display:grid;grid-template-columns:31.5% 29% 1fr;gap:32px;max-width:1500px;margin-inline:auto;align-items:center;min-height:254px;padding:22px max(28px,calc((100% - var(--container))/2)) 22px 0}
.about-photo{height:210px;overflow:hidden}
.about-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
.about-copy{padding:0 0 0 2px}
.about-copy .eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:19px}
.about-copy .eyebrow:before{width:28px}
.about-copy h2{font-size:clamp(28px,2.7vw,37px);line-height:1.1;color:#fff;margin-bottom:20px;letter-spacing:-.06em;white-space:nowrap}
.about-copy h2 em{color:#d8ed96}
.about-copy>p:last-child{color:rgba(255,255,255,.83);font-size:12px;line-height:1.68;max-width:332px}
.about-benefits{display:grid;grid-template-columns:1fr 1fr;align-self:center}
.about-benefit{min-height:98px;padding:15px 14px;border-bottom:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.about-benefit:nth-child(odd){border-right:1px solid rgba(255,255,255,.15)}
.about-benefit:nth-last-child(-n+2){border-bottom:0}
.about-benefit .icon{height:29px;width:29px;color:#d9ef94;margin-bottom:9px}
.about-benefit strong{font-size:12px;line-height:1.25}.about-benefit span{font-size:11px;line-height:1.38;color:rgba(255,255,255,.76);margin-top:3px}
/* Details + map */
.business{background:var(--cream);padding-block:34px 33px}
.business-grid{display:grid;grid-template-columns:1fr .98fr;align-items:center;gap:58px}
.business-copy .eyebrow{margin-bottom:12px}
.business-copy h2{font-size:clamp(31px,3.2vw,42px);line-height:.96;white-space:nowrap}
.business-copy h2 em{color:#50764e;font-size:1.06em}
.business-intro{font-size:12px;color:var(--muted);line-height:1.5;margin-top:12px;margin-bottom:14px;max-width:320px}
.business-facts{border-top:1px solid var(--hairline)}
.business-facts>div{display:grid;grid-template-columns:42% 58%;gap:3px;border-bottom:1px solid var(--hairline);padding:8px 0;align-items:start}
.business-facts dt{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:800;white-space:nowrap}
.business-facts dt .icon{width:14px;height:14px;stroke-width:2.2}
.business-facts dd{font-size:11px;color:#39483f;line-height:1.35}
.business-facts address{font-style:normal}
.location-card{overflow:hidden;background:#edf2ea;border-radius:12px;border:1px solid rgba(14,44,28,.04)}
.location-map{height:204px;position:relative;overflow:hidden}
.location-map>img{width:100%;height:100%;object-fit:cover}
.map-tag{position:absolute;top:13px;left:13px;background:rgba(255,255,255,.9);border-radius:4px;padding:5px 10px;display:flex;align-items:center;gap:5px;text-transform:uppercase;font-size:9px;letter-spacing:.16em;font-weight:800;color:var(--forest)}
.map-tag .icon{height:13px;width:13px}
.location-card-footer{min-height:57px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:rgba(251,250,246,.66)}
.location-address{display:flex;align-items:center;gap:10px;line-height:1.3}
.location-address .icon{width:20px;height:20px;color:var(--forest)}
.location-address strong{font-size:10px;font-weight:700}
.map-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#e2ead7;border-radius:90px;min-height:31px;padding:8px 14px;font-size:10px;font-weight:800;white-space:nowrap}
.map-link:hover{background:#d5e4c7}.map-link .icon{height:14px;width:14px}
/* Footer */
.site-footer{background:var(--forest-deep);color:#fff;padding-block:12px 8px}
.footer-main{display:flex;align-items:center;gap:35px;min-height:38px}
.brand--footer .brand-mark{background:#def399;width:32px;height:32px;border-radius:8px}.brand--footer .brand-mark svg{width:27px;height:27px}.brand--footer .brand-mark path{stroke:var(--forest)}
.brand--footer .brand-type strong{font-size:18px}.brand--footer .brand-type small{font-size:6px}
.brand--footer .brand-dot{color:#d9ef94}
.footer-description{padding-left:30px;border-left:1px solid rgba(255,255,255,.36);font-size:10px;line-height:1.5;color:rgba(255,255,255,.8)}
.footer-nav{display:flex;align-items:center;gap:28px;margin-left:auto}
.footer-nav a{font-size:10px;font-weight:500}.footer-nav a:hover{color:var(--lime)}
.footer-bottom{display:flex;justify-content:space-between;margin-top:10px;border-top:1px solid rgba(255,255,255,.12);padding-top:7px;color:#b8c7be;font-size:9px}
