/* Shared accessibility and resilience rules for the marketing site. */
[hidden]{display:none !important}

html.js .reveal{opacity:0;transform:translateY(24px)}
html.js .reveal.visible{opacity:1;transform:translateY(0)}

:focus-visible{outline:3px solid #F8C15C;outline-offset:3px}
body.light-mode :focus-visible{outline-color:#7A3E00}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto !important}
}

/* WCAG 2.2 SC 2.5.8: links and compact controls retain a 24px target. */
.nav-links a,.footer-links a,.footer-links button{display:inline-flex;align-items:center;min-height:24px}
.footer-links button{padding:0;border:0;background:transparent;font:inherit;font-size:13px;color:var(--sub);text-decoration:none;cursor:pointer}
.lang-item{width:100%;border-top:0;border-right:0;border-bottom:0;border-left:3px solid transparent;color:inherit;font:inherit;text-align:left}

/* Native role checkboxes retain the visual treatment used by the original cards. */
.role-check-item{position:relative}
.ec-role-input{position:absolute;inline-size:1px;block-size:1px;opacity:0}
.role-check-item:focus-within{outline:3px solid #F8C15C;outline-offset:2px}
body.light-mode .role-check-item:focus-within{outline-color:#7A3E00}
.role-check-item .ec-role-input:checked + .role-check-box{background:var(--amber);border-color:var(--amber)}
.role-check-item .ec-role-input:checked + .role-check-box .role-check-tick{display:block}
.role-check-item:has(.ec-role-input:checked){border-color:var(--amber);background:rgba(245,158,11,.07)}
.role-check-item:has(.ec-role-input:checked) .role-check-lbl{color:var(--txt);font-weight:600}

.ec-field-error{margin:0;color:#B91C1C;font-size:13px;line-height:1.35}
.ec-form-status{margin:0;grid-column:1/-1;font-size:14px;font-weight:600;line-height:1.45}
.ec-form-status.is-error{color:#B91C1C}
.ec-form-status.is-success{color:#047857}
body:not(.light-mode) .ec-form-status.is-success{color:#6EE7B7}
body:not(.light-mode) .ec-field-error,body:not(.light-mode) .ec-form-status.is-error{color:#FCA5A5}
.noscript-notice{max-width:760px;margin:96px auto 0;padding:16px 20px;border:1px solid var(--bdr);border-radius:8px;background:var(--s1);color:var(--sub);font-size:15px}.noscript-notice a{color:var(--amber);font-weight:700}

/* Preserve readable accent text on the default light theme. */
body.light-mode .hero-kicker,
body.light-mode .section-kicker,
body.light-mode .faq-kicker,
body.light-mode .portal-eyebrow span,
body.light-mode .nav-tagline,
body.light-mode .ec-modal-kicker,
body.light-mode .modal-kicker{color:var(--ec-light-accent,#8A4700) !important}
body.light-mode .section-h2 em,
body.light-mode .cta-h2 em,
body.light-mode .modal-title{background:none !important;color:var(--ec-light-accent,#7A3E00) !important;-webkit-text-fill-color:var(--ec-light-accent,#7A3E00) !important}
body.light-mode [style*="color:#A78BFA"]{color:#5B21B6 !important;-webkit-text-fill-color:#5B21B6 !important}
body.light-mode [style*="color:#10B981"]{color:#047857 !important;-webkit-text-fill-color:#047857 !important}
body.light-mode [style*="color:#F59E0B"]{color:#8A4700 !important;-webkit-text-fill-color:#8A4700 !important}
body.light-mode [style*="color:#EF4444"]{color:#B91C1C !important;-webkit-text-fill-color:#B91C1C !important}
body.light-mode [style*="-webkit-text-fill-color:transparent"]{background:none !important;color:var(--ec-light-accent,#7A3E00) !important;-webkit-text-fill-color:var(--ec-light-accent,#7A3E00) !important}
body.light-mode .portal-name,
body.light-mode .portal-cta,
body.light-mode .price-plan,
body.light-mode .check,
body.light-mode .lang-item.active span,
body.light-mode .nav-sub,
body.light-mode .faq-icon,
body.light-mode .pill-green,
body.light-mode .pill-amber,
body.light-mode .pill-red{color:var(--ec-light-accent,#7A3E00) !important;-webkit-text-fill-color:var(--ec-light-accent,#7A3E00) !important}
body.light-mode .form-input:focus,
body.light-mode .form-select:focus,
body.light-mode .form-textarea:focus,
body.light-mode .fi:focus{outline:3px solid #7A3E00;outline-offset:2px;border-color:#7A3E00}

@media (max-width:1024px){
  .mobile-menu[aria-hidden="true"],.mob-backdrop[aria-hidden="true"]{display:none !important}
}
