/* lg-pages.css — templated pages (about, membership, events, places, shop, default page) */
.lg-page-hero { position: relative; padding: calc(76px + 56px) 0 64px; overflow: hidden; }
.lg-page-hero.has-image { min-height: 60vh; display: flex; align-items: flex-end; }
.lg-page-hero-media { position: absolute; inset: 0; }
.lg-page-hero-media .lg-img { width: 100%; height: 100%; object-fit: cover; opacity: .5; }
.lg-page-hero.has-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(15,42,35,.96), rgba(15,42,35,.55) 55%, rgba(15,42,35,.2)); }
.lg-page-hero-content { position: relative; z-index: 1; max-width: 820px; }
.lg-page-title { font-size: clamp(36px, 5.4vw, 68px); font-weight: 300; line-height: 1.03; margin-bottom: 18px; }
.lg-page-intro { font-size: clamp(17px, 1.6vw, 20px); font-weight: 300; line-height: 1.6; max-width: 60ch; opacity: .92; }
.lg-page-intro + .lg-page-intro { margin-top: .8em; }
.lg-page-body { padding: clamp(40px, 6vw, 80px) 0; }
.lg-pillars { padding: clamp(48px, 6vw, 80px) 0; }
.lg-pillar { padding: 28px; background: var(--lg-white); border-radius: 2px; }
.lg-pillar-number { font-family: var(--lg-font-serif); font-size: 32px; color: var(--lg-oro); margin-bottom: 10px; }
.lg-pillar-title { font-size: 26px; margin-bottom: 10px; }
.lg-collab { padding: clamp(48px, 6vw, 80px) 0; }
.lg-mem-facts { padding: clamp(48px, 6vw, 88px) 0; }
.lg-mem-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 56px; align-items: start; }
.lg-mem-benefits { background: var(--lg-white); padding: 28px; border-radius: 2px; }
.lg-events-page, .lg-places-page, .lg-shop-page { padding: clamp(40px, 6vw, 72px) 0 clamp(56px, 8vw, 96px); }
.lg-past-heading { margin-top: 56px; }
.lg-events-grid--past { opacity: .85; }
@media (max-width: 900px) { .lg-mem-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; } .lg-page-hero.has-image { min-height: 0; } }
