/* RestFree unified design system · derived from supplied homepage. */
.ilsh-header{color:#fff!important}
.ilsh-shell{background:rgba(11,23,41,.92)!important;border:1px solid rgba(255,255,255,.11)!important;border-radius:19px!important;box-shadow:0 18px 55px rgba(0,0,0,.24)!important;backdrop-filter:blur(18px)!important}
.ilsh-menu>li>a{color:#d6e4f5!important}.ilsh-menu>li>a:hover,.ilsh-menu>li:focus-within>a{color:var(--bbds-cyan)!important}
.ilsh-menu .sub-menu{background:#101f34!important;border-color:rgba(255,255,255,.12)!important;box-shadow:0 25px 65px rgba(0,0,0,.32)!important}
.ilsh-menu .sub-menu a{color:#c8d3e1!important}.ilsh-menu .sub-menu a:hover{background:rgba(52,120,255,.16)!important;color:#fff!important}
.ilsh-cta,.ilsh-mobile-cta{border-radius:14px!important;background:linear-gradient(135deg,var(--bbds-blue),var(--bbds-purple))!important;color:#fff!important;box-shadow:0 12px 34px rgba(52,120,255,.26)!important;text-decoration:none!important}
.ilsh-cta:hover,.ilsh-mobile-cta:hover{transform:translateY(-3px)!important;box-shadow:0 16px 42px rgba(52,120,255,.32)!important}
.ilsh-brand strong{color:#fff!important;letter-spacing:-.8px}
.ilsh-mobile-panel{background:#101f34!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important}
.ilsh-mobile-menu a{color:#e0eaf7!important}
.bbd-suite-langs{gap:5px!important}.bbd-suite-langs a,.bbd-suite-langs span{color:#e0eaf7!important;border-radius:9px!important}.bbd-suite-langs [aria-current]{background:linear-gradient(135deg,var(--bbds-blue),var(--bbds-purple))!important;color:#fff!important}
.esf-site-footer{background:radial-gradient(circle at 12% 15%,rgba(52,120,255,.13),transparent 35%),radial-gradient(circle at 90% 5%,rgba(139,92,246,.11),transparent 35%),var(--bbds-bg)!important;border-top:1px solid rgba(255,255,255,.1)!important;color:var(--bbds-text)!important;font-family:Inter,Segoe UI,Arial,sans-serif!important}
.esf-site-footer:before{height:2px!important;background:linear-gradient(90deg,var(--bbds-cyan),var(--bbds-blue),var(--bbds-purple),#ff4fa3)!important}
.esf-brand-name,.esf-heading{color:#fff!important;font-weight:850!important}.esf-brand-title{color:var(--bbds-cyan)!important}.esf-description{color:var(--bbds-text)!important}
.esf-nav a,.esf-contact a,.esf-contact span{color:var(--bbds-text)!important;text-decoration:none!important}.esf-nav a:hover,.esf-contact a:hover,.esf-heading a:hover{color:var(--bbds-cyan)!important}
.esf-cta{background:linear-gradient(135deg,var(--bbds-blue),var(--bbds-purple))!important;border:0!important;border-radius:15px!important;box-shadow:0 12px 34px rgba(52,120,255,.22)!important;color:white!important}.esf-cta:hover{filter:brightness(1.12)!important;transform:translateY(-2px)!important}
.esf-socials a{background:rgba(52,120,255,.12)!important;border-color:rgba(52,120,255,.3)!important;color:var(--bbds-cyan)!important}.esf-socials a:hover{background:var(--bbds-blue)!important;color:#fff!important}
.esf-bottom{border-top-color:rgba(255,255,255,.1)!important;color:var(--bbds-muted)!important}.esf-developer-credit a{color:var(--bbds-cyan)!important}
.epc-root{font-family:Inter,Segoe UI,Arial,sans-serif!important}.epc-backdrop{background:rgba(3,9,19,.82)!important;backdrop-filter:blur(7px)!important}
.epc-modal{background:radial-gradient(circle at 100% 0%,rgba(139,92,246,.12),transparent 45%),radial-gradient(circle at 0% 100%,rgba(52,120,255,.14),transparent 45%),var(--bbds-surface)!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:25px!important;box-shadow:0 40px 100px rgba(0,0,0,.52)!important;color:#fff!important}
.epc-modal h2,.epc-brandline__text strong,.epc-category strong,.epc-ccpa-box h3{color:#fff!important}.epc-modal p,.epc-category p,.epc-developer{color:var(--bbds-text)!important}.epc-brandline{border-color:rgba(255,255,255,.12)!important}.epc-brandline__logo-wrap{background:rgba(52,120,255,.13)!important;border-color:rgba(255,255,255,.1)!important}.epc-brandline__eyebrow,.epc-kicker{color:var(--bbds-cyan)!important}
.epc-scope-note,.epc-ccpa-box,.epc-gpc-status{background:rgba(52,120,255,.09)!important;border-color:rgba(52,120,255,.2)!important;color:#c8d3e1!important}
.epc-category,.epc-developer{border-color:rgba(255,255,255,.12)!important}.epc-btn{border-radius:13px!important}
.epc-modal .epc-btn-primary,.epc-modal .epc-btn-primary:visited,.epc-back{background:linear-gradient(135deg,var(--bbds-blue),var(--bbds-purple))!important;border-color:transparent!important;color:#fff!important}
.epc-modal .epc-btn-primary:hover,.epc-back:hover{filter:brightness(1.12)!important}
.epc-modal .epc-btn-secondary,.epc-modal .epc-btn-secondary:visited{background:rgba(255,255,255,.07)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}
.epc-modal .epc-btn-secondary:hover,.epc-modal .epc-btn-secondary:focus{background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.3)!important;color:#fff!important}
.epc-legal-links a,.epc-developer a{color:var(--bbds-cyan)!important}.epc-floating{background:var(--bbds-surface)!important;border-color:rgba(255,255,255,.15)!important;border-radius:12px!important;color:#fff!important}
@media(max-width:700px){.ilsh-shell{min-height:65px!important;border-radius:16px!important}.epc-modal{border-radius:19px!important}.esf-site-footer{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.ilsh-header *,.esf-site-footer *,.epc-root *{animation:none!important;transition:none!important}}

/* v1.4.8: California privacy settings contrast on dark consent modal. */
.epc-root .epc-modal .epc-ccpa-box .epc-ccpa-row,
.epc-root .epc-modal .epc-ccpa-box label.epc-ccpa-row,
.epc-root .epc-modal .epc-ccpa-box .epc-ccpa-row span {
  color:#f0f6ff!important;
  -webkit-text-fill-color:#f0f6ff!important;
}
.epc-root .epc-modal .epc-ccpa-box .epc-ccpa-row small {
  color:#c8d3e1!important;
  -webkit-text-fill-color:#c8d3e1!important;
  font-size:12px;
  line-height:1.6;
}
.epc-root .epc-modal .epc-ccpa-box h3 {color:#fff!important}
.epc-root .epc-modal .epc-ccpa-box input[type="checkbox"] {accent-color:#3478ff}

/* v1.4.9 - Footer CTA: editable colors with readable hover/focus, no legacy red. */
.esf-site-footer .esf-cta, .esf-site-footer a.esf-cta:link, .esf-site-footer a.esf-cta:visited {
 background:var(--bbds-footer-cta,#2458d4)!important; border:1px solid transparent!important;
 color:var(--bbds-footer-cta-text,#ffffff)!important; border-radius:15px!important;
 box-shadow:0 12px 34px rgba(52,120,255,.25)!important;
 transition:background-color .2s ease, transform .2s ease,box-shadow .2s ease!important;
}
.esf-site-footer .esf-cta:hover,.esf-site-footer .esf-cta:focus-visible,
.esf-site-footer a.esf-cta:hover,.esf-site-footer a.esf-cta:focus-visible {
 background:var(--bbds-footer-cta-hover,#4546c8)!important;
 color:var(--bbds-footer-cta-text,#ffffff)!important;
 box-shadow:0 17px 38px rgba(89,105,247,.33)!important;transform:translateY(-3px)!important;filter:none!important;
}
.esf-site-footer .esf-cta:focus-visible{outline:2px solid #1ed8ff!important;outline-offset:3px!important}
@media(prefers-reduced-motion:reduce){.esf-site-footer .esf-cta{transition:none!important;transform:none!important}}
