@font-face{font-family:'PP Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('pp-type-fonts/manrope-latin-variable.woff2') format('woff2')}
@font-face{font-family:'PP Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('pp-type-fonts/inter-latin-variable.woff2') format('woff2')}
body.pp-site{--body:'PP Inter',Arial,sans-serif;--heading:'PP Manrope',Arial,sans-serif;font-family:var(--body);font-size:17px;line-height:1.6;font-weight:400}
.pp-site .elementor{--e-global-typography-primary-font-family:'PP Manrope';--e-global-typography-secondary-font-family:'PP Manrope';--e-global-typography-text-font-family:'PP Inter';--e-global-typography-accent-font-family:'PP Inter'}
.pp-site .elementor :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title){font-family:var(--heading)!important;font-weight:700!important;font-optical-sizing:auto;letter-spacing:-.02em}
.pp-site .elementor .elementor-widget-heading:has(h1){font-size:clamp(36px,4.8vw,60px)!important;font-weight:700!important;line-height:1.12!important;letter-spacing:-.035em!important}
.pp-site .elementor h1.elementor-heading-title,.pp-site .elementor :is(.pp-directory-intro,.hero,.page-hero,.article-head) h1{font-size:clamp(36px,4.8vw,60px)!important;line-height:1.12!important;letter-spacing:-.035em!important}
.pp-site .elementor .elementor-widget-heading:has(h2){font-size:clamp(28px,3.1vw,38px)!important;line-height:1.22!important;font-weight:650!important;letter-spacing:-.025em!important}
.pp-site .elementor h2.elementor-heading-title,.pp-site .elementor .pp-directory-section h2{font-size:inherit!important;line-height:1.22!important;font-weight:650!important;letter-spacing:-.025em!important}
.pp-site .elementor .elementor-widget-heading:has(h3){font-size:22px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.015em!important}
.pp-site .elementor :is(h3.elementor-heading-title,.pp-condition-entry h3){font-size:22px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.015em!important}
.pp-site .elementor :is(.intent-card,.pp-physician-mini,.service-grid,.pp-modern-bios) .elementor-widget-heading:has(h2),.pp-site .elementor .pp-clinic-office .elementor-widget-heading:has(h2){font-size:24px!important;line-height:1.3!important;letter-spacing:-.015em!important}
.pp-site .elementor :is(.pp-flightpass,.pp-medical-card) h3{font-size:24px!important}
.pp-site .elementor :is(.elementor-widget-text-editor,.pp-adhd-body,.pp-modern-bio-detail,.article-body){font-family:var(--body);font-weight:400;line-height:1.6}
.pp-site #main-content :is(p,li){font-size:17px;line-height:1.6}
.pp-site .elementor :is(.pp-adhd-body,.pp-modern-bio-detail,.article-body) :is(p,li){font-size:17px!important;line-height:1.6!important}
.pp-site .elementor :is(.elementor-tab-content,.elementor-tab-content p,.faq-answer,.faq-answer p){font-family:var(--body)!important;font-size:16px!important;line-height:1.6!important;font-weight:400!important}
.pp-site .elementor :is(button,input,select,textarea,.elementor-button,.elementor-button-text){font-family:var(--body)!important}
.pp-site .elementor :is(button,.elementor-button){font-weight:600!important;font-size:15px;line-height:1.4}
.pp-site .elementor :is(.desktop-nav,.pp-nav) .elementor-button,.pp-site .elementor :is(.desktop-nav,.pp-nav) a{font-size:14px!important;font-weight:600!important;letter-spacing:0!important}
.pp-site .elementor :is(.desktop-nav,.pp-nav){gap:2px}
.pp-site .elementor :is(.desktop-nav,.pp-nav) .elementor-button{padding-left:10px;padding-right:10px}
.pp-site .elementor :is(.eyebrow,.section-intro,.pp-directory-caveat,.pp-clinic-credential,.pp-clinic-credential p){font-family:var(--body)!important;font-size:12px!important;font-weight:600!important;line-height:1.5!important}
.pp-site .elementor :is(.eyebrow,.section-intro){letter-spacing:.14em!important}
.pp-site .elementor :is(strong,b){font-weight:600}
.pp-site .elementor .elementor-tab-title{font-family:var(--body)!important;font-size:17px!important;font-weight:600!important;line-height:1.5!important}
.pp-site .elementor input{font-size:16px}
body.pp-site #main-content .hero-trust :is(p,span){font-size:13px!important;line-height:1.5!important;font-weight:600}
body.pp-site #main-content .elementor .fp-header h3{font-size:24px!important;line-height:1.3!important;font-weight:600!important}
@media(max-width:767px){body.pp-site{font-size:16px}.pp-site #main-content :is(p,li){font-size:16px}.pp-site .elementor :is(.pp-adhd-body,.pp-modern-bio-detail,.article-body) :is(p,li){font-size:16px!important}.pp-site .elementor .elementor-widget-heading:has(h1),.pp-site .elementor h1.elementor-heading-title{font-size:36px!important;line-height:1.15!important;letter-spacing:-.03em!important}.pp-site .elementor .elementor-widget-heading:has(h3),.pp-site .elementor h3.elementor-heading-title,.pp-site .elementor .pp-condition-entry h3{font-size:20px!important}}
@media(min-width:768px) and (max-width:1100px){.pp-site .elementor :is(.desktop-nav,.pp-nav) .elementor-button{padding-left:7px;padding-right:7px;font-size:14px!important}}
/* Slightly quieter desktop scale; compact homepage portraits are not section headings. */
@media(min-width:768px){
 body.pp-site #main-content .elementor .elementor-widget-heading:has(h1),body.pp-site #main-content .elementor h1.elementor-heading-title,body.pp-site #main-content .elementor .pp-directory-intro h1{font-size:clamp(38px,4.2vw,54px)!important}
 body.pp-site #main-content .elementor .elementor-widget-heading:has(h2){font-size:clamp(28px,2.7vw,34px)!important}
 body.pp-site #main-content .elementor :is(.intent-card,.service-grid,.pp-modern-bios,.pp-clinic-office) .elementor-widget-heading:has(h2){font-size:23px!important}
 body.pp-site #main-content .elementor .pp-care-copy .elementor-widget-heading:has(h2){font-size:32px!important;line-height:1.25!important}
 body.pp-site #main-content .elementor .pp-physician-mini .elementor-widget-heading:has(h2){font-size:19px!important;line-height:1.3!important}
 body.pp-site #main-content .elementor .elementor-widget-heading:has(h3),body.pp-site #main-content .elementor :is(h3.elementor-heading-title,.pp-condition-entry h3){font-size:20px!important}
 body.pp-site #main-content .elementor .fp-header h3{font-size:22px!important}
 body.pp-site #main-content .elementor .pp-physician-mini :is(h3,.elementor-widget-heading:has(h3)){font-size:19px!important;line-height:1.3!important}
}
body.pp-site #main-content .elementor .pp-physician-mini p{font-size:14px;line-height:1.5}
/* Checklist/card titles remain compact even when authored as semantic H2s. */
body.pp-site #main-content .elementor :is(.pp-check-row,.resource-grid,.detail-cards) .elementor-widget-heading:has(h2),body.pp-site #main-content .elementor :is(.pp-check-row,.resource-grid,.detail-cards) h2.elementor-heading-title{font-size:22px!important;line-height:1.3!important;letter-spacing:-.015em!important;font-weight:600!important}
@media(max-width:767px){body.pp-site #main-content .elementor :is(.pp-check-row,.resource-grid,.detail-cards) .elementor-widget-heading:has(h2),body.pp-site #main-content .elementor :is(.pp-check-row,.resource-grid,.detail-cards) h2.elementor-heading-title{font-size:20px!important}}
