/*
  interior-luxury.css — interior pages only (not index.html).
  Restraint: spacing rhythm, hairline transitions, calmer copy measure, CTA/footer polish.
  Load after hero-placement.css, before page-specific CSS, before responsive.css.
 */

:root {
  --interior-image-radius: 20px;
  --interior-card-shadow: 0 16px 42px rgba(28, 25, 22, 0.045);
  --interior-hairline: 1px solid rgba(184, 151, 90, 0.14);
}

/* ── Transition from full-bleed hero ── */
.page-hero + .pricing-intro,
.page-hero + .area-hero-strip,
.page-hero + .inner-section,
.page-hero + .filter-bar,
section.page-hero + section,
.ceremony-hero + .spaces-intro {
  border-top: var(--interior-hairline);
}

.contact-hero + .social-proof-band {
  border-top: var(--interior-hairline);
}

/* Stat strip after intro section (e.g. Marguerite) */
main#main-content section + .area-hero-strip {
  border-top: var(--interior-hairline);
}

/* Section vertical rhythm: same tokens as index (components.css) */

body:not([data-page="index"]) main#main-content .section-intro {
  line-height: 1.78;
}

/* Pricing intro: hero → copy bridge (width from components.css) */
.pricing-intro {
  padding-top: var(--section-pad);
  padding-bottom: var(--space-sm);
}

/* Ceremony intro */
.ceremony-hero + .spaces-intro {
  padding-top: var(--section-pad);
  padding-bottom: var(--space-md);
}

body[data-page="micro-weddings"] .phil-img {
  border-radius: var(--interior-image-radius);
  box-shadow: var(--interior-card-shadow);
}

body[data-page="micro-weddings"] .phil-img img {
  border-radius: inherit;
}

/* Marguerite intro image */
body[data-page="marguerite-house"] .intro-image {
  border-radius: var(--interior-image-radius);
  box-shadow: var(--interior-card-shadow);
  overflow: hidden;
}

/* Ceremony spaces — landscape frames */
body[data-page="ceremony-spaces"] .space-image {
  border-radius: var(--interior-image-radius);
  box-shadow: var(--interior-card-shadow);
}

/* Gallery — filter + header breathing */
body[data-page="gallery"] .gallery-header {
  padding: var(--space-xxs) var(--side-pad) var(--space-sm);
}

body[data-page="gallery"] .page-hero + .filter-bar {
  padding-top: var(--space-md);
  padding-bottom: var(--space-sm);
}

body[data-page="gallery"] .gallery-story-intro {
  margin-top: var(--space-sm);
  line-height: 1.82;
}

/* FAQ — calmer filter chrome */
body[data-page="faq"] .faq-filter-bar {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 10px 32px rgba(28, 25, 22, 0.04);
}

body[data-page="faq"] .inner-section.section-center.no-pad-bottom {
  padding-bottom: var(--space-md);
}

/* Area guide — section headers */
body[data-page="area-guide"] .area-section-header {
  margin-bottom: var(--space-md);
}

body[data-page="area-guide"] .area-section-inner .section-intro {
  margin-top: var(--space-xs);
}

/* Pricing / micro packages — card elevation (sitewide on those pages) */
body[data-page="pricing"] .pkg-card,
body[data-page="micro-weddings"] .micro-card {
  border-radius: 22px;
  box-shadow: 0 16px 44px rgba(28, 25, 22, 0.055);
}

body[data-page="pricing"] .pkg-card-img {
  border-radius: 22px 22px 0 0;
}

/* CTA bands — interior page-cta: calmer close (sitewide base in site.css) */
body:not([data-page="index"]) .page-cta {
  min-height: clamp(420px, 52vh, 580px);
  padding: clamp(80px, 12vw, 120px) var(--side-pad);
}

/* Contact — social proof + info rhythm */
body[data-page="contact"] .social-proof-band {
  padding-top: var(--space-md);
  padding-bottom: var(--space-md);
}

body[data-page="contact"] .social-proof-band-inner {
  padding: var(--space-sm) var(--space-md);
}

body[data-page="contact"] .contact-info {
  padding-top: var(--space-lg);
  padding-bottom: var(--space-md);
}

/* Footer: sitewide rhythm in site.css + polish conversion rail */

@media (max-width: 768px) {
  .pricing-intro {
    padding-top: var(--section-pad);
  }

  body[data-page="ceremony-spaces"] .ceremony-hero + .spaces-intro {
    padding-top: var(--section-pad);
  }

  body[data-page="gallery"] .gallery-header {
    padding-top: clamp(16px, 4vw, 24px);
    padding-bottom: clamp(24px, 5vw, 32px);
  }
}
