/* ============================================================
   PAGES.CSS — Page-Specific Overrides
   Chianti Guide
   ============================================================ */

/* ============================================================
   HOME PAGE
   ============================================================ */
.page-home .hero {
  min-height: 100svh;
}

.page-home .hero__content {
  padding-top: calc(var(--nav-height) + var(--space-20));
  padding-bottom: var(--space-20);
  justify-content: flex-end;
  min-height: 100svh;
}

.page-home .hero__title {
  font-size: var(--text-6xl);
  max-width: 620px;
}

/* Teaser section */
.page-home .section-teasers {
  border-bottom: 1px solid var(--color-charcoal-15);
}

/* Intro section — two-column quote + text */
.page-home .section-intro {
  border-bottom: 1px solid var(--color-charcoal-15);
}

.page-home .intro-split__text p {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  color: var(--color-charcoal-60);
  line-height: 1.8;
  margin-bottom: var(--space-5);
}

.page-home .intro-split__text p:last-child {
  margin-bottom: 0;
}

/* Featured winery section */
.page-home .section-featured {
  background-color: #F6F4F1;
}

/* Visit CTA */
.page-home .section-cta {
  border-top: 3px solid var(--color-gold);
  text-align: center;
}

.page-home .cta-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-6);
}

.page-home .cta-block__title {
  max-width: 500px;
}

.page-home .cta-block__desc {
  max-width: 440px;
}

/* ============================================================
   ITINERARIES PAGE
   ============================================================ */
.page-itineraries .hero {
  min-height: 60vh;
}

.page-itineraries .hero__content {
  padding-top: calc(var(--nav-height) + var(--space-16));
  padding-bottom: var(--space-16);
  min-height: 60vh;
  justify-content: flex-end;
}

.page-itineraries .section-intro {
  background-color: #F6F4F1;
}

.page-itineraries .section-intro p {
  font-family: var(--font-sans);
  font-size: var(--text-lg);
  color: var(--color-charcoal-60);
  line-height: 1.8;
}

/* Practical info section */
.page-itineraries .section-practical {
  background-color: var(--color-cream);
  border-top: 1px solid var(--color-charcoal-15);
}

.practical-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-12);
}

@media (max-width: 768px) {
  .practical-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

/* ============================================================
   HOTELS PAGE
   ============================================================ */
.page-hotels .hero {
  min-height: 50vh;
}

.page-hotels .hero__content {
  padding-top: calc(var(--nav-height) + var(--space-12));
  padding-bottom: var(--space-12);
  min-height: 50vh;
  justify-content: flex-end;
}

.page-hotels .hotel-cards-grid {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.page-hotels .hotel-card--hidden {
  display: none;
}

/* ============================================================
   RESTAURANTS PAGE
   ============================================================ */
.page-restaurants .hero {
  min-height: 50vh;
}

.page-restaurants .hero__content {
  padding-top: calc(var(--nav-height) + var(--space-12));
  padding-bottom: var(--space-12);
  min-height: 50vh;
  justify-content: flex-end;
}

.page-restaurants .destination-dining {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.page-restaurants .section-trattorias {
  background-color: #F6F4F1;
  border-top: 1px solid var(--color-charcoal-15);
}

/* ============================================================
   WINERIES PAGE
   ============================================================ */
.page-wineries .hero {
  min-height: 100svh;
}

.page-wineries .hero__overlay {
  background: linear-gradient(
    to bottom,
    rgba(44, 44, 44, 0.4) 0%,
    rgba(44, 44, 44, 0.65) 100%
  );
}

.page-wineries .hero__content {
  padding-top: calc(var(--nav-height) + var(--space-20));
  padding-bottom: var(--space-20);
  min-height: 100svh;
  align-items: center;
  justify-content: flex-end;
  text-align: center;
}

.page-wineries .hero__title {
  font-style: italic;
  font-weight: 300;
}

.page-wineries .section-intro {
  border-bottom: 1px solid var(--color-charcoal-15);
}

.page-wineries .intro-text p {
  font-family: var(--font-sans);
  font-size: var(--text-base);
  color: var(--color-charcoal-60);
  line-height: 1.8;
  margin-bottom: var(--space-5);
}

.page-wineries .intro-text p:last-child {
  margin-bottom: 0;
}

.page-wineries .section-classification {
  background-color: #F6F4F1;
  border-top: 1px solid var(--color-charcoal-15);
}

.page-wineries .winery-card--hidden {
  display: none;
}
