:root{--svc-yellow:#edd601;--svc-ink:#080808;--svc-soft:#f4f6f0;--svc-green:#105d48;--svc-line:#dfe3da}
.services-page main p{font-size:15px!important;line-height:1.68!important;font-weight:500!important}
.svc-shell{width:min(1280px,calc(100% - 48px));margin-left:auto;margin-right:auto}
.svc-kicker{display:inline-flex;align-items:center;gap:11px;padding:9px 15px;border-radius:999px;background:#f4f6f0;font:800 11px/1 "DM Sans";letter-spacing:.13em;text-transform:uppercase}.svc-kicker:before,.svc-kicker:after{content:"";width:24px;height:2px;background:var(--svc-yellow)}
.services-hero{position:relative;overflow:hidden;min-height:730px;padding:145px max(6vw,calc((100vw - 1280px)/2)) 75px;display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center;background:radial-gradient(circle at 10% 20%,rgba(255,239,75,.58),transparent 20%),linear-gradient(125deg,#c9ee8c,#49bb7c 50%,#16755b)}
.services-hero:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:25px;background:linear-gradient(176deg,transparent 48%,#fff 50%)}
.services-hero-copy{color:#fff}.services-hero-copy .svc-kicker{color:#12231d;background:#fff}.services-hero h1{margin:26px 0 15px;font-size:clamp(54px,5.2vw,76px);line-height:.98;letter-spacing:-.06em}.services-hero h1 span{display:block;color:#ffe600}.services-hero h2{max-width:740px;margin:0 0 18px;font-size:25px;line-height:1.3}.services-hero-copy>p{max-width:720px;color:#fff!important;font-size:16px!important}
.svc-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.svc-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:15px 22px;border-radius:999px;font-size:13px!important;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}.svc-btn:hover{transform:translateY(-4px);box-shadow:0 13px 25px rgba(0,0,0,.18)}.svc-btn.yellow{background:var(--svc-yellow);color:#000}.svc-btn.light{background:#fff;color:#10231c}
.svc-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.svc-trust span{padding:8px 12px;border:1px solid rgba(255,255,255,.45);border-radius:999px;font-size:11px;font-weight:700}
.hero-service-board{padding:25px;border:1px solid rgba(255,255,255,.35);border-radius:28px;background:rgba(7,38,30,.88);box-shadow:0 28px 55px rgba(0,0,0,.23);backdrop-filter:blur(10px)}.board-top{display:flex;justify-content:space-between;align-items:center;padding:2px 5px 20px;color:#fff}.board-top span{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.board-top b{color:var(--svc-yellow)}
.board-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.board-grid a{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:13px;min-height:94px;padding:15px;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.06);color:#fff;transition:transform .2s ease,background .2s ease}.board-grid a:hover{transform:translateY(-5px);background:rgba(237,214,1,.14)}.board-grid b{display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:var(--svc-yellow);color:#000}.board-grid span{font-size:14px;font-weight:700;line-height:1.35}
.svc-quick{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;margin-top:75px;padding:55px 60px;border:1px solid var(--svc-line);border-radius:28px;background:linear-gradient(125deg,#fff,#fffde5);box-shadow:0 18px 42px rgba(20,40,30,.07)}.svc-quick h2,.finder-head h2,.property-section h2,.process-head h2,.problem-approach h2,.faq-head h2,.service-cta h2{margin:22px 0 0;font-size:clamp(42px,4vw,60px);line-height:1.05;letter-spacing:-.05em}.svc-quick>p{align-self:center;margin:0;font-size:17px!important;font-weight:600!important}
.service-finder{padding:95px 0}.finder-head{text-align:center}.finder-head h2{margin-left:auto;margin-right:auto}.finder-head>p{font-size:17px!important}.finder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.finder-grid a{position:relative;overflow:hidden;min-height:190px;padding:26px;border:1px solid var(--svc-line);border-top:4px solid var(--svc-yellow);border-radius:20px;background:#fff;box-shadow:0 12px 25px rgba(20,40,30,.05);transition:transform .22s ease,box-shadow .22s ease}.finder-grid a:after{content:"";position:absolute;right:-32px;bottom:-32px;width:100px;height:100px;border-radius:50%;background:rgba(237,214,1,.15)}.finder-grid a:hover{transform:translateY(-8px);box-shadow:0 20px 36px rgba(20,40,30,.12)}.finder-grid b,.finder-grid span{display:block;position:relative;z-index:1}.finder-grid b{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#706600}.finder-grid span{margin:19px 0 9px;font:800 20px "Manrope"}.finder-grid p{position:relative;z-index:1;margin:0}.finder-note{text-align:center;margin:25px 0 0;font-size:16px!important;font-weight:700!important}
.service-details{padding:85px 0;background:var(--svc-soft)}.detail-list{display:grid;gap:24px}.detail-card{position:relative;display:grid;grid-template-columns:150px 1fr;gap:45px;align-items:center;min-height:365px;padding:48px 65px;border:1px solid var(--svc-line);border-radius:27px;background:#fff;box-shadow:0 14px 32px rgba(20,40,30,.06)}.detail-card.reverse{grid-template-columns:1fr 150px}.detail-card.reverse .detail-icon{grid-column:2}.detail-card.reverse .detail-copy{grid-column:1;grid-row:1}.detail-number{position:absolute;right:26px;top:23px;color:#e2e4de;font:800 45px "Manrope"}.detail-icon{display:grid;place-items:center;width:145px;height:145px;border-radius:50%;background:#fffbe2;transition:transform .25s ease}.detail-card:hover .detail-icon{transform:rotate(-5deg) scale(1.06)}.detail-icon svg{width:80px;height:80px;fill:none;stroke:#102b25;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.detail-copy{max-width:900px}.detail-copy h2{margin:19px 0;font-size:clamp(34px,3.4vw,50px);letter-spacing:-.045em}.detail-copy p{margin-bottom:11px}.detail-copy a{display:inline-flex;gap:15px;margin-top:13px;padding:13px 20px;border-radius:999px;background:var(--svc-yellow);font-size:12px!important;font-weight:800;transition:transform .2s ease,box-shadow .2s ease}.detail-copy a:hover{transform:translateY(-4px);box-shadow:0 10px 22px rgba(126,113,0,.2)}
.property-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;margin-top:90px;margin-bottom:90px;padding:68px;border-radius:28px;background:linear-gradient(130deg,#0c1915,#18382d);color:#fff}.property-section .svc-kicker{background:rgba(255,255,255,.1)}.property-section h2{font-size:50px}.property-section p{color:#fff!important}
.svc-process{padding:90px 0;background:linear-gradient(135deg,#fff,#fffde9)}.process-head{text-align:center}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.process-grid article{min-height:270px;padding:27px;border:1px solid var(--svc-line);border-radius:20px;background:#fff;box-shadow:0 13px 30px rgba(20,40,30,.06);transition:transform .22s ease}.process-grid article:hover{transform:translateY(-8px)}.process-grid b{display:grid;place-items:center;width:49px;height:49px;border-radius:14px;background:var(--svc-yellow);font-size:17px}.process-grid h3{margin:35px 0 13px;font-size:20px;line-height:1.35}
.problem-approach{display:grid;grid-template-columns:170px 1fr;gap:55px;align-items:center;margin-top:90px;margin-bottom:90px;padding:65px;border:1px solid #dfd976;border-radius:28px;background:#fffde9}.approach-mark{display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:var(--svc-yellow);font:800 70px "Manrope";box-shadow:0 15px 35px rgba(130,116,0,.2)}.problem-approach h2{margin-bottom:20px}.problem-approach p{margin-bottom:10px}
.svc-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;padding:90px 0}.svc-faq .accordion{width:100%;max-width:none}.svc-faq .accordion details{border-radius:15px}.svc-faq .accordion summary{font-size:16px}.svc-faq .accordion details p{font-size:14px!important}
.service-cta{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center;margin-bottom:90px;padding:70px;border-radius:30px;background:linear-gradient(125deg,#1a8a68,#0c4d3d);color:#fff}.service-cta .svc-kicker{color:#17231e;background:#fff}.service-cta h2{font-size:54px}.service-cta h2 span{color:#ffe600}.service-cta p{color:#fff!important}.cta-badges{display:flex;flex-wrap:wrap;gap:12px}.cta-badges span{padding:13px 17px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.08);font-size:12px;font-weight:700;transition:background .2s ease,transform .2s ease}.cta-badges span:hover{transform:translateY(-4px);background:rgba(237,214,1,.18)}
@media(max-width:1000px){.services-hero{grid-template-columns:1fr;padding-top:135px}.svc-quick,.property-section,.svc-faq,.service-cta{grid-template-columns:1fr}.finder-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.services-page main p{font-size:14px!important}.svc-shell{width:calc(100% - 24px)}.services-hero{padding:115px 20px 55px;gap:30px}.services-hero h1{font-size:43px}.services-hero h2{font-size:20px}.board-grid{grid-template-columns:1fr}.svc-quick,.property-section,.problem-approach,.service-cta{padding:38px 23px}.svc-quick h2,.finder-head h2,.property-section h2,.process-head h2,.problem-approach h2,.faq-head h2,.service-cta h2{font-size:36px}.service-finder,.service-details,.svc-process,.svc-faq{padding:60px 0}.finder-grid,.process-grid{grid-template-columns:1fr}.detail-card,.detail-card.reverse{grid-template-columns:1fr;padding:35px 23px;gap:20px}.detail-card.reverse .detail-icon,.detail-card.reverse .detail-copy{grid-column:auto;grid-row:auto}.detail-icon{width:110px;height:110px}.detail-icon svg{width:65px;height:65px}.detail-copy h2{font-size:34px}.property-section,.problem-approach{gap:30px}.problem-approach{grid-template-columns:1fr}.approach-mark{width:95px;height:95px;font-size:45px}.process-grid article{min-height:220px}.svc-trust{display:none}}

/* Hero estimate form */
.svc-hero-estimate{
  padding:32px;
  border:1px solid rgba(255,255,255,.4);
  border-radius:28px;
  background:rgba(255,255,255,.97);
  box-shadow:0 28px 58px rgba(0,0,0,.22);
  backdrop-filter:blur(10px);
}
.svc-form-label{
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
}
.svc-hero-estimate h3{
  margin:10px 0 20px;
  color:#080808;
  font-size:25px;
}
.svc-form-two{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:11px;
}
.svc-hero-estimate input,
.svc-hero-estimate select,
.svc-hero-estimate textarea{
  width:100%;
  min-height:48px;
  margin-bottom:11px;
  padding:13px 14px;
  border:1px solid #daddd6;
  border-radius:10px;
  color:#111;
  background:#fbfcfa;
  font:12px "DM Sans";
  outline:none;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.svc-hero-estimate textarea{
  min-height:105px;
  resize:vertical;
}
.svc-hero-estimate input:focus,
.svc-hero-estimate select:focus,
.svc-hero-estimate textarea:focus{
  border-color:var(--svc-yellow);
  background:#fff;
  box-shadow:0 0 0 4px rgba(237,214,1,.13);
}
.svc-hero-estimate button{
  width:100%;
  min-height:50px;
  border:0;
  border-radius:999px;
  color:#080808;
  background:var(--svc-yellow);
  font:800 13px "DM Sans";
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.svc-hero-estimate button:hover{
  transform:translateY(-3px);
  color:#080808;
  background:#ffe600;
  box-shadow:0 12px 24px rgba(126,113,0,.22);
}
@media(max-width:650px){
  .svc-hero-estimate{padding:25px 18px}
  .svc-form-two{grid-template-columns:1fr}
}

/* Service finder card effects */
.finder-grid a{
  isolation:isolate;
  overflow:hidden;
  box-shadow:0 13px 30px rgba(13,49,38,.055);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.finder-grid a:before{
  content:"";
  position:absolute;
  right:-58px;
  bottom:-62px;
  z-index:-1;
  width:145px;
  height:145px;
  border-radius:50%;
  background:rgba(237,214,1,.14);
  transition:transform .4s ease,background .4s ease;
}
.finder-grid a:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg,transparent 35%,rgba(255,229,0,.1),transparent 65%);
  transform:translateX(-110%);
  transition:transform .55s ease;
}
.finder-grid a:hover{
  transform:translateY(-8px);
  border-color:#d5c200;
  box-shadow:0 23px 46px rgba(13,49,38,.13);
}
.finder-grid a:hover:before{
  transform:scale(1.65);
  background:rgba(237,214,1,.24);
}
.finder-grid a:hover:after{
  transform:translateX(110%);
}
.finder-grid a b,
.finder-grid a span,
.finder-grid a p{
  position:relative;
  z-index:1;
  transition:transform .28s ease;
}
.finder-grid a:hover b,
.finder-grid a:hover span,
.finder-grid a:hover p{
  transform:translateX(4px);
}
@media(prefers-reduced-motion:reduce){
  .finder-grid a,.finder-grid a:before,.finder-grid a:after,
  .finder-grid a b,.finder-grid a span,.finder-grid a p{
    transition:none!important;
  }
}

/* Refined Quick Answer section and smaller hero title */
.services-hero h1{
  max-width:680px;
  font-size:clamp(43px,4.25vw,61px);
  line-height:1.02;
}
.svc-quick{
  position:relative;
  overflow:hidden;
  grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  gap:0;
  margin-top:72px;
  padding:14px;
  border:1px solid #dce2da;
  border-radius:30px;
  background:#f4f6f0;
  box-shadow:0 22px 52px rgba(13,49,38,.09);
}
.svc-quick>div{
  position:relative;
  overflow:hidden;
  min-height:360px;
  padding:54px;
  border-radius:22px;
  color:#fff;
  background:
    radial-gradient(circle at 92% 10%,rgba(237,214,1,.24),transparent 25%),
    linear-gradient(135deg,#09241b,#10513c);
}
.svc-quick>div:after{
  content:"01";
  position:absolute;
  right:-8px;
  bottom:-30px;
  color:rgba(255,255,255,.055);
  font-size:150px;
  line-height:1;
  font-weight:900;
}
.svc-quick .svc-kicker{
  color:#10251d;
  background:#fff;
}
.svc-quick h2{
  position:relative;
  z-index:1;
  max-width:570px;
  margin-top:27px;
  color:#fff;
  font-size:clamp(38px,3.6vw,53px);
}
.svc-quick>p{
  position:relative;
  align-self:stretch;
  display:flex;
  align-items:center;
  margin:0;
  padding:65px 62px 65px 84px;
  color:#17251f;
  background:#fff;
  font-size:clamp(16px,1.35vw,19px)!important;
  line-height:1.75!important;
  font-weight:600!important;
}
.svc-quick>p:before{
  content:"✓";
  position:absolute;
  left:34px;
  top:66px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:11px;
  color:#0a1a13;
  background:var(--svc-yellow);
  font-weight:900;
}
@media(max-width:1000px){
  .svc-quick{grid-template-columns:1fr}
  .svc-quick>div{min-height:0}
}
@media(max-width:650px){
  .services-hero h1{font-size:37px}
  .svc-quick{padding:9px;border-radius:23px}
  .svc-quick>div{padding:38px 25px;border-radius:17px}
  .svc-quick h2{font-size:35px}
  .svc-quick>p{padding:40px 24px 40px 68px}
  .svc-quick>p:before{left:23px;top:42px}
}

/* Process card effects */
.process-grid article{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  border-top:4px solid var(--svc-yellow);
  box-shadow:0 14px 32px rgba(13,49,38,.07);
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.process-grid article:before{
  content:"";
  position:absolute;
  right:-62px;
  bottom:-65px;
  z-index:-1;
  width:150px;
  height:150px;
  border-radius:50%;
  background:rgba(237,214,1,.13);
  transition:transform .4s ease,background .4s ease;
}
.process-grid article:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(120deg,transparent 35%,rgba(255,229,0,.11),transparent 65%);
  transform:translateX(-115%);
  transition:transform .58s ease;
}
.process-grid article:hover{
  transform:translateY(-9px);
  border-color:#d3c000;
  box-shadow:0 24px 48px rgba(13,49,38,.14);
}
.process-grid article:hover:before{
  transform:scale(1.65);
  background:rgba(237,214,1,.24);
}
.process-grid article:hover:after{
  transform:translateX(115%);
}
.process-grid b{
  position:relative;
  z-index:1;
  transition:transform .28s ease,background .28s ease,box-shadow .28s ease;
}
.process-grid article:hover b{
  transform:rotate(-7deg) scale(1.08);
  background:#ffe600;
  box-shadow:0 10px 22px rgba(157,141,0,.22);
}
.process-grid h3,
.process-grid p{
  position:relative;
  z-index:1;
  transition:transform .28s ease;
}
.process-grid article:hover h3,
.process-grid article:hover p{
  transform:translateX(4px);
}
@media(prefers-reduced-motion:reduce){
  .process-grid article,.process-grid article:before,.process-grid article:after,
  .process-grid b,.process-grid h3,.process-grid p{
    transition:none!important;
  }
}
