/* ============================================================
   Affordable Veterinary Web Design — global brand stylesheet
   Injected via mu-plugin on wp_enqueue_scripts (renders in wp_head).
   ============================================================ */
:root{
  --teal-50:#eefbf7;--teal-100:#d3f5eb;--teal-200:#a8ecd8;--teal-300:#74dec1;--teal-400:#46cdaa;--teal-500:#2ec0a0;--teal-600:#1fa587;--teal-700:#17836c;--teal-800:#146856;--teal-900:#0f4f42;
  --navy-50:#eceef5;--navy-100:#cfd3e6;--navy-200:#9aa0c4;--navy-300:#626a9c;--navy-400:#363f76;--navy-500:#1c2559;--navy-600:#131a48;--navy-700:#0d123b;--navy-800:#0a0e33;--navy-900:#060924;
  --orange-50:#fef2e6;--orange-100:#fde0c4;--orange-200:#fbc189;--orange-300:#f8a251;--orange-400:#f6902f;--orange-500:#f4811e;--orange-600:#db6d12;--orange-700:#b3560c;
  --white:#fff;--paper:#f6faf9;--gray-50:#f3f5f8;--gray-100:#e8ecf1;--gray-200:#dbe1e9;--gray-300:#c3cbd7;--gray-400:#9aa4b4;--gray-500:#6e7889;--gray-600:#515a6b;--gray-700:#3b4351;--gray-800:#262c37;
  --success:#1fa587;--success-bg:#e5f7f1;--warning:#f4811e;--error:#e14b4b;
  --text-strong:var(--navy-800);--text-body:#38405f;--text-muted:#6b7391;
  --border:#e4e9f0;--border-strong:#d0d7e2;
  --font-display:'Poppins','Segoe UI',system-ui,sans-serif;--font-body:'Nunito','Segoe UI',system-ui,sans-serif;--font-accent:'Caveat',cursive;
  --fs-h1:clamp(2.1rem,1.4rem + 2.6vw,3.25rem);--fs-h2:clamp(1.6rem,1.2rem + 1.6vw,2.4rem);--fs-h3:clamp(1.3rem,1.1rem + 0.8vw,1.7rem);--fs-h4:1.25rem;--fs-lead:clamp(1.1rem,1rem + 0.4vw,1.3rem);--fs-body:1.0625rem;--fs-sm:.9375rem;--fs-xs:.8125rem;
  --lh-tight:1.08;--lh-body:1.65;--ls-tight:-0.02em;--ls-overline:.14em;
  --space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;
  --section-y:clamp(3.5rem,2.5rem + 5vw,7rem);--container:1180px;--container-narrow:760px;--gutter:clamp(1.25rem,0.5rem + 3vw,2.5rem);
  --radius-sm:10px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-2xl:36px;--radius-pill:999px;
  --shadow-sm:0 2px 8px rgba(10,14,51,.07);--shadow-md:0 8px 24px rgba(10,14,51,.09);--shadow-lg:0 18px 44px rgba(10,14,51,.12);--shadow-teal:0 12px 30px rgba(46,192,160,.28);--shadow-cta:0 10px 24px rgba(244,129,30,.30);
}
/* ---- Global typography (set once, not per module) ---- */
html body{font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body);-webkit-font-smoothing:antialiased}
body h1,body h2,body h3,body h4,body h5,body h6,
body .et_pb_heading_container h1,body .et_pb_heading_container h2,body .et_pb_heading_container h3,body .et_pb_heading_container h4{font-family:var(--font-display) !important;color:var(--text-strong);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);font-weight:700}
body p,body li,body .et_pb_text,body a{font-family:var(--font-body)}
body p{line-height:var(--lh-body)}
/* ---- Layout helpers ---- */
.avwd-container{max-width:var(--container);margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter);box-sizing:border-box}
.avwd-narrow{max-width:var(--container-narrow) !important}
.sec{padding-top:var(--section-y) !important;padding-bottom:var(--section-y) !important}
.sec--teal{background:var(--teal-50) !important}
.sec--navy{background:var(--navy-800) !important}
.sec--navy h1,.sec--navy h2,.sec--navy h3,.sec--navy h4{color:#fff !important}
.sec--navy p,.sec--navy li{color:var(--navy-100) !important}
.sec--hero{background:linear-gradient(180deg,var(--teal-50) 0%,#fff 72%) !important}
/* ---- Center text in centered columns (rule 14) ---- */
.tc,.tc .et_pb_text_inner,.tc p,.tc h1,.tc h2,.tc h3{text-align:center !important}
/* ---- Pill buttons — brand variants ---- */
body a.et_pb_button.avwd-btn,body .avwd-btn a.et_pb_button{border-radius:var(--radius-pill) !important;font-family:var(--font-display) !important;font-weight:600 !important;padding:.8rem 1.6rem !important;border:1px solid transparent !important;transition:transform .2s,box-shadow .2s,background .2s !important;line-height:1 !important}
body a.et_pb_button.avwd-btn:after,body a.et_pb_button.avwd-btn:before{display:none !important;content:none !important}
body a.et_pb_button.avwd-btn:hover{transform:translateY(-2px)}
body a.et_pb_button.avwd-btn--primary{background:var(--orange-500) !important;color:#fff !important;box-shadow:var(--shadow-cta) !important}
body a.et_pb_button.avwd-btn--primary:hover{background:var(--orange-600) !important}
body a.et_pb_button.avwd-btn--secondary{background:var(--teal-500) !important;color:#fff !important;box-shadow:var(--shadow-teal) !important}
body a.et_pb_button.avwd-btn--secondary:hover{background:var(--teal-600) !important}
body a.et_pb_button.avwd-btn--outline{background:transparent !important;color:var(--teal-700) !important;border:1.5px solid var(--teal-500) !important}
body a.et_pb_button.avwd-btn--outline:hover{background:var(--teal-50) !important}
body a.et_pb_button.avwd-btn--ghost{background:transparent !important;color:var(--navy-800) !important}
body a.et_pb_button.avwd-btn--ink{background:var(--navy-800) !important;color:#fff !important;box-shadow:var(--shadow-md) !important}
/* ---- Cards / tiles / badges ---- */
.avwd-card{background:#fff !important;border:1px solid var(--border) !important;border-radius:var(--radius-xl) !important;box-shadow:var(--shadow-sm) !important}
.avwd-badge .et_pb_text_inner,.avwd-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-weight:800;font-size:var(--fs-xs);letter-spacing:var(--ls-overline);text-transform:uppercase;color:var(--teal-700);background:var(--teal-100);border-radius:var(--radius-pill);padding:.3rem .75rem}
.avwd-badge--orange .et_pb_text_inner,.avwd-badge--orange{color:#fff;background:var(--orange-500);letter-spacing:normal;text-transform:none;font-size:var(--fs-sm)}
/* ---- Mobile: gutters, center buttons, no overflow ---- */
body p,body h1,body h2,body h3{overflow-wrap:break-word}
@media (max-width:980px){
  .avwd-container{padding-left:max(var(--gutter),20px);padding-right:max(var(--gutter),20px)}
}
@media (max-width:480px){
  .avwd-container{padding-left:20px;padding-right:20px}
  .avwd-btns-mobile-center{text-align:center !important}
  .avwd-btns-mobile-center .et_pb_button_module_wrapper{text-align:center !important}
}
/* ---- Sticky header (rule 4: CSS on wrapper) ---- */
.avwd-header.avwd-sticky{position:sticky !important;top:0;z-index:1000;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}