.site-main { min-height: 72vh; overflow: hidden; }

.landing-hero { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(22rem, .92fr); min-height: min(82rem, calc(100svh - 6.5rem)); background: var(--chi-ink); }
.landing-hero__visual { position: relative; min-height: 44rem; background-image: linear-gradient(180deg, transparent 70%, oklch(13% .012 70 / .58)), url("../images/brochure-page.webp"); background-position: center, 8% 30%; background-repeat: no-repeat; background-size: cover, 260% auto; }
.landing-hero__visual::after { content: "Brochure rendering"; position: absolute; left: clamp(1rem, 3vw, 2.5rem); bottom: clamp(1rem, 3vw, 2.5rem); padding: .48rem .62rem; background: oklch(14% .012 70 / .82); color: var(--chi-paper); font-size: .62rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.landing-hero__content { align-self: end; max-width: 45rem; margin: 0 !important; padding: clamp(5rem, 9vw, 9rem) clamp(1.5rem, 6.5vw, 7rem); }
.landing-hero h1 { max-width: 9ch; margin: .55rem 0 1.75rem; font-size: clamp(3.8rem, 7.1vw, 8.3rem); line-height: .88; letter-spacing: -.055em; text-wrap: balance; }
.landing-hero__message { max-width: 26ch; margin: 0 0 clamp(2.5rem, 5vw, 4.5rem); color: var(--chi-muted); font-size: clamp(1.08rem, 1.7vw, 1.45rem); letter-spacing: .025em; }

.button-call { display: inline-grid; grid-template-columns: auto auto; align-items: center; gap: .4rem 1.4rem; min-height: 4.75rem; padding: .85rem 1.1rem .85rem 1.3rem; border: 1px solid var(--chi-bronze); color: var(--chi-paper); text-decoration: none; transition: background-color 220ms cubic-bezier(.22,1,.36,1), color 220ms cubic-bezier(.22,1,.36,1), transform 220ms cubic-bezier(.22,1,.36,1); }
.button-call span { color: var(--chi-muted); font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.button-call strong { font-size: clamp(1.1rem, 1.8vw, 1.4rem); font-weight: 520; letter-spacing: .035em; }
.button-call::after { content: "↗"; grid-column: 2; grid-row: 1 / span 2; margin-left: .6rem; font-size: 1.25rem; }
.button-call:hover { background: var(--chi-bronze); color: var(--chi-ink); transform: translateY(-2px); }
.button-call:hover span { color: var(--chi-ink); }
.button-call:active { transform: translateY(0); }

.offering-facts { display: grid; grid-template-columns: repeat(3, 1fr); border-block: 1px solid var(--chi-line); background: var(--chi-ink-soft); }
.offering-facts div { display: grid; gap: .45rem; padding: clamp(1.7rem, 4vw, 3.25rem) clamp(1.25rem, 4vw, 4rem); }
.offering-facts div + div { border-left: 1px solid var(--chi-line); }
.offering-facts span { color: var(--chi-muted); font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.offering-facts strong { font-family: var(--wp--preset--font-family--display); font-size: clamp(1.35rem, 2.2vw, 2.25rem); font-weight: 400; line-height: 1.1; }

.property-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .82fr); gap: clamp(4rem, 10vw, 11rem); padding: clamp(6rem, 12vw, 12rem) clamp(1.5rem, 8vw, 9rem); background: var(--chi-paper); color: var(--chi-ink); }
.property-story__intro { max-width: 48rem; margin: 0 !important; }
.property-story h2, .residence-plan h2, .inquiry-section h2 { margin: .55rem 0 1.5rem; font-size: clamp(3rem, 6vw, 6.5rem); line-height: .93; letter-spacing: -.045em; text-wrap: balance; }
.property-story__intro > p:last-child { max-width: 52ch; color: var(--chi-ink-muted); font-size: clamp(1rem, 1.45vw, 1.2rem); }
.feature-list { align-self: end; margin: 0; padding: 0; list-style: none; }
.feature-list li { display: grid; grid-template-columns: 2.4rem 1fr; gap: 1rem; align-items: baseline; padding: 1.15rem 0; border-bottom: 1px solid var(--chi-paper-line); font-family: var(--wp--preset--font-family--display); font-size: clamp(1.4rem, 2.2vw, 2.1rem); }
.feature-list li:first-child { border-top: 1px solid var(--chi-paper-line); }
.feature-list span { color: var(--chi-bronze-deep); font-family: var(--wp--preset--font-family--body); font-size: .68rem; font-weight: 700; letter-spacing: .1em; }

.brochure-section { display: grid; grid-template-columns: minmax(18rem, .75fr) minmax(22rem, 1.25fr); align-items: center; gap: clamp(4rem, 10vw, 12rem); padding: clamp(6rem, 11vw, 11rem) clamp(1.5rem, 9vw, 10rem); background: var(--chi-earth); color: var(--chi-paper); }
.brochure-sheet { margin: 0; }
.brochure-sheet img { display: block; width: 100%; height: auto; box-shadow: 0 2.4rem 5rem oklch(8% .01 70 / .44); }
.brochure-sheet figcaption { max-width: 52ch; margin-top: 1rem; color: var(--chi-earth-muted); font-size: .82rem; line-height: 1.55; }
.residence-plan { max-width: 52rem; margin: 0 !important; }
.residence-plan .eyebrow { color: var(--chi-bronze-light); }
.level-list { margin: clamp(2.5rem, 6vw, 5rem) 0 0; padding: 0; list-style: none; border-top: 1px solid var(--chi-earth-line); }
.level-list li { display: grid; grid-template-columns: minmax(5rem, .35fr) 1fr; gap: 1rem; padding: 1.35rem 0; border-bottom: 1px solid var(--chi-earth-line); }
.level-list span { color: var(--chi-bronze-light); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.level-list strong { font-size: clamp(1rem, 1.65vw, 1.3rem); font-weight: 520; }
.brochure-note { max-width: 52ch; margin-top: 2rem !important; color: var(--chi-earth-muted); }

.inquiry-section { display: grid; grid-template-columns: 1fr minmax(18rem, .55fr); align-items: end; gap: 2rem 5rem; padding: clamp(6rem, 12vw, 12rem) clamp(1.5rem, 9vw, 10rem); background: var(--chi-bronze); color: var(--chi-ink); }
.inquiry-section .eyebrow { grid-column: 1 / -1; color: var(--chi-ink); opacity: .72; }
.inquiry-section h2 { max-width: 9ch; margin: 0; }
.button-call--light { justify-self: end; border-color: var(--chi-ink); color: var(--chi-ink); }
.button-call--light span { color: var(--chi-ink); opacity: .72; }
.button-call--light:hover { background: var(--chi-ink); color: var(--chi-paper); }
.button-call--light:hover span { color: var(--chi-paper); }

@media (min-width: 720px) and (max-width: 1100px) {
  .landing-hero { grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); min-height: calc(100svh - 6.5rem); }
  .landing-hero__visual { min-height: 100%; background-position: center, 8% 30%; background-size: cover, 275% auto; }
  .landing-hero__content { padding: 4rem clamp(2rem, 5vw, 3.5rem) 4.5rem; }
  .landing-hero h1 { font-size: clamp(3.2rem, 7vw, 4.4rem); }
  .property-story, .brochure-section { gap: clamp(3rem, 7vw, 6rem); padding-inline: clamp(2.5rem, 7vw, 5rem); }
  .inquiry-section { padding-inline: clamp(2.5rem, 7vw, 5rem); }
}

@media (min-width: 720px) and (max-width: 900px) {
  .landing-hero { grid-template-columns: 1fr; min-height: auto; }
  .landing-hero__visual { min-height: 0; height: 20rem; background-position: center, 4% 24%; background-size: cover, 190% auto; }
  .landing-hero__content { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(15rem, .88fr); grid-template-rows: auto 1fr auto; gap: .4rem 3rem; max-width: none; padding: 3.25rem clamp(2.5rem, 7vw, 4rem) 3.75rem; }
  .landing-hero__content > * { max-width: none !important; margin-inline: 0 !important; }
  .landing-hero__content .eyebrow { grid-column: 1 / -1; }
  .landing-hero h1 { grid-column: 1; grid-row: 2 / 4; align-self: end; margin-bottom: 0; font-size: clamp(3.5rem, 8vw, 4.4rem); }
  .landing-hero__message { grid-column: 2; grid-row: 2; align-self: end; margin-bottom: 1.35rem; }
  .landing-hero .button-call { grid-column: 2; grid-row: 3; align-self: start; justify-self: start; }
}

@media (max-width: 719px) {
  .wp-site-blocks > header { position: sticky; top: 0; z-index: 50; }
  .landing-hero { grid-template-columns: 1fr; min-height: auto; }
  .landing-hero__visual { min-height: 0; height: 17rem; background-position: center, 4% 28%; background-size: cover, 200% auto; }
  .landing-hero__content { padding: 2.35rem 1.25rem 3rem; }
  .landing-hero h1 { margin-bottom: 1.2rem; font-size: clamp(2.95rem, 13vw, 4rem); line-height: .88; }
  .landing-hero__message { margin-bottom: 1.5rem; }
  .property-story, .brochure-section, .inquiry-section { grid-template-columns: 1fr; }
  .feature-list { width: 100%; }
  .button-call--light { justify-self: start; }
}

@media (max-width: 600px) {
  .button-call { width: 100%; min-height: 4.25rem; }
  .offering-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .offering-facts div { min-height: 7.25rem; padding: 1.35rem 1.25rem; }
  .offering-facts div:nth-child(2) { border-left: 1px solid var(--chi-line); }
  .offering-facts div:last-child { grid-column: 1 / -1; border-top: 1px solid var(--chi-line); border-left: 0; }
  .offering-facts strong { font-size: clamp(1.2rem, 6vw, 1.55rem); }
  .property-story, .brochure-section, .inquiry-section { gap: 3.5rem; padding: 4.75rem 1.25rem; }
  .feature-list li { padding-block: 1rem; }
  .brochure-sheet { width: min(100%, 21rem); margin-inline: auto; }
  .property-story h2, .residence-plan h2, .inquiry-section h2 { font-size: clamp(2.75rem, 13vw, 4.2rem); }
}

@media (min-width: 1101px) {
  .landing-hero { position: relative; isolation: isolate; display: grid; grid-template-columns: 1fr; min-height: calc(100svh - 6.5rem); padding: clamp(1.5rem, 3vw, 3rem); }
  .landing-hero__visual { position: absolute; inset: clamp(1.5rem, 3vw, 3rem) clamp(1.5rem, 3vw, 3rem) clamp(1.5rem, 3vw, 3rem) 17%; min-height: 0; background-image: linear-gradient(90deg, oklch(14% .012 70 / .82) 0%, transparent 54%), url("../images/brochure-exterior.webp"); background-position: center; background-size: cover; }
  .landing-hero__visual::after { right: clamp(1rem, 3vw, 2.5rem); left: auto; }
  .landing-hero__content { position: relative; z-index: 1; align-self: center; justify-self: start; width: min(46vw, 44rem); max-width: none; margin: 0 0 0 2vw !important; padding: clamp(3.5rem, 5.5vw, 6.5rem); border: 1px solid var(--chi-line); background: oklch(16% .015 70 / .97); box-shadow: 1.25rem 1.25rem 0 var(--chi-bronze-deep); }
  .landing-hero__content::after { content: "Private offering · Chicago"; position: absolute; left: 1rem; bottom: -2.2rem; color: var(--chi-muted); font-size: .61rem; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; }
  .landing-hero h1 { max-width: 8ch; font-size: clamp(4.8rem, 7.6vw, 8.5rem); }
  .landing-hero__message { margin-bottom: 2.75rem; }

  .offering-facts { grid-template-columns: 1.15fr .85fr 1fr; border-color: oklch(14% .012 70 / .35); background: var(--chi-bronze); color: var(--chi-ink); }
  .offering-facts div { min-height: 9.5rem; align-content: center; }
  .offering-facts div + div { border-left-color: oklch(14% .012 70 / .28); }
  .offering-facts span { color: var(--chi-ink); opacity: .7; }

  .property-story { grid-template-columns: minmax(0, .78fr) minmax(27rem, 1.22fr); gap: clamp(5rem, 9vw, 10rem); padding: clamp(7rem, 9vw, 10rem) clamp(5rem, 10vw, 11rem); }
  .property-story h2 { max-width: 8ch; }
  .property-story__intro { align-self: start; }
  .feature-list { align-self: center; }

  .brochure-section { grid-template-columns: minmax(22rem, .9fr) minmax(28rem, 1.1fr); gap: clamp(6rem, 9vw, 11rem); padding: clamp(7rem, 9vw, 10rem) clamp(5rem, 10vw, 11rem); }
  .brochure-sheet { width: min(100%, 31rem); justify-self: center; }
  .inquiry-section { min-height: 42rem; padding-block: clamp(7rem, 9vw, 10rem); }
}
