/* Baseline° — Franchise page styles.
   Shared tokens/nav/footer live in css/base.css. */

/* ---------- Hero ---------- */
.hero{position:relative;height:700px;overflow:hidden;background:#000;border-bottom:1px solid var(--line)}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72) sepia(.14) contrast(1.08) brightness(.9)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.2) 60%,rgba(0,0,0,.4) 100%)}
.hero-scan{
  position:absolute;top:0;bottom:0;width:1.5px;background:var(--ink);
  box-shadow:0 0 22px rgba(244,244,242,.5);left:-5%;
  animation:scanH 1.6s cubic-bezier(.16,1,.3,1) .3s forwards;
}
.hero-content{position:absolute;left:0;right:0;bottom:76px}
.hero .kick{margin-bottom:28px}
.hero h1{font-size:82px;line-height:.98;color:#fff;max-width:1000px}
.hero-sub{font-size:20px;line-height:1.6;color:var(--soft);max-width:620px;margin-top:30px}
.hero-meta{display:flex;align-items:center;gap:22px;margin-top:44px;font-size:12px;letter-spacing:.14em;color:var(--muted)}
.hero-meta-strong{color:var(--ink)}
.hero-meta-divider{width:1px;height:13px;background:var(--hair)}

/* ---------- Section rule rows ---------- */
.sec-rule{display:flex;align-items:center;gap:16px;margin-bottom:44px}
.sec-num{font-size:12px;color:var(--muted)}
.sec-label{font-size:12px;letter-spacing:.24em;color:var(--muted)}
.rule-line{flex:1;height:1px;background:var(--line)}

/* ---------- 01 · The opportunity ---------- */
.opportunity{padding:128px 52px 90px;background:#000}
.opportunity .wrap{padding:0}
.opp-intro{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;margin-bottom:60px}
.opp-intro h2{font-size:46px;line-height:1.1}
.opp-copy{font-size:19px;line-height:1.75;color:var(--muted)}
.opp-stats{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:2px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.stat{padding:48px 40px;border-left:1px solid var(--line)}
.stat-value{font-size:46px;color:var(--ink);line-height:1;margin-bottom:14px}
.stat-label{font-size:11px;letter-spacing:.16em;color:var(--muted);line-height:1.5}
.opp-note{font-size:11px;letter-spacing:.14em;color:var(--muted);margin-top:16px}

/* ---------- 02 · What you get ---------- */
.get{padding:20px 52px 96px;background:#000}
.get .wrap{padding:0}
.get-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.get-card{border:1px solid var(--line);padding:52px 48px;min-height:220px}
.card-num{font-size:13px;color:var(--muted);margin-bottom:26px}
.get-card h3{font-size:28px;margin-bottom:16px}
.card-copy{font-size:16px;line-height:1.7;color:var(--muted);max-width:440px}

/* ---------- 03 · The process ---------- */
.process{
  padding:20px 52px 128px;background:var(--panel);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.process .wrap{padding:70px 0}
.process-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:56px}
.step-badge{
  width:44px;height:44px;border:1.5px solid var(--ink);border-radius:50%;
  display:flex;align-items:center;justify-content:center;margin-bottom:26px;
}
.step h3{font-size:24px;margin-bottom:12px}
.step-copy{font-size:15px;line-height:1.65;color:var(--muted)}

/* ---------- 04 · Enquire ---------- */
.enquire{padding:128px 52px;background:#000}
.enquire .wrap{padding:0}
.enquire-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:72px;align-items:start}
.enquire .kick{margin-bottom:26px}
.enquire h2{font-size:46px;line-height:1.08;margin-bottom:24px}
.enquire-sub{font-size:18px;line-height:1.7;color:var(--muted);max-width:420px}
.enquire-panel{border:1px solid var(--line);background:var(--panel);padding:48px}
.enquire-panel input,.enquire-panel textarea{
  background:#000;border:1px solid var(--line-2);color:var(--ink);
  padding:18px;font-size:15px;outline:none;font-family:inherit;
}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-bottom:2px}
.field-full{width:100%;margin-bottom:2px}
.field-msg{width:100%;resize:vertical;margin-bottom:20px}
.enquire-submit{
  width:100%;display:flex;align-items:center;justify-content:center;gap:12px;
  border:1px solid var(--ink);background:var(--ink);color:#000;
  padding:18px;font-size:11px;letter-spacing:.22em;
}
.enquire-done{display:none;border:1px solid var(--line-2);padding:28px;text-align:center;margin-top:2px}
.done-title{font-size:12px;letter-spacing:.22em;color:var(--muted);margin-bottom:8px}
.done-sub{font-size:14px;color:var(--muted)}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .enquire-panel{padding:24px 20px}
  .stat{border-left:none;padding:36px 24px}
  .stat+.stat{border-top:1px solid var(--line)}
  .opportunity,.enquire{padding-top:80px}

  .opportunity,.get,.process,.enquire{padding-left:24px;padding-right:24px}
  .hero{height:540px}
  .hero h1{font-size:50px}
  .opp-intro h2,.enquire h2{font-size:32px}
  .get-card h3,.step h3{font-size:22px}
  .opp-intro,.opp-stats,.get-grid,.process-grid,.enquire-grid,.field-row{grid-template-columns:1fr}
}
