/* Glucosamigos brand refresh v2.6 — "Steady" */
:root{
  --botanical:#1D4A3E;
  --leaf:#3E6B53;
  --sage:#E7EFE8;
  --porcelain:#FBF9F4;
  --persimmon:#D94F30;
  --persimmon-dark:#C2442A;
  --ink:#1E2824;
  --muted:#55655D;
  --line:rgba(29,74,62,.18);
}

body{
  font-family:'Figtree',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  font-size:17px;
  background:var(--porcelain);
  color:var(--ink);
}
/* WP-rendered pages: soften body text to brand ink (footer stays light) */
.page-content .elementor-widget-text-editor,
.page-content .elementor-widget-text-editor p,
.page-content .elementor-widget-text-editor li{
  color:var(--ink) !important;
}

/* Replace the old blue kit gradient on WP-rendered pages */
body.elementor-kit-6{background-image:none !important;background-color:var(--porcelain) !important}
/* About pages: solid sage to match the home "Visits" band */
body.page-id-1639,
body.page-id-1663{background-color:var(--sage) !important}
.elementor-widget-text-editor,
.elementor-accordion,
.hfe-nav-menu,
.elementor-button,
button{
  font-family:'Figtree',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
}
h1,h2,h3,h4,.elementor-heading-title{
  font-family:'Fraunces',Georgia,serif !important;
  letter-spacing:-.01em;
  color:var(--botanical) !important;
}
/* Match the home hero display scale on WP page titles */
h1.entry-title,
.page-header h1{
  font-weight:600 !important;
  font-size:clamp(2.4rem,5vw,4rem) !important;
  line-height:1.08;
}
/* Body text matches home (17px) on WP-rendered pages */
.page-content .elementor-widget-text-editor{
  font-size:17px !important;
  line-height:1.6;
}

/* ---- Links + nav ---- */
a,
.elementor a,
.elementor-widget-text-editor a,
.hfe-nav-menu .hfe-menu-item,
.footer-width-fixer a{
  color:var(--botanical);
}
a:hover,
.elementor a:hover,
.hfe-nav-menu a:hover,
.footer-width-fixer a:hover{
  color:var(--leaf);
}

/* ---- Buttons: persimmon ---- */
a.elementor-button,
.elementor-button{
  background-color:var(--persimmon) !important;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:600 !important;
  border-radius:10px !important;
  text-shadow:none !important;
}
a.elementor-button:hover,
.elementor-button:hover{
  background-color:var(--persimmon-dark) !important;
  color:#fff !important;
}

/* Nav "Schedule Appointment" → button look */
.hfe-nav-menu a[href*="gethealthie"]{
  background:var(--persimmon) !important;
  color:#fff !important;
  padding:10px 18px !important;
  border-radius:10px !important;
  font-weight:600 !important;
}

/* ---- Header chrome ---- */
.elementor-element-gahead01,
.hfe-site-header,
header .elementor-section{
  border-bottom:1px solid var(--line);
  background:var(--porcelain) !important;
}

/* ---- Hero ---- */
.elementor-page-114 .elementor-element-146ffa2c{
  padding-top:48px !important;
  padding-bottom:36px !important;
  background:var(--porcelain) !important;
}
.elementor-element-146ffa2c > .elementor-background-overlay{display:none !important}
.elementor-element-1b7e5a2b .elementor-heading-title{white-space:normal;font-size:clamp(2.2rem,4.4vw,3.4rem) !important;line-height:1.08}
.elementor-element-1b7e5a2b .elementor-heading-title br{display:none}
.elementor-element-1b7e5a2b em{font-style:italic}

.elementor-text-editor .lead,
p.lead{
  font-size:1.15rem !important;
  color:var(--muted) !important;
  line-height:1.55;
  max-width:44ch;
  margin-bottom:10px !important;
}
.elementor-text-editor .es-label,
p.es-label{
  font-family:'Fraunces',Georgia,serif !important;
  font-style:italic !important;
  font-size:1.3rem !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:var(--botanical) !important;
  margin:8px 0 22px !important;
  font-weight:500 !important;
}

