/* styles.css (FULL REPLACEMENT) */
/* Core styles. Mobile hardening lives in mobile-fix.css (loaded after this). */
:root{
  --bg:#0B0F14;--surface:#0F1520;--text:#E6E8EB;--muted:#B3B9C5;
  --brand:#2F5EFF;--brand-2:#9B5CFF;--success:#B4FF4F;--warning:#FFD166;--danger:#FF6B6B;
  --ring:#7AA2FF;--card:rgba(255,255,255,.03);--border:rgba(255,255,255,.12)
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);
  font:16px/1.6 ui-sans-serif,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji}
img,svg,video,canvas,iframe{max-width:100%;height:auto;display:block}
:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
::selection{background:rgba(127,169,255,.25)}
.container{max-width:1200px;margin-inline:auto;padding:0 16px}

/* Header & Nav basics live inline in index.html critical CSS */

/* Cards & grids (non-critical) */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:18px}
.card h3{margin:8px 0 6px;font-size:18px}
.muted{color:var(--muted)}

/* Services */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}

/* Process */
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.process .step{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}

/* Testimonials */
.testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}

/* FAQ */
.grid-3 details{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px}
.grid-3 summary{cursor:pointer;font-weight:600}

/* Logo wall — fix clipping and allow 2-line names like "Quanta ML" */
.logo-wall{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:stretch}
.logo-item{
  background:var(--card);border:1px dashed var(--border);border-radius:10px;
  display:flex;align-items:center;justify-content:center;
  min-height:56px;padding:8px 12px;text-align:center
}
.logo-item span{display:block;overflow-wrap:anywhere;word-break:break-word;hyphens:auto;line-height:1.2}

/* Form */
form.quote{display:grid;gap:12px}
.fields{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.fields .full{grid-column:1 / -1}
.field{display:grid;gap:6px}
input,select,textarea{
  background:#0B121B;border:1px solid var(--border);border-radius:10px;color:var(--text);
  padding:12px 12px;box-shadow:inset 0 0 0 1px transparent;transition:border-color .15s ease
}
.help{font-size:12px;color:var(--muted)}
.error{color:#ff9f9f;font-size:13px;min-height:1em}

/* Footer */
footer{border-top:1px solid var(--border);padding:32px 0;color:var(--muted)}

/* Responsive helpers (non-critical) */
@media (max-width: 980px){
  .cards,.gallery,.grid-3,.testimonials{grid-template-columns:1fr}
  .process{grid-template-columns:1fr}
  .fields{grid-template-columns:1fr}
  .logo-wall{grid-template-columns:repeat(3,1fr)}
}
@media (max-width: 390px){
  .logo-wall{grid-template-columns:repeat(2,1fr)}
}
@media (prefers-reduced-motion: reduce){
  *{animation:none!important;transition:none!important}
}
