/* ==========================================================================
   Home page — 50/50 split "cover page" layout
   ========================================================================== */

html.home-html, body.home {
  height: 100%;
}

.split {
  display: flex;
  height: 100vh;
  width: 100%;
}

.split-left {
  width: 50%;
  height: 100vh;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 60px;
  overflow: hidden;
}

.split-right {
  width: 50%;
  height: 100vh;
}

.split-right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 20%;
}

.home-content {
  max-width: 520px;
  width: 100%;
  text-align: center;
}

.site-name {
  font-family: 'PT Serif', Georgia, serif;
  font-weight: 700;
  font-size: clamp(40px, 6.5vh, 52px);
  letter-spacing: 6px;
  text-transform: capitalize;
  color: #333;
  margin: 0 0 14px;
}

.site-tagline {
  font-family: 'PT Serif', Georgia, serif;
  font-weight: 400;
  font-size: clamp(23px, 4vh, 30px);
  letter-spacing: -0.4px;
  color: #333;
  margin: 0 0 22px;
}

.bio p {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: clamp(15.5px, 2.4vh, 18px);
  letter-spacing: 0.3px;
  line-height: 1.45;
  color: #333;
  margin-bottom: 16px;
}

.bio em { font-style: italic; }

.bio a {
  border-bottom: 1px solid #999;
}

.bio a:hover { border-bottom-color: #333; }

.cta-buttons {
  margin: 22px 0 14px;
}

.home-content .social-icons {
  margin-top: 6px;
}

/* --------------------------------------------------------------------
   Responsive: stack columns on narrow viewports
   -------------------------------------------------------------------- */

@media (max-width: 900px) {
  .split {
    flex-direction: column;
    height: auto;
  }
  .split-left,
  .split-right {
    width: 100%;
    height: auto;
  }
  .split-right {
    min-height: 60vh;
  }
  .split-right img {
    height: auto;
    min-height: 60vh;
  }
  .split-left {
    padding: 50px 30px;
  }
  .site-name {
    font-size: 34px;
    letter-spacing: 3px;
  }
}
