:root {
  --friendly-bg: #fbf8f1;
  --friendly-surface: #fffefb;
  --friendly-soft: #eaf4ed;
  --friendly-primary: #24734d;
  --friendly-primary-dark: #195a3a;
  --friendly-heading: #243b31;
  --friendly-text: #526158;
  --friendly-muted: #6b776f;
  --friendly-accent: #f2a33a;
  --friendly-border: #d9e6dd;
  --friendly-warm: #fff1d8;
}

html,
body,
body.t-body,
body #allrecords {
  background: var(--friendly-bg) !important;
  color: var(--friendly-text) !important;
}

body,
button,
input,
textarea,
select {
  font-family: Ubuntu, Arial, sans-serif;
}

::selection {
  background: #cfe7d7;
  color: var(--friendly-heading);
}

body #allrecords :is(h1, h2, h3, h4, h5, h6, .t-title, .t-heading),
body #allrecords :is(h1, h2, h3, h4, h5, h6, .t-title, .t-heading) :is(span, strong) {
  color: var(--friendly-heading) !important;
}

body #allrecords :is(.t-text, .t-descr, p, li),
body #allrecords :is(.t-text, .t-descr, p, li) :is(span, div) {
  color: var(--friendly-text) !important;
}

body #allrecords a:not(.master-hero-button):not(.service-call):not(.t-btn):not(.t-btnflex):not(.local-contacts-phone),
body #allrecords a:not(.master-hero-button):not(.service-call):not(.t-btn):not(.t-btnflex):not(.local-contacts-phone) span {
  color: var(--friendly-primary) !important;
}

/* Header and brand */
body #allrecords :is(.t228, .t228__maincontainer, .t282__container),
body #allrecords :is(#rec459612420, #rec460457452, #rec461043741, #rec461046026) {
  background: var(--friendly-bg) !important;
}

body #allrecords :is(#rec459612420, #rec460457452, #rec461043741, #rec461046026) {
  border-bottom: 1px solid rgba(36, 115, 77, 0.12);
}

body #allrecords .site-master-brand,
body #allrecords .site-master-brand > span,
body #allrecords .t-menu__link-item {
  color: var(--friendly-heading) !important;
}

body .t-menuburger span {
  background-color: var(--friendly-primary) !important;
}

/* Hero */
body #rec459614656 {
  background: linear-gradient(145deg, #fffdf8 0%, #f0f7f1 100%) !important;
}

body #rec459614656 .master-hero h1,
body #rec459614656 .master-hero-description strong {
  color: var(--friendly-primary) !important;
}

body #rec459614656 .master-hero h1 span {
  color: var(--friendly-accent) !important;
}

body #rec459614656 .master-hero-description,
body #rec459614656 figcaption span {
  color: var(--friendly-text) !important;
}

body #rec459614656 .master-hero-person img {
  border: 9px solid #dfeee4;
  box-shadow: 0 18px 42px rgba(36, 59, 49, 0.12);
}

/* Primary calls to action */
body #allrecords :is(.master-hero-button, .service-call, .t-submit, .t-btn, .t-btnflex),
body #allrecords .master-request button,
body #customer-reviews-more,
body #mobile-call-button,
body:not(.t-body) .back {
  background: var(--friendly-primary) !important;
  border-color: var(--friendly-primary) !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(36, 115, 77, 0.2) !important;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

body #allrecords :is(.master-hero-button, .service-call, .t-submit, .t-btn, .t-btnflex) :is(span, div),
body #allrecords .master-request button :is(span, div),
body #customer-reviews-more :is(span, div),
body #mobile-call-button span {
  color: #fff !important;
}

body #allrecords :is(.master-hero-button, .service-call, .t-submit, .t-btn, .t-btnflex):hover,
body #allrecords .master-request button:hover,
body #customer-reviews-more:hover,
body #mobile-call-button:hover,
body:not(.t-body) .back:hover {
  background: var(--friendly-primary-dark) !important;
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(36, 115, 77, 0.26) !important;
}

body #allrecords :is(a, button, input):focus-visible,
body #mobile-call-button:focus-visible,
body:not(.t-body) :is(a, button):focus-visible {
  outline: 3px solid var(--friendly-accent) !important;
  outline-offset: 4px !important;
}

/* Benefits */
body #allrecords .mobile-benefit {
  background: var(--friendly-soft) !important;
  border: 1px solid var(--friendly-border);
  box-shadow: 0 5px 14px rgba(36, 59, 49, 0.05);
}

body #allrecords .mobile-benefit img {
  box-sizing: border-box;
  padding: 0;
  border-radius: 0;
  background: transparent;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(37%) sepia(23%) saturate(1218%) hue-rotate(98deg) brightness(91%) contrast(91%);
}

body #allrecords .mobile-benefit h3 {
  color: var(--friendly-primary) !important;
}

/* Services and content sections */
body #allrecords .service-section,
body #allrecords :is(#rec459612428, #rec460828087, #rec460827628),
body #allrecords :is(#rec461041660, #rec461041653) {
  background: var(--friendly-bg) !important;
}

body #allrecords .service-card {
  background: var(--friendly-surface) !important;
  border-color: var(--friendly-border) !important;
  box-shadow: 0 8px 24px rgba(36, 59, 49, 0.07) !important;
}

