:root {
  --lg-ivory: #fbf8f0;
  --lg-paper: #f5eee1;
  --lg-stone: #eee5d5;
  --lg-ink: #0b2a3c;
  --lg-brass: #ad8952;
  --lg-line: rgba(11, 42, 60, .22);
}

.lg-album {
  background: var(--lg-ivory);
  color: var(--lg-ink);
}

.lg-album main { overflow: clip; }
.lg-album .site-header { background: var(--lg-ivory); }
.lg-album .footer-lead { display: none; }
.lg-album .button { border-radius: 0; }

.lg-album__hero {
  padding: clamp(4.6rem, 8vw, 8rem) 0 clamp(3.25rem, 5.5vw, 5.5rem);
  text-align: center;
  background: var(--lg-ivory);
}

.lg-album__hero-inner { max-width: 980px; }
.lg-album__hero .eyebrow { color: var(--lg-brass); margin-bottom: 1.25rem; }
.lg-album__hero h1 {
  max-width: 940px;
  margin: 0 auto;
  font-size: clamp(3.2rem, 6.1vw, 6.3rem);
  line-height: .94;
  letter-spacing: -.045em;
  text-wrap: balance;
}
.lg-album__hero-copy {
  max-width: 790px;
  margin: 1.65rem auto 0;
  font-size: clamp(1rem, 1.45vw, 1.2rem);
  line-height: 1.75;
}
.lg-album__hero-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  margin-top: 2rem;
}
.lg-album__hero .button,
.lg-album__pricing .button,
.lg-album__closing .button {
  background: var(--lg-ink);
  color: #fff;
  border-color: var(--lg-ink);
}
.lg-album__text-link {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  color: var(--lg-ink);
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid var(--lg-line);
  padding-bottom: .35rem;
}

.lg-album__contact-sheet {
  display: grid;
  grid-template-columns: 1.08fr 1.2fr .82fr;
  gap: 6px;
  padding: 0 6px;
  background: #fff;
}
.lg-album__contact-sheet figure { margin: 0; min-width: 0; }
.lg-album__contact-sheet img {
  display: block;
  width: 100%;
  height: clamp(260px, 31vw, 455px);
  object-fit: cover;
}
.lg-album__contact-sheet figcaption {
  min-height: 2.6rem;
  padding: .7rem .45rem;
  color: #60717d;
  background: var(--lg-ivory);
  font: italic 500 .82rem/1.3 "Source Serif 4", Georgia, serif;
}

.lg-album__return { padding: clamp(5rem, 8vw, 8rem) 0; background: var(--lg-paper); }
.lg-album__return-grid { display: grid; grid-template-columns: 1fr 1fr; align-items: center; }
.lg-album__return-heading { padding: 1rem clamp(2rem, 7vw, 7rem) 1rem 0; border-right: 1px solid var(--lg-line); }
.lg-album__return-heading h2 { margin: 0; font-size: clamp(3rem, 5vw, 5.2rem); line-height: .97; letter-spacing: -.035em; }
.lg-album__short-rule { display: block; width: 48px; height: 1px; margin: 1.5rem 0; background: var(--lg-brass); }
.lg-album__keywords { margin: 0; font-size: .67rem; letter-spacing: .24em; font-weight: 700; text-transform: uppercase; color: var(--lg-brass); }
.lg-album__return-copy { padding: 1rem 0 1rem clamp(2rem, 7vw, 7rem); text-align: center; }
.lg-album__return-copy > p { margin: 0 auto; max-width: 580px; font-size: 1.06rem; line-height: 1.8; }
.lg-album__return blockquote { margin: 1.7rem auto 0; max-width: 520px; font: italic 500 clamp(1.35rem, 2.2vw, 2rem)/1.25 "Source Serif 4", Georgia, serif; }

.lg-album__chapters { padding: clamp(4rem, 7vw, 7rem) 0; }
.lg-album__chapter {
  display: grid;
  grid-template-columns: 110px minmax(250px, .78fr) minmax(460px, 1.35fr);
  gap: clamp(1.25rem, 4vw, 4rem);
  align-items: center;
  padding: 1.65rem 0;
  border-bottom: 1px solid var(--lg-line);
}
.lg-album__chapter:first-of-type { border-top: 1px solid var(--lg-line); }
.lg-album__chapter-label { margin: 0; color: var(--lg-brass); font-size: .72rem; font-weight: 700; letter-spacing: .25em; text-transform: uppercase; align-self: start; padding-top: .4rem; }
.lg-album__chapter h3 { margin: 0 0 .75rem; font-size: clamp(1.8rem, 2.7vw, 3rem); line-height: 1.06; letter-spacing: -.025em; }
.lg-album__chapter-copy > p { margin: 0; max-width: 380px; line-height: 1.7; }
.lg-album__chapter figure { margin: 0; }
.lg-album__chapter img { display: block; width: 100%; height: clamp(210px, 23vw, 330px); object-fit: cover; }

