/* Westminster v3 homepage — old shop sign */
body.site-page main.wmm{width:100% !important;max-width:none;margin:0}
.wmm{--ink:#201b17;--muted:#685f58;--accent:#7a3e2d;--accent2:#2e6b61;--soft:#f4ebe3;--line:#e6dcd3;--dark:#1d1612;
  color:var(--ink);font-size:1.05rem;line-height:1.66}
.wmm h2{font-size:clamp(1.45rem,3vw,1.95rem);margin:.2em 0 .5em}
.wmm p{margin:.8em 0}
.wmm a{color:var(--accent2)}

.wm-hero{background:var(--soft);border-bottom:4px solid var(--accent);padding:54px 24px}
.wm-hero-in{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
.wm-hero-txt{max-width:38em}
.wm-est{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;color:var(--accent2);font-weight:700;margin:0 0 12px}
.wm-hero h1{font-size:clamp(1.8rem,3.9vw,2.6rem);line-height:1.12;margin:0 0 14px}
.wm-line{font-size:1.14rem;color:var(--muted);margin:0 0 24px}
.wm-note{font-size:.93rem;color:var(--muted);margin-top:12px}
.wm-hero-pic img{width:100%;max-height:440px;object-fit:cover;border:2px solid var(--ink);box-shadow:8px 8px 0 var(--accent)}

.wm-call{display:inline-block;background:var(--accent);color:#fff !important;text-decoration:none;font-weight:700;
  font-size:1.2rem;padding:14px 32px;border-radius:0;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}
.wm-call:hover{background:#5f2f22}
.wm-call-lg{font-size:1.45rem;padding:17px 40px}

.wm-sec{max-width:700px;margin:0 auto;padding:28px 24px 4px}
.wmp-ph{max-width:1000px;margin:38px auto;padding:0 24px}
.wmp-ph img{width:100%;max-height:440px;object-fit:cover;border:2px solid var(--ink)}

.wm-band{background:var(--dark);color:#e9dccf;text-align:center;padding:46px 24px;margin:44px 0}
.wm-band p{font-size:1.25rem;font-weight:700;margin:0 0 18px}
.wm-band .wm-call{border-color:#e9dccf;box-shadow:3px 3px 0 #e9dccf}

.wm-faq{background:var(--soft);border-top:4px solid var(--accent);padding:48px 0;margin-top:44px}
.wm-faq-in{max-width:760px;margin:0 auto;padding:0 24px}
.wm-faq-in h2{margin-top:0}
.wm-q{background:#fff;border:2px solid var(--ink);padding:18px 22px;margin:12px 0;box-shadow:4px 4px 0 var(--line)}
.wm-qq{font-weight:700;margin:0 0 .35em}
.wm-qa{margin:0;color:var(--muted)}

.wm-close{text-align:center;padding:58px 24px}
.wm-close h2{margin-top:0}
.wm-close p{max-width:40em;margin-left:auto;margin-right:auto}

@media (max-width:800px){
  .wm-hero-in{grid-template-columns:1fr;gap:26px}
  .wm-call-lg{font-size:1.25rem;padding:15px 32px}
}

/* ===== 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}
