.elementor-kit-5{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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;}}:root { --ss-blue:#1D4ED8; --ss-blue-900:#1E3A8A; --ss-yellow:#FBBF24; --ss-navy:#0F172A; --ss-light:#EFF6FF; --ss-cream:#FFF7ED; --ss-muted:#475569; --ss-line:#E2E8F0; --ss-white:#FFFFFF; --ss-font:Inter; }
/* Start custom CSS */body { background: #FFFFFF; color: #0F172A; font-family: "Inter", system-ui, sans-serif; }
header.elementor-location-header { position: sticky; top: 0; z-index: 990; transition: box-shadow .25s; }
body.admin-bar header.elementor-location-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar header.elementor-location-header { top: 46px; } }
body.ss-scrolled header.elementor-location-header { box-shadow: 0 10px 30px rgba(15, 23, 42, 0.1); }
html { scroll-padding-top: 6rem; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body .e-svg-base { display: flex !important; align-items: center; justify-content: center; line-height: 0; }
body .e-svg-base svg { display: block; width: 100%; height: 100%; }
p { text-wrap: pretty; } h1, h2, h3 { text-wrap: balance; }
a:focus-visible { outline: 3px solid #FBBF24; outline-offset: 3px; border-radius: 4px; }
/* Nav menu (V3 widget in the atomic header) */
body .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item { font-family: "Inter", sans-serif !important; font-size: 1rem !important; font-weight: 600 !important; color: #0F172A !important; padding: 0.6rem 0.85rem !important; white-space: nowrap; transition: color .25s; }
body .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover, body .elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active:not(.elementor-item-anchor) { color: #1D4ED8 !important; }
body .elementor-widget-nav-menu { flex: 0 0 auto; }
body .elementor-widget-nav-menu .elementor-nav-menu--main > .elementor-nav-menu { flex-wrap: nowrap !important; justify-content: center; }
body .elementor-widget-nav-menu .elementor-menu-toggle { margin-left: auto !important; margin-right: 0 !important; background: #EFF6FF !important; border-radius: 0.65rem; padding: 0.6rem !important; font-size: 1.35rem; }
body .elementor-widget-nav-menu .elementor-menu-toggle svg { fill: #1D4ED8 !important; }
body .elementor-widget-nav-menu .ss-menu-extra { display: none !important; }
@media (max-width: 1024px) {
  body .elementor-widget-nav-menu { position: static !important; flex: 0 0 auto !important; width: auto !important; }
  body .elementor-location-header .elementor-widget-nav-menu { order: 3; margin-left: 0.25rem; }
  body .elementor-widget-nav-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container { position: absolute !important; top: calc(100% + 0.5rem) !important; right: 0 !important; left: 0 !important; width: auto !important; background: #FFFFFF; border-radius: 1rem; box-shadow: 0 25px 55px rgba(15,23,42,.18); padding: 0.5rem; border: 1px solid #E2E8F0; z-index: 999; max-height: calc(100vh - 7rem); overflow-y: auto !important; }
  body .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item { font-family: "Inter", sans-serif !important; font-size: 1.0625rem !important; font-weight: 600 !important; color: #0F172A !important; border-radius: 0.6rem; padding: 0.9rem 1rem !important; background: transparent !important; }
  body .elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item:hover { background: #EFF6FF !important; color: #1D4ED8 !important; }
  body .elementor-widget-nav-menu .elementor-nav-menu--dropdown .ss-menu-extra { display: block !important; border-top: 1px solid #E2E8F0; margin-top: 0.35rem; padding-top: 0.35rem; }
  body .elementor-widget-nav-menu .elementor-nav-menu--dropdown .ss-menu-extra .elementor-item { color: #1D4ED8 !important; font-weight: 700 !important; }
}
@media (min-width: 1025px) {
  body .elementor-widget-nav-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item { position: relative; }
  body .elementor-widget-nav-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item::after { content: ""; position: absolute; left: 0.85rem; right: 0.85rem; bottom: 0.2rem; height: 3px; border-radius: 3px; background: #FBBF24; transform: scaleX(0); transition: transform .35s cubic-bezier(.16,1,.3,1); }
  body .elementor-widget-nav-menu .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-item:hover::after { transform: scaleX(1); }
}
/* FAQ accordion (<details> in an HTML widget) */
.ss-faq { display: flex; flex-direction: column; gap: 0.875rem; width: 100%; }
.ss-faq details { background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 1rem; box-shadow: 0 6px 20px rgba(15,23,42,.05); transition: border-color .25s, box-shadow .25s; }
.ss-faq details[open] { border-color: #BFDBFE; box-shadow: 0 14px 34px rgba(29,78,216,.1); }
.ss-faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.5rem; font: 700 1.125rem/1.4 Inter, system-ui, sans-serif; color: #0F172A; min-height: 3.5rem; }
.ss-faq summary::-webkit-details-marker { display: none; }
.ss-faq summary::after { content: "+"; flex: 0 0 2rem; width: 2rem; height: 2rem; border-radius: 999px; background: #EFF6FF; color: #1D4ED8; display: flex; align-items: center; justify-content: center; font-size: 1.375rem; font-weight: 600; line-height: 1; transition: transform .3s, background .3s; }
.ss-faq details[open] summary::after { content: "−"; background: #FBBF24; color: #0F172A; }
.ss-faq summary:focus-visible { outline: 3px solid #FBBF24; outline-offset: 2px; border-radius: 1rem; }
.ss-faq h3 { font: inherit; margin: 0; color: inherit; }
.ss-faq .ss-faq-a { padding: 0 1.5rem 1.375rem; font: 400 1.0625rem/1.65 Inter, system-ui, sans-serif; color: #475569; }
.ss-faq .ss-faq-a p { margin: 0 0 0.6rem; } .ss-faq .ss-faq-a p:last-child { margin: 0; }
.ss-faq .ss-faq-a a { color: #1D4ED8; font-weight: 600; }
@media (max-width: 767px) { .ss-faq summary { padding: 1.1rem 1.15rem; font-size: 1.0625rem; } .ss-faq .ss-faq-a { padding: 0 1.15rem 1.2rem; } }
/* Paragraph links */
body a.e-paragraph-link-base { color: inherit; }
/* Tap targets on phones */
@media (max-width: 767px) { body footer.elementor-location-footer p > a.e-paragraph-link-base { display: inline-block; padding: 0.5rem 0; } }
/* Button press feedback */
body .ss-btn-yellow:active, body .ss-btn-blue:active, body .ss-btn-light:active, body .ss-btn-ghost:active { transform: translateY(0) scale(.97); box-shadow: none; }
body .ss-card img { transition: transform .6s cubic-bezier(.16,1,.3,1); }
body a.ss-card:hover img { transform: scale(1.03); }
@media (prefers-reduced-motion: no-preference) {
  .ss-io .ss-rv { opacity: 0; transform: translateY(28px); transition: opacity .8s cubic-bezier(.16,1,.3,1) var(--ss-d, 0s), transform .8s cubic-bezier(.16,1,.3,1) var(--ss-d, 0s) !important; }
  .ss-io .ss-rv.ss-in { opacity: 1; transform: none; }
  #hero-text > * { animation: ssUp .9s cubic-bezier(.16,1,.3,1) both; }
  #hero-text > :nth-child(2) { animation-delay: .08s; } #hero-text > :nth-child(3) { animation-delay: .16s; } #hero-text > :nth-child(4) { animation-delay: .24s; } #hero-text > :nth-child(5) { animation-delay: .32s; }
  #hero-visual { animation: ssPop 1.1s cubic-bezier(.16,1,.3,1) .15s both; }
  #hero-visual img { animation: ssFloat 7s ease-in-out 1.2s infinite; }
}
@keyframes ssUp { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
@keyframes ssPop { from { opacity: 0; transform: scale(.94); } to { opacity: 1; transform: none; } }
@keyframes ssFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }/* End custom CSS */