.lg-album__privacy { padding: clamp(4.5rem, 7vw, 7rem) 0; text-align: center; background: var(--lg-paper); }
.lg-album__privacy .shell { max-width: 900px; }
.lg-album__privacy .eyebrow { color: var(--lg-brass); }
.lg-album__privacy h2 { margin: .6rem 0 1rem; font-size: clamp(2.5rem, 4.5vw, 4.5rem); line-height: 1.05; }
.lg-album__privacy p:not(.eyebrow) { max-width: 800px; margin: 0 auto; font-size: 1.06rem; line-height: 1.8; }
.lg-album__privacy a { display: inline-block; margin-top: 1.4rem; color: var(--lg-ink); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; text-decoration-thickness: 1px; text-underline-offset: .35rem; }

.lg-album__pricing { padding: clamp(5rem, 8vw, 8rem) 0; }
.lg-album__section-heading { max-width: 780px; margin: 0 auto 3.2rem; text-align: center; }
.lg-album__section-heading .eyebrow { color: var(--lg-brass); }
.lg-album__section-heading h2 { margin: .55rem 0 .8rem; font-size: clamp(2.6rem, 4.7vw, 4.7rem); line-height: 1; }
.lg-album__section-heading > p:last-child { margin: 0; line-height: 1.7; }
.lg-album__pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--lg-brass); border-bottom: 1px solid var(--lg-brass); }
.lg-album__pricing-grid article { padding: 2.7rem clamp(1.5rem, 3vw, 3rem); text-align: center; }
.lg-album__pricing-grid article + article { border-left: 1px solid var(--lg-line); }
.lg-album__pricing-grid h3 { margin: 0; font-size: clamp(1.55rem, 2.3vw, 2.35rem); }
.lg-album__price-label { margin: 1rem 0 .2rem; color: var(--lg-brass); font-size: .65rem; font-weight: 700; letter-spacing: .19em; text-transform: uppercase; }
.lg-album__price { margin: 0 0 1.15rem; font: 600 1.3rem/1 "Source Serif 4", Georgia, serif; }
.lg-album__pricing-grid article > p:last-child { margin: 0 auto; max-width: 300px; line-height: 1.7; }
.lg-album__pricing-action { margin: 2.25rem 0 0; text-align: center; }

.lg-album__locations { padding: clamp(3.2rem, 5vw, 5rem) 0; background: var(--lg-paper); }
.lg-album__locations-grid { display: grid; grid-template-columns: .45fr 1.4fr; align-items: center; gap: clamp(2rem, 6vw, 6rem); max-width: 1040px; }
.lg-album__locations-kicker { margin: 0; color: var(--lg-brass); text-align: center; }
.lg-album__locations h2 { margin: 0 0 .8rem; font-size: clamp(2rem, 3.2vw, 3.3rem); line-height: 1.05; }
.lg-album__locations p { margin: 0; line-height: 1.75; }
.lg-album__locations-note { margin-top: 1.15rem !important; color: var(--lg-brass); font-size: .68rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }

