/* Shared size hierarchy from the practitioner template. Edessa retains its own typefaces. */
:root{--type-page:clamp(55px,5.9vw,88px);--type-section:clamp(40px,4.4vw,64px);--type-card:30px;--type-body:18px;--type-support:16px;--type-intro:18px}
body{font-size:var(--type-body)}
body main h1{font-size:var(--type-page)!important;line-height:1.08}
body main h2{font-size:var(--type-section)!important;line-height:1.08}
body main h3{font-size:var(--type-card)!important;line-height:1.2}
body main h4{font-size:22px!important;line-height:1.4}
body main p,body main li,body main dd{font-size:var(--type-body)!important;line-height:1.75}
body main :is(label,input,select,textarea,button,.button,.text-link){font-size:18px!important;line-height:1.5}
body main summary{font-size:19px!important;line-height:1.6}
body main :is(small,.eyebrow,.programme-note,.booking-rate-note,.booking-next){font-size:var(--type-support)!important;line-height:1.65}
body main :is(.programme-hero-copy,.people-hero-copy,.about-hero-copy,.interior-hero)>p:not(.eyebrow){font-size:var(--type-intro)!important;line-height:1.75}
body main :is(.booking-room-option strong,.booking-room-option>span>span,.booking-price-lines dt span){font-size:var(--type-support)!important;line-height:1.6}
body main .booking-price-lines{font-size:18px}
body footer p{font-size:18px;line-height:1.75}
body footer :is(a,small){font-size:16px;line-height:1.65}
@media(max-width:600px){:root{--type-page:clamp(38px,10.5vw,48px);--type-section:40px;--type-body:17px;--type-intro:17px}body main summary{font-size:18px!important}}

/* All prose, including heroes and supporting notes, uses the reference paragraph size. */
body #main p:not(.eyebrow),body footer p{font-size:var(--type-body)!important;line-height:1.8}