/* Button + phone on one row */
.elementor-element-52b6bedf > .elementor-widget-wrap{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  column-gap:16px;
}
.elementor-element-1b7e5a2b,
.elementor-element-125bc43c{flex:0 0 100%;width:100% !important}
.elementor-element-9aa3af8,
.elementor-element-gaphone01{
  flex:0 0 auto !important;
  width:auto !important;
  max-width:max-content;
}
.elementor-element-9aa3af8 .elementor-widget-container,
.elementor-element-gaphone01 .elementor-widget-container{width:auto !important}
.hero-phone{margin:0}
.hero-phone a{
  font-family:'DM Mono',monospace;
  color:var(--botanical) !important;
  text-decoration:none !important;
  border-bottom:1px dashed var(--leaf);
  font-size:1.05rem;
  font-weight:400 !important;
}

/* Portrait as a card, not a full-column mint slab */
.elementor-element-3800a14a,
.elementor-element-3800a14a .elementor-widget-wrap,
.elementor-element-52b6bedf,
.elementor-element-52b6bedf .elementor-widget-wrap{background:transparent !important}
.elementor-element-07a973d{max-width:360px;margin:0 auto;text-align:center}
.elementor-element-07a973d img{
  border-radius:20px !important;
  box-shadow:0 30px 60px -30px rgba(29,74,62,.45);
}
.elementor-element-07a973d .widget-image-caption,
.elementor-element-07a973d figcaption{
  display:inline-block;
  background:#fff;
  border:1px solid var(--line);
  border-radius:999px;
  padding:8px 16px;
  margin-top:10px;
  font-family:'DM Mono',monospace;
  font-size:.78rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--muted);
}

/* ---- Visits / insurance ---- */
.kicker{
  font-family:'DM Mono',monospace;
  font-size:.82em;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--leaf);
  margin:0 0 10px;
}
.insurances{font-size:1.4rem;font-weight:600;color:var(--ink);margin-top:14px;line-height:1.5}
.elementor-element-d10c8b4{background:var(--sage) !important}

/* ---- Footer (matches landing page) ---- */
.footer-width-fixer,
.footer-width-fixer .elementor-section{
  background:var(--botanical) !important;
  color:#E7EFE8 !important;
}
.footer-width-fixer .elementor-widget-text-editor,
.footer-width-fixer .elementor-widget-text-editor p,
.footer-width-fixer .elementor-heading-title{
  color:#E7EFE8 !important;
}
.footer-width-fixer a{color:#fff !important}
.footer-width-fixer a:hover{color:#BBD0C4 !important}
.footer-width-fixer .elementor-widget-text-editor{overflow-wrap:break-word;word-break:break-word}
.footer-width-fixer .kicker{color:#BBD0C4 !important}
.footer-width-fixer .mapaddr{
  font-family:'DM Mono',monospace;
  color:#fff !important;
  font-size:1.2rem;
  margin:0 0 16px;
  letter-spacing:.02em;
}
.footer-width-fixer .mapframe{
  width:100%;
  height:320px;
  border:0;
  border-radius:12px;
  display:block;
}
.footer-width-fixer .bottom{
  border-top:1px solid rgba(255,255,255,.14);
  padding-top:22px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  font-size:.85rem;
  color:#BBD0C4;
  margin:0;
}
.footer-width-fixer .bottom .mono{color:#BBD0C4}

/* ---- FAQ cards ---- */
.elementor-accordion .elementor-accordion-item{border:1px solid var(--line) !important;border-radius:12px;margin-bottom:10px;overflow:hidden}
.elementor-accordion .elementor-tab-title{border:none !important;background:#fff}
.elementor-accordion .elementor-tab-title a{text-decoration:none !important;color:var(--botanical) !important;font-weight:600;min-height:44px;display:flex;align-items:center}
.elementor-accordion .elementor-tab-content{border:none !important;background:#f4f8f5}

/* ---- Skip link + focus ---- */
.skip-link{position:absolute;top:0;left:-9999px;z-index:99999;background:var(--botanical);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;text-decoration:none;font-weight:600}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--persimmon);outline-offset:2px}

@media (max-width:767px){
  .elementor-element-07a973d{max-width:240px}
  .elementor-element-1b7e5a2b .elementor-heading-title{text-align:left !important}
}
