.professionals-hero{position:relative;padding:58px 0 42px;overflow:hidden}
.professionals-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 10%,rgba(24,169,153,.17),transparent 25rem),radial-gradient(circle at 8% 90%,rgba(7,59,76,.08),transparent 22rem);pointer-events:none}
.professionals-hero .container{position:relative}
.professionals-hero h1{max-width:980px}
.professionals-intro{max-width:930px;margin-top:24px;color:#3e626d;font-size:clamp(1.08rem,1.8vw,1.24rem);line-height:1.75}
.coverage-callout{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;max-width:1000px;margin-top:28px;padding:22px 24px;border:1px solid #bfe7df;border-radius:22px;background:linear-gradient(135deg,rgba(239,252,249,.98),rgba(237,246,255,.92));box-shadow:var(--shadow-sm)}
.coverage-callout-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,var(--navy),var(--teal));box-shadow:0 12px 26px rgba(24,169,153,.22)}
.coverage-callout-icon svg{width:27px}
.coverage-callout strong{display:block;color:var(--navy);font-size:1.05rem}
.coverage-callout p{margin-top:4px;color:#45636c}
.professionals-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.professionals-stat{padding:20px 22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm)}
.professionals-stat strong{display:block;color:var(--navy);font-size:clamp(1.65rem,3vw,2.35rem);line-height:1}
.professionals-stat span{display:block;margin-top:8px;color:var(--muted);font-size:.9rem;font-weight:700}
.professionals-directory{padding:42px 0 92px}
.directory-tools{position:sticky;top:94px;z-index:20;padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 14px 36px rgba(7,59,76,.12);backdrop-filter:blur(14px)}
.directory-search{position:relative}
.directory-search svg{position:absolute;left:16px;top:50%;width:21px;color:var(--teal-dark);transform:translateY(-50%);pointer-events:none}
.directory-search input{height:52px;padding-left:48px;background:#fbffff}
.directory-meta{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:12px;color:var(--muted);font-size:.84rem}
.directory-meta strong{color:var(--navy)}
.specialty-nav{display:flex;gap:8px;margin-top:15px;padding-bottom:4px;overflow-x:auto;scrollbar-width:thin}
.specialty-nav a{flex:0 0 auto;padding:7px 11px;border:1px solid #cfe0e5;border-radius:999px;color:#31545f;background:#fff;font-size:.78rem;font-weight:780;white-space:nowrap}
.specialty-nav a:hover{border-color:var(--teal);color:var(--teal-dark);background:var(--mint)}
.specialties-list{display:grid;gap:24px;margin-top:28px}
.specialty-card{scroll-margin-top:210px;padding:28px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow-sm)}
.specialty-card[hidden]{display:none}
.specialty-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--line)}
.specialty-title-wrap{display:flex;gap:15px;align-items:center}
.specialty-index{width:44px;height:44px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;color:#fff;background:linear-gradient(145deg,var(--navy),var(--teal));font-size:.82rem;font-weight:900}
.specialty-head h2{color:var(--navy);font-size:clamp(1.35rem,2.5vw,1.75rem);line-height:1.2;letter-spacing:-.025em}
.specialty-count{flex:0 0 auto;padding:7px 10px;border-radius:999px;color:var(--teal-dark);background:var(--mint);border:1px solid #ccefe8;font-size:.77rem;font-weight:850}
.professional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px;list-style:none}
.professional-card{display:flex;gap:12px;align-items:center;min-width:0;padding:14px;border:1px solid #e2edef;border-radius:16px;background:#fcffff;transition:transform .18s,border-color .18s,box-shadow .18s}
.professional-card:hover{transform:translateY(-2px);border-color:#b9ddd7;box-shadow:0 10px 24px rgba(7,59,76,.08)}
.professional-card[hidden]{display:none}
.professional-avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:13px;color:var(--teal-dark);background:var(--mint);font-size:.77rem;font-weight:900;letter-spacing:.02em}
.professional-copy{min-width:0}
.professional-name{display:block;color:var(--navy);line-height:1.25;overflow-wrap:anywhere}
.professional-registration{display:block;margin-top:4px;color:var(--muted);font-size:.78rem}
.directory-empty{margin-top:28px;padding:28px;border:1px dashed #aacbd1;border-radius:20px;text-align:center;color:var(--muted);background:#fbffff}
.directory-empty[hidden]{display:none}
.professionals-note{margin-top:30px;padding:20px 22px;border:1px solid #d3e5f7;border-radius:18px;background:var(--blue);color:#31566a;font-size:.9rem}
.professionals-note strong{color:var(--navy)}
@media(max-width:960px){.professional-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.directory-tools{top:84px}}
@media(max-width:650px){.professionals-hero{padding:42px 0 30px}.coverage-callout{grid-template-columns:1fr}.professionals-stats,.professional-grid{grid-template-columns:1fr}.directory-tools{position:static}.directory-meta,.specialty-head{align-items:flex-start;flex-direction:column}.specialty-card{padding:21px 17px}.specialty-title-wrap{align-items:flex-start}.specialty-count{margin-left:59px}}
@media print{.topbar,.header,.directory-tools,.footer,.mi-cookie-banner{display:none!important}.professionals-directory{padding-top:10px}.specialty-card{break-inside:avoid;box-shadow:none}.professional-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){body .header .nav>.button{display:none}}
/* Contenimento delle schede sui viewport mobili molto stretti. */
@media(max-width:650px){.specialties-list,.specialty-card,.specialty-head,.specialty-title-wrap,.professional-grid{min-width:0;max-width:100%}.specialty-card,.specialty-head,.specialty-title-wrap,.professional-grid{width:100%}.specialty-head h2{min-width:0;overflow-wrap:anywhere}}
