*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--rose:#C04060;--majorelle:#4040A0;--ardoise:#484848;--dark:#2E2E2E;--light:#F2EEE8;--white:#FFFDFB;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Lora',serif}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:64px}body{font-family:var(--sans);color:var(--dark);background:var(--white);overflow-x:hidden;font-variant-numeric:lining-nums;text-align:justify;hyphens:none}h1,h2,h3,h4,h5,h6,nav,.tab-btn,.section-label,.btn-primary,.btn-link,.tag,.contact-tagline,.contact-label,.contact-card-label,.aside-block p,.urgence-title,.urgence-sub,.map-label,.map-caption,.footer-brand,.footer-mention,.footer-legal,.footer-addr,.cabinet-info-label,.faq-question{text-align:left}a{color:var(--rose);font-weight:inherit;text-decoration:none;transition:color 0.2s,filter 0.2s}a strong,a b{font-weight:inherit}a:hover{filter:brightness(0.72)}.gradient-bar{height:1px;background:#e0e0e0}body>nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,253,251,0.98);backdrop-filter:blur(12px);border-bottom:1px solid rgba(72,72,72,0.08)}.nav-inner{max-width:1100px;margin:0 auto;padding:0 32px;height:64px;display:flex;align-items:center;position:relative}.tab-btn{font-family:var(--sans);font-size:0.78rem;font-weight:400;letter-spacing:0.12em;text-transform:uppercase;color:var(--ardoise);background:none;border:none;padding:6px 20px;cursor:pointer;position:relative;top:5px;transition:color 0.2s;text-decoration:none !important;display:inline-flex;align-items:center}.tab-btn:hover{color:var(--rose)}.tab-btn::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:3px;background:var(--rose);transform:scaleX(0);transition:transform 0.5s ease}.tab-btn.active{color:var(--rose)}.tab-btn.active::after{transform:scaleX(1)}@keyframes tabEnter{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}.nav-home img{position:relative;top:7px}.nav-home{display:flex;align-items:center;justify-content:center;color:var(--ardoise);text-decoration:none;flex-shrink:0;margin-right:24px;transition:color 0.2s}.nav-home:hover{color:var(--rose)}.tabs-nav-inline{display:flex;align-items:center}#nav-espace-btn{margin-left:auto}.hero{min-height:100vh;padding:68px 72px 0;background:var(--white);overflow:hidden}.hero-container{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 68px);align-items:stretch}.hero-left{display:flex;flex-direction:column;justify-content:center;padding:80px 16px 80px 0}.hero-title{font-family:var(--serif);font-size:clamp(2.4rem,3.4vw,3rem);font-weight:300;line-height:1.15;color:var(--dark);margin-bottom:12px;opacity:0;animation:fadeUp 0.8s 0.4s forwards}.hero-title em,.section-title em{font-style:italic;color:var(--rose)}.hero-subtitle{font-family:var(--serif);font-size:1.15rem;font-weight:300;font-style:italic;color:var(--ardoise);margin-bottom:48px;opacity:0;animation:fadeUp 0.8s 0.6s forwards}.hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:52px;opacity:0;animation:fadeUp 0.8s 0.8s forwards}.tag{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;padding:6px 14px;border:1px solid rgba(192,64,96,0.3);color:var(--rose);border-radius:2px}.cta-group{display:flex;align-items:center;gap:28px;opacity:0;animation:fadeUp 0.8s 1s forwards}.btn-primary{display:inline-block;padding:14px 32px;background:var(--rose);color:white;font-family:var(--sans);font-size:0.8rem;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;border-radius:2px;transition:background 0.25s,transform 0.2s}.btn-primary:hover{background:#a03050;transform:translateY(-1px)}.btn-link{font-size:0.8rem;color:var(--ardoise);text-decoration:none;letter-spacing:0.06em;border-bottom:1px solid rgba(72,72,72,0.3);padding-bottom:2px;transition:color 0.2s}.btn-link:hover{color:var(--rose);border-color:var(--rose)}.hero-right{position:relative;background:var(--light);display:flex;align-items:center;justify-content:center;overflow:hidden;margin:80px 0;border-radius:2px}.hero-right::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 40%,rgba(192,64,96,0.07) 0%,transparent 60%),radial-gradient(ellipse at 70% 70%,rgba(64,64,160,0.06) 0%,transparent 60%)}.hero-ornament{position:relative;z-index:1;text-align:center;opacity:0;animation:fadeIn 1.2s 0.6s forwards}.hero-ornament .logo-placeholder{width:230px;height:230px;margin:0 auto 32px}.hero-ornament .logo-placeholder img{width:100%;height:100%;object-fit:contain}.hero-quote{font-family:var(--serif);font-size:1.3rem;font-style:italic;font-weight:300;color:var(--ardoise);max-width:480px;line-height:1.6;text-align:center}.hero-quote::before{content:'\201C';display:block;font-size:4rem;color:var(--rose);opacity:0.3;line-height:1;margin-bottom:-16px}section{padding:56px 72px}.container{max-width:1100px;margin:0 auto}.section-label{font-size:0.7rem;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--rose);margin-bottom:16px}.section-title{font-family:var(--serif);font-size:clamp(2rem,3vw,2.8rem);font-weight:300;line-height:1.2;color:var(--dark);margin-bottom:40px}.intro-grid{display:grid;grid-template-columns:1.618fr 1fr;gap:80px;align-items:start}.intro-aside{position:sticky;top:80px;align-self:start}.article-hero{margin:0 0 28px}@media(min-width:901px){.article-hero{display:none}}@media(min-width:901px){.intro-grid.article{grid-template-columns:3.2fr 1fr}}@media(max-width:900px){.aside-photo{display:none}}.intro-body p{font-size:1rem;line-height:1.85;color:#444;margin-bottom:20px;font-weight:300}.intro-body p strong{font-weight:600;color:var(--dark)}.aside-block{border-left:2px solid var(--rose);padding:20px 32px;margin-bottom:32px;background:var(--light)}.aside-block p{font-family:var(--sans);font-style:italic;font-size:0.95rem;font-weight:300;line-height:1.55;color:var(--ardoise)}.location-pill{display:flex;align-items:center;gap:8px;font-size:0.78rem;letter-spacing:0.08em;color:var(--majorelle);border:1px solid rgba(64,64,160,0.25);padding:8px 16px;border-radius:2px;width:100%;box-sizing:border-box;text-decoration:none}.location-pill svg{width:14px;height:14px}.pill-row{display:flex;gap:12px;width:100%}.motifs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:48px;overflow:visible}.motif-card{background:var(--light);padding:32px 28px;border:1px solid rgba(192,64,96,0.1);transition:background 0.3s,border-color 0.3s;cursor:default;opacity:0}.motif-card.visible{animation:cardIn 2s ease forwards}@keyframes cardIn{from{opacity:0;transform:scale(0.97)}to{opacity:1;transform:scale(1)}}.motif-card:hover{background:rgba(192,64,96,0.06);border-color:rgba(192,64,96,0.25)}.motif-card h3{font-family:var(--sans);font-style:normal;font-size:0.85rem;font-weight:500;letter-spacing:0.06em;color:var(--dark);margin-bottom:8px}.motif-card p{font-style:normal;font-size:0.82rem;color:#666;line-height:1.6;font-weight:300}.motif-details{margin-top:10px}.motif-details>p.motif-more{margin-top:0;font-size:0.7rem;color:var(--rose);letter-spacing:0.1em;text-transform:uppercase;font-family:var(--sans);font-weight:500;line-height:1.4}.motif-details>p{margin-top:8px;font-size:0.82rem;color:#555;line-height:1.65;font-weight:300;font-style:normal}@keyframes detailsIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.deo-h2,.deo-list li h3{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",var(--sans),sans-serif;font-size:1rem;font-weight:400;letter-spacing:0.04em;color:var(--dark);margin-bottom:4px}.deo-list{list-style:none;margin-top:16px}.deo-list li{display:flex;gap:16px;padding:6px 0}.deo-list li p{font-size:1rem;line-height:1.85;color:#444;font-weight:300;margin-bottom:0}.point-dot{width:6px;height:6px;background:var(--rose);border-radius:0;margin-top:0.6em;flex-shrink:0}.sub-h3{font-family:var(--sans);font-size:1.1rem;font-weight:400;letter-spacing:0.06em;color:var(--dark);margin-bottom:12px}.sub-h3.mt{margin-top:28px}.contact-card{display:flex;align-items:center;gap:20px;padding:24px 28px;background:var(--light);border-left:2px solid var(--rose)}.contact-icon{width:40px;height:40px;background:rgba(192,64,96,0.08);border-radius:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-card-label{font-size:0.65rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--rose);margin:0;line-height:1}.contact-cards{display:flex;flex-direction:column;gap:12px;margin-top:40px}.cabinet-info{margin-top:24px;background:var(--light);padding:28px;border-radius:2px}.contact-photo-wrap{position:relative;width:60%;margin:0 auto 24px;border-radius:2px;overflow:hidden}.contact-photo{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center top;border-radius:2px;display:block;filter:grayscale(15%);pointer-events:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.contact-photo-shield{position:absolute;inset:0;z-index:2;cursor:default}.urgence-box{background:rgba(192,64,96,0.04);border:1px solid rgba(192,64,96,0.18);border-radius:2px;padding:24px 28px;margin-top:40px}.urgence-sub{font-size:0.85rem;color:var(--ardoise);font-weight:300;margin-bottom:16px;line-height:1.6}.urgence-list{list-style:none;display:flex;flex-direction:column;gap:3px}.urgence-list li{font-size:0.85rem;color:#444;font-weight:300;line-height:1.4}.urgence-list li strong{font-family:var(--serif);font-size:1.1rem;color:var(--rose);font-weight:400;margin-right:8px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cabinet-info-label{font-size:0.7rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--rose);margin-bottom:12px}.cabinet-info-text{font-size:0.9rem;line-height:1.7;color:var(--ardoise);font-weight:300}.contact-card-value{color:var(--ardoise);font-size:1rem;font-weight:300;text-decoration:none}.contact-card-body{display:flex;flex-direction:column;gap:4px}#contact{background:var(--dark);color:white;padding:80px 40px}.contact-inner{max-width:1100px;margin:0 auto;padding:0 72px;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact-left h2,.contact-left .contact-tagline{font-family:var(--serif);font-size:clamp(2rem,3vw,2.8rem);font-weight:300;font-style:italic;color:white;line-height:1.25;margin-bottom:20px}.contact-left p{font-size:0.9rem;line-height:1.8;color:rgba(255,255,255,0.55);font-weight:300}.contact-right{display:flex;flex-direction:column;gap:10px}.contact-item{display:flex;align-items:baseline;gap:16px}.contact-label{font-size:0.65rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--rose);min-width:52px}.contact-value{font-size:1rem;color:rgba(255,255,255,0.85);font-weight:300;text-decoration:none;transition:color 0.2s}.contact-value:hover{color:white}.contact-divider{width:40px;height:1px;background:rgba(255,255,255,0.1);margin:1px 0 1px 68px}.maps-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:768px){.maps-grid{grid-template-columns:1fr}}.map-label{font-size:0.65rem;font-weight:500;letter-spacing:0.18em;text-transform:uppercase;color:var(--rose);margin-bottom:16px}.map-wrap{width:100%;height:340px;border-radius:2px;overflow:hidden;border:1px solid rgba(72,72,72,0.1)}.map-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--light);gap:16px;cursor:pointer;transition:background 0.3s}.map-placeholder:hover{background:rgba(192,64,96,0.06)}.map-placeholder svg{opacity:0.4}.map-placeholder p{font-size:0.82rem;color:var(--ardoise);font-weight:300;text-align:center;line-height:1.5;max-width:340px}.map-placeholder span{font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--rose);border:1px solid rgba(192,64,96,0.3);padding:8px 20px;border-radius:2px;transition:background 0.2s,color 0.2s}.map-placeholder:hover span{background:var(--rose);color:white}.map-caption{font-size:0.78rem;color:var(--ardoise);opacity:0.6;margin-top:10px;font-weight:300}footer{background:#1a1a1a;padding:24px 72px;display:flex;flex-direction:column;align-items:center;gap:10px}.footer-top{display:flex;flex-direction:column;align-items:center;gap:4px}.footer-brand{font-family:var(--serif);font-size:0.9rem;color:rgba(255,255,255,0.35)}.footer-mention{font-size:0.72rem;color:rgba(255,255,255,0.2);letter-spacing:0.05em}.footer-legal{font-size:0.68rem;color:rgba(255,255,255,0.15);letter-spacing:0.04em}.footer-legal a{color:rgba(255,255,255,0.25);text-decoration:none;transition:color 0.2s}.footer-legal a:hover{color:rgba(255,255,255,0.5)}@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.reveal{opacity:0;transform:translateY(30px);transition:opacity 0.7s ease,transform 0.7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.footer-addr{font-size:0.68rem;color:rgba(255,255,255,0.15);font-style:normal;letter-spacing:0.04em}.pill-col{flex:1;justify-content:flex-start;text-align:left;align-items:center;gap:8px}@media(max-width:900px){.hero-container{grid-template-columns:1fr}.hero-left{padding:60px 24px}.hero-right{display:none}.intro-grid{grid-template-columns:1fr;gap:40px}.motifs-grid{grid-template-columns:1fr 1fr}section{padding:48px 24px}.intro-aside{position:static;padding-top:0!important}}@media(max-width:768px){.hero{padding:80px 0 0}.nav-inner{height:auto;padding:4px 8px;display:flex;justify-content:center;flex-wrap:nowrap;gap:0}.nav-home{margin-right:8px;flex-shrink:0}.tabs-nav-inline{display:flex;flex-wrap:wrap;justify-content:center}.tab-btn{padding:0 16px;font-size:0.7rem;white-space:nowrap;height:44px}.hero-left{text-align:center;align-items:center}.hero-tags{justify-content:center}.cta-group{flex-direction:column;align-items:center;gap:16px;width:100%}.btn-primary{width:100%;text-align:center;white-space:nowrap}section{padding:40px 20px}#contact{padding:56px 20px}.contact-inner{grid-template-columns:1fr;gap:32px;padding:0}footer{padding:20px 20px}.pill-row{flex-direction:column}.location-pill{width:100%;justify-content:flex-start!important}.motifs-grid.reveal{opacity:1;transform:none;transition:none}.motif-card,.motif-card.visible{opacity:1;animation:none}}@media(max-width:430px){.motifs-grid{grid-template-columns:1fr}.hero-left{padding:20px 20px 32px}section{padding:32px 16px}#contact{padding:48px 16px}.contact-inner{padding:0}footer{padding:20px 16px}.contact-card{padding:16px 20px;gap:14px}.hero-tags{gap:8px}.tag{font-size:0.68rem;padding:5px 10px}.section-title{font-size:clamp(1.6rem,6vw,2.2rem)}}.faq-list{display:flex;flex-direction:column;max-width:780px}.faq-item{border-bottom:1px solid rgba(192,64,96,0.15);padding:0}.faq-item:first-child{border-top:1px solid rgba(192,64,96,0.15)}.faq-question{font-family:var(--sans);font-size:1rem;font-weight:500;color:var(--dark);padding:22px 40px 22px 0;cursor:pointer;list-style:none;position:relative;line-height:1.5}.faq-question::-webkit-details-marker,.faq-question::marker{display:none;content:''}.faq-question::after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:300;color:var(--rose);transition:transform 0.3s ease;line-height:1}.faq-item[open] .faq-question::after{transform:translateY(-50%) rotate(45deg)}.faq-item[open] .faq-question{color:var(--rose)}.faq-answer{font-size:0.95rem;line-height:1.8;color:#555;font-weight:300;padding:0 40px 22px 0;animation:detailsIn 0.25s ease}a:focus-visible,button:focus-visible,.tab-btn:focus-visible,.btn-primary:focus-visible,.nav-home:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--rose);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;left:-9999px;top:8px;z-index:9999;padding:10px 20px;background:var(--rose);color:#fff;font-family:var(--sans);font-size:0.85rem;font-weight:500;letter-spacing:0.06em;text-decoration:none;border-radius:2px;transition:left 0s}.skip-link:focus{left:8px}
.contact-photo-wrap--carousel{aspect-ratio:3/4}.contact-photo-wrap--carousel .contact-photo{position:absolute;top:0;left:0;width:100%;height:100%;aspect-ratio:unset;opacity:0}@keyframes carousel-a{0%,40%{opacity:1}50%,90%{opacity:0}100%{opacity:1}}@keyframes carousel-b{0%,40%{opacity:0}50%,90%{opacity:1}100%{opacity:0}}.contact-photo-wrap--carousel .contact-photo:nth-child(1){animation:carousel-a 10s ease-in-out infinite}.contact-photo-wrap--carousel .contact-photo:nth-child(2){animation:carousel-b 10s ease-in-out infinite}
.footer-nav{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;margin-bottom:6px}.footer-nav a{font-size:0.72rem;letter-spacing:0.08em;color:rgba(255,255,255,0.3);text-decoration:none;transition:color 0.2s}.footer-nav a:hover{color:rgba(255,255,255,0.6)}
.blog-list{display:flex;flex-direction:column;gap:44px}.blog-list-item+.blog-list-item{border-top:1px solid rgba(192,64,96,0.15);padding-top:44px}.blog-list-item .btn-link{display:inline-block;margin-top:6px}

