/* Custom styles for raphaelsimon.fr */

/* Improve readability */
body {
  font-size: 1.1rem;
  line-height: 1.7;
}

/* ===== HOMEPAGE STYLES ===== */

/* Hide default title block on homepage - we want minimal */
.page-layout-custom .quarto-title-block {
  display: none;
}

/* Center the homepage content */
.homepage-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1rem 1.5rem;
}

/* Align navbar with content */
.navbar > .container-fluid {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1.5rem;
}

/* Two-column layout */
.two-column-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 3rem;
  margin-top: 1rem;
}

.main-column {
  min-width: 0;
}

.sidebar-column {
  border-left: 1px solid var(--bs-border-color);
  padding-left: 2rem;
}

.sidebar-column h2 {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

.sidebar-column h3 {
  font-size: 1rem;
  font-weight: 600;
  margin-top: 1.5rem;
  margin-bottom: 0.5rem;
  color: var(--bs-secondary-color);
}

.sidebar-column ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sidebar-column li {
  margin-bottom: 0.5rem;
  font-size: 0.95rem;
}

/* Recent posts section */
.main-column h2 {
  font-size: 1.2rem;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--bs-border-color);
}

/* Style the listing */
.main-column .quarto-listing {
  margin-bottom: 1.5rem;
}

.main-column .quarto-listing-default {
  border: none;
}

.main-column .listing-item {
  padding: 0.75rem 0;
  border-bottom: none;
}

.main-column .listing-title {
  font-weight: 600;
}

.main-column .listing-description {
  color: var(--bs-secondary-color);
  margin-top: 0.25rem;
}

/* Responsive: stack on mobile */
@media (max-width: 768px) {
  .two-column-layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .sidebar-column {
    border-left: none;
    border-top: 1px solid var(--bs-border-color);
    padding-left: 0;
    padding-top: 1.5rem;
  }
}

/* ===== END HOMEPAGE STYLES ===== */

/* Homepage hero section (legacy, keeping for non-custom pages) */
.quarto-title-block {
  margin-bottom: 2rem;
}

/* Blog post cards */
.quarto-grid-item {
  border-radius: 8px;
  transition: transform 0.2s ease;
}

.quarto-grid-item:hover {
  transform: translateY(-2px);
}

/* Code blocks */
pre {
  border-radius: 6px;
}

/* Links */
a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* Footer spacing */
.page-footer {
  margin-top: 3rem;
  padding-top: 1.5rem;
}

/* Contact form styling handled in contact-form.html */
