/* Desktop review: compact equal captions, with type sized to fit the longest names. */
.team-review .doc .cap{height:100px;padding:10px 12px;display:flex;flex-direction:column;justify-content:center;gap:4px;color:#fff}
.team-review .doc .cap b{font-size:16px;line-height:1.2;text-wrap:balance}
.team-review .doc .cap>span{margin:0;font-size:12.5px;line-height:1.3;text-wrap:balance}
.team-review .doc .cap>b,.team-review .doc .cap>span{flex:none}
.team-review .doc .cap .nw{display:inline;white-space:normal;font:inherit;line-height:inherit;margin:0}
.team-review .doc .open{width:36px;height:36px;padding:0;gap:0;display:grid;place-items:center;border-radius:50%;overflow:hidden}
@media(max-width:900px){.team-review .doc .open{width:38px;height:38px}}
/* Preserve the close control inside the dialog, independent of biography length. */
#docModal .doctor-dialog{position:relative;width:min(980px,100%);max-height:calc(100dvh - 48px);overflow:hidden;border-radius:30px;background:#241C16}
#docModal .doctor-dialog-chrome{height:60px;display:flex;align-items:center;justify-content:flex-end;padding:8px 14px;border-bottom:1px solid var(--wline)}
#docModal .doctor-dialog-chrome .m-close{position:static}
#docModal .m-card{width:100%;height:calc(100dvh - 108px);max-height:780px;overflow:hidden;border-radius:0;transform:none}
#docModal .m-card .ph{position:relative;min-height:0;height:100%;align-self:stretch}
#docModal .m-card .tx{min-height:0;overflow:auto;overscroll-behavior:contain}
#docModal .m-card .edu{white-space:pre-line}
@media(max-width:900px){
 #docModal .doctor-dialog{width:100%;max-height:92dvh;border-radius:28px 28px 0 0}
 #docModal .m-card{display:block;height:auto;max-height:calc(92dvh - 60px);overflow:auto}
 #docModal .m-card .ph{height:min(84vw,400px);min-height:0}
 #docModal .m-card .tx{overflow:visible}
 #docModal .m-card::before{display:none}
}

/* Functional additions absent from the static mockup. */
[hidden]{display:none!important}
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.wall-grid .m-x{display:flex!important}
.wall-grid .clinic-mark{width:24px;height:27px;flex:none;color:var(--brown)}
.form-status.is-error{margin-top:12px;color:#FFD8C5}
.form .btn:disabled{cursor:wait;opacity:.65}
footer .logo{display:inline-flex;align-items:center;gap:10px}
footer .logo svg{width:28px;height:32px;flex:none}
footer .logo span{white-space:nowrap}
html.a11y .doc .cap{position:relative;inset:auto;background:var(--night)}
html.a11y .doc{aspect-ratio:auto}
html.a11y .doc>img{height:260px}
html.a11y .team-review .doc .cap{height:auto;min-height:100px;padding:16px}
html.a11y .team-review .doc .cap b{font-size:var(--body)}
html.a11y .team-review .doc .cap>span{font-size:var(--small)}

/* Keep every clinic label within its tile, including long city names. */
#clinics .lg,#clinics .lg>div{min-width:0;max-width:100%}
#clinics .lg b,#clinics .lg span{max-width:100%;overflow-wrap:anywhere;text-wrap:balance}
/* The team stays behind the desktop pricing copy as a soft photograph. */
@media(min-width:901px){#pricing>.pbg img{filter:blur(6px);transform:scale(1.025)}}
