/* Cross-page usability refinements; preserve the approved desktop hero. */
.skip-link{position:fixed;z-index:10000;top:12px;left:16px;padding:14px 20px;background:#082b47;color:#fff;font:600 16px/1.4 sans-serif;transform:translateY(-160%);text-decoration:none;border:2px solid #dbad43}
.skip-link:focus{transform:translateY(0);outline:2px solid white;outline-offset:2px}
main:focus{outline:none}
/* Supporting copy stays readable without enlarging the approved headlines. */
.pano-challenge .pano-pains p,.pano-service-strip p{font-size:14px;line-height:1.65}
.service-related-card em,.service-prepare__list>p{font-size:14px;line-height:1.65}
.service-iv-wellness .service-story-photo img{object-position:center top}
.pano-trust .ticker-toggle[hidden]{display:none}
@media(max-width:600px){
  .faq-hero{padding:48px 0 52px}
  .faq-hero__grid{gap:28px}
  .faq-hero h1{font-size:42px;line-height:1.05}
  .service-detail-hero h1{font-size:40px;text-wrap:initial}
}
.pano-utility a[href^="tel:"]{white-space:nowrap;flex-shrink:0}
.pano-footer__contact a{overflow-wrap:anywhere}
.pano-trust .ticker-toggle{width:36px;height:36px;min-width:36px;padding:0;border:1px solid #b5a579;border-radius:50%;font-size:14px}
.pano-trust{padding-right:56px}
.pano-review-controls .review-playback{min-width:32px;min-height:32px}
@media(max-width:680px){
  .pano-hero{background:#fbfaf6;padding-bottom:370px}
  .pano-hero::before{content:"";position:absolute;inset:auto 0 65px;height:300px;width:100%;background:linear-gradient(180deg,#fbfaf6,transparent 30%),url('/_release/bb41a6916b9593096cc1/assets/primary-care-hero-v2.webp') right bottom/auto 300px no-repeat;mask-image:none;-webkit-mask-image:none;pointer-events:none}
  .pano-header nav.is-open{max-height:calc(100dvh - 182px);overflow-y:auto;overscroll-behavior:contain}
  .pano-nav-dropdown__intro{padding:16px 20px}
  .pano-nav-dropdown__intro strong,.pano-nav-dropdown__intro small{display:none}
  .pano-nav-dropdown__intro p{margin-bottom:10px}
  .pano-nav-dropdown__menu{max-height:none}
  .pano-utility>div{gap:12px;min-height:40px}
  .pano-utility>div>span{line-height:1.5;letter-spacing:.045em;max-width:60%}
  .pano-utility a[href^="tel:"]{font-size:10px}
  @media (max-width:680px){
.pano-utility a[href^="tel:"]{font-size:13px}}
  .pano-trust{padding-right:48px}
  .pano-trust .ticker-toggle{right:6px}
  .appointment-dialog{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100%;height:100dvh;max-height:none;border-radius:0;overflow-y:auto;overscroll-behavior:contain}
  .appointment-dialog .appointment-dialog__panel{min-height:100%;overflow:visible;max-height:none}
  .appointment-dialog .appointment-dialog__intro{min-height:0;padding:24px 22px}
  .appointment-dialog .appointment-dialog__brand{width:155px;margin-bottom:16px;padding:6px 8px}
  .appointment-dialog .appointment-dialog__intro .eyebrow{margin-bottom:10px}
  .appointment-dialog .appointment-dialog__intro h2{font-size:32px;line-height:1.05;max-width:100%;margin-bottom:12px}
  .appointment-dialog .appointment-dialog__intro p{max-width:100%;font-size:13px;line-height:1.55}
  .appointment-dialog .appointment-form{padding:22px;margin-top:0}
  .appointment-dialog .appointment-dialog__panel{padding:0}
  .appointment-dialog .appointment-form input,.appointment-dialog .appointment-form select,.appointment-dialog .appointment-form textarea{font-size:16px}
  .appointment-dialog .appointment-form__address-grid{grid-template-columns:1fr}
  .pano-footer__contact a{font-size:13px;line-height:1.6}
}
