/* Legal and contact pages — Dawn identity: light, calm, built for long reading. */
@font-face { font-family: "El Messiri"; src: url(/assets/elmessiri-arabic.woff2) format("woff2"); font-weight: 400 700; font-display: swap;
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FEFC; }
@font-face { font-family: "El Messiri"; src: url(/assets/elmessiri-latin.woff2) format("woff2"); font-weight: 400 700; font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F; }
@font-face { font-family: "Outfit"; src: url(/assets/outfit-latin.woff2) format("woff2"); font-weight: 100 900; font-display: swap; }
:root {
  --ink: #1B2340;
  --sun: #E3A33B;
  --sun-deep: #8C5A14;
  --sky: #E8EEF7;
  --paper: #F7F9FC;
  --muted: #46506E;
  --rule: #D3DBE8;
  --display: "El Messiri", "Segoe UI", Tahoma, sans-serif;
  --ar: "Noto Naskh Arabic", "Geeza Pro", "Segoe UI", Tahoma, "Traditional Arabic", serif;
  --en: "Outfit", "Segoe UI", system-ui, sans-serif;
}
* { box-sizing: border-box; margin: 0; }
html { background: var(--paper); color-scheme: light; }
body {
  min-height: 100svh;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--ar);
  line-height: 1.95;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--sun-deep); text-underline-offset: .2em; }
a:focus-visible { outline: 2px solid var(--sun); outline-offset: 3px; border-radius: 2px; }

.top {
  display: flex; flex-direction: column; align-items: center; gap: 1rem;
  padding: 2.2rem 16px 1.5rem;
  background: var(--sky);
  border-bottom: 1px solid var(--rule);
}
.brand { display: flex; align-items: center; gap: 14px; color: var(--ink); text-decoration: none; }
.brand svg { width: 40px; height: 48px; }
.brand span { display: flex; flex-direction: column; line-height: 1.1; }
.brand b { font-family: var(--display); font-weight: 700; font-size: 1.7rem; }
.brand small { font-family: var(--en); font-weight: 500; font-size: .7rem; letter-spacing: .3em; color: var(--sun-deep); direction: ltr; text-align: right; }
.langs { display: flex; gap: 1.4rem; font-size: .95rem; }
.langs a { color: var(--muted); text-decoration: none; }
.langs a[lang="en"] { font-family: var(--en); font-size: .9em; }
.langs a:hover, .langs a:focus-visible { color: var(--ink); }

main { width: min(100% - 32px, 46rem); margin: 0 auto; padding: 2.6rem 0 1rem; }
section + section { margin-top: 3.4rem; padding-top: 3rem; border-top: 1px solid var(--rule); }
section[lang="en"] { font-family: var(--en); line-height: 1.75; }

h1 { font-family: var(--display); color: var(--ink); font-size: clamp(1.7rem, 6vw, 2.2rem); line-height: 1.4; font-weight: 700; }
section[lang="en"] h1, section[lang="en"] h2 { font-family: var(--en); font-weight: 500; }
h2 { font-family: var(--display); color: var(--ink); font-size: 1.2rem; margin-top: 2.1rem; font-weight: 700; }
.updated { color: var(--muted); font-size: .92rem; margin-top: .4rem; }
p, li { font-size: 1.04rem; }
p + p, p + ul, ul + p { margin-top: .8rem; }
h2 + p, h2 + ul { margin-top: .6rem; }
ul { padding-inline-start: 1.3rem; }
li + li { margin-top: .35rem; }
.note {
  margin-top: 1.4rem; padding: 1rem 1.2rem;
  border-radius: 10px;
  background: var(--sky);
  color: var(--ink);
}

.site-foot {
  width: min(100% - 32px, 46rem); margin: 3rem auto 0; padding: 1.6rem 0 2.6rem;
  border-top: 1px solid var(--rule);
  display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem 1.6rem;
  font-size: .92rem;
}
.site-foot a { color: var(--muted); text-decoration: none; }
.site-foot span { font-family: var(--en); font-size: .86em; margin-inline-start: .3em; }
.site-foot a:hover, .site-foot a:focus-visible, .site-foot a[aria-current="page"] { color: var(--ink); }

/* Contact form: two fields, quiet controls. */
.contact { margin-top: 1.8rem; display: grid; gap: .5rem; }
.contact label { font-family: var(--display); color: var(--ink); font-size: 1.02rem; font-weight: 700; margin-top: .6rem; }
.contact label span, .contact button span, .status span { font-family: var(--en); font-weight: 400; font-size: .86em; margin-inline-start: .4em; }
.contact label span { color: var(--muted); }
.contact input, .contact textarea {
  width: 100%; padding: .75rem .9rem;
  font: inherit; font-size: 1.04rem; line-height: 1.7; color: var(--ink);
  background: #FFFFFF; border: 1px solid #C3CCDD; border-radius: 8px;
}
.contact textarea { resize: vertical; min-height: 9rem; }
.contact input:focus-visible, .contact textarea:focus-visible { outline: 2px solid var(--sun); outline-offset: 1px; border-color: var(--ink); }
.contact button {
  justify-self: start; margin-top: 1rem; padding: .65rem 1.9rem;
  font-family: var(--display); font-size: 1.06rem; font-weight: 700; color: #FFFFFF;
  background: var(--ink); border: 0; border-radius: 8px; cursor: pointer;
}
.contact button:hover { background: #2A3560; }
.contact button:focus-visible { outline: 2px solid var(--sun); outline-offset: 3px; }
.contact button:disabled { opacity: .55; cursor: wait; }
.status { min-height: 1.6em; font-size: .98rem; color: var(--muted); }
.status span { display: block; margin-inline-start: 0; }
.status.ok { color: #1F6B3A; }
.status.error { color: #A3361F; }
.fine { color: var(--muted); font-size: .9rem; }
.hp { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
