/* Minimal, accessible, responsive stylesheet — variant for Nexamp */
:root{
  --primary: #1E88E5;
  --bg: #ffffff;
  --panel: #f6fbff;
  --accent: rgba(30,136,229,0.07);
  --text: #0b2330;
  --muted: #5e7b88;
  --gap: 1rem;
  --maxw: 1100px;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

* { box-sizing: border-box; }
html,body { height:100%; margin:0; background:var(--bg); color:var(--text); }
.container { width:90%; max-width:var(--maxw); margin:0 auto; padding:2rem 0; }
.header-grid, .footer-grid { display:flex; align-items:center; justify-content:space-between; gap:var(--gap); }
.site-header { border-bottom:1px solid rgba(11,35,46,0.04); background:transparent; position:sticky; top:0; z-index:10; }
.logo { display:flex; align-items:center; gap:0.75rem; text-decoration:none; color:var(--text); }
.logo .brand { font-weight:700; letter-spacing:0.2px; }
.nav ul { list-style:none; margin:0; padding:0; display:flex; gap:0.8rem; }
.nav a { color:var(--muted); text-decoration:none; font-size:0.95rem; }
.nav a:hover { color:var(--text); }

.hero { padding:2.5rem; border-radius:12px; background:linear-gradient(90deg,var(--accent),transparent); margin-top:1rem; }
.hero h1 { margin:0 0 0.5rem 0; font-size:clamp(1.6rem, 3vw, 2.2rem); line-height:1.05; }
.lead { margin:0 0 1rem 0; color:var(--muted); max-width:64ch; }
.cta .btn, .btn { display:inline-block; padding:0.6rem 1rem; background:var(--primary); color:#fff; text-decoration:none; border-radius:8px; border:0; cursor:pointer; font-weight:600; }
.ghost { margin-left:0.6rem; color:var(--muted); text-decoration:none; font-weight:600; }

.cards { display:block; margin-top:1.5rem; }
.service-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1rem; list-style:none; padding:0; margin:0; }
.service-list li { background:#fff; border:1px solid rgba(11,35,46,0.04); padding:1rem; border-radius:10px; box-shadow:0 6px 18px rgba(11,35,46,0.02); }
.service-list h3 { margin:0 0 0.35rem 0; font-size:1.05rem; }
.service-list p { margin:0; color:var(--muted); font-size:0.95rem; }

.about { margin-top:1.5rem; }
.company-details div { display:flex; gap:1rem; margin-bottom:0.6rem; }
.company-details dt { width:110px; color:var(--muted); font-weight:600; }
.company-details dd { margin:0; color:var(--text); }

.contact { margin-top:1.5rem; }
.contact-form { display:grid; gap:0.6rem; max-width:520px; }
.contact-form label { font-size:0.9rem; color:var(--muted); }
.contact-form input, .contact-form textarea { padding:0.6rem; border-radius:8px; border:1px solid rgba(11,35,46,0.06); background:#fff; color:var(--text); }
.plain-contact { margin-top:0.6rem; color:var(--muted); }

.site-footer { border-top:1px solid rgba(11,35,46,0.04); padding:1rem 0; margin-top:2rem; color:var(--muted); }
.site-footer small { display:block; }
.site-footer nav ul { display:flex; gap:1rem; list-style:none; margin:0; padding:0; }

@media (max-width:720px) {
  .header-grid { flex-direction:column; align-items:flex-start; gap:0.5rem; }
  .nav ul { flex-wrap:wrap; gap:0.6rem; }
}
