.landing-page{background:var(--paper);color:var(--ink)}
.landing-header{position:relative;z-index:2}
.landing-nav{align-items:center;display:flex;gap:clamp(.75rem,2.5vw,2rem)}
.landing-nav>a:not(.landing-login){color:var(--muted);font-size:.9rem}
.landing-nav>a:not(.landing-login):hover{color:var(--accent)}
.landing-login{background:var(--white);border:1px solid var(--line);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6rem 1rem}
.landing-container{margin-inline:auto;max-width:1080px;padding-inline:1.25rem;width:100%}
.landing-hero{align-items:center;display:grid;gap:clamp(2rem,7vw,6rem);grid-template-columns:minmax(0,1fr) minmax(260px,.82fr);min-height:min(720px,calc(100svh - var(--site-header-height)));padding-block:clamp(3rem,8vw,6rem)}
.landing-hero-copy{max-width:38rem}
.landing-hero h1{font-size:clamp(3rem,6vw,5.5rem);max-width:11ch}
.landing-lede,.landing-wall-copy>p:not(.eyebrow){color:var(--muted);font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.65;max-width:38rem}
.landing-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.7rem}
.landing-text-link{align-items:center;display:inline-flex;gap:.55rem;font-weight:750;min-height:44px;padding:.5rem 0}
.landing-text-link:focus-visible,.landing-nav a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.landing-hero-image,.landing-phone-image,.landing-wall-image{margin:0;overflow:hidden;position:relative}
.landing-hero-image{aspect-ratio:4/5;background:#e9e3db;border-radius:1.2rem;box-shadow:0 1rem 3rem rgb(36 61 53 / 10%);max-height:580px}
.landing-hero-image img,.landing-phone-image img,.landing-wall-image img{display:block;height:100%;object-fit:cover;width:100%}
.landing-hero-image img{object-position:58% center}
.landing-hero-image figcaption,.landing-phone-image figcaption,.landing-wall-image figcaption{background:var(--white);bottom:1rem;color:var(--deep);font-size:.74rem;font-weight:750;letter-spacing:.07em;padding:.7rem .85rem;position:absolute;right:1rem;text-transform:uppercase}
.landing-band{background:#eef2ef;padding-block:clamp(4rem,8vw,7rem)}
.landing-section-heading{max-width:42rem}
.landing-section-heading h2,.landing-wall-copy h2,.landing-closing h2{font-size:clamp(2.3rem,4.8vw,4rem);max-width:13ch}
.landing-steps{border-top:1px solid var(--line);display:grid;gap:1.5rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:3rem}
.landing-step{padding:1.25rem 1rem 0 0}
.landing-step-number{color:var(--accent);display:block;font-size:1.7rem;font-weight:700;margin-bottom:2rem}
.landing-step h3{font-size:1.15rem;margin-bottom:.55rem}
.landing-step p{color:var(--muted);line-height:1.55;max-width:28ch}
.landing-phone-image{aspect-ratio:16/7;border-radius:1rem;margin-top:3rem;max-height:440px}
.landing-phone-image img{object-position:center 58%}
.landing-wall{align-items:center;display:grid;gap:clamp(2rem,7vw,6rem);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding-block:clamp(4rem,9vw,8rem)}
.landing-wall-copy{max-width:28rem}
.landing-wall-image{aspect-ratio:16/10;border-radius:1rem;box-shadow:0 1rem 3rem rgb(36 61 53 / 10%)}
.landing-closing{background:var(--deep);color:var(--white);padding-block:clamp(4rem,8vw,7rem);text-align:center}
.landing-closing .landing-container{align-items:center;display:flex;flex-direction:column}
.landing-closing .eyebrow{color:#f0a089}
.landing-closing h2{max-width:12ch}
.landing-closing .landing-container>p:not(.eyebrow){color:rgb(255 255 255 / 75%);line-height:1.6;max-width:34rem}
.landing-actions-centered{justify-content:center}
.landing-closing .button-light{background:var(--white);color:var(--deep)}
.landing-footer{min-height:72px}
@media(max-width:720px){
  .landing-nav>a:not(.landing-login){display:none}
  .landing-hero{gap:2rem;grid-template-columns:1fr;padding-block:3rem}
  .landing-hero h1{font-size:clamp(2.7rem,12vw,4rem)}
  .landing-hero-image{aspect-ratio:4/3;max-height:none}
  .landing-steps{grid-template-columns:1fr;gap:0}
  .landing-step{border-top:1px solid var(--line);padding:1.25rem 0}
  .landing-step-number{margin-bottom:.8rem}
  .landing-step p{max-width:42ch}
  .landing-phone-image{aspect-ratio:4/3;margin-top:2rem}
  .landing-wall{grid-template-columns:1fr;padding-block:4rem}
  .landing-wall-image{aspect-ratio:4/3}
}
@media(prefers-reduced-motion:reduce){.landing-page *{scroll-behavior:auto;transition:none}}
