:root {
  --forest: #315848;
  --forest-soft: #4a705b;
  --forest-light: #8eaa9a;
  --forest-wash: rgba(49, 88, 72, 0.1);
  --forest-line: rgba(49, 88, 72, 0.42);
}

/* Rounded portfolio cards */
.project-image {
  border-radius: 28px !important;
  overflow: hidden !important;
  clip-path: inset(0 round 28px);
  isolation: isolate;
  transition: box-shadow 280ms ease, transform 280ms ease;
}

.project-image img {
  border-radius: inherit !important;
}

.project:hover .project-image {
  box-shadow: 0 20px 52px rgba(49, 88, 72, 0.2);
}

.project:nth-child(1) .project-image {
  background-image: url("/GAAG%20Inc..JPG");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.project:nth-child(1) .project-image > img {
  opacity: 0 !important;
}

.project:nth-child(1) .project-image::before,
.project:nth-child(1) .project-image::after {
  content: none !important;
  display: none !important;
}

.project-image > span {
  color: var(--forest) !important;
  background: var(--ivory) !important;
  border: 1px solid var(--forest-line);
  border-radius: 10px;
}

/* Rounded buttons */
.button {
  border-radius: 999px !important;
}

.header-cta {
  padding: 11px 18px !important;
  border: 1px solid var(--copper) !important;
  border-radius: 999px !important;
  transition: color 180ms ease, background 180ms ease, border-color 180ms ease;
}

.header-cta:hover {
  color: #fff;
  background: var(--copper);
}

.menu-button,
.hero-scroll,
.back-to-top {
  border-radius: 50% !important;
}

/* Forest-green brand accents */
.story-section .eyebrow,
.services-section .eyebrow,
.philosophy-section .eyebrow,
.process-section .eyebrow,
.about-section .eyebrow {
  color: var(--forest) !important;
}

.story-heading h2 {
  color: var(--forest) !important;
}

.story-copy {
  border-left-color: var(--forest) !important;
}

.services-list li span {
  color: var(--forest) !important;
}

.philosophy-title {
  border-right-color: var(--forest) !important;
}

.process-section blockquote {
  border-left-color: var(--forest) !important;
}

.about-copy::before {
  background: var(--forest) !important;
}

.image-index {
  background: rgba(49, 88, 72, 0.92) !important;
  border-radius: 10px;
}

.process-icon {
  color: var(--forest);
  background: var(--forest-wash);
  border-color: var(--forest-line) !important;
  border-radius: 12px;
}

.process-icon svg {
  color: inherit;
}

.process-steps article > span,
.principles span {
  color: var(--forest) !important;
}

.text-link {
  color: var(--forest) !important;
  border-bottom-color: var(--forest) !important;
}

.desktop-nav a::after,
.footer-links a::after {
  background: var(--forest) !important;
}

.button-outline:hover {
  color: #fff !important;
  background: var(--forest) !important;
  border-color: var(--forest) !important;
}

.mobile-menu nav a span {
  color: var(--forest) !important;
}

.back-to-top:hover {
  color: #fff !important;
  background: var(--forest) !important;
  border-color: var(--forest) !important;
}

.site-footer::before {
  position: absolute;
  top: 0;
  right: 5vw;
  left: 5vw;
  height: 1px;
  content: "";
  background: linear-gradient(90deg, transparent, var(--forest) 18%, var(--forest) 82%, transparent);
}

.site-footer > p:not(.copyright) {
  color: var(--forest-light);
}

@media (max-width: 900px) {
  .philosophy-title {
    border-bottom-color: var(--forest) !important;
  }
}
