/* Variant 1. Light neutral surfaces with restrained green accents. */
:root {
  --green: #3c5b4c;
  --deep: #304c3f;
  --ink: #293a31;
  --muted: #59685f;
  --line: #d6ded6;
  --pale: #edf0ea;
  --lime: #dce4d9;
}

body { background: #fafbf8; }
::selection { background: #cddbcc; color: #263e30; }
.button-green { background: var(--green); color: #fff; }
.button-green:hover { background: var(--deep); }
.button-white { background: #f9faf7; color: var(--green); }
.button-white:hover { background: #edf1e9; }
.button:focus-visible,a:focus-visible,summary:focus-visible {
  outline-color: #466552;
}

.hero-animated {
  background: radial-gradient(ellipse at 82% 30%,#d1ddd1 0%,transparent 58%),
    linear-gradient(120deg,#f0f2eb,#e2e9df);
  color: var(--ink);
  box-shadow: 0 24px 45px -35px #304c3f30;
}
.hero-animated h1>span { color: #47694f; }
.hero-animated .hero-description { color: var(--muted); }
.hero-mesh { background-image: radial-gradient(ellipse at 75% 50%,#a6bda733,transparent 65%); }
.hero-mesh::after { background: #f4f6ec66; }
.hero-actions .button { background: var(--green); color: #fff; }
.hero-actions .button:hover { background: var(--deep); }
.hero-actions .button>span { background: #ffffff12; }
.hero-services,.hero-services:hover { color: var(--green); }
.hero-services>span { border-color: #b5c5b7; }
.hero-services:hover>span { background: #ffffff80; }
.scene-data-label { color: #506a59; }
.scene-analysis-note { background: #405e4e; border-color: #6f8774; }
.scene-analysis-note strong { color: #fff; }
.scene-analysis-note small { color: #e0e8df; }
.scene-clarity-note { background: #e3eade; color: #354f3d; }
.scene-clarity-note small { color: #52654f; }
.scene-note-check { border-color: #81967d; }
.hero-process,.hero-process span { color: #536b59; }
.hero-process span.active { color: #263e30; }
.hero-foundation { border-color: #bac9b98c; }
.foundation-value,.foundation-copy,.foundation-place { color: var(--green); }
.foundation-copy small,.foundation-place small { color: var(--muted); }
.foundation-year>.ui-icon,.foundation-pin { color: #5a735d; }
.foundation-pin { background: #ffffff66; border-color: #c2d0c0; }

.about { background: #edf1e9; }
.disclosure-teaser { background: #e8eee4; }
.page-intro { background: #edf1e9; }
.site-footer { background: #edf0e9; color: var(--ink); }
.site-footer .brand-mark { background: var(--green); }
.site-footer .footer-registration dt,.site-footer .footer-company-name small,
.site-footer .footer-bottom,.site-footer .footer-position { color: var(--muted); }

/* Lighten the large invitation and page-introduction surfaces together. */
.contact,.svc-hero,.svc-result,.company-hero,.company-invitation,
.connect-hero,.reading-hero {
  background: radial-gradient(ellipse at 100% 0,#dae3d7,transparent 65%),#e9eee5;
  color: var(--ink);
}
.contact h2,.svc-hero h1,.svc-result h2,.company-hero h1,
.company-hero h1 span,.company-invitation h2,.connect-hero h1,
.reading-hero h1 { color: var(--green); }
.contact p,.contact .second-phone,.svc-lead,.svc-hero-note,
.svc-result p,.company-hero-copy>p,.company-invitation p,
.connect-lead,.connect-location,.reading-hero-grid>div>p { color: var(--muted); }
.contact .text-button,.svc-jump a,.svc-jump a:hover { color: var(--green); }
.contact-mail { border-color: #b4c3b3; }
.svc-hero .breadcrumbs,.svc-hero .breadcrumbs a,.company-hero .breadcrumbs,
.connect-hero .breadcrumbs,.reading-hero .breadcrumbs { color: #536b57; }
.svc-hero .button,.company-hero .button,.company-invitation .button,
.connect-hero .button { background: var(--green); color: #fff; }
.svc-hero .button:hover,.company-hero .button:hover,
.company-invitation .button:hover,.connect-hero .button:hover { background: var(--deep); }
.svc-jump a,.svc-result-mark { border-color: #c0cebb; }
.svc-result-mark { color: #607959; background: #ffffff55; }
.svc-catalog-map>a { background: #ffffff60; border-color: #c1cfbc; }
.svc-catalog-map>a:hover { background: #fff; }
.svc-catalog-map a>span:last-child { color: var(--muted); }
.svc-scene-flow { color: #526c54; }
.svc-floating { background: #dce5d6; color: #324e37; }
.company-established>strong { color: var(--green); }
.company-established small,.company-home-city small,
.company-hero-photo figcaption { color: var(--muted); }
.company-hero-photo { background: #dbe4d5; border-color: #c1ceba; }
.company-established,.company-home-city { border-color: #bdcbb7; }
.connect-location .ui-icon { color: #5b7556; }
