
/* ---------- Tokens ---------- */
:root,
body,
body[class*="elementor-kit-"]{
  --sfpl-nav-font: "Poppins", sans-serif !important;
  --sfpl-nav-size: 15px;
  --sfpl-nav-weight: 500;
  --sfpl-nav-color: #5B5B5B;
  --sfpl-nav-hover: #ed1c24;
  --e-global-typography-primary-font-family: "Poppins" !important;
  --e-global-typography-secondary-font-family: "Poppins" !important;
  --e-global-typography-text-font-family: "Poppins" !important;
  --e-global-typography-accent-font-family: "Poppins" !important;

  /* Footer headings */
  --sfpl-foot-head-size: 18px;
  --sfpl-foot-head-weight: 600;
  --sfpl-foot-head-color: #1A1A1A;
}

/* ---------- Global font ---------- */
html body:not(#sfpl-f1):not(#sfpl-f2),
html body:not(#sfpl-f1):not(#sfpl-f2) *:not(i):not(svg):not(path):not(use)
  :not([class*="fa-"]):not(.fa):not(.fab):not(.fas):not(.far)
  :not([class*="eicon"]):not([class*="dashicons"]):not([class*="ekit-icon"])
  :not([class*="icon-"]):not([class*="elementor-icon"]):not([class*="material-icons"]){
  font-family: "Poppins", sans-serif !important;
}
html body:not(#sfpl-f1):not(#sfpl-f2) :is(input, textarea, select, button, optgroup),
html body:not(#sfpl-f1):not(#sfpl-f2) :is(input, textarea)::placeholder{
  font-family: "Poppins", sans-serif !important;
}

/* ---------- Header menu ---------- */
html body:not(#sfpl-h1):not(#sfpl-h2) header.site-header nav.sf-tab-root :is(
  .sf-atomic-action-output,
  .sf-atomic-action-output span,
  a.sf-atomic-action-output
){
  font-family: "Poppins", sans-serif !important;
  font-size: var(--sfpl-nav-size) !important;
  font-weight: var(--sfpl-nav-weight) !important;
  color: var(--sfpl-nav-color) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap !important;
  padding: 12px 0 !important;
  background: transparent !important;
  text-decoration: none !important;
}
html body:not(#sfpl-h1):not(#sfpl-h2) header.site-header nav.sf-tab-root .sf-atomic-action-output svg{
  stroke: currentColor !important;
  width: 18px !important;
  height: 18px !important;
}
html body:not(#sfpl-h1):not(#sfpl-h2) header.site-header nav.sf-tab-root :is(
  .sf-atomic-action-output:hover,
  .sf-atomic-action-output:hover span,
  .sf-atomic-action-output[aria-expanded="true"],
  .sf-atomic-action-output[aria-expanded="true"] span,
  a.sf-atomic-action-output[aria-current="page"]
){
  color: var(--sfpl-nav-hover) !important;
}

/* ---------- Footer ---------- */
html body:not(#sfpl-a):not(#sfpl-b) :is(footer, .elementor-location-footer, [data-elementor-type="footer"]) :is(
  .sf-atomic-action-output,
  .sf-atomic-action-output span,
  a.sf-foot-link,
  a.sf-foot-link span,
  .sf-atomic-rich-text-output,
  .sf-atomic-rich-text-output *,
  .sf-atomic-text-output,
  .sf-atomic-text-output *
){
  --small-text-base: var(--sfpl-nav-size) !important;
  font-family: "Poppins", sans-serif !important;
  font-size: var(--sfpl-nav-size) !important;
  font-weight: var(--sfpl-nav-weight) !important;
  color: var(--sfpl-nav-color) !important;
  line-height: 1.6 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  background: transparent !important;
}
html body:not(#sfpl-a):not(#sfpl-b) :is(footer, .elementor-location-footer, [data-elementor-type="footer"]) :is(
  a.sf-atomic-action-output:hover,
  a.sf-atomic-action-output:hover span,
  a.sf-foot-link:hover,
  a.sf-foot-link:hover span,
  a.sf-atomic-text-output:hover
){
  color: var(--sfpl-nav-hover) !important;
}

/* ---------- NEW: Footer headings (Quick links, Our services...) ---------- */
html body:not(#sfpl-a):not(#sfpl-b):not(#sfpl-c) :is(footer, .elementor-location-footer, [data-elementor-type="footer"]) :is(
  h1, h2, h3, h4, h5, h6,
  h1 *, h2 *, h3 *, h4 *, h5 *, h6 *,
  [class*="heading"], [class*="heading"] *,
  [class*="title"], [class*="title"] *
){
  font-family: "Poppins", sans-serif !important;
  font-size: var(--sfpl-foot-head-size) !important;
  font-weight: var(--sfpl-foot-head-weight) !important;
  color: var(--sfpl-foot-head-color) !important;
  line-height: 1.3 !important;
  letter-spacing: 0.2px !important;
  text-transform: none !important; /* change to uppercase for QUICK LINKS style */
}

/* ---------- NEW: Gap after "Registered Address" ---------- */
html body:not(#sfpl-a):not(#sfpl-b):not(#sfpl-c) :is(footer, .elementor-location-footer, [data-elementor-type="footer"]) .sf-atomic-rich-text-output :is(strong, b){
  display: inline-block !important;
  font-weight: 600 !important;
  color: var(--sfpl-foot-head-color) !important;
  margin-bottom: 10px !important;
}
