* { box-sizing: border-box; }
html { min-height: 100%; scroll-behavior: smooth; }
body { min-height: 100%; margin: 0; background: var(--facilop-background); color: var(--facilop-text); font-family: var(--facilop-font-en); font-size: 15px; line-height: 1.55; }
html[lang="ar"] body { font-family: var(--facilop-font-ar); }
a { color: var(--facilop-blue); text-decoration: none; }
a:hover { color: var(--facilop-navy); text-decoration: underline; }
img, svg { max-width: 100%; height: auto; }
button, input, select, textarea { font: inherit; }
:focus-visible { outline: 3px solid rgba(30,136,229,.35); outline-offset: 2px; }
.skip-link { position: absolute; inset-inline-start: 1rem; top: -4rem; z-index: 10000; background: var(--facilop-navy); color: white; padding: .75rem 1rem; border-radius: var(--facilop-radius-sm); }
.skip-link:focus { top: 1rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.text-muted { color: var(--facilop-muted) !important; }
