/** Neuromed Atelier 2.0.2 — cohesive staff cards & medical page contrast.
 * Presentation only. Source names, source biographies, source photo files and prices unchanged.
 */
:root{--nm202-text:#212326;--nm202-gold:#79551e;--nm202-ivory:#f7f5f0;--nm202-card:#ffffff}

/* All doctors and physiotherapists in a single, even, accessible grid.
 * The old Divi groups must not determine card width or the amount of columns. */
.nm-page-shell--team .nm-team-equal-grid{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:clamp(14px,2vw,26px)!important;align-items:stretch!important;
 margin:clamp(20px,3vw,38px) 0 42px;width:100%;
}
.nm-page-shell--team .nm-team-equal-grid > .nm-team-card{
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 margin:0!important;padding:clamp(18px,2vw,28px)!important;
 border:1px solid #d6cebf!important;background:var(--nm202-card)!important;
 border-radius:14px!important;box-shadow:0 10px 30px rgba(20,20,20,.055)!important;
 min-width:0!important;width:100%!important;height:100%!important;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-import-image{
 width:min(100%,245px)!important;height:auto!important;min-height:0!important;
 max-width:245px!important;aspect-ratio:1!important;
 padding:0!important;margin:0 auto 22px!important;
 display:grid!important;place-items:center!important;overflow:hidden!important;
 border-radius:50%!important;border:1px solid #d4cabb!important;
 background:#f4f1ed!important;box-shadow:none!important;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-import-image img{
 width:100%!important;height:100%!important;max-height:none!important;
 object-fit:contain!important;object-position:center!important;
 border-radius:50%!important;clip-path:none!important;
 border:0!important;padding:0!important;background:#f4f1ed!important;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card :is(h2,h3,h4,h5,h6){
 color:var(--nm202-text)!important;text-shadow:none!important;
 letter-spacing:-.012em;overflow-wrap:normal;word-break:normal;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card :is(h2,h3,h4,h5,h6) *{
 color:inherit!important;text-shadow:none!important;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card h3{
 font:500 clamp(20px,1.8vw,25px)/1.24 Georgia,serif!important;
 min-height:2.55em;margin:0 0 9px!important;text-wrap:balance;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card h4{
 font:750 12px/1.5 system-ui,sans-serif!important;
 min-height:2.9em;letter-spacing:.06em;text-transform:uppercase;
 color:var(--nm202-gold)!important;margin:0 0 14px!important;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card h4 *{color:var(--nm202-gold)!important}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-team-profile-trigger{
 display:flex;justify-content:space-between;align-items:center;
 width:100%;min-height:52px;margin-top:auto;border:1px solid #27282a;
 border-radius:7px;background:#232426;color:#fff;padding:13px 18px;
 font:650 15px/1.35 system-ui,sans-serif;cursor:pointer;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-team-profile-trigger::after{
 content:'↗';color:#e1c68f;font-size:19px;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-team-profile-trigger:hover{
 background:#393a3c;color:#fff;
}
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-team-profile-trigger:focus-visible{
 outline:3px solid #9d702a!important;outline-offset:3px!important;
}
/* Keep the source biography available using native details when JS/dialog is unavailable. */
.nm-page-shell--team .nm-team-equal-grid .nm-team-card .nm-import-accordion{margin-top:auto}

/* Modal is a single predictable reading surface. It never changes grid geometry. */
.nm-team-profile-dialog{
 color:#202224;border:1px solid #c9bda9;border-radius:14px;
 width:min(740px,calc(100vw - 28px));max-height:min(88vh,1000px);
 background:#faf9f6;padding:0;box-shadow:0 28px 110px #0007;
}
.nm-team-profile-dialog::backdrop{background:rgba(13,15,16,.78)}
.nm-team-dialog-layout{display:flex;flex-direction:column;max-height:88vh}
.nm-team-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;
 border-bottom:1px solid #ded4c3;padding:20px clamp(20px,4vw,34px);background:#f1ece3}
.nm-team-profile-dialog .nm-team-dialog-head h2{font:500 clamp(22px,3vw,32px)/1.25 Georgia,serif!important;color:#202224!important;margin:0!important}
.nm-team-dialog-close{min-height:44px;flex:none;border:1px solid #a59780;border-radius:6px;
 padding:8px 14px;background:#fff;color:#202224;cursor:pointer;font-size:14px;font-weight:650}
.nm-team-dialog-close span{font-size:21px;vertical-align:middle}
.nm-team-dialog-content{padding:clamp(22px,4vw,36px);overflow:auto;line-height:1.8;font-size:16px;color:#202224}
.nm-team-dialog-content :is(p,li,span,strong,em){color:#202224!important}
.nm-team-dialog-content :is(h2,h3,h4,h5){color:#202224!important;font-family:Georgia,serif;line-height:1.3}
.nm-team-dialog-content a{color:#60471e;text-decoration:underline;text-underline-offset:3px}
.nm-team-dialog-content ul{padding-left:1.3em}.nm-team-dialog-content li+li{margin-top:7px}
body.nm-team-dialog-open{overflow:hidden}

/* On ultrasound, names also inherit white inline spans from Divi. Explicitly override them. */
.nm-page-shell--ultrasound .nm-legacy-fallback .nm-import-column :is(h2,h3,h4,h5),
.nm-page-shell--ultrasound .nm-legacy-fallback .nm-import-column :is(h2,h3,h4,h5) :is(span,strong,em,a),
.nm-page-shell--ultrasound .nm-legacy-fallback .nm-import-column .nm-import-module :is(h2,h3,h4,h5) *{
 color:#202224!important;text-shadow:none!important;
}
/* Original dark-banded price headings were overridden by the later generic page h3 rule. */
.nm-page-shell--prices .nm-page-article .nm18-price-division-bar h3,
.nm-page-shell--prices .nm-page-article .nm18-price-division-bar h3 *{
 color:#fff!important;text-shadow:none!important;
}
.nm-page-shell--prices .nm-page-article .nm18-price-division-bar > span{color:#e2c18a!important}
@media(max-width:1050px){.nm-page-shell--team .nm-team-equal-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:650px){
 .nm-page-shell--team .nm-team-equal-grid{grid-template-columns:minmax(0,1fr)!important;gap:18px!important}
 .nm-page-shell--team .nm-team-equal-grid > .nm-team-card{padding:22px!important}
 .nm-page-shell--team .nm-team-equal-grid .nm-team-card h3{min-height:0}
 .nm-team-dialog-head{align-items:start;flex-direction:column}
 .nm-team-dialog-close{align-self:flex-end}
 .nm-team-dialog-content{padding:20px}
}
@media(prefers-reduced-motion:reduce){
 .nm-team-profile-dialog *, .nm-team-equal-grid *{animation:none!important;transition:none!important}
}
