/* Same title, spacing, type and inset frames as .contact/.about in main.css. */
.patients-intro { color: var(--text-color); font-size: 1rem; margin-bottom: 1.5rem; }
.patients-intro p:last-child { margin-bottom: 0; }
.patients-shortcuts { display: flex; flex-wrap: wrap; gap: .75rem 2rem; margin-bottom: 2rem; }
.patients-shortcuts a, .patients-back { color: var(--aqua-deep); text-decoration: underline; text-underline-offset: .2em; }
.patients-shortcuts a:hover, .patients-back:hover { color: var(--black); }
.patients-section, .patients-document { position: relative; background: var(--white); border-radius: var(--border-radius); isolation: isolate; }
.patients-section { margin-bottom: 1rem; }
.patients-section::before, .patients-document::before { content: ''; position: absolute; inset: .5625rem; border: 1px solid #E4F5F7; border-radius: .5rem; pointer-events: none; z-index: -1; }
.patients-section summary { display: flex; gap: 1.5rem; justify-content: space-between; align-items: center; padding: 1.75rem 2.5rem; cursor: pointer; list-style: none; }
.patients-section summary::-webkit-details-marker { display: none; }
.patients-section summary h2 { font-size: 1.375rem; font-weight: 500; margin: 0; line-height: 1.5; }
.patients-section summary:hover h2 { color: var(--aqua-deep); }
.patients-toggle { flex: 0 0 1.125rem; height: 1.125rem; position: relative; color: var(--aqua-deep); }
.patients-toggle::before, .patients-toggle::after { content: ''; position: absolute; background: currentColor; top: .5rem; left: 0; width: 1.125rem; height: 2px; }
.patients-toggle::after { transform: rotate(90deg); }
.patients-section[open] .patients-toggle::after { transform: rotate(0); }
.patients-section[open] summary { padding-bottom: 1rem; }
.patients-prose { padding: 0 2.5rem 2rem; color: var(--text-color); font-size: 1rem; line-height: 1.5; overflow-wrap: anywhere; }
.patients-prose h2, .patients-prose h3 { font-size: 1.375rem; font-weight: 500; margin: 1.5rem 0 .75rem; }
.patients-prose > :first-child { margin-top: 0; }
.patients-prose > :last-child { margin-bottom: 0; }
.patients-prose a { color: var(--aqua-deep); text-decoration: underline; text-underline-offset: .15em; }
.patients-prose a:hover { color: var(--black); }
.patients-prose li { margin: .5rem 0; }
.patients-prose img { max-width: 100%; height: auto; }
.patients-prose table { display: block; max-width: 100%; overflow-x: auto; }
.patients-prose td, .patients-prose th { padding: .75rem; border-bottom: 1px solid #E4F5F7; }
.patients-prose dl { display: grid; grid-template-columns: minmax(130px, .65fr) minmax(0, 1.5fr); gap: .75rem 1.5rem; }
.patients-prose dt { font-weight: 500; }
.patients-prose dd { margin: 0; }
.patients-document { padding: 2rem 2.5rem; }
.patients-back { display: inline-block; margin-top: 1.5rem; }
.patients-page a:focus-visible, .patients-section summary:focus-visible { outline: 2px solid var(--aqua-deep); outline-offset: 4px; }
@media (max-width: 767.98px) { .patients-section summary { padding: 1.5rem 1.875rem; } .patients-prose { padding: 0 1.875rem 1.875rem; } .patients-document { padding: 1.875rem; } }
@media (max-width: 575.98px) { .patients-section summary h2 { font-size: 1.125rem; } .patients-section summary { padding: 1.25rem; gap: 1rem; } .patients-prose { padding: 0 1.25rem 1.5rem; } .patients-document { padding: 1.5rem 1.25rem; } .patients-prose dl { grid-template-columns: 1fr; gap: .25rem; } .patients-prose dd { margin-bottom: .75rem; } }
@media print { .patients-page .site-header, .patients-page .site-footer, .patients-shortcuts { display: none; } .patients-section::details-content { content-visibility: visible; } .patients-section .patients-prose { display: block; } }
.legal-draft-note { padding: 1rem 1.25rem; margin-bottom: 1.5rem; border: 1px solid #c3e2e6; border-radius: 1rem; background: #F4F8FF; color: #3D4546; }
.legal-cookie-settings { padding: 0; border: 0; background: transparent; font: inherit; color: #246d77; text-decoration: underline; cursor: pointer; }
