/* Final client refinements: original identity, compact rhythm and clear text. */
.hp-brand{color:inherit;font:inherit;white-space:nowrap}
.hp-brand>.hp-registered-mark{position:relative;top:0;margin-left:.05em;color:inherit;font-family:Arial,sans-serif;font-size:.52em;line-height:0;vertical-align:super}

body.hp-redesign>header.hp-client-header nav.wrap{gap:20px;width:min(1500px,94%);min-height:112px;padding:12px 0}
body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo{display:block;flex:0 0 180px;width:180px;margin:0;padding:0}
body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo>img{display:block;width:180px;max-width:100%;height:auto;margin:0}
body.hp-redesign>header.hp-client-header .hp-header-associations{display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:12px}
body.hp-redesign>header.hp-client-header .hp-header-associations>a{display:block;flex:0 0 auto;margin:0;padding:0;border:0;line-height:0}
body.hp-redesign>header.hp-client-header .hp-header-hac{display:block;width:39px;height:40px;overflow:hidden}
body.hp-redesign>header.hp-client-header .hp-header-hac>img{display:block;width:86.21px;max-width:none;height:61.28px;margin:0;transform:translate(-25.86px,-11.7px)}
body.hp-redesign>header.hp-client-header img.hp-header-somatic{display:block;width:92px;height:40px;max-width:none;margin:0;object-fit:contain}
body.hp-redesign>header.hp-client-header .hp-header-associations>a:focus-visible{outline:2px solid #8b665c;outline-offset:5px}
@media(min-width:1101px){
  body.hp-redesign>header.hp-client-header nav.wrap>.links{min-width:0;gap:18px;margin-left:auto;font-size:16.5px}
  body.hp-redesign>header.hp-client-header nav.wrap>.links>.button{padding:12px 18px;font-size:16.5px}
}
@media(min-width:1101px) and (max-width:1399px){
  body.hp-redesign>header.hp-client-header nav.wrap{gap:16px}
  body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo{flex-basis:150px;width:150px}
  body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo>img{width:150px}
  body.hp-redesign>header.hp-client-header .hp-header-associations{flex-direction:column;gap:3px}
  body.hp-redesign>header.hp-client-header nav.wrap>.links{gap:14px;font-size:15px}
  body.hp-redesign>header.hp-client-header nav.wrap>.links>.button{padding:11px 15px;font-size:15px}
}
@media(max-width:1100px){
  body.hp-redesign>header.hp-client-header nav.wrap{width:calc(100% - 40px);min-height:88px;gap:8px 20px;padding:12px 0}
  body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo{grid-column:1;grid-row:1;width:140px;flex-basis:140px}
  body.hp-redesign>header.hp-client-header nav.wrap>.hp-primary-logo>img{width:140px}
  body.hp-redesign>header.hp-client-header .hp-header-associations{grid-column:1/-1;grid-row:2;justify-content:flex-start;margin:0 0 2px}
  body.hp-redesign>header.hp-client-header nav.wrap>.links{grid-row:3}
}

/* Both original paragraphs, signature and actions share the first green section. */
body.hp-reference-home .hero{gap:48px;padding-top:36px;padding-bottom:42px;align-items:center}
body.hp-reference-home .hero h1{margin:12px 0 20px;font-size:clamp(38px,4.1vw,58px);line-height:1.15}
body.hp-reference-home .hero .eyebrow{font-size:13px;line-height:1.5;letter-spacing:1px}
body.hp-reference-home .hero .hp-home-intro p{max-width:none;margin:0 0 17px;color:#fff;font-size:18px;line-height:1.7}
body.hp-reference-home .hero .hp-home-signature{max-width:none;margin:7px 0 22px;color:#fff;font-size:16px;line-height:1.55;text-align:left}
body.hp-reference-home .hero .hero-tree{align-self:center}
body.hp-reference-home .hero .hero-tree img{max-height:540px;object-fit:contain}
body.hp-reference-home .hero .actions{gap:10px}
@media(max-width:700px){
  body.hp-reference-home .hero{padding-top:30px;padding-bottom:34px;gap:30px}
  body.hp-reference-home .hero .hp-home-intro p{font-size:17px;line-height:1.7}
  body.hp-reference-home .hero .hp-home-signature{font-size:16px}
  body.hp-reference-home .hero .hero-tree img{max-height:360px}
}

/* Header memberships replace the repeated footer membership strip. */
body.hp-redesign .hours-band .hours{padding-bottom:46px}
body.hp-redesign .hours-band .hours-vector{bottom:8px;height:200px;opacity:.13}
body.hp-redesign .therapy-contact-band{padding-bottom:18px}
body.hp-redesign>footer#footer{padding:34px 0 0}
body.hp-redesign>footer#footer>.footer-main{padding-top:0;padding-bottom:28px;gap:32px}
body.hp-redesign>footer#footer .brand>img{width:170px;margin:0;max-width:100%}
body.hp-redesign>footer#footer h3{margin:0 0 14px;font-size:25px;line-height:1.4}
body.hp-redesign>footer#footer a{margin-bottom:6px;font-size:16px;line-height:1.55}
body.hp-redesign>footer#footer .service-links{gap:0 24px}
body.hp-redesign>footer#footer .subfooter{margin-top:0;padding:17px 0}
body.hp-redesign>footer#footer .subfooter-inner{font-size:13px;gap:12px 24px}
/* Memberships and social links share the footer's brand column. */
body.hp-redesign>footer#footer .brand .hp-footer-memberships{display:grid;gap:14px;margin:20px 0 18px}
body.hp-redesign>footer#footer .brand .hp-footer-membership{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:10px;margin:0;padding:0;color:#294243;font-family:inherit;font-size:14px;line-height:1.5;text-decoration:none}
body.hp-redesign>footer#footer .hp-footer-logo-box{display:flex;align-items:center;justify-content:center;width:80px;height:40px}
body.hp-redesign>footer#footer .hp-footer-hac{display:block;width:39px;height:40px;overflow:hidden}
body.hp-redesign>footer#footer .brand .hp-footer-hac>img{display:block;width:86.21px;max-width:none;height:61.28px;margin:0;transform:translate(-25.86px,-11.7px)}
body.hp-redesign>footer#footer .brand img.hp-footer-somatic{display:block;width:80px;height:32px;max-width:none;margin:0;object-fit:contain}
body.hp-redesign>footer#footer .brand .hp-footer-socials{display:flex;align-items:center;gap:10px;margin:0}
body.hp-redesign>footer#footer .brand .hp-footer-socials>a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0;border:1px solid #95a7a066;border-radius:50%;background:#fff;text-decoration:none}
body.hp-redesign>footer#footer .brand .hp-footer-socials img{display:block;width:22px;height:22px;max-width:none;margin:0;object-fit:contain}
body.hp-redesign>footer#footer .brand :is(.hp-footer-membership,.hp-footer-socials>a):hover{color:#684e45}
body.hp-redesign>footer#footer .brand :is(.hp-footer-membership,.hp-footer-socials>a):focus-visible{outline:2px solid #60786e;outline-offset:4px}
@media(max-width:700px){body.hp-redesign>footer#footer .brand .hp-footer-memberships{max-width:340px;margin:18px 0}body.hp-redesign>footer#footer .brand .hp-footer-membership{font-size:14px}}
@media(max-width:700px){
  body.hp-redesign>footer#footer{padding-top:28px}
  body.hp-redesign>footer#footer>.footer-main{gap:22px;padding-bottom:22px}
  body.hp-redesign>footer#footer .brand>img{width:145px;margin:0}
  body.hp-redesign>footer#footer h3{font-size:23px}
  body.hp-redesign>footer#footer a{font-size:15px}
}

/* Blog cards use dark text on the original soft backgrounds. */
body.hp-adapted .site-main :is(.article-card,.blog-card,.source-blog-card,.article-grid>article){color:#294243}
body.hp-adapted .site-main :is(.article-card,.blog-card,.source-blog-card,.article-grid>article) :is(h2,h3,p,a,span,time){color:#294243}
body.hp-adapted .site-main :is(.article-card,.blog-card,.source-blog-card,.article-grid>article) a:hover{color:#684e45}
body.hp-adapted .site-main .archive-header>.container{padding-top:36px;padding-bottom:36px}

/* Reduce the common appointment bands while preserving all form controls. */
body.hp-redesign .two.contact{padding-top:46px;padding-bottom:46px;gap:38px}
body.hp-redesign .contact-form{gap:14px 20px}
body.hp-redesign .contact-form label{font-size:15px;line-height:1.5}
body.hp-redesign .contact-form :is(input:not([type=hidden]),textarea){padding:9px 0;font-size:17px;line-height:1.5}
body.hp-redesign .contact-form textarea{height:100px;min-height:100px}
body.hp-redesign .contact-form>button{margin-top:8px}
body.hp-adapted .site-main .hp-original-contact:not(.contact-page-details){margin-top:34px;padding:32px 34px;gap:0 34px}
body.hp-adapted .site-main .hp-original-contact:not(.contact-page-details)>h2{margin-top:0;font-size:38px}
@media(max-width:700px){body.hp-redesign .two.contact{padding-top:34px;padding-bottom:34px;gap:25px}body.hp-adapted .site-main .hp-original-contact:not(.contact-page-details){padding:28px 22px}}
