/*
Theme Name:  Gabert Avocat Espace
Description: Thème sur mesure — Espace dédié aux victimes de violences conjugales, Marseille
Version:     1.10.0
Author:      Gabert Avocat
Text Domain: cabinet-dupont-espace
*/
:root{--navy:#2D4A3E;--navy-2:#3A5E50;--gold:#2E6347;--gold-2:#235537;--cream:#F7F3EE;--white:#ffffff;--text:#2D3B35;--muted:#5C6B62;--muted-light:#8FA396;--border:#D8DDD5;--bg-light:#EEE9E3;--cat-divorce-bg:#FFE4E6;--cat-divorce-fg:#BE123C;--cat-garde-bg:#DBEAFE;--cat-garde-fg:#1D4ED8;--cat-pension-bg:#FEF3C7;--cat-pension-fg:#B45309;--cat-adoption-bg:#DCFCE7;--cat-adoption-fg:#15803D;--cat-succession-bg:#F3E8FF;--cat-succession-fg:#7E22CE;--cat-mediation-bg:#CFFAFE;--cat-mediation-fg:#0E7490;--cat-banque-bg:#FEF9C3;--cat-banque-fg:#854D0E;--cat-huissier-bg:#FFE4E6;--cat-huissier-fg:#9F1239;--cat-penal-bg:#F1F5F9;--cat-penal-fg:#334155;--cat-default-bg:#F3F4F6;--cat-default-fg:#374151;--font:'Jost',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-heading:'Cormorant Garamond',Georgia,serif;--font-sans:var(--font);--radius-sm:8px;--radius:16px;--radius-lg:20px;--radius-xl:24px;--shadow:0 4px 24px rgba(0,0,0,.07);--shadow-lg:0 10px 48px rgba(0,0,0,.12);--shadow-xl:0 20px 60px rgba(0,0,0,.15);--ease:all .3s ease;--ease-slow:all .5s ease;--nav-height:80px;--blanc:#ffffff;--gris:#6B7280;--gold-soft:rgba(200,221,209,.15);--space-sm:.75rem}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);font-size:1rem;line-height:1.6;color:var(--text);background:var(--white);-webkit-font-smoothing:antialiased}
img,video,svg{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}
button{cursor:pointer;font-family:var(--font)}
input,textarea,select{font-family:var(--font)}
h1,h2,h3,h4,h5,h6{color:var(--navy);line-height:1.15;font-weight:400;font-family:var(--font-heading)}
h1{font-size:clamp(2rem,5vw,3.75rem)}
h2{font-size:clamp(1.75rem,4vw,2.75rem)}
h3{font-size:1.25rem;font-weight:600}
p{color:var(--muted);line-height:1.75}
.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}
@media(min-width:1024px){.container{padding:0 2rem}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 2rem;border-radius:999px;font-size:.9375rem;font-weight:600;border:none;transition:var(--ease);white-space:nowrap;min-height:44px}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:var(--navy-2);box-shadow:0 8px 24px rgba(45,74,62,.35);transform:translateY(-1px)}
.btn-outline{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.3);backdrop-filter:blur(8px)}
.btn-outline:hover{background:rgba(255,255,255,.1)}
.btn-outline-dark{background:transparent;color:var(--navy);border:2px solid var(--navy)}
.btn-outline-dark:hover{background:var(--navy);color:#fff}
.eyebrow{display:block;color:var(--gold);font-size:.75rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:.75rem}
.section-header{text-align:center;margin-bottom:4rem}
.section-header h2{font-weight:400}
.section-header h2 strong{font-weight:600}
.section-divider{width:64px;height:2px;background:var(--gold);margin:1.5rem auto 0}
.articles-preview-header .section-divider{margin-left:0;margin-right:0}
.top-bar{display:none;background:var(--navy);color:rgba(255,255,255,.65);font-size:.75rem;padding:.5rem 0}
@media(min-width:768px){.top-bar{display:block}}
.top-bar .container{display:flex;align-items:center;justify-content:space-between}
.top-bar-left{display:flex;gap:1.5rem}
.top-bar a{display:inline-flex;align-items:center;gap:.4rem;color:rgba(255,255,255,.65);transition:color .2s;min-height:44px}
.top-bar a:hover{color:var(--white)}
.top-bar svg{width:12px;height:12px;flex-shrink:0}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 2px 12px rgba(0,0,0,.05)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:var(--nav-height)}
.site-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0}
.logo-icon{width:42px;height:42px;background:var(--navy);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-icon svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:2}
.logo-name{display:block;font-weight:600;color:var(--navy);font-size:1.1rem;line-height:1.2}
.logo-sub{display:block;font-size:.7rem;color:var(--muted);letter-spacing:.08em}
.nav-links{display:none;align-items:center;gap:.75rem}
@media(min-width:768px){.nav-links{display:flex}}
.nav-links li a{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:999px;font-size:.875rem;font-weight:600;color:var(--navy);transition:var(--ease);min-height:44px;letter-spacing:.01em}
.nav-links li a:hover{color:var(--navy);background:var(--bg-light)}
.nav-links li a.active{background:var(--navy);color:var(--white)}
.nav-cta{display:none;margin-left:1rem;padding:.625rem 1.5rem}
@media(min-width:768px){.nav-cta{display:inline-flex}}
.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;padding:.5rem;background:none;border:none;min-width:44px;min-height:44px}
@media(min-width:768px){.nav-toggle{display:none}}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--navy);border-radius:2px;transition:var(--ease);transform-origin:center}
.nav-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{display:none;background:var(--white);border-top:1px solid var(--border);padding:1rem 1.5rem 1.5rem}
.mobile-menu.open{display:block}
.mobile-menu li a{display:flex;align-items:center;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.9375rem;font-weight:500;color:var(--muted);margin-bottom:.25rem;min-height:44px;transition:var(--ease)}
.mobile-menu li a:hover{background:var(--bg-light);color:var(--navy)}
.mobile-menu .btn-primary{width:100%;margin-top:.75rem}
.page-hero{background:var(--navy);padding:5rem 1.5rem;text-align:center}
.page-hero h1{color:var(--white);font-weight:400}
.page-hero h1 strong{font-weight:600}
.page-hero p{color:rgba(255,255,255,.6);max-width:600px;margin:1.25rem auto 0;font-size:1.05rem}
@media(max-width:767px){.page-hero{padding:2.5rem 1rem}.page-hero h1{font-size:clamp(1.75rem,7vw,2.5rem)}}
.hero{position:relative;min-height:90vh;display:flex;align-items:center;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 50%,var(--navy) 100%);overflow:hidden;padding:5rem 0}
.hero-pattern{position:absolute;inset:0;opacity:.08;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%237DAA8B' fill-opacity='0.4'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.hero-inner{position:relative;display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
@media(min-width:1024px){.hero-inner{grid-template-columns:1fr 1fr;gap:4rem}}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.5rem 1.25rem;font-size:.85rem;font-weight:500;color:rgba(255,255,255,.9);margin-bottom:2rem;backdrop-filter:blur(8px)}
.hero-badge svg{width:16px;height:16px;fill:none;stroke:var(--gold);stroke-width:2;flex-shrink:0}
.hero-content h1{color:var(--white);font-weight:400;line-height:1.1;margin-bottom:1.5rem}
.hero-content h1 strong{font-weight:700;color:var(--gold)}
.hero-content p{color:rgba(255,255,255,.7);font-size:1.05rem;max-width:520px;margin-bottom:2.5rem}
.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}
.hero-image{display:block}
@media(min-width:1024px){.hero-image{display:block}}
.hero-image-inner{position:relative}
.hero-image-glow{position:absolute;inset:-1rem;background:rgba(200,221,209,.2);border-radius:var(--radius-xl);filter:blur(24px);pointer-events:none}
.hero-image-inner img{position:relative;width:100%;height:500px;object-fit:cover;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl)}
.hero-card{position:absolute;bottom:1.5rem;left:1.5rem;right:1.5rem;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-radius:14px;padding:1.25rem;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:1rem}
.hero-card-badge{width:56px;height:56px;background:var(--navy);border-radius:999px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--gold);font-weight:700;font-size:1.05rem}
.hero-card-text p{color:var(--navy);font-weight:700;font-size:1.1rem;margin:0 0 .2rem}
.hero-card-text span{color:var(--muted);font-size:.95rem}
@media(max-width:767px){.hero-image{margin-top:0}.hero-image-inner img{height:220px;border-radius:var(--radius)}.hero-image-glow{display:none}.hero-card{display:none!important}}
.expertise-preview{background:var(--cream);padding:6rem 1.5rem}
.expertise-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}
@media(min-width:640px){.expertise-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.expertise-grid{grid-template-columns:repeat(3,1fr)}}
.expertise-card{background:var(--white);border-radius:var(--radius);padding:2rem;border:1px solid var(--border);transition:var(--ease-slow)}
.expertise-card:hover{box-shadow:var(--shadow-lg);border-color:rgba(200,221,209,.25);transform:translateY(-2px)}
.expertise-card-icon{width:56px;height:56px;background:rgba(27,42,74,.05);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;transition:var(--ease)}
.expertise-card:hover .expertise-card-icon{background:rgba(200,221,209,.15)}
.expertise-card-icon svg{width:24px;height:24px;fill:none;stroke:var(--navy);stroke-width:2;transition:var(--ease)}
.expertise-card:hover .expertise-card-icon svg{stroke:var(--gold)}
.expertise-card h3{font-size:1rem;margin-bottom:.5rem}
.expertise-card p{font-size:.875rem}
.expertise-card-more{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:var(--radius);border:2px dashed rgba(46,99,71,.25);padding:2rem;min-height:180px;transition:var(--ease);color:var(--navy)}
.expertise-card-more:hover{border-color:var(--gold);background:rgba(200,221,209,.04)}
.expertise-card-more svg{width:32px;height:32px;fill:none;stroke:var(--gold);stroke-width:2;margin-bottom:.75rem;transition:transform .3s}
.expertise-card-more:hover svg{transform:translateX(4px)}
.expertise-card-more span{font-weight:600;font-size:.9375rem}
.values-section{background:var(--white);padding:6rem 1.5rem}
.values-inner{display:grid;grid-template-columns:1fr;gap:4rem;align-items:center}
@media(min-width:1024px){.values-inner{grid-template-columns:1fr 1fr}}
.values-left p{margin:1.5rem 0 2rem}
@media(max-width:767px){.values-left p{font-size:1.125rem;line-height:1.75}}
.values-inner h2{margin-bottom:1.5rem}
.values-inner>div>p{margin-top:1.25rem}
.values-image{margin-top:2rem}
.values-image img{border-radius:var(--radius);width:100%;height:300px;object-fit:cover;box-shadow:var(--shadow)}
.values-list{display:flex;flex-direction:column;gap:.25rem}
.value-item{display:flex;gap:1.25rem;padding:1.5rem;border-radius:var(--radius);transition:background .3s}
.value-item:hover{background:var(--cream)}
.value-icon{width:48px;height:48px;background:rgba(200,221,209,.1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.value-icon svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2}
.value-item h3{font-size:.9375rem;margin-bottom:.25rem}
.value-item p{font-size:.875rem}
@media(max-width:767px){.values-intro p{font-size:1.125rem;line-height:1.7}.value-item{gap:1.5rem;padding:1.25rem 1rem}.value-icon{width:64px;height:64px;border-radius:14px;flex-shrink:0}.value-icon svg{width:30px;height:30px}.value-item h3{font-size:1.2rem;margin-bottom:.375rem}.value-item p{font-size:1rem;line-height:1.6}}
.articles-preview{background:var(--cream);padding:6rem 1.5rem}
.articles-preview-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem}
@media(min-width:768px){.articles-preview-header{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.see-all{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;font-size:.9rem;color:var(--navy);transition:color .2s;white-space:nowrap;min-height:44px}
.see-all:hover{color:var(--gold)}
.see-all svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}
.see-all:hover svg{transform:translateX(3px)}
.articles-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:start}
@media(min-width:640px){.articles-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.articles-grid{grid-template-columns:repeat(3,1fr)}}
.article-item{height:100%}
.article-card{display:flex;flex-direction:column;height:100%;background:var(--white);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;transition:box-shadow .5s,border-color .5s,transform .3s}
.article-card:hover{box-shadow:var(--shadow-lg);border-color:rgba(200,221,209,.25);transform:translateY(-3px)}
.article-thumb{position:relative;height:208px;overflow:hidden;flex-shrink:0}
.article-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.article-card:hover .article-thumb img{transform:scale(1.05)}
.article-cat-badge{position:absolute;top:1rem;left:1rem;font-size:.75rem;font-weight:600;padding:.375rem .875rem;border-radius:999px;line-height:1}

