
.lg { font-family: Outfit, sans-serif; }
.lg-display { font-family: Bodoni Moda, serif; }
body { background: #0b3d2e; }
.lg { --emerald:#0b3d2e; --deep:#06251c; --gold:#c9a227; --bone:#f7f2e7; --clay:#a63d40;
  background: var(--emerald); color: var(--bone); min-height: 100vh; overflow-x: hidden; }
.lg-wrap { max-width: 1080px; margin: 0 auto; padding: 0 1.6rem; }
/* Adire-inspired repeating geometry. */
.lg-adire { background-image:
  radial-gradient(circle at 50% 50%, rgba(201,162,39,0.28) 0 2px, transparent 2px),
  radial-gradient(circle at 0 0, rgba(201,162,39,0.16) 0 9px, transparent 9px),
  radial-gradient(circle at 100% 100%, rgba(201,162,39,0.16) 0 9px, transparent 9px);
  background-size: 26px 26px, 52px 52px, 52px 52px; }
.lg-hero { position: relative; padding: 5rem 0 5.5rem; }
.lg-hero::after { content: ""; position: absolute; inset: 0; background: var(--gold); clip-path: polygon(100% 0, 100% 100%, 42% 100%); opacity: 0.1; pointer-events: none; }
.lg-herogrid { display: grid; gap: 2.5rem; align-items: center; position: relative; z-index: 1; }
@media (min-width: 880px) { .lg-herogrid { grid-template-columns: 1.1fr 0.9fr; gap: 3.5rem; } }
.lg-kicker { font-size: 0.7rem; letter-spacing: 0.34em; text-transform: uppercase; color: var(--gold); font-weight: 600; }
.lg-names { font-size: clamp(3rem, 9vw, 5.4rem); line-height: 0.98; margin-top: 1.3rem; }
.lg-names i { font-style: italic; color: var(--gold); }
.lg-sub { margin-top: 1.8rem; font-size: 0.94rem; line-height: 1.85; color: rgba(247,242,231,0.78); max-width: 44ch; }
.lg-datechip { display: inline-flex; gap: 1.2rem; margin-top: 2rem; border: 1px solid rgba(201,162,39,0.5); padding: 0.85rem 1.5rem;
  font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); }
.lg-heroimg { position: relative; aspect-ratio: 4 / 5; overflow: hidden; border: 1px solid rgba(201,162,39,0.4); }
.lg-band { background: var(--gold); color: var(--deep); padding: 1rem 1.6rem; text-align: center;
  font-size: 0.72rem; letter-spacing: 0.3em; text-transform: uppercase; font-weight: 600; }
.lg-section { padding: 5rem 0; }
.lg-eyebrow { font-size: 0.7rem; letter-spacing: 0.32em; text-transform: uppercase; color: var(--gold); font-weight: 600; }
.lg-h2 { font-size: clamp(2rem, 4.6vw, 3rem); margin-top: 0.9rem; }
.lg-p { font-size: 1rem; line-height: 1.9; color: rgba(247,242,231,0.78); max-width: 62ch; margin-top: 1.4rem; }
.lg-two { display: grid; gap: 1.4rem; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); margin-top: 2.6rem; }
.lg-card { border: 1px solid rgba(247,242,231,0.16); padding: 2rem 1.8rem; background: rgba(6,37,28,0.55); }
.lg-cardtag { font-size: 0.68rem; letter-spacing: 0.22em; text-transform: uppercase; color: var(--clay); font-weight: 600; }
.lg-cardh { font-size: 1.6rem; margin: 0.7rem 0 0.7rem; }
.lg-cardp { font-size: 0.92rem; line-height: 1.8; color: rgba(247,242,231,0.72); }
.lg-cardmeta { margin-top: 1.2rem; padding-top: 1rem; border-top: 1px solid rgba(247,242,231,0.14);
  font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--gold); }
.lg-swatches { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 1rem; margin-top: 2.4rem; }
.lg-sw { aspect-ratio: 3 / 4; border-radius: 3px; display: flex; align-items: flex-end; padding: 0.8rem;
  font-size: 0.66rem; letter-spacing: 0.14em; text-transform: uppercase; }
.lg-photos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.8rem; }
@media (max-width: 760px) { .lg-photos { grid-template-columns: 1fr 1fr; } }
.lg-photos figure { position: relative; aspect-ratio: 3 / 4; margin: 0; overflow: hidden; }
.lg-cta { background: var(--bone); color: var(--deep); text-align: center; padding: 5.5rem 1.6rem 6rem; }
.lg-btn { display: inline-block; margin-top: 2rem; background: var(--emerald); color: var(--bone); text-decoration: none;
  padding: 1.05rem 3.4rem; font-size: 0.74rem; letter-spacing: 0.26em; text-transform: uppercase; font-weight: 600; }
.lg-foot { text-align: center; padding: 2.6rem 1.6rem 3.4rem; font-size: 0.72rem; letter-spacing: 0.24em; color: rgba(247,242,231,0.55); }

