/* Contact page enhanced */
.contact-wrapper{max-width:1100px;margin:-120px auto 2rem;padding:0 1rem;position:relative;z-index:2}
@media (min-width:900px){.contact-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}}
.contact-card,.contact-form{
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 16px;
  padding: 1.25rem;
  box-shadow: 0 20px 40px rgba(2,8,23,.08), 0 2px 6px rgba(2,8,23,.06);
  backdrop-filter: saturate(120%) blur(6px);
}
html[data-theme="dark"] .contact-card,
html[data-theme="dark"] .contact-form,
html.dark-theme .contact-card,
html.dark-theme .contact-form,
body.dark-theme .contact-card,
body.dark-theme .contact-form{
  background: rgba(13,18,32,.7);
  border-color: rgba(99,102,241,.25);
  box-shadow: 0 20px 50px rgba(2,8,23,.6), 0 2px 6px rgba(2,8,23,.6);
}

.field{display:flex;flex-direction:column;gap:.4rem;margin:.7rem 0}
.field input,.field select,.field textarea{
  padding:.7rem .85rem;border:1px solid rgba(0,0,0,.12);border-radius:12px;outline:none;background:#fff;
  transition:border-color .15s ease, box-shadow .15s ease, background-color .15s ease, color .15s ease;
}
.field input:focus,.field select:focus,.field textarea:focus{ border-color:#6366f1; box-shadow:0 0 0 3px rgba(99,102,241,.25); }
html[data-theme="dark"] .field input,
html[data-theme="dark"] .field select,
html[data-theme="dark"] .field textarea,
html.dark-theme .field input,
html.dark-theme .field select,
html.dark-theme .field textarea,
body.dark-theme .field input,
body.dark-theme .field select,
body.dark-theme .field textarea{
  background:#0f1420;border-color:#263047;color:#e6eefc;
}
html[data-theme="dark"] .field input:focus,
html[data-theme="dark"] .field select:focus,
html[data-theme="dark"] .field textarea:focus,
html.dark-theme .field input:focus,
html.dark-theme .field select:focus,
html.dark-theme .field textarea:focus,
body.dark-theme .field input:focus,
body.dark-theme .field select:focus,
body.dark-theme .field textarea:focus{
  border-color:#8b5cf6; box-shadow:0 0 0 3px rgba(139,92,246,.28);
}

.actions .btn{
  appearance:none;border:0;border-radius:12px;padding:.75rem 1rem;cursor:pointer;
  background:linear-gradient(180deg,#6366f1,#4f46e5); color:white; font-weight:600;
  box-shadow: 0 10px 20px rgba(79,70,229,.3), 0 2px 6px rgba(2,8,23,.2);
  transition:transform .08s ease, box-shadow .12s ease, opacity .12s ease;
}
.actions .btn:hover{ transform: translateY(-1px); box-shadow:0 16px 28px rgba(79,70,229,.35), 0 4px 10px rgba(2,8,23,.25); }
.actions .btn:active{ transform: translateY(0); box-shadow:0 8px 16px rgba(79,70,229,.25), 0 2px 6px rgba(2,8,23,.2); }
html[data-theme="dark"] .actions .btn,
html.dark-theme .actions .btn,
body.dark-theme .actions .btn{
  background:linear-gradient(180deg,#8b5cf6,#7c3aed);
}

/* ---- Slim hero with animated background ---- */
.hero.hero-slim{position:relative;overflow:hidden;height:260px;display:flex;align-items:center;justify-content:center}
.hero.hero-slim #particles{position:absolute;inset:0;pointer-events:none;z-index:0}
.hero.hero-slim .hero-overlay{position:absolute;inset:0;z-index:1;
  background: radial-gradient(1200px 400px at 50% -10%, rgba(99,102,241,.25), transparent 60%),
              radial-gradient(800px 300px at -10% 110%, rgba(16,185,129,.18), transparent 60%),
              radial-gradient(800px 300px at 110% 110%, rgba(244,114,182,.18), transparent 60%);
}
html[data-theme="dark"] .hero.hero-slim .hero-overlay,
html.dark-theme .hero.hero-slim .hero-overlay,
body.dark-theme .hero.hero-slim .hero-overlay{
  background: radial-gradient(1200px 400px at 50% -10%, rgba(99,102,241,.20), transparent 60%),
              radial-gradient(800px 300px at -10% 110%, rgba(16,185,129,.14), transparent 60%),
              radial-gradient(800px 300px at 110% 110%, rgba(244,114,182,.14), transparent 60%);
}


/* ---- Readability enhancements for contact text ---- */
.contact-card, .contact-form { color: #0f172a; }
.contact-card h1, .contact-card h2, .contact-card h3,
.contact-form h1, .contact-form h2, .contact-form h3 { color: #0b132b; }
.contact-card p, .contact-form p, .contact-list li, .contact-form label { color: #0f172a; }
.contact-card a, .contact-form a { color: #2563eb; text-decoration: underline; }

html[data-theme="dark"] .contact-card,
html[data-theme="dark"] .contact-form,
html.dark-theme .contact-card,
html.dark-theme .contact-form,
body.dark-theme .contact-card,
body.dark-theme .contact-form { color: #e6eefc; }
html[data-theme="dark"] .contact-card h1, html[data-theme="dark"] .contact-card h2, html[data-theme="dark"] .contact-card h3,
html[data-theme="dark"] .contact-form h1, html[data-theme="dark"] .contact-form h2, html[data-theme="dark"] .contact-form h3,
html.dark-theme .contact-card h1, html.dark-theme .contact-card h2, html.dark-theme .contact-card h3,
html.dark-theme .contact-form h1, html.dark-theme .contact-form h2, html.dark-theme .contact-form h3,
body.dark-theme .contact-card h1, body.dark-theme .contact-card h2, body.dark-theme .contact-card h3,
body.dark-theme .contact-form h1, body.dark-theme .contact-form h2, body.dark-theme .contact-form h3 { color: #f0f6ff; }
html[data-theme="dark"] .contact-card p, html[data-theme="dark"] .contact-form p,
html[data-theme="dark"] .contact-list li, html[data-theme="dark"] .contact-form label,
html.dark-theme .contact-card p, html.dark-theme .contact-form p,
html.dark-theme .contact-list li, html.dark-theme .contact-form label,
body.dark-theme .contact-card p, body.dark-theme .contact-form p,
body.dark-theme .contact-list li, body.dark-theme .contact-form label { color: #e6eefc; }
html[data-theme="dark"] .contact-card a, html[data-theme="dark"] .contact-form a,
html.dark-theme .contact-card a, html.dark-theme .contact-form a,
body.dark-theme .contact-card a, body.dark-theme .contact-form a { color: #93c5fd; }

html[data-theme="dark"] ::placeholder, html.dark-theme ::placeholder, body.dark-theme ::placeholder { color: #9aa3ab; opacity: 1; }


/* Ensure hero overlay doesn't block clicks */
.hero.hero-slim .hero-overlay { pointer-events: none; }
