:root {
  --ink: #292f2d;
  --paper: #f3eee4;
  --lime: #bda36d;
  --muted: #626966;
  --line: rgba(41, 47, 45, .14);
}

/* Show the supplied mark at its natural ratio, without cropping the WEB · QR line. */
.brand-logo { display: block; width: 158px; height: auto; max-height: 68px; object-fit: contain; border-radius: 0; flex: none; }
.footer-logo { display: block; width: 146px; height: auto; max-height: 64px; object-fit: contain; border-radius: 0; }

.navlinks a:hover,
.navlinks a[aria-current="page"],
.back-top,
.text-link:hover,
.eyebrow,
.hero-kicker,
.home-link-card small,
.home-feature-copy .eyebrow,
.service-page-card > span,
.service-page-card > b,
.service-step > small,
.case-card small,
.metric-list small,
.contact-channel span,
.modal-top small,
.faq-question span:last-child {
  color: #8b7040;
}

.hero-kicker::before,
.scroll-hint::after { background: #bda36d; }
.hero h1 em,
.intro h2 em,
.home-intro h2 em,
.page-hero h1 em,
.home-link-card small,
.case-insight-copy h2 em,
.calc-intro h2 em,
.home-feature-copy .eyebrow,
.round-arrow,
.project-open {
  color: #8b7040;
}
.nav-cta { border-color: #bda36d; color: #292f2d; }
.nav-cta:hover { background: #292f2d; border-color: #292f2d; color: #f7f4eb; }
.btn-primary,
.btn-dark,
.mobile-cta a { background: #292f2d; border-color: #292f2d; color: #f7f4eb; }
.btn-primary:hover,
.btn-dark:hover,
.mobile-cta a:hover { background: #3a433f; border-color: #3a433f; color: #f7f4eb; }
.btn-primary span,
.back-top { color: #bda36d; }
.round-arrow:hover { background: #e8dfcd; color: #5b492a; }
.project-info .tag { color: #80663a; border-color: #d7c69e; background: #f3eee4; }
.contact-details a:hover,
.contact-details a.contact-channel:hover { border-color: #bda36d; }
.contact-channel span { color: #8b7040; }
.form input:focus,
.form textarea:focus,
.form select:focus,
.calc-form input:focus { border-color: #bda36d; box-shadow: 0 0 0 3px rgba(189,163,109,.16); }
.service-page-card:hover { border-color: #d7c69e; }
.home-link-card:hover,
.case-card:hover { border-color: #d7c69e; }
.offer-featured { border-color: #c8b381; }
.measurement-note { border-left-color: #bda36d; }
.skip-link { background: #292f2d; color: #f7f4eb; }
.site-header a:focus-visible,
.site-header button:focus-visible,
.project-open:focus-visible,
.faq-question:focus-visible,
.nav a:focus-visible,
.nav button:focus-visible { outline-color: #bda36d; }

@media (max-width: 620px) {
  .brand-logo { width: 132px; max-height: 56px; }
  .footer-logo { width: 118px; max-height: 52px; }
}
