/**
 * About / Story / Contact / FAQ / Policy static page templates + generic
 * page.php.
 */

.evelia-page-banner { position: relative; }
.evelia-page-banner__image { width: 100%; height: 45vh; object-fit: cover; display: block; }
.evelia-page-banner__image--md { height: 45vh; }
.evelia-page-banner--sm .evelia-page-banner__image { height: 16rem; }
@media (min-width: 640px) { .evelia-page-banner--sm .evelia-page-banner__image { height: 18rem; } }
.evelia-page-banner__scrim { position: absolute; inset: 0; display: flex; align-items: center; background: hsl(var(--plum) / 0.42); }
.evelia-page-banner__scrim--center { justify-content: center; text-align: center; }
.evelia-page-banner__eyebrow { font-size: 10px; letter-spacing: 0.42em; color: hsl(var(--champagne)); }
.evelia-page-banner__title { font-family: var(--font-display-family); font-size: 2.5rem; color: hsl(var(--ivory)); margin-top: 1rem; max-width: 40rem; line-height: 1.2; }
@media (min-width: 640px) { .evelia-page-banner__title { font-size: 3.5rem; } }
.evelia-page-banner__rule { margin-top: 1.5rem; height: 1px; width: 5rem; background: linear-gradient(90deg, transparent, hsl(var(--champagne)), transparent); }

.evelia-page-copy { padding-block: 5rem; }
.evelia-lede { font-size: 1.125rem; line-height: 1.9; color: hsl(var(--foreground) / 0.85); }
.evelia-page-copy__rule { margin: 2.5rem 0; width: 100%; }
.evelia-page-copy__body { font-size: 1rem; line-height: 1.9; color: hsl(var(--muted-foreground)); }
.evelia-page-copy__cover { margin: 1.5rem 0; }
.evelia-page-copy__cover img { border-radius: 1.5rem; width: 100%; }

.evelia-values { background: hsl(var(--nude)); padding-block: 5rem; }
.evelia-values__grid { margin-top: 2.5rem; display: grid; gap: 2.5rem; }
@media (min-width: 640px) { .evelia-values__grid { grid-template-columns: repeat(2, 1fr); } }
.evelia-values__item { border-top: 1px solid hsl(var(--champagne)); padding-top: 1.25rem; }

.evelia-split { display: grid; gap: 3rem; padding-block: 5rem; align-items: center; }
@media (min-width: 1024px) { .evelia-split { grid-template-columns: repeat(2, 1fr); } }
.evelia-split__image { width: 100%; border-radius: 1.5rem; object-fit: cover; }
.evelia-split__text { margin-top: 1.25rem; }
.evelia-split .evelia-h2 { margin-top: 0; }
.evelia-underline-link { display: inline-block; margin-top: 2rem; border-bottom: 1px solid hsl(var(--rose)); padding-bottom: 0.25rem; font-size: 0.75rem; letter-spacing: 0.3em; color: hsl(var(--rose)); }
.evelia-split__cta { margin-top: 2.25rem; }

.evelia-story-head { padding-top: 5rem; }
.evelia-story-head__eyebrow { font-size: 10px; letter-spacing: 0.42em; color: hsl(var(--rose)); }
.evelia-story-head__title { font-family: var(--font-display-family); font-size: 3rem; max-width: 48rem; margin-top: 1.25rem; line-height: 1.1; color: hsl(var(--plum)); }
@media (min-width: 640px) { .evelia-story-head__title { font-size: 4.5rem; } }
.evelia-story-head__rule { margin-top: 2rem; width: 6rem; }

.evelia-story-texture { margin-top: 3.5rem; }
.evelia-story-texture img { width: 100%; height: 50vh; object-fit: cover; border-radius: 1.5rem; }

.evelia-story-timeline-wrap { background: hsl(var(--blush) / 0.45); padding-block: 5rem; }
.evelia-story-timeline { margin-top: 3rem; }
.evelia-story-timeline__row { display: grid; gap: 0.75rem; padding-block: 2rem; border-top: 1px solid hsl(var(--champagne)); }
@media (min-width: 640px) { .evelia-story-timeline__row { grid-template-columns: 7rem 1fr 2fr; gap: 2rem; } }
.evelia-story-timeline__year { font-family: var(--font-display-family); font-size: 1.5rem; color: hsl(var(--rose)); }

.evelia-story-quote { padding-block: 4rem; text-align: center; }
.evelia-story-quote p { font-size: 1.5rem; line-height: 1.9; color: hsl(var(--plum) / 0.85); }
@media (min-width: 640px) { .evelia-story-quote p { font-size: 1.875rem; } }

.evelia-page-head { text-align: center; padding-top: 4rem; }
.evelia-page-head__eyebrow { font-size: 11px; letter-spacing: 0.35em; color: hsl(var(--rose)); }
.evelia-page-head__title { font-family: var(--font-display-family); font-size: 2.5rem; margin-top: 0.75rem; color: hsl(var(--plum)); }
@media (min-width: 640px) { .evelia-page-head__title { font-size: 3.25rem; } }
.evelia-page-head .gold-line { margin: 1.5rem auto 0; }

.evelia-faq-page, .evelia-policy-page { padding-block: 3rem 5rem; }
.evelia-faq-list--page { margin-top: 3rem; }
.evelia-policy-sections { margin-top: 3rem; display: flex; flex-direction: column; gap: 2.5rem; }
.evelia-policy-page__footnote { margin-top: 3.5rem; font-size: 0.8125rem; color: hsl(var(--muted-foreground)); }

.evelia-contact-grid { display: grid; gap: 3rem; padding-block: 3rem 5rem; }
@media (min-width: 1024px) { .evelia-contact-grid { grid-template-columns: 1fr 1.2fr; } }
.evelia-contact-grid__intro { margin-top: 1rem; }
.evelia-contact-grid__details { margin-top: 2rem; display: flex; flex-direction: column; gap: 1rem; font-size: 0.875rem; }
.evelia-contact-grid__details p { display: flex; align-items: center; gap: 0.75rem; }
.evelia-contact-grid__details svg { flex: 0 0 auto; color: hsl(var(--rose)); }
.evelia-contact-grid__hours { margin-top: 2rem; font-size: 0.75rem; color: hsl(var(--muted-foreground)); }
.evelia-contact-form { border-radius: 2rem; background: hsl(var(--nude) / 0.7); padding: 2rem; }
.evelia-contact-form__row { display: grid; gap: 1.5rem; margin-bottom: 1.5rem; }
@media (min-width: 640px) { .evelia-contact-form__row { grid-template-columns: repeat(2, 1fr); } }
.evelia-contact-form__submit { width: 100%; margin-top: 1.5rem; }

.evelia-404 { text-align: center; padding-block: 6rem; display: flex; flex-direction: column; align-items: center; gap: 1rem; }

/* Premium policy metadata + contact block. */
.evelia-policy-page__updated { margin-top: 1rem; text-align: center; font-size: .75rem; letter-spacing: .04em; color: hsl(var(--muted-foreground)); }
.evelia-policy-page__contact { margin-top: 3.5rem; padding-top: 2rem; border-top: 1px solid hsl(var(--border)); }
.evelia-policy-page__contact a { color: hsl(var(--plum)); text-decoration: none; }
.evelia-policy-page__contact a:hover { color: hsl(var(--rose)); }
