/* Site-wide refinements for Elementor pages outside the standalone homepage. */
#sar-header { position: sticky; top: 0; z-index: 1000; scroll-margin-top: 104px; }
#sar-header .elementor-widget-button .elementor-button {
  color: #30251e; font-size: 12px; font-weight: 600; letter-spacing: .09em;
}
#sar-header .elementor-widget-button .elementor-button,
#sar-header .elementor-widget-button .elementor-button *,
#sar-header .sar-nav-home-link { font-size: 12px !important; letter-spacing: .09em !important; }
#sar-header .elementor-widget-button { --order: 0 !important; order: 0 !important; }
#sar-header .sar-nav-home-link {
  min-height: 42px; padding: 10px 12px; font-size: 12px; font-weight: 600; letter-spacing: .09em;
}
#sar-header .elementor-widget-button .elementor-button:hover,
#sar-header .sar-nav-home-link:hover { color: #8f633d; }
#sar-footer { color: #40352d; }
#sar-footer .elementor-widget-text-editor,
#sar-footer .elementor-widget-text-editor p,
#sar-footer .elementor-widget-text-editor a { color: #40352d; font-size: 13px; font-weight: 500; line-height: 1.65; }
#sar-footer .elementor-widget-heading .elementor-heading-title { color: #241a15; font-size: 11px; font-weight: 600; letter-spacing: .15em; }
#sar-footer a { text-decoration-thickness: 1px; text-underline-offset: 3px; }
#sar-header .elementor-widget-button .elementor-button {
  color: #30251e; font-family: var(--sar-font-sans, Inter, Arial, sans-serif); font-size: 11px; font-weight: 600;
  letter-spacing: .11em; line-height: 1.25; white-space: nowrap;
}
#sar-header .elementor-widget-button .elementor-button:hover,
#sar-header .elementor-widget-button .elementor-button:focus-visible { color: #8f633d; }
#sar-header .sar-nav-home-widget { flex: 0 0 auto; order: -1 !important; }
#sar-header .sar-nav-home-link {
  display: inline-flex; min-height: 40px; align-items: center; padding: 9px 10px;
  color: #30251e; font-family: var(--sar-font-sans, Inter, Arial, sans-serif); font-size: 11px; font-weight: 600;
  letter-spacing: .11em; line-height: 1.25; text-decoration: none; text-transform: uppercase; white-space: nowrap;
}
#sar-header .sar-nav-home-link:hover, #sar-header .sar-nav-home-link:focus-visible { color: #8f633d; }
#sar-header .sar-brand-home-wrap { position: relative; }
#sar-header .sar-brand-home-overlay { position: absolute; z-index: 5; inset: 0; display: block; }
#sar-header .sar-brand-home-overlay:focus-visible { outline: 2px solid #a67c52; outline-offset: 3px; }
body:has(#sar-header) .elementor-widget-text-editor p { color: #4a3f38; font-weight: 400; line-height: 1.75; }
body:has(#sar-header) .elementor-widget-heading .elementor-heading-title { color: #211914; }
@media (max-width: 767px) {
  #sar-header .elementor-widget-button .elementor-button,
  #sar-header .elementor-widget-button .elementor-button *,
  #sar-header .sar-nav-home-link { font-size: 11px !important; letter-spacing: .07em !important; }
  #sar-footer .elementor-widget-text-editor, #sar-footer .elementor-widget-text-editor p, #sar-footer .elementor-widget-text-editor a { font-size: 13px; }
  #sar-header { top: 0; }
  body.admin-bar #sar-header { top: 46px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

/* Live page sections use stable Elementor section IDs across the site. */
#sar-services .elementor-heading-title, #sar-projects .elementor-heading-title,
#sar-who-we-serve .elementor-heading-title, #sar-about .elementor-heading-title,
#sar-academy .elementor-heading-title, #sar-eco-haus .elementor-heading-title,
#sar-trusted-by .elementor-heading-title { color: #211914; font-weight: 500; }
#sar-services .elementor-widget-text-editor, #sar-projects .elementor-widget-text-editor,
#sar-who-we-serve .elementor-widget-text-editor, #sar-about .elementor-widget-text-editor,
#sar-academy .elementor-widget-text-editor, #sar-eco-haus .elementor-widget-text-editor,
#sar-trusted-by .elementor-widget-text-editor { color: #4a3f38; font-size: 15px; font-weight: 400; line-height: 1.75; }
#sar-services .elementor-widget-heading:not(:first-child) .elementor-heading-title { color: #30251e; font-weight: 600; }
#sar-who-we-serve .elementor-widget-button .elementor-button { font-size: 11px; font-weight: 600; }
#sar-eco-haus .elementor-widget-heading .elementor-heading-title { color: #44382f; font-weight: 700; }
#sar-trusted-by .elementor-heading-title { font-size: clamp(26px, 3vw, 40px); }
#sar-testimonial { background: #f5f0e8; }
#sar-testimonial .elementor-heading-title { color: #211914; font-size: clamp(20px, 1.6vw, 26px); font-weight: 500; }
#sar-testimonial .elementor-widget-heading .elementor-heading-title { animation: sar-testimonial-drift 26s ease-in-out infinite alternate; }
#sar-testimonial .elementor-widget-text-editor { color: #594637; font-size: 12px; font-weight: 600; }
#sar-faq .elementor-accordion .elementor-accordion-item { border-color: #e2d6c5; background: #f7f3ed; }
#sar-faq .elementor-accordion .elementor-tab-title,
#sar-faq .elementor-widget-n-accordion .e-n-accordion-item-title { color: #241a15; font-size: 16px; font-weight: 600; }
#sar-faq .elementor-accordion .elementor-tab-title .elementor-accordion-icon { color: #8f633d; font-size: 18px; }
#sar-faq .elementor-tab-content, #sar-faq .e-n-accordion-item-content { color: #4a3f38; font-size: 14px; line-height: 1.7; }
#sar-contact { position: relative; overflow: hidden; isolation: isolate; }
#sar-contact > .elementor-background-overlay { background: linear-gradient(90deg, rgb(34 23 17 / .65), rgb(249 246 240 / .47) 50%, rgb(34 23 17 / .65)) !important; opacity: 1 !important; }
#sar-contact > *:not(.elementor-background-overlay) { position: relative; z-index: 1; }
#sar-contact .elementor-heading-title { color: #211914; font-weight: 500; }
#sar-contact .elementor-widget-text-editor { color: #42352c; font-size: 15px; font-weight: 500; }
#sar-contact .elementor-widget-button .elementor-button { background: #8f633d; color: #fff; font-size: 11px; font-weight: 600; }
/* Keep image-backed page hero titles white for contrast; light split heroes stay dark. */
#sar-projects-hero .elementor-heading-title,
#sar-services-hero .elementor-heading-title { color: #fff !important; text-shadow: 0 1px 12px rgb(20 14 10 / .24); }
/* Home and About hero headings sit over dark photography. Keep them white across breakpoints. */
body.home h1.elementor-heading-title,
body.page-id-19 h1.elementor-heading-title,
#sar-about-hero h1.elementor-heading-title { color: #fff !important; text-shadow: 0 1px 12px rgb(20 14 10 / .28); }
@keyframes sar-logo-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
#sar-trusted-by .sar-logo-track { display: flex; width: max-content; animation: sar-logo-marquee 48s linear infinite; }
#sar-trusted-by .sar-logo-track:hover { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
  #sar-testimonial .elementor-widget-heading-title,
  #sar-testimonial .elementor-widget-heading .elementor-heading-title,
  #sar-trusted-by .sar-logo-track { animation: none; }
}
