/* mono.css - monochrome override (black, white, a little grey). Loaded last.
   Part 1 is GENERATED from site.css, visual-refresh.css and decouvrir.css: every tinted colour declaration is
   repeated with the same selector, order and media query (same specificity, wins by load order), its colour mapped
   to a neutral grey of the same luminance, saturated accents to ink #111. Part 2 is hand-tuned and wins.
   Regenerate part 1 after colour edits in those files (generator kept by the design agent). */
/* ---- mirror of site.css ---- */
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#111111}
.todo{background-color:#f4f4f4;color:#111111}
.notice{background-color:#f4f4f4;color:#111111}
.field input,.field textarea,.field select{background-color:#ffffff}
.brandline{color:rgba(17,17,17,.055)}
.brandline::after{-webkit-text-stroke-color:rgba(17,17,17,.42)}
@media(prefers-reduced-motion:reduce){
.brandline::after{-webkit-text-stroke-color:rgba(17,17,17,.07)}
}
.pending{background-color:#f4f4f4;color:#111111}
.topbar{background-image:linear-gradient(180deg,#fefefe 0%,#fefefe 58%,rgba(255,255,255,0) 100%)}
.topbar.is-scrolled{box-shadow:0 8px 24px rgba(17,17,17,.06)}
.hero-label:before{box-shadow:0 0 0 3px rgba(17,17,17,.14)}
.herolight-media:has(.hero-media.is-cutout:not([hidden]))::before{background-image:radial-gradient(circle at 50% 47%,#aaaaaa 0%,#bebebe 34%,rgba(217,217,217,.7) 56%,rgba(244,244,244,0) 74%)}
.hero-media.is-cutout:before{background-image:radial-gradient(60% 56% at 55% 48%,#d8d8d8 0%,rgba(236,236,236,.72) 46%,rgba(255,255,255,0) 78%)}
.megamenu{box-shadow:0 22px 40px rgba(17,17,17,.08)}
.megacol em{color:#111111;background-color:#f4f4f4}
.services-hero:after{background-image:linear-gradient(90deg,#f4f4f4 0%,#f4f4f4 34%,rgba(244,244,244,.9) 44%,transparent 65%)}
.category-hero:after{background-image:linear-gradient(90deg,#f4f4f4 0%,#f4f4f4 35%,rgba(244,244,244,.94) 43%,transparent 66%)}
.contact-chip.whatsapp svg{fill:#111111}
.wa-float{background-color:#111111;box-shadow:0 10px 24px rgba(17,17,17,.28)}
@media(max-width:700px){
.mobilebar a[href^="https://wa.me"]{color:#111111}
}
.menu-round.whatsapp{color:#111111}
.topbar{background-image:none}
.care-form-status[data-state="error"]{color:#111111}
.topbar{background-image:none}
.care-whatsapp{color:#111111}
.care-lettering-fill{color:rgba(17,17,17,.13)}
.care-lettering-outline{-webkit-text-stroke-color:rgba(17,17,17,.27)}
:root{--accent-blue:#111111}
.topbar{background-image:none}
.header-whatsapp>svg{fill:#111111}
.brandline::after{-webkit-text-stroke-color:#00000035}
.care-lettering-fill{color:rgba(0,0,0,.07)}
.care-lettering-outline{-webkit-text-stroke-color:rgba(0,0,0,.17)}
.care-whatsapp,.care-whatsapp:hover{color:#111111}
.care-whatsapp svg{fill:#111111}
body .wa-float{background-color:#111111}
.menu-round.whatsapp{color:#111111}
.menu-round.whatsapp svg,.contact-chip.whatsapp svg{fill:#111111}
body a.pill[href*="wa.me"],body .mobilebar a[href*="wa.me"]{color:#111111;border-color:#d9d9d9}
body a.pill[href*="wa.me"] .pill-icon,body .mobilebar a[href*="wa.me"] svg{fill:#111111}
.header-whatsapp>svg,.care-whatsapp svg,.menu-round.whatsapp svg,.contact-chip.whatsapp svg,body a.pill[href*="wa.me"] .pill-icon,body .mobilebar a[href*="wa.me"] svg{color:#111111;fill:#111111}
.se-page-nav a:hover{color:#111111}
.se-service-row:hover h3{color:#111111}
.se-intentions a:hover{color:#111111}
:root{--accent-blue:#111111;--accent-ink:#111111;--accent-wash:#f4f4f4}
.header-contact{background-image:linear-gradient(100deg,#fff 25%,#f4f4f4);border-bottom-color:#ececec}
body .care-copy h1 em,body .services-hero h1 em,body .category-hero h1 em,body .inner-hero h1 em{color:#111111}
.care-action-primary:hover,body .services-hero .pill.arrow-button:not(.outline):hover,body .se-hero-copy>.pill.arrow-button:hover{background-color:#111111}
body.home #tous-les-soins,body .quickbook{background-image:linear-gradient(120deg,#fff 12%,#f4f4f4)}
body .services-design,.services-directory-page .services-design,.se-planning{background-image:linear-gradient(120deg,#fff 25%,#f4f4f4)}
.sitefooter{background-image:linear-gradient(135deg,#fff 20%,#f4f4f4)}
.se-comparison-table thead{background-color:#f4f4f4}
.se-page-nav a:hover,.se-service-row:hover h3{color:var(--accent-ink)}
.care-lettering-fill{color:rgba(17,17,17,.085)}
.care-lettering-outline{-webkit-text-stroke-color:rgba(17,17,17,.2)}
.care-field>label{color:#5b5b5b}
.care-field .care-input-icon{stroke:#5f5f5f}
.care-field input,.care-field select,.care-field .booking-control{border-color:#d9d9d9}
.care-field input:hover,.care-field .booking-control:hover{border-color:#bbbbbb;background-color:#ffffff}
.care-field input:focus-visible,.care-field select:focus-visible,.care-field .booking-control:focus-visible{border-color:#111111;box-shadow:0 0 0 3px #1111111c}
.care-field input:user-invalid{border-color:#111111}
.care-field input::placeholder{color:#939393}
.care-field .booking-control{color:#878787}
.care-field .booking-control.has-value{color:#2b2b2b}
.booking-control-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23606060' stroke-width='1.6'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important}
.booking-dialog{border-color:#ececec;box-shadow:0 24px 90px #1111112e;color:#111111}
.booking-dialog::backdrop{background-color:#11111165}
.booking-dialog-kicker{color:#111111}
.booking-dialog-close{background-color:#f4f4f4;color:#424242}
.booking-dialog-close:hover{background-color:#ececec}
.booking-search-label{color:#696969}
.booking-search{border-color:#d9d9d9;background-color:#ffffff}
.booking-search:focus{border-color:#111111;box-shadow:0 0 0 3px #1111111c}
.booking-service-options{scrollbar-color:#d9d9d9 #fff}
.booking-service-option{color:#333333}
.booking-service-option+.booking-service-option{border-top-color:#f4f4f4}
.booking-service-option:hover,.booking-service-option:focus-visible{background-color:#f4f4f4}
.booking-service-option[aria-pressed="true"]{background-color:#f4f4f4;color:#111111}
.booking-service-option[aria-pressed="true"]:after{color:#111111}
.booking-service-options>p,.booking-picker-note{color:#7e7e7e}
.booking-month-nav button{border-color:#ececec;color:#111111}
.booking-month-nav button:hover:not(:disabled){background-color:#f4f4f4}
.booking-weekdays{color:#888888}
.booking-days button{color:#111111}
.booking-days button:hover:not(:disabled){background-color:#f4f4f4;border-color:#d9d9d9}
.booking-days button:disabled{color:#cccccc}
.booking-days button.is-today{border-color:#d9d9d9}
.booking-days button[aria-pressed="true"]{background-color:#111111;border-color:#111111}
.booking-time-panel{border-left-color:#ececec}
.booking-time-panel>label,.booking-time-label,.booking-minutes-label{color:#707070}
.booking-hour-grid button,.booking-minute-grid button{background-color:#ffffff;color:#4c4c4c;border-color:#ececec}
.booking-hour-grid button:hover:not(:disabled),.booking-minute-grid button:hover:not(:disabled){background-color:#f4f4f4;border-color:#d9d9d9}
.booking-hour-grid button[aria-pressed="true"],.booking-minute-grid button[aria-pressed="true"]{background-color:#111111;border-color:#111111}
.booking-clear-time{color:#7a7a7a}
.booking-clear-time:hover{color:#111111}
.booking-date-summary{background-color:#f4f4f4;color:#111111}
.booking-clear-date{background-color:#f4f4f4;color:#6b6b6b}
.booking-date-confirm{background-color:#111111}
.booking-date-confirm:hover:not(:disabled){background-color:#111111}
.booking-dialog button:focus-visible{outline-color:#111111}
@media(max-width:600px){
.booking-time-panel{border-left-color:currentcolor;border-top-color:#ececec}
}
.journal-breadcrumb{color:#818181}
.journal-breadcrumb span{color:#b3b3b3}
.journal-heading h1 span{color:#111111}
.journal-heading>p{color:#747474}
.journal-feature{background-image:linear-gradient(120deg,#f4f4f4,#fff);border-color:#ececec}
.journal-feature-image>span{color:#111111}
.journal-feature-copy>p{color:#707070}
.journal-read{color:#111111}
.journal-read>span{background-color:#f4f4f4;color:#111111}
.journal-feature-copy small{color:#858585}
.journal-count{color:#828282}
.journal-topics a{border-color:#d9d9d9}
.journal-topics a:hover{background-color:#f4f4f4;border-color:#c0c0c0}
.journal-topics span{color:#111111}
.journal-review-note{color:#858585}
.journal-page .journal-card{border-color:#ececec}
.journal-card-image>span{color:#111111}
.journal-card p{color:#777777}
.journal-feature:focus-visible,.journal-card:focus-visible,.journal-topics a:focus-visible{outline-color:#111111}
/* ---- mirror of visual-refresh.css ---- */
:root{--button-blue:linear-gradient(115deg,#111111,#111111);--button-disc-blue:linear-gradient(135deg,#b0b0b0,#111111);--button-ink:linear-gradient(115deg,#111111,#454545)}
body .pill,body .pill.arrow-button,body .care-action-primary,body .care-submit{border-color:#111111}
body .pill.arrow-button .button-disc,body .pill.arrow-button:hover .button-disc{background-image:linear-gradient(140deg,#fff,#f4f4f4);color:#111111;box-shadow:0 1px 5px #11111118}
body .pill:is(.outline,.white),body .pill.arrow-button:is(.outline,.white){background-image:linear-gradient(120deg,#fff,#f4f4f4);color:#111111;border-color:#d9d9d9}
body .pill.ghost,body .pill.arrow-button.ghost{border-color:#444444}
body .pill.arrow-button.ghost .button-disc{color:#111111}
body .pill:is(.outline,.white):hover,body .pill.arrow-button:is(.outline,.white):hover{background-image:linear-gradient(120deg,#f4f4f4,#ececec);color:#111111}
body .care-submit>span,body .care-action-primary>span{color:#111111}
body .nav-cta[href*="wa.me"]{background-image:linear-gradient(120deg,#fff,#f4f4f4);color:#111111;border-color:#d9d9d9}
body a[href*="wa.me"]>svg{color:#111111;fill:#111111}
body .care-booking{border-color:#ececec}
body .care-field>label{color:#626262}
body .care-field :is(input,select,button.booking-control){border-color:#d9d9d9;color:#111111;box-shadow:0 2px 3px #11111103}
body .care-field button.booking-control{color:#808080}
body .care-field button.booking-control.has-value{color:#111111}
body .care-field .care-input-icon{stroke:#707070}
body .care-field :is(input,select,button.booking-control):focus-visible{outline-color:#111111;border-color:#111111}
.clinical-photo-hero{background-image:linear-gradient(115deg,#fff,#f4f4f4)}
body .offering-picture{background-color:#f4f4f4}
.practitioner-photo{background-image:linear-gradient(120deg,#f4f4f4,#fff)}
.practitioner-photo figcaption{color:#696969}
body.home .editorial-smile:after{background-image:linear-gradient(90deg,#ffffff 32%,#fffffff0 40%,#ffffff00 66%)}
.home-request{background-image:linear-gradient(120deg,#fff,#f4f4f4)}
.home-request-copy h2 em{color:#111111}
.home-request-copy>p{color:#767676}
.home-request-contacts a{color:#111111}
.home-request-copy .home-request-address{color:#8e8e8e}
.home-request-panel{border-color:#ececec}
.request-progress{border-bottom-color:#ececec}
.request-progress li{color:#979797}
.request-progress li>span{border-color:#ececec;background-color:#ffffff}
.request-progress li[aria-current]{color:#111111}
.request-progress li[aria-current]>span,.request-progress li.is-done>span{background-color:#111111;border-color:#111111}
.request-form fieldset>p{color:#888888}
.request-form label{color:#626262}
.request-form :is(input:not([type=hidden]),select){border-color:#d9d9d9;background-color:#ffffff;color:#111111}
.request-back{color:#787878}
.request-privacy{color:#919191}
.clinical-case-heading p{color:#7b7b7b}
.clinical-case-pair figure{border-color:#ececec}
.clinical-case-pair figcaption{color:#111111}
.clinical-case-source p{color:#8a8a8a}
.clinical-photo-caption{color:#8e8e8e}
body .category-page .category-offering{border-color:#ececec}
body .category-page .category-offering p{color:#7c7c7c}
.clinic-gallery-heading p{color:#7c7c7c}
.clinical-gallery{border-top-color:#ececec}
.clinical-gallery-grid figure{border-color:#ececec}
.clinical-gallery-grid img{background-color:#f4f4f4}
.clinical-gallery-grid figcaption>span{color:#111111}
.clinical-gallery-grid small{color:#929292}
.request-form .booking-control{border-color:#d9d9d9;background-color:#ffffff;color:#7e7e7e}
.request-form .booking-control.has-value{color:#111111}
.request-form .booking-control:focus-visible{outline-color:#111111}
.request-form .booking-control:hover{border-color:#b3b3b3}
.request-summary{color:#111111;background-image:linear-gradient(110deg,#f4f4f4,#ffffff);border-color:#ececec}
.practitioner-training{border-top-color:#ececec}
.practitioner-training ul{color:#7b7b7b}
body .textlink{border-color:#d9d9d9;background-image:linear-gradient(120deg,#fff,#f4f4f4);color:#111111}
body .textlink:hover{background-image:linear-gradient(120deg,#f4f4f4,#ececec);border-color:#bbbbbb;color:#111111}
body .textlink:focus-visible{outline-color:#111111}
body .prose p .textlink{color:#111111}
/* ---- mirror of decouvrir.css ---- */
.dv-page{--ink-deep:#111111;--lens:#f4f4f4}
.dv-walk-frames:after{background-image:linear-gradient(0deg,rgba(17,17,17,.82) 0%,rgba(17,17,17,.38) 40%,rgba(17,17,17,0) 68%)}
.dv-walk-copy .eyebrow{color:#d9d9d9}
.dv-dial line.long{stroke:#c1c1c1}
.dv-dial text{fill:#c1c1c1}
.dv-lens:after{box-shadow:inset 0 0 60px #11111140}
.dv-loupe-copy .eyebrow{color:#c1c1c1}
.dv-caption p:not(.dv-caption-title){color:#d9d9d9}
.dv-arch-card{background-color:#ffffff}
.dv-arch .tooth .crown{stroke:#bebebe}
.dv-arch .tooth:hover .crown,.dv-arch .tooth:focus-visible .crown{fill:#ececec}
.dv-arch .tooth text{fill:#aeaeae}
.dv-arch .arch-label{fill:#adadad}
.dv-stepper{color:#a2a2a2}
.dv-option:hover{background-color:#f4f4f4}
.dv-path a{border-bottom-color:#11111140}
.dv-path .is-urgent{color:#111111}
.dv-card-back .dv-card-tag{color:#d9d9d9}
.dv-card-back .dv-card-turn{color:#ececec}
.dv-strip-item img{background-color:#f4f4f4}
.dv-book .eyebrow{color:#c1c1c1}
.dv-book-copy p{color:#d9d9d9}
.dv-day[aria-checked="true"] small{color:#ececec}
.dv-seg input:focus-visible+span{outline-color:#111111}
.dv-ask-toggle{box-shadow:0 10px 24px #1111113d}
.dv-ask-panel{box-shadow:0 24px 60px #11111133}
.dv-msg.from-clinic{background-color:#f4f4f4}
.dv-typing i{background-color:#9e9e9e}
/* ---- mirror of home.css ---- */
/* ---- mirror of home-reviews.css ---- */
/* ---- mirror of booking-picker.css ---- */

/* ==== Part 2: hand-tuned monochrome system ==== */
/* Palette: ink #111, white #fff, greys #f4f4f4 #ececec #d9d9d9 #8a8a8a #555. */
:root:not(#_){--mono-ink:#111;--mono-hover:#333;--mono-pale:#f4f4f4;--mono-soft:#ececec;--mono-line:#d9d9d9;--mono-mid:#8a8a8a;--mono-muted:#555;
  --teal:#111;--teal-dark:#333;--accent-blue:#111;--accent-ink:#111;--accent-wash:#f4f4f4;
  --button-blue:#111;--button-disc-blue:#111;--button-ink:#111;accent-color:#111;scrollbar-color:#8a8a8a #fff}
::selection{background:#111;color:#fff}

/* Primary buttons: black, white text, white disc with black arrow; hover dark grey. */
body:not(#_) :is(.pill,.pill.arrow-button,.care-action-primary,.care-submit):not(.outline):not(.white){background:#111;color:#fff;border-color:#111;filter:none}
body:not(#_) :is(.pill,.pill.arrow-button,.care-action-primary,.care-submit):not(.outline):not(.white):hover{background:#333;border-color:#333;color:#fff;filter:none}
body:not(#_) .pill.arrow-button:not(.outline):not(.white) .button-disc,body:not(#_) :is(.care-submit,.care-action-primary)>span{background:#fff;color:#111;box-shadow:none}
/* Secondary buttons: white, #d9d9d9 border, black text, black disc with white arrow. */
body:not(#_) .pill:is(.outline,.white),body:not(#_) .pill.arrow-button:is(.outline,.white){background:#fff;color:#111;border-color:#d9d9d9;filter:none}
body:not(#_) .pill:is(.outline,.white):hover,body:not(#_) .pill.arrow-button:is(.outline,.white):hover{background:#f4f4f4;color:#111;border-color:#8a8a8a}
body:not(#_) .pill.arrow-button:is(.outline,.white) .button-disc{background:#111;color:#fff;box-shadow:none}
body:not(#_) :is(.card-arrow,.offering-arrow,.se-row-arrow,.journal-read>span){background:#111;color:#fff;border-color:transparent}
body:not(#_) .textlink{background:#fff;color:#111;border-color:#d9d9d9}
body:not(#_) .textlink:hover{background:#f4f4f4;color:#111;border-color:#8a8a8a}
body:not(#_) .prose p .textlink{background:none;color:#111;text-decoration-color:#111}

/* Home hero: faint lettering, black/grey title words. */
body:not(#_) .care-lettering-fill{color:rgba(17,17,17,.045)}
body:not(#_) .care-lettering-outline{color:transparent;-webkit-text-stroke-color:rgba(17,17,17,.11)}
body:not(#_) :is(.care-copy,.services-hero,.category-hero,.inner-hero) h1 :is(em,.care-word){color:#111;-webkit-text-fill-color:currentColor;background:none}
body:not(#_) .home-request-copy h2 em,body:not(#_) .journal-heading h1 span{color:#555}


/* Badges: plain grey text, no pill. */
body:not(#_) .megacol em{background:none;color:#555;padding:0}

/* Focus stays visible in ink. */
body:not(#_) :is(a,button,summary,input,textarea,select,[tabindex]):focus-visible{outline-color:#111}
body:not(#_) .wa-float:focus-visible{outline-color:#111;outline-offset:3px}

/* Contact map placeholder (shown only without a Maps link). */
body:not(#_) .smile-art svg rect{fill:#f4f4f4}
body:not(#_) .smile-art svg path{stroke:#d9d9d9}
body:not(#_) .smile-art svg circle{fill:#111}
body:not(#_) .smile-art svg text{fill:#8a8a8a}

/* Exceptions demandées (28/10) : logo et icônes de marque gardent leurs couleurs d'origine. */
body:not(#_) .topbar .brand svg,body:not(#_) .footer .brand svg{color:#167885}
body:not(#_) :is(.header-socials,.socials) a[aria-label="Facebook"]{color:#1877f2}
body:not(#_) :is(.header-socials,.socials) a[aria-label="Instagram"]{color:#e4405f}
body:not(#_) .wa-float,body:not(#_) a.wa-float[href]{background:#25d366;color:#fff}
body:not(#_) :is(.header-whatsapp,.care-whatsapp,.contact-chip.whatsapp,.menu-round.whatsapp) svg,body:not(#_) .mobilebar a[href*="wa.me"] svg{color:#25d366;fill:#25d366}
/* Bandeau d'appel final : l'intitulé reste lisible sur le fond sombre (28/10). */
body:not(#_) .ctaband .eyebrow{color:rgba(255,255,255,.72)}

/* Header WhatsApp uses the original brand colour, with a contrasting white mark. */
body:not(#_) .header-whatsapp{background:#25d366;color:#fff;border-color:#25d366;box-shadow:0 4px 14px #128c4a24}
body:not(#_) .header-whatsapp:hover{background:#128c4a;border-color:#128c4a}
body:not(#_) .header-whatsapp>svg,body:not(#_) .header-whatsapp .header-wa-arrow{color:#fff;fill:#fff}

body:not(#_) .header-whatsapp svg use{color:#fff;fill:#fff}

/* Official supplied wordmark. Keep its native artwork and transparent background. */
body:not(#_) .topbar .brand-logo{display:block;width:clamp(150px,16vw,220px);height:auto;max-height:72px;object-fit:contain}
body:not(#_) .footer-logo .brand-logo{display:block;width:220px;max-width:100%;height:auto;object-fit:contain}
body:not(#_) .brand-logo--white{filter:brightness(0) invert(1)}
@media(max-width:700px){body:not(#_) .topbar .brand-logo{width:150px;max-height:50px}}

/* All booking submit labels use the button's geometric centre, excluding the icon. */
body:not(#_) :is(.care-submit,.bp-send){position:relative;display:grid;place-items:center;justify-content:center;text-align:center;gap:0;padding:8px 52px;min-height:50px}
body:not(#_) .care-submit>span,body:not(#_) .bp-send>svg{position:absolute;right:8px;left:auto;top:50%;transform:translateY(-50%);margin:0}
