/* Herring Chiropractic shared site shell (header, footer, sticky bar) + inner-page theme. Loaded on every page. */
@font-face{font-family:"Figtree";font-style:normal;font-weight:300 800;font-display:swap;src:url(/fonts/figtree-latin.woff2) format("woff2")}
:root{--hc-powder:#C9DDEA;--hc-powder-soft:#E4EEF5;--hc-navy:#1F3448;--hc-blue:#2F6FA3;--hc-blue-dk:#285F8C;--hc-peach:#E8A87C;--hc-cream:#FAF7F2;--hc-paper:#FFFDF9;--hc-ink:#1B2A38;--hc-shadow:0 30px 60px -24px rgba(31,52,72,.35),0 8px 20px -10px rgba(31,52,72,.18)}
.hc-skip{position:absolute;left:-9999px;top:8px;background:#1F3448;color:#fff;padding:10px 16px;border-radius:10px;z-index:100}
.hc-skip:focus{left:8px}
.hc-shell,.hc-shell *{box-sizing:border-box}
.hc-shell{font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.5}
.hc-shell a{text-decoration:none}
.hc-shell ul{list-style:none;margin:0;padding:0}
.hc-wrap{max-width:1280px;margin:0 auto;padding:0 40px}
.hc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--hc-blue);color:#fff!important;font-weight:700;font-size:15px;padding:11px 20px;border-radius:999px;border:0;white-space:nowrap;box-shadow:0 10px 22px -10px rgba(47,111,163,.7);transition:background .2s,transform .2s}
.hc-btn:hover{background:var(--hc-blue-dk);transform:translateY(-2px)}
.hc-shell a:focus-visible,.hc-shell button:focus-visible{outline:3px solid var(--hc-peach);outline-offset:3px}
.hc-topbar{background:var(--hc-navy);color:var(--hc-powder);font-size:13.5px;font-weight:600}
.hc-topbar .hc-wrap{display:flex;justify-content:center;gap:34px;padding-top:7px;padding-bottom:7px}
.hc-topbar a,.hc-topbar span{color:inherit;white-space:nowrap}
.hc-topbar a:hover{color:#fff}
.hc-stars{color:var(--hc-peach);letter-spacing:1px}
.hc-nav{position:sticky;top:0;z-index:9990;background:rgba(250,247,242,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 rgba(31,52,72,.08)}
.hc-nav-row{max-width:1360px;margin:0 auto;padding:13px 40px;display:flex;align-items:center;gap:28px}
.hc-brand{display:flex;align-items:center;white-space:nowrap;color:var(--hc-navy)}
.hc-brand-name{font-size:21px;font-weight:300;color:var(--hc-navy);letter-spacing:-.3px}
.hc-brand-name b{font-weight:800}
.hc-shell .hc-links{display:flex;gap:26px;margin-left:auto;align-items:center}
.hc-links>li{position:relative}
.hc-links>li>a,.hc-links>li>button{font:600 15px/1 "Figtree",system-ui,sans-serif;color:var(--hc-navy);background:none;border:0;padding:10px 0;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:5px}
.hc-links>li>a:hover,.hc-links>li>button:hover{color:var(--hc-blue)}
.hc-caret{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);display:inline-block}
.hc-sub{display:none;position:absolute;top:100%;left:-18px;min-width:230px;background:var(--hc-paper);border-radius:16px;box-shadow:var(--hc-shadow);padding:10px;z-index:9991}
.hc-links>li:hover>.hc-sub,.hc-links>li:focus-within>.hc-sub,.hc-links>li.open>.hc-sub{display:block}
.hc-sub a{display:block;padding:9px 14px;border-radius:10px;font-size:14.5px;font-weight:600;color:var(--hc-navy)}
.hc-sub a:hover{background:var(--hc-powder-soft);color:var(--hc-blue)}
.hc-mega{display:none;position:absolute;top:100%;right:-120px;width:640px;background:var(--hc-paper);border-radius:18px;box-shadow:var(--hc-shadow);padding:18px 20px;grid-template-columns:1fr 1fr;gap:6px 24px;z-index:9991}
.hc-links>li:hover>.hc-mega,.hc-links>li:focus-within>.hc-mega,.hc-links>li.open>.hc-mega{display:grid}
.hc-mega h4{margin:6px 0 4px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--hc-blue);font-weight:700}
.hc-mega a{display:block;padding:6px 10px;border-radius:8px;font-size:14.5px;font-weight:600;color:var(--hc-navy)}
.hc-mega a:hover{background:var(--hc-powder-soft);color:var(--hc-blue)}
.hc-cta{display:flex;align-items:center;gap:18px}
.hc-phone{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--hc-navy);white-space:nowrap;font-size:15px}
.hc-phone svg{color:var(--hc-blue)}
.hc-menu-btn{display:none;width:42px;height:42px;border:0;border-radius:12px;background:var(--hc-powder-soft);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0}
.hc-menu-btn span{display:block;width:18px;height:2px;background:var(--hc-navy);border-radius:2px}
/* footer */
.hc-foot{background:#17283A;color:rgba(255,255,255,.75);padding:64px 0 28px;font-size:15px;clear:both}
.hc-foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:40px}
.hc-foot .hc-brand-name{color:#fff}
.hc-foot p{margin:0 0 8px}
.hc-foot a{color:#fff}
.hc-foot a:hover{color:var(--hc-powder)}
.hc-foot-note{margin-top:16px!important;max-width:320px}
.hc-label{font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--hc-powder);margin:0 0 12px!important}
.hc-foot-links{display:flex;flex-direction:column;gap:6px}
.hc-foot-links.two{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}
.hc-foot-base{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:rgba(255,255,255,.6)}
.hc-legal{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:10px}
.hc-sticky{display:none}
@media (max-width:1180px){
  .hc-shell .hc-links{display:none}
  .hc-shell .hc-links.open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--hc-paper);padding:8px 24px 16px;box-shadow:var(--hc-shadow);max-height:78vh;overflow:auto}
  .hc-shell .hc-links.open>li>a,.hc-links.open>li>button{padding:14px 0;width:100%;border-bottom:1px solid #F3EEE5;justify-content:space-between}
  .hc-sub,.hc-mega{position:static;display:none;box-shadow:none;padding:0 0 6px 12px;min-width:0;width:auto;background:transparent;grid-template-columns:1fr}
  .hc-links>li:hover>.hc-sub,.hc-links>li:focus-within>.hc-sub,.hc-links>li:hover>.hc-mega,.hc-links>li:focus-within>.hc-mega{display:none}
  .hc-links>li.open>.hc-sub{display:block}
  .hc-links>li.open>.hc-mega{display:grid}
  .hc-menu-btn{display:inline-flex}
  .hc-cta{margin-left:auto}
  .hc-foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
  body{padding-bottom:64px}
  .hc-wrap{padding:0 18px}
  .hc-topbar{display:none}
  .hc-nav-row{padding:9px 14px;gap:10px}
  .hc-brand-name{font-size:15px;line-height:1.1}
  .hc-brand-name b{display:block;font-size:12px;letter-spacing:.4px;font-weight:700}
  .hc-phone span{display:none}
  .hc-phone{width:40px;height:40px;border-radius:50%;justify-content:center;background:var(--hc-powder-soft)}
  .hc-cta{gap:8px}
  .hc-btn{padding:10px 14px;font-size:14px}
  .hc-menu-btn{width:40px;height:40px}
  .hc-foot-grid{grid-template-columns:1fr;gap:28px}
  .hc-foot-links.two{grid-template-columns:1fr 1fr}
  .hc-sticky{display:grid;grid-template-columns:1fr 1.6fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:99990;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:rgba(255,253,249,.97);box-shadow:0 -8px 24px -12px rgba(31,52,72,.35)}
  .hc-sticky a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;font-weight:800;font-size:16px}
  .hc-sticky .hc-call{background:var(--hc-powder-soft);color:var(--hc-navy)}
  .hc-sticky .hc-claim{background:var(--hc-blue);color:#fff}
}
/* inner-page theme (applies to legacy Elementor content) */
.hc-shell,.hc-shell *{font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
body.cf-redesign{background:#fff;color:#1B2A38;font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
body.cf-redesign :is(h1,h2,h3,h4,h5,h6,p,li,td,th,label,input,textarea,select,button,.elementor-heading-title,.elementor-button,.elementor-item,.elementor-icon-list-text,.gform_wrapper *):not(.hc-shell *){font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
body.cf-redesign .elementor-widget-text-editor,body.cf-redesign .elementor-widget-theme-post-content,body.cf-redesign .entry-content{color:#2B3B4C;font-size:18px;line-height:1.7;font-weight:400}
body.cf-redesign .elementor-widget-text-editor p,body.cf-redesign .elementor-widget-theme-post-content p,body.cf-redesign .elementor-widget-text-editor li,body.cf-redesign .elementor-widget-theme-post-content li{font-weight:400;color:#2B3B4C}
body.cf-redesign .elementor-widget-container a:not(.elementor-button):not(.hc-btn),body.cf-redesign .entry-content a{color:#2F6FA3;text-decoration:underline;text-decoration-color:rgba(232,168,124,.9);text-underline-offset:3px;text-decoration-thickness:2px}
body.cf-redesign .elementor-widget-container a:not(.elementor-button):hover{color:#285F8C}
body.cf-redesign .elementor-widget-heading h2.elementor-heading-title,body.cf-redesign .elementor-widget-theme-post-content h2,body.cf-redesign .elementor-widget-text-editor h2,body.cf-redesign .elementor-widget-text-editor h3,body.cf-redesign .elementor-widget-theme-post-content h3{color:#1F3448;letter-spacing:-.5px;font-weight:800}
body.cf-redesign .elementor-button,body.cf-redesign .gform_button,body.cf-redesign input[type=submit]{border-radius:999px!important;font-weight:700!important}
body.cf-redesign .elementor-button{background-color:#2F6FA3;color:#fff}
body.cf-redesign .elementor-button:hover{background-color:#285F8C;color:#fff}
body.cf-redesign .gform_button,body.cf-redesign input[type=submit]{background:#E8A87C!important;color:#1F3448!important;border:0!important;padding:15px 28px!important}
body.cf-redesign .gform_wrapper input[type=text],body.cf-redesign .gform_wrapper input[type=email],body.cf-redesign .gform_wrapper input[type=tel],body.cf-redesign .gform_wrapper textarea{border-radius:12px!important;border:1.5px solid #DCE3EA!important}
body.cf-redesign img{max-width:100%;height:auto}
body.cf-redesign #cf-book-online{display:none!important}
@media (min-width:861px){body.cf-redesign #cf-book-online{display:inline-block!important}}
@media (min-width:1200px){body.cf-redesign #cf-book-online{right:8px!important;box-shadow:0 8px 16px -12px rgba(0,0,0,.45)!important}}
.hc-areas{padding:70px 0 20px;font-family:"Figtree",system-ui,sans-serif;color:#2B3B4C;background:#FAF7F2}
.hc-areas h2{font-size:34px;line-height:1.15;font-weight:800;color:#1F3448;letter-spacing:-.5px;margin:0 0 16px}
.hc-areas p{font-size:17px;line-height:1.7;margin:0 0 16px}
.hc-areas a{color:#2F6FA3;font-weight:600;text-decoration:underline;text-decoration-color:#E8A87C;text-underline-offset:3px}
.hc-towns a{margin-right:12px;white-space:nowrap;display:inline-block}
@media(max-width:860px){.hc-areas{padding:48px 0 10px}.hc-areas h2{font-size:26px}}
body.cf-redesign .elementor *:not(i):not(svg):not(path):not([class*="fa-"]):not([class*="eicon"]):not([class*="eael-"]){font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
body.cf-redesign{overflow-x:hidden}
/* ---- service/inner page layout fixes (2026-10-20): map legacy Elementor globals to the redesign system ---- */
/* Root cause 1: the redesign remapped Elementor global primary to pale powder (#C9DDEA) while legacy sections still set white text on it. Primary becomes the brand blue, secondary the cream used on the homepage. */
body.cf-redesign{--e-global-color-primary:#2F6FA3;--e-global-color-secondary:#FAF7F2}
body.cf-redesign .elementor-top-section:not(:first-child) .elementor-background-overlay{opacity:.35!important}
/* tinted sections: white text sits on brand blue; cream sections keep dark text */
body.cf-redesign .elementor-top-section[data-settings*="background_background"]:has(h2.elementor-heading-title[style*="color: rgb(255"]){background-color:#2F6FA3}
/* Root cause 2: FAQ block (cf-svc-qa) shipped with inline styles that did not match the design. Restyle as the homepage FAQ cards. */
body.cf-redesign section[aria-labelledby="cf-svc-h"]{max-width:none!important;margin:0!important;padding:72px max(20px,calc((100% - 860px)/2)) 80px!important;background:#FAF7F2;color:#2B3B4C!important}
body.cf-redesign section[aria-labelledby="cf-svc-h"] h2{font-size:34px!important;font-weight:800!important;line-height:1.15!important;letter-spacing:-.5px;color:#1F3448!important;margin:0 0 24px!important}
body.cf-redesign section[aria-labelledby="cf-svc-h"] h3{font-size:19px!important;font-weight:700!important;color:#1F3448!important;margin:0!important;padding:20px 26px 0;background:#FFFDF9;border-radius:18px 18px 0 0;box-shadow:0 0 0 1px #EFE9DE}
body.cf-redesign section[aria-labelledby="cf-svc-h"] h3+p{padding:8px 26px 22px;background:#FFFDF9;border-radius:0 0 18px 18px;box-shadow:0 0 0 1px #EFE9DE;margin:0 0 14px!important;font-size:17px!important;line-height:1.65!important;color:#44566A}
body.cf-redesign section[aria-labelledby="cf-svc-h"] p:last-child:not(h3+p),body.cf-redesign section[aria-labelledby="cf-svc-h"] p[style*="font-size:13px"],body.cf-redesign section[aria-labelledby="cf-svc-h"] small{font-size:14px!important;color:#6B7B8C!important}
body.cf-redesign section[aria-labelledby="cf-svc-h"] a{color:#2F6FA3!important;font-weight:700;text-decoration:underline;text-decoration-color:#E8A87C;text-underline-offset:3px}
/* Root cause 3: pale-on-white form intro text and mobile-truncated submit button */
body.cf-redesign .elementor-widget-heading p.elementor-heading-title{color:inherit}
body.cf-redesign .elementor-column .eael-gravity-form-description,body.cf-redesign .eael-contact-form-description{color:inherit}
body.cf-redesign .gform_button,body.cf-redesign input[type=submit]{white-space:normal!important;letter-spacing:0!important;max-width:100%;width:auto;line-height:1.2}
/* special: the form caption sat in pale text on white; keep the wording, make it readable and lay it out under the offer copy */
body.cf-redesign.wpbf-special .elementor-widget-heading p.elementor-heading-title{color:#44566A!important;font-size:17px;line-height:1.6;font-weight:600}
/* Empty legacy columns (testimonials reviews widget): collapse and centre the remaining form column */
body.cf-redesign.wpbf-testimonials .elementor-element-4e1d33fe{display:none}
/* 2026-10-21: only a column that IS the form (form widget directly in it, no inner section). The old selector also matched the
   single top column that wraps a copy+form inner section and capped 18 service pages at 560px (disc-injury squish). */
body.cf-redesign .elementor-top-section .elementor-container:has(>.elementor-top-column:only-child:has(>.elementor-widget-wrap>.elementor-widget-eael-gravity-form):not(:has(.elementor-inner-section))){justify-content:center}
body.cf-redesign .elementor-top-section .elementor-container>.elementor-top-column:only-child:has(>.elementor-widget-wrap>.elementor-widget-eael-gravity-form):not(:has(.elementor-inner-section)){max-width:560px;width:100%}
/* Blog: sidebar form rendered as plain unstyled text, give it the navy panel used on service pages */
body.cf-redesign.wpbf-blog .elementor-widget-eael-gravity-form>.elementor-widget-container{background:#1F3448;border-radius:18px;padding:26px 24px;color:#fff}
body.cf-redesign.wpbf-blog .elementor-widget-eael-gravity-form :is(label,.gfield_label,.eael-gravity-form-title,.eael-gravity-form-description,.gfield_required,legend){color:#fff!important}
body.cf-redesign.wpbf-blog .elementor-widget-eael-gravity-form .eael-gravity-form-title{font-weight:800}
/* Service Areas: plain H2 header becomes a branded band */
body.cf-redesign.wpbf-service-areas .elementor-top-section:first-child{background:linear-gradient(135deg,#1F3448,#2F6FA3);padding:56px 0 48px}
body.cf-redesign.wpbf-service-areas .elementor-top-section:first-child h2.elementor-heading-title{color:#fff!important;text-align:center;font-size:44px;font-weight:800;letter-spacing:-.8px}
/* Mobile: hero headline sized to the viewport, hero not taller than the content needs */
@media(max-width:860px){
  body.cf-redesign .elementor>.elementor-top-section:first-child h2.elementor-heading-title{font-size:34px!important;line-height:1.15!important;letter-spacing:-.4px!important}
  body.cf-redesign .elementor>.elementor-top-section:first-child p.elementor-heading-title{font-size:19px!important;line-height:1.35!important;letter-spacing:0!important}
  body.cf-redesign .elementor>.elementor-top-section:first-child{min-height:0!important}
  body.cf-redesign.wpbf-service-areas .elementor-top-section:first-child h2.elementor-heading-title{font-size:32px!important}
}
body.cf-redesign.wpbf-testimonials .elementor-top-section:has(.elementor-element-36f03bcd) .elementor-container{justify-content:center}
body.cf-redesign.wpbf-testimonials .elementor-element-36f03bcd{width:560px;max-width:100%;flex:none}
/* booking canvas page: readable heading in the design colours */
body.cf-redesign.wpbf-tallassee-chiropractic-appointment h2.elementor-heading-title{color:#1F3448!important;text-align:center;font-weight:800;font-size:34px;margin:28px 0 8px}
/* sections on brand blue (legacy primary): force white text */
body.cf-redesign .elementor-element-118213d2 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-1c17bcd :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-2dd3c03 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-38cb2a8 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-45f35c26 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-68d33de7 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title),body.cf-redesign .elementor-element-789423c1 :is(h1,h2,h3,h4,p,li,span,strong,.elementor-widget-text-editor,.elementor-widget-text-editor p,.elementor-widget-text-editor li,.elementor-heading-title){color:#fff!important}
body.cf-redesign .elementor-element-118213d2 a:not(.elementor-button),body.cf-redesign .elementor-element-1c17bcd a:not(.elementor-button),body.cf-redesign .elementor-element-2dd3c03 a:not(.elementor-button),body.cf-redesign .elementor-element-38cb2a8 a:not(.elementor-button),body.cf-redesign .elementor-element-45f35c26 a:not(.elementor-button),body.cf-redesign .elementor-element-68d33de7 a:not(.elementor-button),body.cf-redesign .elementor-element-789423c1 a:not(.elementor-button){color:#fff!important;text-decoration-color:#E8A87C}
@media(max-width:860px){body.cf-redesign:not(.wpbf-tallassee-chiropractic-appointment) .elementor>.elementor-top-section:first-child :is(h2,p).elementor-heading-title{color:#fff!important}}
/* Google reviews band (same content and design as the homepage), used on /testimonials/ */
.hc-reviews{padding:64px 0 24px;background:#fff}
.hc-rv-band{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:48px;align-items:center;background:#FFFDF9;border-radius:28px 28px 28px 8px;padding:44px 52px;box-shadow:0 30px 60px -24px rgba(31,52,72,.35),0 8px 20px -10px rgba(31,52,72,.18)}
.hc-rv-score{display:grid;justify-items:center;gap:4px}
.hc-rv-score b{font-size:96px;line-height:.9;font-weight:800;color:#1F3448;letter-spacing:-3px}
.hc-stars-big{color:#E8A87C;font-size:26px;letter-spacing:3px}
.hc-rv-label{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:#2F6FA3}
.hc-rv-copy h2{font-size:38px;line-height:1.1;font-weight:800;color:#1F3448;margin:0 0 8px;letter-spacing:-.8px}
.hc-rv-copy p:last-child{margin:0;color:#44566A;font-size:17px}
@media(max-width:860px){.hc-reviews{padding:40px 0 8px}.hc-rv-band{grid-template-columns:1fr;gap:18px;padding:32px 24px;text-align:center;justify-items:center}.hc-rv-score b{font-size:72px}.hc-rv-copy h2{font-size:28px}}
/* /special/: form column styled as the navy appointment card used on the service pages */
body.cf-redesign.wpbf-special .elementor-top-column:has(.gform_wrapper)>.elementor-widget-wrap{background:#1F3448;border-radius:18px;padding:28px 26px;align-content:flex-start}
body.cf-redesign.wpbf-special .elementor-top-column:has(.gform_wrapper) .elementor-widget-heading p.elementor-heading-title{color:#fff!important}
body.cf-redesign.wpbf-special .gform_wrapper :is(label,legend,.gfield_required,.gform_description){color:#fff!important}
body.cf-redesign.wpbf-special .gform_wrapper input:not([type=submit]):not([type=hidden]),body.cf-redesign.wpbf-special .gform_wrapper textarea{width:100%;background:#fff;color:#1B2A38;padding:12px 14px;font-size:16px}
body.cf-redesign.wpbf-special .gform_wrapper textarea{min-height:110px}
body.cf-redesign.wpbf-special .gform_wrapper ul{list-style:none;margin:0;padding:0}
body.cf-redesign.wpbf-special .gform_wrapper li{margin:0 0 14px}
body.cf-redesign.wpbf-special .elementor>.elementor-top-section:first-child :is(h2,p).elementor-heading-title{color:#fff!important}
@media(max-width:860px){body.cf-redesign.wpbf-special .elementor>.elementor-top-section:not(:first-child)>.elementor-container{padding:0 18px}}
/* ---- 2026-10-21: real Google review quotes on /testimonials/ (cards under the 4.9 band) ---- */
.hc-rv-grid{list-style:none;margin:40px 0 0!important;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.hc-rv-card{display:flex;flex-direction:column;gap:14px;background:#fff;border-radius:22px 22px 22px 6px;padding:28px 30px;box-shadow:0 0 0 1px #EFE9DE,0 18px 40px -26px rgba(31,52,72,.35)}
.hc-rv-stars{color:#E8A87C;font-size:19px;letter-spacing:3px;line-height:1}
.hc-rv-quote{margin:0;padding:0;border:0}
.hc-rv-quote p{margin:0;font-size:17px;line-height:1.65;color:#2B3B4C;font-style:normal!important}
.hc-rv-quote{font-style:normal!important;quotes:none}
.hc-rv-who{margin:auto 0 0;font-size:15px;color:#6B7B8C}
.hc-rv-who b{color:#1F3448;font-weight:800;margin-right:6px}
.hc-rv-who span::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:#C9D6E2;margin:0 8px 2px 0;vertical-align:middle}
@media(max-width:860px){.hc-rv-grid{grid-template-columns:1fr;gap:16px;margin-top:24px!important}.hc-rv-card{padding:22px 22px}.hc-rv-quote p{font-size:16px}}
/* ---- /testimonials/ + /home-page/ lower section: form and Recent Posts side by side on desktop, stacked on phones ---- */
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-top-section.elementor-element-66ea8aef{padding:40px 0 72px}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-4e1d33fe{display:none}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef>.elementor-container{justify-content:center;max-width:1200px}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd{width:100%!important;max-width:1120px;flex:none}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"form head" "form posts";column-gap:48px;row-gap:0;align-content:start}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap>.elementor-element-e43eeb8{grid-area:form;margin:0}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap>.elementor-element-3afd053a{grid-area:head;margin:0}
body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap>.elementor-widget-posts{grid-area:posts}
@media(max-width:860px){body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap{grid-template-columns:1fr;grid-template-areas:"form" "head" "posts";row-gap:0}body.cf-redesign:is(.wpbf-testimonials,.wpbf-home-page) .elementor-element-66ea8aef .elementor-element-36f03bcd>.elementor-widget-wrap>.elementor-element-3afd053a{margin-top:36px}}
/* ---- Recent Posts widget (sidebar on articles, /testimonials/, /home-page/): design-system cards ---- */
body.cf-redesign .elementor-widget-heading:has(+.elementor-widget-posts) .elementor-heading-title{font-size:13px!important;font-weight:800!important;letter-spacing:2.5px!important;text-transform:uppercase;color:#2F6FA3!important;margin:0 0 14px!important;line-height:1.3!important}
body.cf-redesign .elementor-widget-posts .elementor-posts-container{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
body.cf-redesign .elementor-widget-posts .elementor-post{position:relative;display:grid!important;grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:start;background:#fff;border-radius:18px;padding:14px;margin:0!important;box-shadow:0 0 0 1px #EFE9DE,0 12px 28px -22px rgba(31,52,72,.4);transition:box-shadow .2s,transform .2s}
body.cf-redesign .elementor-widget-posts .elementor-post:hover{transform:translateY(-2px);box-shadow:0 0 0 1px #E3DBCC,0 18px 34px -20px rgba(31,52,72,.45)}
body.cf-redesign .elementor-widget-posts .elementor-post__thumbnail__link{display:block;width:104px!important;margin:0!important;border-radius:12px;overflow:hidden;align-self:stretch;max-height:120px}
body.cf-redesign .elementor-widget-posts .elementor-post__thumbnail{padding-bottom:0!important;height:100%;min-height:78px;position:relative}
body.cf-redesign .elementor-widget-posts .elementor-post__thumbnail img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover;transform:none!important;max-width:none}
body.cf-redesign .elementor-widget-posts .elementor-post__text{padding:2px 4px 2px 0;margin:0!important}
body.cf-redesign .elementor-widget-posts .elementor-post__title{margin:0 0 6px!important;font-size:16px!important;line-height:1.3!important;font-weight:800!important}
body.cf-redesign .elementor-widget-posts .elementor-post__title a{color:#1F3448!important;text-decoration:none!important;font-weight:800!important;font-size:16px!important;line-height:1.3!important}
body.cf-redesign .elementor-widget-posts .elementor-post__title a::after{content:"";position:absolute;inset:0;border-radius:18px}
body.cf-redesign .elementor-widget-posts .elementor-post:hover .elementor-post__title a{color:#2F6FA3!important}
body.cf-redesign .elementor-widget-posts .elementor-post__excerpt p{margin:0!important;font-size:14px!important;line-height:1.55!important;color:#5A6B7D!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* ---- /blog/ post grid: same card language as the homepage ---- */
body.cf-redesign .eael-post-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0!important;height:auto!important}
body.cf-redesign .elementor-grid-eael-col-3 .eael-post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.cf-redesign .eael-post-grid .eael-grid-post{position:static!important;width:auto!important;padding:0!important;margin:0!important;transform:none!important}
body.cf-redesign .eael-post-grid .eael-grid-post-holder{position:relative;height:100%;border:0!important;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 0 0 1px #EFE9DE,0 16px 36px -26px rgba(31,52,72,.45);transition:box-shadow .2s,transform .2s}
body.cf-redesign .eael-post-grid .eael-grid-post-holder:hover{transform:translateY(-3px);box-shadow:0 0 0 1px #E3DBCC,0 22px 44px -24px rgba(31,52,72,.5)}
body.cf-redesign .eael-post-grid .eael-grid-post-holder-inner{height:100%;display:flex;flex-direction:column}
body.cf-redesign .eael-post-grid .eael-entry-media{aspect-ratio:16/10;overflow:hidden;margin:0}
body.cf-redesign .eael-post-grid .eael-entry-thumbnail{height:100%;padding:0!important}
body.cf-redesign .eael-post-grid .eael-entry-thumbnail img{position:static!important;width:100%!important;height:100%!important;object-fit:cover}
body.cf-redesign .eael-post-grid .eael-entry-overlay{display:none!important}
body.cf-redesign .eael-post-grid .eael-entry-wrapper{padding:20px 22px 22px!important;display:flex;flex-direction:column;flex:1}
body.cf-redesign .eael-post-grid .eael-entry-title{margin:0 0 10px!important;font-size:19px!important;line-height:1.3!important;font-weight:800!important}
body.cf-redesign .eael-post-grid .eael-entry-title a{color:#1F3448!important;text-decoration:none!important;font-weight:800!important;font-size:19px!important;line-height:1.3!important}
body.cf-redesign .eael-post-grid .eael-entry-title a::after{content:"";position:absolute;inset:0}
body.cf-redesign .eael-post-grid .eael-grid-post-holder:hover .eael-entry-title a{color:#2F6FA3!important}
body.cf-redesign .eael-post-grid .eael-entry-content{flex:1;display:flex}
body.cf-redesign .eael-post-grid .eael-grid-post-excerpt{display:flex;flex-direction:column;gap:14px;flex:1}
body.cf-redesign .eael-post-grid .eael-grid-post-excerpt p{margin:0!important;font-size:15px!important;line-height:1.6!important;color:#5A6B7D!important}
body.cf-redesign .eael-post-grid .eael-post-elements-readmore-btn{position:relative;z-index:1;margin-top:auto!important;align-self:flex-start;font-size:14px!important;font-weight:800!important;color:#2F6FA3!important;text-decoration:underline!important;text-decoration-color:#E8A87C!important;text-underline-offset:4px;padding:0!important;background:none!important;border:0!important}
body.cf-redesign .eael-post-grid .eael-entry-footer{display:none}
@media(max-width:860px){body.cf-redesign .eael-post-grid,body.cf-redesign .elementor-grid-eael-col-3 .eael-post-grid{grid-template-columns:1fr;gap:18px}}
body.cf-redesign .eael-post-grid-container{margin-bottom:32px}
