*{box-sizing:border-box} :root{--background:oklch(0.975 0.012 88);--foreground:oklch(0.18 0.005 85);--primary:oklch(0.43 0.048 112);--muted-foreground:oklch(0.46 0.018 90);--border:oklch(0.82 0.021 90);--ring:var(--primary)} body{margin:0;background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}
:root {
  --font-editorial: "Bodoni MT", Didot, "Times New Roman", serif;
}

.personal-page {
  min-height: 100svh;
  max-width: 1600px;
  margin-inline: auto;
  padding: 48px 80px 32px;
  display: flex;
  flex-direction: column;
}

.personal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.monogram {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0;
}

.olive-mark {
  width: 32px;
  height: 2px;
  background: var(--primary);
}

.personal-main {
  flex: 1;
  padding-block: 130px 110px;
}

.personal-name {
  font-family: var(--font-editorial);
  font-size: 148px;
  font-weight: 400;
  line-height: 0.94;
  letter-spacing: 0;
  margin: 0 0 84px;
}

.personal-name span { display: block; }

.contact-section {
  border-top: 1px solid var(--border);
  padding-top: 32px;
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 24px;
}

.contact-label {
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0;
  color: var(--muted-foreground);
  margin: 0;
}

.personal-email {
  display: inline-flex;
  align-items: center;
  gap: 40px;
  font-size: 23px;
  line-height: 1.6;
  color: var(--primary);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.personal-email:hover { border-bottom-color: currentColor; }
.personal-email:focus-visible {
  outline: 2px solid var(--ring);
  outline-offset: 8px;
}
.personal-email svg { width: 24px; height: 24px; flex-shrink: 0; }

.personal-footer {
  color: var(--muted-foreground);
  font-size: 12px;
  line-height: 1.5;
}

@media (min-width: 1440px) {
  .personal-page { padding-inline: 112px; }
  .personal-name { font-size: 172px; }
}

@media (max-width: 767px) {
  .personal-page { padding: 32px 28px 24px; }
  .personal-main { padding-block: 112px 100px; }
  .personal-name { font-size: 80px; margin-bottom: 64px; }
  .contact-section { flex-direction: column; gap: 18px; padding-top: 26px; }
  .personal-email { font-size: 19px; gap: 20px; }
}

@media (max-width: 374px) {
  .personal-page { padding-inline: 22px; }
  .personal-name { font-size: 66px; }
  .personal-email { font-size: 16px; gap: 16px; }
}
