:root{--plum:#6d214f;--plum-dark:#4f1739;--plum-light:#8b3a67;--sage:#91aa9c;--sage-dark:#587365;--champagne:#c9a96e;--cream:#fcf8f3;--beige:#f2e8dc;--ink:#2c2230;--muted:#6f6670;--white:#fff;--shadow:0 10px 28px rgba(79,23,57,.13);--shadow-hover:0 16px 38px rgba(79,23,57,.2)}
html{scroll-behavior:smooth}body{color:var(--ink)}
/* Production header: readable contact details and restrained branding */
.contact-bar,.es-contact-strip{background:var(--plum-dark)!important;color:#fff!important}
.contact-bar .shell,.es-contact-strip .es-contact-inner{min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:34px!important;flex-wrap:wrap!important}
.contact-bar a,.es-contact-strip a{color:#fff!important;font-size:15px!important;font-weight:800!important;letter-spacing:.01em!important;text-decoration:none!important}
.site-header,.es-header,.top{background:rgba(255,255,255,.98)!important;border-bottom:1px solid rgba(109,33,79,.12)!important;box-shadow:0 5px 18px rgba(79,23,57,.07)!important}
.site-header .brand img,.es-header .es-brand img,.top img[alt*="Expertise"],header img[alt*="Expertise"]{width:auto!important;height:auto!important;max-width:88px!important;max-height:72px!important;object-fit:contain!important}
.site-header .brand strong,.es-header .es-brand-text strong{color:var(--plum)!important}
.site-header nav a,.es-header nav a,.top nav a{color:var(--ink)!important;font-weight:700!important;text-decoration:none!important}
.site-header nav a:hover,.es-header nav a:hover,.top nav a:hover{color:var(--plum)!important}
/* Brand remains prune */
.brand small,.es-brand-text span,.brand-text,.logo-text{color:var(--plum)!important}
/* Unified, obvious actions */
a.button,button.button,.btn,.v2-btn,.es3-btn,.header-actions a,.hero-actions a,.contact button[type="submit"],form button[type="submit"]{border-radius:999px!important;font-weight:800!important;box-shadow:var(--shadow)!important;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important}
a.button:hover,button.button:hover,.btn:hover,.v2-btn:hover,.es3-btn:hover,.header-actions a:hover,.hero-actions a:hover,.contact button[type="submit"]:hover,form button[type="submit"]:hover{transform:translateY(-2px)!important;box-shadow:var(--shadow-hover)!important;filter:brightness(1.04)!important}
a.button:active,button.button:active,.btn:active,.v2-btn:active,.es3-btn:active,.header-actions a:active{transform:translateY(0) scale(.98)!important}
.header-appointment,.button:not(.ghost):not(.white):not(.secondary),.es3-btn:not(.secondary),.v2-btn{background:var(--plum)!important;color:#fff!important;border-color:var(--plum)!important}
.header-quote,.button.ghost,.button.secondary,.es3-btn.secondary{background:var(--sage)!important;color:#173126!important;border-color:var(--sage-dark)!important;box-shadow:0 8px 22px rgba(88,115,101,.22)!important}
/* Light accents, never replacing the brand */
.kicker,.eyebrow,.tag,.badge{color:var(--sage-dark)!important}
.kicker:before,.section-head:after,.v2-kicker:after{background:var(--champagne)!important}
.stars{color:#d1a14e!important}
.profile-card:nth-child(2),.solution-row:nth-of-type(2n),.resource-grid a:nth-child(2n){border-color:rgba(145,170,156,.7)!important}
.profile-card:nth-child(3),.resource-grid a:nth-child(3n){border-color:rgba(201,169,110,.7)!important}
.profile-card,.solution-row,.resource-grid a,.review-card,.faq details,.v2-toc,.v2-note,.v2-faq details{box-shadow:0 7px 22px rgba(79,23,57,.08)!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important}
.profile-card:hover,.solution-row:hover,.resource-grid a:hover,.review-card:hover{transform:translateY(-3px)!important;box-shadow:var(--shadow-hover)!important;border-color:var(--plum-light)!important}
.profile-card.active,.solution-row.active,[aria-selected="true"]{border:2px solid var(--plum)!important;box-shadow:0 0 0 4px rgba(109,33,79,.1),var(--shadow-hover)!important}
/* Hero accents and natural photo enhancement without facial alteration */
.hero,.page-hero,.v2-hero{background:linear-gradient(135deg,var(--cream),#fff 58%,rgba(145,170,156,.12))!important}
.portrait img,.hero img[src*="karine"],.about img[src*="karine"]{filter:brightness(1.09) contrast(1.04) saturate(1.06) warm(1)!important}
/* warm() is ignored where unsupported; no geometric/face alteration */
.portrait img,.hero img[src*="karine"],.about img[src*="karine"]{filter:brightness(1.09) contrast(1.04) saturate(1.06)!important}
/* Resource and guide stability */
body article,main article,.v2-article{max-width:1120px!important;margin-left:auto!important;margin-right:auto!important}
.v2-shell,.container,.shell{width:min(1180px,calc(100% - 32px))!important;margin-inline:auto!important}
.v2-hero img,article img{max-width:100%;height:auto}
.v2-table{display:block!important;width:100%!important;overflow-x:auto!important;border-collapse:collapse!important}
.v2-table th{background:var(--plum)!important;color:#fff!important}.v2-table td,.v2-table th{padding:12px!important}
.v2-note{background:rgba(145,170,156,.14)!important;border-left:4px solid var(--sage-dark)!important}
.v2-cta,.es3-conversion-band{background:linear-gradient(135deg,var(--plum-dark),var(--plum))!important;color:#fff!important}
/* Never allow giant logos in guides/resources */
body>header img,header.top img,.v2-header img,.es-header img{max-width:92px!important;max-height:72px!important;width:auto!important;height:auto!important}
/* Forms */
input,select,textarea{border:1px solid rgba(109,33,79,.22)!important;border-radius:12px!important}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(145,170,156,.28)!important;border-color:var(--sage-dark)!important}
/* Mobile */
@media(max-width:820px){
 .contact-bar .shell,.es-contact-strip .es-contact-inner{gap:10px!important;padding:8px 12px!important}
 .contact-bar a,.es-contact-strip a{font-size:13px!important}
 .site-header .brand img,.es-header .es-brand img,body>header img{max-width:70px!important;max-height:58px!important}
 .header-actions{gap:6px!important}.header-actions a{padding:10px 12px!important;font-size:12px!important}
 .mobile-actions{box-shadow:0 -8px 24px rgba(79,23,57,.18)!important}
}
@media(max-width:520px){
 .contact-bar .shell,.es-contact-strip .es-contact-inner{display:grid!important;grid-template-columns:1fr!important;text-align:center!important}
 .contact-bar a,.es-contact-strip a{font-size:13px!important}
}

/* === V4.2 — palette corrigée et finitions production === */
:root{
  --plum:#6f214f;
  --plum-dark:#4b1737;
  --plum-light:#8b3d68;
  --sage:#8fa68f;
  --sage-dark:#526a57;
  --sage-soft:#edf2eb;
  --champagne:#c9a15d;
  --champagne-soft:#fbf3e4;
  --cream:#fcf8f2;
  --beige:#f3e9de;
  --ink:#2b2029;
  --muted:#6f6670;
}

/* L'identité Expertise & Social reste exclusivement prune */
.brand strong,.brand small,.brand-text,.logo-text,.es-brand-text strong,.es-brand-text span,
footer strong:first-of-type{color:var(--plum)!important}

/* Bandeau contact plus lisible, sans alourdir */
.contact-bar,.es-contact-strip{background:linear-gradient(90deg,var(--plum-dark),var(--plum))!important}
.contact-bar .shell,.es-contact-strip .es-contact-inner{min-height:38px!important;justify-content:flex-start!important}
.contact-bar a,.es-contact-strip a{font-size:13px!important;font-weight:700!important;opacity:.98}

/* En-tête plus aéré et CTA clairement hiérarchisés */
.site-header .nav,.es-header .es-nav{gap:22px!important}
.site-header nav,.es-header nav{gap:27px!important}
.header-actions{display:flex!important;gap:10px!important;align-items:center!important}
.header-quote{background:var(--sage)!important;color:#fff!important;border-color:var(--sage-dark)!important}
.header-quote:hover{background:var(--sage-dark)!important}
.header-appointment{background:var(--plum)!important;color:#fff!important}

/* Hero conforme à la maquette validée */
.hero{background:
 radial-gradient(circle at 3% 42%,rgba(143,166,143,.17),transparent 24%),
 radial-gradient(circle at 92% 72%,rgba(201,161,93,.12),transparent 20%),
 linear-gradient(135deg,var(--cream),#fff 62%,#fbf5ec)!important}
.hero h1{color:var(--plum-dark)!important}
.hero h1 .accent-sage{color:var(--sage-dark)!important}
.hero h1 .accent-champagne{color:var(--champagne)!important}
.hero .kicker{color:var(--sage-dark)!important}
.hero .kicker:after{content:"";display:block;width:34px;height:2px;margin-top:8px;background:var(--champagne)}
.hero-actions .button:first-child{background:var(--plum)!important;border-color:var(--plum)!important;color:#fff!important}
.hero-actions .button.ghost{background:var(--sage)!important;border-color:var(--sage-dark)!important;color:#fff!important}
.hero-actions .button.ghost:hover{background:var(--sage-dark)!important}
.trust-line span{background:rgba(255,255,255,.8)!important;border-color:rgba(143,166,143,.3)!important}
.portrait>img{border-radius:38px 38px 10px 38px!important}
.portrait-note{background:rgba(255,255,255,.96)!important;color:var(--ink)!important;border:1px solid rgba(109,33,79,.12)!important}
.portrait-note strong{color:var(--plum)!important}.portrait-note a{color:var(--sage-dark)!important;font-weight:800}

/* Cartes et solutions : accents subtils, fonds blancs */
.profile-card,.solution-row,.resource-grid a{background:#fff!important}
.profile-card .icon{background:var(--sage-soft)!important;color:var(--sage-dark)!important}
.profile-card:nth-child(3) .icon{background:var(--champagne-soft)!important;color:#9a722d!important}
.solution-row b{color:var(--plum)!important}
.solution-row:nth-of-type(4n+3) b{color:var(--sage-dark)!important}
.solution-row:nth-of-type(4n+1) i{color:var(--champagne)!important}

/* Avis et détails premium */
.stars{color:var(--champagne)!important}
.google-mark{box-shadow:0 0 0 1px rgba(201,161,93,.25)!important}
.review-card{border-color:rgba(201,161,93,.22)!important}

/* Formulaires et focus accessibles */
input:focus,select:focus,textarea:focus{outline:3px solid rgba(143,166,143,.30)!important;border-color:var(--sage-dark)!important}
form button[type="submit"]{background:var(--plum)!important;color:#fff!important}

/* Footer : logo maîtrisé et marque prune */
footer img{width:auto!important;height:auto!important;max-width:76px!important;max-height:62px!important;object-fit:contain!important}

@media(max-width:980px){
 .site-header nav{gap:18px!important}
 .header-actions a{padding-inline:14px!important}
}
@media(max-width:820px){
 .contact-bar .shell{justify-content:center!important}
 .site-header .nav{gap:12px!important}
}
