/* Uniform small typography and compact spacing for cards and information boxes. */
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.task-card,.need-link,.contactbox,.contact-next,.medical-notice,.booking-confirmation-alert,.vaccine-entry,.practical-facts,.request-message-backup,.clinician-booking-help,.guide-step){font-size:13px!important;line-height:1.65!important;padding:14px!important}
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.task-card,.need-link,.contactbox,.contact-next,.medical-notice,.booking-confirmation-alert,.vaccine-entry,.practical-facts,.request-message-backup,.clinician-booking-help,.guide-step) :is(p,li,dt,dd,span,a,label,small){font-size:13px!important;line-height:1.65!important}
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.task-card,.need-link,.contactbox,.contact-next,.medical-notice,.vaccine-entry,.practical-facts,.clinician-booking-help,.guide-step) :is(h2,h3,h4),.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.task-card,.need-link,.contactbox,.contact-next,.medical-notice,.vaccine-entry,.practical-facts,.clinician-booking-help,.guide-step) :is(h2,h3,h4) span{font-size:16px!important;line-height:1.5!important;margin-top:0!important;margin-bottom:7px!important}
.pageview :is(.task-card,.need-link) strong,.pageview :is(.task-card,.need-link) strong span{font-size:15px!important;line-height:1.5!important}
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.contactbox,.contact-next,.medical-notice,.vaccine-entry) p{margin-top:6px!important;margin-bottom:8px!important}
.pageview :is(.badge,.service-status,.branch-tag,.articlemeta,.reference-note),.pageview :is(.badge,.service-status,.branch-tag,.articlemeta,.reference-note) span{font-size:12px!important;line-height:1.5!important}
.pageview :is(.btn,.textlink,.foot),.pageview :is(.btn,.textlink,.foot) span{font-size:13px!important;line-height:1.5!important}
.pageview .btn{min-height:44px;box-sizing:border-box;padding:9px 13px!important;gap:8px}
.pageview :is(.branchphone,.phone),.pageview :is(.branchphone,.phone) span{font-size:18px!important;line-height:1.5!important}
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard) ul,.pageview :is(.card,.cliniccard,.contentcard,.bookingcard) ol{padding-left:20px;margin-top:6px;margin-bottom:8px}
.pageview :is(th,td),.pageview :is(th,td) span{font-size:13px!important;line-height:1.6!important}
.pageview .cards,.pageview .clinicgrid,.pageview .guide-grid{gap:12px!important}
.pageview .need-link{min-height:0!important}
.pageview .need-link:has(.line-icon){padding-left:54px!important}
.pageview .need-link .line-icon{width:28px;height:28px;left:13px}
.pageview .task-card{grid-template-columns:32px minmax(0,1fr) 16px;gap:4px 9px!important}
.pageview .task-card .line-icon,.pageview .card>.line-icon{width:32px;height:32px}
.pageview .task-card .line-icon svg,.pageview .card>.line-icon svg{width:20px;height:20px}
.pageview .cards>.servicecard{grid-template-columns:32px minmax(0,1fr);gap:5px 9px!important}
.pageview .contentcard{overflow-wrap:anywhere}
/* Keep the supplementary disclaimer at the previously requested smaller size. */
.pageview .medical-notice.outcome-notice{font-size:12px!important;padding:8px 10px!important}
.pageview .medical-notice.outcome-notice :is(p,span,a){font-size:12px!important;line-height:1.6!important}
.pageview .medical-notice.outcome-notice h2,.pageview .medical-notice.outcome-notice h2 span{font-size:13px!important;line-height:1.5!important;margin:0 0 4px!important}
/* Form controls stay usable on mobile; 16px avoids automatic iPhone focus zoom. */
.pageview .contentcard.general-health .official-reading-heading,.pageview .contentcard.general-health .official-reading-heading span{font-size:13px!important;line-height:1.5!important;margin-top:12px!important;margin-bottom:5px!important}
.pageview .contentcard.general-health :is(.reference-note,.official-references,.external-return-note),.pageview .contentcard.general-health :is(.reference-note,.official-references,.external-return-note) :is(span,p,li,a){font-size:12px!important;line-height:1.6!important}
.pageview .contentcard.general-health .reference-note,.pageview .contentcard.general-health .external-return-note{margin:5px 0!important}
.pageview .contentcard.general-health .official-references{margin:6px 0!important;padding-left:18px}
.pageview .contentcard.general-health .official-references li{margin:4px 0!important}
.pageview .medical-notice,.pageview .medical-notice :is(p,span,li,a),.pageview .booking-note,.pageview .booking-note :is(p,span,a),footer .site-disclaimer,footer .site-disclaimer :is(p,span,a){font-size:12px!important;line-height:1.6!important}
.pageview .medical-notice h2,.pageview .medical-notice h2 span{font-size:13px!important;line-height:1.5!important;margin:0 0 4px!important}
.pageview .medical-notice{padding:8px 10px!important;margin-top:12px!important}
.pageview :is(input,select,textarea){font-size:16px!important;max-width:100%;min-height:44px;box-sizing:border-box}
.pageview .qualification-list,.pageview .qualification-list li,.pageview .qualification-list span{font-size:13px!important;line-height:1.7!important}
@media(max-width:760px){
 .pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.contactbox,.contact-next,.medical-notice,.vaccine-entry,.practical-facts,.clinician-booking-help,.guide-step){padding:12px!important}
 .pageview .task-card{padding:12px!important}
 .pageview .medical-notice.outcome-notice{padding:8px 10px!important}
 .pageview .cards,.pageview .clinicgrid,.pageview .guide-grid{gap:10px!important}
}