.lg-album__faq { padding: clamp(5rem, 8vw, 8rem) 0; }
.lg-album__faq-grid { display: grid; grid-template-columns: .8fr 1.5fr; gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.lg-album__faq-heading { position: sticky; top: 8rem; }
.lg-album__faq-heading .eyebrow { color: var(--lg-brass); }
.lg-album__faq-heading h2 { margin: .7rem 0 1rem; font-size: clamp(3rem, 5vw, 5rem); line-height: .94; }
.lg-album__faq-heading > p:last-child { max-width: 330px; font-size: .72rem; font-weight: 700; line-height: 1.65; letter-spacing: .15em; text-transform: uppercase; color: var(--lg-brass); }
.lg-album__faq-list { border-top: 1px solid var(--lg-line); }
.lg-album__faq .faq-item { border-bottom-color: var(--lg-line); }
.lg-album__faq .faq-question { padding: 1.25rem 2.5rem 1.25rem 0; color: var(--lg-ink); font-size: .96rem; }
.lg-album__faq .faq-answer p { padding-right: 2rem; line-height: 1.72; }

.lg-album__related { padding: clamp(3.5rem, 6vw, 6rem) 0; background: var(--lg-paper); }
.lg-album__related > .shell > .eyebrow { color: var(--lg-brass); text-align: center; }
.lg-album__related-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 2.2rem; border-top: 1px solid var(--lg-line); border-bottom: 1px solid var(--lg-line); }
.lg-album__related-grid a { display: flex; min-height: 150px; padding: 1.45rem; flex-direction: column; gap: .55rem; color: var(--lg-ink); text-decoration: none; }
.lg-album__related-grid a:not(:nth-child(4n + 1)) { border-left: 1px solid var(--lg-line); }
.lg-album__related-grid a:nth-child(n + 5) { border-top: 1px solid var(--lg-line); }
.lg-album__related-grid strong { font: 500 1.25rem/1.1 "Source Serif 4", Georgia, serif; }
.lg-album__related-grid span { color: #586a75; font-size: .82rem; line-height: 1.5; }

.lg-album__closing { padding: clamp(5rem, 8vw, 8rem) 0; text-align: center; }
.lg-album__closing h2 { margin: 0; font-size: clamp(2.7rem, 5vw, 5rem); line-height: 1; }
.lg-album__closing p { margin: 1rem 0 1.8rem; }

@media (hover:hover) {
  .lg-album__related-grid a:hover { background: rgba(255, 255, 255, .45); }
  .lg-album__text-link:hover,
  .lg-album__privacy a:hover { color: var(--lg-brass); }
}

@media (max-width: 980px) {
  .lg-album__hero h1 { font-size: clamp(3.4rem, 8.5vw, 5rem); }
  .lg-album__chapter { grid-template-columns: 82px .85fr 1.2fr; gap: 1.5rem; }
  .lg-album__related-grid { grid-template-columns: repeat(2, 1fr); }
  .lg-album__related-grid a:not(:nth-child(4n + 1)) { border-left: 0; }
  .lg-album__related-grid a:nth-child(even) { border-left: 1px solid var(--lg-line); }
  .lg-album__related-grid a:nth-child(n + 3) { border-top: 1px solid var(--lg-line); }
}

@media (max-width: 760px) {
  .lg-album__hero { padding: 3.9rem 0 3.1rem; }
  .lg-album__hero h1 { font-size: clamp(2.8rem, 13.5vw, 4.1rem); line-height: .96; }
  .lg-album__hero h1 br { display: none; }
  .lg-album__hero-copy { max-width: 34rem; font-size: .98rem; line-height: 1.7; }
  .lg-album__hero-actions { flex-direction: column; gap: 1.2rem; }

  .lg-album__contact-sheet { grid-template-columns: 1fr; padding: 0; gap: 0; }
  .lg-album__contact-sheet figure { display: grid; grid-template-columns: 1fr; }
  .lg-album__contact-sheet img { height: min(72vw, 340px); }
  .lg-album__contact-sheet figcaption { min-height: 0; padding: .65rem 1.25rem 1.15rem; text-align: center; }

  .lg-album__return-grid { grid-template-columns: 1fr; }
  .lg-album__return-heading { padding: 0 0 2.5rem; border-right: 0; border-bottom: 1px solid var(--lg-line); text-align: center; }
  .lg-album__short-rule { margin: 1.5rem auto; }
  .lg-album__return-copy { padding: 2.5rem 0 0; }

  .lg-album__chapter { grid-template-columns: 1fr; gap: .9rem; padding: 2.4rem 0; text-align: center; }
  .lg-album__chapter-label { align-self: auto; padding: 0; }
  .lg-album__chapter-copy > p { margin: 0 auto; }
  .lg-album__chapter figure { margin-top: .75rem; }
  .lg-album__chapter img { height: min(50vw, 260px); }

  .lg-album__pricing-grid { grid-template-columns: 1fr; }
  .lg-album__pricing-grid article + article { border-left: 0; border-top: 1px solid var(--lg-line); }
  .lg-album__pricing-grid article { padding: 2.3rem 1rem; }

  .lg-album__locations-grid { grid-template-columns: 1fr; gap: 1.25rem; text-align: center; }
  .lg-album__locations-kicker { margin-bottom: .3rem; }

  .lg-album__faq-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .lg-album__faq-heading { position: static; text-align: center; }
  .lg-album__faq-heading > p:last-child { margin-left: auto; margin-right: auto; }
  .lg-album__faq .faq-question { text-align: center; padding-left: 1.5rem; padding-right: 1.5rem; }
  .lg-album__faq .faq-question::after { right: .2rem; }
  .lg-album__faq .faq-answer p { padding-right: 0; text-align: center; }

  .lg-album__related-grid { grid-template-columns: 1fr; }
  .lg-album__related-grid a { min-height: 0; text-align: center; }
  .lg-album__related-grid a:nth-child(even) { border-left: 0; }
  .lg-album__related-grid a + a { border-top: 1px solid var(--lg-line); }

  .lg-album__closing p { max-width: 29rem; margin-left: auto; margin-right: auto; }
}

@media (max-width: 430px) {
  .lg-album__hero { padding-top: 3.2rem; }
  .lg-album__hero h1 { font-size: clamp(2.55rem, 12.7vw, 3.25rem); }
  .lg-album__contact-sheet img { height: 66vw; max-height: 285px; }
  .lg-album__return-heading h2,
  .lg-album__faq-heading h2 { font-size: 2.75rem; }
  .lg-album__chapter img { height: 46vw; max-height: 220px; }
}
