/* gurma.ai — shared styles. Local file, no external requests: a page claiming
   on-premise architecture should not pull assets from three CDNs. */
:root {
  --bg:#fbfaf8; --fg:#1a1a1a; --muted:#5f5c58; --rule:#e3e0da;
  --accent:#3a5a52; --card:#ffffff;
  --serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
  --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root { --bg:#14161a; --fg:#e8e6e1; --muted:#9c9891; --rule:#2a2e35;
          --accent:#7fb3a3; --card:#1a1d22; }
}
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg);
       font-family:var(--sans); font-size:17px; line-height:1.65;
       -webkit-font-smoothing:antialiased; }
.wrap { max-width:44rem; margin:0 auto; padding:0 1.5rem; }

/* masthead — same on every page */
.masthead { display:flex; flex-wrap:wrap; gap:1rem 2rem; align-items:baseline;
            justify-content:space-between; padding:2.5rem 0 0; }
.mark { font-family:var(--serif); font-size:1.05rem; letter-spacing:.14em;
        text-transform:uppercase; color:var(--muted); margin:0;
        text-decoration:none; }
a.mark:hover { color:var(--fg); }
.mark { display:inline-flex; align-items:center; gap:.55em; }
.logo { flex:none; color:var(--fg); }
nav { display:flex; gap:1.5rem; font-size:.9rem; }
nav a { color:var(--muted); text-decoration:none; padding-bottom:2px;
        border-bottom:1px solid transparent; }
nav a:hover { color:var(--fg); border-bottom-color:var(--rule); }
nav a[aria-current="page"] { color:var(--fg); border-bottom-color:var(--accent); }

header.page { padding:3.5rem 0 3rem; }
h1 { font-family:var(--serif); font-weight:400; font-size:clamp(1.7rem,4.2vw,2.6rem);
     line-height:1.28; margin:0 0 1.5rem; letter-spacing:-.01em; }
h1.small { font-size:clamp(1.5rem,3.2vw,2rem); margin-bottom:1rem; }
.lede { font-size:1.06rem; color:var(--muted); margin:0; max-width:38rem; }
h2 { font-family:var(--serif); font-weight:400; font-size:1.35rem; margin:0 0 1.25rem;
     letter-spacing:-.005em; }
h3 { font-size:.82rem; letter-spacing:.1em; text-transform:uppercase;
     color:var(--accent); margin:0 0 .5rem; font-weight:600; }
section { padding:3rem 0; border-top:1px solid var(--rule); }
p { margin:0 0 1.1rem; }

.commitments { display:grid; gap:1.75rem; margin-top:.5rem; }
@media (min-width:40rem) { .commitments { grid-template-columns:1fr 1fr; gap:2rem 2.5rem; } }
.commitments p { margin:0; color:var(--muted); font-size:.97rem; }

.proof { background:var(--card); border:1px solid var(--rule); border-radius:3px;
         padding:1.75rem; margin:0 0 1.5rem; }
.proof h4 { margin:0 0 .75rem; font-size:1rem; font-weight:600; font-family:var(--sans); }
.proof p { margin:0 0 .75rem; color:var(--muted); font-size:.97rem; }
.proof p:last-child { margin:0; }
.metric { font-family:var(--serif); font-size:1.5rem; color:var(--accent); }

dl.case { margin:0; display:grid; gap:.7rem 1.5rem; }
@media (min-width:40rem) { dl.case { grid-template-columns:9rem 1fr; } }
dl.case dt { font-size:.78rem; letter-spacing:.09em; text-transform:uppercase;
             color:var(--accent); font-weight:600; padding-top:.2rem; }
dl.case dd { margin:0; color:var(--muted); font-size:.97rem; }

dl.modes { margin:0; display:grid; gap:1.25rem; }
@media (min-width:40rem) { dl.modes { grid-template-columns:auto 1fr; gap:1.1rem 2rem; } }
dl.modes dt { font-weight:600; font-size:.97rem; }
dl.modes dd { margin:0; color:var(--muted); font-size:.97rem; }

.founder { margin-bottom:2.5rem; }
.founder:last-of-type { margin-bottom:0; }
.founder .name { font-weight:600; font-size:1.05rem; }
.founder .role { color:var(--muted); font-size:.9rem; }
.founder p { margin:.7rem 0 0; color:var(--muted); font-size:.97rem; }

.next { display:flex; flex-wrap:wrap; gap:1.5rem; padding-top:.5rem; font-size:.97rem; }
.next a { color:var(--accent); text-decoration:none; border-bottom:1px solid var(--rule); }
.next a:hover { border-bottom-color:var(--accent); }

footer { padding:3rem 0 4rem; border-top:1px solid var(--rule); color:var(--muted);
         font-size:.92rem; }
footer a { color:var(--accent); text-decoration:none; border-bottom:1px solid var(--rule); }
footer a:hover { border-bottom-color:var(--accent); }
.facts { display:grid; gap:.35rem .5rem; grid-template-columns:auto 1fr;
         margin:0 0 1.75rem; font-size:.92rem; }
.facts dt { color:var(--muted); }
.facts dd { margin:0; }
