/* Mobile-first. Font sizes inherit from the existing website typography.
   Contact cards remain stacked at every viewport width. */
.site-patient-notices { --notice-ink:#24282e; --notice-primary:#607d1c; --notice-muted:#555c62; --notice-line:#dce3ca; font-family:inherit; }
.site-patient-notices *, .site-patient-notices *::before, .site-patient-notices *::after { box-sizing:border-box; }
.site-patient-notices .site-patient-notices__dialog { width:calc(100% - 16px); max-width:1248px; max-height:calc(100vh - 16px); max-height:calc(100dvh - 16px); margin:auto; padding:0; border:0; border-radius:18px; background:#fff; color:var(--notice-ink); box-shadow:0 24px 90px #0004; overflow:hidden; line-height:1.45; }
.site-patient-notices .site-patient-notices__dialog[open] { display:flex; flex-direction:column; }
.site-patient-notices .site-patient-notices__dialog:not([open]) { display:none; }
.site-patient-notices .site-patient-notices__dialog::backdrop { background:rgba(25,30,18,.55); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.site-patient-notices .site-patient-notices__header, .site-patient-notices .site-patient-notices__footer { position:static; inset:auto; float:none; width:auto; min-height:0; max-width:none; height:auto; transform:none; background:#fff; box-shadow:none; z-index:auto; flex-shrink:0; }
.site-patient-notices .site-patient-notices__header::before, .site-patient-notices .site-patient-notices__header::after, .site-patient-notices .site-patient-notices__footer::before, .site-patient-notices .site-patient-notices__footer::after { content:none; }
.site-patient-notices .site-patient-notices__header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:16px; border-bottom:1px solid var(--notice-line); }
.site-patient-notices .site-patient-notices__header h2, .site-patient-notices .site-patient-notices__panel h3, .site-patient-notices .site-patient-notices__panel h4 { position:static; inset:auto; float:none; width:auto; height:auto; min-height:0; transform:none; padding:0; color:var(--notice-ink); font-weight:700; line-height:1.25; letter-spacing:normal; text-transform:none; }
.site-patient-notices .site-patient-notices__header h2 { margin:0; }
.site-patient-notices .site-patient-notices__header p { display:none; margin:5px 0 0; padding:0; color:var(--notice-muted); }
.site-patient-notices .site-patient-notices__close { position:static; inset:auto; transform:none; box-shadow:none; display:grid; place-items:center; flex:0 0 44px; width:44px; height:44px; margin:0; padding:8px; border:1px solid var(--notice-primary); border-radius:50%; background:#fff; color:var(--notice-ink); cursor:pointer; }
.site-patient-notices .site-patient-notices__columns { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; padding:12px; overflow:auto; overscroll-behavior:contain; min-height:0; scrollbar-gutter:stable; }
.site-patient-notices .site-patient-notices__panel { min-width:0; padding:14px; border-radius:14px; overflow-wrap:anywhere; }
.site-patient-notices .site-patient-notices__panel--appointments { border:1px solid var(--notice-line); }
.site-patient-notices .site-patient-notices__panel--lipoedema { background:#f1f5e6; }
.site-patient-notices .site-patient-notices__section-heading { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.site-patient-notices .site-patient-notices__icon { display:inline-grid; place-items:center; flex:0 0 36px; width:36px; height:36px; border-radius:50%; background:#f2f6e8; color:var(--notice-primary); }
.site-patient-notices .site-patient-notices__icon svg { width:22px; height:22px; }
.site-patient-notices .site-patient-notices__panel h3 { margin:0 0 10px; }
.site-patient-notices .site-patient-notices__section-heading h3 { margin-bottom:4px; }
.site-patient-notices .site-patient-notices__badge { display:inline-block; border-radius:12px; background:#f0f0f1; padding:3px 8px; color:#41474d; }
.site-patient-notices .site-patient-notices__panel p { position:static; float:none; margin:0 0 12px; padding:0; white-space:pre-line; color:var(--notice-muted); }
.site-patient-notices .site-patient-notices__panel .site-patient-notices__lead { line-height:1.2; font-weight:700; color:var(--notice-ink); margin-bottom:10px; }
.site-patient-notices .site-patient-notices__contacts { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
.site-patient-notices .site-patient-notices__inset { display:flex; align-items:flex-start; gap:10px; padding:12px; border:1px solid var(--notice-line); border-radius:12px; min-width:0; }
.site-patient-notices .site-patient-notices__inset > div { min-width:0; flex:1; }
.site-patient-notices .site-patient-notices__inset--acute { background:#f2f6e8; border-color:transparent; }
.site-patient-notices .site-patient-notices__inset--acute .site-patient-notices__icon { background:#fff; }
.site-patient-notices .site-patient-notices__panel h4 { margin:0 0 6px; }
.site-patient-notices .site-patient-notices__inset p { margin-bottom:6px; }
.site-patient-notices .site-patient-notices__inset p:last-child { margin-bottom:0; }
.site-patient-notices .site-patient-notices__text-link { display:inline-flex; align-items:center; gap:8px; min-height:44px; color:var(--notice-primary); text-decoration:underline; text-underline-offset:3px; font-weight:600; }
.site-patient-notices .site-patient-notices__panel--lipoedema > .site-patient-notices__icon { float:left; background:#fff; margin:0 10px 8px 0; }
.site-patient-notices .site-patient-notices__panel--lipoedema > h3 { min-height:36px; display:flex; align-items:center; }
.site-patient-notices .site-patient-notices__panel--lipoedema > p { clear:both; }
.site-patient-notices .site-patient-notices__medical { border-top:1px solid #bcc7a4; margin-top:14px; padding-top:14px; }
.site-patient-notices .site-patient-notices__panel .site-patient-notices__source { color:#626955; margin:10px 0 0; }
.site-patient-notices .site-patient-notices__note { font-weight:600; }
.site-patient-notices .site-patient-notices__footer { display:flex; flex-direction:column; align-items:stretch; gap:8px; padding:10px 16px max(10px,env(safe-area-inset-bottom)); border-top:1px solid var(--notice-line); }
.site-patient-notices .site-patient-notices__footer p { display:flex; align-items:center; gap:8px; margin:0; padding:0; color:var(--notice-muted); }
.site-patient-notices .site-patient-notices__footer .site-patient-notices__icon { flex-basis:20px; width:20px; height:20px; background:none; color:inherit; }
.site-patient-notices .site-patient-notices__button { font:inherit; display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; max-width:100%; margin:0; padding:9px 16px; border:1px solid var(--notice-primary); border-radius:22px; background:var(--notice-primary); color:#fff; cursor:pointer; text-decoration:none; text-align:center; white-space:normal; line-height:1.3; }
.site-patient-notices .site-patient-notices__button--outline { border-radius:10px; background:#fff; color:var(--notice-primary); }
.site-patient-notices .site-patient-notices__button:hover { background:#4d6516; border-color:#4d6516; color:#fff; text-decoration:none; }
.site-patient-notices .site-patient-notices__button--outline:hover, .site-patient-notices .site-patient-notices__close:hover { background:#e9efd9; color:#425812; }
.site-patient-notices button:focus-visible, .site-patient-notices a:focus-visible { outline:3px solid var(--notice-primary); outline-offset:2px; }
html.site-patient-notices-is-open { overflow:hidden; }
@media (min-width:600px) {
.site-patient-notices .site-patient-notices__dialog { width:calc(100% - 32px); max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); border-radius:22px; }
.site-patient-notices .site-patient-notices__header { padding:20px 24px; }
.site-patient-notices .site-patient-notices__header h2 { }
.site-patient-notices .site-patient-notices__header p { display:block; }
.site-patient-notices .site-patient-notices__columns { padding:16px 20px; gap:16px; }
.site-patient-notices .site-patient-notices__panel { padding:18px; }

.site-patient-notices .site-patient-notices__footer { flex-direction:row; align-items:center; justify-content:space-between; padding:12px 24px; }
}
@media (min-width:1000px) {
.site-patient-notices .site-patient-notices__columns { grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); }
.site-patient-notices .site-patient-notices__header h2 { }
.site-patient-notices .site-patient-notices__panel .site-patient-notices__lead { }

}
@media (max-height:500px) {
.site-patient-notices .site-patient-notices__header { padding:8px 14px; }
.site-patient-notices .site-patient-notices__header h2 { }
.site-patient-notices .site-patient-notices__header p { display:none; }
.site-patient-notices .site-patient-notices__footer { flex-direction:row; align-items:center; padding:8px 14px; }
}

/* Unified typography supplied by the website owner. */
.site-patient-notices .site-patient-notices__header h2,
.site-patient-notices .site-patient-notices__panel h3,
.site-patient-notices .site-patient-notices__panel h4 { font-size:1.4rem; }
.site-patient-notices .site-patient-notices__header h2 { font-size:1.7rem; }
.site-patient-notices .site-patient-notices__footer p { font-size:1rem; }

/* More breathing room, with smaller outer margins on phones. */
.site-patient-notices .site-patient-notices__header { padding:20px 18px; gap:16px; }
.site-patient-notices .site-patient-notices__columns { padding:16px 12px; gap:18px; }
.site-patient-notices .site-patient-notices__panel { padding:20px 16px; border-radius:18px; }
.site-patient-notices .site-patient-notices__section-heading { gap:14px; margin-bottom:20px; }
.site-patient-notices .site-patient-notices__icon { flex:0 0 48px; width:48px; height:48px; }
.site-patient-notices .site-patient-notices__icon svg { width:28px; height:28px; }
.site-patient-notices .site-patient-notices__section-heading h3 { margin-bottom:8px; }
.site-patient-notices .site-patient-notices__badge { padding:5px 10px; }
.site-patient-notices .site-patient-notices__panel p { margin-bottom:18px; }
.site-patient-notices .site-patient-notices__panel .site-patient-notices__lead { margin-bottom:14px; line-height:1.4; }
.site-patient-notices .site-patient-notices__contacts { gap:16px; margin-top:20px; }
.site-patient-notices .site-patient-notices__inset { padding:18px 14px; gap:14px; border-radius:16px; }
.site-patient-notices .site-patient-notices__panel h4 { margin-bottom:10px; }
.site-patient-notices .site-patient-notices__inset p { margin-bottom:12px; }
.site-patient-notices .site-patient-notices__inset p:last-child { margin-bottom:0; }
.site-patient-notices .site-patient-notices__panel--lipoedema > .site-patient-notices__icon { margin:0 14px 14px 0; }
.site-patient-notices .site-patient-notices__panel--lipoedema > h3 { min-height:48px; margin-bottom:18px; }
.site-patient-notices .site-patient-notices__medical { margin-top:24px; padding-top:24px; }
.site-patient-notices .site-patient-notices__panel .site-patient-notices__source { margin-top:16px; margin-bottom:0; }
.site-patient-notices .site-patient-notices__footer { padding:14px 18px max(14px,env(safe-area-inset-bottom)); gap:12px; }
.site-patient-notices .site-patient-notices__footer .site-patient-notices__icon { flex:0 0 22px; width:22px; height:22px; }
.site-patient-notices .site-patient-notices__footer .site-patient-notices__icon svg { width:22px; height:22px; }
@media (min-width:600px) {
    .site-patient-notices .site-patient-notices__header { padding:24px 28px; }
    .site-patient-notices .site-patient-notices__columns { padding:22px; gap:22px; }
    .site-patient-notices .site-patient-notices__panel { padding:26px 24px; }
    .site-patient-notices .site-patient-notices__icon { flex-basis:56px; width:56px; height:56px; }
    .site-patient-notices .site-patient-notices__icon svg { width:32px; height:32px; }
    .site-patient-notices .site-patient-notices__section-heading { gap:18px; margin-bottom:24px; }
    .site-patient-notices .site-patient-notices__inset { padding:22px 20px; gap:18px; }
    .site-patient-notices .site-patient-notices__contacts { gap:20px; margin-top:24px; }
    .site-patient-notices .site-patient-notices__panel--lipoedema > h3 { min-height:56px; }
    .site-patient-notices .site-patient-notices__medical { margin-top:28px; padding-top:26px; }
    .site-patient-notices .site-patient-notices__footer { padding:16px 28px; }
    .site-patient-notices .site-patient-notices__footer .site-patient-notices__icon { flex-basis:22px; width:22px; height:22px; }
    .site-patient-notices .site-patient-notices__footer .site-patient-notices__icon svg { width:22px; height:22px; }
}
@media (max-width:359px) {
    .site-patient-notices .site-patient-notices__inset { flex-direction:column; }
}
@media (max-height:500px) {
    .site-patient-notices .site-patient-notices__header { padding:10px 14px; }
    .site-patient-notices .site-patient-notices__footer { padding:8px 14px; }
}
