/* ══════════════════════════════════════════════════════════════
   Campaign landing page — Check My Area.
   One job: get the visitor into the five-step check. The check
   itself (card + live map) is the hero; everything below is the
   site's case, condensed, with a way back up to the check after
   every section.
   ══════════════════════════════════════════════════════════════ */

body.lp{ display:block; min-height:0; font-size:1.125rem; }
.lp .shell{ width:min(100%, 1180px); margin-inline:auto; padding-left:max(20px, env(safe-area-inset-left, 0px)); padding-right:max(20px, env(safe-area-inset-right, 0px)); }
.lp main{ position:relative; z-index:3; }
.lp h1,.lp h2,.lp h3{ text-wrap:balance; }

/* ── top bar ───────────────────────────────────────────────── */
.lpbar{
  position:sticky; top:0; z-index:40;
  padding-top:env(safe-area-inset-top, 0px);
  background:rgba(253,246,220,.86);
  -webkit-backdrop-filter:saturate(1.2) blur(12px); backdrop-filter:saturate(1.2) blur(12px);
  border-bottom:1px solid transparent;
  transition:border-color .3s ease, background .3s ease;
}
.lpbar.is-stuck{ border-bottom-color:var(--line); background:rgba(253,246,220,.96); }
.lpbar__in{ display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:76px; }
.lpbar__logo img{ height:52px; width:auto; display:block; }
.lpbar__end{ display:flex; align-items:center; gap:clamp(.6rem,2vw,1.4rem); }
.lpbar__tel{
  display:inline-flex; align-items:center; gap:.5rem;
  color:var(--green); font-weight:700; font-size:1.06rem; text-decoration:none; white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.lpbar__tel .ico{ width:1.2em; height:1.2em; color:var(--sun-d); }
.lpbar__tel:hover .lpbar__num{ text-decoration:underline; text-underline-offset:4px; }
.lpbar__cta{
  --btn-bg:var(--green); --btn-fg:var(--on-green);
  font-size:1rem; padding:.8em 1.25em;
  opacity:0; transform:translateY(-6px); pointer-events:none;
  transition:opacity .3s ease, transform .3s var(--ease-out), background-color .2s ease;
}
.lpbar.is-past .lpbar__cta{ opacity:1; transform:none; pointer-events:auto; }
@media (max-width:760px){
  .lpbar__in{ min-height:64px; }
  .lpbar__logo img{ height:42px; }
  .lpbar__num{ display:none; }
  .lpbar__tel{ width:44px; height:44px; justify-content:center; border-radius:50%; background:var(--green); }
  .lpbar__tel .ico{ color:var(--sun); }
  .lpbar__cta{ font-size:.95rem; padding:.72em 1em; }
}

/* the one gold button */
.lpbtn{
  --btn-bg:var(--sun); --btn-fg:#0E1112;
  font-size:1.08rem; padding:1em 1.6em;
  box-shadow:0 14px 30px -16px rgba(200,146,42,.9);
}
@media (hover:hover) and (pointer:fine){
  .lpbtn:hover{ --btn-bg:var(--green); --btn-fg:var(--on-green); transform:translateY(-2px); }
  .lpbar__cta:hover{ --btn-bg:var(--green-l); }
}
.lpbtn:active{ transform:scale(.98); }

/* ── hero: the check ───────────────────────────────────────── */
.lphero{ padding-block:clamp(.75rem,2.2vw,1.75rem) clamp(2.5rem,6vw,4rem); scroll-margin-top:84px; }
.lpstage{
  width:100%;
  grid-template-areas:"copy" "card" "map";
}
.lphero__copy{ grid-area:copy; }
.lpstage .checkscene{ grid-area:map; }
.lpstage .checkcard{ grid-area:card; }
@media (min-width:980px){
  .lpstage{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-rows:auto minmax(0,1fr);
    grid-template-areas:"copy card" "map card";
  }
}
.lphero__copy{
  position:relative; z-index:2;
  padding:clamp(1.9rem,4.4vw,3.4rem) clamp(1.4rem,4.4vw,3.4rem) clamp(.5rem,1.5vw,1rem);
  color:var(--on-green);
  background:radial-gradient(120% 120% at 20% 0%, #0E5A43 0%, #073527 70%);
}
.lphero__kicker{
  font-size:.86rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase;
  color:var(--sun);
}
.lphero__title{
  margin-top:.9rem;
  font-size:clamp(2.3rem,1.4rem + 3.2vw,3.75rem); line-height:1.02; letter-spacing:-.035em; font-weight:700;
  color:#FEFAEA;
}
.lphero__lede{ margin-top:1.1rem; max-width:34ch; font-size:clamp(1.12rem,1.02rem + .4vw,1.32rem); line-height:1.5; color:rgba(239,243,241,.9); }
.lphero__points{ list-style:none; margin:1.5rem 0 0; padding:0; display:grid; gap:.75rem; }
.lphero__points li{ display:flex; gap:.7rem; align-items:flex-start; font-size:1.08rem; font-weight:500; line-height:1.4; color:#FEFAEA; }
.lphero__points .ico{ width:1.35em; height:1.35em; flex:none; margin-top:-.05em; padding:.18em; border-radius:50%; background:var(--sun); color:#073527; }

/* map sits under the copy on the same green */
.lpstage .checkscene{ min-height:240px; background:linear-gradient(#073527, #04261C); }
@media (min-width:980px){ .lpstage .checkscene{ min-height:330px; } }
.lpstage .checkscene::after{ background:radial-gradient(90% 80% at 50% 40%, transparent, rgba(4,30,22,.5) 100%); }
@media (max-width:979px){
  .lpstage .checkscene{ min-height:0; aspect-ratio:16/10; }
  .lphero__copy{ padding-bottom:clamp(1.6rem,4vw,2.2rem); }
}

.lpstage .checkcard{ justify-content:center; }
.lpstage .checkcard__title{ font-size:clamp(2.2rem,1.3rem + 3vw,3.5rem); }

.lphero__facts{
  list-style:none; margin:clamp(1.25rem,3vw,2rem) 0 0; padding:0;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px;
  background:var(--line); border:1px solid var(--line); border-radius:14px; overflow:hidden;
}
.lphero__facts li{ background:var(--card); padding:1.1rem 1.2rem; display:grid; gap:.2rem; }
.lphero__facts b{ font-size:clamp(1.6rem,1.2rem + 1.2vw,2.2rem); font-weight:700; letter-spacing:-.03em; color:var(--green); font-variant-numeric:tabular-nums; line-height:1.05; }
.lphero__facts span{ font-size:1rem; color:var(--muted); line-height:1.35; }
@media (max-width:760px){ .lphero__facts{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* ── brands ────────────────────────────────────────────────── */
.lpbrands{ padding-block:clamp(1rem,3vw,2rem) clamp(2.5rem,6vw,4rem); }
.lpbrands__t{ text-align:center; font-size:clamp(1.15rem,1rem + .5vw,1.4rem); font-weight:500; color:var(--ink-2); max-width:40ch; margin-inline:auto; }
.lpbrands__row{ margin-top:1.75rem; display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:clamp(.75rem,2vw,1.75rem); align-items:center; }
.lpbrands__row img{ width:100%; height:auto; max-height:72px; object-fit:contain; mix-blend-mode:multiply; }
@media (max-width:900px){ .lpbrands__row{ grid-template-columns:repeat(4,minmax(0,1fr)); } }

/* ── section heads ─────────────────────────────────────────── */
.lpsec{ padding-block:clamp(3.5rem,8vw,6.5rem); }
.lphead{ max-width:42rem; }
.lphead--c{ margin-inline:auto; text-align:center; }
.lphead__k{
  display:inline-flex; align-items:center; gap:.6rem;
  font-size:.88rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--green-l);
}
.lphead__k::before{ content:""; width:22px; height:2px; background:var(--sun); }
.lphead__t{ margin-top:.9rem; font-size:clamp(2rem,1.3rem + 2.4vw,3.1rem); line-height:1.06; letter-spacing:-.03em; font-weight:700; color:var(--ink); }
.lphead__p{ margin-top:1rem; font-size:clamp(1.1rem,1rem + .3vw,1.25rem); line-height:1.55; color:var(--ink-2); max-width:56ch; }
.lphead__p a{ color:var(--green); font-weight:700; white-space:nowrap; }

/* ── how ───────────────────────────────────────────────────── */
.lphow{ background:var(--white); border-block:1px solid var(--line-soft); }
.lphow__list{ list-style:none; margin:clamp(2rem,5vw,3.25rem) 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2.4vw,2rem); }
.lphow__step{ position:relative; display:flex; flex-direction:column; }
.lphow__step figure{ margin:0; aspect-ratio:4/3; border-radius:14px; overflow:hidden; background:var(--surface-2); }
.lphow__step img{ width:100%; height:100%; object-fit:cover; display:block; }
.lphow__step:nth-child(3) img{ object-position:20% 50%; }
.lphow__n{
  margin-top:-1.6rem; margin-left:1.1rem; position:relative;
  width:3.2rem; height:3.2rem; border-radius:50%; display:grid; place-items:center;
  background:var(--green); color:var(--sun); font-weight:700; font-size:1.35rem;
  box-shadow:0 0 0 5px var(--white);
}
.lphow__step h3{ margin-top:1rem; font-size:clamp(1.3rem,1.15rem + .5vw,1.55rem); line-height:1.2; letter-spacing:-.015em; font-weight:700; color:var(--ink); }
.lphow__step p{ margin-top:.6rem; font-size:1.08rem; line-height:1.55; color:var(--ink-2); }
@media (max-width:860px){ .lphow__list{ grid-template-columns:minmax(0,1fr); gap:2.25rem; } .lphow__step figure{ aspect-ratio:16/10; } }

.lpcta-inline{ margin-top:clamp(2rem,5vw,3rem); display:flex; flex-wrap:wrap; align-items:center; gap:.9rem 1.25rem; }
.lpcta-inline span{ color:var(--muted); font-size:1.05rem; }

/* ── numbers ───────────────────────────────────────────────── */
.lpnums{ background:var(--green); color:var(--on-green); padding-block:clamp(2.5rem,6vw,4rem); }
.lpnums__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.lpnums__grid div{ display:grid; gap:.35rem; padding-left:1.1rem; border-left:2px solid var(--sun); }
.lpnums__grid b{ font-size:clamp(2.2rem,1.4rem + 2.6vw,3.6rem); font-weight:700; letter-spacing:-.04em; line-height:1; color:#FEFAEA; font-variant-numeric:tabular-nums; }
.lpnums__grid span{ font-size:1.05rem; color:rgba(239,243,241,.82); line-height:1.35; }
@media (max-width:760px){ .lpnums__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:2rem; } }

/* ── why ───────────────────────────────────────────────────── */
.lpwhy__grid{ display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:clamp(2rem,5vw,4.5rem); align-items:start; }
.lpwhy__head{ position:sticky; top:110px; }
.lpwhy__photo{ margin:2rem 0 0; aspect-ratio:4/3; border-radius:14px; overflow:hidden; }
.lpwhy__photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.lpwhy__list{ list-style:none; margin:0; padding:0; display:grid; }
.lpwhy__list li{ display:flex; gap:1.1rem; padding-block:1.45rem; border-top:1px solid var(--line); }
.lpwhy__list li:last-child{ border-bottom:1px solid var(--line); }
.lpwhy__list .ico{ width:2.6rem; height:2.6rem; flex:none; padding:.55rem; border-radius:12px; background:var(--green-t); color:var(--green); }
.lpwhy__list h3{ font-size:1.32rem; font-weight:700; letter-spacing:-.01em; color:var(--ink); line-height:1.25; }
.lpwhy__list p{ margin-top:.35rem; font-size:1.08rem; line-height:1.55; color:var(--ink-2); }
@media (max-width:900px){ .lpwhy__grid{ grid-template-columns:minmax(0,1fr); } .lpwhy__head{ position:static; } }

/* ── film ──────────────────────────────────────────────────── */
.lpfilm{ background:#073527; color:var(--on-green); padding-block:clamp(3.5rem,8vw,6rem); }
.lpfilm__grid{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,5vw,4rem); align-items:center; }
.lpfilm .lphead__k{ color:var(--sun); }
.lpfilm .lphead__t{ color:#FEFAEA; }
.lpfilm .lphead__p{ color:rgba(239,243,241,.86); }
.lpfilm__frame{ position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:#04261C; box-shadow:0 40px 90px -40px rgba(0,0,0,.8); }
.lpfilm__frame video{ width:100%; height:100%; display:block; object-fit:cover; }
.lpfilm__play{
  position:absolute; inset:0; border:0; cursor:pointer; padding:0;
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:1rem;
  background:linear-gradient(transparent 40%, rgba(4,30,22,.55)); color:#FEFAEA; font:inherit;
}
.lpfilm__play[hidden]{ display:none; }
.lpfilm__btn{ width:88px; height:88px; border-radius:50%; display:grid; place-items:center; background:var(--sun); color:#0E1112; box-shadow:0 18px 40px -14px rgba(0,0,0,.7); transition:transform .3s var(--ease-out); }
.lpfilm__btn svg{ width:34px; height:34px; fill:currentColor; margin-left:4px; }
.lpfilm__play:hover .lpfilm__btn{ transform:scale(1.06); }
.lpfilm__len{ font-weight:700; font-size:1.05rem; text-shadow:0 1px 8px rgba(0,0,0,.6); }
@media (max-width:900px){ .lpfilm__grid{ grid-template-columns:minmax(0,1fr); } }

/* ── stories ───────────────────────────────────────────────── */
.lpvoices__grid{ margin-top:clamp(2rem,5vw,3rem); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2.4vw,1.75rem); }
.lpq{ margin:0; display:flex; flex-direction:column; gap:1.1rem; padding:clamp(1.5rem,3vw,2rem); background:var(--card); border:1px solid var(--line); border-radius:14px; }
.lpq__stat{ font-size:1rem; color:var(--muted); font-weight:500; }
.lpq__stat b{ display:block; font-size:2.6rem; line-height:1; letter-spacing:-.04em; color:var(--green); font-weight:700; margin-bottom:.25rem; }
.lpq blockquote{ margin:0; flex:1; font-size:1.2rem; line-height:1.5; color:var(--ink); font-weight:500; }
.lpq figcaption{ display:flex; align-items:center; gap:.8rem; padding-top:1rem; border-top:1px solid var(--line-soft); font-size:1rem; color:var(--muted); }
.lpq figcaption b{ display:block; color:var(--ink); font-size:1.06rem; }
.lpq__av{ width:2.8rem; height:2.8rem; flex:none; border-radius:50%; display:grid; place-items:center; background:var(--green); color:var(--sun); font-weight:700; font-size:.95rem; letter-spacing:.04em; }
@media (max-width:900px){ .lpvoices__grid{ grid-template-columns:minmax(0,1fr); } }

.lppartner{ margin:clamp(2rem,5vw,3rem) auto 0; max-width:52rem; text-align:center; }
.lppartner blockquote{ margin:0; font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem); line-height:1.45; font-weight:500; color:var(--ink); letter-spacing:-.01em; }
.lppartner figcaption{ margin-top:1rem; color:var(--muted); font-size:1.02rem; }
.lppartner figcaption b{ color:var(--ink); }

.lppress{ margin-top:clamp(2.5rem,6vw,3.5rem); padding-top:2rem; border-top:1px solid var(--line); display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1.25rem clamp(1.5rem,4vw,3rem); }
.lppress__k{ font-size:.86rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.lppress img{ height:30px; width:auto; max-width:150px; object-fit:contain; mix-blend-mode:multiply; }

/* ── faq ───────────────────────────────────────────────────── */
.lpfaq{ background:var(--white); border-top:1px solid var(--line-soft); }
.lpfaq__grid{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(2rem,5vw,4.5rem); align-items:start; }
.lpfaq__list details{ border-top:1px solid var(--line); }
.lpfaq__list details:last-child{ border-bottom:1px solid var(--line); }
.lpfaq__list summary{
  list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:1rem;
  padding-block:1.35rem; font-size:clamp(1.15rem,1.05rem + .35vw,1.32rem); font-weight:700; color:var(--ink); line-height:1.3;
}
.lpfaq__list summary::-webkit-details-marker{ display:none; }
.lpfaq__list summary::after{
  content:"+"; flex:none; width:2.2rem; height:2.2rem; border-radius:50%; display:grid; place-items:center;
  background:var(--green-t); color:var(--green); font-size:1.4rem; font-weight:500; transition:transform .3s var(--ease-out);
}
.lpfaq__list details[open] summary::after{ content:"–"; }
.lpfaq__list summary:focus-visible{ outline:3px solid var(--sun); outline-offset:3px; border-radius:6px; }
.lpfaq__list p{ padding-bottom:1.4rem; max-width:60ch; font-size:1.1rem; line-height:1.6; color:var(--ink-2); }
@media (max-width:900px){ .lpfaq__grid{ grid-template-columns:minmax(0,1fr); } }

/* ── final cta ─────────────────────────────────────────────── */
.lpend{ background:radial-gradient(120% 140% at 0% 0%, #0E5A43, #073527 60%); color:var(--on-green); padding-block:clamp(3.5rem,8vw,6rem); }
.lpend__in{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2rem,5vw,4rem); align-items:center; }
.lpend .lphead__k{ color:var(--sun); }
.lpend__t{ margin-top:.9rem; font-size:clamp(2.1rem,1.3rem + 2.6vw,3.3rem); line-height:1.05; letter-spacing:-.03em; font-weight:700; color:#FEFAEA; }
.lpend__p{ margin-top:1rem; font-size:1.22rem; color:rgba(239,243,241,.88); }
.lpend__form{ background:var(--card); color:var(--ink); border-radius:16px; padding:clamp(1.5rem,3.5vw,2.25rem); box-shadow:0 40px 90px -40px rgba(0,0,0,.8); }
.lpend__row{ margin-top:.7rem; display:flex; gap:.75rem; }
.lpend__row .zipform__field{ flex:1; min-width:0; margin-top:0; }
.lpend__tel{ margin-top:1.1rem; font-size:1.02rem; color:var(--muted); }
.lpend__tel a{ color:var(--green); font-weight:700; white-space:nowrap; }
@media (max-width:860px){ .lpend__in{ grid-template-columns:minmax(0,1fr); } }
@media (max-width:520px){ .lpend__row{ flex-direction:column; } .lpend__row .btn{ justify-content:center; } }

/* ── footer ────────────────────────────────────────────────── */
.lpfoot{ position:relative; z-index:3; background:var(--ink); color:rgba(243,244,244,.72); padding-block:2.5rem 1.5rem; }
.lpfoot__in{ display:grid; gap:.9rem; justify-items:start; }
.lpfoot img{ height:52px; width:auto; }
.lpfoot p{ max-width:60ch; font-size:1rem; }
.lpfoot__small{ font-size:.9rem !important; opacity:.8; }
.lp .legal-strip{ position:relative; z-index:3; }

/* ── motion ────────────────────────────────────────────────── */
.lp-rv{ opacity:0; transform:translateY(18px); transition:opacity .8s var(--ease-out), transform .8s var(--ease-out); }
.lp-rv.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .lp-rv{ opacity:1; transform:none; transition:none; } }

/* ── fixes after first screenshot pass ─────────────────────── */
/* one continuous green behind copy + map: no seam between them */
.lphero__copy{ background:#0A4634; }
.lpstage .checkscene{ background:linear-gradient(#0A4634 0%, #073527 55%, #04261C 100%); }
.lpstage .checkscene::after{ background:radial-gradient(100% 90% at 50% 20%, transparent 55%, rgba(4,30,22,.45) 100%); }
/* logos need a real backdrop inside main's stacking context to multiply onto */
.lpbrands{ background:var(--surface); }
.lpvoices{ background:var(--surface); }
.lppress img{ mix-blend-mode:normal; }
/* legal row reads as part of the footer */
.lp .legal-strip{
  background:var(--ink); margin:0; justify-content:center;
  padding:0 max(20px, env(safe-area-inset-right, 0px)) 1.6rem max(20px, env(safe-area-inset-left, 0px));
}
.lp .legal-strip a{ color:rgba(243,244,244,.7); }
body.lp{ background:var(--ink); }
.lp .field__fallback{ display:none; }
.lp main{ background:var(--surface); }
@media (max-width:760px){
  .lpbar .lpbar__cta{ opacity:1; transform:none; pointer-events:auto; }
  .lphero__kicker{ display:none; }
  .lphero__title{ margin-top:0; }
  .lphero__points{ gap:.55rem; margin-top:1.1rem; }
  .lphero__points li{ font-size:1.02rem; }
}
.lp .icon-sheet{ position:absolute; width:0; height:0; overflow:hidden; }
.lpbar{ background:var(--surface); }
.lpbar.is-stuck{ background:var(--surface); }
.lp .legal-strip{ border-top:0; }
.lp .fstep{ scroll-margin-top:96px; }

/* phones: the map rides inside the card, right above the field */
.lpstage .checkscene--inline{ grid-area:auto; position:relative; min-height:0; aspect-ratio:16/9; margin:0 0 1.1rem; border-radius:12px; overflow:hidden; }

/* zip being entered: the green panel is the map alone (lp.js adds is-mapping) */
@media (min-width:980px){
  .lpstage.is-mapping{ grid-template-areas:"map card" "map card"; }
  .lpstage.is-mapping .lphero__copy{ display:none; }
}

/* ── short page: the three steps as numbered text, tighter rhythm ── */
.lp--short .lpsec{ padding-block:clamp(2.75rem,6vw,4.5rem); }
.lp--short .lphow__list{ margin-top:clamp(1.5rem,3.5vw,2.25rem); gap:clamp(1rem,2.4vw,1.5rem); }
.lp--short .lphow__step{
  display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:1rem; align-content:start;
  background:var(--card); border:1px solid var(--line-soft); border-radius:14px; padding:clamp(1.1rem,2.4vw,1.5rem);
}
.lp--short .lphow__n{ margin:0; grid-row:span 2; width:2.6rem; height:2.6rem; font-size:1.15rem; box-shadow:none; }
.lp--short .lphow__step h3{ margin-top:.3rem; font-size:clamp(1.18rem,1.05rem + .4vw,1.35rem); }
.lp--short .lphow__step p{ margin-top:.4rem; font-size:1.02rem; line-height:1.5; }
@media (max-width:860px){ .lp--short .lphow__list{ gap:.85rem; } }
.lp--short .lpend{ padding-block:clamp(2.75rem,6vw,4.5rem); }

/* ── venue photographs behind the text, each venue named ── */
.lpplace{
  display:inline-flex; align-items:center; gap:.4rem;
  padding:.38rem .75rem .38rem .55rem; border-radius:999px;
  background:rgba(4,30,22,.62); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
  border:1px solid rgba(254,250,234,.18);
  font-size:.86rem; font-weight:700; letter-spacing:.02em; color:#FEFAEA; line-height:1.2; white-space:nowrap;
}
.lpplace .ico{ width:1.05em; height:1.05em; color:var(--sun); }
.lpbg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }

/* hero copy: venues cross-fade under the green */
.lp--short .lphero__copy{ overflow:hidden; isolation:isolate; background:#073527; }
.lpslides{ position:absolute; inset:0; z-index:-1; }
.lpslide{ position:absolute; inset:0; margin:0; opacity:0; transition:opacity 1.6s ease; }
.lpslide.is-on{ opacity:1; }
.lpslide .lpbg{ transform:scale(1.06); transition:transform 7s linear; }
.lpslide.is-on .lpbg{ transform:scale(1); }
.lpslides::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(5,40,30,.84) 0%, rgba(5,40,30,.66) 50%, rgba(5,40,30,.28) 100%);
}
.lpslide figcaption{ position:absolute; right:clamp(.9rem,2.4vw,1.4rem); bottom:clamp(.9rem,2.4vw,1.2rem); z-index:1; }
.lp--short .lphero__copy{ padding-bottom:clamp(4rem,7vw,5rem); }
.lp--short .lpstage .checkscene{ background:#04261C; }
@media (prefers-reduced-motion:reduce){ .lpslide, .lpslide .lpbg{ transition:none; transform:none; } }

/* the numbers, on a photograph */
.lpnums--photo{ position:relative; isolation:isolate; overflow:hidden; padding-block:clamp(3rem,7vw,5rem) clamp(1.25rem,3vw,1.75rem); }
.lpnums--photo .lpbg{ z-index:-2; }
.lpnums--photo::before{ content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(180deg, rgba(4,30,22,.8), rgba(7,53,39,.64) 60%, rgba(4,30,22,.84)); }
.lpnums--photo .lpnums__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:clamp(1.75rem,4vw,2.75rem); }
.lpnums--photo .lpnums__grid b{ font-size:clamp(2.1rem,1.3rem + 2.6vw,3.4rem); }
.lpnums--photo .lpnums__grid span{ color:rgba(254,250,234,.9); }
.lpnums__tag{ margin-top:clamp(1.75rem,4vw,2.5rem); display:flex; justify-content:flex-end; }
@media (max-width:760px){ .lpnums--photo .lpnums__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* brands under the numbers */
.lp--short .lpbrands{ padding-block:clamp(2.25rem,5vw,3.25rem); }

/* the three steps as photo cards */
.lp--short .lphow__step{
  position:relative; isolation:isolate; overflow:hidden; border:0; color:#FEFAEA;
  min-height:clamp(300px,34vw,400px); align-content:end; background:#073527;
  padding:clamp(1.25rem,2.6vw,1.75rem);
}
.lphow__bg{ position:absolute; inset:0; z-index:-1; }
.lphow__bg::after{ content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(4,30,22,.2) 0%, rgba(4,30,22,.55) 38%, rgba(4,30,22,.93) 72%); }
.lphow__bg .lpplace{ position:absolute; top:clamp(.9rem,2vw,1.2rem); right:clamp(.9rem,2vw,1.2rem); z-index:1; }
.lp--short .lphow__step h3{ color:#FEFAEA; }
.lp--short .lphow__step p{ color:rgba(254,250,234,.9); }
.lp--short .lphow__n{ background:var(--sun); color:#073527; }
@media (max-width:860px){ .lp--short .lphow__step{ min-height:320px; } }

/* final call on a photograph */
.lpend--photo{ position:relative; isolation:isolate; overflow:hidden; background:#073527; }
.lpend--photo .lpbg{ z-index:-2; }
.lpend--photo::before{ content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(105deg, rgba(4,30,22,.93) 0%, rgba(7,53,39,.82) 50%, rgba(7,53,39,.55) 100%); }
.lpend__tag{ position:absolute; left:0; right:0; bottom:clamp(.9rem,2vw,1.25rem); margin:0; }
.lp--short .lpend{ padding-bottom:clamp(4.5rem,8vw,6rem); }

/* the live dispensed figure, full dollars, on its own row on phones */
.lpnums__live b{ white-space:nowrap; font-size:clamp(1.9rem,1.2rem + 1.9vw,2.9rem) !important; }
.lpnums__live.is-ticking span{ display:inline-flex; align-items:center; gap:.5em; }
.lpnums__live.is-ticking span::before{ content:""; width:.5em; height:.5em; border-radius:50%; background:var(--sun); box-shadow:0 0 0 0 rgba(226,174,58,.6); animation:lpLive 1.8s ease-out infinite; }
@keyframes lpLive{ to{ box-shadow:0 0 0 .55em rgba(226,174,58,0); } }
@media (max-width:760px){ .lpnums__live{ grid-column:1 / -1; order:-1; } .lpnums__live b{ font-size:clamp(2rem,9.6vw,2.9rem) !important; } }
@media (prefers-reduced-motion:reduce){ .lpnums__live.is-ticking span::before{ animation:none; } }
