/* Composants communs : valeurs relevées dans les 13 écrans Adobe XD. */
.wp-site-blocks > * + * { margin-block-start: 0; }
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: 0; z-index: 1000; }
.wp-site-blocks > header.samf-site-header--overlay { position: fixed; }
.samf-site-header { border: 0; min-height: 150px; padding: 45px clamp(22px, 3.333vw, 64px) 30px clamp(22px, 4.948vw, 95px); }
.samf-site-header__inner { max-width: none !important; min-height: 75px; }
.samf-brand { flex: 0 0 260px; }
.samf-brand__logo { width: 260px; }
.samf-agent-cta .wp-block-button__link { min-height: 50px; min-width: 251px; }
.samf-header-actions { gap: 24px; }
.samf-primary-navigation .wp-block-navigation__responsive-container-open { width: 32px; height: 44px; }
.samf-primary-navigation .wp-block-navigation__responsive-container-open svg { width: 32px; height: 32px; }
.samf-primary-navigation .wp-block-navigation__responsive-container.is-menu-open { padding: 196px 24px 48px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-content { max-width: 280px; padding: 0; }
.samf-primary-navigation .is-menu-open .wp-block-navigation__container { gap: 34px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation-item__content { font-size: 28px; line-height: 34px; font-weight: 400; text-transform: uppercase; gap: 20px; padding-block: 5px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation-item__content::before { width: 28px; height: 28px; flex-basis: 28px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-close { top: 58px; right: clamp(22px, 3.333vw, 64px); }

.samf-main { padding-top: 0; padding-bottom: 140px; }
.samf-main--home { padding: 0; }
.samf-page-title { padding-top: 13px; padding-bottom: 98px; margin-top: 0; margin-bottom: 54px; width: 100%; }
.samf-page-title__heading { width: 100%; max-width: none; font-size: 89px; font-weight: 700; line-height: 90px; letter-spacing: 0; }
.samf-page-title__accent { font-weight: 300; }
.samf-lead { font-size: 24px; line-height: 34px; font-weight: 500; }
.wp-element-button, .wp-block-button__link { font-size: 17px; line-height: 20px; font-weight: 700; letter-spacing: 0; padding: 13px 31px; min-height: 50px; }
.samf-card, .wp-block-group.is-style-samf-card, .samf-news-card, .samf-case-card { box-shadow: none; }

/* L’écran d’accueil entier mesure une fenêtre : aucun contenu supplémentaire. */
.samf-hero { min-height: 100svh; height: max(720px, 100svh); padding: 0 24px; }
.samf-hero__content { position: absolute; top: 46.82%; left: 0; max-width: none; padding: 0 24px; }
.samf-hero__eyebrow { font-size: 40px; line-height: 48px; font-weight: 300; letter-spacing: 0; text-indent: 0; margin: 0 0 11px; }
.samf-hero__title { max-width: none; display: flex; flex-direction: column; gap: 0; line-height: 1; letter-spacing: 0; margin: 0 0 41px; }
.samf-hero__title-light { font-size: 69px; line-height: 83px; font-weight: 200; }
.samf-hero__title-strong { font-size: 89px; line-height: 107px; font-weight: 700; margin-top: -18px; }
.samf-hero__actions { margin: 0; }
.samf-hero__cta { border-radius: 5px; min-height: 50px; min-width: 174px; padding: 13px 18px; }

.samf-newsletter-banner { padding: 52px 24px; }
.samf-newsletter-banner__inner { width: 100%; max-width: 1276px !important; display: grid; grid-template-columns: 42px minmax(0, 1fr) 151px; column-gap: 28px; padding-right: 108px; align-items: start; }
.samf-newsletter-banner__icon { display: block; width: 42px; height: 56px; margin: 16px 0 0; }
.samf-newsletter-banner__copy { margin: 0; }
.samf-newsletter-banner h2 { font-size: 60px; line-height: 72px; max-width: none; margin: 0; letter-spacing: 0; }
.samf-newsletter-banner__copy p { color: var(--wp--preset--color--blue); font-size: 20px; line-height: 24px; margin: 4px 0 0; }
.samf-newsletter-banner__inner > .wp-block-buttons { margin: 0; align-self: center; padding-top: 30px; }
.samf-newsletter-banner .wp-block-button__link { min-width: 151px; padding-inline: 22px; }

.samf-site-footer__main { max-width: 1276px !important; padding: 72px 0 67px; margin: 0 auto; width: calc(100% - 48px); display: grid !important; grid-template-columns: minmax(0, 736fr) minmax(0, 312fr) minmax(0, 228fr); gap: 0 !important; }
.samf-site-footer__main > .wp-block-column { margin: 0; min-width: 0; }
.samf-footer-brand img { width: 260px; height: 75px; }
.samf-footer-tagline { font-size: 30px; line-height: 30px; font-weight: 700; max-width: 600px; margin: 11px 0 70px; }
.samf-footer-brand .wp-block-buttons { margin: 0; }
.samf-footer-nav { align-self: start; border-left: 1px solid var(--wp--preset--color--footer-rule); padding: 0 0 0 27px; min-height: 199px; }
.samf-footer-nav h2 { font-size: 26px; line-height: 34px; margin: 0 0 30px; }
.samf-footer-nav li { font-size: 20px; line-height: 34px; }
.samf-footer-nav li + li { margin: 0; }
.samf-site-footer__legal { font-size: 14px; line-height: 34px; min-height: 68px; padding: 17px 24px; }
.samf-site-footer__legal-inner { gap: 18px; }
.samf-site-footer__legal-inner p + p { border-left: 1px solid var(--wp--preset--color--footer-rule); padding-left: 18px; }

@media (max-width: 1399px) {
  .samf-newsletter-banner__inner { padding-right: 0; }
  .samf-newsletter-banner h2 { font-size: clamp(36px, 4.286vw, 60px); line-height: 1.2; }
  .samf-hero__title-light { font-size: clamp(32px, 4.1vw, 69px); line-height: 1.2; }
  .samf-hero__title-strong { font-size: clamp(40px, 5.3vw, 89px); line-height: 1.2; margin-top: 0; }
  .samf-footer-tagline { font-size: 26px; line-height: 30px; }
}
@media (max-width: 1099px) {
  .samf-site-header { min-height: 110px; padding: 24px; }
  .samf-site-header__inner { min-height: 62px; }
  .samf-brand { flex-basis: 215px; }
  .samf-brand__logo { width: 215px; }
  .samf-header-actions { gap: 14px; }
  .samf-agent-cta .wp-block-button__link { min-width: 0; padding-inline: 20px; }
  .samf-page-title__heading { font-size: clamp(48px, 7.5vw, 82px); line-height: 1.02; }
  .samf-page-title { padding-bottom: 64px; margin-bottom: 44px; }
  .samf-newsletter-banner__inner { grid-template-columns: 36px minmax(0, 1fr); gap: 24px; }
  .samf-newsletter-banner__icon { width: 36px; margin-top: 4px; }
  .samf-newsletter-banner__inner > .wp-block-buttons { grid-column: 2; padding-top: 0; }
  .samf-site-footer__main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); row-gap: 48px !important; }
  .samf-footer-brand { grid-column: 1 / -1; }
  .samf-footer-tagline { margin-bottom: 30px; }
}
@media (max-width: 767px) {
  .samf-site-header { min-height: 90px; padding: 16px 22px; }
  .samf-site-header__inner { min-height: 58px; }
  .samf-brand { flex-basis: 160px; }
  .samf-brand__logo { width: 160px; }
  .samf-header-actions { gap: 14px; }
  .samf-agent-cta { display: none; }
  .samf-primary-navigation .wp-block-navigation__responsive-container.is-menu-open { padding-top: 138px; }
  .samf-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-close { top: 22px; right: 22px; }
  .samf-primary-navigation .is-menu-open .wp-block-navigation__container { gap: 16px; }
  .samf-primary-navigation .is-menu-open .wp-block-navigation-item__content { font-size: 22px; line-height: 30px; }
  .samf-main { padding-bottom: 80px; }
  .samf-main--home { padding: 0; }
  .samf-page-title { padding-top: 22px; padding-bottom: 44px; margin-bottom: 36px; }
  .samf-page-title__heading { font-size: clamp(42px, 7.5vw, 57px); line-height: 1.04; overflow-wrap: normal; }
  .samf-lead { font-size: 20px; line-height: 29px; }
  .samf-hero { height: max(640px, 100svh); }
  .samf-hero__content { top: 34%; padding-inline: 22px; }
  .samf-hero__eyebrow { font-size: 28px; line-height: 34px; }
  .samf-hero__title-light { font-size: clamp(28px, 5.2vw, 40px); }
  .samf-hero__title-strong { font-size: clamp(34px, 6.2vw, 48px); }
  .samf-hero__title { margin-bottom: 30px; }
  .samf-newsletter-banner { padding: 40px 22px; }
  .samf-newsletter-banner h2 { font-size: 34px; }
  .samf-newsletter-banner__copy p { font-size: 18px; line-height: 25px; }
  .samf-newsletter-banner__inner { column-gap: 14px; grid-template-columns: 30px minmax(0, 1fr); }
  .samf-newsletter-banner__icon { width: 30px; height: 40px; }
  .samf-site-footer__main { display: grid !important; grid-template-columns: minmax(0, 1fr); padding-block: 48px; }
  .samf-footer-brand { grid-column: 1; }
  .samf-footer-nav { min-height: 0; border-left: 0; border-top: 1px solid var(--wp--preset--color--footer-rule); padding: 24px 0 0; }
  .samf-footer-nav h2 { margin-bottom: 16px; }
  .samf-site-footer__legal-inner { gap: 6px 14px; }
  .samf-site-footer__legal-inner p + p { border: 0; padding: 0; }
}
@media (max-width: 379px) {
  .samf-brand { flex-basis: 132px; }
  .samf-brand__logo { width: 132px; }
  .samf-header-actions { gap: 8px; }
}

.samf-footer-brand img { display: block; }
.samf-site-footer > .samf-site-footer__legal { width: 100%; max-width: none; margin-inline: 0 !important; }
/* Priorité aux dimensions XD face aux styles de navigation injectés par WordPress. */
.samf-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding: 0 !important; max-width: 292px; }
.samf-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0 !important; }
.samf-primary-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { padding-block: 0; }
.samf-primary-navigation .is-menu-open .wp-block-navigation-item + .wp-block-navigation-item { margin-top: 45px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation-item:nth-child(2), .samf-primary-navigation .is-menu-open .wp-block-navigation-item:last-child { margin-top: 39px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation-item:nth-child(4), .samf-primary-navigation .is-menu-open .wp-block-navigation-item:nth-child(6) { margin-top: 46px; }
.samf-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-close { position: fixed; top: 58px; right: 52px; }
@media (max-width:767px) {
 .samf-primary-navigation .is-menu-open .wp-block-navigation-item + .wp-block-navigation-item { margin-top: 20px; }
 .samf-primary-navigation .is-menu-open .wp-block-navigation__responsive-container-close { top: 21px; right: 14px; }
}

@media (max-width:1099px) { .samf-footer-intro { grid-column: 1 / -1; } }
/* Les deux lignes des grands titres XD ont un interligne107 et un chevauchement17. */
@media (min-width:1100px) {
 .samf-page-title { padding-bottom: 81px; }
 .samf-page-title__heading { line-height: 107px; }
 .samf-page-title__accent { margin-top: -17px; }
}
.single-samf_cas_pratique.postid-103 .samf-page-title__heading { margin-left: 0 !important; }
@media (min-width:1100px) {
 .samf-page-title__heading br { display: none; }
 .samf-page-title__accent { display: block; }
}
