:root{--green:#35a853;--green-dark:#237d3b;--ink:#18201b;--muted:#6c756f;--paper:#fff;--soft:#f4f7f4;--line:#dfe7e0;--warning:#fff8df}*{box-sizing:border-box}html,body{margin:0;background:#e9efea;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}body{min-height:100vh}.app-shell{width:min(100%,540px);min-height:100vh;margin:0 auto;background:var(--paper);position:relative;box-shadow:0 0 40px #0002;padding-bottom:79px}.topbar{height:76px;padding:env(safe-area-inset-top) 18px 10px;display:flex;align-items:end;gap:12px;background:white;position:sticky;top:0;z-index:20;border-bottom:1px solid #edf0ed}.brand{display:flex;align-items:center;gap:8px;color:var(--green);flex:1;cursor:pointer}.brand svg{width:42px}.brand strong{display:block;font-size:19px;line-height:1}.brand span{display:block;font-size:11px;letter-spacing:3px;color:#222;margin-top:3px}.icon-btn{border:0;background:transparent;font-size:25px;min-width:32px;color:#253027}.hidden{visibility:hidden}.screen{display:none;min-height:calc(100vh - 155px)}.screen.active{display:block}.hero{min-height:390px;background:linear-gradient(180deg,#edf8ef 0%,#fff 100%);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -40px -35px -40px;height:240px;background:linear-gradient(165deg,#b7d1ba 0 22%,#9bb59d 22% 25%,#e8ede8 25% 54%,#c9d3c9 54% 57%,#f8faf8 57%);clip-path:polygon(0 62%,20% 42%,39% 55%,56% 33%,78% 47%,100% 24%,100% 100%,0 100%)}.hero-overlay{position:relative;z-index:2;padding:54px 26px 20px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.6px;color:var(--green-dark)}h1{font-size:39px;line-height:.98;margin:14px 0 16px;letter-spacing:-1.3px}h1 em{font-style:normal;color:var(--green)}.hero p{line-height:1.55}.content{padding:22px}.home-content{margin-top:-35px;position:relative;z-index:3}.primary-card{width:100%;border:0;border-radius:18px;background:var(--green);color:white;padding:18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-align:left;box-shadow:0 10px 25px #267a3d2b}.primary-card small,.call-card small{display:block;font-size:11px;letter-spacing:1.2px}.primary-card strong{display:block;font-size:18px}.primary-card b{font-size:28px}.big-icon{font-size:25px}.call-card{margin-top:13px;border:2px solid var(--green);border-radius:16px;padding:14px 17px;color:var(--green-dark);text-decoration:none;display:flex;gap:13px;align-items:center;background:#fff}.call-card>span:first-child{font-size:24px}.call-card strong{display:block;font-size:21px}.badges{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.badges article{text-align:center;padding:10px 4px}.badges article>span{display:grid;place-items:center;margin:0 auto 8px;width:38px;height:38px;border-radius:50%;background:#eaf7ed;color:var(--green);font-weight:900}.badges strong{font-size:11px}.badges small{display:block;margin-top:6px;font-size:9px;color:var(--muted);line-height:1.3}.military{background:var(--green);color:white;border-radius:16px;padding:17px;display:flex;gap:14px;align-items:center}.military .flag{font-size:36px}.military small{display:block;font-size:10px;letter-spacing:1.5px}.military strong{display:block;font-size:20px}.page-head{background:linear-gradient(135deg,var(--green-dark),var(--green));color:white;padding:28px 22px}.page-head p{font-weight:800;letter-spacing:1.2px;font-size:12px;margin:0 0 7px}.page-head h2{margin:0;font-size:24px}.service-list{display:grid;gap:12px}.service-list article{display:flex;gap:14px;border:1px solid var(--line);border-radius:15px;padding:16px;background:white}.service-list article>span{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:#e8f5eb;color:var(--green-dark);font-weight:900}.service-list strong{text-transform:uppercase;color:var(--green-dark);font-size:14px}.service-list p{margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.featured-service{background:#eff8f1!important;border-color:#bfe2c7!important}.primary{border:0;border-radius:14px;background:var(--green);color:white;padding:16px 18px;font-weight:900;letter-spacing:.5px}.full{width:100%;margin-top:8px}.review-summary{text-align:center;border:1px solid var(--line);border-radius:18px;padding:28px}.stars{color:#e3a400;font-size:24px;letter-spacing:4px}.review-summary strong{display:block;margin:10px 0}.review-summary p{color:var(--muted);font-size:13px}.notice{margin-top:14px;background:var(--warning);border:1px solid #eedf9c;border-radius:12px;padding:13px;font-size:12px;line-height:1.4}.more-list{display:grid;gap:10px}.more-list a,.more-list button{border:1px solid var(--line);border-radius:14px;background:#fff;padding:17px;text-align:left;color:var(--ink);text-decoration:none;font:inherit;font-weight:700;display:flex;justify-content:space-between}form{display:grid;gap:14px}label{display:grid;gap:6px;font-size:12px;font-weight:800;color:#374038}input,select,textarea{width:100%;border:1px solid #cfd8d0;border-radius:12px;padding:14px;font:inherit;font-size:16px;background:#fff;color:#172018}textarea{min-height:105px;resize:vertical}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}fieldset{border:0;padding:0;margin:0}legend{font-size:12px;font-weight:800;margin-bottom:7px}.segmented{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cfd8d0;border-radius:12px;overflow:hidden}.segmented label{display:block}.segmented input{display:none}.segmented span{display:block;padding:13px;text-align:center}.segmented input:checked+span{background:var(--green);color:white}.hours{margin:0;color:var(--muted);font-size:11px}.error{color:#b42318;font-weight:700;font-size:12px;margin:0}.success{text-align:center;padding-top:70px}.check{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;margin:auto;background:var(--green);color:white;font-size:48px}.success h2{font-size:34px;color:var(--green-dark);margin:18px 0 5px}.success h3{font-size:18px;margin:0}.success p{color:var(--muted);line-height:1.55}.success .call-card{text-align:left;margin:28px 0 14px}.bottom-nav{position:fixed;z-index:30;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,540px);height:79px;padding-bottom:env(safe-area-inset-bottom);background:var(--green-dark);display:grid;grid-template-columns:repeat(5,1fr)}.bottom-nav button{border:0;background:transparent;color:#dce7de;font-size:9px;font-weight:700}.bottom-nav span{display:block;font-size:18px;margin-bottom:4px}.bottom-nav button.active{background:#1b6d32;color:#fff}.bottom-nav button.active:after{content:"";display:block;width:20px;height:2px;background:#fff;margin:4px auto 0}.loading{opacity:.6;pointer-events:none}@media(min-width:541px){body{padding:20px}.app-shell{min-height:calc(100vh - 40px);border-radius:26px;overflow:hidden}.bottom-nav{bottom:20px;border-radius:0 0 26px 26px}}

/* Exact approved homepage */
.app-shell.home-mode{padding-bottom:0;background:#000;box-shadow:none}
.app-shell.home-mode .topbar,.app-shell.home-mode .bottom-nav{display:none}
.exact-home{position:relative;min-height:100svh;background:#000;overflow:hidden}
.approved-home-art{display:block;width:100%;height:auto;min-height:100svh;object-fit:cover;object-position:top center;user-select:none;-webkit-user-drag:none}
.home-hotspots{position:absolute;inset:0;pointer-events:none}
.hotspot{position:absolute;display:block;border:0;background:transparent;padding:0;margin:0;cursor:pointer;pointer-events:auto;-webkit-tap-highlight-color:transparent}
.menu-hotspot{top:5.3%;right:0;width:12%;height:7.5%}
.emergency-hotspot{top:55.7%;right:4.8%;width:14.5%;height:8.4%;border-radius:50%}
.facebook-hotspot{top:64.2%;right:5%;width:13.8%;height:7.8%;border-radius:50%}
.instagram-hotspot{top:71.5%;right:5%;width:13.8%;height:7.8%;border-radius:50%}
.inspection-hotspot{top:64.0%;left:4.7%;width:65%;height:6.2%;border-radius:14px}
.call-hotspot{top:70.8%;left:4.7%;width:48.8%;height:5.3%;border-radius:12px}
.home-nav-hotspot{left:0;bottom:0;width:25%;height:9.5%}
.projects-nav-hotspot{left:25%;bottom:0;width:25%;height:9.5%}
.inspection-nav-hotspot{left:50%;bottom:0;width:25%;height:9.5%}
.call-nav-hotspot{right:0;bottom:0;width:25%;height:9.5%}
@media(min-width:541px){body:has(.app-shell.home-mode){padding:0}.app-shell.home-mode{min-height:100vh;border-radius:0;overflow:hidden}.exact-home{min-height:100vh}.approved-home-art{min-height:100vh}}

/* V15 unified brand styling — match approved homepage across all interior screens */
:root{
  --green:#6fc524;
  --green-dark:#061d13;
  --ink:#071d14;
  --muted:#5f6862;
  --paper:#ffffff;
  --soft:#f5f7f4;
  --line:#d9dfda;
  --warning:#fff8df;
}
body:not(:has(.app-shell.home-mode)){
  font-family:Arial,Helvetica,sans-serif;
  background:#eef1ee;
  color:var(--ink);
}
.app-shell:not(.home-mode) .topbar{
  background:#fff;
  border-bottom:1px solid #e4e8e4;
}
.app-shell:not(.home-mode) .brand{color:var(--green-dark)}
.app-shell:not(.home-mode) .brand strong{
  color:var(--green-dark);
  font-family:Arial,Helvetica,sans-serif;
  font-weight:900;
  letter-spacing:-.4px;
}
.app-shell:not(.home-mode) .brand span{
  color:#4f5551;
  font-weight:700;
}
.app-shell:not(.home-mode) .icon-btn{color:var(--green-dark)}
.app-shell:not(.home-mode) .page-head{
  background:linear-gradient(145deg,#03170e 0%,#082719 100%);
  color:#fff;
  border-bottom:4px solid var(--green);
}
.app-shell:not(.home-mode) .page-head p{
  color:var(--green);
  font-family:Arial,Helvetica,sans-serif;
  font-weight:900;
  letter-spacing:1.6px;
}
.app-shell:not(.home-mode) .page-head h2{
  color:#fff;
  font-family:Arial,Helvetica,sans-serif;
  font-weight:900;
  letter-spacing:-.5px;
}
.app-shell:not(.home-mode) .content,.app-shell:not(.home-mode) form,.app-shell:not(.home-mode) input,.app-shell:not(.home-mode) select,.app-shell:not(.home-mode) textarea,.app-shell:not(.home-mode) button,.app-shell:not(.home-mode) a{
  font-family:Arial,Helvetica,sans-serif;
}
.app-shell:not(.home-mode) .service-list article{
  border-color:#d8ded9;
  box-shadow:0 5px 14px rgba(2,28,16,.06);
}
.app-shell:not(.home-mode) .service-list article>span{
  background:#eef8e6;
  color:var(--green-dark);
}
.app-shell:not(.home-mode) .service-list strong{
  color:var(--green-dark);
  font-weight:900;
  letter-spacing:.2px;
}
.app-shell:not(.home-mode) .featured-service{
  background:#f3faed!important;
  border-color:#b9db9b!important;
}
.app-shell:not(.home-mode) .primary{
  background:var(--green);
  color:#fff;
  font-weight:900;
  text-transform:uppercase;
  box-shadow:0 7px 18px rgba(77,145,20,.22);
}
.app-shell:not(.home-mode) .primary:active{transform:translateY(1px)}
.app-shell:not(.home-mode) .call-card{
  border-color:var(--green);
  color:var(--green-dark);
}
.app-shell:not(.home-mode) .review-summary{
  border-color:#d8ded9;
  box-shadow:0 5px 14px rgba(2,28,16,.06);
}
.app-shell:not(.home-mode) .review-summary strong,
.app-shell:not(.home-mode) .more-list a,.app-shell:not(.home-mode) .more-list button,
.app-shell:not(.home-mode) label,.app-shell:not(.home-mode) legend{
  color:var(--green-dark);
}
.app-shell:not(.home-mode) .more-list a,.app-shell:not(.home-mode) .more-list button{
  border-color:#d8ded9;
  font-weight:800;
  box-shadow:0 4px 12px rgba(2,28,16,.05);
}
.app-shell:not(.home-mode) input,.app-shell:not(.home-mode) select,.app-shell:not(.home-mode) textarea{
  border-color:#cfd7d1;
  color:var(--green-dark);
}
.app-shell:not(.home-mode) input:focus,.app-shell:not(.home-mode) select:focus,.app-shell:not(.home-mode) textarea:focus{
  outline:2px solid rgba(111,197,36,.3);
  border-color:var(--green);
}
.app-shell:not(.home-mode) .segmented input:checked+span{
  background:var(--green);
  color:#fff;
}
.app-shell:not(.home-mode) .success .check{background:var(--green)}
.app-shell:not(.home-mode) .success h2{color:var(--green-dark);font-weight:900}
.app-shell:not(.home-mode) .bottom-nav{
  background:#fff;
  border-top:1px solid #e1e6e2;
  box-shadow:0 -8px 22px rgba(2,28,16,.08);
}
.app-shell:not(.home-mode) .bottom-nav button{
  color:#4c554f;
  font-weight:800;
}
.app-shell:not(.home-mode) .bottom-nav span{color:var(--green)}
.app-shell:not(.home-mode) .bottom-nav button.active{
  background:#f4f8f1;
  color:var(--green-dark);
}
.app-shell:not(.home-mode) .bottom-nav button.active:after{background:var(--green)}

/* English / Spanish selector — added without changing the approved layout */
.language-toggle{position:fixed;z-index:60;top:max(10px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:5px;background:rgba(255,255,255,.96);border:1px solid rgba(6,29,19,.18);border-radius:999px;padding:5px 8px;box-shadow:0 3px 12px rgba(0,0,0,.16);font:700 11px Arial,Helvetica,sans-serif;white-space:nowrap}
.language-toggle button{border:0;background:transparent;color:#4f5551;padding:4px 6px;border-radius:999px;font:inherit;cursor:pointer}
.language-toggle button.active{background:#6fc524;color:#061d13}
.language-toggle span{color:#9aa09c}
.app-shell:not(.home-mode) .language-toggle{top:max(8px,env(safe-area-inset-top));}
@media(min-width:541px){.language-toggle{top:14px}}

/* Requested project-card additions; approved homepage remains unchanged. */
.service-cards .image-service-card{display:grid;grid-template-columns:44% 1fr;padding:0;overflow:hidden;min-height:145px}
.image-service-card img{width:100%;height:100%;min-height:145px;object-fit:cover}
.image-service-card>div{padding:16px 14px;align-self:center}
.customer-satisfaction-card{display:block!important;padding:0!important;overflow:hidden;border-radius:16px!important;background:#fff!important}
.customer-satisfaction-card img{display:block;width:100%;height:220px;object-fit:cover}
.customer-copy{padding:18px;text-align:center}
.customer-copy small{color:var(--green);font-size:10px;font-weight:900;letter-spacing:1.6px}
.customer-copy h2{margin:6px 0 8px;color:var(--green-dark);font-size:23px}
.customer-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.5}
@media(max-width:390px){.service-cards .image-service-card{grid-template-columns:42% 1fr}}
