/* finance.romaheating.ca — landing-page sections (uses tokens/components from styles.css) */
section{max-width:1080px;margin:0 auto;padding:34px max(20px,var(--safe-l));}
.fin-hero, .fin-final{max-width:none;}
h2{font-size:26px;font-weight:800;letter-spacing:-.01em;text-align:center;}
.sec-sub{color:var(--muted);text-align:center;max-width:620px;margin:8px auto 22px;font-size:16px;}

.cta-primary.big{font-size:18px;padding:16px 28px;}
.cta-primary.light{background:#fff;color:var(--red);}

/* HERO */
.fin-hero{background:linear-gradient(160deg,#fff 0%,#fdeef0 100%);border-bottom:1px solid var(--line);}
.fin-hero-in{max-width:1080px;margin:0 auto;padding:40px max(20px,var(--safe-l)) 44px;}
.promo-badge{display:inline-block;background:var(--red);color:#fff;font-weight:750;font-size:14px;padding:8px 16px;border-radius:999px;box-shadow:0 4px 14px rgba(200,16,46,.28);}
.fin-hero h1{font-size:40px;font-weight:850;letter-spacing:-.02em;line-height:1.06;margin:18px 0 0;max-width:720px;}
.fin-hero .lead{font-size:18px;color:#3b424c;line-height:1.55;margin:14px 0 0;max-width:660px;}
.hero-points{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:9px;}
.hero-points li{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;}
.hero-points li::before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none;border-radius:999px;background:var(--red);color:#fff;font-size:13px;font-weight:800;}
.hero-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:26px 0 0;}
.powered{color:var(--muted);font-size:14px;}
.powered strong{color:var(--ink);}
.micro{color:var(--muted);font-size:12.5px;margin:10px 0 0;}

/* CALCULATOR */
.fin-calc{padding-top:40px;}
.calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-top:6px;}
.amount-wrap{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:11px;background:#fff;padding-left:14px;}
.amount-wrap:focus-within{border-color:var(--red);box-shadow:0 0 0 3px rgba(200,16,46,.12);}
.amount-wrap .dollar{font-size:20px;font-weight:750;color:var(--muted);}
.amount-wrap input{border:none!important;box-shadow:none!important;font-size:22px!important;font-weight:750;padding:12px 13px 12px 6px!important;}
.promo-line{margin-top:4px;background:#fdeef0;color:var(--red);font-weight:750;text-align:center;border-radius:11px;padding:11px;font-size:15px;}
.fin-calc .res-big{color:var(--red);}

/* STEPS */
.fin-steps{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:none;}
.steps{max-width:1080px;margin:24px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.step{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:22px;}
.step .num{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:var(--red);color:#fff;font-weight:800;font-size:18px;}
.step h3{margin:14px 0 6px;font-size:18px;}
.step p{color:var(--muted);font-size:14.5px;line-height:1.5;}

/* WHY */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px;}
.why{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow);text-align:center;}
.why-ic{width:50px;height:50px;margin:0 auto 12px;border-radius:13px;background:#fdeef0;color:var(--red);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;}
.why h3{font-size:16.5px;}
.why p{color:var(--muted);font-size:14px;line-height:1.45;margin-top:6px;}

/* FINAL */
.fin-final{background:var(--navy);color:#fff;text-align:center;padding:46px max(20px,var(--safe-l));}
.fin-final h2{color:#fff;}
.fin-final p{color:#c9d3df;font-size:17px;margin:10px 0 22px;}

/* FOOTER finance line */
.foot-fin{margin-top:12px;font-size:14px;color:var(--muted);}
.foot-fin strong{color:var(--ink);}
.foot-fin a{color:var(--red);font-weight:600;}

@media (max-width:760px){
  .calc-grid{grid-template-columns:1fr;}
  .steps{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr 1fr;}
  .fin-hero h1{font-size:31px;}
  .fin-hero .lead{font-size:16.5px;}
  h2{font-size:23px;}
  .since{display:none;}
  .cta-primary.big{width:100%;justify-content:center;}
}
