.elementor-kit-7{--e-global-color-primary:#006D56;--e-global-color-secondary:#0B1220;--e-global-color-text:#475569;--e-global-color-accent:#006D56;--e-global-color-accentalt:#006D56;--e-global-color-muted:#94A3B8;--e-global-color-border:#E2E8F0;--e-global-color-surface:#F4F6F8;--e-global-color-white:#FFFFFF;--e-global-typography-primary-font-family:"Inter";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:600;--e-global-typography-h1hero-font-family:"Inter";--e-global-typography-h1hero-font-size:58px;--e-global-typography-h1hero-font-weight:700;--e-global-typography-h1hero-line-height:67px;--e-global-typography-h1hero-letter-spacing:-1.45px;--e-global-typography-eyebrow-font-family:"Inter";--e-global-typography-eyebrow-font-size:14px;--e-global-typography-eyebrow-font-weight:600;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-letter-spacing:0.35px;--e-global-typography-statnum-font-family:"Inter";--e-global-typography-statnum-font-size:42px;--e-global-typography-statnum-font-weight:800;--e-global-typography-statnum-line-height:42px;--e-global-typography-btntext-font-family:"Inter";--e-global-typography-btntext-font-size:16px;--e-global-typography-btntext-font-weight:600;--e-global-typography-btntext-line-height:24px;--e-global-typography-bodylg-font-family:"Inter";--e-global-typography-bodylg-font-size:18px;--e-global-typography-bodylg-font-weight:400;--e-global-typography-bodylg-line-height:29px;color:#475569;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:26px;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 h1{color:#0B1220;font-family:"Inter", Sans-serif;font-size:54px;font-weight:700;line-height:1.12em;}.elementor-kit-7 h2{color:#0B1220;font-family:"Inter", Sans-serif;font-size:40px;font-weight:700;line-height:48px;}.elementor-kit-7 h3{color:#0B1220;font-family:"Inter", Sans-serif;font-size:21px;font-weight:600;line-height:27px;}.elementor-kit-7 h4{color:#0B1220;font-family:"Inter", Sans-serif;font-size:18px;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* disable-smooth-scroll: stop Elementor's global smooth scroll that caused auto-gliding between sections */
html{ scroll-behavior:auto !important; }

/* reflow-stability: prevent idle scroll jumps from lazy-image pop-in */
html, body{ overflow-anchor:none; }
.cv-testi-media{ min-height:296px; }
.cv-testi-media img.cv-poster{ width:100%; height:100%; }
.cv-card-img{ min-height:235px; }

/* engine-image-stability: lock all Engine step images to one aspect ratio so auto-advance doesn't change section height (was causing idle scroll jump) */
.elementor-element-cvenginesection .e-n-tabs-content img{ width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; }

/* section-height-lock: pin auto-advancing sections so no cycle can change page height (stops intermittent scroll jump) */
.elementor-element-cvenginesection .e-n-tabs-content{ min-height:700px; }
.cv-testi-track{ min-height:300px; }

/* CTA (footer 50) spacing: heading->sub 32px, buttons closer to sub */
.elementor-element-ctasub{ margin-top:32px !important; }
.elementor-element-ctabtnrow{ margin-top:28px !important; }

/* ============================================================
   CV RESPONSIVE MENU + HEADER  (consolidated)
   Block A: header layout + custom hamburger + full-screen menu
   trigger. Applies at <=1024px = wherever Elementor shows the
   burger (phones portrait/landscape + tablets). Desktop >1024px
   keeps its own finalized horizontal nav, untouched.
   ============================================================ */
@media (max-width: 1024px){
  /* logo + nav boxes: drop desktop fixed widths, hide the header CTA button */
  body .elementor-element.elementor-element-3418b86{ width:auto !important; align-self:center !important; padding-top:0 !important; padding-bottom:0 !important; }
  body .elementor-element.elementor-element-5a9e552{ width:auto !important; height:auto !important; min-height:0 !important; align-self:center !important; padding-top:0 !important; padding-bottom:0 !important; }
  body .elementor-element.elementor-element-b6f0e15{ display:none !important; }
  /* header row: single centered line, tighter vertical padding */
  body .elementor-element.elementor-element-1d560e0{ padding-top:10px !important; padding-bottom:10px !important; }
  body .elementor-element.elementor-element-729cbb8{ flex-direction:row !important; align-items:center !important; }
  body .elementor-element.elementor-element-729cbb8 > .e-con-inner{ align-items:center !important; }
  /* nav widget: collapse height and take the closed dropdown out of flow so the toggle centers with the logo */
  body .elementor-element.elementor-element-05c1fd3.elementor-widget-nav-menu{ position:relative !important; justify-content:center !important; }
  body .elementor-element.elementor-element-05c1fd3.elementor-widget-nav-menu > nav.elementor-nav-menu--dropdown:not(.cv-fs-open):not(.cv-fs){ position:absolute !important; top:100% !important; left:0 !important; right:0 !important; margin-top:0 !important; }
  body .elementor-element.elementor-element-05c1fd3 .elementor-menu-toggle{ height:auto !important; padding:8px !important; margin:0 !important; align-self:center !important; background-color:transparent !important; }
  /* custom hamburger icon (closed state) */
  body .elementor-element.elementor-element-05c1fd3 .elementor-menu-toggle .elementor-menu-toggle__icon--open{ display:none !important; }
  body .elementor-element.elementor-element-05c1fd3 .elementor-menu-toggle:not(.elementor-active)::before{ content:'' !important; display:inline-block; width:26px; height:26px; background-image:url('/wp-content/uploads/2026/07/gridicons_menu.svg'); background-size:26px 26px; background-repeat:no-repeat; background-position:center; }
}

/* ============================================================
   Block B: phone-only polish (<=767px). Hero single-column
   stacking + 3-up stats shrink. Tablets (768-1024) use
   Elementor's own responsive layout, so these stay phone-scoped.
   ============================================================ */
@media (max-width: 767px){
  /* hero: stack the two columns, CTAs full width */
  body .elementor-element.elementor-element-herorow{ flex-direction:column !important; padding-top:8px !important; }
  body .elementor-element.elementor-element-herol1{ width:100% !important; }
  body .elementor-element.elementor-element-heror1{ width:100% !important; }
  body .elementor-element.elementor-element-heroctarow1{ flex-direction:column !important; align-items:stretch !important; }
  body .elementor-element.elementor-element-heroctarow1 .elementor-button{ width:100% !important; justify-content:center !important; }
  /* stats: three equal columns, shrink to fit, no overflow */
  body .elementor-element.elementor-element-6d7ef84,
  body .elementor-element.elementor-element-b21cbc4,
  body .elementor-element.elementor-element-bf40242{ flex:1 1 0px !important; width:auto !important; min-width:0 !important; }
  .elementor-element-095ea02, .elementor-element-589695e{ flex:0 0 auto !important; }
  .elementor-element-5da84ad, .elementor-element-ac4a5e7, .elementor-element-3c8760f,
  .elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *{ font-size:30px !important; }
  .elementor-element-004a53b, .elementor-element-2503277, .elementor-element-a4e3c04,
  .elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{ font-size:12px !important; line-height:1.3 !important; }
  html, body{ overflow-x:clip !important; }
}

/* === MOBILE HERO REWORK (<=767px: hide subtext, stats as band below hero) === */
@media (max-width: 767px){
  /* 2) stats: detach to the bottom of the hero column as their own band */
  body .elementor-element.elementor-element-42b2188{ width:100% !important; margin-top:12px !important; padding-top:20px !important; border-top:1px solid #E2E8F0 !important; }
  /* ensure the hero left column is a column flex so order applies */
  body .elementor-element.elementor-element-herol1 > .e-con-inner{ display:flex !important; flex-direction:column !important; }
  /* 3) give the card area more room for bigger cards */
  body .elementor-element.elementor-element-heror1{ min-height:340px !important; }
  body .elementor-element.elementor-element-cardrow1{ min-height:320px !important; overflow:hidden !important; }
}
/* === HERO IMG COVER BOTTOM (responsive: fill area, doctor centered, base at bottom) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-heror1{
    background-size:cover !important;
    background-position:30% bottom !important;
    background-repeat:no-repeat !important;
    min-height:360px !important;
  }
}

/* === HERO MOVE UP (responsive: pull eyebrow/hero closer to header) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-herorow{ padding-top:0 !important; }
  body .elementor-element.elementor-element-herol1{ padding-top:0 !important; margin-top:-14px !important; }
  
  body .elementor-element.elementor-element-herosub1{ margin-top:-8px !important; }
}

/* === HERO IMAGE PULL UP (responsive: bring image+cards up, buttons overlap image) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-heror1{ margin-top:-90px !important; position:relative !important; z-index:1 !important; }
  body .elementor-element.elementor-element-herol1{ position:relative !important; z-index:2 !important; }
}

/* === EYEBROW CHIP FLAT (phones: drop pill background, keep text only) === */
@media (max-width: 767px){
  body .elementor-element.elementor-element-eyebrow1{ background:transparent !important; background-color:transparent !important; border-radius:0 !important; padding-left:0 !important; padding-right:0 !important; padding-top:0 !important; padding-bottom:0 !important; }
}

/* === CARDS MOVE UP (responsive: lift card animation higher into view) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-cardrow1{ top:40px !important; }
}

/* === HERO IMG BLEED RIGHT (responsive: extend image to viewport right edge, no seam) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-heror1{ width:100vw !important; max-width:100vw !important; margin-left:calc(50% - 50vw) !important; margin-right:0 !important; }
}

/* === CARDS SHIFT RIGHT (responsive: nudge card animation rightward) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-cardrow1{ left:-70px !important; }
}

/* === EYEBROW GRAY (eyebrow chip text -> gray, all screens) === */
body .elementor-element.elementor-element-eyebrow1,
body .elementor-element.elementor-element-eyebrow1 *{ color:#64748B !important; }

/* === STATS TO NEXT GAP (responsive: reduce gap between stats and 'Trusted by' section) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-herorow{ padding-bottom:10px !important; }
  body .elementor-element.elementor-element-cvlogosection{ padding-top:4px !important; }
}

/* === TRUSTED EYEBROW LINEHEIGHT (natural line spacing on wrap) === */
@media (max-width: 1024px){
  body .elementor-element.elementor-element-cvlogoeyebrow, body .elementor-element.elementor-element-cvlogoeyebrow *{ line-height:1.5 !important; }
}

/* === MOBILE STATS STACK (<=767px: stack the 3 counters vertically, bigger) === */
@media (max-width: 767px){
  body .elementor-element.elementor-element-42b2188 > .e-con-inner{ flex-direction:column !important; align-items:flex-start !important; gap:36px !important; }
  body .elementor-element.elementor-element-6d7ef84,
  body .elementor-element.elementor-element-b21cbc4,
  body .elementor-element.elementor-element-bf40242{ flex:0 0 auto !important; width:100% !important; text-align:left !important; align-items:flex-start !important; }
  /* hide the vertical dividers when stacked */
  body .elementor-element.elementor-element-095ea02,
  body .elementor-element.elementor-element-589695e{ display:none !important; }
  /* bigger numbers now that they have room */
  .elementor-element-5da84ad, .elementor-element-ac4a5e7, .elementor-element-3c8760f,
  .elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *{ font-size:44px !important; }
  .elementor-element-004a53b, .elementor-element-2503277, .elementor-element-a4e3c04,
  .elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{ font-size:15px !important; line-height:1.4 !important; }
}

/* === MOBILE STATS BIGGER (<=767px: full-width labels one line, larger) === */
@media (max-width: 767px){
  /* let the number+label widgets use the full column width so labels fit one line */
  body .elementor-element.elementor-element-6d7ef84 > .e-con-inner,
  body .elementor-element.elementor-element-b21cbc4 > .e-con-inner,
  body .elementor-element.elementor-element-bf40242 > .e-con-inner{ width:100% !important; align-items:flex-start !important; }
  body .elementor-element.elementor-element-5da84ad,
  body .elementor-element.elementor-element-ac4a5e7,
  body .elementor-element.elementor-element-3c8760f,
  body .elementor-element.elementor-element-004a53b,
  body .elementor-element.elementor-element-2503277,
  body .elementor-element.elementor-element-a4e3c04{ width:100% !important; max-width:100% !important; }
  /* bigger numbers */
  .elementor-element-5da84ad, .elementor-element-ac4a5e7, .elementor-element-3c8760f,
  .elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *{ font-size:52px !important; line-height:1.05 !important; }
  /* bigger labels, allow one line */
  .elementor-element-004a53b, .elementor-element-2503277, .elementor-element-a4e3c04,
  .elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{ font-size:17px !important; line-height:1.4 !important; white-space:nowrap !important; }
}

/* long stat label may wrap (prevent overflow) */
@media (max-width: 767px){
  /* a4e3c04 label wrap override */
  .elementor-element-a4e3c04, .elementor-element-a4e3c04 *{ white-space:normal !important; }
}

/* === MOBILE STATS FULLWIDTH (<=767px: force stat blocks to full column width) === */
@media (max-width: 767px){
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-6d7ef84,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-b21cbc4,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-bf40242{ width:100% !important; max-width:100% !important; flex-basis:100% !important; }
}

/* === STATS BR HIDE (<=767px: remove forced line breaks in stat labels) === */
@media (max-width: 767px){
  .elementor-element-004a53b br,
  .elementor-element-2503277 br,
  .elementor-element-a4e3c04 br{ display:none !important; }
}

/* === STATS ELEGANT RESTYLE (all screens: light weight + dark color, Mintlify-style) === */
.elementor-element-5da84ad, .elementor-element-ac4a5e7, .elementor-element-3c8760f,
.elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *{
  font-weight:300 !important;
  color:#0F172A !important;
  letter-spacing:-1px !important;
}
.elementor-element-004a53b, .elementor-element-2503277, .elementor-element-a4e3c04,
.elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{
  font-weight:400 !important;
  color:#64748B !important;
}

/* === DESKTOP STATS SMALLER (>1024px: shrink hero counters to declutter) === */
@media (min-width: 1025px){
  .elementor-element-5da84ad, .elementor-element-ac4a5e7, .elementor-element-3c8760f,
  .elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *{ font-size:32px !important; }
  .elementor-element-004a53b, .elementor-element-2503277, .elementor-element-a4e3c04,
  .elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{ font-size:13px !important; }
}



/* === DESKTOP STATS SYMMETRIC (>1024px: counters fit content, equal space around dividers) === */
@media (min-width: 1025px){
  body .elementor-element.elementor-element-42b2188 > .e-con-inner{ justify-content:flex-start !important; align-items:stretch !important; }
  /* counters shrink to fit their content (no trailing dead space) */
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-6d7ef84,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-b21cbc4,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-bf40242{ width:-webkit-max-content !important; width:max-content !important; min-width:0 !important; max-width:none !important; flex:0 0 auto !important; }
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-6d7ef84 > .e-con-inner,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-b21cbc4 > .e-con-inner,
  body .elementor-element.elementor-element-42b2188 .elementor-element.elementor-element-bf40242 > .e-con-inner{ width:-moz-fit-content !important; width:fit-content !important; }
  /* dividers: equal generous margin on BOTH sides = symmetric spacing */
  body .elementor-element.elementor-element-095ea02,
  body .elementor-element.elementor-element-589695e{ margin-left:32px !important; margin-right:32px !important; }
}

/* === TWO-FONT SYSTEM: Inter for all content EXCEPT Arizona Flare headings === */
/* Broad base: Inter on common content widgets. Arizona Flare rule (H1/H2 heading widgets, .entry-title, .cv-cmp__head) has its own !important and wins over this. */
.elementor-widget-button .elementor-button,
.elementor-widget-button .elementor-button *,
.elementor-widget-counter .elementor-counter-number,
.elementor-widget-counter .elementor-counter-title,
.elementor-widget-heading h3.elementor-heading-title,
.elementor-widget-heading h4.elementor-heading-title,
.elementor-widget-heading h5.elementor-heading-title,
.elementor-widget-heading h6.elementor-heading-title,
.elementor-widget-n-tabs .e-n-tab-title-text,
.elementor-widget-n-tabs .e-n-tab-title,
.elementor-element-5da84ad *, .elementor-element-ac4a5e7 *, .elementor-element-3c8760f *,
.elementor-element-004a53b *, .elementor-element-2503277 *, .elementor-element-a4e3c04 *{ font-family:'Inter', sans-serif !important; }





body .elementor-widget-heading h1.elementor-heading-title, body .elementor-widget-heading h1.elementor-heading-title span, body .elementor-widget-heading h1.elementor-heading-title *,
body .elementor-widget-heading h2.elementor-heading-title, body .elementor-widget-heading h2.elementor-heading-title span, body .elementor-widget-heading h2.elementor-heading-title *,
body .cv-cmp__head, body .cv-cmp__head *,
body .entry-title, body .entry-title *{ font-family:'ABC Arizona Flare','Archivo',serif !important; }

/* === TWO-FONT SYSTEM: Inter base, Arizona Flare headings === */
.elementor *:not(.elementor-heading-title):not(.cv-cmp__head):not(.entry-title){ font-family:'Inter', sans-serif !important; }
html body .elementor .elementor-widget-heading h1.elementor-heading-title:not(#x), html body .elementor .elementor-widget-heading h1.elementor-heading-title:not(#x) *, html body .elementor .elementor-widget-heading h2.elementor-heading-title:not(#x), html body .elementor .elementor-widget-heading h2.elementor-heading-title:not(#x) *, html body .elementor-element-ctaheading .elementor-heading-title:not(#x), html body .elementor-element-ctaheading .elementor-heading-title:not(#x) *, html body .cv-cmp__head:not(#x), html body .cv-cmp__head:not(#x) *, html body .entry-title:not(#x), html body .entry-title:not(#x) *{ font-family:'ABC Arizona Flare','Archivo',serif !important; font-weight:400 !important; letter-spacing:-2px !important; }

/* === NON-MAJOR HEADING-TITLES to Inter (stat numbers, small headings) === */
div.elementor-heading-title, div.elementor-heading-title *,
h3.elementor-heading-title, h3.elementor-heading-title *,
h4.elementor-heading-title, h4.elementor-heading-title *,
h5.elementor-heading-title, h6.elementor-heading-title{ font-family:'Inter', sans-serif !important; }

/* === HIW STATS ELEGANT (How it Works counters -> match homepage elegant style) === */
.elementor-element-hiwm1_n, .elementor-element-hiwm2_n, .elementor-element-hiwm3_n, .elementor-element-hiwm4_n,
.elementor-element-hiwm1_n *, .elementor-element-hiwm2_n *, .elementor-element-hiwm3_n *, .elementor-element-hiwm4_n *{
  font-weight:300 !important;
  color:#0F172A !important;
  letter-spacing:-1px !important;
}
.elementor-element-hiwm1_l, .elementor-element-hiwm2_l, .elementor-element-hiwm3_l, .elementor-element-hiwm4_l,
.elementor-element-hiwm1_l *, .elementor-element-hiwm2_l *, .elementor-element-hiwm3_l *, .elementor-element-hiwm4_l *{
  font-weight:400 !important;
  color:#64748B !important;
}

/* === CATEGORY TITLES ARIZONA (cv-cat-title -> match major headings) === */
html body .elementor .cv-cat-title:not(#x):not(#y), html body .elementor .cv-cat-title:not(#x):not(#y) *{ font-family:'ABC Arizona Flare','Archivo',serif !important; font-weight:400 !important; letter-spacing:-2px !important; }

/* === HERO NUDGE RIGHT (desktop: shift hero image + card slider ~40px right) === */
@media (min-width:1025px){
  body .elementor-element.elementor-element-heror1{ margin-left:-260px !important; }
  body .elementor-element.elementor-element-cardrow1{ left:-50px !important; }
}

/* === EYEBROW FLAT ALL SCREENS (remove pill bg/curve/padding, keep just the grey label text) === */
body .elementor-element.elementor-element-eyebrow1{ background:transparent !important; background-color:transparent !important; border-radius:0 !important; padding-left:0 !important; padding-right:0 !important; padding-top:0 !important; padding-bottom:0 !important; border:0 !important; }
body .elementor-element.elementor-element-eyebrow1 .elementor-heading-title{ color:#64748B !important; font-weight:600 !important; font-size:11px !important; letter-spacing:0.6px !important; }
body .elementor-element.elementor-element-eyebrow1{ margin-bottom:0 !important; }

/* === HIDE HERO CARDS (right column hidden for hero rebuild - reversible) === */
.elementor-element-heror1{ display:none !important; }

/* === HERO BUTTONS PILL (match nav pill shape 999px) === */
.elementor-element-ctabtn1 a.elementor-button, .elementor-element-ctabtn2 a.elementor-button{ border-radius:999px !important; }

/* === CUSTOM ARROW ICON (replace FA arrow with custom SVG; white on dark, dark on light) === */
/* hide the Font Awesome glyph on hero buttons */
.elementor-element-ctabtn1 .elementor-button-icon i, .elementor-element-ctabtn2 .elementor-button-icon i, .elementor-element-ctabtn1 .elementor-button-icon svg, .elementor-element-ctabtn2 .elementor-button-icon svg{ display:none !important; }
/* show custom arrow via mask so we can recolor it */
.elementor-element-ctabtn1 .elementor-button-icon, .elementor-element-ctabtn2 .elementor-button-icon{ display:inline-flex; align-items:center; }
.elementor-element-ctabtn1 .elementor-button-icon::after, .elementor-element-ctabtn2 .elementor-button-icon::after{ content:''; display:inline-block; width:16px; height:16px; -webkit-mask:url('/wp-content/uploads/2026/07/guidance_up-arrow.svg') no-repeat center / contain; mask:url('/wp-content/uploads/2026/07/guidance_up-arrow.svg') no-repeat center / contain; }
/* primary (green bg) -> white arrow */
.elementor-element-ctabtn1 .elementor-button-icon::after{ background-color:#ffffff; }
/* text button (light bg) -> dark arrow */
.elementor-element-ctabtn2 .elementor-button-icon::after{ background-color:#0F172A; }

/* === NAV BUTTON ARROW (add custom white arrow to nav CTA) === */
.elementor-element-c445ac1 a.elementor-button .elementor-button-text{ display:inline-flex; align-items:center; }
.elementor-element-c445ac1 a.elementor-button .elementor-button-text::after{ content:''; display:inline-block; width:16px; height:16px; margin-left:9px; -webkit-mask:url('/wp-content/uploads/2026/07/guidance_up-arrow.svg') no-repeat center / contain; mask:url('/wp-content/uploads/2026/07/guidance_up-arrow.svg') no-repeat center / contain; background-color:#ffffff; }

/* === HERO BTN REFINEMENTS (nav one-line, arrow gap, text-button outlined) === */
/* 1. nav button: keep on one line */
.elementor-element-c445ac1 a.elementor-button, .elementor-element-c445ac1 a.elementor-button .elementor-button-text{ white-space:nowrap !important; }
/* 2. more gap between text and custom arrow (hero + nav) */
.elementor-element-ctabtn1 .elementor-button-icon::after, .elementor-element-ctabtn2 .elementor-button-icon::after{ margin-left:5px; }
.elementor-element-c445ac1 a.elementor-button .elementor-button-text::after{ margin-left:12px !important; }
.elementor-element-ctabtn1 .elementor-button-icon, .elementor-element-ctabtn2 .elementor-button-icon{ margin-left:4px; }
/* 3. 'See how it works' -> outlined green pill button */
.elementor-element-ctabtn2 a.elementor-button{ border:1.5px solid #006D56 !important; color:#006D56 !important; background:transparent !important; }
.elementor-element-ctabtn2 a.elementor-button .elementor-button-text{ color:#006D56 !important; }
/* its arrow -> green to match */
.elementor-element-ctabtn2 .elementor-button-icon::after{ background-color:#006D56 !important; }

/* === HERO TEXT COL WIDEN (desktop: give headline room for 2 lines) === */
@media (min-width:1025px){
  .elementor-element-herol1{ width:680px !important; max-width:680px !important; }
}

/* === HERO FULL VIEWPORT (desktop: hero fills viewport minus header) === */
@media (min-width:1025px){
  .elementor-element-herorow{ min-height:calc(100vh - 107px) !important; }
}

/* === HERO CONTENT TOP ALIGN (stop vertical centering; text sits at top) === */
@media (min-width:1025px){
  .elementor-element-herorow > .e-con-inner{ align-items:flex-start !important; }
}

/* === STATS PIN BOTTOM (stretch text col, push stats to viewport bottom) === */
@media (min-width:1025px){
  .elementor-element-herol1{ align-self:stretch !important; }
  .elementor-element-42b2188{ margin-top:auto !important; }
}

/* === FOOTER CTA secondary button: white outline + white text (footer only — hero ctabtn2 stays green; ids are shared, see handoff §12) === */
footer.elementor-location-footer .elementor-element-ctabtn2 a.elementor-button{ border-color:#FFFFFF !important; color:#FFFFFF !important; }
footer.elementor-location-footer .elementor-element-ctabtn2 a.elementor-button .elementor-button-text{ color:#FFFFFF !important; }
footer.elementor-location-footer .elementor-element-ctabtn2 .elementor-button-icon::after{ background-color:#FFFFFF !important; }
/* Blog single content styling */
.elementor .elementor-element-blogcontent.elementor-element-blogcontent.elementor-element-blogcontent.elementor-element-blogcontent h2{ font-family:'ABC Arizona Flare',Archivo,serif !important; font-weight:400 !important; font-size:30px !important; color:#0B1220 !important; line-height:1.25 !important; margin:44px 0 16px !important; }
.elementor .elementor-element-blogcontent.elementor-element-blogcontent.elementor-element-blogcontent.elementor-element-blogcontent h3{ font-family:'ABC Arizona Flare',Archivo,serif !important; font-weight:400 !important; font-size:23px !important; color:#0B1220 !important; line-height:1.3 !important; margin:30px 0 12px !important; }
.elementor-element-blogcontent p{ font-family:'Inter',sans-serif !important; font-size:17px !important; line-height:1.72 !important; color:#334155 !important; margin:0 0 20px !important; }
.elementor-element-blogcontent ul,.elementor-element-blogcontent ol{ font-family:'Inter',sans-serif !important; font-size:17px !important; line-height:1.72 !important; color:#334155 !important; margin:0 0 22px !important; padding-left:22px !important; }
.elementor-element-blogcontent li{ margin-bottom:9px !important; }
.elementor-element-blogcontent a{ color:#006D56 !important; text-decoration:underline; }
.elementor-element-blogcontent img{ border-radius:12px; max-width:100%; height:auto; margin:26px 0; }
.elementor-element-blogcontent blockquote{ border-left:3px solid #006D56; padding:2px 0 2px 22px; font-style:italic; color:#475569; margin:26px 0; }
.elementor-element-blogmeta .elementor-icon-list-text, .elementor-element-blogmeta .elementor-post-info__item{ color:#94A3B8 !important; font-family:'Inter' !important; font-size:14px !important; }
/* Blog single-post white bg */
body.single-post{ background-color:#ffffff !important; }
body.single-post .ast-separate-container{ background-color:#ffffff !important; }
/* Blog single-post tighten top */
body.single-post .content-area{ margin-top:0 !important; }
body.single-post .elementor-location-single{ padding-top:0 !important; }
/* Blog prev/next nav */
.cv-nav-card{ transition:border-color .15s ease, box-shadow .15s ease; }
.cv-nav-card:hover{ border-color:#006D56 !important; box-shadow:0 8px 24px rgba(0,109,86,.08); }
.cv-nav-card:hover .cv-nav-title{ color:#006D56 !important; }
@media (max-width:600px){ .cv-post-nav{ flex-direction:column !important; } .cv-post-nav a{ text-align:left !important; } }
/* ===== Case study detail ===== */
body.single-cv_case_study{ background-color:#ffffff !important; }
body.single-cv_case_study .content-area{ margin-top:0 !important; }
body.single-cv_case_study .elementor-location-single{ padding-top:0 !important; }
.elementor-element-csimg img{ border-radius:16px; }
.cv-cs-metrics{ display:flex; flex-wrap:wrap; justify-content:center; align-items:flex-start; gap:34px 54px; }
.cv-cs-metric{ text-align:center; min-width:110px; max-width:190px; }
.cv-cs-metric-num{ font-weight:400 !important; font-size:46px; line-height:1; color:#006D56; }
.cv-cs-metric-label{ font-family:'Inter',sans-serif; font-size:14px; line-height:1.45; color:#64748B; margin-top:10px; }
.cv-cs-facts{ display:grid; grid-template-columns:repeat(auto-fit,minmax(165px,1fr)); gap:1px; background:#E2E8F0; border:1px solid #E2E8F0; border-radius:14px; overflow:hidden; }
.cv-cs-fact{ background:#ffffff; padding:18px 22px; }
.cv-cs-fact-k{ font-family:'Inter',sans-serif; font-size:11.5px; font-weight:600; letter-spacing:.7px; text-transform:uppercase; color:#94A3B8; margin-bottom:6px; }
.cv-cs-fact-v{ font-family:'Inter',sans-serif; font-size:14.5px; line-height:1.5; color:#0B1220; }
.elementor .elementor-element-cscontent.elementor-element-cscontent.elementor-element-cscontent.elementor-element-cscontent h2{ font-family:'ABC Arizona Flare',Archivo,serif !important; font-weight:400 !important; font-size:30px !important; color:#0B1220 !important; line-height:1.25 !important; margin:42px 0 16px !important; }
.elementor .elementor-element-cscontent.elementor-element-cscontent.elementor-element-cscontent.elementor-element-cscontent h3{ font-family:'ABC Arizona Flare',Archivo,serif !important; font-weight:400 !important; font-size:23px !important; color:#0B1220 !important; line-height:1.3 !important; margin:30px 0 12px !important; }
.elementor-element-cscontent p{ font-family:'Inter',sans-serif !important; font-size:17px !important; line-height:1.72 !important; color:#334155 !important; margin:0 0 20px !important; }
.elementor-element-cscontent ul,.elementor-element-cscontent ol{ font-family:'Inter',sans-serif !important; font-size:17px !important; line-height:1.72 !important; color:#334155 !important; margin:0 0 22px !important; padding-left:22px !important; }
.elementor-element-cscontent li{ margin-bottom:9px !important; }
.elementor-element-cscontent a{ color:#006D56 !important; text-decoration:underline; }
@media (max-width:600px){ .cv-cs-metric-num{ font-size:38px; } }

.elementor .cv-cs-metrics .cv-cs-metric-num.cv-cs-metric-num.cv-cs-metric-num{ font-family:'ABC Arizona Flare',Archivo,serif !important; }

/* Case study facts - two-zone panel */
.cv-cs-facts{ display:flex !important; align-items:stretch; gap:0; background:#ffffff !important; border:1px solid #E6EAF0 !important; border-radius:16px !important; overflow:hidden; }
.cv-cs-facts-left{ flex:1 1 54%; display:grid; grid-template-columns:1fr 1fr; gap:26px 24px; padding:34px 40px; align-content:start; }
.cv-cs-facts-div{ width:1px; background:#E6EAF0; align-self:stretch; margin:32px 0; }
.cv-cs-facts-right{ flex:1 1 46%; padding:34px 40px; }
.cv-cs-facts .cv-cs-fact{ background:transparent !important; padding:0 !important; }
.cv-cs-facts .cv-cs-fact-k{ margin-bottom:8px; }
.cv-cs-facts .cv-cs-fact-v{ font-size:15px; font-weight:500; }
.cv-cs-services{ list-style:disc; padding-left:20px !important; margin:8px 0 0 !important; }
.cv-cs-services li{ font-family:'Inter',sans-serif !important; font-size:15px !important; line-height:1.5 !important; color:#0B1220 !important; margin-bottom:11px !important; }
.cv-cs-services li:last-child{ margin-bottom:0 !important; }
@media (max-width:680px){ .cv-cs-facts{ flex-direction:column; } .cv-cs-facts-div{ width:auto; height:1px; margin:0 40px; } .cv-cs-facts-left{ grid-template-columns:1fr; } }

/* Case study - more case studies */
.cv-csr-head{ font-family:'ABC Arizona Flare',Archivo,serif; font-weight:400; font-size:27px; color:#0B1220; text-align:center; margin-bottom:26px; }
.cv-csr-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(255px,1fr)); gap:20px; }
.cv-csr-card{ display:block; background:#fff; border:1px solid #E6EAF0; border-radius:14px; padding:26px 28px; text-decoration:none !important; transition:border-color .15s ease, box-shadow .15s ease; }
.cv-csr-card:hover{ border-color:#006D56; box-shadow:0 8px 24px rgba(0,109,86,.08); }
.cv-csr-num{ font-weight:400; font-size:34px; line-height:1; color:#006D56; }
.cv-csr-mlabel{ font-family:'Inter',sans-serif; font-size:13px; line-height:1.4; color:#64748B; margin-top:6px; }
.cv-csr-title{ font-weight:400; font-size:19px; line-height:1.32; color:#0B1220; margin-top:18px; }
.cv-csr-client{ font-family:'Inter',sans-serif; font-size:13px; color:#94A3B8; margin-top:10px; }
.elementor .cv-csr .cv-csr-num.cv-csr-num.cv-csr-num{ font-family:'ABC Arizona Flare',Archivo,serif !important; }
.elementor .cv-csr .cv-csr-title.cv-csr-title.cv-csr-title{ font-family:'ABC Arizona Flare',Archivo,serif !important; }

body.single-cv_case_study .content-area{ margin-bottom:0 !important; }
body.single-cv_case_study .elementor-location-single{ padding-bottom:0 !important; }

.cv-cat-case{ background:#E6F2EF !important; color:#006D56 !important; }
.cv-blogcard-foot .cv-case-metric{ color:#006D56 !important; font-weight:700; }

/* About Us - overlapping media image */
.elementor-40 .elementor-element-abmedia_img img{ width:100% !important; height:360px !important; object-fit:cover !important; border-radius:20px !important; display:block !important; margin-top:-250px !important; position:relative; z-index:2; }
.elementor-40 .elementor-element-abmedia_img .elementor-widget-container{ line-height:0; }

.elementor-40 .elementor-element-abstmt_text p{ margin:0 !important; }

.elementor-40 .elementor-element-abmission_text p{ margin:0 !important; }

/* Homepage hero dashboard image */
.elementor-14 .elementor-element-herodashimg img{ width:640px !important; max-width:100% !important; height:auto !important; display:block !important; }

/* hero-2col-override: force two-column hero on desktop (text left, dashboard image right) */
@media (min-width:1025px){
  body .elementor-element.elementor-element-herorow{ flex-direction:row !important; min-height:0 !important; }
  body .elementor-element.elementor-element-herorow > .e-con-inner{ display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; align-items:center !important; gap:40px !important; padding-right:0 !important; }
  body .elementor-element.elementor-element-herol1{ width:46% !important; flex:0 0 46% !important; max-width:46% !important; }
  body .elementor-element.elementor-element-heror1{ flex:0 0 auto !important; margin-left:auto !important; margin-right:-12px !important; max-width:none !important; display:flex !important; align-items:center !important; justify-content:flex-end !important; }
  body .elementor-element.elementor-element-herodashimg{ width:100% !important; }
}

/* heror1 background clear (remove leftover doctor photo bg) */
body .elementor-element.elementor-element-heror1{ background-image:none !important; background:none !important; }

/* herodashimg min-width fix: let the image shrink to fit the column so its right edge aligns to the content boundary */
.elementor-14 .elementor-element-herodashimg{ min-width:0 !important; }

/* ===== category template (page 273) ===== */
.page-id-273 .catx-sec{ font-family:'Inter',sans-serif; }
.page-id-273 .catx-white{ background:#ffffff; }
.page-id-273 .catx-grey{ background:#F4F6F8; }
.page-id-273 .catx-green{ background:#006D56; }
.page-id-273 .catx-in{ max-width:1160px; margin:0 auto; padding:74px 24px; }
.page-id-273 .catx-hero .catx-in{ max-width:840px; text-align:center; padding-bottom:14px; }
.page-id-273 .catx-statsec .catx-in{ padding:26px 24px 42px; }
.page-id-273 .catx-h1.catx-h1.catx-h1.catx-h1, .page-id-273 .catx-h2.catx-h2.catx-h2.catx-h2, .page-id-273 .catx-subline.catx-subline.catx-subline.catx-subline, .page-id-273 .catx-stat-num.catx-stat-num.catx-stat-num.catx-stat-num, .page-id-273 .catx-subhead.catx-subhead.catx-subhead.catx-subhead, .page-id-273 .catx-cta-h.catx-cta-h.catx-cta-h.catx-cta-h{ font-family:'ABC Arizona Flare',Archivo,serif !important; }
.page-id-273 .catx-eyebrow{ font-weight:700; font-size:12px; letter-spacing:1.2px; text-transform:uppercase; color:#006D56; }
.page-id-273 .catx-h1{ font-weight:400; font-size:46px; line-height:1.14; color:#0B1220; margin:18px 0 0; }
.page-id-273 .catx-subline{ font-style:italic; font-size:23px; line-height:1.4; color:#64748B; margin:16px auto 0; max-width:660px; }
.page-id-273 .catx-lead{ font-size:17px; line-height:1.72; color:#475569; margin:22px auto 0; max-width:760px; }
.page-id-273 .catx-cta-row{ display:flex; justify-content:center; gap:14px; margin-top:32px; flex-wrap:wrap; }
.page-id-273 .catx-btn{ display:inline-flex; align-items:center; font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:15px; padding:13px 26px; border-radius:999px; text-decoration:none; transition:all .18s ease; cursor:pointer; }
.page-id-273 .catx-btn-primary{ background:#006D56; color:#fff; }
.page-id-273 .catx-btn-primary:hover{ background:#005a47; }
.page-id-273 .catx-btn-outline{ background:transparent; color:#006D56; border:2px solid #006D56; }
.page-id-273 .catx-btn-outline:hover{ background:#E6F2EF; }
.page-id-273 .catx-stats-row{ display:flex; justify-content:center; gap:64px; flex-wrap:wrap; text-align:center; }
.page-id-273 .catx-stat-num{ font-weight:400; font-size:46px; line-height:1; color:#006D56; }
.page-id-273 .catx-stat-label{ font-size:14px; color:#64748B; margin-top:8px; }
.page-id-273 .catx-head{ text-align:center; max-width:760px; margin:0 auto 44px; }
.page-id-273 .catx-h2{ font-weight:400; font-size:33px; line-height:1.22; color:#0B1220; margin:14px 0 0; }
.page-id-273 .catx-subhead{ font-weight:400; font-size:27px; line-height:1.3; color:#0B1220; margin:0 auto 36px; text-align:center; max-width:760px; }
.page-id-273 .catx-cards4{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.page-id-273 .catx-cards3{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.page-id-273 .catx-card{ background:#fff; border:1px solid #E2E8F0; border-radius:14px; padding:26px 24px; }
.page-id-273 .catx-card-ic{ font-size:26px; line-height:1; }
.page-id-273 .catx-card-t{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:17px; line-height:1.35; color:#0B1220; margin:14px 0 8px; }
.page-id-273 .catx-card-d{ font-size:14.5px; line-height:1.6; color:#64748B; margin:0; }
.page-id-273 .catx-list2{ display:grid; grid-template-columns:1fr 1fr; gap:30px 44px; }
.page-id-273 .catx-item-t{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:17px; line-height:1.4; color:#0B1220; margin:0 0 8px; }
.page-id-273 .catx-item-t::before{ content:''; display:inline-block; width:8px; height:8px; border-radius:2px; background:#006D56; margin-right:11px; vertical-align:middle; }
.page-id-273 .catx-item-d{ font-size:15px; line-height:1.65; color:#64748B; margin:0; padding-left:19px; }
.page-id-273 .catx-steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
.page-id-273 .catx-step-ic{ font-size:26px; }
.page-id-273 .catx-step-t{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:17px; color:#0B1220; margin:12px 0 8px; }
.page-id-273 .catx-step-d{ font-size:14.5px; line-height:1.6; color:#64748B; margin:0; }
.page-id-273 .catx-testi{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.page-id-273 .catx-tcard{ background:#fff; border:1px solid #E2E8F0; border-radius:14px; padding:28px 26px; display:flex; flex-direction:column; }
.page-id-273 .catx-tq{ font-size:15.5px; line-height:1.7; color:#334155; margin:0 0 20px; flex:1; }
.page-id-273 .catx-tn{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:15px; color:#0B1220; margin:0; }
.page-id-273 .catx-tr{ font-size:12.5px; letter-spacing:.4px; text-transform:uppercase; color:#94A3B8; margin:4px 0 0; }
.page-id-273 .catx-table-wrap{ overflow-x:auto; border:1px solid #E2E8F0; border-radius:14px; }
.page-id-273 .catx-table{ width:100%; border-collapse:collapse; font-size:14px; min-width:760px; }
.page-id-273 .catx-table th, .page-id-273 .catx-table td{ padding:13px 18px; text-align:center; border-bottom:1px solid #EDF1F5; }
.page-id-273 .catx-table th{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; color:#0B1220; background:#F8FAFB; }
.page-id-273 .catx-table th:first-child, .page-id-273 .catx-table td:first-child{ text-align:left; color:#334155; }
.page-id-273 .catx-table .catx-grp td{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:11.5px; letter-spacing:.6px; text-transform:uppercase; color:#94A3B8; background:#F4F6F8; }
.page-id-273 .catx-yes{ color:#006D56; font-weight:700; }
.page-id-273 .catx-no{ color:#CBD5E1; }
.page-id-273 .catx-tval{ color:#475569; }
.page-id-273 .catx-faq{ max-width:840px; margin:0 auto; }
.page-id-273 .catx-faq details{ border-bottom:1px solid #E2E8F0; }
.page-id-273 .catx-faq summary{ list-style:none; cursor:pointer; padding:22px 44px 22px 0; position:relative; font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:17px; color:#0B1220; }
.page-id-273 .catx-faq summary::-webkit-details-marker{ display:none; }
.page-id-273 .catx-faq summary::after{ content:'+'; position:absolute; right:6px; top:18px; font-size:24px; color:#006D56; }
.page-id-273 .catx-faq details[open] summary::after{ content:'−'; }
.page-id-273 .catx-faq-a{ font-size:15.5px; line-height:1.7; color:#64748B; padding:0 44px 24px 0; margin:0; }
.page-id-273 .catx-cta-band .catx-in{ text-align:center; }
.page-id-273 .catx-cta-h{ font-weight:400; font-size:32px; color:#fff; margin:0; }
.page-id-273 .catx-cta-sub{ font-size:16px; line-height:1.6; color:rgba(255,255,255,.85); margin:12px auto 26px; max-width:560px; }
.page-id-273 .catx-btn-white{ background:#fff; color:#006D56; }
.page-id-273 .catx-btn-white:hover{ background:#eef7f4; }
.page-id-273 .catx-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.page-id-273 .catx-form{ display:flex; flex-direction:column; gap:14px; }
.page-id-273 .catx-form input, .page-id-273 .catx-form textarea{ font-family:'Inter',sans-serif; font-size:15px; padding:13px 16px; border:1px solid #E2E8F0; border-radius:10px; background:#fff; color:#0B1220; width:100%; box-sizing:border-box; }
.page-id-273 .catx-form textarea{ min-height:120px; resize:vertical; }
.page-id-273 .catx-cinfo{ margin-bottom:22px; }
.page-id-273 .catx-cinfo-k{ font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:15px; color:#0B1220; margin:0 0 4px; }
.page-id-273 .catx-cinfo-v{ font-size:15px; color:#64748B; margin:0; }
.page-id-273 .catx-cinfo-v a{ color:#006D56; text-decoration:none; }
@media (max-width:980px){ .page-id-273 .catx-cards4, .page-id-273 .catx-cards3{ grid-template-columns:1fr 1fr; } .page-id-273 .catx-steps{ grid-template-columns:1fr 1fr; } .page-id-273 .catx-testi, .page-id-273 .catx-list2, .page-id-273 .catx-contact-grid{ grid-template-columns:1fr; } }
@media (max-width:600px){ .page-id-273 .catx-cards4, .page-id-273 .catx-cards3, .page-id-273 .catx-steps{ grid-template-columns:1fr; } .page-id-273 .catx-h1{ font-size:34px; } .page-id-273 .catx-in{ padding:52px 20px; } }
/* footer heading link hover */
.elementor-location-footer .elementor-widget-heading a:hover .elementor-heading-title{ color:#004d3d !important; }

/* Home insights - View all button */
.cv-viewall-wrap{ text-align:center; margin-top:42px; }
.cv-viewall{ display:inline-flex; align-items:center; gap:9px; font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:15px; color:#006D56; border:2px solid #006D56; border-radius:999px; padding:11px 28px; text-decoration:none !important; transition:all .18s ease; }n.cv-viewall span{ text-decoration:none !important; }n.cv-viewall .cv-va-arrow{ width:15px !important; height:15px !important; min-width:15px; fill:#006D56 !important; flex-shrink:0; display:block; }n.cv-viewall:hover .cv-va-arrow{ fill:#ffffff !important; }
.cv-viewall:hover{ background:#006D56; color:#fff; }

.cv-viewall:hover .cv-va-arrow path{ stroke:#ffffff !important; }

/* ===== consistent button hovers (2026-07-15) ===== */
/* filled green CTAs -> darken */
.elementor-element-ctabtn1 .elementor-button:hover, .elementor-location-header .elementor-element-c445ac1 .elementor-button:hover, .page-id-273 .catx-btn-primary:hover{ background-color:#005A47 !important; border-color:#005A47 !important; color:#ffffff !important; }
/* green outline CTAs on light bg -> fill green + white text */
.elementor-14 .elementor-element-ctabtn2 .elementor-button:hover{ background-color:#006D56 !important; color:#ffffff !important; border-color:#006D56 !important; }
.elementor-14 .elementor-element-ctabtn2 .elementor-button:hover svg, .elementor-14 .elementor-element-ctabtn2 .elementor-button:hover svg path{ fill:#ffffff !important; }
/* footer white-outline -> fill white, green text */
.elementor-location-footer .elementor-element-ctabtn2 .elementor-button:hover{ background-color:#ffffff !important; color:#006D56 !important; border-color:#ffffff !important; }
.elementor-location-footer .elementor-element-ctabtn2 .elementor-button:hover svg, .elementor-location-footer .elementor-element-ctabtn2 .elementor-button:hover svg path{ fill:#006D56 !important; }

/* button-text hover fix (span color !important overrides inheritance) */
.elementor-14 .elementor-element-ctabtn2 .elementor-button:hover .elementor-button-text{ color:#ffffff !important; }
.elementor-location-footer .elementor-element-ctabtn2 .elementor-button:hover .elementor-button-text{ color:#006D56 !important; }

/* arrow mask hover fix (::after background-color is the icon color) */
.elementor-14 .elementor-element-ctabtn2 .elementor-button:hover .elementor-button-icon::after{ background-color:#ffffff !important; }
.elementor-location-footer .elementor-element-ctabtn2 .elementor-button:hover .elementor-button-icon::after{ background-color:#006D56 !important; }

/* hiw display numbers -> Arizona, matching case-study metrics & category stats (2026-07-16) */
.page-id-37 .cv-wt-num.cv-wt-num.cv-wt-num.cv-wt-num{ font-family:'ABC Arizona Flare', Georgia, serif !important; font-weight:400 !important; }
.page-id-37 .cv-wt-title.cv-wt-title.cv-wt-title.cv-wt-title{ font-family:'ABC Arizona Flare', Georgia, serif !important; font-weight:400 !important; font-size:28px !important; letter-spacing:-1px !important; line-height:1.25 !important; }
.elementor-37 .elementor-element-hiwm1_n .elementor-heading-title,
.elementor-37 .elementor-element-hiwm2_n .elementor-heading-title,
.elementor-37 .elementor-element-hiwm3_n .elementor-heading-title,
.elementor-37 .elementor-element-hiwm4_n .elementor-heading-title{ font-family:'ABC Arizona Flare', Georgia, serif !important; }

/* blog content: checklist box + pull-quote (2026-07-21 article refresh) */
.elementor-element-blogcontent .cv-check-box{ border:1px solid #E2E8F0; border-radius:12px; background:#fff; padding:24px 26px; margin:28px 0; }
.elementor-element-blogcontent .cv-check-box .cv-check-label{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:#006D56; font-weight:600; margin:0 0 12px; }
.elementor-element-blogcontent .cv-check-box ul{ list-style:none; margin:0; padding:0; }
.elementor-element-blogcontent .cv-check-box li{ padding:6px 0 6px 26px; position:relative; margin:0; font-size:15px; }
.elementor-element-blogcontent .cv-check-box li::before{ content:'✓'; position:absolute; left:0; color:#006D56; font-weight:700; }
.elementor-element-blogcontent blockquote{ border-left:3px solid #006D56; padding:4px 22px; margin:32px 0; font-style:italic; font-size:19px; line-height:1.6; color:#0B1220; background:none; }/* End custom CSS */