:root{--ink:#163b3a;--muted:#68807d;--green:#0b7a75;--green2:#18a29a;--mint:#dff7f2;--cream:#f7fbfa;--line:#dcebe8;--white:#fff;--shadow:0 18px 50px rgba(18,59,58,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.narrow{width:min(790px,100%)}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid rgba(220,235,232,.75)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{height:44px;width:auto}.nav nav{display:flex;gap:8px}.nav nav a{text-decoration:none;font-weight:750;padding:10px 14px;border-radius:12px;transition:.2s}.nav nav a:hover{background:var(--mint);transform:translateY(-1px)}.nav-toggle{display:none}.reading-progress{position:fixed;left:0;top:0;height:3px;background:linear-gradient(90deg,var(--green),#64d5c7);width:0;z-index:100}.hero{position:relative;overflow:hidden;padding:90px 0 70px;background:radial-gradient(circle at 85% 10%,#d5fbf3 0,transparent 34%),linear-gradient(180deg,#fbfffe,#f1faf8)}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center}.eyebrow,.section-kicker{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--green)}h1,h2,h3{line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(2.6rem,5vw,5.3rem);margin:.35em 0 .2em}.page-hero h1{font-size:clamp(2.25rem,4vw,4rem)}h2{font-size:clamp(1.7rem,3vw,3rem)}.lead{font-size:1.18rem;color:#4b6966}.hero-search{display:grid;grid-template-columns:1fr 1fr auto;background:#fff;padding:8px;border-radius:18px;box-shadow:var(--shadow);margin-top:26px}.hero-search input{border:0;padding:16px;font-size:1rem;outline:0;border-right:1px solid var(--line)}button,.button{background:var(--green);color:#fff;border:0;border-radius:12px;padding:14px 18px;font-weight:850;cursor:pointer;text-decoration:none;display:inline-block;transition:.2s}.button.secondary{background:#fff;color:var(--green)}button:hover,.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(11,122,117,.2)}.trust-row{display:flex;flex-wrap:wrap;gap:15px;margin-top:20px;color:#54716f;font-weight:700;font-size:.92rem}.hero-card{position:relative;padding:30px;background:rgba(255,255,255,.88);border:1px solid #d7ebe7;border-radius:28px;box-shadow:var(--shadow);transform:rotate(1deg)}.hero-card:hover{transform:rotate(0) translateY(-4px)}.pulse-dot{width:13px;height:13px;background:#23b990;border-radius:50%;box-shadow:0 0 0 0 rgba(35,185,144,.6);animation:pulse 2s infinite}.mini-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--green)}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.metric-grid div{padding:16px;background:#f2fbf9;border-radius:16px}.metric-grid b,.metric-grid span{display:block}.metric-grid span{font-size:.83rem;color:var(--muted);margin-top:4px}.quick-actions,.content-section{padding:78px 0}.action-grid,.cards,.info-grid,.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.action-card,.card,.info-card,.partner-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(18,59,58,.05);transition:.25s}.action-card{text-decoration:none}.action-card:hover,.card:hover,.partner-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:#b8dcd6}.action-card>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--mint);font-size:1.35rem}.data-story{padding:90px 0;background:#102f2e;color:#ecfffb}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.source-stack{display:grid;gap:12px}.source-pill{background:rgba(255,255,255,.08);padding:18px 20px;border:1px solid rgba(255,255,255,.12);border-radius:18px;display:flex;justify-content:space-between;gap:20px;transition:.2s}.source-pill:hover{background:rgba(255,255,255,.13);transform:translateX(6px)}.source-pill span{color:#b9d6d1}.text-link{font-weight:850;color:#86e8d9}.editorial-cta{padding:70px 0}.cta-panel{padding:34px;border-radius:28px;background:linear-gradient(135deg,#0b7a75,#135a57);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.subscribe-band{padding:30px 0;background:#e7faf6;border-top:1px solid var(--line)}.subscribe-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:center}.subscribe-form{display:flex;gap:8px}.subscribe-form input{flex:1;padding:15px 16px;border:1px solid #bcded8;border-radius:12px}.latest-strip{padding:70px 0;background:#f7fbfa}.latest-strip .cards{grid-template-columns:repeat(3,1fr)}.post-card{padding:0;overflow:hidden}.post-card img{width:100%;height:190px;object-fit:cover}.card-body{padding:20px}.card-body h2,.card-body h3{margin:.35em 0}.card-body a{text-decoration:none}.card-body time,.post-meta{font-size:.82rem;color:var(--muted);font-weight:750}.site-footer{background:#0e2a29;color:#c9ddda;padding-top:55px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid a{text-decoration:none;color:#c9ddda}.footer-grid a:hover{color:#fff}.footer-logo{width:210px;filter:brightness(0) invert(1)}.footer-bottom{margin-top:40px;border-top:1px solid rgba(255,255,255,.1);padding:18px 0;color:#8eb0ab;font-size:.85rem}.page-hero.compact{padding:70px 0;background:linear-gradient(180deg,#f1faf8,#fff)}.notice,.success,.error{padding:15px 18px;border-radius:14px;margin:20px 0}.notice{background:#eef8ff}.success{background:#e6fff4}.error{background:#fff0f0}.form-card,.code-box{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow)}label{display:block;font-weight:750;margin-bottom:15px}input,textarea,select{font:inherit}.form-card input,.form-card textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #cfe1de;border-radius:10px}.honeypot{position:absolute;left:-9999px}.partner-grid{grid-template-columns:repeat(3,1fr)}.partner-logo{height:130px;display:grid;place-items:center;margin-bottom:15px}.partner-logo img{max-height:100px;max-width:80%;object-fit:contain}.prose h2{margin-top:2em}.article-head{padding:70px 0 25px;background:#f6fbfa}.featured{border-radius:24px;margin-top:28px;max-height:480px;width:100%;object-fit:cover}.article-layout{display:grid;grid-template-columns:150px minmax(0,760px);gap:35px;justify-content:center;padding:45px 0 70px}.share-rail{position:sticky;top:100px;align-self:start;display:flex;flex-direction:column;gap:8px}.share-rail a,.share-rail button{font-size:.85rem;text-decoration:none;padding:10px 12px;border-radius:10px;background:#eef8f6;color:var(--ink);border:0;text-align:left}.article-body{font-size:1.08rem}.article-body h2{margin-top:1.8em}.article-body img{border-radius:16px}.citation-box,.source-note{margin-top:38px;padding:20px;border-radius:16px;background:#f2faf8;border:1px solid var(--line)}.empty-state{padding:30px;border:1px dashed #bad6d1;border-radius:18px;background:#fbfefe}.code-box{overflow:auto;margin-bottom:24px}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.45}.orb-a{width:220px;height:220px;background:#a2f2e3;right:-50px;top:40px}.orb-b{width:130px;height:130px;background:#bfe7ff;left:-40px;bottom:10px}@keyframes pulse{70%{box-shadow:0 0 0 15px rgba(35,185,144,0)}100%{box-shadow:0 0 0 0 rgba(35,185,144,0)}}@media(max-width:900px){.hero-grid,.data-grid,.subscribe-grid{grid-template-columns:1fr}.hero-search{grid-template-columns:1fr}.hero-search input{border-right:0;border-bottom:1px solid var(--line)}.action-grid,.info-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.nav-toggle{display:block;background:transparent;color:var(--ink);box-shadow:none}.nav nav{display:none;position:absolute;top:78px;left:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;flex-direction:column;box-shadow:var(--shadow)}.nav nav.open{display:flex}.article-layout{grid-template-columns:1fr}.share-rail{position:static;flex-direction:row;flex-wrap:wrap}}@media(max-width:620px){.wrap{width:min(100% - 24px,1180px)}.hero{padding-top:55px}.metric-grid,.action-grid,.info-grid,.partner-grid,.latest-strip .cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.subscribe-form,.cta-panel{flex-direction:column;align-items:stretch}.cta-panel{display:flex}.hero-card{transform:none}h1{font-size:2.65rem}}
/* V0.2 — territoires & data engine */
.territory-kpis{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.territory-kpis>div{min-width:160px;padding:16px 18px;border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 8px 24px rgba(18,59,58,.05)}.territory-kpis b,.territory-kpis span{display:block}.territory-kpis b{font-size:1.35rem}.territory-kpis span{font-size:.82rem;color:var(--muted);margin-top:2px}.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.city-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.2s}.city-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b8dcd6}.city-card span,.city-card small,.muted{color:var(--muted)}.soft{background:#f7fbfa}.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.region-card{display:flex;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}.region-card span{color:var(--muted)}.health-dashboard{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:30px}.metric-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.metric-cards>div{padding:20px;border-radius:18px;background:#f3fbf9;border:1px solid var(--line)}.metric-cards span,.metric-cards b{display:block}.metric-cards span{font-size:.85rem;color:var(--muted)}.metric-cards b{font-size:2rem;margin-top:4px}.info-grid.three{grid-template-columns:repeat(3,1fr)}.health-side{display:flex;flex-direction:column;gap:14px}.status-card,.source-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(18,59,58,.04)}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:7px}.status-dot.ok{background:#1dae7a}.status-dot.wait{background:#e4a83b}.search-results,.result-block{display:grid;gap:22px}.result-block+.result-block{margin-top:34px;padding-top:34px;border-top:1px solid var(--line)}
@media(max-width:900px){.city-grid{grid-template-columns:repeat(2,1fr)}.region-grid{grid-template-columns:repeat(2,1fr)}.health-dashboard{grid-template-columns:1fr}.metric-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.city-grid,.region-grid,.metric-cards,.info-grid.three{grid-template-columns:1fr}.territory-kpis{display:grid;grid-template-columns:1fr 1fr}.territory-kpis>div{min-width:0}}


/* V0.8 — UX, maillage territorial et visualisation data */
.breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:18px 0 0;font-size:.84rem;color:var(--muted)}.breadcrumbs a{color:var(--green);text-decoration:none;font-weight:750}.breadcrumbs strong{color:#59716f;font-weight:750}.live-head{display:flex;align-items:center;gap:10px}.live-card{transform:none}.live-metrics b{font-size:1.4rem}.micro-note{font-size:.82rem;color:var(--muted);margin:16px 0 0}.region-link{text-decoration:none;align-items:center;transition:.2s}.region-link:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#b8dcd6}.region-card div{display:flex;flex-direction:column;gap:4px}.region-card small{color:var(--muted)}.city-hero{position:relative;overflow:hidden}.data-card strong{font-size:2rem;color:var(--green)}.comparison-list{display:grid;gap:14px;margin:22px 0}.comparison-row{display:grid;grid-template-columns:minmax(180px,.7fr) 1.3fr;gap:22px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.comparison-label strong,.comparison-label span{display:block}.comparison-label span{color:var(--muted);font-size:.85rem;margin-top:4px}.bar-pair{display:grid;gap:8px}.bar-pair>div{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:10px;font-size:.78rem;color:var(--muted)}.bar-pair i{display:block;height:10px;min-width:6px;border-radius:99px;background:linear-gradient(90deg,#0b7a75,#25b997)}.bar-pair .benchmark i{background:#c9d9d6}.comparison-list.large .comparison-row{padding:22px;background:#fbfefd;border:1px solid var(--line);border-radius:18px}.nearby-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.nearby-list a{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;background:#fff}.nearby-list span{color:var(--muted);font-size:.82rem;text-align:right}.widget-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.practitioner-card h3{margin-bottom:.4rem}.health-main>h2{margin-top:2.2em}.health-main>h2:first-child{margin-top:0}.source-card p:last-child{margin-bottom:0}
@media(max-width:900px){.comparison-row{grid-template-columns:1fr}.widget-grid{grid-template-columns:1fr}.nearby-list{grid-template-columns:1fr}}
@media(max-width:620px){.bar-pair>div{grid-template-columns:80px 1fr}.nearby-list a{flex-direction:column}.nearby-list span{text-align:left}}

/* V0.9 — recherche instantanée, cartes, comparaison, sitemaps */
.autocomplete-form .autocomplete-shell,.compare-form .autocomplete-shell{position:relative;min-width:0}.autocomplete-form.hero-search{align-items:stretch}.autocomplete-form.hero-search .autocomplete-shell input{width:100%;height:100%;border:0;border-right:1px solid var(--line);border-radius:0}.autocomplete-results{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:80;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 55px rgba(18,59,58,.16);padding:6px;max-height:360px;overflow:auto}.autocomplete-results[hidden]{display:none}.autocomplete-item{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;padding:11px 12px;border:0;border-radius:11px;background:#fff;color:var(--ink);box-shadow:none;cursor:pointer}.autocomplete-item:hover,.autocomplete-item:focus{background:var(--mint);transform:none}.autocomplete-item span{display:flex;flex-direction:column;min-width:0}.autocomplete-item b{font-size:.94rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-item small{font-size:.76rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-item em{font-style:normal;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--green);font-weight:800;background:#edf9f6;padding:4px 7px;border-radius:999px}.map-section{padding:18px 0 12px}.health-map{height:420px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#eef9f6,#eaf4f7);box-shadow:var(--shadow)}.health-map.map-failed:after{content:'Carte temporairement indisponible';display:grid;place-items:center;height:100%;color:var(--muted);font-weight:700}.leaflet-container{font-family:inherit}.compare-form{display:grid;grid-template-columns:1fr auto 1fr auto;gap:12px;align-items:center;margin-top:24px}.compare-form input{width:100%;padding:16px;border:1px solid var(--line);border-radius:14px;font:inherit;background:#fff}.compare-vs{font-size:.75rem;font-weight:900;letter-spacing:.08em;color:var(--muted)}.compare-head-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px}.compare-city-card{padding:24px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,#fff,#f5fbf9)}.compare-city-card span,.compare-city-card strong,.compare-city-card a{display:block}.compare-city-card span{color:var(--muted);font-size:.82rem}.compare-city-card h2{margin:.35rem 0}.compare-city-card strong{font-size:1.2rem}.compare-city-card a{margin-top:14px;color:var(--green);font-weight:800;text-decoration:none}.compare-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;margin:20px 0 34px}.compare-table{width:100%;border-collapse:collapse;background:#fff}.compare-table th,.compare-table td{padding:15px 18px;border-bottom:1px solid var(--line);text-align:left}.compare-table th{background:#f4fbf9;font-size:.82rem;color:var(--muted)}.compare-table tr:last-child td{border-bottom:0}.compare-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}.compare-metric-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}.compare-metric-card h3{margin-top:0}.compare-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.compare-two>div{padding:12px;border-radius:12px;background:#f6fbfa}.compare-two strong,.compare-two span{display:block}.compare-two span{font-size:.82rem;color:var(--muted);margin-top:4px}.compare-band{padding-bottom:0}.compare-cta{background:linear-gradient(145deg,#fff,#f3fbf9)}
@media(max-width:900px){.autocomplete-form.hero-search .autocomplete-shell input{border-right:0;border-bottom:1px solid var(--line)}.compare-form{grid-template-columns:1fr}.compare-vs{text-align:center}.compare-head-grid,.compare-metrics{grid-template-columns:1fr}.health-map{height:360px}}
@media(max-width:620px){.health-map{height:320px;border-radius:16px}.compare-two{grid-template-columns:1fr}.autocomplete-item em{display:none}}

/* V1.1 — surcouche visuelle & éditoriale */
:root{--ink:#0d3433;--muted:#5d7673;--green:#087a74;--green2:#0fb29f;--aqua:#8de6d7;--mint:#e4faf5;--ice:#eff8fb;--sand:#fff9f1;--line:#d5e8e4;--shadow-lg:0 30px 80px rgba(10,57,55,.16);--shadow-md:0 16px 45px rgba(10,57,55,.10)}
body{background:linear-gradient(180deg,#fff 0,#fbfefd 38%,#fff 100%)}
.site-header{background:rgba(255,255,255,.82);box-shadow:0 1px 0 rgba(15,83,79,.06)}
.nav{height:84px}.brand img{height:47px}.nav nav a{padding:11px 13px}
.hero.v11-hero{min-height:720px;padding:84px 0 80px;background:linear-gradient(125deg,#f3fffc 0%,#eff9fb 52%,#fff8ef 100%)}
.v11-hero .hero-grid{grid-template-columns:1.03fr .97fr;gap:54px}.v11-hero h1{font-size:clamp(3.25rem,6.4vw,6.6rem);max-width:880px;line-height:.96;letter-spacing:-.055em}.hero-accent{color:var(--green2);position:relative}.hero-accent:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:10px;border-radius:99px;background:linear-gradient(90deg,#7ee8d4,#f3ca78);opacity:.65;transform:rotate(-1.5deg)}
.hero-copy{position:relative;z-index:3}.hero-copy .lead{max-width:720px;font-size:1.2rem}.hero-trust{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 0}.hero-trust span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(8,122,116,.12);font-size:.82rem;font-weight:800;color:#3b615e}
.hero-visual{position:relative;min-height:550px}.hero-photo-main{position:absolute;inset:0 0 50px 55px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow-lg);transform:rotate(1.1deg)}.hero-photo-main img{width:100%;height:100%;object-fit:cover}.hero-photo-main:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(8,58,55,.25))}.floating-stat{position:absolute;z-index:4;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.8);border-radius:20px;padding:16px 18px;box-shadow:0 14px 40px rgba(18,59,58,.14);animation:v11float 6s ease-in-out infinite}.floating-stat b,.floating-stat span{display:block}.floating-stat b{font-size:1.35rem}.floating-stat span{font-size:.76rem;color:var(--muted)}.floating-a{left:0;bottom:88px}.floating-b{right:-18px;top:52px;animation-delay:-2.5s}.floating-c{right:24px;bottom:4px;animation-delay:-4s}.hero-search{border:1px solid rgba(8,122,116,.10);box-shadow:0 24px 64px rgba(12,72,68,.14)}
.v11-strip{padding:22px 0;border-top:1px solid #e8f1ef;border-bottom:1px solid #e8f1ef;background:#fff}.v11-strip-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.v11-strip-grid div{padding:16px 18px;border-radius:16px;background:#f7fbfa}.v11-strip-grid b,.v11-strip-grid span{display:block}.v11-strip-grid b{font-size:1.1rem}.v11-strip-grid span{font-size:.76rem;color:var(--muted)}
.bento-section{padding:96px 0}.bento-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-auto-rows:minmax(210px,auto);gap:18px}.bento-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:28px;padding:30px;background:#fff;box-shadow:0 12px 35px rgba(12,60,57,.06);transition:.3s}.bento-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.bento-card.large{grid-row:span 2;background:linear-gradient(145deg,#0b6762,#0c8b81);color:#fff}.bento-card.soft-green{background:linear-gradient(145deg,#e7faf5,#f9fffd)}.bento-card.soft-blue{background:linear-gradient(145deg,#eef7fb,#fff)}.bento-card.soft-sand{background:linear-gradient(145deg,#fff8eb,#fff)}.bento-card .big-number{font-size:clamp(2.5rem,4vw,4.8rem);font-weight:900;letter-spacing:-.05em}.bento-card p{color:inherit;opacity:.86}.bento-card .text-link{color:inherit}.bento-orb{position:absolute;width:190px;height:190px;border-radius:50%;right:-70px;bottom:-70px;background:rgba(255,255,255,.12)}
.visual-story{padding:100px 0;background:#0b302e;color:#f2fffc}.visual-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.visual-story-media{position:relative}.visual-story-media img{border-radius:30px;box-shadow:0 30px 80px rgba(0,0,0,.28)}.visual-story-media:before{content:"";position:absolute;inset:-18px 32px 28px -18px;border:1px solid rgba(122,231,210,.35);border-radius:32px;z-index:0}.visual-story-media img{position:relative;z-index:1}.visual-story .eyebrow,.visual-story .section-kicker{color:#7fe1d1}.visual-story p{color:#c6dfda}.source-ribbon{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.source-ribbon span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:.78rem;font-weight:800}
.editorial-rich{padding:90px 0}.editorial-rich-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.prose-card{padding:32px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 12px 35px rgba(12,60,57,.05)}.prose-card h2{margin-top:0}.prose-card ul{padding-left:20px}.seo-copy{font-size:1.02rem;color:#355654}.seo-copy h2{color:var(--ink);margin-top:1.8em}.seo-copy h3{color:var(--ink);margin-top:1.5em}.seo-copy p{max-width:82ch}
.page-hero.compact{position:relative;overflow:hidden;padding:82px 0 72px;background:radial-gradient(circle at 85% 20%,rgba(116,229,210,.25),transparent 28%),linear-gradient(180deg,#f3fbf9,#fff)}.page-hero.compact:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-120px;bottom:-160px;background:rgba(183,227,246,.25)}.page-hero.compact .wrap{position:relative;z-index:2}.page-hero.compact h1{max-width:980px}
.territory-kpis>div{border:1px solid #d3e6e2;background:rgba(255,255,255,.9);box-shadow:0 12px 32px rgba(18,59,58,.07);transition:.25s}.territory-kpis>div:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.info-card,.city-card,.region-card,.status-card,.source-card{border-color:#d7e8e5;box-shadow:0 10px 28px rgba(18,59,58,.055)}.info-card:hover,.city-card:hover,.region-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:#9dd8ce}.health-main>h2{position:relative;padding-top:.2em}.health-main>h2:after{content:"";display:block;width:54px;height:5px;border-radius:99px;background:linear-gradient(90deg,var(--green2),#82ded1);margin-top:12px}
.public-data-note{padding:18px 20px;border-radius:18px;background:linear-gradient(145deg,#f3fbf9,#fff);border:1px solid var(--line);color:#486764}.city-intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin:22px 0 10px}.insight-card{padding:24px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(145deg,#fff,#f7fcfb)}.insight-card strong{font-size:1.25rem}.freshness-card{padding:22px;border-radius:20px;background:#0d3836;color:#eafffb}.freshness-card p{color:#bcd6d1}.freshness-list{display:grid;gap:8px;margin-top:14px}.freshness-list span{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.09);font-size:.82rem}.freshness-list span:last-child{border-bottom:0}
.site-footer{background:radial-gradient(circle at 15% 0,rgba(32,155,143,.18),transparent 26%),#082b2a}.footer-logo{width:230px;filter:none}.subscribe-band{padding:55px 0;background:linear-gradient(120deg,#e7faf5,#eef9fb 60%,#fff8ed);border-top:1px solid var(--line)}.subscribe-band h2{margin:.2em 0}.footer-grid a{transition:.2s}.footer-grid a:hover{transform:translateX(3px)}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.reveal-delay-1{transition-delay:.08s}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}
@keyframes v11float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media(max-width:1050px){.v11-hero .hero-grid,.visual-story-grid,.editorial-rich-grid{grid-template-columns:1fr}.hero-visual{min-height:480px}.hero-photo-main{inset:0 35px 35px 35px}.bento-grid{grid-template-columns:1fr 1fr}.bento-card.large{grid-row:auto;grid-column:span 2}.v11-strip-grid{grid-template-columns:repeat(3,1fr)}.city-intro-grid{grid-template-columns:1fr}}
@media(max-width:700px){.hero.v11-hero{min-height:auto;padding-top:54px}.v11-hero h1{font-size:3.15rem}.hero-visual{min-height:380px}.hero-photo-main{inset:0 0 30px 0;border-radius:24px}.floating-stat{padding:12px 14px}.floating-b{right:0}.floating-a{left:8px}.floating-c{display:none}.bento-grid{grid-template-columns:1fr}.bento-card.large{grid-column:auto}.v11-strip-grid{grid-template-columns:1fr 1fr}.visual-story{padding:70px 0}.editorial-rich{padding:65px 0}.footer-logo{width:210px}}

/* =========================================================
   V1.2 — surcouche publique, inspirée des annuaires santé modernes
   ========================================================= */
:root{--v12-ink:#103c39;--v12-teal:#0b8c82;--v12-teal-2:#15a99b;--v12-soft:#f3fbf9;--v12-blue:#eef8fb;--v12-sand:#fff7ec;--v12-shadow:0 18px 55px rgba(18,59,58,.10)}
body{background:#fff;color:var(--v12-ink)}
.site-header{background:rgba(255,255,255,.94);box-shadow:0 8px 28px rgba(16,60,57,.05)}
.nav{height:72px}.brand img{height:42px}.nav nav a{font-weight:800}
.v12-hero{padding:62px 0 46px;background:linear-gradient(180deg,#f5fcfa 0%,#fff 100%);border-bottom:1px solid #e7f0ee}.v12-hero>.wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:52px;align-items:center}.v12-hero h1{font-size:clamp(3rem,5.8vw,5.8rem);line-height:.98;margin:.25em 0 .22em;max-width:900px}.v12-hero .lead{max-width:760px;font-size:1.16rem}.v12-search{display:grid;grid-template-columns:1fr 1fr auto;gap:0;margin-top:28px;background:#fff;border:1px solid #d8e8e5;border-radius:18px;padding:8px;box-shadow:0 20px 50px rgba(18,59,58,.10)}.v12-search .autocomplete-shell{padding:4px 12px}.v12-search label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#6c8682;margin:0 0 2px}.v12-search input{width:100%;border:0;outline:0;padding:8px 0;font-size:1rem;background:transparent}.v12-search .autocomplete-shell+ .autocomplete-shell{border-left:1px solid #e4eeec}.v12-search button{align-self:stretch;padding-inline:24px}.v12-trust{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;color:#54716f;font-size:.84rem;font-weight:750}.v12-hero-media{position:relative;border-radius:28px;overflow:visible}.v12-hero-media img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:28px;box-shadow:0 28px 70px rgba(18,59,58,.18);border:1px solid rgba(11,140,130,.12)}.v12-media-chip{position:absolute;right:-18px;bottom:22px;background:#fff;padding:14px 18px;border-radius:16px;box-shadow:0 12px 35px rgba(18,59,58,.16);border:1px solid #e1eeeb}.v12-media-chip b,.v12-media-chip span{display:block}.v12-media-chip b{font-size:1.18rem}.v12-media-chip span{font-size:.76rem;color:var(--muted)}
.v12-metrics{padding:20px 0;background:#fff}.v12-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.v12-metrics-grid>div{padding:18px 20px;border:1px solid #e0ece9;border-radius:16px;background:#fbfefd}.v12-metrics-grid b,.v12-metrics-grid span{display:block}.v12-metrics-grid b{font-size:1.25rem}.v12-metrics-grid span{font-size:.78rem;color:#6a827e;margin-top:3px}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.section-head h2{margin:.25em 0 0}.v12-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.v12-category-grid a{display:grid;grid-template-columns:48px 1fr;grid-template-rows:auto auto;padding:20px;border:1px solid #dcebe8;border-radius:20px;text-decoration:none;background:#fff;transition:.2s}.v12-category-grid a>span{grid-row:1/3;width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#e8f8f5;font-size:1.25rem}.v12-category-grid strong{font-size:1rem}.v12-category-grid small{color:var(--muted)}.v12-category-grid a:hover{transform:translateY(-4px);box-shadow:var(--v12-shadow);border-color:#b9ddd7}
.v12-story{padding:82px 0;background:#0e3734;color:#f2fffc}.v12-story-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}.v12-story-media img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:26px;box-shadow:0 26px 70px rgba(0,0,0,.24)}.v12-story h2{color:#fff}.v12-story p{color:#cae0dc}.v12-source-list{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0}.v12-source-list>div{padding:13px 14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.06)}.v12-source-list b,.v12-source-list span{display:block}.v12-source-list span{font-size:.78rem;color:#b9d5d0;margin-top:2px}.v12-story .button{background:#fff;color:#0d5d57}
.v12-city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.v12-city-grid a{padding:17px 18px;border:1px solid #dcebe8;border-radius:16px;background:#fff;text-decoration:none}.v12-city-grid strong,.v12-city-grid span,.v12-city-grid small{display:block}.v12-city-grid span{font-size:.82rem;margin-top:4px}.v12-city-grid small{font-size:.75rem;color:var(--muted);margin-top:2px}.v12-city-grid a:hover{border-color:#9fd6cf;box-shadow:0 12px 30px rgba(18,59,58,.07)}
.v12-two-col{display:grid;grid-template-columns:1fr 1fr;gap:46px}.v12-faq details{border:1px solid #dcebe8;border-radius:16px;background:#fff;margin-bottom:10px;padding:0 16px}.v12-faq summary{cursor:pointer;font-weight:850;padding:16px 0}.v12-faq p{margin:0 0 16px;color:#4d6d69}
.v12-page-hero{background:linear-gradient(180deg,#f6fcfa,#fff)!important}.compact-lead{max-width:900px}.button.ghost{background:#eff9f7;color:#0b766f;box-shadow:none}.button.ghost:hover{background:#ddf2ee}
.directory-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:20px}.directory-toolbar h2{margin:.2em 0 0}.practitioner-list{display:grid;gap:10px}.practitioner-row{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:16px;align-items:center;padding:18px 20px;border:1px solid #dcebe8;border-radius:17px;background:#fff;transition:.18s}.practitioner-row:hover{border-color:#b5ddd7;box-shadow:0 10px 30px rgba(18,59,58,.07);transform:translateY(-1px)}.practitioner-avatar{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#dff7f2,#eef8fb);color:#0b7a75;font-weight:900;font-size:1.15rem}.practitioner-core h3{margin:0 0 3px;font-size:1.02rem}.practitioner-core p{margin:0}.practitioner-structure{font-size:.84rem;font-weight:750;color:#41635f}.practitioner-address{font-size:.85rem;color:#718783}.practitioner-meta{text-align:right}.practitioner-meta small{display:block;color:#839691;margin-top:4px}.soft-badge{display:inline-block;padding:6px 9px;border-radius:999px;background:#eef8f6;color:#2f625d;font-size:.72rem;font-weight:800}.pagination{display:flex;justify-content:space-between;align-items:center;padding:22px 0}.pagination a{display:inline-block;margin-left:8px;padding:9px 12px;border:1px solid #d8e8e5;border-radius:10px;text-decoration:none;font-weight:800}.v12-seo-box{margin-top:40px;padding:28px;border-radius:20px;background:#f8fcfb;border:1px solid #e2eeec}.v12-seo-box h2{margin-top:0}
.v12-partners{grid-template-columns:repeat(3,1fr)}.v12-partners .partner-card{padding:0;overflow:hidden}.v12-partners .partner-logo{height:230px;margin:0;padding:24px;background:#fbfefd;border-bottom:1px solid #e3eeec}.v12-partners .partner-logo img{max-width:94%;max-height:180px;width:auto;height:auto;object-fit:contain}.partner-card-body{padding:22px}
/* neutralise le format vertical forcé de la V1.1 */
.hero-photo-main,.visual-story-media{height:auto}.hero-photo-main img,.visual-story-media img{aspect-ratio:16/9!important;height:auto!important;object-fit:cover!important}.visual-story-media{align-self:center}
@media(max-width:1000px){.v12-hero>.wrap,.v12-story-grid,.v12-two-col{grid-template-columns:1fr}.v12-hero-media{max-width:840px}.v12-category-grid{grid-template-columns:repeat(2,1fr)}.v12-city-grid{grid-template-columns:repeat(3,1fr)}.v12-partners{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.v12-hero{padding-top:42px}.v12-hero h1{font-size:2.7rem}.v12-search{grid-template-columns:1fr}.v12-search .autocomplete-shell+.autocomplete-shell{border-left:0;border-top:1px solid #e4eeec}.v12-metrics-grid,.v12-category-grid,.v12-city-grid,.v12-source-list,.v12-partners{grid-template-columns:1fr}.v12-media-chip{right:10px}.directory-toolbar{align-items:stretch;flex-direction:column}.practitioner-row{grid-template-columns:44px 1fr}.practitioner-meta{grid-column:2;text-align:left}.section-head{align-items:flex-start;flex-direction:column}}

/* =========================================================
   V1.3 — navigation praticiens + fiches établissements lisibles
   ========================================================= */
.practitioner-tools{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:end;margin:22px 0 20px;padding:22px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,#f4fbf9);box-shadow:0 14px 34px rgba(15,71,67,.07)}
.practitioner-search label,.alphabet-wrap>span{display:block;font-weight:900;color:var(--ink);margin-bottom:9px}.practitioner-search-row{display:flex;gap:10px}.practitioner-search-row input{min-width:0;flex:1;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit;color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.practitioner-search-row button,.compact-button{white-space:nowrap}.compact-button{padding:12px 14px}.alphabet-nav{display:flex;flex-wrap:wrap;gap:7px}.alphabet-nav a{display:grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:.79rem;font-weight:900;text-decoration:none;transition:.18s ease}.alphabet-nav a:hover,.alphabet-nav a.active{background:var(--green);border-color:var(--green);color:#fff;transform:translateY(-1px)}.alphabet-nav a.disabled{opacity:.3;pointer-events:none}.directory-results-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0 12px}.directory-results-head strong{font-size:1.08rem}.view-switch{display:inline-flex;border:1px solid var(--line);border-radius:12px;padding:4px;background:#f4f9f8}.view-switch button{border:0;background:transparent;color:var(--muted);box-shadow:none;padding:8px 13px;border-radius:9px;font-weight:800;cursor:pointer}.view-switch button.active{background:#fff;color:var(--ink);box-shadow:0 4px 12px rgba(13,61,57,.08)}.practitioner-map-panel{margin:14px 0 24px}.practitioner-map-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:14px}.practitioner-map-intro h3{margin:.2rem 0 .35rem}.practitioner-map-intro p{margin:0;color:var(--muted);max-width:760px}.map-count{display:inline-flex;align-items:center;border-radius:999px;padding:8px 12px;background:#ecf8f5;color:var(--green);font-weight:900;font-size:.78rem}.practitioner-results-map{height:520px}.practitioner-row{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.practitioner-row:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(15,71,67,.08);border-color:#b8ddd6}

.establishment-anchor-band{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.establishment-anchor-nav{display:flex;gap:8px;overflow:auto;padding-top:10px;padding-bottom:10px;scrollbar-width:none}.establishment-anchor-nav::-webkit-scrollbar{display:none}.establishment-anchor-nav a{white-space:nowrap;text-decoration:none;color:var(--ink);font-weight:800;font-size:.82rem;padding:8px 11px;border-radius:999px}.establishment-anchor-nav a:hover{background:var(--mint);color:var(--green)}.establishment-page{padding-top:36px}.establishment-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:34px;align-items:start}.establishment-main{min-width:0}.establishment-side{display:grid;gap:16px}.sticky-source-card{position:sticky;top:78px}.establishment-hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.strong-badge{background:var(--green);color:#fff;border-color:var(--green)}.establishment-section{scroll-margin-top:92px;margin-bottom:42px;padding-bottom:34px;border-bottom:1px solid var(--line)}.establishment-section:last-child{border-bottom:0}.establishment-section h2{margin:.22rem 0 .55rem;font-size:clamp(1.7rem,3vw,2.4rem)}.establishment-section h3{margin-top:24px}.section-intro{max-width:840px;color:var(--muted);font-size:1rem;line-height:1.75}.practical-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.practical-item{padding:19px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#fff,#f3fbf9);min-width:0}.practical-item.wide{grid-column:span 2}.practical-item span,.practical-item strong,.practical-item small{display:block}.practical-item span{font-size:.78rem;color:var(--muted);margin-bottom:8px}.practical-item strong{font-size:1.06rem;line-height:1.45;overflow-wrap:anywhere}.practical-item a{display:inline-block;margin-top:8px;color:var(--green);font-weight:800;text-decoration:none}.mono-value{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.015em}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.activity-card{display:flex;gap:14px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}.activity-card h3{margin:0 0 6px;font-size:1rem}.activity-card p{margin:0;color:var(--muted)}.activity-icon{flex:0 0 38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--mint);color:var(--green);font-size:1.4rem;font-weight:900}.quality-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.quality-summary>div{padding:17px;border-radius:17px;background:#f3fbf9;border:1px solid var(--line)}.quality-summary span,.quality-summary strong{display:block}.quality-summary span{font-size:.78rem;color:var(--muted);margin-bottom:6px}.quality-summary strong{line-height:1.35}.soft-notice{background:#f7fbfa}.quality-list{display:grid;gap:10px}.quality-list article{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:#fff}.quality-list h4{margin:3px 0;font-size:.96rem}.quality-list p{margin:4px 0 0;color:var(--muted)}.quality-list strong{font-size:1.12rem;color:var(--green);text-align:right}.sae-public-group{margin-top:24px}.sae-public-group>h3{font-size:1.05rem;margin:0 0 10px}.sae-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sae-public-grid article{padding:17px;border:1px solid var(--line);border-radius:17px;background:#fff}.sae-public-grid span,.sae-public-grid strong,.sae-public-grid p{display:block}.sae-public-grid span{font-weight:850}.sae-public-grid strong{font-size:1.55rem;color:var(--green);margin:5px 0}.sae-public-grid p{font-size:.86rem;color:var(--muted);line-height:1.55;margin:0}.establishment-professionals-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.establishment-professionals-list article{display:flex;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:15px;background:#fff}.establishment-professionals-list strong,.establishment-professionals-list span{display:block}.establishment-professionals-list span{font-size:.8rem;color:var(--muted);margin-top:2px}.source-card ul{margin:.6rem 0 0;padding-left:1.1rem}.source-card li{margin:.45rem 0;line-height:1.5}.source-card a{color:var(--green);font-weight:800}.glossary-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:30px;align-items:start}.glossary-index{position:sticky;top:88px;display:flex;flex-wrap:wrap;gap:7px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#f6fbfa}.glossary-index a{padding:7px 9px;border-radius:9px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:.78rem;font-weight:850}.glossary-index a:hover{background:var(--mint);color:var(--green)}.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.glossary-grid article{scroll-margin-top:92px;padding:21px;border:1px solid var(--line);border-radius:18px;background:#fff}.glossary-grid h2{font-size:1.2rem;margin:0 0 8px}.glossary-grid p{margin:0;color:var(--muted);line-height:1.7}
@media(max-width:900px){.practitioner-tools,.establishment-layout,.glossary-layout{grid-template-columns:1fr}.practical-grid,.quality-summary,.activity-grid,.sae-public-grid,.establishment-professionals-list,.glossary-grid{grid-template-columns:1fr}.practical-item.wide{grid-column:auto}.sticky-source-card,.glossary-index{position:static}.practitioner-map-intro{align-items:flex-start;flex-direction:column}.practitioner-search-row{flex-wrap:wrap}.practitioner-search-row input{flex-basis:100%}.establishment-anchor-band{position:static}}
@media(max-width:600px){.directory-results-head{align-items:flex-start;flex-direction:column}.view-switch{width:100%}.view-switch button{flex:1}.alphabet-nav a{min-width:31px;height:31px}.practitioner-results-map{height:420px}.quality-list article{align-items:flex-start;flex-direction:column}.quality-list strong{text-align:left}}

/* =========================================================
   V1.4 — pharmacies / garde
   ========================================================= */
.pharmacy-hero{background:linear-gradient(135deg,#f2fffb 0%,#ffffff 58%,#eef8ff 100%)}
.pharmacy-search{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;max-width:900px;margin-top:24px}.pharmacy-search input,.pharmacy-mini-search input{padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;font:inherit;color:var(--ink)}
.pharmacy-trust{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.pharmacy-trust span{padding:8px 11px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.8rem;font-weight:800;color:var(--muted)}
.pharmacy-guard-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.guard-card{padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 44px rgba(15,71,67,.07)}.guard-card.primary{background:linear-gradient(145deg,#073f3b,#0b655e);color:#fff;border:0}.guard-card.primary .section-kicker,.guard-card.primary small{color:#b9f4e8}.guard-card.primary p{color:#e5fffa}.guard-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.guard-card.primary .button.ghost,.guard-cta-band .button.ghost{border-color:rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.08)}
.pharmacy-city-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.pharmacy-city-grid a{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff;text-decoration:none;color:var(--ink);transition:.18s ease}.pharmacy-city-grid a:hover{transform:translateY(-2px);border-color:#b8ddd6;box-shadow:0 12px 26px rgba(15,71,67,.08)}.pharmacy-city-grid a span,.pharmacy-city-grid a small{color:var(--muted)}.pharmacy-city-grid a b{color:var(--green)}
.pharmacy-home-band{background:linear-gradient(110deg,#073f3b,#0d746b);color:#fff}.pharmacy-home-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:center}.pharmacy-home-grid p{color:#d7f7f1;max-width:720px}.pharmacy-home-stats{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.pharmacy-home-stats span{display:flex;gap:6px;align-items:baseline}.pharmacy-home-stats b{font-size:1.25rem}.pharmacy-mini-search{display:grid;gap:10px;padding:22px;border-radius:20px;background:#fff;color:var(--ink)}.pharmacy-mini-search label{font-weight:900}.pharmacy-mini-search a{color:var(--green);font-weight:800;text-decoration:none}
.guard-cta-band{background:#073f3b;color:#fff;padding:18px 0}.guard-cta-band .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}.guard-cta-band strong,.guard-cta-band span{display:block}.guard-cta-band span{color:#c8eee8;margin-top:4px}
.pharmacy-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.pharmacy-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.18s ease}.pharmacy-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,71,67,.08)}.pharmacy-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#e5f8f3;color:var(--green);font-weight:1000;font-size:1.3rem}.pharmacy-core h3{margin:0 0 7px;font-size:1.05rem}.pharmacy-core p{margin:0 0 6px;color:var(--muted);line-height:1.55}.pharmacy-core small{color:var(--muted)}.pharmacy-actions{display:flex;flex-direction:column;gap:7px;align-items:stretch}.pharmacy-actions a,.pharmacy-actions button{border:1px solid var(--line);background:#f7fbfa;color:var(--ink);border-radius:10px;padding:8px 10px;text-decoration:none;font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}.pharmacy-actions a:hover,.pharmacy-actions button:hover{background:var(--mint);color:var(--green)}.pharmacy-map{height:560px;margin-top:14px}
@media(max-width:900px){.pharmacy-guard-grid,.pharmacy-home-grid{grid-template-columns:1fr}.pharmacy-city-grid,.pharmacy-list{grid-template-columns:1fr}.pharmacy-search{grid-template-columns:1fr}.guard-cta-band .wrap{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.pharmacy-card{grid-template-columns:40px 1fr}.pharmacy-actions{grid-column:2;flex-direction:row;flex-wrap:wrap}.pharmacy-map{height:420px}}

/* V1.4.5 — UX pharmacies */
.pharmacy-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:end;margin:18px 0 10px;padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#fff,#f4fbf9)}
.pharmacy-filter-shell{display:flex;flex-direction:column;gap:7px;color:var(--ink);font-size:.78rem;font-weight:850}.pharmacy-filter-shell input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit;color:var(--ink);outline:none}.pharmacy-filter-shell input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(19,143,127,.10)}
.pharmacy-near-me{white-space:nowrap}.pharmacy-reset{border:0;background:transparent;color:var(--green);font:inherit;font-size:.82rem;font-weight:850;cursor:pointer;padding:12px}.pharmacy-status{min-height:1.2em;margin:0 0 10px}.pharmacy-inline-meta{display:flex;align-items:center;gap:8px;margin:.35rem 0 .45rem;font-weight:750;color:var(--ink)}.pharmacy-inline-meta a{color:var(--green);text-decoration:none}.pharmacy-inline-meta a:hover{text-decoration:underline}.pharmacy-address{margin-bottom:4px!important}.pharmacy-actions button{min-width:155px}.pharmacy-card[hidden]{display:none!important}
@media(max-width:760px){.pharmacy-toolbar{grid-template-columns:1fr}.pharmacy-near-me,.pharmacy-reset{width:100%}.pharmacy-actions button{min-width:0;width:100%}}

/* =========================================================
   V1.5 — Editorial / annuaire / territoires / établissements
   ========================================================= */
.subscribe-grid-v15{grid-template-columns:1.05fr .95fr}.subscribe-grid-v15 h2{font-size:clamp(2rem,3.4vw,3.35rem);max-width:760px}.subscribe-reassurance{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.subscribe-reassurance span{background:#fff;border:1px solid #cce7e1;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:800;color:#37625e}.subscribe-form-v15{display:grid;grid-template-columns:.7fr 1fr auto;align-items:start}.subscribe-form-v15 input{min-width:0}.subscribe-form-v15 small{grid-column:1/-1;color:#66817d;font-size:.7rem;line-height:1.45;margin-top:2px}.confirm-subscription-v15{text-align:center}.confirm-perks{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin:22px 0 30px}.confirm-perks span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 13px;font-weight:800;font-size:.84rem;box-shadow:0 8px 22px rgba(18,59,58,.06)}

.annuaire-hero-v15{background:radial-gradient(circle at 82% 20%,rgba(107,230,210,.22),transparent 28%),linear-gradient(180deg,#effbf8,#fff)}.annuaire-paths-v15{padding-top:52px}.annuaire-path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.annuaire-path{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:18px;min-height:310px;padding:28px;border-radius:26px;text-decoration:none;border:1px solid var(--line);box-shadow:0 14px 35px rgba(18,59,58,.07);transition:.25s}.annuaire-path:before{content:'';position:absolute;right:-45px;top:-45px;width:150px;height:150px;border-radius:50%;opacity:.34}.annuaire-path.pro{background:linear-gradient(145deg,#effcf7,#dff8ef)}.annuaire-path.pro:before{background:#5bd8b0}.annuaire-path.estab{background:linear-gradient(145deg,#f1f7ff,#e1efff)}.annuaire-path.estab:before{background:#7fb8ff}.annuaire-path.territory{background:linear-gradient(145deg,#fff7ec,#ffedcf)}.annuaire-path.territory:before{background:#ffb759}.annuaire-path:hover{transform:translateY(-7px);box-shadow:0 22px 48px rgba(18,59,58,.13)}.annuaire-path-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:rgba(255,255,255,.82);font-size:1.8rem;box-shadow:0 10px 24px rgba(18,59,58,.08)}.annuaire-path h2{font-size:1.55rem;margin:.25rem 0 .65rem}.annuaire-path p{color:#506c69}.annuaire-path strong{display:block;margin-top:auto;color:var(--green)}

.territory-hero-v15{background:radial-gradient(circle at 90% 20%,rgba(101,207,196,.23),transparent 30%),linear-gradient(180deg,#f0faf7,#fff)}.territory-launchpad-v15{padding:46px 0 22px}.territory-launch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.territory-launch{display:flex;gap:18px;align-items:flex-start;padding:24px;border-radius:22px;text-decoration:none;border:1px solid var(--line);transition:.22s;box-shadow:0 10px 25px rgba(18,59,58,.05)}.territory-launch>span{font-size:2rem}.territory-launch small{color:var(--green);text-transform:uppercase;font-weight:900;letter-spacing:.09em}.territory-launch h2{font-size:1.35rem;margin:.25rem 0 .5rem}.territory-launch p{margin:0;color:#5b7471}.territory-launch.one{background:#edfaf6}.territory-launch.two{background:#eef5ff}.territory-launch.three{background:#fff7e8}.territory-launch:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.city-grid-v15 .city-card-v15{position:relative;padding:20px;background:linear-gradient(145deg,#fff,#f6fbfa)}.city-card-v15:after{content:'→';position:absolute;right:16px;top:16px;color:var(--green);font-weight:900}.city-card-v15 small b{color:var(--ink)}.section-intro{max-width:520px;color:var(--muted)}.region-grid-v15{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.region-card-v15{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:20px;border-radius:20px;text-decoration:none;border:1px solid var(--line);overflow:hidden;transition:.22s}.region-card-v15:before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--accent,#31b9a5)}.region-card-v15.tone-1{--accent:#1ca78f;background:#eefaf7}.region-card-v15.tone-2{--accent:#5a8ee6;background:#f1f6ff}.region-card-v15.tone-3{--accent:#e6a03b;background:#fff8ed}.region-card-v15.tone-4{--accent:#9b72d2;background:#faf5ff}.region-card-v15:hover{transform:translateX(5px);box-shadow:0 14px 32px rgba(18,59,58,.08)}.region-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff;font-size:1.35rem}.region-card-copy strong,.region-card-copy small{display:block}.region-card-copy small{color:#667d79}.region-card-metrics{display:flex;gap:14px}.region-card-metrics span{display:block;color:#607874;font-size:.78rem}.region-card-metrics b{display:block;color:var(--ink);font-size:.98rem}.region-card-v15 em{font-style:normal;color:var(--green);font-weight:900;display:none}

.establishments-hero-v15{background:radial-gradient(circle at 87% 15%,rgba(92,184,255,.18),transparent 28%),linear-gradient(180deg,#f2fafb,#fff)}.establishment-intro-v15{padding:58px 0}.establishment-intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:34px;align-items:start}.seo-copy-top-v15{margin-top:0}.seo-copy-top-v15 h2{margin-top:.25em}.establishment-search-card-v15{position:sticky;top:104px;padding:26px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(145deg,#eefaf7,#fff);box-shadow:0 18px 45px rgba(18,59,58,.08)}.establishment-search-card-v15 h3{font-size:1.45rem;margin:.3rem 0 1rem}.establishment-search-form-v15{display:grid;gap:10px}.establishment-search-form-v15 input{width:100%;padding:14px;border:1px solid #c7dfdb;border-radius:12px;background:#fff}.establishment-search-card-v15>p{color:#607874;font-size:.85rem}.regions-shortcuts-v15{padding:58px 0}.region-shortcut-grid-v15{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.region-shortcut-v15{--accent:#1ca78f;display:grid;grid-template-columns:38px 1fr;gap:10px;padding:16px;border-radius:16px;text-decoration:none;border:1px solid var(--line);background:#fff;transition:.2s}.region-shortcut-v15.tone-2{--accent:#5a8ee6}.region-shortcut-v15.tone-3{--accent:#e6a03b}.region-shortcut-v15.tone-4{--accent:#9b72d2}.region-shortcut-v15>span{font-size:1.3rem}.region-shortcut-v15 strong,.region-shortcut-v15 small{display:block}.region-shortcut-v15 small{font-size:.73rem;color:#67807c;margin-top:3px}.region-shortcut-v15 em{grid-column:2;font-style:normal;color:var(--accent);font-size:.76rem;font-weight:900}.region-shortcut-v15:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(18,59,58,.07)}.results-counter-v15{padding:7px 10px;border-radius:999px;background:#eef8f6;color:#55716e;font-size:.78rem;font-weight:800}.establishment-city-card-v15{position:relative;padding:20px 22px}.establishment-city-card-v15 .city-card-icon-v15{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e8f6ff;margin-bottom:12px}.establishment-city-card-v15 h3{margin:.2rem 0}.establishment-city-card-v15 em{display:block;margin-top:10px;font-style:normal;color:var(--green);font-weight:900}.pagination-v15{display:flex;align-items:center;justify-content:center;gap:14px;margin:32px 0 54px}.pagination-v15 a,.pagination-v15 span{padding:10px 14px;border:1px solid var(--line);border-radius:11px;text-decoration:none;background:#fff;font-weight:800}.pagination-v15 a:hover{background:var(--mint)}

@media(max-width:950px){.annuaire-path-grid,.territory-launch-grid,.region-shortcut-grid-v15{grid-template-columns:1fr}.region-grid-v15{grid-template-columns:1fr}.establishment-intro-grid{grid-template-columns:1fr}.establishment-search-card-v15{position:static}.subscribe-form-v15{grid-template-columns:1fr}.subscribe-form-v15 small{grid-column:auto}.region-card-metrics{display:none}.region-card-v15 em{display:block}.region-card-v15{grid-template-columns:48px 1fr auto}}

/* V1.6 — SEO éditorial, widgets & partage */
.seo-lead-v16{padding-top:44px;padding-bottom:32px}.seo-lead-v16 .seo-copy{padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,#fff,#f4fbf9);box-shadow:0 12px 32px rgba(18,59,58,.055)}.seo-lead-v16 .seo-copy h2{margin-top:.45rem}.seo-lead-v16 .seo-copy p{font-size:1.01rem;line-height:1.82;color:#496764}.about-hero-v16{background:radial-gradient(circle at 86% 18%,rgba(90,216,195,.2),transparent 28%),linear-gradient(180deg,#effbf8,#fff)}
.reach-share{padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f6fbfa}.reach-share-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.reach-share-inner strong{display:block;font-size:1.15rem;margin:.15rem 0}.reach-share-inner p{margin:0;color:var(--muted)}.reach-share-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.reach-share-actions a,.reach-share-actions button{appearance:none;border:1px solid #cfe2de;background:#fff;color:var(--ink);border-radius:999px;padding:10px 14px;text-decoration:none;font:inherit;font-size:.82rem;font-weight:850;cursor:pointer;transition:.18s}.reach-share-actions a:hover,.reach-share-actions button:hover{transform:translateY(-2px);background:var(--mint);color:var(--green)}
.authority-box{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px;align-items:center;margin:38px 0;padding:28px;border-radius:24px;background:linear-gradient(135deg,#0b4e49,#0b7a75);color:#fff;box-shadow:0 18px 44px rgba(9,73,69,.16)}.authority-box h2{color:#fff;margin:.35rem 0 .7rem}.authority-box p{color:#d8f1ed;line-height:1.65}.authority-box .section-kicker{color:#79ead6}.authority-code{min-width:0}.authority-code textarea{width:100%;height:150px;resize:vertical;border:1px solid rgba(255,255,255,.3);border-radius:14px;padding:14px;background:rgba(255,255,255,.1);color:#fff;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.authority-code button{margin-top:10px;border:0;border-radius:12px;padding:11px 15px;background:#fff;color:#0b5d56;font-weight:900;cursor:pointer}.authority-code small{display:block;margin-top:9px;color:#cfeae5}.authority-code code{color:#fff}.widget-demo-grid-v16{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.widget-demo-card-v16{padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.widget-demo-card-v16 h3{margin-top:0}.share-rail a[href*="wa.me"]{background:#edf9f2}
@media(max-width:900px){.authority-box{grid-template-columns:1fr}.reach-share-inner{align-items:flex-start;flex-direction:column}.reach-share-actions{justify-content:flex-start}.widget-demo-grid-v16{grid-template-columns:1fr}}

/* V1.7 — intégration & partage plus éditoriaux */
.authority-wrap-v17{max-width:1440px;margin:38px auto;padding:0 20px}.authority-box-v17{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px;align-items:stretch;padding:26px;border:1px solid #cfe5e1;border-radius:26px;background:linear-gradient(135deg,#f5fcfa 0%,#ffffff 52%,#eef9f6 100%);box-shadow:0 18px 50px rgba(13,67,64,.09);position:relative;overflow:hidden}.authority-box-v17:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(37,185,151,.15),rgba(37,185,151,0));left:-70px;top:-90px;pointer-events:none}.authority-intro-v17{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;position:relative}.authority-icon-v17{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,#0b7a75,#23b996);display:grid;place-items:center;color:#fff;font:900 17px/1 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:0 12px 26px rgba(11,122,117,.22)}.authority-intro-v17 h2{margin:.25rem 0 .55rem;font-size:clamp(1.55rem,2.6vw,2.25rem);color:var(--ink)}.authority-intro-v17 p{margin:0;color:var(--muted);line-height:1.65}.authority-badges-v17{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.authority-badges-v17 span{font-size:.77rem;font-weight:850;color:#126b63;background:#e7f8f3;border:1px solid #c9ebe2;border-radius:999px;padding:7px 10px}.authority-code-v17{min-width:0;background:#103d3a;border-radius:20px;padding:18px;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.authority-code-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:10px}.authority-code-head strong{font-size:.95rem}.authority-code-head span{font-size:.72rem;color:#bde0db;background:#ffffff10;border:1px solid #ffffff20;padding:5px 8px;border-radius:999px}.authority-code-v17 textarea{width:100%;height:112px;resize:vertical;border:1px solid #ffffff2c;border-radius:13px;padding:12px;background:#082f2d;color:#e9fffa;font:11px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:inset 0 0 0 1px #0001}.authority-code-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}.authority-code-actions button{border:0;border-radius:11px;padding:10px 14px;background:#fff;color:#0b5f58;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(0,0,0,.12)}.authority-code-actions a{color:#bff4e9;font-weight:800;text-decoration:none;font-size:.84rem}.authority-code-v17 small{display:block;color:#afd0ca;margin-top:10px;font-size:.72rem}.reach-share-v17{padding:20px 0 30px;background:transparent;border:0}.share-card-v17{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 22px;border:1px solid #d5e8e4;border-radius:22px;background:linear-gradient(135deg,#fff,#f2faf8);box-shadow:0 12px 34px rgba(15,71,67,.07)}.share-copy-v17{display:flex;gap:14px;align-items:center;min-width:260px}.share-icon-v17{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:#e1f7f1;color:#0b7a75;font-size:1.35rem;font-weight:900}.share-copy-v17 strong{display:block;font-size:1.05rem}.share-copy-v17 p{margin:3px 0 0;color:var(--muted);font-size:.84rem}.reach-share-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.reach-share-actions a,.reach-share-actions button{display:inline-flex;align-items:center;gap:7px;border:1px solid #d2e5e1;border-radius:999px;padding:9px 12px;background:#fff;color:var(--ink);font-size:.78rem;font-weight:850;text-decoration:none;cursor:pointer;transition:.18s ease}.reach-share-actions a:hover,.reach-share-actions button:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(15,71,67,.1);border-color:#b8dcd5}.reach-share-actions span{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#edf6f4;font-size:.72rem}.share-whatsapp span{background:#ddf7e7;color:#198c48}.share-facebook span{background:#e9f0ff;color:#2d63b5}.share-linkedin span{background:#e5f4fb;color:#1675a5}.share-email span{background:#fff0df;color:#b36b13}.share-copy span{background:#e9f7f4;color:#0b7a75}
@media(max-width:900px){.authority-box-v17{grid-template-columns:1fr}.share-card-v17{align-items:flex-start;flex-direction:column}.reach-share-actions{justify-content:flex-start}.authority-wrap-v17{padding:0 14px}}
@media(max-width:600px){.authority-intro-v17{grid-template-columns:1fr}.authority-icon-v17{width:48px;height:48px}.reach-share-actions a,.reach-share-actions button{padding:8px 10px}.share-copy-v17{min-width:0}}

/* =========================================================
   V2.0 — SEO Growth / hubs / spécialités / outils
   ========================================================= */
.v20-hub-hero,.v20-specialty-hero,.v20-category-hero,.v20-tools-hero{background:
 radial-gradient(circle at 88% 12%,rgba(52,211,153,.18),transparent 28%),
 linear-gradient(135deg,#f4fbfa 0%,#fff 58%,#eef8f7 100%)}
.v20-hub-search{display:flex;gap:10px;max-width:760px;margin-top:24px;padding:8px;border:1px solid var(--line);background:#fff;border-radius:16px;box-shadow:0 12px 30px rgba(13,61,58,.08)}
.v20-hub-search input{flex:1;min-width:0;border:0;background:transparent;padding:12px 14px;font:inherit;outline:0}.v20-hub-search button{border:0;background:var(--green);color:#fff;border-radius:11px;padding:0 20px;font-weight:850;cursor:pointer}
.v20-city-list{display:grid;gap:10px}.v20-city-list>a{display:grid;grid-template-columns:minmax(220px,1.7fr) minmax(120px,.55fr) minmax(120px,.55fr);align-items:center;gap:18px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:var(--ink);transition:.18s ease}.v20-city-list>a:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(15,71,67,.08);border-color:#9fd8cf}.v20-city-list strong{font-size:1.03rem}.v20-city-list span,.v20-city-list small{display:block;color:var(--muted);margin-top:3px}.v20-city-list b{font-size:1.05rem;color:var(--green)}
.v20-territory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v20-territory-grid>a{display:flex;flex-direction:column;gap:7px;padding:20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fcfb);color:var(--ink);text-decoration:none;transition:.18s ease}.v20-territory-grid>a:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(15,71,67,.09)}.v20-territory-grid strong{font-size:1.05rem}.v20-territory-grid span{color:var(--muted);font-size:.88rem}.v20-territory-grid b{color:var(--green);font-size:1.12rem}
.v20-specialty-grid,.v20-category-grid,.v20-chip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v20-specialty-grid>a,.v20-category-grid>a,.v20-chip-grid>a{padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:var(--ink);transition:.18s ease}.v20-specialty-grid>a:hover,.v20-category-grid>a:hover,.v20-chip-grid>a:hover{background:#f0fbf8;border-color:#8fd3c8;transform:translateY(-2px)}.v20-specialty-grid strong,.v20-category-grid strong,.v20-chip-grid strong{display:block;font-size:1rem}.v20-specialty-grid span,.v20-category-grid span,.v20-chip-grid span{display:block;color:var(--green);font-weight:800;margin-top:7px}.v20-specialty-grid small,.v20-category-grid small{display:block;color:var(--muted);margin-top:4px}.v20-category-chips{grid-template-columns:repeat(2,minmax(0,1fr))}
.v20-color-card:nth-child(4n+1){background:linear-gradient(145deg,#ecfbf7,#fff)}.v20-color-card:nth-child(4n+2){background:linear-gradient(145deg,#eef6ff,#fff)}.v20-color-card:nth-child(4n+3){background:linear-gradient(145deg,#fff7eb,#fff)}.v20-color-card:nth-child(4n){background:linear-gradient(145deg,#f8f0ff,#fff)}
.v20-inline-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.v20-spaced{margin-top:42px}.v20-category-map{height:430px;margin-bottom:26px}
.v20-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.v20-tool-grid>a{position:relative;overflow:hidden;padding:28px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#fff,#f4fbfa);text-decoration:none;color:var(--ink);min-height:255px;transition:.2s ease}.v20-tool-grid>a:before{content:"";position:absolute;right:-35px;top:-45px;width:150px;height:150px;border-radius:50%;background:rgba(45,196,165,.11)}.v20-tool-grid>a:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(15,71,67,.12)}.v20-tool-grid>a>span{font-size:2rem}.v20-tool-grid h2{font-size:1.35rem;margin:20px 0 12px}.v20-tool-grid p{color:var(--muted);line-height:1.65}.v20-tool-grid strong{color:var(--green)}
.v20-geo-status{min-height:28px;margin-top:15px;font-weight:800;color:var(--green)}.v20-geo-status.error{color:#9b2c2c}.v20-near-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.v20-seo-audit{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.v20-seo-audit>div{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.v20-seo-audit b{display:block;font-size:1.45rem;color:var(--green)}
@media(max-width:980px){.v20-territory-grid,.v20-specialty-grid,.v20-category-grid,.v20-chip-grid,.v20-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v20-city-list>a{grid-template-columns:1fr 120px 120px}}
@media(max-width:680px){.v20-hub-search{flex-direction:column}.v20-hub-search button{padding:12px}.v20-territory-grid,.v20-specialty-grid,.v20-category-grid,.v20-chip-grid,.v20-tool-grid{grid-template-columns:1fr}.v20-city-list>a{grid-template-columns:1fr}.v20-category-chips{grid-template-columns:1fr}.v20-seo-audit{grid-template-columns:1fr 1fr}}

/* =========================================================
   COMPARATEUR — cacher les conteneurs autocomplete vides
   ========================================================= */

.search-suggestions:empty,
.autocomplete-results:empty,
.autocomplete-list:empty,
[data-autocomplete-results]:empty {
    display: none !important;
}

/* Supprime aussi les cadres vides sous les champs */
.search-suggestions,
.autocomplete-results,
.autocomplete-list,
[data-autocomplete-results] {
    border: 0;
    min-height: 0;
    padding: 0;
    margin: 0;
}

/* Réaffiche uniquement lorsqu'il y a du contenu */
.search-suggestions:not(:empty),
.autocomplete-results:not(:empty),
.autocomplete-list:not(:empty),
[data-autocomplete-results]:not(:empty) {
    display: block;
    margin-top: 6px;
    border: 1px solid rgba(20, 90, 80, .18);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(20, 70, 65, .10);
    overflow: hidden;
    position: relative;
    z-index: 30;
}

/* =========================================================
   MAGAZINE V2 — grille éditoriale compacte
   ========================================================= */

.magazine-grid-v2{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    align-items:stretch;
}

.magazine-card-v2{
    display:flex;
    flex-direction:column;
    min-width:0;
    background:#fff;
    border:1px solid rgba(11,91,82,.15);
    border-radius:18px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(10,55,51,.06);
    transition:
        transform .2s ease,
        box-shadow .2s ease,
        border-color .2s ease;
}

.magazine-card-v2:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 38px rgba(10,55,51,.12);
    border-color:rgba(11,139,126,.32);
}

.magazine-card-v2 .magazine-thumb{
    display:block;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#edf7f5;
}

.magazine-card-v2 .magazine-thumb img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .35s ease;
}

.magazine-card-v2:hover .magazine-thumb img{
    transform:scale(1.035);
}

.magazine-card-v2 .magazine-body{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:20px;
}

.magazine-card-v2 .magazine-meta{
    display:flex;
    flex-wrap:wrap;
    gap:8px 12px;
    margin-bottom:10px;
    font-size:12px;
    color:#60817d;
}

.magazine-card-v2 h2,
.magazine-card-v2 h3{
    margin:0 0 10px;
    font-size:22px;
    line-height:1.12;
    letter-spacing:-.025em;
}

.magazine-card-v2 h2 a,
.magazine-card-v2 h3 a{
    color:var(--ink);
    text-decoration:none;
}

.magazine-card-v2 h2 a:hover,
.magazine-card-v2 h3 a:hover{
    color:var(--green);
}

.magazine-card-v2 .magazine-excerpt{
    margin:0 0 16px;
    font-size:14px;
    line-height:1.55;
    color:#476763;

    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.magazine-card-v2 .magazine-read{
    margin-top:auto;
    font-weight:800;
    font-size:14px;
    color:var(--green);
    text-decoration:none;
}

.magazine-card-v2 .magazine-read:hover{
    text-decoration:underline;
}

.magazine-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin:48px 0 16px;
}

.magazine-pagination a,
.magazine-pagination span{
    display:inline-flex;
    min-width:42px;
    height:42px;
    align-items:center;
    justify-content:center;
    padding:0 13px;
    border-radius:12px;
    border:1px solid rgba(11,91,82,.18);
    background:#fff;
    color:var(--ink);
    font-weight:800;
    text-decoration:none;
}

.magazine-pagination a:hover{
    background:#e8f7f4;
    border-color:#82d3c8;
}

.magazine-pagination .current{
    background:var(--green);
    color:#fff;
    border-color:var(--green);
}

@media(max-width:900px){
    .magazine-grid-v2{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:620px){
    .magazine-grid-v2{
        grid-template-columns:1fr;
        gap:18px;
    }

    .magazine-card-v2 h2,
    .magazine-card-v2 h3{
        font-size:20px;
    }
}

/* =========================================================
   MAGAZINE — VERSION COMPACTE TYPE GRILLE EDITORIALE
   ========================================================= */

.magazine-grid-v2{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    align-items:start;
}

.magazine-card-v2{
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid #cfe2df;
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 4px 14px rgba(10,55,51,.04);
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.magazine-card-v2:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 20px rgba(10,55,51,.08);
    border-color:#9bcfc8;
}

.magazine-card-v2 .magazine-thumb{
    display:block;
    width:100%;
    aspect-ratio:16 / 8.2;
    overflow:hidden;
    background:#edf7f5;
}

.magazine-card-v2 .magazine-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.magazine-card-v2 .magazine-body{
    padding:13px 14px 15px;
    display:block;
}

.magazine-card-v2 .magazine-meta{
    display:block;
    margin:0 0 7px;
    font-size:10px;
    line-height:1.3;
    color:#6a817e;
    text-transform:none;
}

.magazine-card-v2 .magazine-meta span:first-child{
    display:none;
}

.magazine-card-v2 h2,
.magazine-card-v2 h3{
    margin:0 0 8px;
    font-size:15px;
    line-height:1.2;
    letter-spacing:-.01em;
    font-weight:800;
}

.magazine-card-v2 h2 a,
.magazine-card-v2 h3 a{
    color:#073d39;
    text-decoration:none;
}

.magazine-card-v2 h2 a:hover,
.magazine-card-v2 h3 a:hover{
    color:#088e80;
}

.magazine-card-v2 .magazine-excerpt{
    margin:0;
    font-size:12px;
    line-height:1.55;
    color:#476763;

    display:-webkit-box;
    -webkit-line-clamp:6;
    -webkit-box-orient:vertical;
    overflow:hidden;
}

.magazine-card-v2 .magazine-read{
    display:none !important;
}

/* cartes plus petites sur écran large */
@media(min-width:1100px){
    .magazine-grid-v2{
        max-width:980px;
        margin-left:auto;
        margin-right:auto;
    }
}

/* tablette */
@media(max-width:900px){
    .magazine-grid-v2{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

/* mobile */
@media(max-width:620px){
    .magazine-grid-v2{
        grid-template-columns:1fr;
        gap:14px;
    }

    .magazine-card-v2 h2,
    .magazine-card-v2 h3{
        font-size:16px;
    }

    .magazine-card-v2 .magazine-excerpt{
        font-size:13px;
    }
}
/* === SANTE-PRATICIENS V2.1 — AUTEURS / E-E-A-T === */
.magazine-grid-authors-v21{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.magazine-card-author-v21{border-radius:14px;overflow:hidden}.magazine-card-author-v21 .magazine-body{padding:14px;display:flex;flex-direction:column;min-height:235px}.magazine-meta-v21{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:12px;color:#647b78}.category-pill-v21{display:inline-flex;align-items:center;padding:4px 8px;border-radius:6px;background:#e8f1ff;color:#1250b8;font-weight:700;text-decoration:none;font-size:11px}.magazine-card-author-v21 h2{font-size:18px;line-height:1.28;margin:0 0 10px}.magazine-card-author-v21 .magazine-excerpt{font-size:13px;line-height:1.55;-webkit-line-clamp:5}.magazine-author-row-v21{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:14px}.magazine-author-v21{display:flex;align-items:center;gap:8px;min-width:0;color:var(--ink);text-decoration:none;font-size:13px}.magazine-author-v21 span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.magazine-author-avatar-v21,.article-author-avatar-v21,.contributor-avatar-v21,.article-contributor-avatar-v21,.contributor-profile-avatar-v21{display:grid;place-items:center;flex:0 0 auto;border-radius:50%;overflow:hidden;background:#dff4ef;color:#087b70;font-weight:900}.magazine-author-avatar-v21{width:30px;height:30px;font-size:11px}.magazine-author-avatar-v21 img,.article-author-avatar-v21 img,.contributor-avatar-v21 img,.article-contributor-avatar-v21 img,.contributor-profile-avatar-v21 img{width:100%;height:100%;object-fit:cover}.reading-time-v21{font-size:12px;color:#607672;white-space:nowrap}.article-topline-v21{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#637a76;font-size:13px;margin-bottom:14px}.article-author-line-v21{display:flex;align-items:center;gap:10px;margin:18px 0 26px}.article-author-avatar-v21{width:46px;height:46px}.article-author-line-v21>div:not(.reviewed-by-v21){display:flex;flex-direction:column}.article-author-line-v21 a{color:var(--ink)}.article-author-line-v21 small{color:#627975}.reviewed-by-v21{margin-left:auto;padding-left:18px;border-left:1px solid #d7e7e4;display:flex;flex-direction:column;font-size:12px}.article-contributor-box-v21{margin:42px 0 20px;padding:24px;border:1px solid #d3e5e2;border-radius:18px;background:#f7fbfa}.article-contributor-main-v21{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}.article-contributor-avatar-v21{width:72px;height:72px}.article-contributor-box-v21 h2{margin:3px 0 8px;font-size:22px}.article-contributor-box-v21 p{margin:0 0 8px}.medical-review-note-v21{margin:18px 0;padding:14px 16px;border-left:4px solid #0b7a75;background:#eef8f6;border-radius:10px}.contributor-transparency-v21{margin:0 0 28px;padding:18px 20px;border-radius:14px;background:#f1f8f7;border:1px solid #d8e9e6}.contributor-transparency-v21 p{margin:5px 0 0}.contributors-grid-v21{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.contributor-card-v21{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:22px;border:1px solid #d3e5e2;border-radius:18px;background:#fff}.contributor-avatar-v21{width:72px;height:72px}.contributor-card-v21 h2{margin:4px 0 4px;font-size:22px}.contributor-card-v21 h2 a{color:var(--ink);text-decoration:none}.contributor-card-v21 p{color:#52706b}.contributor-type-v21{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#0b7a75}.contributor-card-foot-v21{display:flex;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid #e2efed;font-size:13px}.contributor-profile-hero-v21{padding:64px 0;background:linear-gradient(135deg,#f5fbfa,#e9f8f5)}.contributor-profile-grid-v21{display:grid;grid-template-columns:auto minmax(0,720px);gap:30px;align-items:center}.contributor-profile-avatar-v21{width:150px;height:150px;font-size:42px}.contributor-profile-hero-v21 h1{margin:5px 0;font-size:48px}.contributor-profile-hero-v21 h2{margin:0 0 12px;font-size:20px;color:#58726e}.expertise-pill-v21{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid #d2e5e2;font-size:13px}.profile-links-v21{display:flex;gap:12px;margin-top:14px}.contributor-post-grid-v21{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.contributor-post-grid-v21 article{padding:20px;border-radius:14px;background:#fff;border:1px solid #d8e7e5}.contributor-post-grid-v21 h3{font-size:18px;line-height:1.3}.contributor-post-grid-v21 h3 a{color:var(--ink);text-decoration:none}.contributor-post-grid-v21 p{font-size:13px;color:#56706c}.contributor-post-grid-v21 small{color:#667e7a}.reading-time-preview-v21{padding:12px;border-radius:10px;background:#f1f8f7;margin:10px 0;font-size:13px}@media(max-width:900px){.magazine-grid-authors-v21,.contributor-post-grid-v21{grid-template-columns:repeat(2,minmax(0,1fr))}.contributors-grid-v21{grid-template-columns:1fr}.contributor-profile-grid-v21{grid-template-columns:1fr}.contributor-profile-avatar-v21{width:110px;height:110px}.contributor-profile-hero-v21 h1{font-size:38px}}@media(max-width:620px){.magazine-grid-authors-v21,.contributor-post-grid-v21{grid-template-columns:1fr}.contributor-card-v21{grid-template-columns:1fr}.article-author-line-v21{align-items:flex-start;flex-wrap:wrap}.reviewed-by-v21{margin-left:56px;border-left:0;padding-left:0}.article-contributor-main-v21{grid-template-columns:1fr}.contributor-profile-hero-v21 h1{font-size:34px}}
