/* assets/css/custom.css
   Minimal Dark theme adjustments and a few helper styles
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;800&display=swap');

:root{
  --accent: #7c3aed;
  --panel: #0f1724;
}

html,body{
  font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  margin:0;padding:0;background:var(--darkbg, #0b1020);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}

/* ensure content not hidden under header */
body { padding-top: 64px; }

/* basic Panel look for cards */
.bg-panel { background: var(--panel); }

/* slide transitions */
.slide { transition: opacity 1s ease; will-change:opacity; position:absolute; }

/* service card */
.service-card { border: 1px solid rgba(255,255,255,0.03); }

/* small animations */
.animate-fade-in-up { animation: fadeInUp .6s ease-out both; }
@keyframes fadeInUp { from { opacity:0; transform:translateY(10px) } to { opacity:1; transform:translateY(0) } }

/* hero text animation fallback */
@keyframes zoom { from { transform: scale(.98); opacity:0 } to { transform: scale(1); opacity:1 } }
.animate-zoom-in { animation: zoom .45s ease-out both; }

/* inputs */
input, textarea { color: #e6eef8; background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.04); }

/* mobile menu */
#mobileMenu.hidden { display:none; }

/* focus ring */
:focus { outline: 3px solid rgba(124,58,237,0.12); outline-offset: 3px; }

/* small screens adjustments */
@media (max-width: 640px) {
  body { padding-top: 56px; }
}