.elementor-kit-21{--e-global-color-primary:#0774FF;--e-global-color-secondary:#033AA7;--e-global-color-text:#4C5671;--e-global-color-accent:#FFC107;--e-global-color-apex_primary_hover:#308BFF;--e-global-color-apex_accent_hover:#FFB300;--e-global-color-apex_dark:#020101;--e-global-color-apex_bg_soft:#F6F6F6;--e-global-color-apex_bg_panel:#ECEFFF;--e-global-color-apex_border:#E1E6F0;--e-global-color-apex_white:#FFFFFF;--e-global-typography-primary-font-family:"Plus Jakarta Sans";--e-global-typography-primary-font-size:32px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.25em;--e-global-typography-secondary-font-family:"Plus Jakarta Sans";--e-global-typography-secondary-font-size:24px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Plus Jakarta Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.5em;}.elementor-kit-21 button,.elementor-kit-21 input[type="button"],.elementor-kit-21 input[type="submit"],.elementor-kit-21 .elementor-button{background-color:#0774FF;font-family:"Plus Jakarta Sans", Sans-serif;font-size:15px;font-weight:700;color:#FFFFFF;border-radius:12px 12px 12px 12px;padding:14px 28px 14px 28px;}.elementor-kit-21 button:hover,.elementor-kit-21 button:focus,.elementor-kit-21 input[type="button"]:hover,.elementor-kit-21 input[type="button"]:focus,.elementor-kit-21 input[type="submit"]:hover,.elementor-kit-21 input[type="submit"]:focus,.elementor-kit-21 .elementor-button:hover,.elementor-kit-21 .elementor-button:focus{background-color:#308BFF;color:#FFFFFF;}.elementor-kit-21 e-page-transition{background-color:#FFBC7D;}.elementor-kit-21 h1{font-family:"Plus Jakarta Sans", Sans-serif;font-size:48px;font-weight:800;line-height:1.15em;}.elementor-kit-21 h2{font-family:"Plus Jakarta Sans", Sans-serif;font-size:36px;font-weight:800;line-height:1.2em;}.elementor-kit-21 h3{font-family:"Plus Jakarta Sans", Sans-serif;font-size:24px;font-weight:700;line-height:1.3em;}.elementor-kit-21 h4{font-family:"Plus Jakarta Sans", Sans-serif;font-size:20px;font-weight:700;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.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 *//* Apex Brand — global tokens (CSS vars inherit through shadow DOM) */
:root, :host {
  --apex-primary: #0774FF;
  --apex-primary-hover: #308BFF;
  --apex-primary-dark: #033AA7;
  --apex-accent: #FFC107;
  --apex-accent-hover: #FFB300;
  --apex-text: #4C5671;
  --apex-dark: #020101;
  --apex-bg-soft: #F6F6F6;
  --apex-bg-panel: #ECEFFF;
  --apex-border: #E1E6F0;
  --apex-radius: 12px;
  --apex-radius-lg: 20px;

  /* SureCart Stencil/Shoelace primary palette — these inherit into shadow DOM */
  --sc-color-primary-50:  #EBF3FF;
  --sc-color-primary-100: #D6E7FF;
  --sc-color-primary-200: #ADCFFF;
  --sc-color-primary-300: #84B7FF;
  --sc-color-primary-400: #5B9FFF;
  --sc-color-primary-500: #0774FF;
  --sc-color-primary-600: #0774FF;
  --sc-color-primary-700: #308BFF;
  --sc-color-primary-800: #033AA7;
  --sc-color-primary-900: #033AA7;
  --sc-color-primary-950: #033AA7;

  /* SureCart legacy/alternate token names */
  --sc-color-brand: #0774FF;
  --sc-color-brand-primary: #0774FF;
  --sc-button-primary-background: #0774FF;
  --sc-button-primary-background-hover: #308BFF;
  --sc-button-primary-text: #ffffff;
  --sc-button-primary-border: #0774FF;

  /* Shoelace neutral tokens that some sc-* tags resolve through */
  --sc-input-focus-ring-color: rgba(7,116,255,0.25);
  --sc-focus-ring-color: rgba(7,116,255,0.25);
  --sc-focus-ring: 0 0 0 3px rgba(7,116,255,0.25);

  /* Typography custom property */
  --sc-font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Site-wide body font */
body {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--apex-text);
  background: #fff;
}

/* Make sure SureCart pages get proper page chrome breathing room */
body.page-template-default .entry-content,
body.page main.site-main {
  padding-top: 40px;
  padding-bottom: 60px;
}

/* ============== SureCart Web Components ============== */
/* SureCart uses Shoelace under the hood; these are the documented design tokens.
   Apply broadly so inheritance reaches every nested shadow root. */
*, *::before, *::after,
sc-checkout, sc-cart, sc-dashboard, sc-line-item, sc-product-list,
sc-button, sc-input, sc-form, sc-text, sc-card,
sc-customer-dashboard, sc-order-confirmation, sc-login-form,
sc-password-form, sc-register-form, sc-magic-link-form {
  --sc-color-success-500: #1FAE56;
  --sc-color-danger-500: #EE4A4A;

  --sc-input-border-radius-medium: 10px;
  --sc-input-border-radius-large: 12px;
  --sc-button-border-radius-medium: 10px;
  --sc-button-border-radius-large: 12px;
  --sc-font-mono: 'JetBrains Mono', monospace;
  --sc-font-weight-bold: 700;
  --sc-font-weight-semibold: 600;
}

/* Pierce sc-login-form's shadow DOM via ::part if exposed (newer SureCart versions) */
sc-login-form::part(button),
sc-login-form::part(submit-button),
sc-login-form::part(base) {
  --sc-color-primary-500: #0774FF;
  --sc-color-primary-600: #0774FF;
  --sc-color-primary-700: #308BFF;
}

/* SureCart buttons — catch ALL variants since SureCart renders many without explicit type */
sc-button::part(base) {
  background: #0774FF;
  border-color: #0774FF;
  color: #fff;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 700;
  letter-spacing: .2px;
  border-radius: 10px;
  transition: background .15s ease, transform .1s ease, border-color .15s ease;
}
sc-button::part(base):hover {
  background: #308BFF;
  border-color: #308BFF;
  transform: translateY(-1px);
}
/* Outlined/text variants — keep them visually distinct */
sc-button[type="text"]::part(base),
sc-button[variant="text"]::part(base) {
  background: transparent;
  color: #0774FF;
  border-color: transparent;
}
sc-button[type="text"]::part(base):hover,
sc-button[variant="text"]::part(base):hover {
  background: rgba(7,116,255,0.08);
  color: #308BFF;
  transform: none;
}
sc-button[type="default"][outline]::part(base),
sc-button[outline]::part(base) {
  background: transparent;
  color: #0774FF;
  border-color: #0774FF;
}
sc-button[outline]::part(base):hover {
  background: #0774FF;
  color: #fff;
}

/* Native button fallback inside sc-forms (older SureCart variants render <button> directly) */
sc-form button[type="submit"],
.sc-form-submit,
button.sc-button-primary {
  background: #0774FF !important;
  border-color: #0774FF !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  transition: background .15s ease;
}
sc-form button[type="submit"]:hover,
.sc-form-submit:hover,
button.sc-button-primary:hover {
  background: #308BFF !important;
  border-color: #308BFF !important;
}

/* SureCart "+ Add" tag-style add-to-cart buttons on product list */
.sc-product-card sc-button,
.wp-block-surecart-product-list sc-button {
  --sc-button-border-radius-medium: 999px;
}

/* SureCart form inputs */
sc-input::part(base), sc-input::part(form-control) {
  border-radius: 10px;
  border-color: #E1E6F0;
}
sc-input::part(base):focus-within {
  border-color: #0774FF;
  box-shadow: 0 0 0 3px rgba(7,116,255,0.12);
}

/* SureCart cards / product list cards */
.wp-block-surecart-product-list .sc-product-card,
sc-card::part(base) {
  border-radius: var(--apex-radius-lg);
  border: 1px solid #E1E6F0;
  box-shadow: 0 4px 16px rgba(20,30,60,0.04);
  transition: transform .15s ease, box-shadow .15s ease;
}
.wp-block-surecart-product-list .sc-product-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(7,116,255,0.12);
}

