*{box-sizing:border-box}
html{font-size:16px}
body{
  margin:0;
  background:#fff;
  color:#1b1f23;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  line-height:1.6;
}
a{ color:#0b6efd; text-decoration:none; border-bottom:1px solid currentColor }
a:hover{ opacity:.85 }

/* Page */
.page{ max-width:900px; margin:28px auto 60px; padding:0 22px }
@media(max-width:780px){ .page{ padding:0 16px } }

/* Header */
.header{
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  padding:18px 0 14px;
  border-bottom:2px solid #e6e9ef;
}
.name{ margin:0; font-weight:800; font-size:clamp(28px,4vw,40px) }
.title{ margin:6px 0 0; color:#5a6b7b; font-size:14px }
.contact{ display:flex; flex-direction:column; align-items:flex-end; gap:4px; font-size:14px }
@media(max-width:780px){ .header{ grid-template-columns:1fr } .contact{ align-items:flex-start } }

/* Sections */
.section{ padding:18px 0; border-bottom:1px solid #e6e9ef }
.section:last-child{ border-bottom:0 }
.section-title{ margin:0 0 10px; font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:#637184 }

/* Experience Items */
.item{ display:grid; grid-template-columns:1fr auto; gap:8px; margin:12px 0 2px }
.item-header{ font-weight:700; font-size:16px; color:#111 }
.item-dates{ font-size:14px; color:#637184; white-space:nowrap }
.item-body{ grid-column:1 / -1 }
.bullets{ margin:8px 0 0; padding-left:18px }
.bullets li{ margin:6px 0 }
.bullets ul{ margin-top:6px }

/* Certificates Grid */
.cert-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px }
.cert-grid img{ max-width:100%; height:auto; display:block; border:1px solid #e6e9ef; border-radius:8px }
@media(max-width:900px){ .cert-grid{ grid-template-columns:repeat(2,1fr) } }
@media(max-width:560px){ .cert-grid{ grid-template-columns:1fr } }

/* Footer */
.footer{ text-align:center; font-size:14px; color:#637184; margin-top:16px }

/* Print */
@media print{
  @page{ margin:0.6in }
  body{ color:#000; background:#fff }
  .page{ max-width:100%; padding:0 }
  a{ color:inherit; border:0 }
  .section{ break-inside:avoid }
  .item, .section-title{ break-after:avoid }
  .cert-grid img{ page-break-inside:avoid }
}

/* Dark Mode */
@media(prefers-color-scheme:dark){
  body{ background:#0f1115; color:#e6e9ef }
  .title,.section-title,.item-dates,.footer{ color:#9aa6b2 }
  .header{ border-bottom-color:#202534 }
  .section{ border-bottom-color:#202534 }
  a{ color:#6aa8ff; border-bottom-color:#6aa8ff }
  .cert-grid img{ border-color:#202534 }
}
