/* Scoped public-page refinements. No clinical workspace selectors. */
[hidden]{display:none!important}
.public-skip-link{position:fixed;left:12px;top:-100px;z-index:100;background:#fff;color:#07514e;padding:14px;border:3px solid #08766f;border-radius:8px}
.public-skip-link:focus{top:12px}
.homepage #public-main,.homepage section[id]{scroll-margin-top:150px}
.homepage-header{column-gap:16px}
.homepage-header .homepage-brand{min-width:0}
.homepage-header .homepage-brand-logo{max-width:100%;height:auto}
.homepage-hero>*,.homepage .dashboard-content>*,.homepage .dashboard-main>*,.homepage .dashboard-lower-grid>*{min-width:0}
.homepage .dashboard-welcome p,.homepage .dashboard-activity-card strong,.homepage .dashboard-upcoming-card p,.homepage .dashboard-stat-grid article p,.homepage .dashboard-stat-grid article span{color:#50657e}
.homepage .dashboard-demo-label{font-size:.85rem;line-height:1.5}
.public-error-summary{border:2px solid #9c2634;padding:16px;margin:16px 0;color:#71202c;background:#fff6f5;border-radius:12px}
.public-error-summary a{color:#71202c;text-decoration:underline}
.public-field-error{color:#9c2634;font-weight:700;margin:6px 0 0}
[aria-invalid="true"]{border:2px solid #9c2634!important}
.optional{font-weight:400}
.form-card .button{margin-top:18px;white-space:normal;max-width:100%}
.form-card,.info-card{min-width:0}
#enquiry{scroll-margin-top:24px}
.public-support-button{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;max-width:100%;box-sizing:border-box}
.legal-card a.public-support-button{color:#fff!important;background:#075e58}
.faq-toggle:focus-visible,.public-error-summary:focus-visible,#enquiry:focus-visible{outline:3px solid #08766f;outline-offset:4px}
@media(max-width:1100px){
 .homepage .homepage-hero{grid-template-columns:minmax(0,1fr)}
 .homepage .homepage-hero-visual{justify-content:center}
 .homepage .dashboard-content{grid-template-columns:120px minmax(0,1fr)}
 .homepage .dashboard-lower-grid{grid-template-columns:minmax(0,1fr)}
 .homepage .dashboard-mockup{max-width:760px;aspect-ratio:auto}
}
@media(max-width:900px){
 .homepage-header{grid-template-columns:minmax(0,1fr) 44px}
 .homepage-header .homepage-brand-logo{width:min(100%,300px)}
}
@media(max-width:640px){
 .homepage .dashboard-content{grid-template-columns:minmax(0,1fr)}
 .homepage .dashboard-side-nav{flex-wrap:wrap;overflow:visible;gap:8px;font-size:.8rem}
 .homepage .dashboard-side-nav span{white-space:normal}
 .homepage .dashboard-welcome h3{overflow-wrap:anywhere}
 .homepage .dashboard-activity-card li{flex-wrap:wrap;gap:4px 12px}
 .homepage .homepage-hero-copy h1{font-size:clamp(2.3rem,10vw,3.5rem)}
 .homepage .homepage-section-heading h2{font-size:clamp(1.8rem,8vw,2.7rem)}
 .form-card,.info-card{padding:20px}
 .public-error-summary a{display:inline-block;padding:6px 0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
