@font-face{font-family:Archivo;src:url('/static/fonts/archivo-400-900-latin.woff2') format('woff2');font-weight:400 900;font-display:swap}
[data-lab]{--sg-ink:#173e34;--sg-muted:#637367;--sg-paper:#faf9f3;--sg-soft:#edf2e8;--sg-line:#dce3d6;--sg-accent:#d66342}
[data-lab=direct]{--sg-ink:#122744;--sg-muted:#63718a;--sg-paper:#f7f9fc;--sg-soft:#eaf0f7;--sg-line:#dce4ed;--sg-accent:#805000}
[data-lab=local]{--sg-ink:#37352c;--sg-muted:#777469;--sg-paper:#faf6ed;--sg-soft:#eee7d9;--sg-line:#ddd5c7;--sg-accent:#a44b30}
.sg-discovery{background:var(--sg-paper);color:var(--sg-ink);padding:64px 0;border-top:1px solid var(--sg-line);font-family:Archivo,Arial,sans-serif}.sg-inner{max-width:1256px;margin:0 auto;padding:0 36px}.sg-kicker{font-size:11px;letter-spacing:1.7px;text-transform:uppercase;font-weight:650;color:var(--sg-accent);margin-bottom:16px}.sg-discovery h2{font-size:30px;font-weight:650;line-height:1.25;letter-spacing:-.8px;margin:0 0 14px}.sg-intro{font-size:14px;max-width:660px;line-height:1.85;color:var(--sg-muted);margin-bottom:27px}.sg-regions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.sg-regions>a{padding:18px 20px;text-decoration:none;background:#fff;border:1px solid var(--sg-line);border-radius:10px;color:var(--sg-ink)}.sg-regions span{font-size:15px;font-weight:650}.sg-regions small{display:block;font-size:11px;color:var(--sg-muted);margin-top:7px}.sg-regions>a:hover{border-color:var(--sg-accent);background:var(--sg-soft)}.sg-link-row{display:flex;flex-wrap:wrap;gap:10px 25px;margin:25px 0;font-size:12px;line-height:1.7}.sg-link-row a{color:var(--sg-ink);text-underline-offset:4px}.sg-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:39px 0 18px}.sg-section-heading h2{font-size:23px;margin:0}.sg-section-heading>a,.sg-section-heading>span{font-size:12px;white-space:nowrap;color:var(--sg-muted)}.sg-practices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.sg-practice{padding:22px;background:#fff;border:1px solid var(--sg-line);border-radius:12px;min-width:0}.sg-practice h3{font-size:16px;font-weight:650;line-height:1.4;margin:0 0 9px;overflow-wrap:anywhere}.sg-practice h3 a{color:var(--sg-ink);text-decoration:none}.sg-practice h3 a:hover{text-decoration:underline}.sg-practice p{font-size:12px;color:var(--sg-muted);line-height:1.7;margin:0 0 12px}.sg-times{display:flex;flex-wrap:wrap;gap:7px}.sg-times a{padding:10px;background:var(--sg-soft);border-radius:5px;font-size:11px;text-decoration:none;color:var(--sg-ink);line-height:1.5}.sg-times a:hover{background:var(--sg-ink);color:#fff}.sg-note{font-size:11px;line-height:1.9;color:var(--sg-muted);margin:20px 0 0}.sg-note a,.sg-discovery a:focus-visible,.sg-page a:focus-visible{outline:3px solid var(--sg-accent);outline-offset:4px}.sg-page{margin:0;font-family:Archivo,Arial,sans-serif;background:var(--sg-paper);color:var(--sg-ink)}.sg-page *{box-sizing:border-box}.sg-page a{color:inherit;text-underline-offset:4px}.sg-preview{font-size:12px;text-align:center;padding:8px 16px;min-height:32px;display:flex;justify-content:center;align-items:center;gap:9px;background:#eef1f8;color:#53627d}.sg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f4be4f}.sg-header{display:flex;justify-content:space-between;gap:25px;align-items:center;min-height:82px;border-bottom:1px solid var(--sg-line)}.sg-brand{display:inline-flex;align-items:center;font-size:28px;font-weight:800;letter-spacing:-1.4px;text-decoration:none;white-space:nowrap}.sg-brand>span:last-child{color:#f4be4f}.sg-symbol{display:grid;place-items:center;width:35px;height:35px;padding:0 4px 5px 0;background:#2949c7;color:#fff;font:italic 36px Georgia,serif;border-radius:10px;margin-right:10px}.sg-header nav{display:flex;gap:25px;align-items:center;font-size:13px}.sg-header nav a{text-decoration:none}.sg-button{display:inline-flex;gap:18px;padding:13px 20px;border-radius:10px;background:#f4be4f;color:#132443!important;font-size:14px;font-weight:600;text-decoration:none;line-height:1.5}.sg-button:hover{background:#efb135}.sg-main{padding-top:26px;padding-bottom:65px}.sg-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--sg-muted);margin-bottom:40px}.sg-main h1{font-size:clamp(32px,4.8vw,56px);line-height:1.15;letter-spacing:-1.6px;font-weight:650;max-width:900px;margin:0 0 24px}.sg-lead{font-size:16px;line-height:1.9;color:var(--sg-muted);max-width:790px;margin:0 0 25px}.sg-main h2{font-size:25px;line-height:1.35;letter-spacing:-.5px;margin:35px 0 18px}.sg-practices-two{grid-template-columns:repeat(2,minmax(0,1fr))}.sg-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:35px 0}.sg-directory-link{display:block;text-decoration:none;border:1px solid var(--sg-line);border-radius:13px;padding:24px;background:white}.sg-directory-link:hover{border-color:var(--sg-accent)}.sg-directory-link h2{font-size:20px;margin:0 0 13px}.sg-directory-link p{font-size:13px;line-height:1.8;color:var(--sg-muted);margin:0 0 20px}.sg-directory-link>span{font-size:12px;color:var(--sg-accent)}.sg-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.sg-facts{display:grid;grid-template-columns:110px 1fr;gap:17px;font-size:14px;line-height:1.8}.sg-facts dt{color:var(--sg-muted)}.sg-facts dd{margin:0;overflow-wrap:anywhere}.sg-team{padding:0;list-style:none;display:grid;gap:0}.sg-team li{padding:14px 0;border-bottom:1px solid var(--sg-line);font-size:14px}.sg-team li span{display:block;margin-top:6px;font-size:12px;line-height:1.7;color:var(--sg-muted)}.sg-team li small.sg-quiet{display:block;margin-top:8px;font-size:12px;color:var(--sg-muted)}.sg-method-copy{max-width:800px}.sg-method-copy p,.sg-method-inline p{font-size:15px;line-height:1.9;color:var(--sg-muted)}.sg-method-inline{margin:40px 0;padding:25px;background:var(--sg-soft);border-radius:12px}.sg-method-inline h2{margin-top:0}.sg-method-inline>a{font-size:13px}.sg-footer{padding-top:30px;padding-bottom:40px;border-top:1px solid var(--sg-line)}.sg-footer>a{font-weight:700;text-decoration:none;font-size:22px}.sg-footer p{font-size:13px;color:var(--sg-muted);line-height:1.8}.sg-footer nav{display:flex;gap:25px;font-size:12px;flex-wrap:wrap}.sg-notice{padding:25px;background:var(--sg-soft);line-height:1.8}.sg-discovery [hidden]{display:none}
[data-lab=local] .sg-discovery h2,[data-lab=local].sg-page h1{font-family:Georgia,serif;font-weight:400}
@media(max-width:750px){.sg-inner{padding-inline:20px}.sg-discovery{padding:42px 0}.sg-discovery h2{font-size:27px}.sg-regions,.sg-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.sg-practices{grid-template-columns:1fr}.sg-section-heading{align-items:start}.sg-section-heading h2{font-size:22px}.sg-section-heading>a,.sg-section-heading>span{white-space:normal;text-align:right}.sg-header{min-height:72px}.sg-header nav{gap:12px;font-size:12px}.sg-header nav a:nth-child(2),.sg-header nav a:nth-child(3),.sg-header nav a:nth-child(4){display:none}.sg-header .sg-button{font-size:12px;padding:12px}.sg-brand{font-size:23px}.sg-main h1{font-size:35px;letter-spacing:-1px}.sg-breadcrumb{margin-bottom:28px}.sg-lead{font-size:15px}.sg-detail-grid{grid-template-columns:1fr;gap:10px}.sg-preview{font-size:9px}.sg-preview a{margin-left:7px}.sg-facts{grid-template-columns:90px 1fr;font-size:13px}}
@media(max-width:420px){.sg-regions{grid-template-columns:1fr 1fr;gap:7px}.sg-regions>a{padding:14px 12px}.sg-regions span{font-size:13px}.sg-regions small{font-size:10px;line-height:1.6}.sg-directory{grid-template-columns:1fr}.sg-header .sg-brand{font-size:23px}.sg-symbol{width:30px;height:30px;font-size:30px;border-radius:8px;margin-right:8px}.sg-header nav>a:first-child{display:none}.sg-link-row{gap:12px 20px}}
.sg-identity{display:flex;gap:22px;align-items:center;margin-bottom:18px}.sg-identity h1{margin:0}.sg-identity .sg-kicker{margin-bottom:8px}.sg-logo{display:grid;place-items:center;flex-shrink:0;width:92px;height:92px;padding:10px;border:1px solid var(--sg-line);border-radius:18px;background:#fff}.sg-logo img{max-width:100%;max-height:100%;object-fit:contain}.sg-logo-dark{background:var(--sg-ink);border-color:var(--sg-ink)}.sg-keyfacts{list-style:none;display:flex;flex-wrap:wrap;gap:10px 28px;padding:0;margin:0 0 24px;font-size:14px;color:var(--sg-muted)}.sg-keyfacts strong{color:var(--sg-ink);font-size:20px;font-weight:650;margin-right:3px;font-variant-numeric:tabular-nums}.sg-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:8px}.sg-chips span{padding:7px 11px;border-radius:7px;background:var(--sg-soft);font-size:13px}.sg-chips-muted span{background:#fff;border:1px solid var(--sg-line);color:var(--sg-muted)}.sg-team li em{display:block;font-style:normal;margin-top:6px;font-size:13px;line-height:1.7;color:var(--sg-muted)}
@media(max-width:750px){.sg-identity{gap:14px}.sg-logo{width:64px;height:64px;border-radius:13px;padding:7px}.sg-keyfacts{gap:8px 18px;font-size:13px}.sg-keyfacts strong{font-size:17px}}
.sg-times-block{margin:6px 0 28px}.sg-times-block h3{font-size:15px;margin:0 0 12px;letter-spacing:-.2px}.sg-times-hero{padding:22px 24px;background:#fff;border:1px solid var(--sg-line);border-radius:14px}.sg-times{display:grid;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));grid-auto-rows:1fr;gap:10px;margin-bottom:16px}.sg-times-person{margin:10px 0 0;max-width:420px}.sg-times .sg-time{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:66px;padding:9px 8px;text-align:center;border-radius:10px;background:#eef2ff;color:#2949c7;text-decoration:none;border:1px solid #d9e1fa}.sg-times .sg-time span{font-size:12px;color:#586eaa}.sg-times .sg-time strong{font-size:19px;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.3px}.sg-times .sg-time:hover{background:#2949c7;border-color:#2949c7;color:#fff}.sg-times .sg-time:hover span{color:#dfe6ff}.sg-times:empty+.sg-button{margin-top:0}
@media(max-width:750px){.sg-times-hero{padding:16px}.sg-times{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.sg-times .sg-time{padding:9px 6px}.sg-times .sg-times .sg-time strong{font-size:17px}}
/* Typography streamlined with the home page (frontend/src/styles/site.css), 19 Sept 2026: one brand mark, one heading voice. */
.sg-page,.sg-discovery{font-family:Archivo,Arial,sans-serif;-webkit-font-smoothing:antialiased}
.sg-brand{font-size:26px;font-weight:900;font-variation-settings:"wdth" 120,"wght" 900;letter-spacing:-.5px;text-transform:lowercase;color:var(--sg-ink)}
.sg-main h1,.sg-legacy h1{font-weight:800;font-variation-settings:"wdth" 112,"wght" 800;letter-spacing:-.02em;line-height:1.08;text-wrap:balance}
.sg-main h2,.sg-discovery h2,.sg-legacy h2{font-weight:650;font-variation-settings:"wght" 650;letter-spacing:-.6px;line-height:1.25}
.sg-main h3,.sg-legacy h3{font-weight:650;font-variation-settings:"wght" 650;letter-spacing:-.2px}
.sg-header nav{gap:22px}.sg-header nav a{font-size:14px}
.sg-lang{display:inline-flex;align-items:center;gap:5px;height:40px;padding:0 14px;border:1px solid var(--sg-line);border-radius:30px;text-decoration:none;font-size:14px;font-weight:550;line-height:1;color:var(--sg-ink)}.sg-lang .flag{width:18px;height:12px;border-radius:2px;box-shadow:0 0 0 1px #0000001a;flex-shrink:0}.sg-lang:hover{border-color:var(--sg-ink)}
@media(max-width:750px){.sg-lang{height:36px;padding:0 12px;font-size:12px}.sg-header nav a.sg-lang{display:inline-flex}}
/* Legacy production pages (seo.py / seo_extra.py / explainers.py / pages.py bodies) in the new palette. */
.sg-legacy{--paper:var(--sg-paper);--ink:var(--sg-ink);--soft:var(--sg-muted);--line:var(--sg-line);--go:#2949c7;--gosoft:#eaf0f7;--now:#c98a00;--cta:#2949c7;max-width:860px;line-height:1.7;font-size:15px}
.sg-legacy h1{font-size:clamp(32px,4.8vw,52px);margin:0 0 20px;max-width:900px}
.sg-legacy h2{font-size:25px;margin:38px 0 14px}.sg-legacy h3{font-size:17px;margin:22px 0 8px}
.sg-legacy p{margin:10px 0}.sg-legacy a{color:var(--go);text-underline-offset:4px}
.sg-legacy .lead{font-size:17px;line-height:1.8;color:var(--sg-muted);max-width:760px;margin:0 0 22px}
.sg-legacy .upd,.sg-legacy .src,.sg-legacy .cite{font-size:13px;color:var(--sg-muted)}.sg-legacy .upd{margin-top:28px}
.sg-legacy .stat{display:inline-block;background:#fff;border:1px solid var(--sg-line);border-radius:99px;padding:7px 14px;margin:8px 6px 4px 0;font-size:14px}.sg-legacy .stat b{color:var(--go)}
.sg-legacy .card{background:#fff;border:1px solid var(--sg-line);border-radius:14px;padding:18px 20px;margin-top:12px}
.sg-legacy .card h2,.sg-legacy .card h3{margin-top:0;font-size:18px}.sg-legacy .card .meta,.sg-legacy .meta{color:var(--sg-muted);font-size:13px;margin:2px 0 8px}
.sg-legacy .slot{display:inline-block;font-family:Archivo,Arial,sans-serif;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600;background:#eef2ff;color:#2949c7;border:1px solid #d9e1fa;border-radius:8px;padding:6px 10px;margin:3px 6px 3px 0;white-space:nowrap;text-decoration:none}
.sg-legacy a.slot:hover,.sg-legacy a.slot:focus-visible{background:#2949c7;border-color:#2949c7;color:#fff}
.sg-legacy a.more{display:inline-block;font-size:13px;margin:3px 0;white-space:nowrap}
.sg-legacy .cta{display:inline-flex;gap:14px;background:#f4be4f;color:#132443;text-decoration:none;border-radius:10px;padding:13px 20px;font-weight:600;font-size:14px;margin-top:16px}.sg-legacy .cta:hover{background:#efb135}.sg-legacy .cta.alt{background:var(--sg-soft);color:var(--sg-ink)}
.sg-legacy .zk{color:var(--sg-muted);font-size:13px;white-space:nowrap}.sg-legacy a.zk{text-decoration:none}.sg-legacy a.zk small{font-size:inherit;text-decoration:underline;text-decoration-color:var(--sg-line);text-underline-offset:3px}
.sg-legacy .rel{margin-top:40px;padding-top:24px;border-top:1px solid var(--sg-line)}.sg-legacy .rel h2{font-size:11px;letter-spacing:1.7px;text-transform:uppercase;font-weight:650;color:var(--sg-muted);margin:18px 0 6px}.sg-legacy .rell{font-size:14px;line-height:2}
.sg-legacy .info{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:14px}.sg-legacy .info dt{color:var(--sg-muted)}
.sg-legacy .dir{list-style:none;padding:0}.sg-legacy .dir li{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:10px 0;border-top:1px solid var(--sg-line);font-size:14px}.sg-legacy .dir li:first-child{border-top:0}.sg-legacy .dir .n{flex:1 1 14rem;font-weight:650}.sg-legacy .dir .d{color:var(--sg-muted);font-size:13px}.sg-legacy .dir a.tel{white-space:nowrap;text-decoration:none;font-variant-numeric:tabular-nums;font-size:13px}
.sg-legacy .faq details{border-top:1px solid var(--sg-line);padding:12px 0}.sg-legacy .faq details:last-child{border-bottom:1px solid var(--sg-line)}.sg-legacy .faq summary{cursor:pointer;font-weight:650;font-size:15px}.sg-legacy .faq p{color:var(--sg-muted);margin:8px 0 4px;max-width:64ch}
.sg-legacy .chips a{display:inline-block;background:#fff;border:1px solid var(--sg-line);border-radius:99px;padding:5px 12px;margin:3px 6px 3px 0;font-size:13px;text-decoration:none;color:var(--sg-ink)}.sg-legacy .chips a:hover{border-color:var(--go)}
.sg-legacy ul.plain,.sg-legacy ol{padding-left:22px}.sg-legacy ul.plain li,.sg-legacy .src li{margin:4px 0}
.sg-legacy form.contact,.sg-legacy .prac-form{display:grid;gap:10px;max-width:560px;margin-top:10px}
.sg-legacy form.contact input,.sg-legacy form.contact textarea,.sg-legacy .prac-form input,.sg-legacy .prac-form textarea{border:1px solid #cfd7e6;border-radius:8px;font:inherit;font-size:16px;padding:11px 13px;background:#fff;color:var(--sg-ink);width:100%}
.sg-legacy form.contact input:focus,.sg-legacy form.contact textarea:focus,.sg-legacy .prac-form input:focus,.sg-legacy .prac-form textarea:focus{outline:3px solid #f4be4f;outline-offset:1px;border-color:var(--sg-ink)}
.sg-legacy form.contact button,.sg-legacy .prac-go{border:0;cursor:pointer;font:inherit;font-weight:600;font-size:15px;background:#2949c7;color:#fff;border-radius:10px;padding:13px 20px;box-shadow:none;transform:none}.sg-legacy .prac-go:hover,.sg-legacy form.contact button:hover{background:#203cad;transform:none;box-shadow:none}
.sg-legacy .prac-form label{font-size:13px;font-weight:550;letter-spacing:0;text-transform:none;color:var(--sg-ink)}
.sg-legacy .prac-eye{font-size:11px;letter-spacing:1.7px;text-transform:uppercase;font-weight:650;color:#805000;margin:0 0 10px}
.sg-legacy .prac-stats span{background:#fff;border:1px solid var(--sg-line);border-radius:99px;padding:7px 14px;font-size:14px}.sg-legacy .prac-stats b{color:var(--go)}
.sg-legacy .prac-step{background:#fff;border:1px solid var(--sg-line);border-radius:14px;padding:16px 18px}.sg-legacy .prac-n{background:#2949c7}
.sg-legacy .prac-sheet{background:#fff;border:1px solid var(--sg-line);border-radius:16px;padding:24px;box-shadow:0 10px 36px #12244314}
.sg-legacy table.bm{border-collapse:collapse;width:100%;margin:10px 0 18px;font-size:14px}.sg-legacy table.bm th{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--sg-muted);text-align:left;padding:8px 10px 6px 0;border-bottom:1px solid var(--sg-line)}.sg-legacy table.bm td{padding:9px 10px 9px 0;border-bottom:1px solid var(--sg-line);vertical-align:top}.sg-legacy table.bm td.n,.sg-legacy table.bm th.n{text-align:right;font-family:Archivo,Arial,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.sg-legacy .tblwrap{overflow-x:auto}.sg-legacy .key{background:#fff;border:1px solid var(--sg-line);border-radius:14px;padding:16px 20px;margin:14px 0}.sg-legacy .cite{border-left:3px solid #f4be4f;padding:4px 0 4px 14px;margin:20px 0}
.sg-legacy .machine{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;white-space:pre-wrap;background:#fff;border:1px solid var(--sg-line);border-radius:10px;padding:14px 16px;color:var(--sg-muted)}
@media(max-width:560px){.sg-legacy .info{grid-template-columns:1fr;gap:2px}.sg-legacy .info dt{margin-top:8px}.sg-legacy h1{font-size:33px}.sg-legacy h2{font-size:22px}}
@media(max-width:750px){.sg-header .sg-button{display:none}.sg-header nav{gap:10px}}
.sg-branch>h2{margin-top:30px}.sg-branch .sg-times-hero .sg-note{margin:0}.sg-branch .sg-times-hero .sg-button{margin-bottom:14px}
.sg-minimap{height:230px;margin-top:18px;border-radius:12px;overflow:hidden;background:var(--sg-soft);border:1px solid var(--sg-line)}.sg-minimap .maplibregl-ctrl-attrib{font-size:10px}

/* First-visit labels wrap inside a therapist’s own time chip. */
.sg-times .sg-time .sg-visit-kind{font-size:11px;line-height:1.5;overflow-wrap:anywhere}
/* Therapist portraits a practice uploaded in its portal (backend ADR-036). */
.sg-team li::after{content:"";display:block;clear:both}

/* Condition pages /aandoening/<slug> (round-2 design, Samy 10 Oct 2026; docs/patients/condition-pages.md).
   Colours come from tokens only: the --sg-* palette above plus these, which mirror src/styles/tokens.css
   (site.css is served on its own, without the Vite bundle's tokens). */
.sg-legacy{--amber:#f4be4f;--amber-hover:#efb135;--warn:#a02323;--warn-pale:#fbecec;--white:#fff;--pale:#edf1ff;--blue:#2949c7}
/* The legacy wrapper is a 860px reading column; the condition page needs its own two columns. */
.sg-legacy:has(>.cond){max-width:none}
.cond{display:grid;grid-template-columns:minmax(0,1fr) 352px;grid-template-areas:"top side" "bottom side";gap:0 32px;align-items:start}
.cond-top{grid-area:top;min-width:0}.cond-bottom{grid-area:bottom;min-width:0}
.cond-eyebrow{color:var(--blue);font-size:12px;font-weight:650;letter-spacing:.7px;margin:0 0 12px!important}
.cond-hero{padding:30px 32px;background:var(--white);border:1px solid var(--sg-line);border-radius:16px}
.sg-legacy .cond-hero h1{font-size:42px;margin-bottom:23px;hyphens:auto;overflow-wrap:break-word}
.sg-legacy .cond-hero .lead{font-size:17px;line-height:1.75;color:var(--sg-ink);max-width:none;margin:0}
.cond-hero .lead::after{content:"";display:block;clear:both}
.cond-byline{margin:22px 0 0;padding-top:19px;border-top:1px solid var(--sg-line)}.cond-byline .src{font-size:12px;line-height:1.65;margin:0}
.cond-toc{margin:26px 0 30px;padding:0 8px 20px;border-bottom:1px solid var(--sg-line)}
.sg-legacy .cond-toc h2{font-size:13px;margin:0 0 5px;letter-spacing:0}
.cond-toc p{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0}
.sg-legacy .cond-toc a{display:inline-block;padding:5px 0;font-size:13px;color:var(--sg-ink);text-decoration:none}
.sg-legacy .cond-toc a:hover{text-decoration:underline}.sg-legacy .cond-toc a.cond-toc-safety{color:var(--warn)}
.cond-top>section,.cond-bottom>section{margin:0 0 34px;padding-inline:8px;scroll-margin-top:32px}
.cond-top>.src{padding-inline:8px}
.cond-safety{background:var(--white);border:1px solid var(--sg-line);border-left:4px solid var(--warn);border-radius:0 10px 10px 0;padding:24px 26px!important}
.sg-legacy .cond-safety h2{margin-top:0;font-size:23px}
.cond-safety .crisis-113{display:block;margin-top:6px;padding:8px 12px;border-radius:8px;background:var(--warn-pale);color:var(--warn);font-weight:650}.cond-safety .crisis-113 a{color:inherit}
.cond-safety-tag{color:var(--warn);font-size:12px;font-weight:650;margin:0 0 12px!important}
.cond-faq-item{padding:19px 0;border-top:1px solid var(--sg-line)}.sg-legacy .cond-faq-item h3{margin:0 0 8px;font-size:18px}.cond-faq-item p:last-child{margin-bottom:0}
.cond-sources{padding-top:26px!important;border-top:1px solid var(--sg-line)}
.cond-more{margin:8px 0 0;padding:24px;background:var(--pale);border-radius:12px}.sg-legacy .cond-more h2{margin:0 0 12px;font-size:20px}
/* The panel: sticky beside the whole text on desktop (it spans both rows of the grid). */
/* The right column (the booking panel) is sticky beside the whole text. The booking
   button must stay in view for the whole page (Samy, 10 Oct 2026): a sticky box stops at the end of its
   grid, just above the page footer (about 235px with the main's bottom padding), so the column is kept
   260px shorter than the screen and even fully scrolled down the button is on screen. Times that do not
   fit scroll inside the panel. No ancestor sets overflow (that would disable sticky). */
.cond-side{grid-area:side;position:sticky;top:24px;display:flex;flex-direction:column;gap:16px;max-height:max(480px,calc(100vh - 260px))}
.cond-panel{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:24px;background:var(--white);border:1px solid var(--sg-line);border-radius:16px}
.sg-legacy .cond-panel h2{margin:0 0 18px;font-size:26px}
.sg-legacy .cond-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin:0;padding:15px 16px;min-height:56px;background:var(--amber);color:var(--sg-ink);font-size:16px;font-weight:650;line-height:1.4}
.sg-legacy .cond-cta:hover{background:var(--amber-hover)}
.cond-cta-note{font-size:11px;color:var(--sg-muted);margin:8px 0 0!important}
.cond-districts{font-size:13px;color:var(--sg-muted);border-top:1px solid var(--sg-line);padding-top:14px;margin-top:16px!important}
.cond-bar{display:none}
/* The call card: an info page without a sourced physiotherapy role keeps the right column, without a booking button. */
.sg-legacy .cond-call p{margin:0 0 12px}.sg-legacy .cond-call p:last-child{margin-bottom:0}
.cond-call-links{font-size:14px;line-height:1.9}
/* Earliest free times (defysioplek_ui/web/earliest_times.py): one row per bookable time. */
.tl{margin-top:22px}.sg-legacy .tl-heading{font-size:13px;margin:0 0 10px;letter-spacing:0}
.sg-legacy .tl-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.tl-row{display:flex;gap:12px;align-items:center;padding:8px;background:var(--sg-paper);border:1px solid var(--sg-line);border-radius:12px}
.sg-legacy a.tl-time{flex:0 0 auto;min-width:96px;min-height:44px;display:grid;place-items:center;padding:8px 10px;border-radius:9px;background:var(--pale);border:1px solid var(--sg-line);color:var(--blue);font-weight:650;font-size:13px;font-variant-numeric:tabular-nums;text-align:center;text-decoration:none;line-height:1.3}
.sg-legacy a.tl-time:hover,.sg-legacy a.tl-time:focus-visible{background:var(--blue);border-color:var(--blue);color:var(--white)}
.sg-legacy a.tl-time[aria-busy=true]{opacity:.6}
.tl-info{min-width:0;display:flex;flex-direction:column;font-size:12px;line-height:1.45;color:var(--sg-muted)}
.sg-legacy a.tl-practice{color:var(--sg-ink);font-size:14px;font-weight:650;text-decoration:none;overflow-wrap:anywhere}.sg-legacy a.tl-practice:hover{text-decoration:underline}
.tl-where:empty{display:none}.tl-type{overflow-wrap:anywhere}
.tl-more{margin-top:8px}.tl-more summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--blue);padding:8px 0}.tl-more .tl-list{margin-top:4px}
.tl-note{font-size:11px;color:var(--sg-muted);margin:12px 0 0!important}
.sg-legacy a.tl-map{display:inline-block;margin-top:12px;font-size:13px;font-weight:600}
.tl-empty-text{font-size:14px;color:var(--sg-muted)}
/* The ad landing /vrije-tijden (defysioplek_ui/web/ad_landing.py): the list is the page, so it reads
   at body size and stays narrow enough for one thumb on a phone. */
.al{max-width:620px;margin:0 auto}.al-eyebrow{color:var(--blue);font-size:12px;font-weight:650;letter-spacing:.7px;margin:0 0 8px!important;text-transform:uppercase}
.sg-legacy .al h1{margin:0 0 8px;font-size:clamp(28px,5vw,40px)}.al-lead{color:var(--sg-muted);margin:0 0 4px!important}.al .tl{margin-top:16px}
.al .tl-info{font-size:13px}/* One width for every time, so the practices line up in one column whatever the day label. */
.sg-legacy .al a.tl-time{font-size:14px;width:124px}
.al-other{margin:18px 0 0!important;font-size:14px}
/* Phones and narrow tablets: one column, the panel in the reading flow, the CTA in a fixed bar.
   900px matches the search's own phone breakpoint (search-state.ts defaultView). */
@media (max-width:900px){
.cond{display:block}
.cond-side{position:static;max-height:none;display:block}
.cond-panel{overflow:visible;margin:0 0 34px;padding:23px 20px;border-radius:12px}
.sg-legacy .cond-panel h2{font-size:24px;margin-bottom:6px}
.cond-panel>.cond-cta,.cond-panel>.cond-cta-note{display:none!important}
/* The sticky phone button of /voor-praktijken (src/styles/voor-praktijken.css .prac-sticky-cta), same
   rule, here because SEO pages do not load that bundle (Samy, 10 Oct 2026: one sticky banner style). */
.prac-sticky-cta{display:flex;position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:1100;align-items:center;justify-content:center;min-height:56px;padding:0 20px;border-radius:14px;background:var(--amber);color:var(--sg-ink);font-size:16px;font-weight:700;text-decoration:none;box-shadow:0 8px 28px color-mix(in srgb,var(--sg-ink) 25%,transparent)}
.sg-legacy a.cond-bar{flex-direction:column;gap:2px;padding:9px 20px;color:var(--sg-ink);text-align:center;line-height:1.3;text-decoration:none}
.cond-next{font-size:11px;font-weight:500}
/* Room under the footer so its last line is not hidden behind the bar. */
body.sg-page:has(.cond-bar){padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
html:has(.cond-bar){scroll-padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:750px){
.cond-hero{padding:23px 19px;margin-inline:-6px;border-radius:12px}
.sg-legacy .cond-hero h1{font-size:30px;margin-bottom:18px}
.sg-legacy .cond-hero .lead{font-size:16px;line-height:1.65}

.cond-toc{padding-inline:0}.cond-top>section,.cond-bottom>section{padding-inline:0}.cond-top>.src{padding-inline:0}
.cond-safety{padding:23px 20px!important}
}

/* "Klachten en aandoeningen" footer block on condition pages (conditions.footer_block_html). */
.sg-footer .cond-footer{margin-top:22px}.sg-footer .cond-footer h3{margin:0 0 6px;font-size:13px;font-weight:650}.sg-footer .cond-footer-links{display:flex;flex-wrap:wrap;gap:2px 22px;font-size:12px}.sg-footer .cond-footer-links a{display:inline-flex;align-items:center;min-height:44px}
/* Complaint pages (site.collection): the FAQ under the complaint's own copy, the legacy pages' .faq look
   without the legacy wrapper; the "all locations" button under the first cards; the district tiles. */
.sg-faq details{border-top:1px solid var(--sg-line);padding:12px 0}.sg-faq details:last-child{border-bottom:1px solid var(--sg-line)}.sg-faq summary{cursor:pointer;font-weight:650;font-size:15px;min-height:44px;display:flex;align-items:center}.sg-faq p{color:var(--sg-muted);margin:8px 0 4px;max-width:64ch;line-height:1.8}
.sg-more{margin-top:18px}.sg-cross{margin-bottom:10px}
