/* Helotes palette refresh: logo green + neutrals only.
   Scope to Helotes; leave golden corn artwork untouched and preserve the page layout. */
.ngcity:has(.nght-hero) {
  --ngh-green:#84c041;
  --ngh-green-bright:#a2d765;
  --ngh-green-soft:#eaf2e2;
  --ngh-ink:#252525;
  --ngh-gray:#f3f4f3;
  --ngh-gray-mid:#e6e8e6;
  --ngh-border:#d8ddd6;
}

/* Hero: predominantly white; logo green only where it earns attention. */
.ngcity:has(.nght-hero) .nght-hero {
  background:#fff;
  border-bottom:1px solid #e5e5e5;
}
.ngcity:has(.nght-hero) .nght-kicker,
.ngcity:has(.nght-hero) .nght-label {
  color:#545a50;
}
.ngcity:has(.nght-hero) .nght-hero h1 {color:#242424;}
.ngcity:has(.nght-hero) .nght-hero h1 em {color:#4f812d;}
.ngcity:has(.nght-hero) .nght-hero-copy>p:not(.nght-kicker) {color:#4b4b4b;}
.ngcity:has(.nght-hero) .nght-hero .ngcity-button:not(.ngcity-button-outline) {
  background:var(--ngh-green);
  border-color:var(--ngh-green);
  color:#191919;
}
.ngcity:has(.nght-hero) .nght-hero .ngcity-button-outline {
  color:#242424;
  background:#fff;
  border-color:#888;
}
.ngcity:has(.nght-hero) .nght-hero .nght-hero-visual {
  background:#fff;
  border-color:#e2e2e2;
  box-shadow:12px 12px 0 #e2e6de;
}
.ngcity:has(.nght-hero) .nght-hero-visual figcaption {
  background:#f5f5f5;
  border-color:#dedede;
  color:#4b4b4b;
}
/* Corn art itself is the only yellow element on the page. */

/* Clear section rhythm: whites, gray, one green-tinted accent. */
.ngcity:has(.nght-hero) .nght-intro {background:#fff;}
.ngcity:has(.nght-hero) .nght-intro h2 em {color:#527e2d;}
.ngcity:has(.nght-hero) .nght-services {background:#f4f5f4;}
.ngcity:has(.nght-hero) .nght-heading {border-bottom:2px solid #2e2e2e;}
.ngcity:has(.nght-hero) .nght-service-rows article {border-bottom-color:#d3d5d3;}
.ngcity:has(.nght-hero) .nght-service-rows article:nth-child(2) {
  background:linear-gradient(90deg,transparent,#e9ece8 50%,transparent);
}
.ngcity:has(.nght-hero) .nght-service-rows .nght-service-symbol {
  background:#e0ebd8;
  color:#477332;
  border:1px solid #ccdec2;
}
.ngcity:has(.nght-hero) .nght-service-rows article:nth-child(2) .nght-service-symbol {
  background:#e0e3e0;
  color:#3f4a3b;
  border:1px solid #d1d7d0;
}
.ngcity:has(.nght-hero) .nght-service-rows article:nth-child(3) .nght-service-symbol {
  background:#cfe6b9;
  color:#426c2c;
  border:1px solid #b5d49e;
}
.ngcity:has(.nght-hero) .nght-service-rows .nght-num {color:#56763f;}
.ngcity:has(.nght-hero) .nght-service-rows a {border-bottom:2px solid var(--ngh-green);color:#293329;}
.ngcity:has(.nght-hero) .nght-proof {
  background:#edf0ed;
  color:var(--ngh-ink);
  border-top:3px solid #d6dad4;
}
.ngcity:has(.nght-hero) .nght-proof h2 {color:var(--ngh-ink);}
.ngcity:has(.nght-hero) .nght-proof p:not(.nght-label) {color:#515951;}
.ngcity:has(.nght-hero) .nght-proof a {color:#466c2f;}
.ngcity:has(.nght-hero) .nght-proof-feature {
  background:#fff;
  border:1px solid #d8ddd6;
  border-left:6px solid var(--ngh-green);
  border-radius:11px;
  box-shadow:none;
}
.ngcity:has(.nght-hero) .nght-proof-feature:before {
  border-color:#d4e7c7;
  box-shadow:0 0 0 28px #f2f6ed,0 0 0 62px #f7f9f4;
}
.ngcity:has(.nght-hero) .nght-feature-eyebrow {color:#527940;}
.ngcity:has(.nght-hero) .nght-proof-feature strong {color:#242424;}
.ngcity:has(.nght-hero) .nght-proof-feature p:not(.nght-label) {color:#515951;}
.ngcity:has(.nght-hero) .nght-local-seo {background:#fff;}
.ngcity:has(.nght-hero) .nght-local-grid>div:last-child {
  background:#f3f4f3;
  border:1px solid #e0e2df;
  border-left:4px solid #9acc6a;
}
.ngcity:has(.nght-hero) .nght-cta {
  background:#edf2e9;
  color:#262626;
  border-top:2px solid #a6ce7b;
}
.ngcity:has(.nght-hero) .nght-cta h2 {color:#252525;}
.ngcity:has(.nght-hero) .nght-cta-grid>a {
  background:var(--ngh-green);
  color:#202020;
  border:1px solid #75aa3c;
}
.ngcity:has(.nght-hero) .nght-cta-grid>a:hover {background:#a4d675;color:#202020;}
.ngcity:has(.nght-hero) #city-community {background:#fff;}
.ngcity:has(.nght-hero) .ngcity-contact {background:#f2f3f2;}
.ngcity:has(.nght-hero) .ngcity-contact-form {border-top-color:var(--ngh-green);}

/* Additional services: preserve the asymmetrical editorial grid, replace
   multicolor/pastel backgrounds with white, graphite-gray and green tones. */
.ngcity:has(.nght-hero) .ngcity-more-services {
  background:#fff;
  border-top:1px solid #e2e3e2;
  border-bottom:1px solid #e2e3e2;
}
.ngcity:has(.nght-hero) .ngcity-more-head-main h2 {color:#232323;}
.ngcity:has(.nght-hero) .ngcity-more-head-main h2 em {color:#4c7e2b;}
.ngcity:has(.nght-hero) .ngcity-more-head-side {border-left-color:var(--ngh-green);}
.ngcity:has(.nght-hero) .ngcity-more-deco {color:var(--ngh-green);}
.ngcity:has(.nght-hero) .ngcity-more-link {
  border-color:#dce0db;
  box-shadow:none;
  background:#f6f7f6;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(1) {
  background:#e8f1de;border-color:#cbdcbe;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(2) {
  background:#ededed;border-color:#d9d9d9;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(3) {
  background:#fff;border-color:#d6d9d5;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(4) {
  background:#d9eaca;border-color:#c7dbb6;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(5) {
  background:#f1f2f1;border-color:#dedfde;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(6) {
  background:linear-gradient(110deg,#e0e5de,#edf2e9);
  border-color:#d0dacb;
}
.ngcity:has(.nght-hero) .ngcity-more-link:hover {
  border-color:var(--ngh-green);
  box-shadow:0 12px 28px rgba(28,39,25,.10);
}
.ngcity:has(.nght-hero) .ngcity-more-icon,
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(n) .ngcity-more-icon {
  background:#fff;
  color:#527b35;
  border:1px solid #d3ddca;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(1) .ngcity-more-icon,
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(6) .ngcity-more-icon {
  background:var(--ngh-green);
  color:#1f261c;
  border-color:#81b848;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(2) .ngcity-more-icon,
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(5) .ngcity-more-icon {
  background:#3f4240;
  color:#fff;
  border-color:#3f4240;
}
.ngcity:has(.nght-hero) .ngcity-more-copy strong {color:#242424;}
.ngcity:has(.nght-hero) .ngcity-more-copy>span {color:#525752;}
.ngcity:has(.nght-hero) .ngcity-more-index {color:#54783d;}
.ngcity:has(.nght-hero) .ngcity-more-action {color:#456b34;}
.ngcity:has(.nght-hero) .ngcity-more-arrow {
  border-color:#b7d2a1;
  background:#fff;
  color:#3b6826;
}
.ngcity:has(.nght-hero) .ngcity-more-link:nth-child(6) .ngcity-more-arrow {
  background:#84c041;
  border-color:#84c041;
  color:#25331d;
}
@media(max-width:600px){
  .ngcity:has(.nght-hero) .nght-hero .nght-hero-visual {
    box-shadow:6px 6px 0 #e2e6de !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .ngcity:has(.nght-hero) .ngcity-more-link:hover {transform:none;}
}
