/* Shared type scale, with the existing HaPet fonts and colours. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:16px;line-height:1.65}
body h1,body .story-intro h1,body .visit-intro h1,body .booking-intro h1,body .path-hero h1,body .privacy h1{font-family:Georgia,serif;font-size:clamp(43px,4.65vw,64px);font-weight:400;line-height:1.08;letter-spacing:-1.5px;margin-bottom:24px;overflow-wrap:break-word}
body h2,body .story-content h2,body .visit-content h2,body .path-topics h2,body .path-plan h2,body .seminar-section h2,body .events-teaser h2{font-family:Georgia,serif;font-size:clamp(32px,4vw,48px);font-weight:400;line-height:1.15;letter-spacing:-1px;margin-bottom:24px;overflow-wrap:break-word}
body h3,body .education-main h3,body .path-grid h3{font-size:23px;font-weight:500;line-height:1.3}
body .membership h2,body .privacy h2{font-family:inherit;font-size:24px;line-height:1.3;letter-spacing:0}
body .event-card h2,body .pricebox h3{font-family:Georgia,serif;font-size:28px;line-height:1.25;letter-spacing:-.5px}
body .location-maps h3{font-size:19px;line-height:1.3}
body .contact h3{font-size:12px;line-height:1.4}
body p,body .hero-copy>p:not(.eyebrow),body .booking-intro p:not(.eyebrow),body .visit-intro>p:not(.eyebrow),body .path-hero p:not(.eyebrow),body .story-content p,body .visit-content p,body .path-plan p,body .education-main p,body .service p,body .audiences p{font-size:16px;line-height:1.75}
body .eyebrow{font-size:11px;line-height:1.5;letter-spacing:2px}
body .small,body .contact .small,body .booking-help,body .map-placeholder p,body .story-dogs figcaption,body .voucher-layout figcaption{font-size:13px;line-height:1.65}
body .education-year li,body .visit-content li,body .privacy li{font-size:16px;line-height:1.75}
body .tag{font-size:12px;line-height:1.5}
body .text-link,body .story-back{font-size:14px;line-height:1.5}
body .location{font-size:13px;line-height:1.6}
body .price,body .hours{font-size:15px;line-height:1.6}
body .button,body .service summary{font-size:14px;line-height:1.5}
body input,body select,body textarea{font-size:16px;line-height:1.5}
p,a,li{overflow-wrap:break-word}
/* A drawn asterisk cannot be substituted with a coloured emoji on iOS. */
.strip span:before{content:"";display:inline-block;width:16px;height:16px;vertical-align:-2px;margin-right:12px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238e3b99' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M12 2v20M2 12h20M5 5l14 14M5 19L19 5'/%3E%3C/svg%3E")}
@media(max-width:580px){
body h1,body .story-intro h1,body .visit-intro h1,body .booking-intro h1,body .path-hero h1,body .privacy h1{font-size:43px}
body h2,body .story-content h2,body .visit-content h2,body .path-topics h2,body .path-plan h2,body .seminar-section h2,body .events-teaser h2{font-size:32px}
body .membership h2,body .privacy h2{font-size:24px}
body .event-card h2{font-size:27px}
.navlinks{position:relative}
.navlinks .nav-about{position:static}
.navlinks .nav-about-menu{left:0;right:0;top:calc(100% + 8px);width:auto;min-width:0;max-width:100%;box-sizing:border-box}
.navlinks .nav-about-menu a{white-space:normal;overflow-wrap:anywhere}
body .strip{font-size:13px;line-height:1.6}
body .strip span{width:100%}
}
