:root,body,.elementor-kit-9{--e-global-color-primary:#9E3438;--e-global-color-secondary:#425440;--e-global-color-text:#293033;--e-global-color-accent:#FAF7F2;--sage:#788B74;--forest:#425440;--cream:#FAF7F2;--red:#9E3438}
body{background:var(--cream)!important;color:#293033!important;font-size:17px;line-height:1.7}
body a{color:#883035}body a:hover{color:#425440}
body .elementor-section,body .elementor-column>.elementor-widget-wrap{background-image:none!important}
body .elementor-background-overlay{background-image:none!important;background-color:transparent!important;opacity:0!important}
body .elementor-section.elementor-top-section{padding:65px 24px!important;background-color:var(--cream)!important}
body .elementor-section .elementor-container{max-width:1160px!important}
body .elementor-widget-text-editor{color:#293033!important;font-size:17px!important;line-height:1.8!important}
body .elementor-heading-title{color:#293033!important;line-height:1.22!important}
body h2.elementor-heading-title{font-size:clamp(30px,3.2vw,43px)!important}
body h3.elementor-heading-title{font-size:clamp(25px,2.5vw,34px)!important}
body h4.elementor-heading-title{font-size:24px!important}
body .elementor-button,body .sage-button{background:#9E3438!important;color:white!important;fill:white!important;border:1px solid #9E3438!important;border-radius:8px!important;padding:15px 23px!important;font-family:Montserrat,Arial,sans-serif!important;font-size:16px!important;font-weight:600!important;line-height:1.4!important;box-shadow:none!important;text-transform:none!important;text-decoration:none}
body .elementor-button:hover,body .sage-button:hover{background:#74252A!important;color:white!important;transform:none!important}
body .elementor-button-icon{display:none!important}
body .elementor-animation-bob:hover{animation:none!important}
body .elementor-element-4c50a959{padding:10px 24px!important;background:#425440!important}
body .elementor-element-4c50a959 a,body .elementor-element-4c50a959 .elementor-icon-list-text{color:#fff!important;font-size:14px!important}
body .elementor-element-5564bfbb{padding:10px 24px!important;background:white!important;border-bottom:1px solid #e8e5df}
body .practice-brand{max-width:290px;padding:8px 0}.practice-provider{font-size:14px!important;color:#425440!important}
body .hfe-nav-menu a{color:#293033!important;font-size:15px!important}
body .hfe-nav-menu a:hover{color:#9E3438!important;background:#f4f0e9!important}
.sage-hero{background:#FAF7F2;border-bottom:1px solid #e8e5df;padding:64px 24px!important}
.sage-hero-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center}
.sage-hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(44px,5.2vw,72px);line-height:1.08;margin:0 0 26px;color:#293033;letter-spacing:-.025em}
.sage-hero-copy p{font:400 19px/1.8 Montserrat,Arial,sans-serif;max-width:520px;margin-bottom:30px}
.sage-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.sage-button{display:inline-block}.sage-call{font:600 16px Montserrat,Arial,sans-serif;text-decoration:underline;text-underline-offset:5px}
.sage-portrait{position:relative;margin:0;border-radius:100px 10px 10px 10px;background:#dce3d8;padding:12px 12px 45px;overflow:hidden}
.sage-portrait img{display:block;width:100%;height:470px;object-fit:cover;object-position:center 30%;border-radius:88px 6px 6px 6px}
.sage-portrait figcaption{position:absolute;bottom:12px;left:25px;font:500 14px Montserrat,Arial,sans-serif;color:#425440}
body .elementor-element-38f5071{background:#e8ede3!important}
body .elementor-element-a90528e{width:100%!important;max-width:900px;margin:auto}
body .elementor-element-6caedd4{display:none!important}
body .elementor-element-3473d40{background:#fff!important}
body .elementor-element-3473d40 .elementor-column{width:100%!important;max-width:960px;margin:auto}
body .elementor-element-3473d40 .elementor-widget-spacer{display:none!important}
body .elementor-element-e3cef01{background:#FAF7F2!important}
body .elementor-element-e3cef01 .elementor-inner-section{padding:0!important}
body .elementor-element-9afa5e6>.elementor-widget-wrap,body .elementor-element-32dce1b>.elementor-widget-wrap,body .elementor-element-877853f>.elementor-widget-wrap{background:#fff!important;border:1px solid #dedfd7!important;border-radius:12px!important;padding:30px!important;margin:10px!important;box-shadow:0 4px 18px #29303305!important}
body .elementor-element-56f0a86{background:#425440!important}
body .elementor-element-56f0a86 .elementor-heading-title{color:#fff!important}
body .elementor-element-17b35e7{background:#e8ede3!important}
body .elementor-element-17b35e7 .elementor-inner-section{padding:0!important}
body .elementor-element-17b35e7 .elementor-column>.elementor-widget-wrap{background:#fff!important;border:1px solid #dce0d6!important;border-radius:12px!important;padding:28px!important;margin:10px!important;box-shadow:none!important}
body .elementor-element-17b35e7 p.elementor-heading-title{font-size:24px!important;color:#788B74!important;text-align:left!important}
body .elementor-element-17b35e7 .elementor-widget-heading>.elementor-widget-container{margin:0 0 16px!important}
body .elementor-element-cc840d9{background:#FAF7F2!important}
body .elementor-accordion .elementor-tab-title{background:#fff!important;color:#293033!important;border:1px solid #dedfd7!important;padding:22px!important}
body .elementor-accordion-title{color:#293033!important;font-size:17px!important;line-height:1.5!important}
body .elementor-accordion .elementor-tab-content{color:#293033!important;background:#fff!important;font-size:17px!important;line-height:1.8!important;border-color:#dedfd7!important}
body .practice-details{padding:60px 24px;background:#fff;max-width:none;grid-template-columns:minmax(0,380px) minmax(0,680px);justify-content:center;border-top:1px solid #e6e4de}
body footer .elementor-top-section{background:#e8ede3!important}
body footer .elementor-heading-title,body footer .elementor-icon-list-text,body footer a,body footer p{color:#293033!important}
body footer .practice-brand img.practice-logo{background:transparent!important;padding:0!important}
body .practice-footer-details{background:#425440!important;color:white!important}
body footer .elementor-inner-section{padding:0!important;background:transparent!important}
@media(max-width:767px){body .elementor-section.elementor-top-section{padding:40px 20px!important}body .elementor-element-4c50a959{padding:10px 20px!important}body .elementor-element-5564bfbb{padding:10px 20px!important}.sage-hero-inner{grid-template-columns:1fr;gap:32px}.sage-hero{padding:40px 20px!important}.sage-portrait{max-width:490px}.sage-portrait img{height:390px}.sage-hero-copy p{font-size:17px}.sage-actions{gap:20px}.practice-details{grid-template-columns:1fr!important}.elementor-column{min-width:0}body .elementor-element-17b35e7 .elementor-column>.elementor-widget-wrap{margin:8px 0!important}body .practice-brand{max-width:230px}body .elementor-element-3473d40 .elementor-column{width:100%!important}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Keep the dark footer strip legible despite the shared footer text rules. */
body footer .practice-footer-details,
body footer .practice-footer-details p,
body footer .practice-footer-details strong,
body footer .practice-footer-details span,
body footer .practice-footer-details a { color:#FFFFFF!important; }
body footer .practice-footer-details a { text-decoration:underline; text-underline-offset:3px; }
body footer .practice-footer-details a:hover { color:#FAF7F2!important; }
/* Requested contrast corrections. */
body .elementor-element-56f0a86 { background:#E8EDE3!important; }
body .elementor-element-56f0a86 .elementor-heading-title { color:#000000!important; }
body footer .practice-footer-details,
body footer .practice-footer-details * { color:#FFFFFF!important; }

/* Preserve the approved section colors over the shared section rule. */
body .elementor-section.elementor-top-section.elementor-element-4c50a959 { background:#425440!important; padding:10px 24px!important; }
body .elementor-section.elementor-top-section.elementor-element-5564bfbb { background:#FFFFFF!important; padding:10px 24px!important; }
body .elementor-section.elementor-top-section.elementor-element-56f0a86 { background:#E8EDE3!important; }
@media(max-width:767px) { body .elementor-section.elementor-top-section.elementor-element-4c50a959,body .elementor-section.elementor-top-section.elementor-element-5564bfbb { padding:10px 20px!important; } }
