:root {
  --ink: #f4f8f8;
  --ink-soft: #c6d1d4;
  --paper: #090d10;
  --white: #12191e;
  --line: #29353b;
  --muted: #9aabb1;
  --teal: #1fd5c5;
  --teal-dark: #45e0d2;
  --lime: #b9ee2b;
  --blue: #4b9ce8;
  --amber: #f0b84a;
  --red: #ef6b6b;
  --shadow: 0 20px 54px rgba(0, 0, 0, 0.34);
}

body {
  background: var(--paper);
  color: var(--ink);
}

.site-header {
  border-bottom-color: rgba(68, 84, 92, 0.72);
  background: rgba(9, 13, 16, 0.94);
}

.brand small,
.main-nav a,
.nav-more summary {
  color: #a4b3b8;
}

.main-nav a:hover,
.main-nav a.is-active,
.nav-more summary:hover {
  background: #15272a;
  color: var(--teal);
}

.nav-dropdown,
.main-nav {
  border-color: var(--line);
  background: #0f1519;
}

.menu-toggle {
  border-color: var(--line);
  background: #12191e;
}

.menu-toggle span {
  background: var(--ink);
}

.button--primary {
  background: var(--lime);
  color: #11180a;
  box-shadow: 0 12px 28px rgba(185, 238, 43, 0.18);
}

.button--dark {
  border-color: #39474e;
  background: #f4f8f8;
  color: #0b1114;
}

.button--light {
  border-color: #344249;
  background: #12191e;
  color: var(--ink);
}

.home-hero {
  background-color: #06090b;
}

.home-hero::before {
  background: rgba(3, 7, 9, 0.62);
}

.home-hero .button--light {
  border-color: rgba(255, 255, 255, 0.25);
  background: rgba(10, 16, 19, 0.72);
}

.hero-facts div {
  border-left-color: var(--lime);
}

.page-hero {
  border-bottom-color: var(--line);
  background: #0d1317;
}

.page-hero__image {
  border-color: #344249;
  background: #05080a;
  box-shadow: 0 28px 60px rgba(0, 0, 0, 0.42);
}

.page-hero__image img {
  opacity: 0.94;
}

.breadcrumbs,
.lead,
.muted,
.service-card__body p,
.offer-card li,
.check-list li,
.price-card p,
.steps p,
.faq-list details p,
.form-note {
  color: var(--muted);
}

.eyebrow,
.text-link,
.offer-card__number,
.price-card__label,
.steps span {
  color: var(--teal);
}

.price-note {
  border-left-color: var(--lime);
  background: #1a2412;
  color: #d9f89a;
}

.market-strip {
  border-color: var(--line);
  background: var(--line);
}

.market-strip article,
.section--white,
.service-card,
.offer-card,
.portfolio-card,
.module-placeholder,
.price-card,
.steps li,
.faq-list details,
.contact-panel,
.lead-form {
  background: var(--white);
}

.market-strip strong {
  color: var(--lime);
}

.market-strip span,
.site-footer p,
.site-footer a {
  color: #94a5aa;
}

.section--white {
  border-color: var(--line);
}

.service-card,
.offer-card,
.price-card,
.pricing-table,
.faq-list details,
.contact-panel,
.lead-form {
  border-color: var(--line);
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.18);
}

.service-card {
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.service-card:hover {
  transform: translateY(-3px);
  border-color: #3d807c;
  box-shadow: 0 22px 44px rgba(0, 0, 0, 0.32);
}

.service-card img {
  opacity: 0.92;
  transition: opacity 0.2s ease, transform 0.25s ease;
}

.service-card:hover img {
  opacity: 1;
  transform: scale(1.015);
}

.service-card__footer,
.footer-bottom {
  border-color: var(--line);
}

.offer-card--accent {
  border-top-color: var(--lime);
}

.offer-card li::before,
.check-list li::before {
  background: var(--lime);
}

.pricing-table {
  background: var(--white);
}

.pricing-table th {
  background: #162126;
  color: #d5dfe1;
}

.pricing-table th,
.pricing-table td {
  border-bottom-color: var(--line);
}

.steps li {
  border-top-color: var(--teal);
}

.cta-band {
  border-top: 1px solid #315052;
  border-bottom: 1px solid #315052;
  background: #102526;
}

.lead-form input,
.lead-form textarea,
.lead-form select {
  border-color: #35434a;
  background: #0b1115;
  color: var(--ink);
}

.lead-form label span {
  color: #bdc9cc;
}

.contact-list a {
  border-color: var(--line);
  background: #0c1216;
}

.contact-list a:hover {
  border-color: var(--teal);
  background: #102323;
}

.floating-contacts a {
  border-color: transparent;
  background: transparent;
}

.site-footer {
  border-top-color: #253139;
  background: #05080a;
}

.portfolio-tag,
.portfolio-disclaimer {
  border-color: var(--line);
  color: #9cabb0;
}

.portfolio-card__media,
.portfolio-meta li {
  border-color: var(--line);
  background: #0b1115;
}

.module-placeholder__status {
  border-color: #315e5a;
  background: #102323;
  color: var(--lime);
}

.seo-links {
  border-top-color: var(--line);
  background: #0b1115;
}

.seo-links__nav a {
  color: #9cabb0;
}

.seo-links__nav a:hover {
  color: var(--lime);
}

@media (max-width: 780px) {
  .home-hero::before {
    background: rgba(3, 7, 9, 0.76);
  }
}
