/* Service-page template (pilot: /energy-audits/). Builds on home.css: same tokens, buttons, nav, footer, badges, phone frame. */
.pg .hero.pg-hero{padding:34px 0 56px;min-height:0;background:none}
.pg-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--teal);text-decoration:none;font-weight:600}
.pg-hero h1{font-size:clamp(34px,4.4vw,56px);line-height:1.04;letter-spacing:-.035em;margin:10px 0 16px;font-weight:700}
.pg-hero h1 em{font-style:normal;color:var(--teal)}
.pg-hero .lead{font-size:19px;line-height:1.5;color:var(--muted);max-width:540px;margin:0 0 24px}
.pg-hero .hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.pg-note{font-size:13.5px;line-height:1.5;color:var(--muted);max-width:540px;margin:16px 0 0}
.pg-photo{position:relative;margin:0;border-radius:32px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/3.3}
.pg-photo img{width:100%;height:100%;object-fit:cover;display:block}
.pg-photo figcaption{position:absolute;left:18px;bottom:18px;right:18px;display:flex;align-items:center;gap:10px;background:rgba(255,254,251,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:16px;padding:10px 14px 10px 10px;max-width:max-content}
.pg-photo .sq,.pg-fact .sq,.pg-card .sq{width:38px;height:38px;border-radius:12px;background:var(--soft);color:var(--teal);display:grid;place-items:center;flex:none}
.pg-photo .sq .ic,.pg-fact .sq .ic,.pg-card .sq .ic{width:20px;height:20px}
.pg-photo b{font-size:15px}
/* guide intro + facts */
.pg-guide{padding-top:20px}
.pg-big{font-size:clamp(20px,2.1vw,26px);line-height:1.45;letter-spacing:-.2px;max-width:900px;margin:0 0 30px;color:var(--ink)}
.pg-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-fact{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px;display:grid;gap:8px;align-content:start}
.pg-fact b{font-size:19px;letter-spacing:-.3px;margin-top:6px}
.pg-fact p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
.pg-fact small{display:block;margin-top:6px;padding-top:12px;border-top:1px solid var(--rule);font-size:13.5px;color:var(--teal);font-weight:600;line-height:1.45}
/* section heads */
.pg-head{max-width:720px;margin-bottom:28px}
.pg-head.center{margin-left:auto;margin-right:auto;text-align:center}
.pg-head.center p.sub{margin:0 auto}
/* steps */
.pg-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;counter-reset:s;position:relative}
.pg-steps li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:24px 22px 22px}
.pg-steps .n{width:44px;height:44px;border-radius:50%;border:2px solid var(--teal);color:var(--teal);display:grid;place-items:center;font-weight:700;font-size:17px;margin-bottom:14px;background:var(--card)}
.pg-steps li:last-child .n{background:var(--ink);border-color:var(--ink);color:#fff}
.pg-steps li:not(:last-child):after{content:"";position:absolute;top:46px;right:-17px;width:18px;height:2px;background:var(--teal);z-index:1}
.pg-steps b{display:block;font-size:20px;letter-spacing:-.3px;margin-bottom:6px}
.pg-steps p{margin:0;color:var(--muted);font-size:15.5px;line-height:1.5}
/* tiers */
.pg-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pg-tier{background:var(--card);border:1px solid var(--line);border-radius:28px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow)}
.pg-tier .art{aspect-ratio:16/10;overflow:hidden}
.pg-tier .art img{width:100%;height:100%;object-fit:cover;display:block}
.pg-tier .body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.pg-tier .k{align-self:flex-start;font-size:12.5px;font-weight:700;color:var(--teal);background:var(--soft);border-radius:999px;padding:5px 11px}
.pg-tier h3{margin:4px 0 0;font-size:21px;letter-spacing:-.3px;line-height:1.2}
.pg-tier p{margin:0 0 6px;color:var(--muted);font-size:15.5px;line-height:1.5;flex:1}
.pg-tier .btn{align-self:stretch;min-height:48px;font-size:15.5px}
/* confirm */
.pg-confirm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pg-card{display:flex;gap:14px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:20px}
.pg-card b{display:block;font-size:18px;letter-spacing:-.2px;margin:6px 0 6px}
.pg-card p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
/* preparation + phone */
.pg-prep{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:64px;align-items:center}
.pg-check{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pg-check li{display:flex;gap:14px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px 18px}
.pg-check .n{width:36px;height:36px;border-radius:11px;background:var(--soft);color:var(--teal);display:grid;place-items:center;flex:none}
.pg-check .n .ic{width:19px;height:19px}
.pg-check b{display:block;font-size:17px;margin:4px 0 4px}
.pg-check p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
.pg-fine{font-size:13.5px;color:var(--muted);margin:14px 0 0;line-height:1.5}
.pg-phone{margin:0;display:grid;justify-items:center;gap:14px}
.pg-phone .pg-stick{position:static;height:auto;--bz:10px;--sh:min(620px,72svh)}
.pg-phone figcaption{max-width:300px;text-align:center;font-size:14px;color:var(--muted);line-height:1.45}
/* final */
.pg-final-card{background:#0c1a36;color:#fff;border-radius:32px;padding:48px 44px;text-align:center}
.pg-final-card h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.03em;line-height:1.1;margin:0 0 12px}
.pg-final-card p{color:#c9d3e3;font-size:18px;max-width:640px;margin:0 auto 24px;line-height:1.5}
.pg-final-card .hero-cta{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.pg-final-card .btn.ghost.on-dark{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}
.pg-final-card small{display:block;margin-top:18px;color:#93a6c4;font-size:13px;line-height:1.5;max-width:640px;margin-left:auto;margin-right:auto}
/* related + sources */
.pg-links{padding-top:10px}
.pg-links-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--rule);padding-top:28px}
.pg-links h5,.pg-links h3{margin:0 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--teal)}
.pg-links a{display:block;color:var(--ink);text-decoration:none;font-weight:600;font-size:15.5px;padding:6px 0}
.pg-links a small{font-weight:400;color:var(--muted)}
.pg-links a:hover{color:var(--teal)}
/* responsive */
@media (max-width:1000px){
  .pg-hero-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .pg-photo{aspect-ratio:16/10}
  .pg-facts,.pg-steps,.pg-tiers,.pg-confirm{grid-template-columns:minmax(0,1fr)}
  .pg-steps li:not(:last-child):after{top:auto;bottom:-17px;right:auto;left:43px;width:2px;height:18px}
  .pg-prep{grid-template-columns:minmax(0,1fr);gap:28px}
  .pg-tier{flex-direction:row}
  .pg-tier .art{flex:0 0 38%;aspect-ratio:auto}
}
@media (max-width:700px){
  .pg .hero.pg-hero{padding:18px 0 34px}
  .pg-hero .lead{font-size:17px}
  .pg-hero .hero-cta .btn{width:100%}
  .pg-tier{flex-direction:column}
  .pg-tier .art{aspect-ratio:16/9;flex:none}
  .pg-final-card{padding:34px 20px;border-radius:26px}
  .pg-final-card .btn{width:100%}
  .pg-links-grid{grid-template-columns:minmax(0,1fr)}
  .pg-phone .pg-stick{--sh:min(560px,70svh)}
}