.pageview a.textlink{display:inline-flex;align-items:baseline;gap:4px;max-width:100%;vertical-align:baseline}.pageview a.textlink .link-arrow{flex:0 0 auto;white-space:nowrap}.media-source-image{display:block;width:100%;height:150px;object-fit:contain;background:#fff;border:1px solid #eee3e8;border-radius:6px;margin-bottom:10px}.media-image-link{display:block}.pageview .media-archive-note,.pageview .media-archive-note span{font-size:12px!important;line-height:1.65!important;margin:8px 0 14px}.media-record-grid{align-items:start}.pageview .media-record p{margin:5px 0!important}.media-record>.textlink{margin-top:5px}.media-record-grid .card{min-width:0}@media(max-width:760px){.media-source-image{height:140px}}

/* Calm colour accents add hierarchy without making the text larger. */
:root{--clinic-teal:#33685e;--clinic-lilac:#645477;--clinic-rose:#88465e}
.pageview .cards>:is(.card,.servicecard){border-top:3px solid #b87a93;background:linear-gradient(155deg,#fff 65%,#fff6f9)}
.pageview .cards>:is(.card,.servicecard):nth-child(3n+2){border-top-color:#7fa69b;background:linear-gradient(155deg,#fff 65%,#f2f8f5)}
.pageview .cards>:is(.card,.servicecard):nth-child(3n){border-top-color:#a398b6;background:linear-gradient(155deg,#fff 65%,#f7f4fb)}
.pageview .cards>:is(.card,.servicecard):nth-child(3n+2) .line-icon{background:#e9f2ed;color:var(--clinic-teal);border-color:#d3e4da}
.pageview .cards>:is(.card,.servicecard):nth-child(3n) .line-icon{background:#f0ebf6;color:var(--clinic-lilac);border-color:#e0d6ec}
.pageview .task-card,.pageview .need-link{border-left:3px solid #b87a93;background:#fff9fb}
.pageview .task-card:nth-child(even),.pageview .need-link:nth-child(even){border-left-color:#7fa69b;background:#f6faf7}
.pageview .cliniccard{border-top:4px solid #88465e;box-shadow:0 5px 18px #723d4d09}
.pageview .cliniccard:nth-child(even){border-top-color:#33685e}
.pageview .service-status{background:#ecf4ee!important;color:#315d4e!important;border:1px solid #d6e6dc}
.pageview .pageheading h1{font-size:26px!important;line-height:1.45!important}
.pageview .pageheading .eyebrow{color:#88465e}
.pageview .booking-confirmation-alert,.pageview .booking-confirmation-alert :is(strong,span){font-size:12px!important;line-height:1.6!important;font-weight:400!important}
.pageview .booking-confirmation-alert{padding:7px 10px!important;border:0;border-left:3px solid #7fa69b;border-radius:0 6px 6px 0;background:#f1f7f3;color:#31564c;margin:8px 0 12px!important}
.pageview .vaccine-name{padding:8px 10px!important;margin:6px 0;border:1px solid #e4dce8;border-left:3px solid #a398b6;border-radius:6px;background:#faf8fc}
.pageview .vaccine-name h3,.pageview .vaccine-name h3 span{font-size:13px!important;margin:0!important;font-weight:400}
.pageview .vaccine-common-note,.pageview .vaccine-common-note span{font-size:12px!important;line-height:1.65!important}
.message-tools{margin-top:12px;padding:9px 11px;border:1px solid #d7e6dd;border-radius:7px;background:#f7faf8;font-size:13px}
.message-tools summary{cursor:pointer;color:#33685e;font-size:13px}
.message-tools textarea{display:block;width:100%;margin:8px 0;box-sizing:border-box;padding:9px;line-height:1.65;border:1px solid #d7e0da;border-radius:6px;background:white}
.pageview :is(#ask-status,#feedback-status,#request-status),.pageview .booking-note,.pageview .booking-note span{font-size:12px!important;line-height:1.6!important;font-weight:400!important}
.pageview .article-return-actions{padding-top:8px;border-top:1px solid #eee1e7}
@media(max-width:760px){.pageview .pageheading h1{font-size:23px!important}.pageview .btn{min-height:44px}.pageview .cliniccard{box-shadow:none}}

.common-health-section{padding-top:14px;padding-bottom:16px}.common-health-section .sectionhead h2{font-size:20px!important;line-height:1.5}.common-health-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}@media(max-width:1100px){.common-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:600px){.common-health-grid{grid-template-columns:1fr!important}}
@media(min-width:1250px){.common-health-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}}

.hero.hero-text-only.has-clinic-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:24px;align-items:center}.clinic-front-photo{margin:0;min-width:0}.clinic-front-frame{position:relative;aspect-ratio:542/492;overflow:hidden;border-radius:12px;border:1px solid #ddcbd3;background:#f0ede8}.clinic-front-frame img{position:absolute;width:230.4428%;max-width:none!important;height:auto;left:-128.2288%;top:-1.6260%;display:block}.clinic-front-photo figcaption{font-size:12px!important;line-height:1.6;color:#6c5961;margin-top:7px}.clinic-front-photo figcaption span{font-size:12px!important}@media(max-width:760px){.hero.hero-text-only.has-clinic-photo{grid-template-columns:1fr;gap:16px}.clinic-front-photo{width:100%;max-width:340px;margin:0 auto}}

.common-health-section{padding-top:14px;padding-bottom:16px}.common-health-section .sectionhead h2{font-size:20px!important;line-height:1.5}.common-health-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}@media(max-width:1100px){.common-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:600px){.common-health-grid{grid-template-columns:1fr!important}}

.resource-help-note,.resource-help-note span{font-size:12px!important;line-height:1.6!important}.resource-return{padding-top:10px;padding-bottom:12px}.source a{display:inline-flex;align-items:baseline;gap:4px;font-size:12px!important}

/* Clear hierarchy: readable core information, discreet supporting notices. */
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.task-card,.need-link,.contactbox,.contact-next,.practical-facts) :is(p,li,dt,dd,span,a,label){font-size:14px!important;line-height:1.65!important}
.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.contactbox,.contact-next) :is(h2,h3),.pageview :is(.card,.cliniccard,.contentcard,.bookingcard,.contactbox,.contact-next) :is(h2,h3) span{font-size:17px!important;line-height:1.45!important}
.pageview .card .health-emoji,.pageview .task-card .health-emoji{display:flex;align-items:center;justify-content:center;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:22px!important;line-height:1!important;width:34px;height:34px;border-radius:10px;border:0}
.pageview .cards>.card:nth-child(5n+1){border-top-color:#b16a86;background:linear-gradient(150deg,#fff 45%,#fff1f6)}
.pageview .cards>.card:nth-child(5n+2){border-top-color:#70a38e;background:linear-gradient(150deg,#fff 45%,#edf8f1)}
.pageview .cards>.card:nth-child(5n+3){border-top-color:#a38ac0;background:linear-gradient(150deg,#fff 45%,#f4effb)}
.pageview .cards>.card:nth-child(5n+4){border-top-color:#709dc5;background:linear-gradient(150deg,#fff 45%,#eef6ff)}
.pageview .cards>.card:nth-child(5n+5){border-top-color:#d2a05d;background:linear-gradient(150deg,#fff 45%,#fff5e7)}
.pageview .cards>.card:nth-child(5n+4) .line-icon{background:#e2effc;color:#2b628d}
.pageview .cards>.card:nth-child(5n+5) .line-icon{background:#ffecd2;color:#8e5e21}
.common-health-grid>.card{position:relative;transition:box-shadow .15s,border-color .15s}
.common-health-grid>.card:hover{box-shadow:0 5px 16px #723d4d12}
.common-health-grid>.card>h3{padding-right:16px}
.pageview .common-health-grid .card-open-arrow{position:absolute;top:10px;right:10px;font-size:13px!important;line-height:1;color:#907485}
.pageview .common-health-grid>.card>p{font-size:13px!important;margin-bottom:0!important;color:#67575f}
.pageview .common-health-grid>.card>p span{font-size:13px!important}
.pageview :is(.service-status,.badge,.branch-tag,.articlemeta),.pageview :is(.service-status,.badge,.branch-tag,.articlemeta) span{font-size:11px!important;line-height:1.5!important}
.pageview .medical-notice,.pageview .medical-notice.outcome-notice,.pageview .medical-notice :is(p,li,span,a),.pageview .medical-notice.outcome-notice :is(p,span,a),.pageview .booking-note,.pageview .booking-note :is(span,strong,a),.pageview .booking-confirmation-alert,.pageview .booking-confirmation-alert :is(span,strong),.pageview :is(#request-status,#ask-status,#feedback-status),.pageview .media-archive-note,.pageview .media-archive-note span,footer .site-disclaimer,footer .site-disclaimer :is(p,span,a){font-size:11px!important;line-height:1.55!important;font-weight:400!important;color:#71646a}
.pageview .medical-notice h2,.pageview .medical-notice h2 span,.pageview .medical-notice.outcome-notice h2,.pageview .medical-notice.outcome-notice h2 span{font-size:12px!important;line-height:1.5!important;font-weight:400!important}
.pageview .contentcard.general-health .official-reading-heading,.pageview .contentcard.general-health .official-reading-heading span{font-size:12px!important;line-height:1.5!important;color:#71646a}
.pageview .contentcard.general-health .official-references :is(li,a,span){font-size:12px!important;line-height:1.6!important}
.pageview .contentcard.general-health .articlemeta,.pageview .contentcard.general-health .articlemeta span{font-size:11px!important;line-height:1.5!important;color:#82747a}
.pageview .clinician-booking-help p,.pageview .clinician-booking-help p span{font-size:12px!important;line-height:1.6!important}

.common-health-section{padding-top:14px;padding-bottom:16px}.common-health-section .sectionhead h2{font-size:20px!important;line-height:1.5}.common-health-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}@media(max-width:1100px){.common-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:600px){.common-health-grid{grid-template-columns:1fr!important}}

/* Keep collection notices readable before contacting the clinic. */
.form-privacy-notice{font-size:12px!important;line-height:1.7!important;margin:0 0 16px!important}.form-privacy-notice a{text-decoration:underline}
