/* ============================================================
   Lasting Impression — industry.css
   Styles unique to dealerships.html + realtors.html.
   Loaded after base.css.
   ============================================================ */

section{position:relative;z-index:3}

/* hero banner (full-bleed image + scrim + text) */
.hero{position:relative;min-height:86vh;display:flex;align-items:center}
.hero .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.hero::before{content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(90deg,var(--bg) 8%,rgba(10,20,33,.72) 46%,rgba(10,20,33,.25))}
.hero .inner{position:relative;z-index:2;padding:120px 0 70px;max-width:36em}
.hero .label{display:inline-block;margin-bottom:20px}
.hero h1{font-family:var(--display);font-weight:340;font-size:clamp(40px,5vw,66px);line-height:1.02;letter-spacing:-.02em}
.hero h1 em{font-style:italic;color:var(--gold-lt)}
.hero p{font-size:19px;color:#CBD3DF;max-width:30em;margin:22px 0 26px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}

/* program */
.program{padding:110px 0}
.program .grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.program .ptext .label{display:block;margin-bottom:16px}
.program h2{font-family:var(--display);font-weight:360;font-size:clamp(30px,3.6vw,46px);line-height:1.05;letter-spacing:-.015em;margin-bottom:18px}
.program h2 em{font-style:italic;color:var(--gold-lt)}
.program p{font-size:18px;color:#CBD3DF;margin-bottom:16px}
.program .pphoto{position:relative;aspect-ratio:4/3}
.program .pphoto .ph{position:absolute;inset:0}

/* steps */
.steps{padding:20px 0 110px}
.steps .row{display:flex;gap:8px;flex-wrap:wrap}
.stp{flex:1;min-width:180px;padding:24px 8px 0;border-top:1px solid var(--gline);position:relative}
.stp .k{font-family:var(--display);font-weight:300;font-size:30px;color:var(--gold-lt);line-height:1}
.stp h4{font-family:var(--display);font-weight:500;font-size:20px;margin:8px 0 6px}
.stp p{font-size:14px;color:var(--muted)}
.stp:not(:last-child)::after{content:"\2192";position:absolute;top:16px;right:-5px;color:var(--gold);opacity:.7}

/* qr use-cases */
.qr{padding:0 0 110px}
.qr .head{max-width:40em;margin-bottom:40px}
.qr .head h2{font-family:var(--display);font-weight:360;font-size:clamp(28px,3.4vw,42px);margin:14px 0 0}
.qr .head h2 em{font-style:italic;color:var(--gold-lt)}
.qrlist{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.qrlist li{border-top:1px solid var(--gline);padding-top:20px}
.qrlist .ic{width:44px;height:44px;border-radius:11px;
  background:radial-gradient(circle at 30% 25%,rgba(241,219,147,.25),rgba(201,163,76,.08));
  border:1px solid var(--gline);display:grid;place-items:center;margin-bottom:14px}
.qrlist .ic svg{width:22px;height:22px;color:var(--gold-lt)}
.qrlist h4{font-family:var(--display);font-weight:500;font-size:20px;margin-bottom:5px}
.qrlist p{font-size:14px;color:var(--muted)}

/* quote + zip checker */
.quote{padding:110px 0;background:radial-gradient(120% 90% at 80% 0%,#0f2036,var(--bg) 55%)}
.quote .head{text-align:center;max-width:34em;margin:0 auto 44px}
.quote .head h2{font-family:var(--display);font-weight:360;font-size:clamp(30px,3.6vw,46px);margin:14px 0 12px}
.quote .head h2 em{font-style:italic;color:var(--gold-lt)}
.quote .head p{color:var(--muted);font-size:17px}
.qbox{max-width:720px;margin:0 auto;background:linear-gradient(160deg,var(--panel),#0a1524);
  border:1px solid var(--gline);border-radius:20px;padding:40px clamp(24px,4vw,48px)}
.qbox .flabel{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.qty-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}
.qty{border:1px solid var(--line);border-radius:999px;padding:11px 20px;cursor:pointer;
  background:transparent;color:var(--text);font-family:var(--body);font-size:14.5px;
  transition:all .18s;text-align:center;line-height:1.2}
.qty small{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.qty.active{border-color:var(--gold);background:rgba(201,163,76,.12);color:var(--gold-lt)}
.qty.active small{color:var(--gold)}
.zip-wrap{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;margin-bottom:8px}
.zip-field{flex:1;min-width:180px}
.zip-field input{font-family:var(--body);font-size:22px;letter-spacing:.14em;color:var(--text);
  background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.22);padding:8px 2px;width:100%}
.zip-field input:focus{outline:none;border-color:var(--gold-lt)}
.zone{font-size:14px;font-weight:600;min-height:22px;padding-bottom:8px}
.zone.local{color:var(--gold-lt)}
.zone.ship{color:#9fb0c4}
.breakdown{margin-top:30px;border-top:1px solid var(--line);padding-top:22px}
.brow{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;color:#CBD3DF;padding:7px 0}
.brow .v{color:var(--text)}
.trow{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;padding-top:16px;border-top:1px solid var(--gline)}
.trow span{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.trow .tot{font-family:var(--display);font-weight:300;font-size:44px;color:var(--gold-lt);line-height:1}
.qbox .fine{margin-top:16px;font-size:12.5px;color:var(--muted)}
.qbox .cta{margin-top:26px;text-align:center}

/* proof (industry variant) */
.proof{padding:100px 0;text-align:center}
.proof h2{font-family:var(--display);font-weight:360;font-size:clamp(28px,3.4vw,42px);margin:14px 0 40px}
.proof h2 em{font-style:italic;color:var(--gold-lt)}

/* industry responsive */
@media(max-width:900px){
  .program .grid{grid-template-columns:1fr;gap:32px}
  .qrlist{grid-template-columns:1fr}
}
