/* The three accent colors are sampled from the Forest of Knowledge wordmark.
   Darker companion colors keep small text and controls readable. */
:root {
  --fok-mint: #89bfb4;
  --fok-leaf: #bacf6a;
  --fok-sky: #62b4ee;
  --fok-ink: #243f4b;
  --fok-text: #4c6470;
  --fok-muted: #5e7380;
  --fok-blue: #246c9e;
  --fok-blue-hover: #1b557e;
  --fok-green: #416c5e;
  --fok-focus: #246c9e;
  --fok-sky-soft: #edf7fe;
  --fok-mint-soft: #edf7f3;
  --fok-leaf-soft: #f4f8e8;
  --fok-mint-strong: #cce6df;
  --fok-border: #d2e3e7;
  --fok-control-border: #718b99;
  --fok-display: Georgia, 'Times New Roman', serif;
  --fok-body: Rubik, Arial, sans-serif;
}
body { color: var(--fok-ink); background: #fff; font-family: var(--fok-body); }
::selection { background: var(--fok-leaf); color: var(--fok-ink); }
.project-page h1, .project-page h2, .project-page h3,
.scheduler-page h1, .scheduler-page h2, .main-title h2,
.newsletter .newsletter-inner h2, #privacy h4 {
  font-family: var(--fok-display); font-weight: 700; letter-spacing: -.035em;
  text-transform: none;
}
.project-page .project-name, .forest-home .forest-eyebrow,
.forest-home .ecosystem-label, .forest-home .product-category {
  text-transform: none; letter-spacing: .015em; font-size: 13px;
}
.forest-home .forest-note { font-size: 13px; }
.forest-home .ecosystem-label { font-size: 12px; }
.forest-home .ecosystem-products a { border-top: 3px solid var(--fok-mint); }
.forest-home .ecosystem-products a:nth-child(2) { border-top-color: var(--fok-leaf); }
.forest-home .ecosystem-products a:nth-child(4) { border-top-color: var(--fok-sky); }
.forest-home .ecosystem-foundation {
  background: var(--fok-sky); color: var(--fok-ink);
}
.ecosystem-foundation .foundation-mark, .ecosystem-foundation div > span { color: var(--fok-ink); }
.forest-home .forest-foundation { background: var(--fok-leaf-soft); color: var(--fok-ink); border-block: 1px solid var(--fok-leaf); }
.forest-foundation .forest-eyebrow { color: var(--fok-green); }
.forest-foundation p:not(.forest-eyebrow) { color: var(--fok-text); }
.forest-foundation a { color: var(--fok-blue); }
.project-footer { background: var(--fok-mint-soft); }
.creator-blueprint .blueprint-top { background: var(--fok-sky); color: var(--fok-ink); }
.blueprint-top div > span { color: var(--fok-ink); }

/* Bring the original contact, privacy and subscription templates into the same brand. */
.contact, .services, .newsletter { background: #fff; }
.contact .flaticon-lotus, .footer .flaticon-lotus, .main-title .separator { display: none; }
.main-title h2 { color: var(--fok-ink); margin-bottom: 24px; }
.contact .contact-boxes .contact-box {
  background: var(--fok-mint-soft); color: var(--fok-ink);
  border: 1px solid var(--fok-border); border-top: 4px solid var(--fok-mint);
}
.contact .contact-boxes .row > :nth-child(2) .contact-box { background: var(--fok-leaf-soft); border-top-color: var(--fok-leaf); }
.contact .contact-boxes .row > :nth-child(3) .contact-box { background: var(--fok-sky-soft); border-top-color: var(--fok-sky); }
.contact .contact-boxes .contact-box a, #privacy a { color: var(--fok-blue); text-decoration: underline; text-underline-offset: 3px; }
.contact .contact-form .form-group .form-control { color: var(--fok-ink); border-color: var(--fok-control-border); }
.contact .contact-form .form-group label { color: var(--fok-text); }
.contact .contact-form .form-group .form-control:focus ~ label { background: none; color: var(--fok-blue); }
.contact .contact-form .form-group .input-border { background: var(--fok-blue); }
.main-btn, .newsletter .newsletter-inner .main-btn, .scroll-top {
  background: var(--fok-blue); color: #fff; border: 1px solid var(--fok-blue);
  box-shadow: none;
}
.main-btn::before, .scroll-top::before { background: var(--fok-blue-hover); }
.main-btn:hover, .newsletter .newsletter-inner .main-btn:hover { background: var(--fok-blue-hover); border-color: var(--fok-blue-hover); box-shadow: none; }
.main-btn span, .newsletter .newsletter-inner .main-btn span { background: none; color: #fff; }
.main-btn:focus-visible, .newsletter input:focus-visible, .contact input:focus-visible, .contact textarea:focus-visible {
  outline: 3px solid var(--fok-focus); outline-offset: 4px;
}
.newsletter .newsletter-inner { background: var(--fok-sky-soft); border: 1px solid var(--fok-border); }
.newsletter .newsletter-inner h2 { color: var(--fok-ink); }
.newsletter .newsletter-inner p { color: var(--fok-text); }
.newsletter .newsletter-inner .form-control { color: var(--fok-ink); border: 1px solid var(--fok-control-border); }
.footer { background: var(--fok-mint-soft); color: var(--fok-text); }
.footer .footer-top { border-color: var(--fok-border); }
.footer .footer-top .footer-item h4 { color: var(--fok-ink); }
.footer .footer-top ul li, .footer .footer-top .footer-item ul li a, .footer .footer-bottom .copyright p { color: var(--fok-text); }
.footer .footer-top .footer-item ul li a:hover { color: var(--fok-blue); }
.footer .footer-bottom .copyright p span { color: var(--fok-green); background: none; font-family: var(--fok-body); }
.loading .loading-content .inner-item { background: var(--fok-mint); }
.loading .loading-content .inner-item:nth-child(2n) { background: var(--fok-sky); }
.loading .loading-content .inner-item:nth-child(3n) { background: var(--fok-leaf); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
