
:root{
  --ink:#3C3C3C;--ink-2:#51554f;--muted:#6e756c;--sage:#A6B39C;--sage-dark:#66745F;--sage-soft:#eef1eb;
  --cream:#F6F3EC;--paper:#fffdf9;--sand:#e9dfd1;--line:#dcded8;--white:#fff;--bronze:#C28A4E;--copper:#C28A4E;--copper-soft:#f3e7d7;--shadow:0 18px 60px rgba(60,60,60,.10);
  --radius:26px;--radius-sm:16px;--serif:Georgia,'Times New Roman',serif;--sans:Montserrat,Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.skip{position:fixed;left:10px;top:-80px;background:var(--ink);color:white;padding:10px 14px;z-index:9999;border-radius:8px}.skip:focus{top:10px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:800;color:var(--sage-dark);margin:0 0 12px}.muted{color:var(--muted)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,253,249,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,221,212,.8)}.nav-wrap{height:82px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand-mark{width:44px;height:44px;border-radius:50%;background:var(--sage);color:white;display:grid;place-items:center;font-family:var(--serif);font-size:1.25rem}.brand-text{display:flex;flex-direction:column;line-height:1.1}.brand-text strong{font-family:var(--serif);letter-spacing:.02em}.brand-text small{font-size:.67rem;color:var(--muted);margin-top:5px}.main-nav{margin-left:auto;display:flex;align-items:center;gap:23px;font-size:.91rem}.main-nav>a{position:relative}.main-nav>a:after{content:'';position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--sage);transition:.25s}.main-nav>a:hover:after,.main-nav>a.active:after{right:0}.nav-group{position:relative}.nav-group>button{border:0;background:none;padding:0;cursor:pointer;color:inherit}.dropdown{position:absolute;top:calc(100% + 10px);left:-18px;min-width:265px;background:var(--paper);border:1px solid var(--line);border-radius:15px;padding:10px;box-shadow:var(--shadow);display:grid;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-4px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease}.dropdown:before{content:'';position:absolute;left:0;right:0;top:-14px;height:14px;background:transparent}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown,.nav-group.open .dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.dropdown a{padding:10px 12px;border-radius:10px}.dropdown a:hover{background:var(--sage-soft)}.menu-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);background:var(--paper);border-radius:12px}.menu-toggle span{width:20px;height:2px;background:var(--ink);display:block;margin:4px auto}
