/* Small additions to the page styles in each page's <head> */
[hidden]{display:none !important}
.form-note{grid-column:1/-1;flex-basis:100%;margin:0;font-size:14px;line-height:1.5;font-weight:600;color:#456836}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}

/* Plumbing Savers badge: white logo first; tap to flip to the navy logo */
.ps-coin{flex:0 0 auto;width:112px;height:112px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;perspective:700px;box-shadow:0 3px 10px rgba(26,58,102,.22);transition:transform .2s ease}
.ps-coin:hover{transform:translateY(-2px)}
.ps-coin-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.45,.05,.2,1)}
.ps-coin.is-flipped .ps-coin-inner{transform:rotateY(180deg)}
.ps-coin img{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:50%;-webkit-backface-visibility:hidden;backface-visibility:hidden}
.ps-coin .ps-back{transform:rotateY(180deg)}
@media (prefers-reduced-motion: reduce){.ps-coin-inner,.ps-coin{transition:none}}

/* Leave breathing room above sections reached by in-page links */
[id]{scroll-margin-top:24px}
.form-turnstile.is-visible{margin-bottom:12px}
html[lang^="zh"] em{font-style:normal}
html[lang^="zh"] body{line-break:strict}
html[lang^="zh"] h1{word-break:keep-all;overflow-wrap:anywhere}
html[lang^="zh"] h1,html[lang^="zh"] h2,html[lang^="zh"] h3{text-wrap:balance}
/* Header logo: 72px on desktop and tablet; smaller on phones so the Menu button stays beside it */
@media (max-width:760px){.vp-logo{height:56px !important}}
@media (max-width:380px){.vp-logo{height:48px !important}}
/* Contact lists (Home, Tenants): on the smallest phones, put each label above its value so the email address fits */
@media (max-width:359px){.vp-contact-grid{grid-template-columns:1fr !important;row-gap:2px !important}.vp-contact-grid>:nth-child(odd):not(:first-child){margin-top:12px}}
