/* Shared breathing room between complete page sections. */
:root{--section-gap:56px}
main#main > section + section{margin-top:var(--section-gap)}
main + .footer{margin-top:var(--section-gap)}
/* The remaining original children's page uses Tilda section wrappers. */
#allrecords > .t-rec:has(.t396) + .t-rec:has(.t396){margin-top:var(--section-gap)}
@media(max-width:700px){:root{--section-gap:36px}}/* Consistent compact appointment pills across every page. */
body .button.appointment-compact{min-height:44px;height:auto;padding:11px 22px;font-size:13px;gap:11px;line-height:1.35}
body .button.appointment-compact svg{width:18px;height:18px;flex-shrink:0;order:-1}
body .header .button.appointment-compact{min-height:38px;height:38px;padding:9px 16px;font-size:11px;gap:8px}
body .header .button.appointment-compact svg{width:16px;height:16px}
@media(max-width:700px){body .button.appointment-compact{min-height:42px;padding:10px 18px;font-size:12px;gap:9px}body .header .button.appointment-compact{min-height:34px;height:34px;padding:8px 10px;font-size:9px;gap:5px}body .header .button.appointment-compact svg{width:14px;height:14px}}
/* Mobile header: appointment becomes a round phone icon */
@media(max-width:820px){
body .header .button.appointment-compact.header-appointment{width:38px;height:38px;min-height:38px;padding:0;gap:0;border-radius:50%;flex-shrink:0}
body .header .header-appointment .header-appointment-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
body .header .button.appointment-compact.header-appointment svg{display:block;width:17px;height:17px}
}
