/* styles.css — mix van modern, vriendelijk en cyber-accenten */
:root{
  --bg:#0f172a; /* darker base for subtle cyber feel */
  --card:#ffffff;
  --muted:#94a3b8;
  --accent:#1fb6ff; /* neon blue */
  --accent-2:#7c3aed; /* purple accent */
  --glass: rgba(255,255,255,0.06);
  --maxw:1100px;
  --radius:12px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
  background:linear-gradient(180deg,#071126 0%, #0f172a 100%);
  color:#e6eef8;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.6;
}

/* layout */
.container{max-width:var(--maxw);margin:0 auto;padding:1rem}
.site-header{backdrop-filter: blur(6px);background:linear-gradient(90deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));border-bottom:1px solid rgba(255,255,255,0.04);position:sticky;top:0;z-index:40}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 0}
.brand{font-weight:800;color:var(--card);text-decoration:none;font-size:1.125rem;letter-spacing:0.2px}
.main-nav{display:flex;gap:0.6rem}
.main-nav a{text-decoration:none;color:var(--muted);padding:0.5rem;border-radius:8px;font-weight:600}
.main-nav a:hover{color:var(--card);background:rgba(255,255,255,0.03)}

.nav-toggle{display:none;background:none;border:1px solid rgba(255,255,255,0.03);padding:0.25rem 0.6rem;border-radius:8px;color:var(--muted)}

/* hero */
.hero{
  min-height:62vh;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  color:#fff;
}
.parallax{
  background-image: url('https://images.unsplash.com/photo-1533222268928-2f5b1a8a8f7d?q=80&w=1600&auto=format&fit=crop');
  background-size:cover;
  background-position:center;
  background-attachment:fixed;
  filter:contrast(1.05) brightness(0.45);
}
.hero-inner{z-index:2;padding:3rem 1rem}
.hero h1{font-size:2.2rem;margin:0 0 0.5rem;line-height:1.05}
.hero p{margin:0 0 1rem;color:rgba(230,238,248,0.85)}

/* decorative animated gradient */
.hero-decor{
  position:absolute;right:-20%;top:-10%;width:60%;height:120%;
  background: radial-gradient(circle at 20% 20%, rgba(31,182,255,0.12), transparent 20%),
              radial-gradient(circle at 80% 80%, rgba(124,58,237,0.10), transparent 20%);
  transform:rotate(12deg);
  animation: float 10s linear infinite;
  z-index:1;
  pointer-events:none;
}

/* cards and sections */
.section{padding:2rem 0}
.section-title{color:var(--card);font-size:1.4rem;margin-bottom:0.25rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-top:1rem}
.card{background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.02));padding:1rem;border-radius:10px;box-shadow:0 8px 30px rgba(2,6,23,0.6);transition:transform .35s ease, box-shadow .35s ease;overflow:hidden}
.card img{width:100%;height:120px;object-fit:cover;border-radius:8px;margin-bottom:0.6rem;display:block}
.card:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(2,6,23,0.8)}

/* features */
.features{display:flex;gap:1rem;align-items:center}
.feature-left{flex:1}
.feature-right{flex:1;text-align:right}
.feature-right img{max-width:420px;border-radius:14px;box-shadow:0 10px 30px rgba(2,6,23,0.6)}

/* contact & forms */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin:1rem 0}
.contact-card{background:var(--card);color:#071126;padding:1rem;border-radius:10px;box-shadow:0 8px 30px rgba(2,6,23,0.08)}
.contact-form-wrap{background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));padding:1rem;border-radius:10px;box-shadow:0 8px 30px rgba(2,6,23,0.2)}

/* form elements */
.contact-form label{display:block;margin-top:0.75rem;font-weight:700;color:var(--muted)}
.contact-form input,.contact-form textarea{width:100%;padding:0.6rem;border-radius:8px;border:1px solid rgba(255,255,255,0.06);margin-top:0.25rem;background:transparent;color:var(--card)}
.btn{display:inline-block;margin-top:0.75rem;padding:0.6rem 1rem;border-radius:8px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#071126;border:none;cursor:pointer;font-weight:700}
.note{color:var(--muted);font-size:0.9rem;margin-top:0.6rem}

/* footer */
.site-footer{border-top:1px solid rgba(255,255,255,0.03);padding:1rem 0;margin-top:2rem;background:transparent;color:var(--muted)}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.footer-nav{display:flex;gap:0.75rem}
.footer-nav a{text-decoration:none;color:var(--muted)}

/* animations */
@keyframes float{
  0%{transform:translateY(0) rotate(12deg)}
  50%{transform:translateY(-18px) rotate(12deg)}
  100%{transform:translateY(0) rotate(12deg)}
}

/* reveal animations */
.fade-up{opacity:0;transform:translateY(12px);transition:opacity .7s ease, transform .7s ease}
.fade-up.show{opacity:1;transform:translateY(0)}
.delay-1{transition-delay:0.12s}
.delay-2{transition-delay:0.24s}
.delay-3{transition-delay:0.36s}
.delay-4{transition-delay:0.48s}

/* utility */
.accent{color:var(--accent-2);background:linear-gradient(90deg, rgba(31,182,255,0.08), rgba(124,58,237,0.08));padding:0 6px;border-radius:6px}
.rounded{border-radius:12px}

/* responsive */
@media (max-width:900px){
  .feature-right{text-align:left;margin-top:1rem}
  .feature-right img{max-width:100%}
}
@media (max-width:800px){
  .nav-toggle{display:inline-block}
  .main-nav{position:absolute;right:1rem;top:60px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));flex-direction:column;padding:0.5rem;border-radius:8px;display:none;box-shadow:0 8px 30px rgba(2,6,23,0.12)}
  .main-nav.show{display:flex}
  .hero{min-height:54vh;background-attachment:scroll}
}