/* Order summary panel on checkout — branded soft blue */
.sc-checkout-form-order-summary,
sc-checkout sc-order-summary,
.wp-block-surecart-order-summary {
  background: #ECEFFF !important;
}

/* Dashboard navigation pill — branded active state */
sc-dashboard-module-nav a[aria-current="page"],
.sc-dashboard-nav a.is-active {
  background: #0774FF;
  color: #fff;
  border-radius: 10px;
}

/* Headings inside SureCart areas */
sc-text[type="heading"]::part(base),
.wp-block-surecart-product-list h2,
.wp-block-surecart-product-list h3 {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 800;
  color: #020101;
  letter-spacing: -0.01em;
}

/* Pricing badges */
sc-product-price::part(base) {
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-weight: 800;
  color: #020101;
}

/* ============== Standard WP / SureCart login fallback ============== */
.wp-block-button__link {
  background: #0774FF;
  color: #fff;
  border-radius: 12px;
  padding: 14px 28px;
  font-weight: 700;
  font-family: 'Plus Jakarta Sans', sans-serif;
  transition: background .15s ease;
}
.wp-block-button__link:hover {
  background: #308BFF;
}

/* SureCart customer-dashboard login flow uses Shoelace/Stencil sc-* tags */
sc-button[type="primary"]::part(base),
sc-button:not([type="text"]):not([outline])::part(base) {
  background: #0774FF !important;
  border-color: #0774FF !important;
  color: #fff !important;
}
sc-button[type="primary"]::part(base):hover,
sc-button:not([type="text"]):not([outline])::part(base):hover {
  background: #308BFF !important;
  border-color: #308BFF !important;
}

