/* UOME Static Site – Dark Theme */
:root{
  --bg-0:#0b0b0c;
  --bg-1:#121214;
  --elev-1:#17171a;
  --elev-2:#1d1d21;
  --fg-0:#f4f4f5;
  --fg-1:#c9c9ce;
  --fg-2:#9b9ba2;
  --accent:#4ade80;     /* green */
  --accent-2:#22c55e;
  --danger:#ef4444;
  --radius:16px;
  --shadow:0 10px 24px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html{font-family:Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"; color-scheme:dark}
body{
  margin:0;
  background:var(--bg-0);
  color:var(--fg-0);
  -webkit-font-smoothing:antialiased;
  line-height:1.55;
}

.container{max-width:1024px; margin:0 auto; padding:0 20px}
.hidden{display:none !important}

a{color:var(--fg-0); text-decoration:none}
a:hover{color:white; text-decoration:underline}

button{font:inherit}

header.site{
  position:sticky; top:0; z-index:10;
  background:rgba(11,11,12,.8);
  backdrop-filter:saturate(130%) blur(10px);
  border-bottom:1px solid #1e1e22;
}
.nav{
  display:flex; align-items:center; gap:18px;
  padding:14px 0;
}
.brand{display:flex; align-items:center; gap:12px; margin-right:auto}
.brand img{width:40px; height:40px; border-radius:8px}
.brand .name{font-weight:800; letter-spacing:.5px; font-size:20px}
nav a{opacity:.9; padding:8px 10px; border-radius:10px}
nav a.active, nav a:hover{background:var(--elev-1)}

main{padding:28px 0 64px}
.hero{
  background:linear-gradient(180deg, rgba(26,26,32,.6), transparent);
  padding:28px; border-radius:var(--radius); box-shadow:var(--shadow);
  border:1px solid #1c1c20;
}

h1{font-size:34px; letter-spacing:.2px; margin:6px 0 12px}
h2{font-size:22px; margin:26px 0 10px}
p.lead{color:var(--fg-1); font-size:18px}

.card{
  background:var(--elev-1); border:1px solid #1c1c20;
  border-radius:var(--radius); padding:18px; box-shadow:var(--shadow);
}

footer.site{border-top:1px solid #1e1e22; padding:26px 0; color:var(--fg-2)}

/* FAQ */
.faq-header{
  display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap;
  margin-bottom:16px;
}
#faqSearch{
  flex:1 1 320px;
  background:var(--elev-2); border:1px solid #27272b;
  color:var(--fg-0); padding:12px 14px; border-radius:12px;
}
.meta{color:var(--fg-2); font-size:13px}

.faq-section{margin-top:22px}
.faq-grid{display:grid; grid-template-columns:1fr; gap:10px}
@media (min-width:720px){ .faq-grid{grid-template-columns:1fr 1fr} }

details.faq-item{
  background:var(--elev-2);
  border:1px solid #242429; border-radius:14px; overflow:hidden;
}
details.faq-item summary{
  list-style:none; cursor:pointer; padding:14px 18px; font-weight:600; position:relative;
}
details.faq-item[open] summary{background:var(--elev-1)}
details.faq-item summary::-webkit-details-marker{display:none}
details.faq-item .answer{padding:14px 18px; color:var(--fg-1)}
details.faq-item .anchor{
  position:absolute; right:12px; top:12px; opacity:.6; border:0; background:transparent;
  cursor:pointer; font-size:16px
}
details.faq-item .anchor:hover{opacity:1}

/* Forms */
form .row{display:grid; gap:12px; grid-template-columns:1fr}
@media (min-width:720px){form .row{grid-template-columns:1fr 1fr}}
input, textarea{
  width:100%; background:var(--elev-2); color:var(--fg-0);
  border:1px solid #27272b; border-radius:12px; padding:12px 14px;
}
textarea{min-height:140px; resize:vertical}
button.primary{
  background:var(--accent); color:#08130b; border:0; padding:12px 16px;
  border-radius:12px; font-weight:700; box-shadow:0 8px 24px rgba(34,197,94,.25);
}
button.primary:hover{filter:brightness(1.05)}
.notice{color:var(--fg-2); font-size:13px; margin-top:8px}
.success{color:#86efac}
.error{color:var(--danger)}

/* About */
.kpi-grid{display:grid; gap:12px; grid-template-columns:repeat(2,1fr)}
@media (min-width:720px){ .kpi-grid{grid-template-columns:repeat(4,1fr)} }
.kpi{background:var(--elev-2); border:1px solid #242429; border-radius:14px; padding:16px; text-align:center}
.kpi .num{font-size:28px; font-weight:800}
