/* styles.css - Profesional & bersih */
:root{
  --bg:#f6f7fb;
  --card:#ffffff;
  --accent:#0b63d1;
  --muted:#6b7280;
  --radius:12px;
  --container:1100px;
  --shadow: 0 6px 18px rgba(11,99,209,0.08);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:#111827;line-height:1.45}
.container{max-width:var(--container);margin:28px auto;padding:0 18px}
.site-header{background:linear-gradient(90deg,#fff,#f8fbff);border-bottom:1px solid #e6eef9}
.site-header .container{display:flex;align-items:center;justify-content:space-between;padding:14px 18px}
.brand{display:flex;gap:12px;align-items:center}
.logo{width:64px;height:64px;border-radius:8px;background:#fff;padding:8px;box-shadow:var(--shadow);display:block}
.brand h1{margin:0;font-size:18px}
.tagline{margin:0;font-size:13px;color:var(--muted)}
.nav a{margin-left:12px;color:var(--accent);text-decoration:none;font-weight:600}
.hero{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.card{background:var(--card);padding:18px;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
label{display:block;font-size:14px;color:#111827}
input[type="text"],input[type="date"],input[type="tel"],select,textarea,input[type="file"]{
  width:100%;padding:8px 10px;margin-top:6px;border:1px solid #e6eef9;border-radius:8px;background:#fcfdff;
}
.checkbox{margin:12px 0;display:flex;gap:8px;align-items:center}
.form-actions{display:flex;gap:12px;align-items:center;margin-top:12px}
.btn{background:var(--accent);color:#fff;padding:10px 14px;border-radius:10px;border:none;cursor:pointer;font-weight:600}
.btn.secondary{background:#eef3ff;color:var(--accent);border:1px solid #d2e3ff}
.form-message{margin-top:10px;color:var(--accent);font-weight:600}
.photo-preview{margin-top:8px;max-width:160px;border-radius:8px;overflow:hidden;border:1px solid #e6eef9}
.site-footer{padding:18px;text-align:center;color:var(--muted);font-size:13px}
.map-placeholder{padding:14px;border-radius:8px;border:1px dashed #e6eef9;color:var(--muted);background:#fbfdff}
@media(min-width:900px){
  .brand h1{font-size:20px}
  .hero{flex-direction:row;justify-content:space-between;align-items:center}
}
