/* Explicit form contrast overrides old dark-theme descendant rules. */
#regional-apply{background:#edf4fc;color:#182f45;border-color:#b7cfe4}
#regional-apply h2{color:#142c43;font-weight:750;line-height:1.45}
#regional-apply p,#regional-apply>div>p,#regional-apply label,#regional-apply summary,#regional-apply .zbr-note{color:#263e53;opacity:1}
#regional-apply>div>.zbr-eyebrow{color:#15579a;font-weight:750}
#regional-apply>div>p:not(.zbr-eyebrow){font-size:16px;line-height:1.85}
#regional-apply>div>.zbr-note{font-size:14px;border-left:3px solid #759cbd;padding-left:14px}
#regional-apply form{background:#fff;border:1px solid #c8d9e8;border-radius:16px}
#regional-apply input:not([type=checkbox]),#regional-apply select,#regional-apply textarea{color:#182f45;border-color:#98b3cd;background:#fff;font-weight:500}
#regional-apply input::placeholder,#regional-apply textarea::placeholder{color:#566b7e;opacity:1;font-weight:400}
#regional-apply .zbr-field-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#182f45;font-size:14px;font-weight:700}
#regional-apply .zbr-required{display:inline-flex;align-items:center;border:1px solid #edb9b3;background:#fff0ee;color:#9b251c;border-radius:5px;padding:2px 6px;font-size:11px;line-height:1.5;font-weight:750;white-space:nowrap;vertical-align:middle}
#regional-apply .zbr-optional{color:#526779;font-size:12px;font-weight:500}
#regional-apply .zbr-required-guide{margin:0 0 20px;padding:12px 14px;background:#f4f7fb;border-radius:8px;font-size:13px;line-height:1.75}
#regional-apply .zbr-consent{padding:12px;border:1px solid #c7d8e7;border-radius:8px;background:#f7fafd;align-items:flex-start;line-height:1.8}
#regional-apply .zbr-consent>span{color:#203b52;font-size:13px}
#regional-apply .zbr-consent input{flex:0 0 20px;width:20px;height:20px;margin-top:2px;accent-color:#1763b8}
#regional-apply :is(input,select,textarea):user-invalid{border:2px solid #b43226;background:#fff9f8}
#regional-apply input[type=checkbox]:user-invalid{outline:2px solid #b43226;outline-offset:2px}
#regional-apply :is(input,select,textarea):focus-visible{outline:3px solid #1763b850;outline-offset:2px}
/* Diagonal moving highlight; text stays legible and buttons do not move. */
body.zbr-document .zbr-button{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#1258aa,#1977d2 55%,#155eb4);border-color:#155eb4;color:#fff!important;animation:zbr-cta-glow 3.8s ease-in-out infinite}
body.zbr-document .zbr-button::after{content:"";position:absolute;top:-60%;bottom:-60%;left:0;width:46%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18) 22%,rgba(255,255,255,.65) 50%,rgba(255,255,255,.18) 78%,transparent);transform:translateX(-240%) skewX(-22deg);animation:zbr-cta-shimmer 3.8s ease-in-out infinite}
body.zbr-document .zbr-button:is(:hover,:focus-visible),body.zbr-document .zbr-button:is(:hover,:focus-visible)::after{animation-play-state:paused}
body.zbr-document .zbr-button:disabled,body.zbr-document .zbr-button:disabled::after{animation:none!important}
@keyframes zbr-cta-shimmer{0%,18%{transform:translateX(-240%) skewX(-22deg);opacity:0}23%{opacity:1}58%{transform:translateX(350%) skewX(-22deg);opacity:1}60%,100%{transform:translateX(350%) skewX(-22deg);opacity:0}}
@keyframes zbr-cta-glow{0%,65%,100%{box-shadow:0 4px 14px #1763b82b}35%{box-shadow:0 0 0 4px #2584d629,0 7px 24px #1763b845}}
@media(prefers-reduced-motion:reduce){body.zbr-document .zbr-button,body.zbr-document .zbr-button::after{animation:none!important}body.zbr-document .zbr-button::after{display:none}}
