@charset "UTF-8";

/* v61: negative space, a restrained palette, and one clear header contact action. */
.site-v61 { --lime: #06c755; }
.site-v61 .hero {
  background: #f5f6f3;
  color: #171d1b;
}
.site-v61 .hero::before {
  height: 150px;
  background: linear-gradient(180deg,rgba(245,246,243,.98),rgba(245,246,243,.79) 48%,rgba(245,246,243,0));
}
.site-v61 .hero::after {
  background:
    linear-gradient(90deg,#f5f6f3 0%,#f5f6f3 24%,rgba(245,246,243,.97) 38%,rgba(245,246,243,.73) 58%,rgba(245,246,243,.16) 78%,transparent 100%),
    linear-gradient(0deg,rgba(245,246,243,.45),transparent 18%);
}
.site-v61 .hero-wall {
  top: 11%;
  right: -1%;
  bottom: -5%;
  width: 64%;
}
.site-v61 .hero-wall-tile { background: #d5dad4; }
.site-v61 .hero-copy {
  top: 36%;
  left: 6%;
  width: min(1170px,88%);
  color: #171d1b;
}
.site-v61 .hero h1 {
  margin: 0;
  color: #171d1b;
  font-size: clamp(70px,7.4vw,112px);
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: -.092em;
}
.site-v61 .hero h1 .wipe-line:first-child .wipe-text {
  color: #252c28;
  font-size: .77em;
  font-weight: 700;
  letter-spacing: -.075em;
}
.site-v61 .hero h1 .wipe-line:last-child { margin-top: .04em; margin-left: .13em; }
.site-v61 .hero h1 .wipe-line:last-child .wipe-text,
.site-v61 .hero h1 em { color: #171d1b; }

.site-v61 .site-header { color: #171d1b; }
.site-v61 .site-header .header-frame { border-bottom-color: rgba(23,29,27,.23); }
.site-v61 .site-header .brand img { filter: brightness(0); }
.site-v61 .header-brand-note {
  border-left-color: rgba(23,29,27,.3);
  color: #4a524d;
}
.site-v61 .site-header .nav { order: 0; }
.site-v61 .site-header .nav-label { color: #171d1b; }
.site-v61 .site-header .nav-label + .nav-label::after { background: rgba(23,29,27,.22); }
.site-v61 .header-utility {
  order: 1;
  min-width: 143px;
  min-height: 54px;
  padding: 8px 16px 8px 19px;
  gap: 3px;
  border: 0;
  border-radius: 5px;
  background: #06c755;
  color: #073b23;
  box-shadow: 0 6px 17px rgba(13,40,26,.12);
}
.site-v61 .header-utility::before {
  content: "";
  position: absolute;
  top: 11px;
  bottom: 11px;
  left: 9px;
  width: 2px;
  background: #063b24;
}
.site-v61 .header-utility a { min-height: 21px; color: #073b23; }
.site-v61 .header-utility a:hover,
.site-v61 .header-utility a:focus-visible { color: #fff; }
.site-v61 .header-utility .fa-icon { width: 12px; height: 12px; }

.site-v61 .floating-consult {
  background: #f8f9f6;
  border-color: rgba(23,29,27,.14);
  box-shadow: 0 15px 48px rgba(20,27,23,.2);
}
.site-v61 .floating-consult::before {
  background: linear-gradient(135deg,#e8ebe6,#f4f6f2);
}
.site-v61 .floating-consult-photo img {
  bottom: 0;
  left: 4px;
  width: auto;
  height: 178px;
  max-width: none;
  object-fit: contain;
}
.site-v61 .floating-consult-label { color: #54635a; }
.site-v61 .floating-consult .hero-cta {
  border-color: #202a24;
  background: #202a24;
}
.site-v61 .floating-consult-close {
  top: 4px;
  right: 4px;
  width: 28px;
  min-width: 28px;
  height: 28px;
  min-height: 28px;
  padding: 0;
  border: 0;
  border-radius: 50% !important;
  background: transparent;
  color: #303a33;
  box-shadow: none;
}
.site-v61 .floating-consult-close .fa-icon { width: 12px; height: 12px; }
.site-v61 .floating-consult-close:hover { background: #e8ebe6; color: #171d1b; }

/* Keep green as a brand accent rather than repeating full-bleed green chapters. */
.site-v61 .purpose-v55__stage::before {
  background: linear-gradient(180deg,rgba(24,33,28,0),#18211c 38%,#18211c);
}
.site-v61 .purpose-v55__vision>p { color: #80d99d; }
.site-v61 .services { background: #18211c; }
.site-v61 .services-intro { background: #18211c; }
.site-v61 .services-intro::after {
  background: linear-gradient(180deg,#18211c 0%,transparent 20%,transparent 68%,#18211c 100%),linear-gradient(90deg,rgba(24,33,28,.77),rgba(24,33,28,.08) 72%);
}
.site-v61 .service-card[data-service="01"],
.site-v61 .service-card[data-service="03"] { background: #18211c; }
.site-v61 .service-card[data-service="01"]::before {
  background: linear-gradient(90deg,#18211c 0%,rgba(24,33,28,.94) 25%,rgba(24,33,28,.65) 44%,rgba(24,33,28,.03) 75%),linear-gradient(180deg,#18211c 0%,transparent 12%,transparent 85%,#18211c 100%);
}
.site-v61 .service-card[data-service="03"]::before {
  background: linear-gradient(0deg,#18211c 0%,rgba(24,33,28,.87) 24%,rgba(24,33,28,.08) 68%),linear-gradient(90deg,#18211c 0%,rgba(24,33,28,.8) 28%,transparent 75%);
}
.site-v61 .recruit { background: linear-gradient(115deg,#285443,#214b3c 66%,#193d32); }
.site-v61 .recruit-top>span { color: rgba(255,255,255,.12); }
.site-v61 .recruit-feature::after {
  background: linear-gradient(0deg,#214b3c 0%,rgba(33,75,60,.24) 30%,transparent 70%),linear-gradient(90deg,#285443 0%,transparent 43%);
}
.site-v61 .contact { background: #f3f4ef; }
.site-v61 .contact::after {
  background: linear-gradient(0deg,#18211c 0%,rgba(24,33,28,0) 100%);
}
.site-v61 .contact-scene::after {
  background: linear-gradient(0deg,#18211c 0%,rgba(24,33,28,.08) 23%,transparent 53%),linear-gradient(90deg,#f3f4ef 0%,rgba(243,244,239,.4) 47%,rgba(243,244,239,.1) 100%);
}
.site-v61 .site-footer { background: #18211c; }

@media (max-width: 800px) {
  .site-v61 .header-brand-note { display: none; }
  .site-v61 .menu-toggle {
    order: 1;
    margin-left: auto;
    border-color: rgba(23,29,27,.45);
    background: rgba(255,255,255,.65);
    color: #171d1b;
  }
  .site-v61 .header-right { order: 2; margin-left: 0; }
  .site-v61 .header-utility {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    min-width: 45px;
    height: 45px;
    min-height: 45px;
    padding: 0;
  }
  .site-v61 .header-utility::before,
  .site-v61 .header-utility > span,
  .site-v61 .header-utility a span { display: none; }
  .site-v61 .header-utility a { display: grid; place-items: center; width: 100%; height: 100%; }
  .site-v61 .header-utility .fa-icon { width: 18px; height: 18px; }
  .site-v61 .site-header .nav-label { color: #171d1b; }
  .site-v61 .hero-copy { top: 32%; }
  .site-v61 .hero h1 { font-size: clamp(58px,8vw,78px); }
}
@media (max-width: 700px) {
  .site-v61 .hero::before { height: 110px; }
  .site-v61 .hero::after {
    background: linear-gradient(180deg,#f5f6f3 0%,rgba(245,246,243,.95) 20%,rgba(245,246,243,.77) 39%,rgba(245,246,243,.16) 70%,rgba(245,246,243,.52) 100%);
  }
  .site-v61 .hero-wall { top: 10%; right: -4%; width: 90%; }
  .site-v61 .hero-copy { top: 24%; left: 6%; width: 90%; }
  .site-v61 .hero h1 { font-size: clamp(35px,9.8vw,58px); line-height: 1.22; }
  .site-v61 .hero h1 .wipe-line:first-child .wipe-text { font-size: .86em; }
  .site-v61 .hero h1 .wipe-line:last-child { margin-left: 0; }
  .site-v61 .floating-consult-photo img { left: 2px; width: auto; height: 146px; }
  .site-v61 .purpose-v55__stage::before {
    background: linear-gradient(180deg,transparent,#18211c 31%,#18211c 100%);
  }
  .site-v61 .service-card[data-service="01"]::before,
  .site-v61 .service-card[data-service="03"]::before {
    background: linear-gradient(180deg,#18211c 0%,rgba(24,33,28,.96) 30%,rgba(24,33,28,.35) 60%,rgba(24,33,28,.07) 79%,#18211c 100%);
  }
  .site-v61 .recruit-feature::after {
    background: linear-gradient(0deg,#214b3c 0%,transparent 50%),linear-gradient(180deg,#285443 0%,transparent 28%);
  }
  .site-v61 .contact-scene::after {
    background: linear-gradient(180deg,#f3f4ef 0%,transparent 30%,transparent 75%,#f3f4ef 100%),rgba(243,244,239,.1);
  }
}
@media (max-width: 340px) {
  .site-v61 .floating-consult-photo img { left: -5px; height: 142px; }
}
