/* style_sollicitatie.css */
body {
  background-color:#E0C6A5;
  font-family:"Segoe UI",Tahoma,Geneva,sans-serif;
  margin:0;
  padding:0;
  color:#333;
}

.container {
  max-width:900px;
  margin:2rem auto;
  padding:0 1rem;
}

/* =========================
   INTRO SECTIE
========================= */
.intro-card {
  background:#FFF7EC;
  padding:2rem;
  border-radius:10px;
  box-shadow:0 4px 8px rgba(0,0,0,0.1);
  margin-bottom:2rem;
  display:flex;
  gap:2rem;
  align-items:flex-start;
}

.intro-card img {
  width:100%;
  max-width:250px;
  height:auto;
  object-fit:contain;
  border-radius:10px;
  opacity:0.8;
  flex-shrink:0;
}

.intro-card-text {
  flex:1;
}

.intro-card h2 {
  font-size:clamp(1.6rem, 4vw, 2rem);
  color:#E1BC8A;
  margin-bottom:1rem;
}

.intro-card p {
  font-size:1rem;
  color:#7E7866;
  line-height:1.6;
  text-align:left;
}

/* =========================
   FORMULIER KAART
========================= */
.form-card {
  background:#F8E5CD;
  padding:2rem;
  border-radius:10px;
  box-shadow:0 4px 8px rgba(0,0,0,0.1);
  max-width:700px;
  margin:0 auto;
}

.form-card h3 {
  margin-bottom:1.5rem;
  font-size:clamp(1.3rem, 4vw, 1.6rem);
  color:#E1BC8A;
  text-align:center;
}

.form-card label {
  display:block;
  margin-bottom:0.3rem;
  font-weight:bold;
  color:#7E7866;
}

.required {
  color:#e63946;
}

.form-card input[type=text], .form-card select, .form-card textarea {
  width:100%;
  padding:0.7rem;
  margin-bottom:1rem;
  border:1px solid #ccc;
  border-radius:6px;
  background:#FFF7EC;
  font-size:1rem;
  color:#7E7866;
  font-family:"Segoe UI",Tahoma,Geneva,sans-serif;
}

.form-card textarea {
  resize:vertical;
  min-height:120px;
}

.form-card input::placeholder,
.form-card textarea::placeholder {
  color:#7E7866;
}

/* =========================
   DRAG & DROP CV
========================= */
#cv-drop {
  border:2px dashed #D08D47;
  border-radius:6px;
  padding:1.5rem;
  text-align:center;
  color:#7E7866;
  margin-bottom:1rem;
  cursor:pointer;
  transition:background 0.3s,border-color 0.3s;
  position:relative;
}

#cv-drop.hover {
  background:#FFF7EC;
  border-color:#E1BC8A;
}

#cv-drop input[type=file] {
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}

#cv-drop span {
  pointer-events:none;
  display:block;
  font-size:0.95rem;
}

/* =========================
   VERSTUUR KNOP
========================= */
.form-card button {
  display:block;
  width:100%;
  max-width:320px;
  margin:1.5rem auto 0;
  background-color:#D08D47;
  color:#fff;
  border:none;
  padding:0.9rem 2rem;
  font-size:1rem;
  border-radius:8px;
  cursor:pointer;
  transition:background 0.3s,box-shadow 0.3s;
  box-shadow:0 2px 6px rgba(0,0,0,0.2);
}

.form-card button:hover {
  background-color:#E1BC8A;
}

/* =========================
   LIGHTBOX
========================= */
#lightbox {
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.6);
  justify-content:center;
  align-items:center;
  z-index:10000;
  padding:1rem;
}

#lightbox-content {
  background:#fff;
  padding:2rem;
  border-radius:10px;
  max-width:420px;
  width:100%;
  position:relative;
  text-align:center;
}

#lightbox-content p {
  font-size:1.1rem;
  line-height:1.5;
}

#closeLightbox {
  position:absolute;
  top:10px;
  right:10px;
  background:none;
  border:none;
  font-size:1.6rem;
  cursor:pointer;
}

/* =========================
   RESPONSIVE BREAKPOINTS
========================= */

/* Tablet portrait & kleiner */
@media (max-width:1024px) {
  .intro-card {
    align-items:center;
  }
}

/* Mobiel */
@media (max-width:768px) {
  .intro-card {
    flex-direction:column;
    text-align:center;
    padding:1.5rem;
  }

  .intro-card p {
    text-align:center;
  }

  .intro-card img {
    max-width:220px;
  }

  .form-card {
    padding:1.5rem;
  }
}

/* Kleine telefoons (320–360px) */
@media (max-width:400px) {
  .intro-card {
    padding:1.2rem;
  }

  .form-card {
    padding:1.2rem;
  }

  .form-card button {
    font-size:0.95rem;
    padding:0.8rem;
  }
}