/* SureCart "Next" / login button — catch ALL button styles on dashboard login */
.wp-block-surecart-customer-dashboard button,
.wp-block-surecart-customer-dashboard input[type="submit"],
.wp-block-surecart-customer-dashboard sc-button {
  --sc-color-primary-500: #0774FF;
  --sc-color-primary-600: #0774FF;
  --sc-color-primary-700: #308BFF;
}
.wp-block-surecart-customer-dashboard button,
.wp-block-surecart-customer-dashboard input[type="submit"] {
  background: #0774FF !important;
  background-color: #0774FF !important;
  border-color: #0774FF !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  padding: 14px 24px !important;
  transition: background-color .15s ease;
}
.wp-block-surecart-customer-dashboard button:hover,
.wp-block-surecart-customer-dashboard input[type="submit"]:hover {
  background: #308BFF !important;
  background-color: #308BFF !important;
  border-color: #308BFF !important;
}

/* Final catch-all: any black/dark button inside SureCart areas */
.wp-block-surecart-customer-dashboard *[style*="background-color: rgb(0, 0, 0)"],
.wp-block-surecart-customer-dashboard *[style*="background: rgb(0, 0, 0)"],
.wp-block-surecart-customer-dashboard *[style*="background-color:#000"],
.wp-block-surecart-customer-dashboard *[style*="background:#000"] {
  background: #0774FF !important;
  background-color: #0774FF !important;
}

/* ============== Page chrome fixes ============== */
/* SureCart pages don't use Elementor — add some breathing room */
.entry-content > .wp-block-surecart-product-list,
.entry-content > .wp-block-surecart-checkout-form,
.entry-content > .wp-block-surecart-customer-dashboard {
  max-width: 1180px;
  margin: 48px auto;
  padding: 0 20px;
}

/* Forms — branded focus state */
input[type="text"]:focus, input[type="email"]:focus,
input[type="password"]:focus, input[type="tel"]:focus,
textarea:focus, select:focus {
  outline: none;
  border-color: #0774FF;
  box-shadow: 0 0 0 3px rgba(7,116,255,0.12);
}

/* Selection highlight */
::selection { background: #0774FF; color: #fff; }/* End custom CSS */