.btn{border:0;border-radius:999px;padding:13px 20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--sage);color:white;box-shadow:0 8px 22px rgba(112,128,95,.25)}.btn-primary:hover{background:var(--sage-dark)}.btn-dark{background:var(--ink);color:white}.btn-light{background:white;color:var(--ink)}.btn-ghost{border:1px solid var(--line);background:rgba(255,255,255,.52)}.btn-small{padding:10px 15px;font-size:.85rem}.full{width:100%}
.hero{padding:72px 0 55px;background:radial-gradient(circle at 90% 0,#e8eee2 0,transparent 42%),var(--paper)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:68px;align-items:center}.hero h1,.page-hero h1{font:500 clamp(3rem,6vw,5.8rem)/.94 var(--serif);letter-spacing:-.035em;margin:0 0 25px}.hero h1 em,.page-hero h1 em{color:var(--sage);font-style:italic}.lead{font-size:1.13rem;color:var(--ink-2);max-width:690px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 18px}.microcopy{font-size:.82rem;color:var(--muted)}.hero-visual{background:var(--cream);border-radius:34px;padding:16px;box-shadow:var(--shadow);position:relative}.hero-visual .caption{position:absolute;left:34px;right:34px;bottom:30px;background:rgba(255,253,249,.88);backdrop-filter:blur(10px);padding:13px 16px;border-radius:14px;font-size:.83rem;display:flex;gap:9px;align-items:center}.hero-visual .caption i{width:10px;height:10px;background:var(--sage);border-radius:50%}
.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 0}.trust-grid div{padding:6px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column}.trust-grid div:first-child{padding-left:0}.trust-grid div:last-child{border-right:0}.trust-grid strong{font-family:var(--serif);font-size:1.06rem}.trust-grid span{font-size:.75rem;color:var(--muted)}
.section{padding:92px 0}.section-sage{background:var(--sage-soft)}.section-cream{background:var(--cream)}.section-dark{background:var(--ink);color:white}.section-dark .eyebrow{color:#bdcbae}.section-head{max-width:760px;margin:0 auto 45px;text-align:center}.section-head h2,.split h2,.about-grid h2,.cta-inner h2,.content h2{font:500 clamp(2rem,4vw,3.35rem)/1.08 var(--serif);letter-spacing:-.02em;margin:0 0 17px}.section-head p{color:var(--muted)}
.cards{display:grid;gap:18px}.cards.four{grid-template-columns:repeat(4,1fr)}.cards.three{grid-template-columns:repeat(3,1fr)}.service-card,.soft-card,.resource-card,.info-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:28px;min-height:250px;display:flex;flex-direction:column;transition:.25s}.service-card:hover,.resource-card:hover,.info-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-icon{width:45px;height:45px;background:var(--sage-soft);border-radius:50%;display:grid;place-items:center;font-size:1.35rem;color:var(--sage-dark);margin-bottom:25px}.service-card h3,.soft-card h3,.resource-card h3,.info-card h3{font:600 1.32rem/1.15 var(--serif);margin:0 0 12px}.service-card p,.soft-card p,.resource-card p,.info-card p{color:var(--muted);font-size:.92rem}.service-card a,.resource-card a{margin-top:auto;font-size:.86rem;font-weight:800;color:var(--sage-dark)}.soft-card>span{font-size:.76rem;color:var(--sage);font-weight:800}.resource-card>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:var(--sage-dark);font-weight:800}.resource-card{min-height:220px}
.split{display:grid;grid-template-columns:1.04fr .96fr;gap:72px;align-items:center}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{padding:11px 0 11px 30px;position:relative;border-bottom:1px solid rgba(112,128,95,.18)}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--sage);font-weight:900}.process-card{background:rgba(255,255,255,.76);border:1px solid #d6ddcf;border-radius:var(--radius);padding:32px}.process-list{list-style:none;padding:0;margin:0}.process-list li{display:grid;grid-template-columns:55px 1fr;gap:12px;padding:19px 0;border-top:1px solid var(--line)}.process-list li:first-child{border-top:0}.process-list>li>span{font-family:var(--serif);font-size:1.7rem;color:var(--sage)}.process-list strong{font-family:var(--serif);font-size:1.12rem}.process-list p{margin:4px 0 0;color:var(--muted);font-size:.87rem}.quote-panel{background:var(--ink);color:white;border-radius:var(--radius);padding:44px}.quote-panel blockquote{font:500 1.8rem/1.25 var(--serif);margin:0 0 25px}.quote-panel p{color:#ccd1ca}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.mini-grid div{border:1px solid var(--line);border-radius:13px;padding:16px}.mini-grid strong,.mini-grid span{display:block}.mini-grid span{font-size:.8rem;color:var(--muted);margin-top:4px}
.about-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center}.portrait-card{min-height:470px;border-radius:var(--radius);background:linear-gradient(140deg,#dce5d5,#efe8dc);display:grid;place-items:center;position:relative;overflow:hidden}.portrait-card:before,.portrait-card:after{content:'';position:absolute;border-radius:50%}.portrait-card:before{width:300px;height:300px;background:#b9c5ae;right:-90px;top:-90px}.portrait-card:after{width:180px;height:180px;background:#e8d7c2;left:-45px;bottom:-30px}.portrait-initials{font:500 5rem var(--serif);z-index:1;color:var(--ink)}.about-points{display:grid;gap:13px;margin-top:28px}.about-points div{display:grid;grid-template-columns:120px 1fr;padding-top:12px;border-top:1px solid var(--line)}.about-points span{color:var(--muted);font-size:.88rem}
.cta-band{padding:58px 0;background:var(--sage);color:white}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner .eyebrow{color:#e9f1e2}.cta-inner h2{margin:0 0 8px}.cta-inner p{margin:0;color:#eef3e9;max-width:730px}
.page-hero{padding:72px 0 55px;background:radial-gradient(circle at 95% 20%,#e5eadf 0,transparent 34%),var(--cream)}.page-hero .container{max-width:980px}.page-hero h1{font-size:clamp(2.8rem,5.6vw,5.3rem);max-width:920px}.page-hero p.lead{max-width:760px}.breadcrumbs{font-size:.8rem;color:var(--muted);margin-bottom:38px}.breadcrumbs a{text-decoration:underline;text-decoration-color:#bdc5b5}.content{max-width:830px;margin:auto}.content h2{font-size:2.25rem;margin-top:55px}.content h3{font:600 1.4rem var(--serif);margin-top:34px}.content a{text-decoration:underline;color:var(--sage-dark)}.content ul{padding-left:22px}.content-callout{background:var(--sage-soft);border-left:4px solid var(--sage);padding:22px 25px;border-radius:0 14px 14px 0;margin:28px 0}.legal-warning{background:#fff3cf;border:1px solid #ead58d;border-radius:14px;padding:17px 20px;margin-bottom:30px;color:#6d5b17}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.price-card{border:1px solid var(--line);border-radius:18px;padding:24px;background:white}.price-card h3{font-family:var(--serif);margin:0 0 10px}.price{font:500 1.9rem var(--serif);color:var(--sage-dark)}.price-card p{color:var(--muted);font-size:.86rem}.tag{display:inline-block;padding:5px 9px;background:var(--sage-soft);border-radius:999px;font-size:.7rem;font-weight:800;color:var(--sage-dark)}
.booking-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:start}.booking-aside{position:sticky;top:110px;background:var(--sage-soft);border-radius:var(--radius);padding:30px}.booking-box{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:30px}.step{padding:20px 0;border-top:1px solid var(--line)}.step:first-child{border-top:0;padding-top:0}.step-title{display:flex;align-items:center;gap:12px;font-weight:800;margin-bottom:12px}.step-title span{width:30px;height:30px;border-radius:50%;background:var(--sage);color:white;display:grid;place-items:center;font-size:.77rem}.service-options,.slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice,.slot{border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--paper);cursor:pointer;text-align:left}.choice.selected,.slot.selected{border-color:var(--sage);box-shadow:0 0 0 2px rgba(112,128,95,.16);background:var(--sage-soft)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}label{display:grid;gap:7px;font-weight:700;font-size:.83rem}input,select,textarea{width:100%;border:1px solid #cfd4ca;border-radius:11px;background:#fff;padding:12px 13px;color:var(--ink)}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:10px;font-weight:400}.consent input{width:auto;margin-top:4px}.privacy-note{font-size:.8rem;color:var(--muted);background:var(--cream);border-radius:11px;padding:13px}.booking-success{display:none;text-align:center;padding:30px}.booking-success.show{display:block}.booking-success .mark{margin:auto;width:64px;height:64px;background:var(--sage-soft);color:var(--sage-dark);display:grid;place-items:center;border-radius:50%;font-size:2rem}
.faq{max-width:840px;margin:auto}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font:600 1.15rem var(--serif)}.faq p{color:var(--muted)}
.site-footer{background:#20241f;color:#eff2ed;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:35px}.footer-grid>div{display:flex;flex-direction:column;gap:8px}.footer-grid strong{font-family:var(--serif)}.footer-grid a,.footer-grid button{color:#cbd2c6;font-size:.84rem}.footer-brand .brand-mark{background:#829171}.footer-bottom{border-top:1px solid #41473f;margin-top:38px;padding-top:18px;display:flex;justify-content:space-between;color:#9ea69a;font-size:.72rem}.link-button{border:0;background:none;padding:0;text-align:left;cursor:pointer}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(16px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.container{width:min(100% - 30px,var(--max))}.menu-toggle{display:block}.main-nav{display:none;position:absolute;left:15px;right:15px;top:75px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:17px;flex-direction:column;align-items:stretch;gap:8px}.main-nav.open{display:flex}.main-nav>a,.nav-group>button{padding:10px;text-align:left}.nav-group{display:grid}.dropdown{display:grid;position:static;box-shadow:none;border:0;padding:0 0 0 14px;opacity:1;visibility:visible;pointer-events:auto;transform:none}.dropdown:before{display:none}.hero-grid,.split,.about-grid,.booking-layout{grid-template-columns:1fr;gap:42px}.cards.four{grid-template-columns:repeat(2,1fr)}.cards.three,.price-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-grid div:nth-child(2){border-right:0}.booking-aside{position:static}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}}
@media(max-width:640px){body{padding-bottom:56px}.container{width:min(100% - 24px,var(--max))}.nav-wrap{height:70px}.brand-text small{display:none}.hero{padding:46px 0 35px}.hero h1,.page-hero h1{font-size:clamp(2.65rem,15vw,4.5rem)}.hero-grid{gap:35px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-visual{padding:8px;border-radius:22px}.hero-visual .caption{left:20px;right:20px;bottom:18px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid div{padding:10px 12px}.section{padding:65px 0}.cards.four,.cards.three,.price-grid{grid-template-columns:1fr}.service-card{min-height:210px}.mini-grid,.form-grid,.service-options,.slot-grid{grid-template-columns:1fr}.about-grid{gap:30px}.portrait-card{min-height:330px}.cta-inner{align-items:stretch;flex-direction:column}.cta-inner .btn{width:100%}.page-hero{padding:45px 0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/3}.footer-bottom{flex-direction:column;gap:6px}.mobile-bar{position:fixed;bottom:0;left:0;right:0;height:56px;background:#fff;border-top:1px solid var(--line);z-index:1100;display:grid;grid-template-columns:1fr 1fr}.mobile-bar a,.mobile-bar button{display:grid;place-items:center;border:0;background:white;font-weight:800;font-size:.82rem}.mobile-bar button{background:var(--sage);color:white}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn{transition:none}}

/* V3 — production readiness */
:focus-visible{outline:3px solid rgba(112,128,95,.45);outline-offset:3px}.not-found{min-height:100vh;display:grid;align-items:center;background:radial-gradient(circle at 90% 10%,var(--sage-soft),transparent 35%),var(--cream)}.not-found h1{font:600 clamp(3rem,8vw,6rem)/.98 var(--serif);margin:.2em 0}.not-found .lead{max-width:650px;margin-bottom:30px}.booking-layout-v3{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:32px;align-items:start}.booking-side-title{font:500 2.1rem/1.1 var(--serif);margin-top:0}.check-list.compact{margin:20px 0}.check-list.compact li{font-size:.88rem;padding-top:8px;padding-bottom:8px}.booking-shell{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 70px rgba(37,41,34,.07)}.booking-tabs{display:grid;grid-template-columns:1fr 1fr;background:#f0f3ed;border-bottom:1px solid var(--line);padding:7px;gap:7px}.booking-tab{border:0;background:transparent;border-radius:12px;padding:13px 16px;font-weight:800;color:var(--muted);cursor:pointer}.booking-tab.active{background:#fff;color:var(--ink);box-shadow:0 4px 18px rgba(37,41,34,.07)}.booking-panel{padding:28px}.booking-live-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:8px}.booking-live-head h2{font:600 2rem/1.1 var(--serif);margin:0}.status-pill{display:inline-flex;align-items:center;white-space:nowrap;padding:7px 11px;border-radius:999px;background:var(--sage-soft);color:var(--sage-dark);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.booking-live-note{padding:12px 14px;border-radius:12px;background:var(--cream);color:var(--muted);font-size:.84rem;margin:18px 0}.booking-live-note.success-state{background:#edf5e7;color:#3c5634}.cal-inline{min-height:640px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}.cal-setup{text-align:center;border:1px dashed #b9c2b1;border-radius:18px;padding:52px 28px;background:linear-gradient(160deg,#fbfaf6,#eef2e9)}.cal-setup .setup-icon{width:58px;height:58px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:#fff;font-size:1.5rem}.cal-setup h3{font:600 1.7rem var(--serif);margin:0 0 10px}.cal-setup p{max-width:620px;margin:0 auto 22px;color:var(--muted)}.cal-setup code{background:#fff;border:1px solid var(--line);padding:2px 5px;border-radius:5px}.booking-reassurance{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:16px;color:var(--muted);font-size:.78rem}.callback-form{display:grid;gap:14px}.form-status{background:var(--sage-soft);border-radius:12px;padding:12px 14px;color:var(--sage-dark);font-size:.84rem}.brand img{height:46px;width:auto}.site-header .brand-logo{max-width:210px}.footer-brand .brand-logo{filter:brightness(0) invert(1);opacity:.95}.hero-visual img{aspect-ratio:4/3;object-fit:cover}.page-hero em,.hero h1 em{color:var(--sage-dark);font-style:italic}.btn:active{transform:translateY(1px)}
@media(max-width:980px){.booking-layout-v3{grid-template-columns:1fr}.booking-aside{position:static}.cal-inline{min-height:720px}}
@media(max-width:640px){.booking-panel{padding:18px}.booking-live-head{display:grid}.booking-tabs{grid-template-columns:1fr}.cal-inline{min-height:760px}.booking-reassurance{display:grid;gap:6px}.status-pill{justify-self:start}}

/* V4 — visual polish */
:root{--sage:#65785a;--sage-dark:#45573e;--sage-soft:#e9efe4;--cream:#f7f1e7;--paper:#fffdfa;--ink:#242820;--sand:#e8dccb}
body{background:linear-gradient(180deg,#fffdfa 0%,#fbfaf6 100%)}
.site-header{box-shadow:0 1px 18px rgba(37,41,34,.035)}
.hero{min-height:680px;display:flex;align-items:center;overflow:hidden;position:relative}
.hero:before{content:'';position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(112,128,95,.08);left:-190px;bottom:-220px;pointer-events:none}
.hero-visual{border:1px solid rgba(112,128,95,.14);transform:rotate(.4deg)}
.hero-visual:after{content:'ÉCOUTE  •  DIALOGUE  •  SOLUTIONS';position:absolute;right:-18px;top:34px;writing-mode:vertical-rl;letter-spacing:.18em;font-size:.58rem;font-weight:800;color:var(--sage-dark)}
.service-card{position:relative;overflow:hidden}.service-card:after{content:'';position:absolute;width:95px;height:95px;border-radius:50%;background:var(--sage-soft);right:-45px;bottom:-45px;transition:.25s}.service-card:hover:after{transform:scale(1.25)}
.trust-strip strong{color:var(--sage-dark)}
.mobile-bar{box-shadow:0 -5px 24px rgba(37,41,34,.08)}
@media(max-width:720px){.hero{min-height:auto;padding-top:48px}.hero-visual:after{display:none}.hero h1{font-size:clamp(2.8rem,16vw,4.5rem)}}


/* QUAT’ M&C — V5 Premium refinements */
:root{--sage-deep:#40513a;--copper:#b88d63;--copper-soft:#f2e5d9}
.brand-mark{position:relative;background:var(--sage-dark);box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.brand-mark:after{content:'';position:absolute;width:8px;height:8px;border-radius:50%;right:0;bottom:1px;background:var(--copper);box-shadow:0 0 0 3px var(--paper)}
.brand-text strong{font-size:1.04rem}.brand-text small{letter-spacing:.035em}
.hero-v5{overflow:hidden}.hero-v5 .hero-grid{grid-template-columns:1.08fr .92fr}.hero-v5 h1{font-size:clamp(3.1rem,6vw,6.2rem)}
.hero-v5 .lead{max-width:720px}.hero-kicker{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 0}.hero-kicker span{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;color:var(--ink-2);padding:8px 11px;border-radius:999px;background:#fff;border:1px solid var(--line)}.hero-kicker i{width:6px;height:6px;border-radius:50%;background:var(--copper)}
.hero-visual-v5{min-height:520px;display:grid;align-items:end;background:linear-gradient(145deg,#dce6d4 0%,#f5eee4 58%,#efe4d7 100%);position:relative;overflow:hidden}.hero-visual-v5:before{content:'';position:absolute;width:390px;height:390px;border-radius:50%;right:-100px;top:-110px;background:rgba(112,128,95,.26)}.hero-visual-v5:after{content:'';position:absolute;width:230px;height:230px;border-radius:50%;left:-55px;bottom:-80px;background:rgba(184,141,99,.19)}
.dialogue-art{position:absolute;inset:36px 36px 95px;display:grid;place-items:center}.dialogue-card{width:min(390px,90%);background:rgba(255,253,249,.82);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.7);border-radius:28px;padding:28px;box-shadow:0 20px 55px rgba(64,81,58,.16);position:relative;z-index:2}.dialogue-line{height:9px;border-radius:99px;background:#d8ded1;margin:12px 0}.dialogue-line.short{width:68%}.dialogue-line.mid{width:83%}.dialogue-people{display:flex;align-items:center;justify-content:center;gap:56px;margin:20px 0 28px}.person-dot{width:80px;height:80px;border-radius:50%;background:#b9c6af;box-shadow:0 0 0 14px rgba(185,198,175,.25)}.person-dot.alt{background:#d9bf9e;box-shadow:0 0 0 14px rgba(217,191,158,.23)}.dialogue-bridge{height:2px;width:80px;background:var(--sage);position:relative}.dialogue-bridge:before,.dialogue-bridge:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--sage);top:-3px}.dialogue-bridge:before{left:0}.dialogue-bridge:after{right:0}
.service-card .audience-tag{margin-top:14px;display:inline-flex;width:max-content;padding:5px 8px;border-radius:8px;background:var(--cream);color:var(--ink-2);font-size:.72rem;font-weight:700}
.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.audience-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px}.audience-card .num{font:500 2rem var(--serif);color:var(--copper)}.audience-card h3{font:600 1.5rem var(--serif);margin:10px 0}.audience-card p{color:var(--muted);font-size:.92rem}.audience-card ul{padding-left:19px;color:var(--ink-2);font-size:.88rem}
.proof-row{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:stretch}.proof-panel{border-radius:26px;padding:34px;background:var(--ink);color:#fff}.proof-panel h3{font:500 2rem/1.1 var(--serif);margin:0 0 14px}.proof-panel p{color:#d9ddd6}.proof-list{display:grid;gap:10px;margin-top:24px}.proof-list span{padding:11px 0;border-top:1px solid rgba(255,255,255,.14)}.proof-quote{border-radius:26px;padding:34px;background:var(--copper-soft);display:flex;flex-direction:column;justify-content:space-between}.proof-quote blockquote{font:500 1.65rem/1.25 var(--serif);margin:0}.proof-quote small{color:var(--muted);margin-top:20px}
.booking-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 28px}.booking-type{border:1px solid var(--line);border-radius:16px;background:#fff;padding:17px;text-align:left;cursor:pointer;transition:.2s}.booking-type:hover,.booking-type.active{border-color:var(--sage);background:var(--sage-soft);transform:translateY(-1px)}.booking-type strong{display:block;font-family:var(--serif);font-size:1.03rem}.booking-type span{display:block;color:var(--muted);font-size:.78rem;margin-top:4px}.booking-type .duration{color:var(--sage-dark);font-weight:800}
.portrait-card-v5{min-height:500px;border-radius:var(--radius);background:linear-gradient(145deg,#dce5d5,#f3eadf);display:grid;place-items:center;position:relative;overflow:hidden}.portrait-card-v5 .portrait-frame{width:72%;aspect-ratio:4/5;border-radius:999px 999px 28px 28px;background:rgba(255,255,255,.48);border:1px solid rgba(255,255,255,.8);display:grid;place-items:center;z-index:2}.portrait-card-v5 .portrait-frame span{font:500 4.6rem var(--serif);color:var(--sage-dark)}.portrait-card-v5 .photo-note{position:absolute;left:22px;right:22px;bottom:20px;background:rgba(255,253,249,.88);backdrop-filter:blur(8px);padding:12px 14px;border-radius:13px;font-size:.78rem;color:var(--ink-2);z-index:3}.portrait-card-v5:before{content:'';position:absolute;width:280px;height:280px;border-radius:50%;right:-100px;top:-70px;background:#b8c6ad}.portrait-card-v5:after{content:'';position:absolute;width:190px;height:190px;border-radius:50%;left:-60px;bottom:-40px;background:#ddc2a1}
.site-footer{border-top:1px solid rgba(217,221,212,.8)}
@media(max-width:900px){.audience-grid,.booking-type-grid,.proof-row{grid-template-columns:1fr}.hero-visual-v5{min-height:420px}.hero-v5 .hero-grid{grid-template-columns:1fr}.dialogue-art{inset:24px 20px 88px}}
@media(max-width:600px){.hero-v5 h1{font-size:clamp(2.7rem,15vw,4.3rem)}.dialogue-people{gap:30px}.person-dot{width:64px;height:64px}.dialogue-bridge{width:55px}.hero-kicker{gap:7px}.hero-kicker span{font-size:.72rem}.audience-card,.proof-panel,.proof-quote{padding:24px}}

/* V6 — identité visuelle validée */
.brand-logo-main{height:62px;width:auto;max-width:286px;display:block}.site-header .brand{padding:4px 0}.site-header .brand-logo-main{height:58px}.footer-logo{height:70px;width:auto;max-width:320px}.site-footer .brand{display:block}.brand-icon-mobile{display:none}.identity-signature{letter-spacing:.065em}.btn-primary{background:var(--sage-dark);box-shadow:0 8px 22px rgba(102,116,95,.23)}.btn-primary:hover{background:#52604d}.cta-band{background:var(--sage-dark)}
@media(max-width:1000px){.site-header .brand-logo-main{height:52px;max-width:235px}}
@media(max-width:640px){.site-header .brand-logo-main{height:46px;max-width:205px}.footer-logo{height:60px;max-width:260px}}


/* Concept 1 — identité visuelle validée + portrait provisoire */
:root{
  --sage:#8DA690;
  --sage-dark:#2F4B43;
  --sage-deep:#2F4B43;
  --sage-soft:#EEF2EC;
  --cream:#F6F4EE;
  --paper:#FFFEFB;
  --ink:#2F3431;
  --ink-2:#49514D;
  --muted:#69736D;
  --copper:#B8734A;
  --bronze:#B8734A;
  --copper-soft:#F2E5DA;
}
.brand-logo-main{height:58px;max-width:300px;object-fit:contain}
.footer-brand{background:var(--cream);padding:10px 14px;border-radius:14px;width:max-content;max-width:100%}
.footer-logo{height:64px;max-width:300px;object-fit:contain;filter:none!important;opacity:1!important}
.portrait-card-v5{display:block;min-height:500px;background:var(--cream)}
.portrait-card-v5 picture{display:block;width:100%;height:100%;min-height:500px}
.portrait-card-v5 .portrait-photo{width:100%;height:100%;min-height:500px;object-fit:cover;object-position:center 28%;border-radius:var(--radius);display:block;position:relative;z-index:1}
.portrait-card-v5 .photo-note{background:rgba(246,244,238,.92);color:var(--ink-2);border:1px solid rgba(47,75,67,.12)}
.portrait-card-v5:before,.portrait-card-v5:after{display:none}
.btn-primary{background:var(--copper);color:white;box-shadow:0 8px 22px rgba(184,115,74,.22)}
.btn-primary:hover{background:#9D5F3D}
.cta-band{background:var(--sage-dark)}
.hero h1 em,.page-hero h1 em{color:var(--copper)}
.main-nav>a:after{background:var(--copper)}
@media(max-width:640px){
  .brand-logo-main{height:44px;max-width:210px}
  .footer-logo{height:54px;max-width:245px}
  .portrait-card-v5,.portrait-card-v5 picture,.portrait-card-v5 .portrait-photo{min-height:430px}
}

/* V10 — formulaire de contact sécurisé */
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.form-status.success-state{color:#2f4b43;background:#edf4ef;border:1px solid #b8cdbd;padding:.85rem 1rem;border-radius:12px}
.form-status.error-state{color:#7b2f23;background:#fff2ef;border:1px solid #e4b8ae;padding:.85rem 1rem;border-radius:12px}
.callback-form button[aria-busy="true"]{opacity:.7;cursor:wait}

/* V14 — lisibilité mobile renforcée */
@media (max-width: 720px){
  html{font-size:17px}
  body{font-size:1rem;line-height:1.72;padding-bottom:64px}
  .container{width:min(100% - 32px,var(--max))}
  .nav-wrap{height:76px;gap:14px}
  .site-header .brand-logo-main,.brand-logo-main{height:50px;max-width:230px}
  .menu-toggle{width:48px;height:48px;border-radius:14px}
  .main-nav{left:12px;right:12px;top:72px;padding:16px;border-radius:16px;font-size:1rem;max-height:calc(100vh - 90px);overflow:auto}
  .main-nav>a,.nav-group>button{padding:14px 12px;font-size:1rem;line-height:1.3}
  .dropdown{padding:2px 0 4px 16px;gap:2px}
  .dropdown a{padding:12px;font-size:.98rem}

  .hero,.page-hero{padding:42px 0 36px}
  .hero-v5 h1,.hero h1,.page-hero h1{font-size:clamp(2.45rem,12.5vw,3.65rem);line-height:1.02;letter-spacing:-.025em}
  .lead{font-size:1.08rem;line-height:1.65}
  .eyebrow{font-size:.82rem;letter-spacing:.11em}
  .microcopy{font-size:.92rem;line-height:1.55}
  .hero-kicker span{font-size:.84rem;padding:9px 12px}
  .hero-actions{gap:10px}
  .btn,.btn-small{min-height:48px;padding:13px 18px;font-size:1rem}

  .trust-grid{grid-template-columns:1fr;gap:0;padding:8px 0}
  .trust-grid div,.trust-grid div:first-child{padding:14px 2px;border-right:0;border-bottom:1px solid var(--line)}
  .trust-grid div:last-child{border-bottom:0}
  .trust-grid strong{font-size:1.2rem}
  .trust-grid span{font-size:.92rem;line-height:1.45}

  .section{padding:58px 0}
  .section-head{margin-bottom:30px;text-align:left}
  .section-head h2,.split h2,.about-grid h2,.cta-inner h2,.content h2{font-size:clamp(1.95rem,9vw,2.7rem);line-height:1.12}
  .section-head p,.content p,.split p,.about-grid p,.cta-inner p{font-size:1rem}
  .service-card,.soft-card,.resource-card,.info-card,.audience-card,.proof-panel,.proof-quote{padding:22px;min-height:auto}
  .service-card h3,.soft-card h3,.resource-card h3,.info-card h3,.audience-card h3{font-size:1.45rem}
  .service-card p,.soft-card p,.resource-card p,.info-card p,.audience-card p{font-size:1rem;line-height:1.62}
  .service-card a,.resource-card a{font-size:.98rem}
  .audience-card ul{font-size:.98rem;line-height:1.6}
  .check-list li{font-size:1rem;padding-top:13px;padding-bottom:13px}
  .process-list strong{font-size:1.2rem}.process-list p{font-size:.98rem}
  .proof-quote blockquote{font-size:1.45rem}

  .about-grid{gap:28px}
  .about-points div{grid-template-columns:1fr;gap:5px}
  .about-points strong{font-size:1.05rem}
  .about-points span{font-size:.98rem}
  .portrait-card-v5,.portrait-card-v5 picture,.portrait-card-v5 .portrait-photo{min-height:390px}

  .content{max-width:100%}
  .content h2{margin-top:42px}
  .content h3{font-size:1.45rem}
  .content li{margin-bottom:8px}
  .breadcrumbs{font-size:.9rem;margin-bottom:28px}

  .booking-panel{padding:20px}
  .booking-live-head h2{font-size:1.9rem}
  .booking-live-note,.booking-reassurance,.booking-type span{font-size:.95rem}
  .booking-type strong{font-size:1.12rem}
  .callback-form label{font-size:1rem}
  .callback-form input,.callback-form select,.callback-form textarea{font-size:16px;min-height:48px;padding:12px 13px}
  .callback-form textarea{min-height:120px}
  .consent{align-items:flex-start;line-height:1.55}

  .footer-grid{grid-template-columns:1fr;gap:28px}
  .footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:auto}
  .site-footer{font-size:1rem}
  .site-footer a{padding:4px 0}
  .footer-logo{height:58px;max-width:260px}
  .footer-bottom{font-size:.9rem;align-items:flex-start}
  .mobile-bar{height:64px}
  .mobile-bar a,.mobile-bar button{font-size:.95rem}
}

@media (max-width: 420px){
  .container{width:min(100% - 24px,var(--max))}
  .site-header .brand-logo-main,.brand-logo-main{height:46px;max-width:205px}
  .hero-v5 h1,.hero h1,.page-hero h1{font-size:clamp(2.2rem,12vw,3rem)}
  .hero-visual-v5{min-height:340px}
  .dialogue-art{inset:18px 12px 70px}
  .dialogue-card{padding:20px}
  .dialogue-people{gap:22px;margin:16px 0 22px}
  .person-dot{width:56px;height:56px}
  .dialogue-bridge{width:46px}
  .portrait-card-v5,.portrait-card-v5 picture,.portrait-card-v5 .portrait-photo{min-height:340px}
  .footer-brand{padding:8px 10px}
}