body #allrecords .service-card:hover {
  border-color: #bdd6c5 !important;
  box-shadow: 0 12px 30px rgba(36, 59, 49, 0.11) !important;
}

body #allrecords .service-price,
body #allrecords .service-price span {
  color: var(--friendly-primary) !important;
}

body #allrecords .service-card li::marker {
  color: var(--friendly-accent);
}

/* About: preserve the warm background while improving long-form readability. */
body #allrecords :is(#rec459612428, #rec460828087, #rec460827628) .t165__text {
  color: #3f5047 !important;
  font-weight: 400 !important;
  opacity: 1 !important;
}

/* Reviews */
body #rec459824823 .customer-reviews-grid {
  gap: 14px !important;
}

body #rec459824823 .customer-review,
body #rec459824823 .customer-review:first-child,
body #rec459824823 .customer-review:last-child {
  background: var(--friendly-surface) !important;
  border: 1px solid var(--friendly-border) !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 24px rgba(36, 59, 49, 0.065) !important;
}

body #rec459824823 .review-avatar {
  background: var(--friendly-primary) !important;
  color: #fff !important;
}

body #rec459824823 .review-author-name {
  color: var(--friendly-heading) !important;
}

body #rec459824823 :is(.review-level, .customer-review time) {
  color: var(--friendly-muted) !important;
}

body #rec459824823 .review-stars,
body #rec459824823 .review-stars span {
  color: #c97808 !important;
}

body #rec459824823 .review-work-thumbnails .review-work-item {
  border: 3px solid #eef4ef;
}

/* Request form */
body #allrecords .request-section {
  background: var(--friendly-warm) !important;
  border: 1px solid #f0d4aa;
  box-shadow: 0 10px 28px rgba(105, 78, 36, 0.08);
}

body #allrecords .request-section h2 {
  color: var(--friendly-heading) !important;
}

body #allrecords .master-request,
body #allrecords .master-request label,
body #allrecords .master-request span {
  color: var(--friendly-text) !important;
}

body #allrecords .master-request input[type="tel"] {
  border-color: #b8d0c0 !important;
  background: var(--friendly-surface) !important;
  color: var(--friendly-heading) !important;
}

body #allrecords .master-request input[type="tel"]:focus {
  border-color: var(--friendly-primary) !important;
  box-shadow: 0 0 0 4px rgba(36, 115, 77, 0.12);
}

body #allrecords .master-request input[type="checkbox"] {
  accent-color: var(--friendly-primary) !important;
}

/* Contacts and footer */
body #allrecords #rec459612438,
body #allrecords #rec459612438 .local-contacts {
  background: var(--friendly-soft) !important;
}

body #allrecords #rec459612438 :is(h2, .t-text, .local-contacts-phone, a) {
  color: var(--friendly-heading) !important;
}

body #allrecords #rec459612439,
body #allrecords :is(#rec707568270, #rec707568271, #rec707568272),
body #allrecords #rec707568271 .tn-atom {
  background: var(--friendly-primary-dark) !important;
  background-color: var(--friendly-primary-dark) !important;
}

body #allrecords #rec707568271 :is(.t396__artboard, .t396__carrier, .t396__filter) {
  background: var(--friendly-primary-dark) !important;
  background-color: var(--friendly-primary-dark) !important;
}

body #allrecords #rec459612439 :is(.t-title, .t-text, .t-descr, p, li, a, span, div),
body #allrecords #rec707568271 .tn-atom {
  color: #eef8f1 !important;
}

body #allrecords #rec459612439 a:hover {
  color: #ffd28e !important;
}

body #allrecords #rec459612439 .site-master-brand > span {
  color: #fff !important;
}

body .t190__button {
  background: var(--friendly-primary) !important;
  border-radius: 50% !important;
}

body .t190__button svg path {
  fill: #fff !important;
}

/* Privacy page */
body #allrecords #rec461041653 .t106__text,
body #allrecords #rec461041660 .t033__text {
  color: var(--friendly-text) !important;
}

/* Success page */
body:not(.t-body) {
  background: var(--friendly-bg) !important;
  color: var(--friendly-text) !important;
}

body:not(.t-body) main {
  box-sizing: border-box;
  margin: 24px;
  padding: 42px 30px;
  border: 1px solid var(--friendly-border);
  border-radius: 26px;
  background: var(--friendly-surface);
  box-shadow: 0 18px 45px rgba(36, 59, 49, 0.09);
}

body:not(.t-body) h1,
body:not(.t-body) a {
  color: var(--friendly-heading);
}

body:not(.t-body) .check {
  color: var(--friendly-primary);
}

body:not(.t-body) .notice {
  background: var(--friendly-warm);
  color: var(--friendly-text);
}

body:not(.t-body) .back {
  color: #fff !important;
}

@media (max-width: 639px) {
  body #rec459614656 {
    background: linear-gradient(180deg, #fffdf8 0%, #f1f7f2 100%) !important;
  }

  body #rec459614656 .master-hero-person img {
    border-width: 6px;
  }

  body #rec459824823 .customer-reviews-grid {
    gap: 10px !important;
  }

  body #rec459824823 .customer-review {
    border-radius: 15px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body #allrecords :is(a, button),
  body #mobile-call-button {
    transition: none !important;
  }
}