/* ── Domaines droit de la famille ── */
.cat-divorce{background:#FFE4E6;color:#BE123C}
.cat-garde-enfants{background:#DBEAFE;color:#1D4ED8}
.cat-pension-alimentaire{background:#FEF3C7;color:#B45309}
.cat-adoption{background:#DCFCE7;color:#15803D}
.cat-autorite-parentale{background:#E0F2FE;color:#0369A1}
.cat-succession{background:#F3E8FF;color:#7E22CE}
.cat-mediation{background:#CFFAFE;color:#0E7490}
.cat-identite{background:#EDE9FE;color:#5B21B6}
.cat-filiation{background:#FEF9C3;color:#854D0E}
.cat-protection-mineurs{background:#FCE7F3;color:#9D174D}
.cat-regimes-matrimoniaux{background:#F0FDF4;color:#166534}
.cat-pacs{background:#FFF7ED;color:#C2410C}

.cat-banque{background:#FEF9C3;color:#854D0E}

/* ── Domaines LGBTQIA+ ── */
.cat-homoparentalite{background:#FDF4FF;color:#86198F}
.cat-pma{background:#F0ABFC;color:#701A75}
.cat-gpa{background:#E9D5FF;color:#6B21A8}
.cat-transidentite{background:#FBCFE8;color:#9D174D}
.cat-etat-civil{background:#DDD6FE;color:#4C1D95}
.cat-mariage-same-sex{background:#FEE2E2;color:#991B1B}
.cat-adoption-homoparentale{background:#D1FAE5;color:#065F46}
.cat-filiation-homoparentale{background:#FEF3C7;color:#92400E}
.cat-divorce-same-sex{background:#FFE4E6;color:#9F1239}

/* ── Fallback ── */
.cat-default{background:rgba(27,42,74,.75);color:#ffffff;backdrop-filter:blur(4px)}
.article-body{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;flex:1}
.article-title{font-size:1.05rem;font-weight:600;color:var(--navy);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .3s}
.article-card:hover .article-title{color:var(--gold-2)}
.article-excerpt{font-size:.875rem;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.article-footer{display:flex;align-items:center;justify-content:space-between;padding-top:1rem;border-top:1px solid #F9FAFB;margin-top:auto}
.article-reading-time{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--muted-light)}
.article-reading-time svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}
.article-read-more{display:flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;color:var(--gold);margin-left:auto;transition:gap .2s}
.article-card:hover .article-read-more{gap:.5rem}
.article-read-more svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.cta-section{position:relative;background:var(--navy);text-align:center;padding:2.5rem 1.5rem;overflow:hidden}
.cta-section::before,.cta-section::after{content:'';position:absolute;width:400px;height:400px;background:var(--gold);border-radius:999px;opacity:.04;pointer-events:none}
.cta-section::before{top:-200px;left:-200px}
.cta-section::after{bottom:-200px;right:-200px}
.cta-inner{position:relative;max-width:720px;margin:0 auto}
.cta-section h2{color:var(--white);font-weight:400;margin-bottom:1.5rem}
.cta-section h2 strong{font-weight:700;color:var(--gold)}
.cta-section p{color:rgba(255,255,255,.6);font-size:1.05rem;margin-bottom:2.5rem}
.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.expertises-list{background:var(--cream);padding:5rem 1.5rem}
.expertise-row{background:var(--white);border-radius:var(--radius);padding:2.5rem;border:1px solid var(--border);display:flex;gap:2rem;align-items:flex-start;margin-bottom:1.5rem;transition:var(--ease-slow)}
.expertise-row:last-child{margin-bottom:0}
.expertise-row:hover{box-shadow:var(--shadow-lg)}
.expertise-row-icon{width:64px;height:64px;border-radius:var(--radius-sm);background:rgba(27,42,74,.05);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--ease)}
.expertise-row:hover .expertise-row-icon{background:rgba(200,221,209,.15)}
.expertise-row-icon svg{width:28px;height:28px;fill:none;stroke:var(--navy);stroke-width:2;transition:var(--ease)}
.expertise-row:hover .expertise-row-icon svg{stroke:var(--gold)}
.expertise-row-body{flex:1}
.expertise-row-body h3{font-size:1.25rem;margin-bottom:.75rem}
.expertise-row-body p{margin-bottom:1.25rem}
.tag-list{display:flex;flex-wrap:wrap;gap:.5rem}
.tag{padding:.375rem .875rem;background:var(--cream);color:var(--navy);border-radius:999px;font-size:.8rem;border:1px solid var(--border)}
.bio-section{background:var(--white);padding:5rem 1.5rem}
.bio-inner{display:grid;grid-template-columns:1fr;gap:4rem;align-items:center}
@media(min-width:1024px){.bio-inner{grid-template-columns:1fr 1fr}}
.bio-image-wrap{position:relative}
.bio-image-glow{position:absolute;inset:-1rem;background:rgba(200,221,209,.08);border-radius:var(--radius-xl)}
.bio-image-wrap img{position:relative;width:100%;height:480px;object-fit:cover;object-position:center 15%;border-radius:var(--radius);box-shadow:var(--shadow)}
.bio-text h2{margin-bottom:1.5rem}
.bio-text p{margin-bottom:1rem}
.badge-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.badge-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--cream);border-radius:999px;font-size:.8rem;color:var(--navy)}
.badge-pill svg{width:16px;height:16px;fill:none;stroke:var(--gold);stroke-width:2}
.stats-band{background:var(--navy);padding:4rem 1.5rem}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;text-align:center;max-width:900px;margin:0 auto}
@media(min-width:768px){.stats-grid{grid-template-columns:repeat(4,1fr)}}
.stat-value{display:block;font-size:2.5rem;font-weight:700;color:var(--gold);margin-bottom:.25rem}
.stat-label{color:rgba(255,255,255,.55);font-size:.85rem}
.timeline-section{background:var(--cream);padding:5rem 1.5rem}
.timeline-wrap{max-width:720px;margin:3rem auto 0}
.timeline-item{display:flex;gap:1.5rem;padding-bottom:2.5rem}
.timeline-item:last-child{padding-bottom:0}
.timeline-axis{display:flex;flex-direction:column;align-items:center;flex-shrink:0}
.timeline-dot{width:48px;height:48px;border-radius:999px;background:var(--gold);color:var(--white);font-weight:700;font-size:.78rem;display:flex;align-items:center;justify-content:center}
.timeline-line{flex:1;width:2px;background:rgba(200,221,209,.2);margin-top:.5rem}
.timeline-box{background:var(--white);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border);flex:1;margin-top:.25rem}
.timeline-box h3{font-size:1rem;margin-bottom:.375rem}
.timeline-box p{font-size:.875rem;margin:0}
.category-bar{background:var(--white);border-bottom:1px solid var(--border);padding:.875rem 1.5rem;position:sticky;top:var(--nav-height);z-index:50}
.category-bar-inner{max-width:1280px;margin:0 auto;display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.category-bar-inner::-webkit-scrollbar{display:none}
.filter-btn{flex-shrink:0;padding:.35rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;border:none;background:var(--bg-light);color:var(--muted);transition:var(--ease);min-height:auto;cursor:pointer}
.filter-btn.active,.filter-btn:hover{background:var(--navy);color:var(--white)}
@media(max-width:767px){.filter-btn{min-height:44px;padding:.45rem 1.1rem}}
.articles-section{background:var(--cream);padding:4rem 1.5rem;min-height:60vh}
.single-cover{position:relative;height:288px;overflow:hidden}
@media(min-width:768px){.single-cover{height:384px}}
.single-cover img{width:100%;height:100%;object-fit:cover}
.single-cover-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(27,42,74,.8) 0%,rgba(27,42,74,.3) 50%,transparent 100%)}
.single-cover-meta{position:absolute;bottom:0;left:0;right:0;padding:2rem;max-width:860px;margin:0 auto}
.cat-badge-gold{display:inline-flex;align-items:center;gap:.35rem;background:var(--gold);color:var(--navy);font-size:.75rem;font-weight:700;padding:.35rem 1rem;border-radius:999px;text-transform:uppercase;letter-spacing:.06em}
.cat-badge-gold svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}
.reading-badge{display:inline-flex;align-items:center;gap:.35rem;color:rgba(255,255,255,.7);font-size:.75rem;margin-left:.75rem}
.reading-badge svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}
.single-cover-meta h1{color:var(--white);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:600;line-height:1.2;margin-top:.75rem}
.single-content-section{background:var(--cream);padding:4rem 1.5rem}
.single-layout{
  display:grid;grid-template-columns:1fr;
  gap:2rem;align-items:start;
  max-width:1280px;margin:0 auto;
}
@media(min-width:1024px){
  .single-layout{grid-template-columns:1fr 320px;gap:3rem}
}
.single-content-wrap{min-width:0}
.single-sidebar{display:none}
@media(min-width:1024px){
  .single-sidebar{
    display:block;
    position:sticky;
    top:calc(var(--nav-height) + 2rem);
    z-index:10;
  }
}
.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--muted);font-size:.875rem;margin-bottom:2.5rem;transition:color .2s;min-height:44px}
.back-link:hover{color:var(--navy)}
.back-link svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.article-card-content{background:var(--white);border-radius:var(--radius);padding:2rem;border:1px solid var(--border);box-shadow:0 1px 4px rgba(0,0,0,.04)}
@media(min-width:768px){.article-card-content{padding:3rem}}
.article-excerpt-lead{font-size:1.1rem;color:#374151;font-weight:500;line-height:1.7;padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid var(--border)}
.entry-content h2{font-size:1.5rem;font-weight:600;color:var(--navy);margin:2rem 0 1rem}
.entry-content h3{font-size:1.2rem;font-weight:600;color:var(--navy);margin:1.75rem 0 .75rem}
.entry-content p{margin-bottom:1.25rem;line-height:1.8;color:var(--muted)}
.entry-content ul,.entry-content ol{padding-left:1.5rem;margin-bottom:1.25rem}
.entry-content li{margin-bottom:.5rem;color:var(--muted)}
.entry-content a{color:var(--gold-2);text-decoration:underline;text-underline-offset:2px}
.entry-content strong{color:var(--navy)}
.entry-content blockquote{border-left:3px solid var(--gold);padding:1rem 1.5rem;margin:1.5rem 0;background:rgba(200,221,209,.05);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-style:italic}
.article-cta-box{margin-top:2.5rem;background:var(--navy);border-radius:var(--radius);padding:2rem;text-align:center}
.article-cta-box h3{color:var(--white);font-weight:600;font-size:1.25rem;margin-bottom:.75rem}
.article-cta-box p{color:rgba(255,255,255,.6);font-size:.875rem;margin-bottom:1.5rem}
.article-cta-box .btn-primary{font-size:.9rem;padding:.75rem 2rem}
.post-nav{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}
.post-nav a{font-size:.875rem;font-weight:500;color:var(--navy);transition:color .2s;display:flex;align-items:center;gap:.4rem;min-height:44px;max-width:45%}
.post-nav a:hover{color:var(--gold-2)}
.post-nav a:last-child{margin-left:auto;text-align:right}
.contact-section{background:var(--cream);padding:5rem 1.5rem}
.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}
@media(min-width:1024px){.contact-grid{grid-template-columns:1fr 2fr}}
.contact-info-card{display:flex;gap:1rem;align-items:flex-start;background:var(--white);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border);margin-bottom:1rem}
.contact-info-card:last-of-type{margin-bottom:0}
.info-icon{width:44px;height:44px;border-radius:var(--radius-sm);background:rgba(200,221,209,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.info-icon svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2}
.info-card-text h4{font-size:.9rem;font-weight:600;color:var(--navy);margin-bottom:.25rem}
.info-card-text p{font-size:.85rem;margin:0}
.info-card-text a{color:var(--muted);transition:color .2s}
.info-card-text a:hover{color:var(--gold)}
.contact-map{border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);margin-top:1rem}
.contact-map iframe{display:block;width:100%;height:220px}
.contact-form-box{background:var(--white);border-radius:var(--radius);padding:2.5rem;border:1px solid var(--border)}
.contact-form-box h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}
.contact-form-box>p{font-size:.9rem;margin-bottom:2rem}
.form-row{display:grid;grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.25rem}
@media(min-width:640px){.form-row{grid-template-columns:1fr 1fr}}
.form-field{display:flex;flex-direction:column;gap:.4rem}
.form-field label{font-size:.875rem;font-weight:600;color:var(--navy)}
.form-input{padding:.75rem 1rem;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text);background:var(--white);width:100%;transition:border-color .2s,box-shadow .2s;min-height:44px}
.form-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,221,209,.15)}
textarea.form-input{min-height:150px;resize:vertical}
.form-submit{width:100%;height:56px;font-size:1rem;margin-top:1.5rem}
.form-note{font-size:.75rem;color:var(--muted-light);text-align:center;margin-top:1rem}
.form-hint{display:block;font-size:.75rem;color:var(--muted);margin-top:.3rem;line-height:1.4}
.form-field--consent{margin-top:1.5rem}
.form-field--consent .form-checkbox-label{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer;font-size:.8rem;color:var(--muted);line-height:1.6}
.form-field--consent input[type="checkbox"]{margin-top:.2rem;flex-shrink:0;accent-color:var(--gold);width:16px;height:16px;cursor:pointer}
.form-field--consent a{color:var(--gold-2);text-decoration:underline;text-underline-offset:2px}.form-error{color:#EF4444;font-size:.875rem;margin-top:.75rem;display:none}
.form-success{display:none;text-align:center;padding:4rem 2rem}
.form-success.show{display:block}
.form-success-icon{width:72px;height:72px;background:#F0FDF4;border-radius:999px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}
.form-success-icon svg{width:36px;height:36px;fill:none;stroke:#22C55E;stroke-width:2}
.form-success h3{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}
.site-footer{background:var(--navy);color:rgba(255,255,255,.65);padding:2.5rem 1.5rem 0;border-top:1px solid rgba(255,255,255,.08)}
@media(max-width:767px){.site-footer{padding:1.75rem 1.25rem 0}}
.footer-grid{display:grid;grid-template-columns:1fr;gap:3rem;max-width:1280px;margin:0 auto}
@media(max-width:767px){.footer-grid{gap:1.75rem}}
@media(min-width:768px){.footer-grid{grid-template-columns:repeat(3,1fr)}}
.footer-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}
.footer-logo .logo-icon{background:rgba(255,255,255,.1)}
.footer-logo .logo-name{color:var(--white)}
.footer-brand p{font-size:.9rem;line-height:1.75;color:rgba(255,255,255,.82)}
.footer-col-title{font-size:.85rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.08em;margin:0 0 1rem}
.footer-col h4{color:var(--white);font-size:.95rem;font-weight:600;margin-bottom:1.25rem}
.footer-col a{display:block;font-size:.875rem;color:rgba(255,255,255,.82);margin-bottom:0;transition:color .2s;min-height:auto;line-height:1.8;padding:.15rem 0}
@media(max-width:767px){.footer-col a{min-height:auto;line-height:1.7;padding:.4rem 0}.footer-col--guides{display:none}}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col ul li{margin:0;padding:0}
.footer-col ul li::before{display:none}
.footer-col a:hover{color:var(--gold)}
.footer-col p{font-size:.875rem;line-height:1.7;margin-bottom:.6rem;color:rgba(255,255,255,.82)}
.footer-bottom{max-width:1280px;margin:3rem auto 0;padding:2rem 0 5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1rem;font-size:.8rem;color:rgba(255,255,255,.55)}
@media(max-width:767px){.footer-bottom{margin-top:1.75rem;padding:1.25rem 0 5.5rem}}
@media(min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}}
.footer-legal{display:flex;gap:1.5rem}
.footer-legal a{color:rgba(255,255,255,.65);transition:color .2s;min-height:44px;line-height:44px}
.footer-legal a:hover{color:rgba(255,255,255,.95)}
.breadcrumb{margin-bottom:.5rem}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:.25rem .4rem;list-style:none;font-size:.78rem;color:rgba(255,255,255,.45)}
.breadcrumb a{color:rgba(255,255,255,.45);transition:color .2s}
.breadcrumb a:hover{color:var(--gold)}
.breadcrumb .sep{opacity:.5}
.pagination{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:3rem}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;border:1.5px solid var(--border);color:var(--navy);transition:var(--ease);text-decoration:none}
.page-numbers:hover,.page-numbers.current{background:var(--navy);color:var(--white);border-color:var(--navy)}
.page-numbers.dots{border:none;color:var(--muted);width:auto;padding:0 .5rem}
.skip-link{position:absolute;top:-100px;left:1rem;z-index:9999;background:var(--gold);color:var(--navy);padding:.5rem 1rem;border-radius:0 0 var(--radius-sm) var(--radius-sm);font-weight:600;font-size:.875rem;transition:top .2s}
.skip-link:focus{top:0}
.generic-content{background:var(--cream);padding:4rem 1.5rem}
.generic-content .prose-box{max-width:860px;margin:0 auto;background:var(--white);border-radius:var(--radius);padding:3rem;border:1px solid var(--border);box-shadow:var(--shadow)}
.nav-links li a.current-menu-item{background:var(--navy);color:var(--white)}
.footer-grid .container{max-width:1280px;margin:0 auto}
.back-link svg{transform:rotate(180deg)}
.single-cover img{object-fit:cover;width:100%;height:100%}
.article-card-thumb{position:relative;height:208px;overflow:hidden}
.article-card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.article-card:hover .article-card-thumb img{transform:scale(1.05)}
.article-card-body{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}
.article-card-cat{display:inline-block;background:var(--bg-light);color:var(--navy);font-size:.75rem;font-weight:600;padding:.35rem .875rem;border-radius:999px;align-self:flex-start}
.article-card-excerpt{font-size:.875rem;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.article-card-meta{font-size:.78rem;color:var(--muted-light);margin-top:auto}
.articles-full{background:var(--cream);padding:4rem 1.5rem;min-height:60vh}
.skip-to-content{position:absolute;top:-100px;left:1rem;z-index:9999;background:var(--gold);color:var(--navy);padding:.5rem 1rem;border-radius:0 0 var(--radius-sm) var(--radius-sm);font-weight:600;font-size:.875rem;transition:top .2s}
.skip-to-content:focus{top:0}
.widefat{width:100%;border-collapse:collapse}
.striped tr:nth-child(even){background:var(--bg-light)}
.wrap{margin:1rem}
.apropos-bio{background:var(--white);padding:5rem 1.5rem}
.apropos-bio-inner{display:grid;grid-template-columns:1fr;gap:4rem;align-items:center}
@media(min-width:1024px){.apropos-bio-inner{grid-template-columns:1fr 1fr}}
.apropos-bio-image-wrap{position:relative}
.apropos-bio-image-glow{position:absolute;inset:-1rem;background:rgba(200,221,209,.08);border-radius:var(--radius-xl,24px)}
.apropos-bio-image-wrap img{position:relative;width:100%;height:480px;object-fit:cover;object-position:center 15%;border-radius:var(--r,16px);box-shadow:var(--shadow)}
.apropos-bio-text h2{margin-bottom:1.5rem}
.apropos-bio-text p{margin-bottom:1rem}
@media(max-width:479px){.apropos-bio-image-wrap img{height:280px}}
@media(min-width:480px) and (max-width:639px){.apropos-bio-image-wrap img{height:340px}}
@media(min-width:768px) and (max-width:1023px){.apropos-bio-inner{grid-template-columns:1fr}.apropos-bio-image-wrap{max-width:480px;margin:0 auto}.apropos-bio-image-wrap img{height:360px}}
@media(max-width:767px){.apropos-bio-inner{grid-template-columns:1fr}}
.badges-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--cream);border-radius:999px;font-size:.8rem;color:var(--navy)}
.badge svg{width:16px;height:16px;fill:none;stroke:var(--gold);stroke-width:2;flex-shrink:0}
.stat-val{display:block;font-size:2.5rem;font-weight:700;color:var(--gold);margin-bottom:.25rem}
.stat-label{color:rgba(255,255,255,.55);font-size:.85rem}
.parcours-section{background:var(--cream);padding:5rem 1.5rem}
.timeline{max-width:720px;margin:3rem auto 0}
.timeline-item{display:flex;gap:1.5rem;padding-bottom:2.5rem}
.timeline-item:last-child{padding-bottom:0}
.timeline-left{display:flex;flex-direction:column;align-items:center;flex-shrink:0}
.timeline-dot{width:48px;height:48px;border-radius:999px;background:var(--gold);color:var(--white);font-weight:700;font-size:.78rem;display:flex;align-items:center;justify-content:center;z-index:1}
.timeline-line{flex:1;width:2px;background:rgba(200,221,209,.2);margin-top:.5rem}
.timeline-content{background:var(--white);border-radius:var(--r,16px);padding:1.5rem;border:1px solid var(--border);flex:1;margin-top:.25rem}
.timeline-content h3{font-size:1rem;margin-bottom:.375rem}
.timeline-content p{font-size:.875rem;margin:0}
@media(max-width:479px){.timeline-dot{width:40px;height:40px;font-size:.7rem}}
.expertise-full-card{display:flex;gap:2rem;align-items:flex-start;background:var(--white);border-radius:var(--r,16px);padding:2.5rem;border:1px solid var(--border);margin-bottom:1.5rem;transition:var(--ease-slow)}
.expertise-full-card:last-child{margin-bottom:0}
.expertise-full-card:hover{box-shadow:var(--shadow-lg)}
.expertise-full-icon{width:64px;height:64px;border-radius:var(--r-sm,8px);background:rgba(27,42,74,.05);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--ease)}
.expertise-full-card:hover .expertise-full-icon{background:rgba(200,221,209,.15)}
.expertise-full-icon svg{width:28px;height:28px;fill:none;stroke:var(--navy);stroke-width:2;transition:var(--ease)}
.expertise-full-card:hover .expertise-full-icon svg{stroke:var(--gold)}
.expertise-full-body{flex:1}
.expertise-full-body h3{font-size:1.25rem;margin-bottom:.75rem}
.expertise-full-body p{margin-bottom:1.25rem}
.expertise-tags{display:flex;flex-wrap:wrap;gap:.5rem}
.expertise-tag{padding:.375rem .875rem;background:var(--cream);color:var(--navy);border-radius:999px;font-size:.8rem;border:1px solid var(--border)}
@media(max-width:639px){.expertise-full-card{flex-direction:column;padding:1.5rem}}
@media(min-width:640px) and (max-width:1023px){.expertise-full-card{flex-direction:column}}
@media(min-width:1024px){.expertise-full-card{flex-direction:row}}
@media(hover:none){.expertise-full-card:hover .expertise-full-icon{background:rgba(27,42,74,.05)}.expertise-full-card:hover .expertise-full-icon svg{stroke:var(--navy)}}
.contact-info-icon{width:44px;height:44px;border-radius:var(--r-sm,8px);background:rgba(200,221,209,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-info-icon svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:2}
.contact-form-wrap{background:var(--white);border-radius:var(--r,16px);padding:2.5rem;border:1px solid var(--border)}
.contact-form-wrap h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}
.contact-form-wrap>p{font-size:.9rem;margin-bottom:2rem}
@media(max-width:479px){.contact-form-wrap{padding:1.25rem}}
@media(max-width:767px){.contact-form-wrap{padding:1.5rem}}
.form-grid-2{display:grid;grid-template-columns:1fr;gap:1.25rem}
@media(min-width:640px){.form-grid-2{grid-template-columns:1fr 1fr}}
.form-group{display:flex;flex-direction:column;gap:.4rem}
.form-group label{font-size:.875rem;font-weight:600;color:var(--navy)}
.form-control{padding:.75rem 1rem;border:1.5px solid var(--border);border-radius:var(--r-sm,8px);font-size:.9rem;color:var(--text);background:var(--white);width:100%;transition:border-color .2s,box-shadow .2s;min-height:44px}
.form-control:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,221,209,.15)}
textarea.form-control{min-height:150px;resize:vertical}
.success-icon{width:72px;height:72px;background:#F0FDF4;border-radius:999px;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem}
.success-icon svg{width:36px;height:36px;fill:none;stroke:#22C55E;stroke-width:2}
.faq-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-top:1.5rem;overflow:hidden}
.faq-card__header{display:flex;align-items:center;gap:1rem;padding:1.5rem 1.75rem;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.08)}
.faq-card__icon{width:44px;height:44px;background:rgba(200,221,209,.15);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.faq-card__icon svg{width:22px;height:22px;stroke:var(--gold)}
.faq-card__title{font-size:1.05rem;font-weight:600;color:var(--white);margin:0 0 .15rem;line-height:1.2}
.guide-content .faq-card__title{color:var(--white)!important;margin-top:0}
.faq-card__subtitle{font-size:.78rem;color:rgba(255,255,255,.45);margin:0;line-height:1}
.faq-card__list{display:flex;flex-direction:column}
.faq-card__item{border-bottom:1px solid var(--border)}
.faq-card__item:last-child{border-bottom:none}
.faq-card__question{width:100%;display:flex;align-items:center;gap:.875rem;padding:1.1rem 1.75rem;background:none;border:none;text-align:left;cursor:pointer;transition:background .18s;min-height:44px}
.faq-card__question:hover{background:var(--cream)}
.faq-card__question[aria-expanded="true"]{background:rgba(200,221,209,.06)}
.faq-card__num{flex-shrink:0;width:26px;height:26px;background:rgba(200,221,209,.15);color:var(--gold);border-radius:50%;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .18s}
.faq-card__question[aria-expanded="true"] .faq-card__num{background:var(--gold);color:var(--navy)}
.faq-card__q-text{flex:1;font-size:.9375rem;font-weight:600;color:var(--navy);line-height:1.4}
.faq-card__chevron{flex-shrink:0;width:18px;height:18px;stroke:var(--muted-light);transition:transform .25s ease,stroke .18s}
.faq-card__question[aria-expanded="true"] .faq-card__chevron{transform:rotate(180deg);stroke:var(--gold)}
.faq-card__answer{padding:.25rem 1.75rem 1.25rem calc(1.75rem + 26px + .875rem);background:rgba(200,221,209,.03);border-top:1px solid rgba(200,221,209,.15)}
.faq-card__answer[hidden]{display:none}
.faq-card__answer p{font-size:.9rem;color:var(--muted);line-height:1.75;margin:0}
@media(max-width:767px){.faq-card__header{padding:1.25rem}.faq-card__question{padding:1rem 1.25rem;gap:.75rem}.faq-card__q-text{font-size:1rem}.faq-card__answer{padding:.25rem 1.25rem 1.25rem calc(1.25rem + 26px + .75rem)}.faq-card__answer p{font-size:.9375rem}}
.faq-card svg{max-width:100%;display:block}
.faq-card__icon svg{width:22px!important;height:22px!important}
.faq-card__chevron{width:18px!important;height:18px!important}
.guides-index{background:var(--cream);padding:5rem 1.5rem}
.guides-intro{max-width:760px;margin:0 auto 3rem;padding:1.25rem 1.5rem;background:var(--white);border-radius:var(--radius);border-left:3px solid var(--gold);font-size:.9rem;color:var(--muted);line-height:1.7}
.guides-intro a{color:var(--gold-2);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.guides-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto}
.guide-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;display:flex;flex-direction:column;gap:1rem;transition:box-shadow .3s,transform .3s;position:relative}
.guide-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.guide-card--featured{border-color:rgba(200,221,209,.3);background:linear-gradient(160deg,#fffdf8 0%,var(--white) 60%)}
.guide-card__badge{position:absolute;top:-1px;right:1.5rem;background:var(--gold);color:var(--navy);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.3rem .9rem;border-radius:0 0 8px 8px}
.guide-card__header{display:flex;align-items:center;gap:.875rem}
.guide-card__icon{width:48px;height:48px;flex-shrink:0;background:rgba(27,42,74,.05);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background .2s}
.guide-card:hover .guide-card__icon{background:rgba(200,221,209,.15)}
.guide-card__icon svg{stroke:var(--navy);transition:stroke .2s}
.guide-card:hover .guide-card__icon svg{stroke:var(--gold)}
.guide-card__eyebrow{display:block;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:.2rem}
.guide-card__time{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--muted-light)}
.guide-card__time svg{width:12px;height:12px}
.guide-card__title{font-size:1.05rem;font-weight:600;color:var(--navy)!important;line-height:1.35;margin:0}
.guide-card__title a{color:inherit;transition:color .2s}
.guide-card__title a:hover{color:var(--gold-2)}
.guide-card__desc{font-size:.875rem;color:var(--muted);line-height:1.6;flex:1}
.guide-card__tags{display:flex;flex-wrap:wrap;gap:.4rem}
.guide-tag{padding:.25rem .75rem;background:#f3f4f6;color:var(--navy);border-radius:999px;font-size:.75rem;border:1px solid var(--border);display:inline-block}
.guide-card__cta{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;font-weight:600;color:var(--navy);transition:gap .2s,color .2s;margin-top:.25rem}
.guide-card__cta:hover{color:var(--gold-2);gap:.65rem}
.guide-card__cta svg{width:16px;height:16px}
.guide-card__cta--ghost{color:var(--muted)}
.guide-card__cta--ghost:hover{color:var(--navy)}
.guide-card--soon{border-style:dashed;border-color:rgba(200,221,209,.25);background:transparent;align-items:center;text-align:center;justify-content:center}
.guide-card--soon:hover{box-shadow:none;transform:none;background:rgba(200,221,209,.03)}
.guide-card__soon-icon{width:56px;height:56px;background:rgba(200,221,209,.08);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}
.guide-card__soon-icon svg{stroke:var(--gold)}
.guide-card--soon h3{font-size:.9375rem;font-weight:600;color:var(--navy)}
.guide-card--soon p{font-size:.85rem;color:var(--muted);line-height:1.6}
.guide-hero{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);padding:4rem 0 3.5rem;position:relative;overflow:hidden}
.guide-hero::before{content:'';position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%237DAA8B' fill-opacity='1'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.guide-breadcrumb{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.75rem;color:rgba(255,255,255,.4);margin-bottom:1.5rem}
.guide-breadcrumb a{color:rgba(255,255,255,.4);transition:color .2s}
.guide-breadcrumb a:hover{color:var(--gold)}
.guide-hero__eyebrow{display:inline-flex;align-items:center;gap:.5rem;background:rgba(200,221,209,.15);border:1px solid rgba(200,221,209,.25);color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.4rem 1rem;border-radius:999px;margin-bottom:1.25rem}
.guide-hero__eyebrow svg{width:13px;height:13px;stroke:var(--gold)}
.guide-hero__title{font-size:clamp(1.75rem,4vw,2.75rem);font-weight:400;color:var(--white);line-height:1.15;margin-bottom:1.25rem}
.guide-hero__title strong{font-weight:700}
.guide-hero__lead{font-size:1rem;color:rgba(255,255,255,.6);line-height:1.75;max-width:640px;margin-bottom:1.5rem}
.guide-hero__meta{display:flex;flex-wrap:wrap;gap:.75rem}
.guide-meta-item{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);padding:.35rem .875rem;border-radius:999px;font-size:.75rem;color:rgba(255,255,255,.65)}
.guide-meta-item svg{width:13px;height:13px;stroke:var(--gold);fill:none;stroke-width:2}
.guide-toc{background:var(--white);border-bottom:1px solid var(--border);position:sticky;top:var(--nav-height);z-index:90;overflow-x:auto;scrollbar-width:none}
.guide-toc::-webkit-scrollbar{display:none}
.guide-toc__inner{display:flex;gap:0;white-space:nowrap;padding:0 1.5rem}
.guide-toc__link{padding:.875rem 1.1rem;font-size:.8rem;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;transition:color .2s,border-color .2s;flex-shrink:0}
.guide-toc__link:hover,.guide-toc__link.active{color:var(--navy);border-bottom-color:var(--gold)}
.guide-body{background:var(--cream);padding:4rem 0}
.guide-layout{display:grid;grid-template-columns:1fr 280px;gap:3rem;align-items:start}
@media(max-width:1023px){.guide-layout{grid-template-columns:1fr}.guide-sidebar{display:none}}
.guide-section{scroll-margin-top:140px;margin-bottom:3.5rem}
.guide-section__eyebrow{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}
.guide-section__num{width:32px;height:32px;background:var(--navy);color:var(--gold);border-radius:7px;font-size:.875rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.guide-section__label{font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.guide-content h2{font-size:1.5rem;font-weight:600;color:var(--navy);margin-bottom:.5rem;line-height:1.25}
.guide-content h3{font-size:1.1rem;font-weight:600;color:var(--navy);margin:1.75rem 0 .75rem}
.guide-content h4{font-size:.9375rem;font-weight:600;color:var(--navy);margin-bottom:.375rem}
.guide-content p{font-size:.9375rem;color:var(--muted);line-height:1.8;margin-bottom:1rem}
.guide-content ul{padding-left:1.25rem;margin-bottom:1.25rem}
.guide-content ul li{font-size:.9375rem;color:var(--muted);line-height:1.7;margin-bottom:.5rem;list-style:none;padding-left:1.1rem;position:relative}
.guide-content ul li::before{content:'';position:absolute;left:0;top:.65em;width:5px;height:5px;background:var(--gold);border-radius:50%}
.guide-divider{width:40px;height:2px;background:linear-gradient(to right,var(--gold),transparent);margin:.75rem 0 1.5rem}
.guide-steps{display:flex;flex-direction:column;margin:1.5rem 0}
.guide-step{display:flex;gap:1.1rem}
.guide-step__axis{display:flex;flex-direction:column;align-items:center;flex-shrink:0}
.guide-step__dot{width:36px;height:36px;background:var(--navy);border-radius:999px;color:var(--gold);font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.guide-step__line{flex:1;width:2px;background:var(--border);margin:.3rem 0;min-height:1.25rem}
.guide-step__body{padding-bottom:1.5rem;flex:1}
.guide-step__body h4{padding-top:.5rem}
.guide-step__body p{font-size:.875rem;margin:0}
.guide-alert{display:flex;gap:.75rem;align-items:flex-start;padding:1rem 1.25rem;border-radius:var(--radius);margin:1.5rem 0}
.guide-alert--info{background:#eff6ff;border:1px solid #bfdbfe}
.guide-alert--warn{background:#fffbeb;border:1px solid #fde68a}
.guide-alert svg{width:18px;height:18px;flex-shrink:0;margin-top:.1rem;stroke:currentColor;fill:none;stroke-width:2}
.guide-alert--info svg{stroke:#3b82f6}
.guide-alert--warn svg{stroke:#d97706}
.guide-alert p{font-size:.875rem;line-height:1.65;margin:0}
.guide-alert--info p{color:#1e40af}
.guide-alert--warn p{color:#92400e}
.guide-readmore{display:flex;gap:.875rem;align-items:flex-start;background:var(--white);border:1px solid var(--border);border-left:3px solid var(--gold);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:1rem 1.25rem;margin:1.5rem 0}
.guide-readmore svg{width:16px;height:16px;stroke:var(--gold);fill:none;stroke-width:2;flex-shrink:0;margin-top:.1rem}
.guide-readmore__label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-2);margin-bottom:.2rem}
.guide-readmore a{font-size:.875rem;font-weight:600;color:var(--navy);display:inline-flex;align-items:center;gap:.3rem;transition:color .2s}
.guide-readmore a:hover{color:var(--gold-2)}
.guide-readmore a svg{width:13px;height:13px;stroke:currentColor}
.guide-compare{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin:1.5rem 0}
@media(max-width:639px){.guide-compare{grid-template-columns:1fr}}
.guide-compare__card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem}
.guide-compare__card--featured{border-color:rgba(200,221,209,.3);background:#fffdf8}
.guide-compare__badge{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.25rem .75rem;border-radius:999px;margin-bottom:.875rem}
.guide-compare__badge--green{background:#dcfce7;color:#15803d}
.guide-compare__badge--orange{background:#fef3c7;color:#b45309}
.guide-compare__card h4{font-size:.9375rem;font-weight:700;color:var(--navy);margin-bottom:.75rem}
.guide-compare__card ul{list-style:none;padding:0}
.guide-compare__card ul li{font-size:.85rem;color:var(--muted);padding:.3rem 0 .3rem 1.1rem;position:relative}
.guide-compare__card--featured ul li::before{content:'✓';position:absolute;left:0;color:#22c55e;font-weight:700;font-size:.75rem}
.guide-compare__card:not(.guide-compare__card--featured) ul li::before{content:'→';position:absolute;left:0;color:var(--muted-light);font-size:.75rem}
.guide-tarifs{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}
@media(max-width:767px){.guide-tarifs{grid-template-columns:1fr}}
.guide-tarif{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;text-align:center}
.guide-tarif--featured{background:var(--navy);border-color:var(--navy)}
.guide-tarif__icon{width:44px;height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin:0 auto .875rem}
.guide-tarif:not(.guide-tarif--featured) .guide-tarif__icon{background:rgba(200,221,209,.1)}
.guide-tarif--featured .guide-tarif__icon{background:rgba(200,221,209,.15)}
.guide-tarif__icon svg{stroke:var(--gold)}
.guide-tarif h4{font-size:.8rem;font-weight:600;margin-bottom:.5rem}
.guide-tarif:not(.guide-tarif--featured) h4{color:var(--navy)}
.guide-tarif--featured h4{color:rgba(255,255,255,.6)}
.guide-tarif__amount{font-size:1.1rem;font-weight:700;color:var(--gold);margin-bottom:.375rem}
.guide-tarif p{font-size:.78rem;line-height:1.5}
.guide-tarif:not(.guide-tarif--featured) p{color:var(--muted)}
.guide-tarif--featured p{color:rgba(255,255,255,.4)}
.guide-enfants{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0}
@media(max-width:639px){.guide-enfants{grid-template-columns:1fr}}
.guide-enfant{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}
.guide-enfant__icon{width:40px;height:40px;background:rgba(200,221,209,.1);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}
.guide-enfant__icon svg{stroke:var(--gold-2)}
.guide-enfant h4{font-size:.875rem;font-weight:600;color:var(--navy);margin-bottom:.375rem}
.guide-enfant p{font-size:.825rem;color:var(--muted);line-height:1.6;margin:0}
.guide-sidebar{position:sticky;top:140px;display:flex;flex-direction:column;gap:1.1rem}
.guide-sidebar__card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem}
.guide-sidebar__card--dark{background:var(--navy);border-color:var(--navy)}
.guide-sidebar__card--gold{background:rgba(200,221,209,.06);border-color:rgba(200,221,209,.25)}
.guide-sidebar__card h3{font-size:.875rem;font-weight:600;margin-bottom:1rem}
.guide-sidebar__card--dark h3{color:var(--gold)}
.guide-sidebar__card:not(.guide-sidebar__card--dark):not(.guide-sidebar__card--gold) h3{color:var(--navy)}
.guide-sidebar__card--gold h3{color:var(--navy)}
.guide-sidebar__card p{font-size:.8rem;color:rgba(255,255,255,.55);line-height:1.6;margin-bottom:.875rem}
.guide-sidebar__contact{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.5rem}
.guide-sidebar__contact-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.65)}
.guide-sidebar__contact-item svg{width:14px;height:14px;stroke:var(--gold);fill:none;stroke-width:2;flex-shrink:0}
.guide-sidebar__contact-item a{color:rgba(255,255,255,.65);transition:color .2s}
.guide-sidebar__contact-item a:hover{color:var(--gold)}
.guide-sidebar__toc{list-style:none}
.guide-sidebar__toc li{border-bottom:1px solid var(--border)}
.guide-sidebar__toc li:last-child{border-bottom:none}
.guide-sidebar__toc a{display:flex;align-items:center;gap:.5rem;padding:.55rem 0;font-size:.78rem;color:var(--muted);transition:color .2s}
.guide-sidebar__toc a:hover{color:var(--navy)}
.guide-sidebar__toc span{width:18px;height:18px;background:var(--cream);border-radius:4px;font-size:.65rem;font-weight:700;color:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.guide-sidebar__all{display:flex;align-items:center;gap:.5rem;font-size:.825rem;font-weight:600;color:var(--navy);transition:gap .2s,color .2s}
.guide-sidebar__all:hover{color:var(--gold-2);gap:.75rem}
.guide-sidebar__all svg{stroke:currentColor}
.expertise-guides-card{display:flex;align-items:center;gap:1.5rem;background:var(--navy);border-radius:var(--radius);padding:2rem 2.5rem;margin-top:1.5rem;transition:box-shadow .3s,transform .3s;text-decoration:none}
.expertise-guides-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}
.expertise-guides-card__icon{width:56px;height:56px;flex-shrink:0;background:rgba(200,221,209,.15);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center}
.expertise-guides-card__icon svg{stroke:var(--gold)}
.expertise-guides-card__body{flex:1}
.expertise-guides-card__body .eyebrow{color:var(--gold);margin-bottom:.35rem}
.expertise-guides-card__body h3{color:var(--white);font-size:1.05rem;font-weight:600;margin-bottom:.4rem}
.expertise-guides-card__body p{color:rgba(255,255,255,.5);font-size:.875rem;margin:0;line-height:1.6}
.expertise-guides-card__arrow{flex-shrink:0}
.expertise-guides-card__arrow svg{stroke:var(--gold);transition:transform .2s}
.expertise-guides-card:hover .expertise-guides-card__arrow svg{transform:translateX(4px)}
@media(max-width:767px){.expertise-guides-card{flex-direction:column;text-align:center;padding:1.5rem}.expertise-guides-card__arrow{display:none}}
@media(min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr)}}
.guide-cta-card{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;background:var(--navy)!important;border-radius:var(--radius);padding:2rem 2.5rem;margin-top:2.5rem;border:none}
.guide-cta-card__body{flex:1;min-width:220px}
.guide-cta-card__body h3{font-size:1.05rem;font-weight:600;color:var(--white);margin-bottom:.5rem}
.guide-cta-card__body p{font-size:.875rem;color:rgba(255,255,255,.5);line-height:1.65;margin-bottom:1.25rem}
.guide-cta-card__info{display:flex;flex-direction:column;gap:.6rem;border-left:1px solid rgba(255,255,255,.1);padding-left:2rem;flex-shrink:0}
.guide-cta-card__item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.55)}
.guide-cta-card__item svg{width:14px;height:14px;stroke:var(--gold);fill:none;stroke-width:2;flex-shrink:0}
.guide-cta-card__item a{color:rgba(255,255,255,.55);transition:color .2s}
.guide-cta-card__item a:hover{color:var(--gold)}
@media(max-width:639px){.guide-cta-card{flex-direction:column;padding:1.5rem}.guide-cta-card__info{border-left:none;border-top:1px solid rgba(255,255,255,.1);padding-left:0;padding-top:1.25rem;width:100%}}
.guide-hero__eyebrow,.guide-card__eyebrow,.guide-section__label{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.guide-section__label{display:block}
.guide-content h2{font-size:1.5rem;font-weight:600}
.guide-content h3{font-size:1.2rem;font-weight:600}
.guide-content h4{font-size:.9375rem;font-weight:600}
.entry-content h2,.guide-content h2{line-height:1.25;margin-bottom:.5rem}
.entry-content h3,.guide-content h3{line-height:1.3;margin-bottom:.6rem}
.section-header h2,.cta-section h2{font-weight:400}
.section-header h2 strong,.cta-section h2 strong{font-weight:700}
.guide-sidebar__card h3{font-size:.875rem;font-weight:600;letter-spacing:.02em}
.bio-values-section{padding:4rem 0;background:var(--bg-light)}
.bio-values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.hp-bio-section{padding:3.5rem 0;background:var(--cream)}
.hp-bio-inner{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;gap:1.5rem 4rem;align-items:start}
.hp-bio-header{grid-column:2;grid-row:1}
.hp-bio-image{grid-column:1;grid-row:1/3;align-self:stretch}
.hp-bio-content{grid-column:2;grid-row:2}
.hp-bio-image img{width:100%;height:100%;min-height:380px;object-fit:cover;object-position:top;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}
.hp-bio-content p{margin-bottom:1.25rem}
.hp-bio-cta{margin-top:.5rem}
@media(max-width:1023px){.hp-bio-inner{grid-template-columns:1fr;grid-template-rows:auto}.hp-bio-header{grid-column:1;grid-row:auto}.hp-bio-image{grid-column:1;grid-row:auto}.hp-bio-content{grid-column:1;grid-row:auto}.hp-bio-image img{min-height:auto;height:320px}}
@media(max-width:767px){.hp-bio-section{padding:3rem 0}.hp-bio-header{order:1}.hp-bio-image{order:2}.hp-bio-content{order:3}.hp-bio-image img{height:260px}}
.bio-value{background:var(--white,#fff);border:1px solid var(--border,#e8e4dc);border-radius:12px;padding:1.75rem;min-width:0;box-sizing:border-box;overflow:hidden}
@media(max-width:767px){.bio-values-grid{grid-template-columns:1fr}}
.bio-value__icon{width:44px;height:44px;background:var(--gold-soft);border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-sm);color:var(--gold)}
.bio-value h3{font-size:1rem;font-weight:600;margin-bottom:.5rem}
.bio-value p{font-size:.9rem;color:var(--muted);line-height:1.65;margin:0}
.approach-section{padding:4rem 0;background:var(--bg-light,#f8f7f4);border-top:1px solid var(--border,#e8e4dc);border-bottom:1px solid var(--border,#e8e4dc)}
@media(max-width:767px){.approach-section{padding:3rem 0}}
.py-5{padding-top:4rem;padding-bottom:4rem}
.py-4{padding-top:3rem;padding-bottom:3rem}
.py-3{padding-top:2rem;padding-bottom:2rem}
.px-4{padding-left:2rem;padding-right:2rem}
@media(max-width:767px){.py-5{padding-top:2.5rem;padding-bottom:2.5rem}.py-4{padding-top:2rem;padding-bottom:2rem}.px-4{padding-left:1.25rem;padding-right:1.25rem}}
@media(max-width:767px){:root{--nav-height:68px}.nav-inner{height:68px}}
@media(max-width:479px){:root{--nav-height:64px}.nav-inner{height:64px}.hero,.expertise-preview,.values-section,.articles-preview,.cta-section,.expertises-list,.bio-section,.stats-band,.timeline-section,.contact-section,.articles-section,.page-hero{padding-left:1rem;padding-right:1rem}.hero{min-height:auto;padding-top:2.5rem;padding-bottom:1.5rem}.hero-content h1{font-size:1.9rem}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:320px}.expertise-row{flex-direction:column;padding:1.25rem}.bio-image-wrap img{height:280px}.timeline-dot{width:40px;height:40px;font-size:.7rem}.article-thumb{height:180px}.contact-form-box{padding:1.25rem}.form-row{grid-template-columns:1fr!important}.single-cover{height:240px}.article-card-content{padding:1.25rem}}
@media(min-width:480px) and (max-width:639px){.hero{min-height:auto}.expertise-row{flex-direction:column;padding:1.5rem}.form-row{grid-template-columns:1fr!important}.bio-image-wrap img{height:340px}}
@media(max-width:767px){.hero{min-height:auto;padding-bottom:2rem}.hero-inner{gap:1rem}.expertise-grid,.articles-grid,.footer-grid{grid-template-columns:1fr}.stats-grid,.bio-inner,.values-inner,.contact-grid{grid-template-columns:1fr}.values-image{display:none}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:340px}.footer-bottom{flex-direction:column;text-align:center}.footer-legal{justify-content:center}.post-nav a{max-width:100%}}
@media(min-width:640px) and (max-width:1023px){.articles-grid,.expertise-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(4,1fr)}.expertise-row{flex-direction:column}}
@media(min-width:768px) and (max-width:1023px){.hero-inner{grid-template-columns:1fr;max-width:680px;margin:0 auto}.hero-content{text-align:center}.hero-content p,.hero-buttons{justify-content:center}.hero-image{margin-top:2.5rem}.hero-image-inner img{height:320px}.values-image{display:none}.bio-inner{grid-template-columns:1fr}.bio-image-wrap{max-width:480px;margin:0 auto}.bio-image-wrap img{height:360px}.contact-grid,.values-inner{grid-template-columns:1fr}}
@media(min-width:1024px){.hero-image,.values-image{display:block}.hero-inner{text-align:left}.bio-inner{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr 2fr}.values-inner{grid-template-columns:1fr 1fr}.expertise-row{flex-direction:row}}
@media(hover:none){.expertise-card:hover,.article-card:hover,.expertise-row:hover,.value-item:hover{transform:none;box-shadow:none}.article-card:hover .article-thumb img{transform:none}.expertise-card:hover .expertise-card-icon{background:rgba(27,42,74,.05)}.expertise-card:hover .expertise-card-icon svg{stroke:var(--navy)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media print{.site-header,.top-bar,.mobile-menu,.cta-section,.nav-toggle,.breadcrumb,.category-bar,.site-footer,.post-nav{display:none!important}body{font-size:12pt;color:#000}h1,h2,h3{color:#000}.hero{background:none!important;min-height:auto;padding:2rem 0}.hero-content h1,.hero-content p{color:#000}.article-card-content{box-shadow:none;border:none;padding:0}}
.info-card-label{font-size:.9rem;font-weight:600;color:var(--navy);margin-bottom:.25rem}

/* ================================================================
   v1.9.0 — CRO / CTA / Mobile conversion
   ================================================================ */

/* ── Téléphone mobile sous les boutons hero ── */
.hero-tel-mobile{display:none}
@media(max-width:767px){
  .hero-tel-mobile{
    display:flex;align-items:center;justify-content:center;gap:.5rem;
    width:100%;margin-top:.75rem;
    padding:.875rem 1.5rem;
    font-family:'Jost',sans-serif;font-size:.9375rem;font-weight:600;
    color:rgba(255,255,255,.75);text-decoration:none;
    border:1.5px solid rgba(255,255,255,.2);border-radius:9999px;
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
    transition:border-color .2s,color .2s;
  }
  .hero-tel-mobile svg{width:15px;height:15px;flex-shrink:0;opacity:.7}
  .hero-tel-mobile:hover{color:var(--white);border-color:rgba(255,255,255,.45)}
}

/* ── Lien tel dans le menu mobile déroulant ── */
.header-tel-btn{display:none}
.mobile-tel-link{
  display:flex;align-items:center;gap:.5rem;
  padding:.75rem 1rem;margin-top:.25rem;
  color:var(--navy);font-size:.9375rem;font-weight:600;
  text-decoration:none;border-radius:var(--radius-sm);
  min-height:44px;transition:var(--ease);
}
.mobile-tel-link:hover{background:var(--bg-light);color:var(--navy)}
.mobile-tel-link svg{flex-shrink:0}

/* ── FAB téléphone (mobile uniquement) ── */
/* FAB géré via JS — voir main.js */
.fab-tel{
  display:none;
  position:fixed;bottom:1rem;right:1rem;
  width:52px;height:52px;border-radius:50%;
  background:#F5EFE8;color:#2D4A3E;
  border:2px solid #2D4A3E;
  text-decoration:none;
  box-shadow:0 4px 16px rgba(0,0,0,.18);
  z-index:9997;
  align-items:center;justify-content:center;
  transition:transform .2s,box-shadow .2s,background .2s;
}
/* affichage FAB géré dans la barre overlay mobile ci-dessous */
.fab-tel svg{width:20px;height:20px;flex-shrink:0}
.fab-tel:hover{background:#2D4A3E;color:#F5EFE8;transform:scale(1.06);box-shadow:0 6px 20px rgba(45,74,62,.4)}

/* ── CTA inline pages spécialités ── */
.cta-inline{
  margin:2rem 0;padding:1.1rem 1.5rem;
  border-left:4px solid var(--gold);
  background:var(--bg-light);
  border-radius:0 var(--radius-sm) var(--radius-sm) 0;
}
.cta-inline a{
  font-family:'Jost',sans-serif;font-weight:600;
  color:var(--navy);text-decoration:none;font-size:1rem;
  display:inline-flex;align-items:center;gap:.5rem;
}
.cta-inline a:hover{color:var(--gold)}

/* ── Bloc confiance pages spécialités ── */
.bloc-confiance{
  margin:3rem 0;padding:2.5rem 2rem;
  background:var(--navy);color:var(--white);
  border-radius:var(--radius);
}
.bloc-confiance h2{
  color:var(--gold);margin-bottom:1.75rem;
  font-family:'Cormorant Garamond',serif;font-size:1.6rem;
  text-align:center;
}
.confiance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.75rem}
@media(max-width:767px){.confiance-grid{grid-template-columns:1fr;gap:1.25rem}}
.confiance-item{text-align:center;padding:.5rem}
.confiance-icon{font-size:2rem;display:block;margin-bottom:.625rem}
.confiance-item strong{
  display:block;color:var(--gold);
  font-family:'Jost',sans-serif;font-size:1rem;font-weight:600;
  margin-bottom:.375rem;
}
.confiance-item p{font-size:.875rem;margin:0;opacity:.85;line-height:1.55}

/* ================================================================
   v1.9.1 — Sidebar expertises + Bloc réassurance + CRO desktop
   ================================================================ */

/* ── Layout 2 colonnes : contenu + sidebar ── */
.expertises-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:2rem;
  align-items:start;
}
@media(min-width:1024px){
  .expertises-layout{
    grid-template-columns:1fr 320px;
    gap:3rem;
  }
}

/* ── Sidebar sticky ── */
.expertises-sidebar{
  display:none;
  position:sticky;
  top:calc(var(--nav-height) + 2rem);
  z-index:10;
}
@media(min-width:1024px){
  .expertises-sidebar{display:block}
}

/* ── Bloc sidebar contact (flottant) ── */
.sidebar-contact{
  background:var(--white);
  border:1px solid var(--border);
  border-top:3px solid var(--gold);
  border-radius:var(--radius);
  padding:1.75rem 1.5rem;
  box-shadow:0 8px 32px rgba(27,42,74,.12),0 2px 8px rgba(27,42,74,.06);
  transition:box-shadow .3s;
}
.sidebar-contact:hover{
  box-shadow:0 12px 40px rgba(27,42,74,.16),0 2px 8px rgba(27,42,74,.06);
}
.sidebar-contact__label{
  font-family:'Jost',sans-serif;font-size:.7rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--gold);margin-bottom:.625rem;
}
.sidebar-contact h3{
  font-family:'Cormorant Garamond',serif;font-size:1.2rem;
  color:var(--navy);line-height:1.35;margin-bottom:.625rem;
}
.sidebar-contact__sub{
  font-size:.85rem;color:var(--muted);margin-bottom:1.25rem;line-height:1.5;
}

/* Numéro prominent */
.sidebar-tel{
  display:flex;align-items:center;gap:.625rem;
  font-family:'Jost',sans-serif;font-size:1.2rem;font-weight:700;
  color:var(--navy);text-decoration:none;
  padding:.75rem 1rem;margin-bottom:.875rem;
  background:var(--bg-light);border-radius:var(--radius-sm);
  transition:var(--ease);
}
.sidebar-tel svg{width:18px;height:18px;flex-shrink:0;stroke:var(--gold)}
.sidebar-tel:hover{background:rgba(200,221,209,.15);color:var(--gold)}

/* CTA bouton full-width */
.sidebar-cta{
  width:100%;justify-content:center;
  margin-bottom:1.25rem;
  padding:.75rem 1rem;
}

/* Liste engagements */
.sidebar-engagements{
  list-style:none;margin:0 0 1.25rem;padding:0;
  display:flex;flex-direction:column;gap:.5rem;
}
.sidebar-engagements li{
  display:flex;align-items:flex-start;gap:.5rem;
  font-size:.8125rem;color:var(--muted);line-height:1.45;
}
.sidebar-engagements svg{
  width:14px;height:14px;flex-shrink:0;margin-top:.15em;
  stroke:var(--gold);
}

/* Horaires */
.sidebar-horaires{
  display:flex;align-items:center;gap:.5rem;
  font-size:.75rem;color:var(--muted);
  padding-top:1rem;border-top:1px solid var(--border);
}
.sidebar-horaires svg{width:13px;height:13px;flex-shrink:0;stroke:var(--muted)}

/* ── CTA inline (mise à jour : avec icône) ── */
.cta-inline a{display:inline-flex;align-items:center;gap:.625rem}
.cta-inline svg{width:16px;height:16px;flex-shrink:0;stroke:var(--navy)}
.cta-inline a:hover svg{stroke:var(--gold)}

/* ── Bloc réassurance ── */
.bloc-reassurance{
  margin:2.5rem 0;
  background:var(--navy);
  border-radius:var(--radius);
  padding:2rem 1.75rem;
}
.bloc-reassurance h2{
  color:var(--gold);margin-bottom:1.5rem;
  font-family:var(--font-heading);font-size:1.5rem;font-weight:400;
  text-align:center;
}
.reassurance-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;
}
@media(max-width:1023px){
  .reassurance-grid{grid-template-columns:1fr;gap:0}
}
.reassurance-item{
  display:flex;flex-direction:row;align-items:flex-start;
  gap:.875rem;padding:.875rem 0;
}
@media(max-width:1023px){
  .reassurance-item{border-bottom:1px solid rgba(255,255,255,.07)}
  .reassurance-item:last-child{border-bottom:none}
}
@media(min-width:1024px){
  .reassurance-item{flex-direction:column;align-items:center;text-align:center;padding:.5rem}
}
.reassurance-icon{
  width:36px;height:36px;border-radius:8px;
  background:rgba(200,221,209,.15);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
}
.reassurance-icon svg{width:16px;height:16px;stroke:var(--gold)}
.reassurance-item-text{flex:1}
.reassurance-item strong{
  display:block;color:var(--white);
  font-family:var(--font);font-size:.9375rem;font-weight:600;
  margin-bottom:.25rem;
}
@media(min-width:1024px){
  .reassurance-icon{width:40px;height:40px;margin-bottom:.625rem}
  .reassurance-icon svg{width:18px;height:18px}
}
.reassurance-item p{font-family:var(--font);font-size:.875rem;color:rgba(255,255,255,.55);margin:0;line-height:1.6}

/* ── Sidebar engagements : fix alignement texte ── */
.sidebar-engagements li span{flex:1;min-width:0}

/* ================================================================
   v1.9.4 — Réassurance mobile only / Sidebar desktop épurée
   ================================================================ */

/* Bloc réassurance : mobile uniquement */
.bloc-reassurance--mobile{display:block}
@media(min-width:1024px){
  .bloc-reassurance--mobile{display:none}
}

/* Sidebar : supprimer le padding-bottom inutile sans engagements */
@media(min-width:1024px){
  .sidebar-engagements{display:none}
  .sidebar-contact{padding-bottom:1.5rem}
}

/* ================================================================
   v1.9.6 — Fix FAB iOS / sidebar cascade / header mobile
   ================================================================ */

/* Header : masquer sous-titre logo sur très petits écrans */
@media(max-width:479px){
  .logo-sub{display:none}
}

/* FAB : z-index élevé */

/* CTA inline : masqué sur desktop (remplacé par la sidebar) */
@media(min-width:1024px){
  .cta-inline{display:none}
}
/* Restauration des listes dans le contenu éditorial */
.entry-content ul,
.post-content ul,
article ul {
  list-style: disc;
  padding-left: 1.5em;
  margin-bottom: 1em;
}

.entry-content ul li,
.post-content ul li,
article ul li {
  margin-bottom: 0.4em;
}

.single-cover {
  position: relative;
  height: auto !important;
  min-height: 280px;
  padding-bottom: 2rem;
}

.single-cover img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-cover-overlay {
  position: absolute;
  inset: 0;
  height: 100%;
}

.single-cover-meta {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: visible !important;
  padding-bottom: 2rem;
}
/* ============================================================
   ESPACE — BANDEAU URGENCE
   ============================================================ */
.urgence-bar{background:#8B1A1A;color:#fff;font-size:.8rem;padding:.5rem 0;border-bottom:2px solid #a82020}
.urgence-bar__inner{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .875rem;justify-content:center}
@media(min-width:768px){.urgence-bar__inner{justify-content:center}}
.urgence-bar__label{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;color:#ffd5d5;text-transform:uppercase;font-size:.7rem;letter-spacing:.08em}
.urgence-bar__label svg{flex-shrink:0}
.urgence-bar__number{display:inline-flex;align-items:center;gap:.4rem;color:#fff;font-weight:600;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.2rem .75rem;transition:background .2s;min-height:32px}
.urgence-bar__number:hover{background:rgba(255,255,255,.22);color:#fff}
.urgence-bar__number strong{font-size:1rem;font-weight:800}
.urgence-bar__sep{color:rgba(255,255,255,.4);font-weight:300}
.urgence-bar__police{display:inline-flex;align-items:center;gap:.25rem;color:rgba(255,255,255,.85);font-weight:600;padding:.2rem .5rem;border-radius:999px;transition:background .2s;min-height:32px}
.urgence-bar__police:hover{background:rgba(255,255,255,.12);color:#fff}
.urgence-bar__police strong{font-size:.9rem}

/* ============================================================
   ESPACE — TEMPLATE GUIDE
   ============================================================ */
.guide-cover{}
.guide-cover__badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;margin-top:.75rem}
.guide-cover__intro{color:rgba(255,255,255,.75);max-width:680px;font-size:1.05rem;margin-top:.75rem;line-height:1.7}

.guide-layout{display:grid;grid-template-columns:1fr;gap:2.5rem;padding:3rem 0}
@media(min-width:1024px){.guide-layout{grid-template-columns:1fr 340px;gap:3rem;align-items:start;padding:4rem 0;max-width:1280px;margin:0 auto;padding-left:2rem;padding-right:2rem}}

/* TOC inline (mobile) */
.guide-toc{background:var(--cream);border:1px solid var(--border);border-left:4px solid var(--gold);border-radius:var(--radius-sm);padding:1.5rem;margin-bottom:2rem}
.guide-toc__title{display:flex;align-items:center;gap:.5rem;font-weight:700;color:var(--navy);font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:1rem}
.guide-toc__list{counter-reset:none;padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:.5rem}
.guide-toc__list a{display:flex;align-items:center;gap:.625rem;color:var(--text);font-size:.9rem;line-height:1.4;transition:color .2s;padding:.375rem .5rem;border-radius:4px}
.guide-toc__list a:hover{color:var(--gold);background:rgba(0,0,0,.03)}
.guide-toc__num{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;background:var(--navy);color:#fff;font-size:.7rem;font-weight:700;border-radius:50%;flex-shrink:0}
@media(min-width:1024px){.guide-toc{display:none}}

/* Guide content enrichments */
.guide-content h2{scroll-margin-top:calc(var(--nav-height) + 5rem);margin-top:2.5rem;padding-top:.5rem}
.guide-content h3{scroll-margin-top:calc(var(--nav-height) + 4rem)}

/* Sidebar guide */
.guide-sidebar{display:flex;flex-direction:column;gap:1.5rem}
@media(min-width:1024px){.guide-sidebar{position:sticky;top:calc(var(--nav-height) + 1.5rem)}}

/* Sidebar urgence */
.sidebar-urgence{background:#8B1A1A;border-radius:var(--radius);padding:1.25rem 1.5rem;text-align:center}
.sidebar-urgence__title{color:rgba(255,255,255,.75);font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;font-weight:600;margin-bottom:.875rem}
.sidebar-urgence__btn{display:flex;align-items:center;justify-content:center;gap:.5rem;background:#fff;color:#8B1A1A;font-weight:700;border-radius:999px;padding:.625rem 1.25rem;font-size:.95rem;transition:transform .2s,box-shadow .2s;min-height:44px}
.sidebar-urgence__btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px rgba(0,0,0,.2)}
.sidebar-urgence__btn strong{font-size:1.15rem}
.sidebar-urgence__note{color:rgba(255,255,255,.6);font-size:.75rem;margin-top:.625rem}

/* Sidebar TOC desktop */
.sidebar-toc{background:var(--cream);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.25rem}
.sidebar-toc__title{font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.875rem}
.sidebar-toc ol{list-style:none;padding:0;margin:0;counter-reset:toc-counter;display:flex;flex-direction:column;gap:.375rem}
.sidebar-toc ol li{counter-increment:toc-counter}
.sidebar-toc ol li a{display:block;font-size:.825rem;color:var(--text);line-height:1.4;padding:.3rem .5rem;border-radius:4px;transition:color .2s,background .2s}
.sidebar-toc ol li a:hover{color:var(--gold);background:rgba(0,0,0,.03)}
.sidebar-toc ol li a::before{content:counter(toc-counter)". ";font-weight:700;color:var(--gold);font-size:.75rem}

/* ============================================================
   ESPACE — TEMPLATE RESSOURCES
   ============================================================ */
.ressources-hero{padding:4rem 1.5rem 3rem;background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);text-align:left}
.ressources-hero__inner h1{color:#fff;margin:.75rem 0}
.ressources-hero__inner p{color:rgba(255,255,255,.7);max-width:660px;font-size:1.05rem}
.ressources-section{padding:3rem 0 5rem}
.ressources-section-title{display:flex;align-items:center;gap:.625rem;font-size:1.25rem;color:var(--navy);margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border)}
.ressources-section-title svg{color:var(--gold);flex-shrink:0}
.ressources-urgence-grid{margin-bottom:3.5rem}
.urgence-cards{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:600px){.urgence-cards{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.urgence-cards{grid-template-columns:repeat(4,1fr)}}
.urgence-card{display:flex;align-items:center;gap:1rem;background:var(--cream);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem;transition:transform .2s,box-shadow .2s;text-decoration:none}
.urgence-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.urgence-card--primary{background:var(--navy);border-color:var(--navy)}
.urgence-card--primary .urgence-card__num{background:var(--gold);color:var(--navy)}
.urgence-card--primary .urgence-card__info strong{color:#fff}
.urgence-card--primary .urgence-card__info span{color:rgba(255,255,255,.7)}
.urgence-card__num{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--navy);min-width:64px;text-align:center;flex-shrink:0}
.urgence-card__info{display:flex;flex-direction:column;gap:.2rem}
.urgence-card__info strong{color:var(--navy);font-size:.9rem;font-weight:700}
.urgence-card__info span{color:var(--muted);font-size:.78rem;line-height:1.4}
.ressources-assoc-block{margin-bottom:3rem}
.assoc-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:640px){.assoc-grid{grid-template-columns:repeat(2,1fr)}}
.assoc-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);padding:1.25rem 1.5rem}
.assoc-card h3{font-size:.95rem;font-weight:700;color:var(--navy);margin-bottom:.5rem;font-family:var(--font)}
.assoc-card p{font-size:.85rem;color:var(--muted);line-height:1.6;margin-bottom:.375rem}
.assoc-card a{color:var(--gold);font-size:.82rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.assoc-card a:hover{color:var(--gold-2)}
.ressources-cta{margin-top:3rem}

/* ============================================================
   ESPACE — MOBILE OPTIMISATIONS CRITIQUES
   ============================================================ */

/* Bandeau urgence : toujours visible y compris mobile */
@media(max-width:767px){
  .urgence-bar{font-size:.72rem;padding:.4rem 0}
  .urgence-bar__inner{gap:.4rem .5rem}
  .urgence-bar__number{padding:.15rem .6rem;font-size:.78rem}
  .urgence-bar__number strong{font-size:.9rem}
}

/* Guide layout : 1 col mobile */
@media(max-width:1023px){
  .guide-layout{padding:2rem 1rem}
  .guide-sidebar .sidebar-toc{display:none}
}
@media(max-width:767px){
  .guide-layout{padding:1.5rem 1rem;gap:2rem}
  .guide-cover__intro{font-size:.95rem}
}

/* Ressources mobile */
@media(max-width:599px){
  .ressources-hero{padding:2.5rem 1rem 2rem}
  .urgence-card{flex-direction:column;align-items:flex-start;gap:.625rem;padding:1rem}
  .urgence-card__num{min-width:auto;font-size:1.75rem}
}

/* Sidebar urgence : visible mobile hors guide (en bas de page article) */
@media(max-width:767px){
  .sidebar-urgence{border-radius:0;margin:-1.5rem -1rem 2rem}
}

/* Touch target minimum 44px sur tous les liens urgence */
.urgence-bar a,.urgence-card,.sidebar-urgence__btn{min-height:44px}
@media(max-width:767px){
  .urgence-bar a{min-height:40px}
}

/* Scroll horizontal guard */
body{overflow-x:hidden}
.guide-layout,.ressources-section .container{overflow-x:clip}

/* Viewport meta déjà présent — s'assurer que le zoom texte ne casse pas le bandeau */
@media(max-width:380px){
  .urgence-bar__sep,.urgence-bar__police:last-child{display:none}
  .urgence-bar__number strong{font-size:.85rem}
}

/* ============================================================

/* ============================================================
   ESPACE — BANDEAU URGENCE (fond crème, style discret)
   ============================================================ */
.urgence-bar{background:#F5EFE8;border-bottom:1px solid #D8D0C4;padding:.625rem 0}
.urgence-bar__inner{display:flex;align-items:center;gap:.75rem 1.5rem;flex-wrap:wrap;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 1.5rem}
@media(max-width:767px){.urgence-bar__inner{justify-content:flex-start;gap:.5rem;flex-direction:column;align-items:stretch}}
.urgence-bar__left{display:flex;align-items:center;gap:.75rem;flex:1}
.urgence-bar__shield{width:18px;height:18px;color:#2D4A3E;flex-shrink:0}
.urgence-bar__text{font-size:.82rem;color:#1E2820;margin:0;line-height:1.5}
.urgence-bar__text strong{font-weight:700;color:#1E2820}
.urgence-bar__text a{color:#1E2820;font-weight:800;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:2px}
.urgence-bar__pill{display:inline-flex;align-items:center;gap:.4rem;background:#2D4A3E;color:#fff;font-size:.8rem;font-weight:700;padding:.4rem 1.125rem;border-radius:999px;text-decoration:none;white-space:nowrap;min-height:38px;transition:background .2s;flex-shrink:0}
.urgence-bar__pill:hover{background:#3A5E50}
.urgence-bar__pill svg{flex-shrink:0}
@media(max-width:767px){.urgence-bar__dot{display:none}.urgence-bar__text{font-size:.78rem}.urgence-bar__pill{justify-content:center}}

/* ============================================================
   ESPACE — BOUTON QUITTER RAPIDEMENT
   ============================================================ */
.quick-exit{position:fixed;bottom:5.5rem;right:1.25rem;left:auto;z-index:9998;background:#F5EFE8;color:#2D4A3E;border:2px solid #2D4A3E;border-radius:999px;padding:.5rem 1.125rem;font-family:var(--font);font-size:.75rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;box-shadow:0 4px 20px rgba(0,0,0,.15);transition:background .2s,transform .15s,box-shadow .15s;min-height:42px;line-height:1}
.quick-exit:hover{background:#B03030;color:#fff;border-color:#B03030;transform:scale(1.04);box-shadow:0 6px 24px rgba(176,48,48,.4)}
.quick-exit:focus-visible{outline:3px solid #C8DDD1;outline-offset:3px}
/* ── Barre overlay mobile : quick-exit (gauche) + fab-tel (droite) au même niveau ── */
@media(max-width:767px){
  .quick-exit{
    bottom:1rem;left:1rem;right:auto;
    font-size:.8rem;padding:.6rem 1rem;
    min-height:48px;
  }
  .fab-tel{
    display:flex;
    bottom:1rem;right:1rem;left:auto;
    width:48px;height:48px;
  }
}

/* ============================================================
   ESPACE HP — TOKENS & ANIMATIONS
   ============================================================ */
:root{
  --ep-forest:#2D4A3E;--ep-forest-2:#3A5E50;
  --ep-sage-light:#C8DDD1;--ep-sage-mid:#4A7C6B;
  --ep-cream:#F5EFE8;--ep-sand:#EDE6DB;--ep-white:#FAFAF7;
  --ep-text:#1E2D26;--ep-muted:#536358;--ep-border:#D0CAC0;
  --ep-r:12px;--ep-r-lg:18px;
}

/* Animations HP — contenu visible par défaut, animation = amélioration progressive */
@keyframes ep-rise{from{opacity:.2;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.ep-fadein{animation:ep-rise .6s cubic-bezier(.22,.6,.36,1) forwards}
.ep-fadein--d2{animation-delay:.18s}
/* ep-reveal : JS ajoute .is-visible, sinon le contenu reste visible */
.ep-reveal{transition:opacity .5s cubic-bezier(.22,.6,.36,1) var(--erd,0s),transform .5s cubic-bezier(.22,.6,.36,1) var(--erd,0s)}
.ep-reveal.will-animate{opacity:0;transform:translateY(16px)}
.ep-reveal.is-visible{opacity:1!important;transform:translateY(0)!important}
@media(prefers-reduced-motion:reduce){.ep-fadein,.ep-fadein--d2{animation:none}.ep-reveal,.ep-reveal.will-animate{opacity:1;transform:none;transition:none}}

/* ── Helpers ── */
.ep-container{width:100%;max-width:1100px;margin:0 auto;padding:0 1.5rem}
@media(min-width:1024px){.ep-container{padding:0 2rem}}

.ep-overline{font-size:.7rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--ep-sage-mid);margin:0 0 .625rem;display:block}
.ep-overline--center{text-align:center}
.ep-overline--light{color:rgba(255,255,255,.45)}

.ep-section-head{text-align:center;margin-bottom:3rem}
.ep-section-head h2{font-family:var(--font-heading);font-size:clamp(1.75rem,3.5vw,2.5rem);font-weight:700;color:var(--ep-forest);line-height:1.1;margin:.375rem 0 0}

.ep-link{display:inline-flex;align-items:center;gap:.35rem;color:var(--ep-sage-mid);font-weight:600;font-size:.875rem;text-decoration:none;transition:gap .2s}
.ep-link:hover{gap:.6rem}

.ep-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 2rem;border-radius:var(--ep-r);font-family:var(--font);font-size:.9rem;font-weight:600;border:none;cursor:pointer;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;white-space:nowrap;min-height:46px}
.ep-btn--forest{background:var(--ep-forest);color:#fff}
.ep-btn--forest:hover{background:var(--ep-forest-2);box-shadow:0 6px 22px rgba(45,74,62,.28);transform:translateY(-1px)}
.ep-btn--outline{background:var(--ep-white);color:var(--ep-forest);border:2px solid var(--ep-forest);font-weight:700}
.ep-btn--outline:hover{background:var(--ep-forest);color:#fff}
.ep-btn--outline-white{background:#F5EFE8;color:#2D4A3E;border:2px solid #F5EFE8;font-weight:700}
.ep-btn--outline-white:hover{background:#fff;border-color:#fff;color:#2D4A3E}
.ep-scroll-btn{width:46px;height:46px;border:1.5px solid rgba(255,255,255,.22);border-radius:50%;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);flex-shrink:0;text-decoration:none;transition:border-color .2s,color .2s}
.ep-scroll-btn:hover{border-color:var(--ep-sage-light);color:var(--ep-sage-light)}

/* ============================================================
   SECTION 1 — HERO DEUX COLONNES
   ============================================================ */
.ep-hero{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - var(--nav-height,80px) - 52px)}
@media(max-width:860px){.ep-hero{grid-template-columns:1fr;min-height:auto}}

.ep-hero__left{
  background:var(--ep-cream);
  display:flex;flex-direction:column;justify-content:center;
  padding:4.5rem 4rem 4.5rem clamp(1.5rem,calc((100vw - 1100px)/2 + 3rem),6rem);
}
@media(max-width:1200px){.ep-hero__left{padding:4rem 3rem}}
@media(max-width:860px){.ep-hero__left{padding:3.5rem 1.5rem 4rem}}

.ep-hero h1{font-family:var(--font-heading);font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:700;color:var(--ep-forest);line-height:1.06;margin:0 0 1.375rem;letter-spacing:-.01em}
.ep-hero h1 em{font-style:italic;color:var(--ep-sage-mid);font-weight:400}

.ep-hero__desc{color:var(--ep-muted);font-size:1rem;line-height:1.75;max-width:440px;margin:0 0 2rem}

.ep-hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}
.ep-hero__actions .ep-btn--forest{font-size:.875rem;padding:.75rem 1.375rem}
.ep-hero__actions .ep-btn--outline{font-size:.875rem;padding:.75rem 1.375rem}

.ep-hero__confiance{display:inline-flex;align-items:center;gap:.4rem;font-size:.875rem;color:var(--ep-text);line-height:1.5;margin:0}
.ep-hero__confiance svg{color:var(--ep-sage-mid);flex-shrink:0}

.ep-hero__right{background:var(--ep-sage-light);overflow:hidden;position:relative}
.ep-hero__photo{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.ep-hero__placeholder{width:100%;height:100%;min-height:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.875rem;color:rgba(45,74,62,.4)}
.ep-hero__placeholder span{font-size:.8rem}
@media(max-width:860px){.ep-hero__right{min-height:260px}}
@media(max-width:860px){.ep-hero__actions{flex-direction:column}.ep-hero__actions .ep-btn{width:100%}}

/* ============================================================
   SECTION 2 — ACCROCHE FORÊT
   ============================================================ */
.ep-accroche{background:var(--ep-forest);padding:3rem 0}
.ep-accroche__inner{max-width:1100px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.ep-accroche__inner > p{font-family:var(--font-heading);font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:400;line-height:1.65;color:rgba(255,255,255,.82);margin:0;max-width:820px}
.ep-accroche__inner strong{color:#fff;font-weight:700}
@media(max-width:767px){.ep-accroche{padding:2.25rem 0}.ep-scroll-btn{display:none}}

/* ============================================================
   SECTION 3 — CARTES SERVICES
   ============================================================ */
.ep-services{background:var(--ep-white);padding:5rem 0}
.ep-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media(max-width:860px){.ep-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.ep-cards{grid-template-columns:1fr}}

.ep-card{background:var(--ep-cream);border:1px solid var(--ep-border);border-radius:var(--ep-r-lg);padding:1.75rem 1.625rem;display:flex;flex-direction:column;gap:.5rem;transition:transform .22s,box-shadow .22s}
.ep-card:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(45,74,62,.09)}

.ep-card__icon{width:44px;height:44px;background:var(--ep-sage-light);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:.375rem;color:var(--ep-forest)}
.ep-card__icon svg{width:20px;height:20px;stroke:var(--ep-forest)}

.ep-card h3{font-family:var(--font);font-size:.9375rem;font-weight:700;color:var(--ep-forest);line-height:1.3;margin:0}
.ep-card p{font-size:.84rem;color:var(--ep-muted);line-height:1.65;margin:0;flex:1}
.ep-card__lien{display:inline-flex;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:700;color:var(--ep-sage-mid);text-decoration:none;margin-top:.625rem;transition:gap .2s}
.ep-card__lien:hover{gap:.55rem}
@media(max-width:767px){.ep-services{padding:4rem 0}}

/* ============================================================
   SECTION 4 — ENGAGEMENT
   ============================================================ */
.ep-engagement{background:var(--ep-sand);padding:5rem 0}
.ep-engagement__head{margin-bottom:2.5rem}
.ep-engagement__head h2{font-family:var(--font-heading);font-size:clamp(1.6rem,3vw,2.25rem);font-weight:700;color:var(--ep-forest);margin:.35rem 0 0;line-height:1.1}

.ep-engagement__inner{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center}
@media(max-width:767px){.ep-engagement__inner{grid-template-columns:1fr;gap:2rem}}

.ep-engagement__img img{width:100%;height:300px;object-fit:cover;border-radius:var(--ep-r-lg);display:block;box-shadow:0 8px 28px rgba(45,74,62,.1)}
.ep-engagement__placeholder{width:100%;height:300px;background:var(--ep-sage-light);border-radius:var(--ep-r-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:rgba(45,74,62,.45)}
.ep-engagement__placeholder span{font-size:.8rem}

.ep-engagement__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.375rem}
.ep-engagement__list li{display:flex;align-items:flex-start;gap:1rem;font-size:.9375rem;color:var(--ep-text);line-height:1.6}
.ep-engagement__dot{width:8px;height:8px;background:var(--ep-forest);border-radius:50%;flex-shrink:0;margin-top:.45rem}
.ep-engagement__list strong{font-weight:700;color:var(--ep-forest)}
@media(max-width:767px){.ep-engagement{padding:4rem 0}}

/* ============================================================
   SECTION 5 — MINI BIO
   ============================================================ */
.ep-bio{background:var(--ep-white);padding:4rem 0;border-top:1px solid var(--ep-border)}
.ep-bio__inner{display:flex;align-items:flex-start;gap:2rem}
@media(max-width:640px){.ep-bio__inner{flex-direction:column;gap:1.5rem}}

.ep-bio__portrait img{width:120px;height:120px;border-radius:var(--ep-r-lg);object-fit:cover;object-position:top;flex-shrink:0;display:block}
.ep-bio__portrait-placeholder{width:120px;height:120px;background:var(--ep-sage-light);border-radius:var(--ep-r-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;color:rgba(45,74,62,.45);flex-shrink:0}
.ep-bio__portrait-placeholder span{font-size:.65rem}

.ep-bio__text h2{font-family:var(--font-heading);font-size:1.6rem;font-weight:700;color:var(--ep-forest);margin:0 0 .25rem;line-height:1.1}
.ep-bio__subtitle{font-size:.8125rem;color:var(--ep-muted);margin:0 0 .875rem}
.ep-bio__text > p{font-size:.9rem;color:var(--ep-muted);line-height:1.7;margin:0 0 1rem}
.ep-bio__badge{display:inline-flex;align-items:center;gap:.4rem;background:var(--ep-sage-light);color:var(--ep-forest);font-size:.78rem;font-weight:600;padding:.4rem .875rem;border-radius:999px}
.ep-bio__badge svg{flex-shrink:0;color:var(--ep-forest)}

/* ============================================================
   SECTION 6 — ARTICLES
   ============================================================ */
.ep-articles{background:var(--ep-cream);padding:5rem 0}
.ep-articles__head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2.25rem}
.ep-articles__head h2{font-family:var(--font-heading);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:var(--ep-forest);margin:.3rem 0 0}
.ep-articles__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
@media(max-width:860px){.ep-articles__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:540px){.ep-articles__grid{grid-template-columns:1fr}}

.ep-article{background:var(--ep-white);border-radius:var(--ep-r-lg);overflow:hidden;border:1px solid var(--ep-border);display:flex;flex-direction:column;text-decoration:none;transition:transform .22s,box-shadow .22s}
.ep-article:hover{transform:translateY(-3px);box-shadow:0 10px 32px rgba(45,74,62,.09)}
.ep-article__thumb{height:168px;overflow:hidden;flex-shrink:0}
.ep-article__thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.ep-article:hover .ep-article__thumb img{transform:scale(1.04)}
.ep-article__body{padding:1.25rem 1.375rem;display:flex;flex-direction:column;flex:1}
.ep-article__time{font-size:.68rem;font-weight:700;color:var(--ep-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.5rem}
.ep-article h3{font-family:var(--font);font-size:.9rem;font-weight:700;color:var(--ep-forest);line-height:1.35;margin:0 0 .45rem;flex:1}
.ep-article p{font-size:.8125rem;color:var(--ep-muted);line-height:1.6;margin:0 0 .75rem}
.ep-article__read{font-size:.775rem;font-weight:700;color:var(--ep-sage-mid);margin-top:auto}
@media(max-width:767px){.ep-articles{padding:3.5rem 0}}

/* ============================================================
   SECTION 7 — CTA FINAL (forêt)
   ============================================================ */
.ep-cta{background:var(--ep-forest);padding:5.5rem 0;position:relative;overflow:hidden}
.ep-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 55% 80% at 75% 50%,rgba(200,221,209,.07) 0%,transparent 65%);pointer-events:none}
.ep-cta__inner{position:relative;max-width:620px;margin:0 auto;text-align:center;padding:0 1.5rem}
.ep-cta__inner h2{font-family:var(--font-heading);font-size:clamp(1.9rem,4vw,2.9rem);font-weight:700;color:#fff;line-height:1.1;margin:0 0 1rem}
.ep-cta__inner h2 em{font-style:italic;font-weight:400}
.ep-cta__inner > p{color:rgba(255,255,255,.65);font-size:.9375rem;line-height:1.7;margin:0 0 2.25rem}
.ep-cta__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.875rem;margin-bottom:1.25rem}
.ep-cta__note{font-size:.875rem;color:rgba(255,255,255,.82);margin:0;letter-spacing:.01em;padding-bottom:.25rem}
@media(max-width:767px){.ep-cta{padding:4rem 0 3rem}.ep-cta__actions .ep-btn{flex:1;min-width:0;padding:.875rem 1.5rem}}
@media(max-width:479px){.ep-cta__actions{flex-direction:column;align-items:stretch}.ep-cta__actions .ep-btn{flex:none;width:100%;padding:.9rem 2rem}}
@media(max-width:860px){.ep-hero__left{padding-bottom:4rem}}
