
:root{
  --bg:#0f172a;
  --card:#ffffff;
  --ink:#172033;
  --muted:#667085;
  --accent:#b31b34;
  --accent2:#223b6d;
  --light:#f5f7fb;
  --line:#e7eaf0;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--ink);
  background:var(--light);
  line-height:1.6;
}
a{color:var(--accent2)}
nav{
  position:sticky; top:0; z-index:20;
  background:rgba(15,23,42,.96);
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 6vw;
  box-shadow:0 2px 16px rgba(0,0,0,.12);
}
.brand{color:#fff;font-weight:800;letter-spacing:.3px;text-decoration:none}
nav .links{display:flex;gap:18px;flex-wrap:wrap}
nav .links a{color:#e9eefb;text-decoration:none;font-size:.95rem}
nav .links a:hover{color:#fff}
.hero{
  min-height:74vh;
  display:grid; grid-template-columns:1.25fr .75fr; gap:48px; align-items:center;
  padding:80px 8vw;
  background:
    linear-gradient(110deg, rgba(15,23,42,.97), rgba(15,23,42,.88)),
    url('assets/city.jpg') center/cover;
  color:white;
}
.hero h1{font-size:clamp(2.6rem,6vw,5.5rem);line-height:1;margin:.1em 0}
.hero p{max-width:700px;font-size:1.15rem;color:#e4e8f2}
.hero img{
  width:min(360px,85vw); aspect-ratio:1; object-fit:cover; border-radius:28px;
  box-shadow:0 24px 55px rgba(0,0,0,.35); border:6px solid rgba(255,255,255,.82);
}
.kicker{font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:#f1b4be}
.button{
  display:inline-block;margin-top:18px;padding:12px 18px;background:var(--accent);
  color:#fff;text-decoration:none;border-radius:10px;font-weight:700
}
main{max-width:1180px;margin:auto;padding:56px 5vw}
.pagehead{padding:64px 5vw 24px;max-width:1180px;margin:auto}
.pagehead h1{font-size:clamp(2.2rem,5vw,4rem);margin:.15em 0}
.pagehead p{max-width:760px;color:var(--muted)}
.card{
  background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;
  box-shadow:0 9px 30px rgba(31,41,55,.07);
}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.photo{
  background:#fff;border-radius:18px;overflow:hidden;border:1px solid var(--line);
  box-shadow:0 8px 24px rgba(31,41,55,.07)
}
.photo img{width:100%;height:330px;object-fit:cover;display:block}
.photo .caption{padding:16px 18px}
.photo h3{margin:0 0 4px}
.placeholder{
  min-height:330px;display:flex;align-items:center;justify-content:center;text-align:center;
  border:2px dashed #c6ccd7;background:#fbfcfe;color:#7b8495;padding:28px
}
.section-title{margin-top:58px;font-size:1.65rem}
.audio-card iframe{width:100%;border-radius:14px}
.resume{background:#fff;border:1px solid var(--line);border-radius:18px;padding:34px}
.resume h2{border-bottom:2px solid var(--accent);padding-bottom:8px}
.resume ul{margin-top:.3rem}
.badge{display:inline-block;background:#eef2ff;color:#2d3a7a;border-radius:100px;padding:5px 10px;margin:4px 6px 4px 0;font-size:.88rem}
.note{background:#fff7e8;border-left:5px solid #f4b740;padding:16px 18px;border-radius:8px;color:#5c4b23}
footer{background:var(--bg);color:#cbd5e1;padding:28px 6vw;text-align:center;margin-top:60px}
.contact-big{font-size:1.3rem}
@media(max-width:760px){
  .hero{grid-template-columns:1fr;text-align:center;padding-top:52px}
  .hero p{margin-inline:auto}
  .hero img{margin:auto}
  .grid,.photo-grid{grid-template-columns:1fr}
  nav{align-items:flex-start;gap:10px}
  nav .links{gap:10px}
}