/* ── Sommaire d'article et d'index de blog ──────────────────────────────── */
.toc{margin:24px 0;padding:16px 20px;background:var(--light);border-radius:4px;font-size:0.95em}
.toc-title{margin:0 0 8px;font-weight:600}
.toc ul,.toc ol{margin:0;padding-left:18px;line-height:1.8}.intro-body>ul:not([class]){padding-left:18px;line-height:1.8;margin-bottom:20px}

/* ── Titres de chapitre des articles de blog ────────────────────────────── */
/* Portée volontairement limitée à #blog-article, identifiant que seuls les
   quatre articles portent : blog.html, approche, deontologie, rendezvous et
   index emploient la même classe .sub-h3 et ne doivent pas bouger. */
#blog-article .sub-h3{font-size:1.3rem;font-weight:600}

/* ── Décalage sous la barre fixe (remplace les padding-top:100px en ligne) ── */
.page-top{padding-top:100px}

/* ── Navigation mobile : menu déroulant ─────────────────────────────────── */
.nav-toggle{display:none;margin-left:auto;padding:10px;background:none;border:0;color:var(--ardoise);cursor:pointer;line-height:0;border-radius:2px}
.nav-toggle:hover{color:var(--rose)}
.nav-toggle-close{display:none}
.nav-toggle[aria-expanded="true"] .nav-toggle-open{display:none}
.nav-toggle[aria-expanded="true"] .nav-toggle-close{display:block}
.nav-menu{display:contents}

@media(max-width:768px){
  .page-top{padding-top:84px}
  html{scroll-padding-top:56px}
  body{text-align:left}
  .nav-inner{height:56px;padding:0 16px;flex-wrap:nowrap;justify-content:flex-start;gap:0}
  .nav-home{margin-right:0}
  .nav-home img{top:0}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center}
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:6px 0 10px;background:rgba(255,253,251,0.98);backdrop-filter:blur(12px);border-bottom:1px solid rgba(72,72,72,0.08);box-shadow:0 10px 24px rgba(46,46,46,0.07)}
  .nav-menu.open{display:flex}
  .nav-menu .tabs-nav-inline{flex-direction:column;align-items:stretch;flex-wrap:nowrap}
  .nav-menu .tab-btn{top:0;height:48px;padding:0 20px;font-size:0.76rem;justify-content:flex-start}
  .nav-menu .tab-btn::after{left:20px;right:auto;bottom:10px;width:26px;height:2px}
  .nav-menu #nav-espace-btn{margin-left:0;margin-top:6px;padding-top:12px;border-top:1px solid rgba(72,72,72,0.08)}
}

@media(max-width:430px){
  .urgence-box{padding:18px 16px}
  .aside-block{padding:16px 20px}
}
