/*
 * Fiche expert Signature (refonte 2026, maquette expert-signature.css et expert-signature-calendrier.css) : une rencontre
 * (portrait, nom, citation), puis les façons de consulter. Vert, orange, rouge et gris sont réservés aux disponibilités.
 */
.cv-expert{--ex-green:#397328;--ex-orange:#91600c;--ex-red:#993c3c;padding-bottom:var(--ex-dock-height,0px)}
.ex-return{display:flex;align-items:center;min-height:70px;font-size:12px;color:#78667f}
.ex-return a:hover{text-decoration:underline;text-underline-offset:4px}

/* Bandeau : la rencontre */
.ex-hero{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(340px,1fr)}
.ex-intro{background:var(--cv-lilac);padding:45px 48px 30px;min-width:0}
.ex-identity{display:flex;align-items:center;gap:37px}
.ex-identity>div:last-child{min-width:0}
.ex-portrait-wrap{position:relative;flex:none}
.ex-portrait{width:192px;height:192px;border-radius:50%;object-fit:cover;border:7px solid var(--cv-paper);outline:1px solid #cfc0d7;outline-offset:6px}
.ex-portrait-dot{position:absolute;bottom:10px;right:14px;width:20px;height:20px;background:#999;border:4px solid var(--cv-lilac);border-radius:50%}
.ex-portrait-dot[data-summary=available]{background:#57ad3b}
.ex-portrait-dot[data-summary=busy]{background:#ff9800}
.ex-portrait-dot[data-summary=offline]{background:#ad3b3b}
.ex-portrait-dot[data-summary=written]{background:#a38baf}
.ex-identity .cv-kicker{margin-bottom:7px}
.ex-identity h1{font-size:64px;line-height:1.08;margin:0 0 13px;color:#513858;overflow-wrap:anywhere}
.ex-speciality{font-size:13px;line-height:1.7;color:#715a7c}
.ex-speciality a:hover{text-decoration:underline;text-underline-offset:3px}
.ex-rating-link{display:flex;flex-wrap:wrap;align-items:center;gap:6px 9px;margin-top:20px;font-size:12px;color:#654d70}
.ex-stars{color:#98704a;letter-spacing:2px;font-size:14px;white-space:nowrap}
.ex-score-stars{width:fit-content;background:linear-gradient(to right,#98704a var(--score),#d3c5d8 var(--score));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.ex-rating-count{font-size:11px}
.ex-experience{font-size:11px;margin-top:7px;color:#80698a}
.ex-experience strong{font-weight:500}
.ex-intro blockquote{font:400 25px/1.65 'Lora',serif;color:#705278;margin:32px 0 29px;max-width:43ch;letter-spacing:-.015em;overflow-wrap:break-word}
.ex-personal-actions{display:flex;align-items:center;gap:22px;padding-top:24px;border-top:1px solid #d9ccdf}
.ex-personal-actions button{border:0;background:none;color:inherit}
.ex-audio-button{display:flex;align-items:center;gap:13px;text-align:left;margin-right:auto;padding:0}
.ex-play{display:grid;place-items:center;width:40px;height:40px;border:1px solid #a891b3;border-radius:50%;flex:none;color:#71537e}
.ex-play .cv-icon{width:20px;height:20px}
.ex-audio-button strong{display:block;font-size:12px;font-weight:500;color:#62436f}
.ex-audio-button small{display:block;font-size:11px;color:#88718f;margin-top:2px}
.ex-audio-button:disabled{cursor:default}
.ex-audio-button:disabled .ex-play{color:#998ba0;border-color:#c4b7cb}
.ex-tool{display:flex;flex-direction:column;align-items:center;gap:5px;padding:0;font-size:11px;color:#715b7b}
.ex-tool .cv-icon{width:20px;height:20px}
.ex-tool[aria-pressed=true]{color:#a03c4f}
.ex-tool[aria-pressed=true] .cv-icon{fill:currentColor}
.ex-feedback{font-size:11px;color:#796383;margin-top:10px}
.ex-feedback:empty{display:none}

/* Consulter : état et canaux (couleurs des disponibilités) */
.ex-consult{background:var(--cv-sage);padding:29px 32px 23px;min-width:0}
.ex-status{display:flex;align-items:center;gap:7px;font-size:11px;color:#7c717f;margin-bottom:13px}
.ex-status i{width:6px;height:6px;background:currentColor;border-radius:50%}
.ex-status[data-summary=available]{color:var(--ex-green)}
.ex-status[data-summary=busy]{color:var(--ex-orange)}
.ex-status[data-summary=offline]{color:var(--ex-red)}
.ex-status[data-summary=written]{color:#846991}
.ex-consult h2{font-size:32px;line-height:1.25;color:#4e5c45;margin:0 0 10px}
.ex-consult-lead{font-size:12px;line-height:1.75;color:#75826c}
.ex-direct-modes{margin-top:19px;display:grid}
.ex-mode{display:flex;align-items:center;gap:12px;width:100%;padding:12px 0;border:0;border-top:1px solid #ced8c5;background:none;text-align:left;color:inherit;font:inherit}
button.ex-mode{cursor:pointer}
.ex-mode-icon{display:grid;place-items:center;width:35px;height:35px;border:1px solid #81a570;border-radius:50%;color:var(--ex-green);background:#f1f6ec;flex:none}
.ex-mode-icon .cv-icon{width:18px;height:18px}
.ex-mode-copy{flex:1;display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
.ex-mode strong{font-weight:500;font-size:12px;color:#465a3c}
.ex-mode small{font-size:11px;color:var(--ex-green);text-align:right}
.ex-mode-arrow{font-size:15px;color:#6a8559;margin-left:4px}
button.ex-mode:hover{background:#dde6d5}
.ex-mode[data-state=disable] .ex-mode-icon{background:#eeefeb;border-color:#c1c7bc;color:#8b9186}
.ex-mode[data-state=disable] strong,.ex-mode[data-state=disable] small,.ex-mode[data-state=disable] .ex-mode-arrow{color:#7f8779}
.ex-mode[data-state=busy] .ex-mode-icon{color:var(--ex-orange);background:#fff2dc;border-color:#d5a044}
.ex-mode[data-state=busy] small{color:var(--ex-orange)}
.ex-mode[data-state=offline] .ex-mode-icon{color:var(--ex-red);background:#f8eaea;border-color:#c28484}
.ex-mode[data-state=offline] small{color:var(--ex-red)}
.ex-busy{padding:9px 12px;background:#fff3e2;border-left:2px solid #d59a3a;margin:8px 0 12px}
.ex-busy p{font-size:12px;color:#8c5b12}
.ex-busy small{font-size:11px;color:#856b48;display:block}
.ex-busy .expert-status-time,.ex-busy .clock{font-variant-numeric:tabular-nums;font-weight:500}
.ex-written-link{display:flex;align-items:center;gap:12px;padding:13px 0;margin:0;border-top:1px solid #bdcbb2;border-bottom:1px solid #bdcbb2;color:#49613a}
.ex-direct-modes+.ex-written-link,.ex-busy+.ex-written-link{margin-top:0}
.ex-consult-lead+.ex-written-link{margin-top:19px}
.ex-written-link>.cv-icon{width:22px;height:22px;margin:0 6px;flex:none}
.ex-written-link>span:first-of-type{flex:1}
.ex-written-link strong{display:block;font-size:12px;font-weight:500}
.ex-written-link small{display:block;font-size:11px;color:#718564;margin-top:1px}
a.ex-written-link:hover{background:#dde6d5;color:#49613a}
.ex-written-link.is-disabled{color:#7f8779}
.ex-consult-links{display:flex;justify-content:space-between;gap:12px;margin-top:17px;font-size:11px;flex-wrap:wrap;color:#687c5b}
.ex-consult-links a{display:flex;align-items:center;gap:7px}
.ex-consult-links a:hover{text-decoration:underline;text-underline-offset:3px}
.ex-consult-links .cv-icon{width:15px;height:15px}

/* Navigation de la fiche et sections */
.ex-section-nav{display:flex;flex-wrap:wrap;gap:12px 40px;border-top:1px solid var(--cv-line);border-bottom:1px solid var(--cv-line);padding:18px 0;margin-top:28px;font-size:12px;color:#705a7c}
.ex-section-nav a{display:flex;gap:8px;align-items:center}
.ex-section-nav a:hover{text-decoration:underline;text-underline-offset:6px}
.ex-section-nav a span{font-size:11px;color:#99859f}
.ex-section{margin-top:67px;scroll-margin-top:112px}
.ex-section h2{font-size:35px;line-height:1.3}
.ex-section .cv-kicker{margin-bottom:12px}
.ex-about{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:90px;align-items:start}
.ex-about-copy{max-width:76ch;min-width:0}
.ex-prose{font-size:14px;line-height:1.95;margin-top:24px;overflow-wrap:break-word}
.ex-prose h2,.ex-prose h3,.ex-prose h4{font-size:23px;line-height:1.4;margin:26px 0 14px}
.ex-prose>h3:first-child,.ex-prose>h2:first-child{margin-top:0}
.ex-prose p,.ex-prose li{margin-bottom:17px;color:#76677b}
.ex-prose ul,.ex-prose ol{padding-left:23px}
.ex-prose a{text-decoration:underline;text-underline-offset:3px;color:var(--cv-purple)}
.ex-prose img{max-width:100%;height:auto}
.ex-read-more summary{list-style:none;display:flex;align-items:center;gap:25px;font-size:12px;color:#71527d;border-bottom:1px solid #bcabc4;width:fit-content;padding:2px 0 5px;cursor:pointer}
.ex-read-more summary::-webkit-details-marker{display:none}
.ex-read-more summary>span:last-child{font-size:19px;transition:transform .2s}
.ex-read-more summary .ex-less,.ex-read-more[open] summary>span:first-child{display:none}
.ex-read-more[open] summary .ex-less{display:inline}
.ex-read-more[open] summary>span:last-child{transform:rotate(45deg)}
.ex-read-more>div{padding-top:22px}
.ex-practice{background:#f0ece5;padding:32px 34px;margin-top:4px}
.ex-practice h3{font-size:28px;line-height:1.35;margin:0 0 6px}
.ex-practice dl{margin:0}
.ex-practice dt{font-size:11px;color:#947e74;margin-top:17px}
.ex-practice dd{font-size:12px;color:#705e70;margin:4px 0 0;line-height:1.8}
.ex-practice dd a:hover{text-decoration:underline;text-underline-offset:3px}
.ex-practice .cv-button{width:100%;margin-top:23px;justify-content:space-between;font-size:12px}

/* Consultations écrites */
.ex-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}
.ex-section-heading>p{font-size:12px;line-height:1.9;color:#897590;padding-bottom:3px;max-width:52ch}
.ex-services{border-top:1px solid var(--cv-line);padding-top:45px}
.ex-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ex-service{padding:27px 30px 25px;background:#f2eef3;display:flex;flex-direction:column;min-width:0}
.ex-service:nth-child(even){background:#f1eee8}
#ex-service-grid[aria-busy=true]{opacity:.55}
.ex-service-heading{display:flex;align-items:flex-start;gap:14px;margin-bottom:17px}
.ex-service-symbol{flex:none;margin-top:2px;color:#9a81a5}
.ex-service-symbol .cv-icon{width:24px;height:24px}
.ex-service h3{font-size:22px;line-height:1.35;margin:0;overflow-wrap:break-word}
.ex-service-text{font-size:13px;line-height:1.9;margin-bottom:15px;color:#807085;overflow-wrap:break-word}
.ex-service-text p+p{margin-top:8px}
.ex-deadline{font-size:11px;color:#927b99;margin-bottom:10px}
.ex-service-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;margin-top:auto;border-top:1px solid #ddd2e0}
.ex-price{font:400 27px/1.4 'Lora',serif;color:#73537f;white-space:nowrap}
.ex-service-buy{display:flex}
.ex-service-bottom .cv-button{font-size:12px}
.ex-service-closed,.ex-services-closed,.ex-contact-closed,.ex-no-review{font-size:12px;line-height:1.8;color:#897590}
.ex-services-more{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}
.ex-services-more p{font-size:11px;color:#897790}
.ex-services-more .cv-button{font-size:12px;gap:24px}

/* Planning (FullCalendar du bundle client, assets/app.js.js) */
.ex-planning{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--cv-line);padding-top:47px}
.ex-planning-intro>p:not(.cv-kicker){font-size:13px;line-height:1.9;margin-top:17px;max-width:36ch}
.ex-planning-intro .cv-button{font-size:12px;margin-top:22px;gap:12px}
.ex-planning-intro .cv-icon{width:17px;height:17px}
.ex-calendar{border:1px solid #dcd4df;padding:24px 24px 17px;min-width:0}
.ex-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;padding-bottom:20px}
.ex-calendar-toolbar h3{font:400 19px/1.6 'Lora',serif;color:#6e567a;margin:0}
.ex-calendar-toolbar>div{display:flex;gap:5px}
.ex-calendar-toolbar button{border:1px solid #d8ccde;background:none;min-height:32px;padding:4px 10px;font-size:11px;color:#705b7d}
.ex-calendar-toolbar button:hover{background:var(--cv-lilac)}
#calendar{--fc-border-color:#e3dce5;--fc-page-bg-color:#faf8f3;--fc-neutral-bg-color:#f1edf2;--fc-today-bg-color:#f0ebf480;--fc-event-bg-color:#e8e0ed;--fc-event-border-color:#b49cc1;--fc-event-text-color:#624573;--fc-now-indicator-color:#bf4e54;font-family:'Work Sans',sans-serif;font-size:11px}
#calendar .fc-scrollgrid{border:0}
#calendar .fc-scrollgrid-section-header .fc-scroller{overflow:hidden!important}
#calendar .fc-scrollgrid-section-body .fc-scroller{scrollbar-width:thin;scrollbar-color:#b29bbd #f1edf2}
#calendar th{font-weight:400;border-top:0}
#calendar .fc-scrollgrid-section>td{border-right:0}
#calendar .fc-col-header-cell-cushion{font-size:12px;padding:11px 3px;color:#796483;font-weight:400}
#calendar .fc-timegrid-axis{border-left:0}
#calendar .fc-timegrid-slot{height:30px}
#calendar .fc-timegrid-slot-label-cushion{font-size:11px;color:#a08ba7;padding:0 7px 0 0;font-variant-numeric:tabular-nums}
#calendar .fc-timegrid-slot-minor{border-top-style:dotted;border-top-color:#ece6ed}
#calendar .fc-timegrid-event{border:0;border-left:2px solid #a287b2;border-radius:0;box-shadow:none;background:#e8e0ed}
#calendar .fc-timegrid-event .fc-event-main{padding:4px 6px;color:#624573}
#calendar .fc-timegrid-event-harness-inset .fc-timegrid-event{box-shadow:none}
#calendar .fc-timegrid-event:hover{background:#ded2e6}
#calendar .fc-timegrid-col-events{margin:0 5px 0 3px}
#calendar .fc-timegrid-now-indicator-line{border-top-width:1px;z-index:5}
#calendar .fc-timegrid-now-indicator-arrow{border-width:4px;border-color:transparent;border-left-color:#bf4e54;margin-top:-4px}
.ex-slot-content{display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px;line-height:1.35;overflow:hidden;position:sticky;top:5px}
.ex-slot-time{font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.ex-slot-icons{display:inline-flex;align-items:center;gap:4px;flex:none}
.ex-slot-icons .cv-icon{width:14px;height:14px;stroke-width:1.65}
.ex-calendar-feedback{font-size:11px;color:#8b7594;margin-top:12px;line-height:1.7}
.ex-calendar-feedback:empty{display:none}
.ex-calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:12px 19px;font-size:11px;color:#8b7594;margin-top:18px}
.ex-calendar-legend>span{display:flex;align-items:center;gap:6px}
.ex-calendar-legend .cv-icon{width:15px;height:15px;stroke-width:1.4}
.ex-calendar-legend i{display:block;width:17px;height:1px;background:#bf4e54}
.ex-calendar-note{font-size:11px;line-height:1.7;color:#938498;border-top:1px solid #e3dce7;padding-top:12px;margin-top:13px}

/* Avis */
.ex-reviews{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-top:47px;border-top:1px solid var(--cv-line)}
.ex-review-summary>p:not(.cv-kicker){font-size:12px;line-height:1.8;margin-top:17px}
.ex-average{display:flex;align-items:center;gap:14px;color:#6d5078;margin-top:28px}
.ex-average>strong{font:400 60px/1 'Lora',serif}
.ex-average>span{font-size:12px;color:#927c9a}
.ex-average .ex-stars{display:block;margin-top:8px}
.ex-review-summary .ex-rating-caption{font-size:11px;margin-top:12px}
.ex-rating-bars{margin-top:24px;max-width:245px}
.ex-rating-bars>div{display:flex;align-items:center;gap:13px;margin:7px 0;font-size:11px;color:#927b9a}
.ex-rating-bars>div>span:first-child{width:30px}
.ex-rating-bars>div>span:last-child{width:20px;text-align:right}
.ex-rating-track{flex:1;height:4px;background:#e7deeb}
.ex-rating-track i{display:block;background:#b09bbc;height:100%}
.ex-review-content{min-width:0}
.ex-review-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #ddd3e2;padding-bottom:17px;font-size:12px;color:#796285}
.ex-review-toolbar label{display:flex;align-items:center;gap:10px;font-size:11px;margin:0}
.ex-review-toolbar select{border:0;border-bottom:1px solid #c9b9d0;background:none;color:#70527e;font-size:11px;padding:6px 0}
#ex-review-list[aria-busy=true]{opacity:.55}
.ex-review{padding:24px 0;border-bottom:1px solid #e4dce7}
.ex-review-meta{display:flex;align-items:center;gap:16px;font-size:11px;color:#9a879f}
.ex-review-meta strong{font-size:13px;font-weight:500;color:#65516d}
.ex-review-meta .ex-stars{font-size:12px;margin-left:auto}
.ex-review>p{font-size:13px;line-height:1.9;margin-top:13px;color:#75687b;overflow-wrap:anywhere}
.ex-review>p.ex-review-translation{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;font-size:11px;line-height:1.6;color:#927c9a;margin-top:8px}
.ex-review-original{border:0;background:none;padding:0;font-size:11px;color:var(--cv-purple);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ex-review-original:disabled{opacity:.6;cursor:wait}
.ex-review>p.ex-review-type{display:flex;align-items:center;gap:7px;font-size:11px;line-height:1.5;color:#927c9a;margin-top:10px}
.ex-review-type .cv-icon{width:14px;height:14px}
.ex-reply{margin:18px 0 0 15px;border-left:2px solid #d4c4dc;padding:11px 18px;background:#f1edf2}
.ex-reply>strong{font-size:11px;font-weight:500;color:#83688f}
.ex-reply>p{font-size:12px;line-height:1.9;margin-top:5px;overflow-wrap:anywhere}
.ex-more-reviews{font-size:12px;margin-top:25px}

/* Message, fil d'Ariane, signalement */
.ex-contact-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:31px 36px;background:var(--cv-sage);margin-top:57px;scroll-margin-top:112px}
.ex-contact-strip h2{font-size:27px;color:#516448;margin:0}
.ex-contact-strip p{font-size:12px;margin-top:9px;color:#7f8a76}
.ex-contact-strip .cv-button{font-size:12px;gap:12px}
.ex-contact-strip .cv-icon{width:18px;height:18px}
.ex-contact-strip>.ex-contact-closed{max-width:46ch;margin:0;color:#6f7a66}
.ex-page-end{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:25px;font-size:11px;color:#92839a}
.ex-page-end nav a{text-decoration:underline;text-underline-offset:3px}
.ex-report-link{border:0;background:none;font-size:11px;color:#92839a;padding:0;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
/* Signaler un problème : contenu de la fenêtre (cadre : dialogs.css) */
.ex-report-body{font-size:12px;line-height:1.8;color:#75687b}
.ex-report-body ol{padding-left:20px;margin:0 0 10px}
.ex-report-body form{display:grid;gap:14px;margin-top:16px}
.ex-report-body label{display:grid;gap:6px;font-size:11px;color:#6f5c78;margin:0}
.ex-report-body select,.ex-report-body textarea{width:100%;border:1px solid #d7cdda;background:#fff;color:var(--cv-ink);font:inherit;font-size:12px;padding:9px}
.ex-report-body .cv-button{justify-self:start;font-size:12px}

/* Barre fixe : reprend les accès du bloc « Consulter » quand il sort de l'écran */
.ex-consult-dock{position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--cv-sage);border-top:1px solid #bdcbb2;box-shadow:0 -5px 20px #382b3e0a;padding-bottom:env(safe-area-inset-bottom,0px);transform:translateY(calc(100% + 8px));opacity:0;visibility:hidden;pointer-events:none;transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .24s ease,visibility 0s linear .32s}
.ex-consult-dock.is-visible{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}
.ex-dock-inner{max-width:1440px;margin:auto;padding:13px 48px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.ex-dock-identity{display:flex;align-items:center;gap:13px;min-width:0}
.ex-dock-identity img{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:none}
.ex-dock-identity>div{min-width:0}
.ex-dock-identity>div>strong{display:block;font:400 23px/1.25 'Lora',serif;color:#4d5c44;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ex-dock-status{display:flex;align-items:center;flex-wrap:wrap;gap:5px;font-size:11px;color:#7c717f;margin-top:3px}
.ex-dock-status i{width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.ex-dock-status[data-summary=available]{color:var(--ex-green)}
.ex-dock-status[data-summary=busy]{color:var(--ex-orange)}
.ex-dock-status[data-summary=offline]{color:var(--ex-red)}
.ex-dock-status[data-summary=written]{color:#846991}
.ex-dock-actions{display:flex;gap:10px;flex-shrink:0}
.ex-dock-mode,.ex-dock-written{display:flex;align-items:center;gap:13px;border:1px solid #aebda4;background:#f9fbf6;color:#466535;padding:9px 16px;min-height:49px;min-width:150px;text-align:left;font:inherit}
.ex-dock-mode .cv-icon,.ex-dock-written .cv-icon{width:19px;height:19px;flex:none}
.ex-dock-actions strong{display:block;font-size:12px;font-weight:500;line-height:1.45}
.ex-dock-actions small{display:block;font-size:11px;line-height:1.45;color:#6d805f;margin-top:1px}
.ex-dock-arrow{margin-left:auto}
button.ex-dock-mode{cursor:pointer}
button.ex-dock-mode:hover{background:#dce7d3}
.ex-dock-mode[data-state=busy]{background:#eeeae3;border-color:#d3c5ad;color:var(--ex-orange)}
.ex-dock-mode[data-state=busy] small{color:var(--ex-orange)}
.ex-dock-written{background:var(--cv-purple);border-color:var(--cv-purple);color:#fff}
.ex-dock-written small{color:#eee4f2}
.ex-dock-written:hover{background:#503658;color:#fff;text-decoration:none}
@media(prefers-reduced-motion:reduce){.ex-consult-dock{transition:none}}
/* Retour en haut : au-dessus de la barre fixe quand elle est visible */
.cv-expert .cv-back-top{bottom:calc(var(--ex-dock-height,0px) + 20px)}

@media(max-width:1150px){
	.ex-hero{grid-template-columns:minmax(0,1.5fr) minmax(320px,1fr)}
	.ex-intro{padding:36px 32px 28px}
	.ex-identity{gap:25px}
	.ex-portrait{width:145px;height:145px}
	.ex-identity h1{font-size:53px}
	.ex-intro blockquote{font-size:23px}
	.ex-consult{padding:27px 25px}
	.ex-personal-actions{gap:15px;flex-wrap:wrap}
	.ex-audio-button{flex-basis:100%;margin-bottom:5px}
	.ex-tool{flex-direction:row}
	.ex-about{gap:50px}
	.ex-planning,.ex-reviews{gap:35px}
}
@media(max-width:900px){
	.ex-hero{grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr)}
	.ex-intro{padding:30px 26px}
	.ex-identity{flex-direction:column;align-items:flex-start;gap:23px}
	.ex-identity h1{font-size:48px}
	.ex-portrait{width:125px;height:125px}
	.ex-identity .cv-kicker{display:none}
	.ex-rating-link{margin-top:13px}
	.ex-intro blockquote{font-size:21px;margin-top:24px}
	.ex-section-nav{gap:12px 25px}
	.ex-about{gap:30px;grid-template-columns:1.4fr 1fr}
	.ex-practice{padding:27px 24px}
	.ex-section h2{font-size:30px}
	.ex-planning,.ex-reviews{grid-template-columns:1fr 1.8fr;gap:30px}
	.ex-calendar{padding:21px 18px 16px}
	.ex-service{padding:25px}
	.ex-service-bottom{align-items:flex-start;flex-direction:column;gap:13px}
	.ex-service-buy,.ex-service-bottom .cv-button{width:100%;justify-content:space-between}
	.ex-contact-strip{padding:28px;align-items:flex-start;flex-direction:column}
	.ex-contact-strip h2{font-size:26px}
	.ex-dock-inner{padding:12px 26px;gap:20px}
	.ex-dock-actions{gap:8px}
	.ex-dock-mode,.ex-dock-written{min-width:125px;padding:10px 12px;gap:9px}
	.ex-dock-arrow{display:none}
	.ex-dock-identity img{width:36px;height:36px}
	.ex-dock-identity>div>strong{font-size:21px}
}
@media(max-width:768px){
	.ex-planning{grid-template-columns:1fr;gap:27px}
	.ex-planning-intro>p:not(.cv-kicker){max-width:60ch}
}
@media(max-width:700px){
	.ex-hero{grid-template-columns:1fr}
	.ex-intro{padding:30px}
	.ex-identity{flex-direction:row;align-items:center;gap:27px}
	.ex-identity .cv-kicker{display:block}
	.ex-portrait{width:138px;height:138px}
	.ex-personal-actions{gap:25px}
	.ex-audio-button{flex-basis:auto}
	.ex-tool{flex-direction:column}
	.ex-consult{padding:28px 30px}
	.ex-consult h2{font-size:29px}
	.ex-direct-modes{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
	.ex-mode{flex-direction:column;gap:6px;padding:14px 0}
	.ex-mode-copy{display:block;text-align:center}
	.ex-mode-copy strong,.ex-mode-copy small{display:block;text-align:center}
	.ex-mode-arrow{display:none}
	.ex-mode-icon{margin-bottom:4px}
	.ex-section-nav{gap:12px 17px;padding:15px 0}
	.ex-section-nav a{font-size:11px}
	.ex-section{margin-top:43px}
	.ex-about,.ex-reviews{grid-template-columns:1fr;gap:30px}
	.ex-prose{font-size:13px}
	.ex-practice dl{display:grid;grid-template-columns:110px 1fr;gap:10px 15px}
	.ex-practice dt,.ex-practice dd{margin:0}
	.ex-practice .cv-button{max-width:300px}
	.ex-section-heading{display:block}
	.ex-section-heading>p{margin-top:16px}
	.ex-service-grid{gap:14px}
	.ex-service{padding:24px 20px}
	.ex-service h3{font-size:21px}
	.ex-service-text{font-size:12px}
	.ex-planning,.ex-reviews,.ex-services{padding-top:33px}
	.ex-review-summary{display:grid;grid-template-columns:1fr auto;gap:0 20px}
	.ex-review-summary>.cv-kicker,.ex-review-summary>h2,.ex-review-summary>p{grid-column:1/-1}
	.ex-average{grid-column:1;grid-row:4;margin-top:22px}
	.ex-review-summary .ex-rating-caption{grid-row:5;grid-column:1}
	.ex-rating-bars{grid-column:2;grid-row:4/6;min-width:150px;margin-top:20px}
	.ex-page-end{flex-direction:column;gap:15px}
	.ex-contact-strip{margin-top:40px}
	.ex-dock-inner{display:grid;grid-template-columns:1fr;gap:10px}
	.ex-dock-identity{gap:9px}
	.ex-dock-identity img{width:29px;height:29px}
	.ex-dock-identity>div{display:flex;align-items:center;flex:1;justify-content:space-between;gap:12px}
	.ex-dock-identity>div>strong{font-size:20px}
	.ex-dock-status{margin-top:0}
	.ex-dock-actions{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr)}
	.ex-dock-mode,.ex-dock-written{min-width:0;justify-content:center;padding:9px;gap:8px}
}
@media(max-width:580px){
	.ex-return{min-height:60px;font-size:11px}
	.ex-intro{padding:27px 24px}
	.ex-identity{gap:22px}
	.ex-portrait{width:105px;height:105px;border-width:4px;outline-offset:4px}
	.ex-portrait-dot{width:16px;height:16px;right:5px;bottom:3px;border-width:3px}
	.ex-identity h1{font-size:42px}
	.ex-speciality{font-size:11px}
	.ex-rating-link{display:block;margin-top:9px;font-size:11px}
	.ex-rating-link .ex-stars{display:block;font-size:11px;letter-spacing:1px}
	.ex-rating-count{display:block}
	.ex-intro blockquote{font-size:21px;margin:25px 0 23px}
	.ex-personal-actions{gap:20px;padding-top:20px}
	.ex-audio-button{flex-basis:100%;margin:0 0 4px}
	.ex-tool{flex-direction:row}
	.ex-consult{padding:24px}
	.ex-consult h2{font-size:28px}
	.ex-direct-modes{gap:10px}
	.ex-section-nav{gap:13px 20px}
	.ex-section h2{font-size:29px}
	.ex-practice{padding:25px 23px}
	.ex-practice h3{font-size:26px}
	.ex-practice dl{grid-template-columns:1fr;gap:4px}
	.ex-practice dt:not(:first-child){margin-top:12px}
	.ex-practice .cv-button{max-width:none}
	.ex-service-grid{grid-template-columns:1fr}
	.ex-service{padding:24px}
	.ex-service-bottom{flex-direction:row;align-items:center;gap:15px}
	.ex-service-buy,.ex-service-bottom .cv-button{width:auto;font-size:11px}
	.ex-services-more{flex-direction:column;align-items:stretch;gap:13px}
	.ex-services-more .cv-button{justify-content:space-between}
	.ex-calendar{padding:19px 15px 15px}
	.ex-calendar-toolbar h3{font-size:18px}
	.ex-calendar-toolbar>div{width:100%;justify-content:space-between}
	.ex-calendar-toolbar button{min-height:35px}
	#calendar .fc-timegrid-slot{height:32px}
	.ex-review-meta{gap:7px;flex-wrap:wrap}
	.ex-review-meta .ex-stars{font-size:11px;letter-spacing:1px}
	.ex-reply{margin-left:0;padding:12px}
	.ex-rating-bars{min-width:125px}
	.ex-rating-bars>div{gap:7px}
	.ex-review-summary{gap:0 12px}
	.ex-average{gap:9px}
	.ex-average>strong{font-size:53px}
	.ex-review-toolbar{gap:10px}
	.ex-contact-strip{padding:25px 24px}
	.ex-contact-strip h2{font-size:25px}
	.ex-contact-strip .cv-button{width:100%;font-size:11px}
	.ex-dock-inner{padding:10px 15px;gap:8px}
	.ex-dock-actions{gap:7px}
	.ex-dock-mode,.ex-dock-written{padding:8px 6px;gap:6px}
	.ex-dock-actions .cv-icon{width:17px;height:17px}
	.ex-dock-written small{display:none}
}
@media(max-width:360px){
	.ex-intro{padding:25px 20px}
	.ex-identity{gap:18px}
	.ex-portrait{width:84px;height:84px}
	.ex-identity h1{font-size:37px}
	.ex-service-bottom{flex-direction:column;align-items:stretch}
	.ex-service-buy,.ex-service-bottom .cv-button{width:100%;justify-content:space-between}
	.ex-rating-bars{min-width:105px}
	.ex-average>strong{font-size:45px}
	.ex-dock-mode .cv-icon{display:none}
}
