
/* naturistjobs.com - minimalist, accessible styling */
:root{
  --bg:#0b0f14; --card:#11161d; --muted:#6b7280; --text:#e5e7eb; --accent:#22d3ee; --accent-2:#14b8a6;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0; font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, 'Helvetica Neue', Arial; background:var(--bg); color:var(--text); line-height:1.6}
a{color:var(--accent)}
a:hover{color:var(--accent-2)}
header{position:sticky; top:0; backdrop-filter:saturate(120%) blur(8px); background:rgba(11,15,20,.8); border-bottom:1px solid #1f2937; z-index:10}
.container{max-width:1100px; margin:0 auto; padding:1.2rem}
.nav{display:flex; align-items:center; gap:1rem; justify-content:space-between}
.logo{display:flex; align-items:center; gap:.6rem; font-weight:800; letter-spacing:.2px}
.badge{font-size:.75rem; color:#94a3b8; border:1px solid #334155; padding:.1rem .4rem; border-radius:.35rem}
main{padding:2rem 1rem}
.hero{display:grid; grid-template-columns:1.2fr .8fr; gap:2rem; align-items:center}
.hero h1{font-size:2rem; margin:.2rem 0 0}
.hero p{color:#cbd5e1}
.cta{display:flex; gap:.6rem; margin-top:1rem}
.button{background:linear-gradient(135deg, var(--accent), var(--accent-2)); color:#001018; padding:.7rem 1rem; border:none; border-radius:.6rem; font-weight:700; cursor:pointer}
.button.secondary{background:#0b1320; color:var(--text); border:1px solid #243041}
.grid{display:grid; gap:1rem}
.cards{grid-template-columns:repeat(auto-fit, minmax(260px,1fr))}
.card{background:var(--card); border:1px solid #1f2937; padding:1rem; border-radius:.8rem}
footer{border-top:1px solid #1f2937; color:#94a3b8}
.job-meta{display:flex; flex-wrap:wrap; gap:.5rem; color:#cbd5e1; font-size:.95rem}
.kbd{border:1px solid #334155; border-bottom-width:2px; padding:.1rem .35rem; border-radius:.35rem; font-size:.8rem; color:#94a3b8}
form{display:grid; gap:.8rem}
label{font-weight:600}
input, select, textarea{padding:.7rem .8rem; border-radius:.5rem; border:1px solid #334155; background:#0b1320; color:var(--text)}
input[type=file]{padding:.5rem; background:transparent}
fieldset{border:1px solid #243041; border-radius:.8rem; padding:1rem}
legend{padding:0 .4rem; color:#a5b4fc}
.form-row{display:grid; gap:.8rem; grid-template-columns:1fr 1fr}
@media (max-width: 800px){
  .hero{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
}
.notice{font-size:.9rem; color:#94a3b8}
.success{border:1px solid #0ea5e9; background:#06131c; padding:.6rem .8rem; border-radius:.6rem}
.error{border:1px solid #ef4444; background:#1b0b0b; padding:.6rem .8rem; border-radius:.6rem}
.table{width:100%; border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #243041; padding:.6rem; text-align:left}
.sr-only{position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden;}
