/* Denver Pro Mobile Mechanic v3 homepage — pro layout */
.dpm{--ink:#261a16;--muted:#70615b;--accent:#76402c;--accent2:#30a689;--soft:#efe8e5;--line:#e2dbd8;--dark:#1d1310;
  color:var(--ink);font-size:1.05rem;line-height:1.65;padding-bottom:0}
.dpm h2{font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;margin:0 0 .6em}
.dpm p{margin:.8em 0}
.dpm a{color:var(--accent)}
.dpm-wrap{max-width:1080px;margin:0 auto;padding:0 24px}

/* hero: dark band, text + photo */
.dpm-hero{background:linear-gradient(160deg,var(--dark) 0%,#33201a 100%);color:#f6efe9;padding:64px 0 72px}
.dpm-hero-inner{max-width:1080px;margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.dpm-hero-copy{max-width:36em}
.dpm-hero-tag{text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;color:#c9a892;margin:0 0 14px}
.dpm-hero h1{font-size:clamp(2.1rem,4.5vw,3.2rem);line-height:1.08;margin:0 0 16px;color:#fff}
.dpm-hero-line{font-size:1.22rem;color:#e8dcd2;margin:0 0 26px;max-width:30em}
.dpm-hero-sub{color:#b9a496;font-size:.95rem;margin-top:14px}
.dpm-hero-media img{width:100%;height:100%;min-height:340px;max-height:460px;object-fit:cover;border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35)}

.dpm-call{display:inline-block;background:var(--accent2);color:#fff !important;text-decoration:none;
  font-weight:700;font-size:1.3rem;padding:16px 34px;border-radius:10px;box-shadow:0 8px 24px rgba(48,166,137,.35)}
.dpm-call:hover{background:#268a71}
.dpm-call-big{font-size:1.6rem;padding:20px 44px}

/* alternating text+image rows */
.dpm-row{max-width:1080px;margin:0 auto;padding:56px 24px;display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;border-bottom:1px solid var(--line)}
.dpm-row:nth-of-type(even) .dpm-row-media{order:-1}
.dpm-row-media img{width:100%;max-height:420px;object-fit:cover;border-radius:12px;box-shadow:0 16px 40px rgba(30,20,15,.14)}

/* plain centered sections */
.dpm-sec{max-width:760px;margin:0 auto;padding:52px 24px;border-bottom:1px solid var(--line)}

/* service cards */
.dpm-cards{max-width:1080px;margin:0 auto;padding:56px 24px;border-bottom:1px solid var(--line)}
.dpm-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:26px}
.dpm-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 20px;box-shadow:0 6px 18px rgba(30,20,15,.06)}
.dpm-card h3{margin:0 0 .4em;font-size:1.08rem}
.dpm-card h3 a{text-decoration:none}
.dpm-card p{margin:0;color:var(--muted);font-size:.97rem}

/* phone band */
.dpm-band{background:var(--soft);text-align:center;padding:52px 24px}
.dpm-band-line{font-size:1.35rem;font-weight:700;margin:0 0 20px}

/* Q&A cards */
.dpm-qa-wrap{background:#f2ece8;padding:60px 0}
.dpm-qa-inner{max-width:1080px;margin:0 auto;padding:0 24px}
.dpm-qa-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}
.dpm-qa{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 24px}
.dpm-qa h3{font-size:1.08rem;margin:0 0 .45em}
.dpm-qa p{margin:0;color:var(--muted);font-size:.98rem}

/* closer */
.dpm-send{background:linear-gradient(160deg,var(--dark) 0%,#33201a 100%);color:#e8dcd2;text-align:center;padding:70px 24px}
.dpm-send h2{color:#fff}
.dpm-send p{max-width:40em;margin-left:auto;margin-right:auto}
.dpm-send-sub{color:#b9a496;font-size:.95rem;margin-top:18px}
.dpm-send a{color:#e0b89f}

@media (max-width:820px){
  .dpm-hero-inner,.dpm-row{grid-template-columns:1fr;gap:26px}
  .dpm-row:nth-of-type(even) .dpm-row-media{order:0}
  .dpm-hero{padding:44px 0 52px}
  .dpm-hero-media img{min-height:240px}
  .dpm-qa-grid{grid-template-columns:1fr}
  .dpm-call-big{font-size:1.3rem;padding:16px 30px}
}

/* ===== v3.1 polish: content image alignment + rhythm (2026-07-03) =====
   Fixes platform rule `body.site-page figure{margin:0}` out-specifying site
   figure classes (left-anchored images), oversized portrait images, and
   excessive vertical spacing. Append AFTER site css; idempotent by marker. */
figure[class$="-ph"],figure[class$="-photo"],figure[class$="-fig"],
figure.vnp-pic,figure.srp-pic,figure.pxp-pic,figure.hbp-cardpic,figure.sr-wide{
 max-width:720px !important;margin:24px auto !important;padding:0 20px !important;
 box-sizing:border-box;float:none;clear:both}
figure[class$="-ph"] img,figure[class$="-photo"] img,figure[class$="-fig"] img,
figure.vnp-pic img,figure.srp-pic img,figure.pxp-pic img,figure.hbp-cardpic img,figure.sr-wide img{
 width:100% !important;display:block;max-height:480px;object-fit:cover}
body main[class] h2{margin-top:30px}
main[class] section>h2:first-child,main[class] div>h2:first-child{margin-top:0}
body main[class] p{margin-top:12px;margin-bottom:12px}
main[class] section[class*="-sec"]{margin-top:32px}
