:root{ --ink:#0b1220; --brand:#0ea5e9; }
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:#f5f7fb}
header.nav{position:sticky;top:0;background:#fff;border-bottom:1px solid #e5e7eb;z-index:50}
.wrap{max-width:1000px;margin:0 auto;padding:16px}
.nav .row{display:flex;align-items:center;gap:16px}
.nav .menu{margin-left:auto;display:flex;gap:12px;flex-wrap:wrap}
.nav a{color:#111;text-decoration:none;padding:8px 10px;border-radius:10px}
.nav a.active,.nav a:hover{background:#f1f5f9}
.lang{border:1px solid #e5e7eb;padding:6px 10px;border-radius:10px}

.hero{background:linear-gradient(180deg,#e0f2fe,#fff);padding:40px 0;border-bottom:1px solid #e5e7eb}
.hero h1{margin:0;font-size:28px}
.hero p{color:#334155}

.grid{display:grid;grid-template-columns:1fr;gap:20px}
@media(min-width:900px){ .grid{grid-template-columns:1fr 1fr} }
.grid-two{display:grid;gap:20px}
@media(min-width:980px){ .grid-two{grid-template-columns:1fr 1fr} }

.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px;box-shadow:0 1px 2px rgba(0,0,0,.03)}
.foot{margin:30px auto 60px;color:#64748b;font-size:14px}
.btn{background:var(--brand);color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}
.btn:disabled{opacity:.6;cursor:not-allowed}
input[type=file],input[type=text],input[type=email],textarea,select{width:100%;padding:10px;border:1px solid #e5e7eb;border-radius:10px}
label{font-size:14px;color:#334155}
.muted{color:#64748b;font-size:14px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}
.form-card fieldset{ border:1px solid #e5e7eb; border-radius:12px; padding:12px; margin:0 0 14px; }
.form-card fieldset legend{ font-weight:600; padding:0 6px; }
.form-card label{ display:flex; flex-direction:column; gap:6px; margin:8px 0; }
.form-card .row-2{ display:grid; grid-template-columns: 1fr 1fr; gap:8px; }
.sticky{ position:sticky; top:12px; }

/* CV */
.cv{max-width:800px;margin:0 auto}
.cv-head{border-bottom:2px solid #e5e7eb;margin-bottom:8px;padding-bottom:8px}
.cv h1{font-size:26px;margin:0}
.cv .role{color:#334155;margin:2px 0 6px}
.cv .meta{color:#475569}
.cv section{margin:14px 0}
.cv h2{font-size:16px;letter-spacing:.02em;border-bottom:1px solid #e5e7eb;padding-bottom:4px}
.cv .row{display:flex;justify-content:space-between;gap:12px}
.cv ul{margin:6px 0 0 18px}

/* Photo */
.cv .headshot{ width:110px; height:140px; object-fit:cover; border-radius:8px; border:1px solid #e5e7eb; box-shadow:0 1px 2px rgba(0,0,0,.06) }
.cv-head-wrap{ display:flex; gap:14px; align-items:flex-start }

/* Print: only print the designated area */
@media print{
  .no-print{ display:none !important }
  body *{ visibility:hidden }
  .print-area, .print-area *{ visibility:visible }
  .print-area{ position:static !important; margin:0 !important }
  body{ background:#fff }
  .cv h1{ font-size:22px }
  .cv h2{ font-size:14px }
}
