/* Échelle commune à toutes les pages — 6 octobre 2026. */
:root{--title-xl:clamp(2rem,3.5vw,3.4rem);--title-lg:clamp(1.7rem,2.7vw,2.65rem);--title-md:clamp(1.3rem,1.8vw,1.75rem)}
body :is(h1,.hero h1.three-line-tagline,.page-hero h1.title-with-tagline,.archive h1){font-family:Georgia,'Times New Roman',serif;font-size:var(--title-xl);font-weight:400;line-height:1.18;letter-spacing:-.025em}
body :is(h2,.section h2.three-line-tagline,.section h2.three-line-tagline.tagline-long,.contact h2.three-line-tagline,.section h2.title-with-tagline,.section-title h2.practice-heading,.coming-soon-card h2){font-size:var(--title-lg);font-weight:400;line-height:1.25;letter-spacing:-.02em}
body :is(h3,.offer-grid h3,.internal-grid h3,.package-list h3){font-size:var(--title-md);line-height:1.3;letter-spacing:-.015em}
body .title-with-tagline .tagline-lines{font-size:.66em;line-height:1.45;margin-top:18px}
body .header{gap:20px 28px}
body .header nav{gap:12px 26px;flex-wrap:wrap}
body .header nav a{font-size:17px;line-height:1.4;min-height:44px}
body .header .nav-contact{font-size:16px;min-height:46px}
body .illustrated-header{min-height:0;padding-top:21vw;align-items:flex-start}
body .illustrated-header .header{padding-top:14px;padding-bottom:20px}
body .illustrated-header+main>.hero{background:transparent;min-height:0;align-items:start;grid-template-rows:auto auto;padding-top:0;padding-bottom:44px;overflow:visible}
body .illustrated-header+main>.hero:before,body .illustrated-header+main>.hero:after{display:none}
body .hero .hero-location{font-size:clamp(1rem,1.3vw,1.2rem);font-weight:500;line-height:1.55;margin:8px 6% 0;max-width:70ch;padding:0}
body .hero .hero-copy{padding-top:22px;padding-bottom:30px}
body .hero .hero-photo{width:68%;margin:22px auto 105px}
@media(max-width:1100px) and (min-width:761px){body .header{justify-content:center}body .header nav{justify-content:center;gap:10px 22px}body .header .brand{text-align:center}body .header .brand span{max-width:none}}
@media(max-width:760px){
:root{--title-xl:clamp(1.75rem,6.5vw,2.5rem);--title-lg:clamp(1.5rem,5.7vw,2rem);--title-md:clamp(1.2rem,4.5vw,1.5rem)}
body .header{justify-content:center;gap:14px}body .header nav{width:100%;justify-content:center;gap:4px 18px}body .header nav a{font-size:16px}body .header .brand{text-align:center}body .header .brand span{max-width:none}
body .illustrated-header{padding-top:23vw}body .illustrated-header .header{padding:16px 6% 20px}
body .hero .hero-location{margin:8px 8% 0;font-size:1rem}
body .hero .hero-copy{padding-top:20px}body .hero .hero-photo{width:72%;margin:20px auto 110px}
body .title-with-tagline .tagline-lines{font-size:.72em}
}

.emet-name{text-transform:none}#approche-emet .prose h3{margin:28px 0 14px}

/* Repères de navigation accessibles, communs à toutes les pages. */
:where(a,button,summary):focus-visible{outline:3px solid currentColor;outline-offset:5px}
:target{scroll-margin-top:24px}
