/*
 * Styles du thème Amiltone — fidèles à la maquette Figma « Amiltone - New site » (page d'accueil).
 * Les valeurs de design viennent de theme.json (--wp--preset--*). Les mesures propres aux composants
 * (rayons, espacements, tailles de texte) reprennent la maquette à 1440 px de large.
 * Chargé sur le site ET dans l'éditeur.
 */

:root {
	--am-sky: #e4f0fb;
	--am-blue: #293286;
	--am-pink: #ce3089;
	--am-ink: #2f3442;
	--am-ink-dark: #1d2a3d;
	--am-muted: #707c99;
	--am-lilac: #d6dbf8;
	--am-pale: #faf8ff;
	--am-grey: #f3f4f7;
	--am-neutral: #fafafa;
	--am-border: #c9ced9;
	--am-border-soft: #e0e0e0;
	--am-nav: #141a60;
	--am-pad: clamp(16px, 4.444vw, 64px);
	--am-pad-60: clamp(16px, 4.167vw, 60px);
	--am-max-width: 1920px;
}

/* ---- Base --------------------------------------------------------------- */
body { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--am-ink); }
/* Largeur maximale du site : au-delà, le contenu est centré et le fond reste uni. */
.wp-site-blocks { position: relative; max-width: var(--am-max-width); margin-inline: auto; }
img { height: auto; max-width: 100%; }
.am-visually-hidden { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.am-accent { color: var(--am-pink); }
.am-accent--grad { color: #ce328a; }
.am-main { min-height: 50vh; }
.am-gutter { padding-inline: var(--am-pad); }
a { text-underline-offset: 0.2em; }
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }

/* Reset des marges par défaut (navigateur / core) dans les composants de la maquette */
:where(.am-section, .am-header, .am-footer) :where(h1, h2, h3, h4, p, figure, ul) { margin: 0; }
.am-section :is(.wp-block-image, .wp-block-columns, .wp-block-query, .wp-block-details) { margin: 0; }
.am-footer .wp-block-columns { margin: 0; }
.am-footer > .wp-block-group + .wp-block-group { margin-block-start: 60px; }

.am-section { padding-block: 64px; padding-inline: var(--am-pad); }
.am-section :is(h1, h2, h3, h4) { letter-spacing: 0; }
.am-section h2 { font-size: 40px; line-height: 53.7px; letter-spacing: -0.5px; color: var(--am-ink); font-weight: 600; }
.am-section h3 { font-weight: 600; letter-spacing: 0.25px; color: var(--am-ink); }
.am-section figure img { border-radius: 0; }

/* ---- Boutons ------------------------------------------------------------ */
.am-btn .wp-block-button__link {
	display: inline-flex; align-items: center; gap: 12px; padding: 12px 16px 12px 24px;
	border-radius: 999px; font-family: inherit; font-size: 18px; font-weight: 500; line-height: 24px; letter-spacing: 1.25px;
	text-decoration: none; background: var(--am-blue); color: #fff; border: 0; white-space: nowrap;
}
.am-btn .wp-block-button__link::after { content: ""; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; background: #fff url("../figma/arrow-dark.svg") center / 24px no-repeat; }
.am-btn .wp-block-button__link:hover { background: var(--am-pink); color: #fff; }
.am-btn .wp-block-button__link:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-btn--light .wp-block-button__link { background: #fff; color: var(--am-blue); padding-block: 10px; height: 56px; box-sizing: border-box; }
.am-btn--light .wp-block-button__link::after { width: 36px; height: 36px; background: var(--am-blue) url("../figma/arrow-light.svg") center / 24px no-repeat; }
.am-btn--light .wp-block-button__link:hover { background: var(--am-lilac); color: var(--am-blue); }
.am-btn--outline .wp-block-button__link { background: transparent; color: var(--am-blue); border: 1px solid var(--am-blue); padding: 12px 16px; gap: 8px; font-size: 16px; }
.am-btn--outline .wp-block-button__link::after { width: 24px; height: 24px; background: var(--am-blue) url("../figma/real-arrow.svg") center / 16px no-repeat; }
.am-btn--outline .wp-block-button__link:hover { background: var(--am-blue); color: #fff; }
.am-btn--sm .wp-block-button__link { padding: 12px 16px; font-size: 16px; gap: 12px; }
.am-btn--sm .wp-block-button__link::after { width: 24px; height: 24px; background-size: 24px; }
.am-btn--white .wp-block-button__link { background: #fff; color: var(--am-ink); height: 50px; box-sizing: border-box; padding: 0 12px 0 24px; font-size: 20px; line-height: 28px; }
.am-btn--white .wp-block-button__link::after { background: url("../figma/contact-btn.svg") center / 32px no-repeat; }
.am-btn--white .wp-block-button__link:hover { background: var(--am-lilac); color: var(--am-ink); }
.am-btn--square .wp-block-button__link { border-radius: 16px; padding: 16px 24px; }
.am-btn--square .wp-block-button__link::after { display: none; }
.wp-block-buttons { gap: 16px; }

/* ---- En-tête ------------------------------------------------------------ */
/* Barre blanche de 1360 px à 40 px des bords (16 px de marge de page + 24 px), comme la maquette. */
.am-header { background: transparent; padding: 40px; }
.am-header__bar { display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-between; gap: 24px; max-width: none; padding: 24px 48px; background: #fff; border-radius: 30px; box-shadow: 0 3px 6px rgba(33, 33, 33, 0.1); }
.am-header__logo { margin: 0; flex: 0 0 auto; }
.am-header__logo img { display: block; width: 115px; height: auto; border-radius: 0; }
.am-nav { margin-left: auto; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; gap: 0; }
.am-nav .wp-block-navigation__container { gap: 0; }
.am-nav .wp-block-navigation-item__content { padding: 10px 12px; border-radius: 6px; color: var(--am-nav); text-decoration: none; }
.am-nav .has-child > .wp-block-navigation-item__content { padding-right: 0; }
.am-nav .wp-block-navigation-item__content:hover { color: var(--am-pink); }
.am-nav .wp-block-navigation__submenu-icon { display: block; width: 24px; height: 24px; margin: 0 12px 0 6px; padding: 0; background: url("../figma/nav-chev.svg") center / 24px no-repeat; }
.am-nav .wp-block-navigation__submenu-icon svg { display: none; }
.am-nav .wp-block-navigation__submenu-container { border: 1px solid var(--am-lilac); border-radius: 8px; padding: 8px; box-shadow: 0 8px 24px rgba(33, 33, 33, 0.12); font-weight: 500; }
.am-header__cta { flex: 0 0 auto; margin-left: 0; }
/* ---- Méga-menu (panneaux Solutions, Ressources, À propos, Carrières) ------------------------------------------
 * Les liens viennent du bloc Navigation ; le panneau est le sous-menu étiré sur toute la carte de l'en-tête
 * (il prolonge la carte vers le bas). Ouverture/fermeture, aria-expanded et clavier : script du bloc Navigation.
 * Sous 1440 px (dès que les entrées ne tiennent plus sur une seule ligne), le menu burger de WordPress prend le relais
 * (encarts masqués). */
.am-header { position: relative; z-index: 20; }
.am-header__bar { position: relative; isolation: isolate; }
.am-header__bar > .am-header__logo, .am-header__bar > .am-nav, .am-header__bar > .am-header__cta { position: relative; z-index: 1; }
@media (min-width: 1440px) {
	.am-nav:not(.is-menu-open), .am-nav .wp-block-navigation__container, .am-nav .wp-block-navigation__responsive-container:not(.is-menu-open), .am-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__responsive-dialog { position: static; }
	.am-nav .wp-block-navigation__container > .am-mega { position: static; }
	.am-nav .wp-block-navigation__container > .am-mega > .wp-block-navigation-item__content { position: relative; z-index: 2; }
	.am-nav .wp-block-navigation__container > .am-mega > .wp-block-navigation__submenu-icon { position: relative; z-index: 2; }
	.am-nav .wp-block-navigation__container > .has-child:is(:hover, :focus-within) > .wp-block-navigation-item__content,
	.am-nav .wp-block-navigation__container > .current-menu-ancestor > .wp-block-navigation-item__content,
	.am-nav .wp-block-navigation__container > .current-menu-item > .wp-block-navigation-item__content { color: var(--am-nav); text-decoration: underline; text-underline-offset: 4px; }

	.am-nav.wp-block-navigation .wp-block-navigation__container .has-child.am-mega > .wp-block-navigation__submenu-container {
		position: absolute; z-index: 0; inset: auto 0 auto 0; top: calc(100% - 44px); left: 0; right: 0; width: auto; min-width: 0; box-sizing: border-box;
		display: grid; align-items: start; gap: 24px 48px; padding: 68px 48px 40px; margin: 0;
		background: #fff; border: 0; border-radius: 0 0 30px 30px; color: var(--wp--preset--color--bluck); font-weight: 500;
		box-shadow: 0 6px 6px -3px rgba(33, 33, 33, 0.1);
	}
	.am-nav .am-mega > .wp-block-navigation__submenu-container > .wp-block-navigation-item { margin: 0; }
	.am-nav .am-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item > .wp-block-navigation-item__content { padding: 0; border-radius: 0; font-size: 14px; line-height: 21px; letter-spacing: 0; font-weight: 500; color: var(--wp--preset--color--bluck); }
	.am-nav .am-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item__content[href]:hover { color: var(--am-blue); text-decoration: underline; }
	.am-nav .am-mega > .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible { outline: 2px solid var(--am-pink); outline-offset: 3px; border-radius: 4px; }
	.am-nav .am-mega > .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon { display: none; }

	/* Colonnes simples (À propos, Carrières) : 2 colonnes de 3 liens */
	.am-nav .am-mega--cols > .wp-block-navigation__submenu-container { grid-template-columns: repeat(2, minmax(160px, 220px)); grid-template-rows: repeat(3, auto); grid-auto-flow: column; justify-content: start; row-gap: 16px; }

	/* Solutions : encart + 3 colonnes (titre + liens) */
	.am-nav .am-mega--solutions > .wp-block-navigation__submenu-container { grid-template-columns: minmax(260px, 370px) repeat(3, minmax(0, 1fr)); }
	.am-nav .am-mega__col { display: block; }
	.am-nav .am-mega > .wp-block-navigation__submenu-container > .am-mega__col > .wp-block-navigation-item__content { display: block; margin-bottom: 16px; font-size: 20px; line-height: 24px; font-weight: 500; color: var(--am-blue); }
	.am-nav .am-mega__col > .wp-block-navigation__submenu-container {
		position: static; display: flex; flex-direction: column; gap: 16px; width: auto; min-width: 0; height: auto; padding: 0; margin: 0;
		opacity: 1; visibility: visible; overflow: visible; border: 0; background: none; box-shadow: none;
	}

	/* Ressources : liens | derniers articles | livres blancs */
	.am-nav .am-mega--ressources > .wp-block-navigation__submenu-container { grid-template-columns: minmax(140px, 1fr) minmax(0, 2fr) minmax(0, 1.5fr); grid-template-rows: repeat(4, min-content) 1fr; row-gap: 16px; grid-auto-flow: row dense; }
	.am-nav .am-mega--ressources > .wp-block-navigation__submenu-container > .wp-block-navigation-item:not(.am-mega__extra) { grid-column: 1; }
	.am-nav .am-mega__extra { min-width: 0; }
	.am-nav .am-mega__extra--posts { grid-column: 2; grid-row: 1 / span 5; }
	.am-nav .am-mega__extra--highlights { grid-column: 2 / -1; grid-row: 1 / span 5; }
	.am-nav .am-mega__extra--solutions { grid-column: 1; grid-row: 1; align-self: stretch; }
	.am-nav .am-mega__extra--solutions .am-mega-card { height: 100%; }

	/* Sept onglets (AW-144) : marges des onglets de la maquette (9 px) et espacement de 12 px : la barre tient sur une ligne dès 1440 px, barre de défilement comprise (1425 px utiles) */
	.am-header__bar { gap: 12px; }
	.am-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { padding-left: 9px; }
	.am-nav .wp-block-navigation__container > .wp-block-navigation-item:not(.has-child) > .wp-block-navigation-item__content { padding-right: 9px; }
	.am-nav .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation__submenu-icon { margin-right: 9px; }

	/* Accompagnement IA (AW-144) : en-tête (encart de la zone « accompagnement-ia ») puis cinq colonnes ; titres de colonnes non cliquables */
	.am-nav.wp-block-navigation .wp-block-navigation__container .has-child.am-mega--ia > .wp-block-navigation__submenu-container { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 32px 24px; }
	.am-nav .am-mega__extra--ia { grid-column: 1 / -1; padding-bottom: 28px; border-bottom: 1px solid var(--am-border); }
	.am-nav .am-mega__extra--ia .am-mega-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 24px; row-gap: 4px; padding: 0; background: none; border-radius: 0; }
	.am-nav .am-mega__extra--ia .am-mega-card__title { grid-column: 1; font-size: 24px; line-height: 30px; font-weight: 600; }
	.am-nav .am-mega__extra--ia .am-mega-card__text { grid-column: 1; font-size: 18px; line-height: 26px; letter-spacing: 0.15px; }
	.am-nav .am-mega__extra--ia .am-mega-card .wp-block-buttons { grid-column: 2; grid-row: 1 / span 2; margin: 0; }
	.am-nav .am-mega--ia > .wp-block-navigation__submenu-container > .am-mega__col > .wp-block-navigation-item__content { margin: 0; padding: 0 10px 12px; font-size: 18px; line-height: 24px; font-weight: 600; color: var(--wp--preset--color--bluck); pointer-events: none; cursor: default; }
	.am-nav .am-mega--ia > .wp-block-navigation__submenu-container > .am-mega__col > .wp-block-navigation__submenu-container { gap: 4px; }
	.am-nav .am-mega--ia > .wp-block-navigation__submenu-container .am-mega__col > .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: 10px; border-radius: 12px; font-size: 16px; line-height: 22px; }
	.am-nav .am-mega--ia > .wp-block-navigation__submenu-container .am-mega__col > .wp-block-navigation__submenu-container .am-mega__sub > .wp-block-navigation-item__content { padding-left: 26px; font-weight: 400; }
}
/* Menu burger entre 600 et 1439 px : WordPress ne l'active que sous 600 px, on rétablit ici son état « burger » (liste masquée,
   bouton d'ouverture visible) pour que le menu ne passe jamais sur deux lignes. */
@media (min-width: 600px) and (max-width: 1439px) {
	.am-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
	.am-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
}
/* Encarts masqués par défaut (menu burger) ; affichés sur le méga-menu bureau/tablette */
.am-nav .wp-block-navigation__submenu-container > .am-mega__extra.wp-block-navigation-item { display: none; }
@media (min-width: 1440px) { .am-nav .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation__submenu-container > .am-mega__extra.wp-block-navigation-item { display: block; } }

/* Encarts (éditables : wp-admin > Encarts du menu) */
.am-mega-card .wp-block-button__link { white-space: normal; }
.am-mega-card { box-sizing: border-box; display: flex; flex-direction: column; gap: 16px; padding: 24px; background: var(--am-pale); border-radius: 30px; color: var(--wp--preset--color--bluck); white-space: normal; }
.am-mega-card > * { margin: 0; }
.am-mega-card .wp-block-image img { display: block; width: 100%; height: auto; aspect-ratio: 300 / 145; object-fit: cover; border-radius: 16px; }
.am-mega-card__title { font-size: 20px; line-height: 24px; font-weight: 500; }
.am-mega-card__text { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; font-weight: 400; }
.am-mega-card .wp-block-buttons { margin-top: auto; }
.am-mega-card .am-btn .wp-block-button__link { height: auto; min-height: 48px; padding: 8px 8px 8px 24px; font-size: 16px; line-height: 24px; letter-spacing: 1px; font-weight: 500; }
.am-mega-card .am-btn .wp-block-button__link::after { width: 32px; height: 32px; background-size: 16px; }
.am-mega-card .am-btn--ghost .wp-block-button__link { background: transparent; color: var(--wp--preset--color--bluck); padding: 0; height: auto; gap: 12px; }
.am-mega-card .am-btn--ghost .wp-block-button__link::after { width: 32px; height: 32px; background: transparent url("../figma/arrow-up-right.svg") center / 16px no-repeat; border: 1px solid var(--wp--preset--color--bluck); box-sizing: border-box; }
.am-mega-card .am-btn--ghost .wp-block-button__link:hover { color: var(--am-pink); background: transparent; }
.am-mega-cards { display: flex; flex-direction: column; gap: 16px; }
.am-mega-cards .am-mega-card { display: grid; grid-template-columns: 132px minmax(0, 1fr); column-gap: 16px; row-gap: 6px; align-items: start; padding: 16px; border-radius: 24px; }
.am-mega-cards .am-mega-card .wp-block-image { grid-row: 1 / span 4; margin: 0; }
.am-mega-cards .am-mega-card .wp-block-image img { aspect-ratio: 1; border-radius: 16px; }
.am-mega-cards .am-mega-card__title { font-size: 14px; line-height: 17px; font-weight: 600; }
.am-mega-cards .am-mega-card__text { font-size: 13px; line-height: 16px; letter-spacing: 0; color: var(--am-nav); }
.am-mega-cards .am-mega-card .wp-block-buttons { margin-top: 10px; }

/* Derniers articles */
.am-mega-posts .wp-block-buttons { justify-content: flex-start; }
.am-mega-posts { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.am-mega-post { display: grid; grid-template-columns: 102px minmax(0, 1fr); gap: 16px; align-items: start; text-decoration: none; }
.am-nav .am-mega > .wp-block-navigation__submenu-container .am-mega-post:hover { text-decoration: none; }
.am-mega-post__thumb { display: block; width: 102px; height: 102px; border-radius: 16px; overflow: hidden; background: #d9d9d9; }
.am-mega-post__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-mega-post__body { display: flex; flex-direction: column; gap: 6px; }
.am-mega-post__title { font-size: 14px; line-height: 17px; font-weight: 600; color: var(--wp--preset--color--bluck); }
.am-mega-post:hover .am-mega-post__title { color: var(--am-blue); text-decoration: underline; }
.am-mega-post__text { font-size: 13px; line-height: 16px; font-weight: 500; color: var(--am-nav); }
.am-mega-posts .am-btn .wp-block-button__link { height: 48px; padding: 8px 8px 8px 24px; font-size: 16px; line-height: 24px; letter-spacing: 1.25px; font-weight: 500; }
.am-mega-posts .am-btn .wp-block-button__link::after { width: 32px; height: 32px; background-size: 16px; }

.am-header__cta .am-btn .wp-block-button__link { height: 56px; box-sizing: border-box; }
@media (max-width: 1439px) { .am-header .am-header__cta { display: none; } .am-header { padding: 16px; } .am-header__bar { padding: 16px 20px; border-radius: 20px; } }

/* ---- Menu mobile (AW-79) : fenêtre plein écran du burger, sous 600 px --------------------------------------------
 * Deux niveaux : rubriques en accordéon (une seule ouverte, assets/js/mobile-menu.js), puis liens et contenus riches
 * empilés. En-tête (logo + fermer) et bouton Contact fixes ; seule la liste défile. Le logo et le Contact sont
 * injectés par inc/mega-menu.php (amiltone_mobile_menu_chrome). */
.am-nav__logo, .am-nav__footer { display: none; }
@media (max-width: 1439px) {
	.am-nav .wp-block-navigation__responsive-container-open { box-sizing: border-box; width: 44px; height: 44px; padding: 10px; border-radius: 22px; color: var(--am-nav); }
	.am-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 0; background: #fff; color: var(--am-nav); }
	.am-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close { max-width: none; width: 100%; height: 100%; }
	.am-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto minmax(0, 1fr) auto; height: 100%; margin: 0; padding: 0; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__logo { display: block; grid-area: 1 / 1; padding: 16px 0 16px 20px; align-self: center; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__logo img { display: block; width: 100px; height: 20px; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-close { position: static; grid-area: 1 / 2; align-self: center; box-sizing: border-box; width: 44px; height: 44px; margin: 0 16px 0 0; padding: 10px; border-radius: 22px; background: var(--am-pale); color: var(--am-nav); }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content { grid-area: 2 / 1 / 3 / 3; overflow-y: auto; overscroll-behavior: contain; padding: 0 20px; border-top: 1px solid #ebebeb; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__footer { display: flex; grid-area: 3 / 1 / 4 / 3; justify-content: center; padding: 24px 20px 32px; background: #fff; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__footer .wp-block-buttons { margin: 0; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__footer .am-btn .wp-block-button__link { height: 48px; padding: 8px 8px 8px 24px; font-size: 16px; line-height: 24px; letter-spacing: 1.25px; font-weight: 500; }
	.am-nav.wp-block-navigation .is-menu-open .am-nav__footer .am-btn .wp-block-button__link::after { width: 32px; height: 32px; background-size: 16px; }

	/* Niveau 0 : une ligne par rubrique, chevron à droite */
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container { display: flex; flex-direction: column; align-items: stretch; gap: 0; width: 100%; padding: 8px 0 0; font-size: 16px; line-height: 20px; letter-spacing: 0.75px; font-weight: 600; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { position: relative; display: block; width: 100%; border-bottom: 1px solid #ebebeb; background: #fff; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content { display: block; padding: 18px 44px 18px 0; border-radius: 0; color: var(--am-nav); }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-submenu__toggle { position: absolute; inset: 0 0 auto 0; display: block; width: 100%; height: 56px; margin: 0; padding: 0; border: 0; background: url("../figma/nav-chev.svg") right center / 24px no-repeat; transition: none; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item.am-open > .wp-block-navigation-submenu__toggle { transform: none; background-image: url("../figma/nav-chev-up.svg"); }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-icon svg { display: none; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item.am-open > .wp-block-navigation-item__content,
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .current-menu-item > .wp-block-navigation-item__content { text-decoration: underline; text-underline-position: from-font; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content:focus-visible,
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible,
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-toggle:focus-visible { outline: 2px solid var(--am-pink); outline-offset: 2px; border-radius: 4px; }

	/* Niveau 1 : panneau replié tant que la rubrique n’est pas ouverte (si le script est actif) */
	.am-nav.am-accordion.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:not(.am-open) > .wp-block-navigation__submenu-container { display: none; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation__submenu-container {
		position: static; display: flex; flex-direction: column; align-items: stretch; gap: 16px; width: 100%; min-width: 0; height: auto; padding: 0 0 24px; margin: 0; text-align: left;
		opacity: 1; visibility: visible; overflow: visible; border: 0; border-radius: 0; background: none; box-shadow: none; color: var(--am-nav); font-weight: 500;
	}
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { align-items: flex-start; margin: 0; padding: 0; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { display: block; padding: 8px 0; width: auto; font-size: 14px; line-height: 16px; letter-spacing: 0.75px; font-weight: 500; color: #757575; text-decoration: none; }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content[href]:hover { color: var(--am-pink); }
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .current-menu-item > .wp-block-navigation-item__content { color: var(--am-nav); }

	/* Solutions : trois groupes titrés (liens toujours visibles) */
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col { display: flex; flex-direction: column; align-items: stretch; gap: 16px; order: 1; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col:nth-last-child(2) { order: 2; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col:last-child { order: 4; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col > .wp-block-navigation-submenu__toggle { display: none; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col > .wp-block-navigation-item__content { font-size: 16px; line-height: 24px; letter-spacing: 0.25px; font-weight: 500; color: var(--am-nav); }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__col > .wp-block-navigation__submenu-container { position: static; display: flex; flex-direction: column; align-items: stretch; gap: 0; width: auto; padding: 0; margin: 0; opacity: 1; visibility: visible; overflow: visible; border: 0; background: none; box-shadow: none; }

	/* Contenus riches : encart Solutions, derniers articles, livres blancs, empilés */
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container > .am-mega__extra.wp-block-navigation-item { display: block; }
	/* L'encart Solutions (livre blanc) n'existe pas dans la maquette mobile (Figma 15134:327) : affiché sur ordinateur seulement. */
	.am-nav.wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container > .am-mega__extra--solutions.wp-block-navigation-item { display: none; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-card, .am-nav.wp-block-navigation .is-menu-open .am-mega-cards .am-mega-card { gap: 6px; padding: 16px; background: var(--am-pale); border-radius: 12px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-card .wp-block-image img { aspect-ratio: 2 / 1; border-radius: 6px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-card__title { font-size: 14px; line-height: 16px; letter-spacing: 0.75px; font-weight: 600; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-card__text { font-size: 12px; line-height: normal; letter-spacing: 0; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-cards { gap: 16px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-cards .am-mega-card { grid-template-columns: 96px minmax(0, 1fr); }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-cards .am-mega-card .wp-block-image img { aspect-ratio: 1; border-radius: 6px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-cards .am-mega-card__title { font-size: 14px; line-height: 16px; font-weight: 600; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-cards .am-mega-card__text { font-size: 13px; line-height: normal; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-posts { gap: 16px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-post__thumb { border-radius: 6px; flex: 0 0 auto; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-post__title { font-size: 14px; line-height: normal; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-post__text { font-size: 13px; line-height: normal; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega-posts .am-btn .wp-block-button__link { color: #fff; }

	/* Accompagnement IA (AW-144) : en-tête (titre, texte, bouton) puis cinq groupes titrés, titres non cliquables */
	.am-nav.wp-block-navigation .is-menu-open .am-mega__extra--ia .am-mega-card { gap: 6px; padding: 0 0 8px; background: none; border-radius: 0; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__extra--ia .am-mega-card__title { font-size: 16px; line-height: 24px; letter-spacing: 0.25px; font-weight: 600; color: var(--am-nav); }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__extra--ia .am-mega-card__text { font-size: 14px; line-height: 20px; color: #757575; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega__extra--ia .wp-block-buttons { margin-top: 10px; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega--ia .am-mega__col > .wp-block-navigation-item__content { pointer-events: none; }
	.am-nav.wp-block-navigation .is-menu-open .am-mega--ia .am-mega__sub > .wp-block-navigation-item__content { padding-left: 16px; }
}
/* Accueil et pages « héro » : l'en-tête flotte sur la carte du héro (maquette), quel que soit le gabarit dès que la page commence par un héro */
:is(.home, .page-template-page-landing) .wp-site-blocks > header,
.wp-site-blocks:where(:has(> .am-main > .am-hero:first-child, > .am-main > .am-content:first-child > .am-hero:first-child)) > header { position: absolute; inset: 0 0 auto; z-index: 10; }

/* ---- Boutons : variantes de la maquette ----------------------------------- */
.am-btn--dark .wp-block-button__link { background: var(--wp--preset--color--bluck); color: #fff; height: 56px; box-sizing: border-box; padding: 8px 8px 8px 24px; }
.am-btn--dark .wp-block-button__link::after { width: 40px; height: 40px; background: #fff url("../figma/arrow-up-right.svg") center / 24px no-repeat; }
.am-btn--dark .wp-block-button__link:hover { background: var(--am-pink); color: #fff; }
.am-btn--md .wp-block-button__link { padding: 12px 16px 12px 24px; }
.am-btn--md .wp-block-button__link::after { width: 32px; height: 32px; }
.am-btn--arrow-right .wp-block-button__link::after { background-image: url("../figma/arrow-right-line.svg"); }
.am-btn--outline-dark .wp-block-button__link { background: transparent; color: var(--wp--preset--color--bluck); border: 1px solid var(--wp--preset--color--bluck); height: 56px; box-sizing: border-box; padding: 11px 15px 11px 24px; }
.am-btn--outline-dark .wp-block-button__link::after { background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 24px no-repeat; }
.am-btn--outline-dark .wp-block-button__link:hover { background: var(--wp--preset--color--bluck); color: #fff; }
.am-btn--outline-dark .wp-block-button__link:hover::after { background-color: #fff; background-image: url("../figma/arrow-up-right.svg"); }
.am-btn--invert .wp-block-button__link { background: #fff; color: var(--wp--preset--color--bluck); }
.am-btn--invert .wp-block-button__link::after { background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 24px no-repeat; }
.am-btn--invert .wp-block-button__link:hover { background: var(--am-lilac); color: var(--wp--preset--color--bluck); }

/* ---- Titres de section et accordéons communs ------------------------------- */
.am-section { color: var(--wp--preset--color--bluck); }
.am-section :is(h2, h3) { color: var(--wp--preset--color--bluck); }
.am-subtitle { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-accordions { display: flex; flex-direction: column; gap: 10px; }
.am-accordions .wp-block-details { margin: 0; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-accordions .wp-block-details summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; list-style: none; cursor: pointer; font-size: 24px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-accordions .wp-block-details summary::-webkit-details-marker { display: none; }
.am-accordions .wp-block-details summary::after { content: ""; flex: 0 0 auto; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/icon-add.svg") center / 24px no-repeat; }
.am-accordions .wp-block-details[open] summary::after { background-image: url("../figma/icon-remove.svg"); }
.am-accordions .wp-block-details summary:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 4px; }
.am-accordions .wp-block-details > :not(summary) { margin-block: 24px 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-accordions .wp-block-details > .wp-block-buttons { margin-block-start: 24px; }

/* ---- Héro ---------------------------------------------------------------- */
.am-hero { background: #fff; padding: 16px; }
.am-hero__card { display: flex; align-items: flex-end; box-sizing: border-box; min-height: 865px; padding: 232px 48px 64px; border-radius: 30px; background: linear-gradient(118.79deg, #faf8ff 0%, #d6dbf8 101.15%); }
.am-hero__cols { flex: 1 1 auto; display: flex; flex-wrap: nowrap; align-items: center; gap: 48px; }
.am-hero__cols > .wp-block-column:first-child { flex: 1 1 0; min-width: 0; }
.am-hero__cols > .wp-block-column:last-child { flex: 0 0 374px; align-self: center; }
.am-hero h1 { max-width: 890px; font-size: 60px; line-height: 75px; letter-spacing: -0.5px; font-weight: 600; color: var(--wp--preset--color--bluck); margin-bottom: 48px; }
.am-hero__text { max-width: 659px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); margin-bottom: 48px; }
.am-hero__visual { width: 374px; max-width: 100%; }
.am-hero__visual img { display: block; width: 100%; height: auto; }
@media (max-width: 1000px) {
	.am-hero__card { min-height: 0; padding: 160px 32px 48px; }
	.am-hero__cols { flex-direction: column; align-items: flex-start; }
	.am-hero__cols > .wp-block-column:last-child { flex: 0 0 auto; align-self: center; }
	.am-hero h1 { font-size: clamp(36px, 8vw, 60px); line-height: 1.25; }
	.am-hero__visual { width: min(374px, 80vw); }
}
@media (max-width: 640px) { .am-hero__card { padding: 112px 20px 32px; border-radius: 20px; } }

/* ---- Logos clients (défilement horizontal continu, sans JS) -------------------- */
.am-logos { padding-block: 96px; padding-inline: 0; overflow: hidden; }
.am-logos__track { display: flex; align-items: center; flex-wrap: nowrap; width: max-content; animation: am-logos-scroll 40s linear infinite; }
.am-logos .am-logos__track figure { flex: 0 0 auto; margin: 0 163.6px 0 0; }
.am-logos img { display: block; width: 125px; height: 68px; object-fit: contain; }
/* SNCF et HCL : images avec marges internes, recadrées. Le logo SEB (sans marge) reste entier. */
.am-logos__track figure:nth-child(3) img, .am-logos__track figure:nth-child(6) img,
.am-logos__track figure:nth-child(13) img, .am-logos__track figure:nth-child(16) img { object-fit: cover; }
.am-logos:hover .am-logos__track { animation-play-state: paused; }
@keyframes am-logos-scroll { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .am-logos { overflow-x: auto; } .am-logos__dup { display: none; } .am-logos__track { width: auto; } }
@media (max-width: 1100px) { .am-logos { padding-block: 48px; } .am-logos .am-logos__track figure { margin-right: 80px; } }

/* ---- Enjeux (intro collante + accordéon) ----------------------------------- */
.am-enjeux { padding: 80px var(--am-pad); }
.am-enjeux__layout { display: flex; align-items: flex-start; gap: 32px; max-width: 1312px; margin-inline: auto; }
.am-enjeux__intro { flex: 0 0 482px; position: sticky; top: 24px; display: flex; flex-direction: column; gap: 24px; }
.am-enjeux__layout > .am-accordions { flex: 1 1 0; min-width: 0; }
@media (max-width: 900px) { .am-enjeux { padding-block: 48px; } .am-enjeux__layout { flex-direction: column; } .am-enjeux__intro { position: static; flex-basis: auto; } .am-enjeux__layout > .am-accordions { width: 100%; } .am-accordions .wp-block-details { padding: 24px; } .am-accordions .wp-block-details summary { font-size: 20px; } }

/* ---- Modes d'accompagnement ---------------------------------------------- */
.am-accompagnements { padding: 80px 16px; }
.am-accompagnements__box { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; gap: 48px; padding: 64px 48px; background: var(--am-sky); border-radius: 30px; }
.am-accompagnements__intro { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 24px; padding-inline: 120px; text-align: center; }
.am-accompagnements__lead { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-cols-3 { position: relative; z-index: 1; display: flex; flex-wrap: nowrap; gap: 32px; align-items: stretch; width: 100%; margin: 0; }
.am-cols-3 > .wp-block-column { flex: 1 1 0; min-width: 0; display: flex; }
.am-acc-deco { position: absolute; margin: 0; pointer-events: none; }
.am-acc-deco img { display: block; max-width: none; }
.am-acc-deco--left { left: -83px; top: -51px; width: 233px; }
.am-acc-deco--right { right: -204px; top: 385px; width: 299px; }
.am-card { position: relative; flex: 1 1 auto; display: flex; flex-direction: column; align-items: center; gap: 24px; padding: 32px; box-sizing: border-box; background: #fff; border-radius: 30px; text-align: center; }
.am-card::before { content: ""; flex: 0 0 auto; align-self: flex-end; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; }
.am-card--center { justify-content: center; }
.am-card__logo img { display: block; height: 56px; width: auto; max-width: none; }
.am-card h3 { font-size: 24px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; }
.am-card h3 a { text-decoration: none; color: inherit; }
.am-card h3 a::after { content: ""; position: absolute; inset: 0; }
.am-card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-card h3 + p { margin-top: -8px; }
@media (max-width: 900px) { .am-accompagnements__box { padding: 40px 20px; } .am-accompagnements__intro { padding-inline: 0; } .am-cols-3 { flex-direction: column; } .am-acc-deco--right { display: none; } }

/* ---- Expertises --------------------------------------------------------- */
.am-expertises { padding: 80px var(--am-pad); }
.am-expertises__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 32px; max-width: 1312px; margin: 0 auto 60px; }
.am-expertises__intro { max-width: 652px; display: flex; flex-direction: column; gap: 16px; }
.am-xgrid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: minmax(257.5px, auto); gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-xcard { position: relative; grid-column: span 2; display: flex; flex-direction: column; justify-content: space-between; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; }
.am-xcard--wide { grid-column: span 3; }
.am-xcard__top { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.am-xcard__icon { margin: 0; }
.am-xcard__icon img { display: block; width: 56px; height: 56px; max-width: none; }
.am-xcard h3 { font-size: 24px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; }
.am-xcard h3 a { text-decoration: none; color: inherit; }
.am-xcard h3 a::after { content: ""; position: absolute; inset: 0; border-radius: 30px; }
.am-xcard h3 a:focus-visible { outline: 3px solid var(--am-pink); outline-offset: -3px; }
.am-xcard p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 1000px) { .am-expertises__head { flex-direction: column; } .am-xgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .am-xcard, .am-xcard--wide { grid-column: span 1; } }
@media (max-width: 640px) { .am-expertises { padding-block: 48px; } .am-xgrid { grid-template-columns: 1fr; } .am-xcard { padding: 24px; } }

/* ---- Réalisations (carrousel) -------------------------------------------- */
.am-realisations-section { padding: 80px 16px; }
.am-realisations__box { display: flex; flex-direction: column; gap: 24px; padding: 64px 48px; background: var(--am-grey); border-radius: 30px; }
.am-section-heading { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 24px 60px; margin: 0 0 24px; }
.am-section-heading h2 { flex: 1 1 0; min-width: 0; }
.am-slider__controls { display: flex; justify-content: flex-end; gap: 8px; }
.am-slider__btn { box-sizing: border-box; width: 48px; height: 48px; padding: 0; border: 1px solid var(--am-blue); border-radius: 50%; background: transparent center / 24px no-repeat; cursor: pointer; }
.am-slider__btn--prev { background-image: url("../figma/icon-arrow-left.svg"); }
.am-slider__btn--next { background-color: var(--am-blue); background-image: url("../figma/icon-arrow-right.svg"); }
/* État posé par carousel.js : bleue si l'on peut encore avancer dans ce sens, blanche en butée. */
.am-slider__btn { transition: background-color 0.2s ease; }
.am-slider__btn--prev[aria-disabled="false"] { background-color: var(--am-blue); background-image: url("../figma/icon-arrow-left-white.svg"); }
.am-slider__btn--next[aria-disabled="false"] { background-color: var(--am-blue); background-image: url("../figma/icon-arrow-right.svg"); }
.am-slider__btn--prev[aria-disabled="true"] { background-color: #fff; background-image: url("../figma/icon-arrow-left.svg"); cursor: default; }
.am-slider__btn--next[aria-disabled="true"] { background-color: #fff; background-image: url("../figma/icon-arrow-right-blue.svg"); cursor: default; }
.am-slider__btn:not([aria-disabled="true"]):hover { opacity: 0.85; }
.am-slider__btn:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-slider .wp-block-post-template { display: flex; align-items: stretch; gap: 16px; margin: 0; padding: 0; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.am-slider .wp-block-post-template::-webkit-scrollbar { display: none; }
.am-slider .wp-block-post-template > li { position: relative; flex: 0 0 var(--am-card-narrow, 332px); scroll-snap-align: start; display: flex; margin: 0; background: #fff; border-radius: 30px; }
.am-slider .wp-block-post-template > li:first-child { flex-basis: var(--am-card-wide, 616px); }
.am-rcard { flex: 1; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; padding: 32px; }
.am-rcard .wp-block-post-title { overflow-wrap: break-word; margin: 0; font-size: 32px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; }
.am-rcard .wp-block-post-title a { color: inherit; text-decoration: none; }
.am-rcard .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; z-index: 2; border-radius: 30px; }
.am-rcard .wp-block-post-excerpt { margin: 0; }
.am-rcard .wp-block-post-excerpt__excerpt { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-chip { display: flex; margin: 0; }
.am-chip :is(a, span) { display: inline-block; padding: 6px 12px; background: var(--am-pink); border-radius: 16px; font-size: 14px; line-height: 20px; font-weight: 600; letter-spacing: 0.1px; color: #fff; text-decoration: none; }
/* Toutes les cartes ont la même hauteur (la plus haute) : l'image occupe l'espace restant, 309 px au minimum. */
.am-rcard .wp-block-post-featured-image { position: relative; align-self: stretch; flex: 1 0 309px; margin: 0; overflow: hidden; border-radius: 16px; }
/* Carte active (carousel.js, écrans > 1000 px) : la grande place passe à la carte suivante / précédente au clic.
   Fluidité (AW-104) : la piste est déplacée par transform (--am-shift, posé par carousel.js) avec la même durée et la même
   courbe que l'élargissement des cartes, donc un seul mouvement ; le contenu d'une carte garde tout de suite sa largeur
   finale (la carte est seulement rognée pendant le mouvement) : le texte ne se recoupe plus à chaque image. */
.am-slider { --am-card-narrow: 332px; --am-card-wide: 616px; }
.am-slider.is-stepped .wp-block-post-template { scroll-snap-type: none; overflow-x: clip; }
.am-slider.is-stepped .wp-block-post-template > li { overflow: hidden; contain: layout style; transform: translateX(calc(-1 * var(--am-shift, 0px))); transition: flex-basis 0.6s cubic-bezier(0.22, 1, 0.36, 1), transform 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
.am-slider.is-stepped .wp-block-post-template > li:first-child { flex-basis: var(--am-card-narrow); }
.am-slider.is-stepped .wp-block-post-template > li.is-active { flex-basis: var(--am-card-wide); }
.am-slider.is-stepped .wp-block-post-template > li > .am-rcard { flex: 0 0 auto; box-sizing: border-box; width: var(--am-card-narrow); }
.am-slider.is-stepped .wp-block-post-template > li.is-active > .am-rcard { width: var(--am-card-wide); }
/* Mesure de la hauteur maximale (carousel.js) : toutes les cartes en largeur étroite, le temps d'une lecture. */
.am-slider.is-stepped.is-measuring .wp-block-post-template > li > .am-rcard, .am-slider.is-stepped.is-measuring .wp-block-post-template > li.is-active > .am-rcard { width: var(--am-card-narrow); }
@media (prefers-reduced-motion: reduce) {
	.am-slider.is-stepped .wp-block-post-template > li { transition: none; }
}
.am-rcard .wp-block-post-featured-image img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 1000px) { .am-realisations__box { padding: 40px 24px; } .am-slider .wp-block-post-template > li, .am-slider .wp-block-post-template > li:first-child { flex-basis: min(420px, 80%); } }
@media (max-width: 640px) { .am-realisations-section { padding-block: 48px; } .am-rcard { padding: 24px; } .am-rcard .wp-block-post-title { font-size: 22px; } }
/* Section plus compacte pour tenir dans un écran (AW-113) : textes réduits d'un cran, marges et image resserrées (bureau et tablette ; le mobile est réglé ci-dessus). */
@media (min-width: 641px) {
	.am-realisations-section { padding-block: 56px; }
	.am-realisations__box { gap: 16px; padding-block: 32px; }
	.am-realisations__box .am-section-heading { margin-bottom: 0; }
	.am-realisations__box .am-section-heading h2 { font-size: var(--wp--preset--font-size--x-large); line-height: 1.25; }
	.am-rcard { gap: 16px; padding: 24px; }
	.am-rcard .wp-block-post-title { font-size: 24px; line-height: 1.25; }
	.am-rcard .wp-block-post-excerpt__excerpt { font-size: 16px; line-height: 22px; letter-spacing: 0.1px; }
	.am-rcard .wp-block-post-featured-image { flex-basis: 200px; }
}

/* ---- Vivre Amiltone / certifications / agences / chiffres -------------------- */
.am-vivre { padding: 80px var(--am-pad); }
.am-bento { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); grid-template-rows: repeat(5, 1fr); gap: 8px; min-height: 752px; max-width: 1312px; margin-inline: auto; }
.am-bento__cell { box-sizing: border-box; border-radius: 30px; background: var(--am-grey); overflow: hidden; }
.am-bento__vivre { grid-column: 1 / span 3; grid-row: 1 / span 3; display: flex; align-items: center; gap: 64px; padding: 32px 48px; background: var(--am-pale); }
.am-bento__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.am-bento__text p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-bento__illu { flex: 0 0 258px; margin: 0; }
.am-bento__illu img { display: block; width: 258px; height: auto; max-width: none; }
.am-bento__certif { grid-column: 4 / span 2; grid-row: 1 / span 2; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-end; gap: 0; padding: 32px; }
.am-bento__certif p { margin-bottom: 32px; }
.am-bento__certif > :not(.wp-block-buttons) { align-self: stretch; }
.am-bento__certif h3, .am-bento__agences h3 { margin-bottom: 24px; font-size: 32px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; }
.am-bento__certif p, .am-bento__agences p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-bento__agences { grid-column: 4 / span 2; grid-row: 3 / span 3; display: flex; flex-direction: column; }
.am-bento__map { position: relative; flex: 1 1 0; min-height: 0; margin: 0; }
.am-bento__map img { position: absolute; inset: 16px; width: calc(100% - 32px); height: calc(100% - 32px); max-width: none; object-fit: contain; object-position: right center; }
.am-bento__agences-text { padding: 0 32px 32px; }
.am-bento__stats { grid-column: 1 / span 3; grid-row: 4 / span 2; display: flex; align-items: center; justify-content: center; gap: 56px; padding: 32px; }
.am-stat { display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.am-stat__icon { margin: 0 0 6px; }
.am-stat__icon img { display: block; width: auto; height: 52px; max-width: none; }
.am-stat__value { font-size: 48px; line-height: 75px; font-weight: 600; letter-spacing: -0.5px; color: var(--am-pink); }
.am-stat__label { font-size: 23px; line-height: 28px; font-weight: 700; letter-spacing: 0.25px; white-space: nowrap; }
@media (max-width: 1100px) {
	.am-bento { display: flex; flex-direction: column; min-height: 0; }
	.am-bento__vivre { flex-direction: column; align-items: flex-start; padding: 32px 24px; }
	.am-bento__illu { align-self: center; flex-basis: auto; }
	.am-bento__certif { align-items: flex-start; }
	.am-bento__map { min-height: 280px; justify-content: center; }
	.am-bento__stats { flex-wrap: wrap; gap: 24px 40px; }
}
@media (max-width: 640px) { .am-vivre { padding-block: 48px; } .am-stat__value { font-size: 40px; line-height: 1.3; } .am-stat__label { font-size: 18px; white-space: normal; } }

/* ---- Témoignages ------------------------------------------------------------ */
.am-testimonials { padding: 120px 0 120px var(--am-pad); }
.am-testimonials__box { display: flex; flex-direction: column; gap: 48px; }
.am-testimonials .am-section-heading { align-items: center; margin: 0; padding-right: var(--am-pad); }
.am-slider__track { display: flex; gap: 80px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.am-slider__track::-webkit-scrollbar { display: none; }
.am-tslide { flex: 0 0 min(979px, calc(100vw - 2 * var(--am-pad))); scroll-snap-align: start; display: flex; flex-direction: column; gap: 32px; padding-block: 32px; box-sizing: border-box; }
.am-tslide__body { display: flex; flex-direction: column; gap: 10px; }
.am-tslide__quote { margin: 0 0 2px; }
.am-tslide__quote img { display: block; width: 40px; height: 40px; max-width: none; }
.am-tslide h3 { font-size: 32px; line-height: 1.2; font-weight: 600; letter-spacing: 0.25px; color: var(--am-pink); }
.am-tslide__body p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-tslide__author { display: flex; align-items: center; gap: 16px; }
.am-tslide__avatar { flex: 0 0 auto; margin: 0; }
.am-section .am-tslide__avatar img { display: block; width: 78px; height: 78px; max-width: none; border-radius: 50%; object-fit: cover; object-position: 50% 25%; }
.am-tslide__who { display: flex; flex-direction: column; gap: 8px; width: 255px; max-width: 100%; }
.am-tslide__name { font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; }
.am-tslide__role { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
@media (max-width: 900px) { .am-testimonials { padding-block: 64px; } .am-tslide h3 { font-size: 24px; } }

/* ---- Appel à l'action contact --------------------------------------------- */
.am-cta-section { padding: 80px 60px; }
.am-cta { display: flex; align-items: stretch; gap: 16px; }
.am-cta__text { position: relative; flex: 1 1 0; min-width: 0; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, linear-gradient(120.54deg, #faf8ff 0%, #d6dbf8 101.15%); }
.am-cta__text h2 { max-width: 754px; }
.am-cta__text p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-cta__text .wp-block-buttons { margin-top: 32px; }
.am-cta__visual { position: relative; flex: 0 0 486px; margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-cta__visual img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; border-radius: 30px; object-fit: cover; }
@media (max-width: 1000px) { .am-cta-section { padding: 48px 16px; } .am-cta { flex-direction: column; } .am-cta__text { flex: 0 0 auto; } .am-cta__visual { flex: 0 0 320px; } }

/* ---- FAQ -------------------------------------------------------------------- */
.am-faq { padding: 80px var(--am-pad); }
.am-faq__layout { display: flex; align-items: flex-start; gap: 48px; max-width: 1312px; margin-inline: auto; }
.am-faq__layout > h2 { flex: 1 1 0; min-width: 300px; }
.am-faq__layout > .am-accordions { flex: 0 1 814px; min-width: 0; max-width: 100%; gap: 24px; }
.am-accordions--faq .wp-block-details { padding: 24px; }
.am-faq__q { display: flex; flex: 1 1 0; gap: 8px; min-width: 0; }
.am-faq__num { flex: 0 0 auto; color: var(--am-muted); }
.am-accordions--faq .wp-block-details > :not(summary) { margin-block-start: 12px; font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; }
@media (max-width: 1000px) { .am-faq { padding-block: 48px; } .am-faq__layout { flex-direction: column; } .am-faq__layout > .am-accordions { flex-basis: auto; width: 100%; } }
.am-faq__empty { margin: 0; padding: 24px; border: 1px dashed var(--am-muted); border-radius: 8px; color: var(--am-muted); }

/* ---- Pied de page ------------------------------------------------------------ */
.am-footer { margin: 16px 16px 16px; padding: 56px var(--am-pad); background: var(--am-grey); border-radius: 30px; color: var(--wp--preset--color--bluck); }
.am-footer__top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; gap: 32px; }
.am-footer__news { flex: 0 1 538px; display: flex; flex-direction: column; gap: 8px; }
.am-footer__news-title { font-size: 32px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-newsletter { display: flex; gap: 16px; align-items: stretch; }
.am-newsletter input { flex: 1 1 auto; min-width: 0; box-sizing: border-box; height: 56px; padding: 8px 24px; background: #fff; border: 1px solid var(--am-border-soft); border-radius: 999px; font: inherit; color: var(--wp--preset--color--bluck); }
.am-newsletter input::placeholder { color: #9e9e9e; opacity: 1; }
.am-newsletter button { display: inline-flex; align-items: center; gap: 12px; box-sizing: border-box; height: 56px; padding: 12px 16px 12px 24px; border: 0; border-radius: 999px; background: var(--am-blue); color: #fff; font-family: inherit; font-size: 18px; font-weight: 500; line-height: 24px; letter-spacing: 1.25px; }
.am-newsletter button::after { content: ""; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 50%; background: #fff url("../figma/arrow-dark.svg") center / 24px no-repeat; }
.am-newsletter button { cursor: pointer; }
.am-newsletter button:hover { background: var(--am-pink); }
.am-newsletter :disabled { opacity: .6; cursor: progress; }
.am-newsletter input:focus-visible, .am-newsletter button:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-newsletter input[aria-invalid="true"] { border-color: #b3261e; }
.am-social a:hover { background: #dfe4fa; }
.am-social a:focus-visible, .am-footer a:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-toast-region { position: fixed; inset: auto 16px 24px; z-index: 1000; display: flex; justify-content: center; pointer-events: none; }
.am-toast { margin: 0; max-width: 520px; padding: 16px 24px; border-radius: 12px; background: var(--am-blue); color: #fff; font-size: 16px; line-height: 24px; box-shadow: 0 8px 24px rgba(0, 0, 0, .2); animation: am-toast-in .25s ease-out; }
.am-toast--error { background: #b3261e; }
@keyframes am-toast-in { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-toast { animation: none; } }
.am-footer__consent { margin-top: 8px; font-size: 13px; line-height: normal; color: var(--wp--preset--color--bluck); }
.am-footer__social { display: flex; flex-direction: column; align-items: flex-end; gap: 24px; }
.am-footer__follow { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-blue); }
.am-social-row { display: flex; gap: 12px; margin: 10px 0 0; }
.am-social { margin: 0; }
.am-social a { display: block; padding: 12px; background: #ebeefc; border-radius: 4px; line-height: 0; }
.am-social img { width: 24px; height: 24px; max-width: none; }
.am-footer__cols { display: flex; flex-wrap: nowrap; gap: 24px; align-items: flex-start; }
.am-footer__col { flex: 1 1 0; min-width: 0; }
.am-footer__col:nth-child(1) { flex: 1.4 1 0; } .am-footer__col:nth-child(3) { flex: 0 0 197px; }
.am-footer__title { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-footer__title a { color: inherit; text-decoration: none; }
.am-footer__links { margin: 16px 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; }
.am-footer__links li { margin: 0; font-size: 14px; line-height: 16px; font-weight: 500; letter-spacing: 0.75px; }
.am-footer__links a { color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-footer__links a:hover, .am-footer__title a:hover { color: var(--am-pink); }
.am-footer__links + .am-footer__title, .am-footer__title + .am-footer__title { margin-top: 48px; }
.am-footer__deco { flex: 0 0 232px; }
.am-footer__deco img { width: 232px; height: 237px; max-width: none; }
.am-footer__ia .am-footer__links { display: grid; grid-auto-flow: column; grid-template-rows: repeat(4, auto); grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 24px; }
.am-footer__row2 { display: flex; align-items: flex-start; gap: 48px; }
.am-footer__accomp { flex: 0 0 239px; } .am-footer__accomp .am-footer__title { white-space: nowrap; }
.am-footer__ia { flex: 1 1 0; min-width: 0; }
.am-footer__bottom { display: flex; gap: 48px; }
.am-footer__bottom p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-footer__bottom a { color: var(--wp--preset--color--bluck); text-decoration: none; }
@media (max-width: 1000px) { .am-footer__row2 { flex-direction: column; gap: 32px; } .am-footer__accomp .am-footer__title { white-space: normal; } .am-footer__accomp, .am-footer__ia { flex: none; width: 100%; } }
@media (max-width: 1100px) { .am-footer__ia .am-footer__links { grid-template-rows: repeat(4, auto); grid-template-columns: repeat(3, minmax(0, 1fr)); } .am-footer__cols { flex-wrap: wrap; } .am-footer__col, .am-footer__col:nth-child(1), .am-footer__col:nth-child(3) { flex: 1 1 200px; } .am-footer__deco { display: none; } }
@media (max-width: 640px) { .am-footer { padding: 40px 20px; border-radius: 20px; } .am-footer__ia .am-footer__links { grid-auto-flow: row; grid-template-rows: none; grid-template-columns: 1fr; } .am-footer__social { align-items: flex-start; } .am-newsletter { flex-direction: column; } .am-newsletter button { justify-content: center; } .am-footer__bottom { flex-wrap: wrap; gap: 16px 32px; } }

/* ---- Pages d'expertise (héro de page, maquette « Nos expertises ») --------------- */
.am-hero--page { padding-bottom: 80px; }
.am-hero--page .am-hero__card { position: relative; overflow: hidden; display: block; min-height: 800px; padding: 170px 48px 64px; background: linear-gradient(120.71deg, #faf8ff 0%, #d6dbf8 101.15%); }
.am-hero--page .am-hero__card::before { content: ""; position: absolute; left: 475px; top: 279px; width: 1305px; height: 1305px; background: url("../figma/hero-page-deco.svg") no-repeat 0 0 / 100% 100%; pointer-events: none; }
.am-hero-page__body { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 16px; padding-block: 80px; }
.am-hero__eyebrow { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); }
.am-hero-page__cols { display: flex; flex-wrap: nowrap; align-items: flex-start; gap: 32px; }
.am-hero-page__cols > .wp-block-column { flex: 1 1 0; min-width: 0; }
.am-hero-page__cols > .wp-block-column:first-child { display: flex; flex-direction: column; align-items: flex-start; gap: 80px; }
.am-hero--page h1 { max-width: none; margin: 0; }
.am-hero-page__cols > .wp-block-column:last-child p { max-width: none; margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-hero-page__cols > .wp-block-column:last-child p:last-child { margin-top: 24px; }
.am-hero-page__cols .wp-block-buttons { margin: 0; }
@media (max-width: 1000px) {
	.am-hero--page { padding-bottom: 16px; }
	.am-hero--page .am-hero__card { min-height: 0; padding: 140px 32px 48px; }
	.am-hero--page .am-hero__card::before { left: 40%; top: 45%; }
	.am-hero-page__body { padding-block: 32px; }
	.am-hero-page__cols { flex-direction: column; gap: 32px; }
	.am-hero-page__cols > .wp-block-column { flex: 0 0 auto; width: 100%; }
	.am-hero-page__cols > .wp-block-column:first-child { gap: 40px; }
}
@media (max-width: 640px) { .am-hero--page .am-hero__card { padding: 112px 20px 32px; border-radius: 20px; } .am-hero__eyebrow { font-size: 20px; } }

/* ---- Page d'une réalisation (AW-100, maquette « Solution - Nos réalisations ») ------------------------------- */
/* Héros à la couleur du projet (panneau « Réalisation » de l'éditeur, variable --am-real-color) ; visuel sur fond foncé. */
.am-hero--realisation { padding-bottom: 80px; }
.am-hero--realisation .am-hero__card { display: grid; grid-template-columns: minmax(0, 1fr) min(644px, 48%); align-items: center; gap: 48px; min-height: 800px; padding: 164px 24px 24px 48px; background: var(--am-real-color, #d6dbf8); }
.am-rhero__text { display: flex; flex-direction: column; gap: 16px; }
.am-hero--realisation .am-hero__eyebrow { margin: 0; color: var(--wp--preset--color--bluck); }
.am-hero--realisation h1 { max-width: none; margin: 0; }
.am-rhero__mission { margin: 0; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-hero--realisation.is-dark :is(h1, .am-hero__eyebrow, .am-rhero__mission) { color: #fff; }
.am-rhero__media { position: relative; align-self: stretch; min-height: 400px; margin: 0; overflow: hidden; border-radius: 30px; background: color-mix(in srgb, var(--am-real-color, #d6dbf8) 52%, #000); }
.am-rhero__media img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 1000px) {
	.am-hero--realisation { padding-bottom: 16px; }
	.am-hero--realisation .am-hero__card { grid-template-columns: minmax(0, 1fr); gap: 32px; min-height: 0; padding: 140px 32px 32px; }
	.am-rhero__media { min-height: 0; aspect-ratio: 644 / 612; }
}
@media (max-width: 640px) { .am-hero--realisation .am-hero__card { padding: 112px 16px 16px; border-radius: 20px; } .am-rhero__media { border-radius: 20px; } .am-rhero__mission { font-size: 20px; } }

/* L'essentiel : chapô, « Voir le site », informations clés et compétences */
.am-rinfos { padding: 80px var(--am-pad) 64px; }
.am-rinfos__grid { display: grid; grid-template-columns: minmax(0, 1fr) 482px; gap: 48px; max-width: 1312px; margin-inline: auto; }
.am-rinfos__intro { grid-column: 1; max-width: 770px; margin: 0; font-size: 24px; line-height: 32px; font-weight: 500; letter-spacing: 0.25px; }
.am-rinfos__cta { grid-column: 2; justify-self: end; align-self: start; margin: 0; }
.am-rinfos__facts { grid-column: 1; display: flex; flex-wrap: wrap; gap: 24px 48px; align-self: start; margin: 0; }
.am-rinfos__facts dt, .am-section .am-rinfos__label { margin: 0; font-size: 16px; line-height: 22px; font-weight: 400; letter-spacing: 0.25px; color: var(--am-muted); }
.am-rinfos__facts dd { margin: 8px 0 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-rinfos__skills { grid-column: 2; }
.am-rinfos__skills ul { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin: 16px 0 0; padding: 0; list-style: none; }
.am-rinfos__skills li { display: inline-flex; align-items: center; gap: 12px; padding: 8px 16px 8px 8px; border-radius: 8px; background: #fff; box-shadow: 0 2px 8px rgba(11, 19, 43, 0.15); font-size: 20px; line-height: 24px; font-weight: 500; letter-spacing: 0.15px; }
.am-rinfos__skills img { width: 32px; height: 32px; }
.am-rinfos__grid > :only-child, .am-rinfos__grid > .am-rinfos__facts:last-child { grid-column: 1 / -1; }
@media (max-width: 1000px) {
	.am-rinfos { padding-block: 48px; }
	.am-rinfos__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.am-rinfos__grid > * { grid-column: 1; }
	.am-rinfos__cta { justify-self: start; }
	.am-rinfos__intro { font-size: 20px; line-height: 28px; }
}

/* Contenu : rubriques en deux colonnes, visuels pleine largeur, enjeu et organisation */
.am-rcontent > * { margin-block: 0; }
.am-rrow { display: grid; grid-template-columns: 466px minmax(0, 1fr); gap: 16px 32px; box-sizing: border-box; padding: 80px max(var(--am-pad), calc((100% - 1312px) / 2)); color: var(--wp--preset--color--bluck); }
.am-rcontent .am-rrow__label { margin: 0; font-size: 20px; line-height: 24px; font-weight: 500; letter-spacing: 0.15px; }
.am-rrow__body { display: flex; flex-direction: column; gap: 16px; }
.am-rrow__body > * { margin: 0; }
.am-rrow__body > :is(p, ul, ol), .am-rrow__item p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-rrow__body :is(ul, ol) { padding-left: 1.2em; }
.am-rrow__body > .am-rrow__item + .am-rrow__item { margin-top: 16px; }
.am-rrow__item > * { margin: 0; }
.am-rcontent .am-rrow__item h3 { font-size: 24px; line-height: 28px; font-weight: 600; letter-spacing: 0.15px; }
.am-rrow__head { display: flex; flex-direction: column; gap: 16px; }
.am-rcontent .am-rrow__title { margin: 0; font-size: 32px; line-height: 40px; font-weight: 600; letter-spacing: 0.25px; }
.am-rquote.wp-block-quote { position: relative; margin: 16px 0 0; padding: 0 0 0 64px; border: 0; }
.am-rquote::before { content: ""; position: absolute; left: 0; top: 2px; width: 40px; height: 40px; background: url("../figma/article-quote.svg") center / 40px no-repeat; }
.am-rquote p { margin: 0; font-size: 24px; line-height: 36px; font-weight: 500; font-style: normal; letter-spacing: 0.25px; }
.am-rquote cite { display: flex; align-items: center; gap: 12px; margin-top: 16px; font-size: 14px; line-height: 21px; font-style: normal; }
.am-rquote cite::before { content: ""; flex: 0 0 32px; height: 2px; background: var(--am-blue); }
.am-rcontent > .am-rvisuel, .am-rcontent > .am-rgalerie { margin: 80px 16px; }
.am-rcontent > .am-rvisuel + .am-rvisuel, .am-rcontent > .am-rgalerie + .am-rvisuel, .am-rcontent > .am-rvisuel + .am-rgalerie { margin-top: -64px; }
.am-rgalerie { display: flex; flex-direction: column; gap: 16px; }
.am-rgalerie__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.am-rgalerie :is(.am-rgalerie__main, .am-rgalerie__half) { margin: 0; }
.am-rcontent :is(.am-rvisuel, .am-rgalerie) img { display: block; width: 100%; height: auto; border-radius: 30px; background: color-mix(in srgb, var(--am-real-color, #d6dbf8) 52%, #000); }
.am-rcontent .am-cycle--rubrique .am-cycle__inner { gap: 56px; }
@media (max-width: 1000px) {
	.am-rrow { grid-template-columns: minmax(0, 1fr); padding-block: 48px; }
	.am-rcontent > .am-rvisuel, .am-rcontent > .am-rgalerie { margin-block: 48px; }
	.am-rcontent .am-rrow__title { font-size: 28px; line-height: 36px; }
}
@media (max-width: 640px) {
	.am-rrow__body > :is(p, ul, ol), .am-rrow__item p { font-size: 18px; line-height: 26px; }
	.am-rquote.wp-block-quote { padding-left: 48px; }
	.am-rquote::before { width: 32px; height: 32px; background-size: 32px; }
	.am-rquote p { font-size: 20px; line-height: 30px; }
	.am-rgalerie__row { grid-template-columns: minmax(0, 1fr); }
	.am-rcontent :is(.am-rvisuel, .am-rgalerie) img { border-radius: 20px; }
}
/* Réalisations importées de l'ancien site (titres, paragraphes, listes, images sans rubriques) : colonne de lecture. */
.am-rcontent > :not(.am-rrow, .am-rvisuel, .am-rgalerie, .am-cycle) { box-sizing: content-box; max-width: 814px; margin-inline: auto; padding-inline: var(--am-pad); color: var(--wp--preset--color--bluck); }
.am-rcontent > :not(.am-rrow, .am-rvisuel, .am-rgalerie, .am-cycle) + :not(.am-rrow, .am-rvisuel, .am-rgalerie, .am-cycle) { margin-top: 24px; }
.am-rcontent > :is(p, ul, ol) { font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
.am-rcontent > h2 { margin-top: 64px; font-size: 32px; line-height: 40px; }
.am-rcontent > h3 { margin-top: 40px; font-size: 24px; line-height: 32px; }
.am-rcontent > :first-child:not(.am-rrow, .am-rvisuel, .am-rgalerie, .am-cycle) { margin-top: 80px; }
.am-rcontent > :last-child:not(.am-rrow, .am-rvisuel, .am-rgalerie, .am-cycle) { margin-bottom: 80px; }
.am-rcontent > .wp-block-image img { border-radius: 30px; }

/* Ce que nous développons : quatre tuiles */
.am-besoin { padding-block: 80px; }
.am-besoin__intro { display: flex; flex-direction: column; align-items: center; gap: 32px; max-width: 1312px; margin: 0 auto 64px; padding-inline: 120px; text-align: center; box-sizing: border-box; }
.am-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-tile { display: flex; flex-direction: column; gap: 32px; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; }
.am-tile h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-tile p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 1000px) { .am-besoin { padding-block: 48px; } .am-besoin__intro { padding-inline: 0; margin-bottom: 40px; } .am-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .am-tiles { grid-template-columns: 1fr; } .am-tile { padding: 24px; gap: 16px; } }

/* Encadrés bleu ciel : variantes (texte étroit, décor bas, grilles de cartes blanches) */
.am-accompagnements__intro--narrow { padding-inline: 0; }
.am-accompagnements__intro--narrow .am-accompagnements__lead { max-width: 705px; }
.am-accompagnements__box { gap: 64px; }
.am-acc-deco--bottom { top: auto; bottom: -50px; }
.am-pillars { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.am-pillar { display: flex; flex-direction: column; justify-content: space-between; gap: 24px; min-height: 244px; padding: 32px; box-sizing: border-box; background: #fff; border-radius: 30px; }
.am-pillar:nth-child(n+3) { min-height: 268px; }
.am-pillar__top { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.am-pillar__icon { margin: 0; }
.am-pillar__icon img { display: block; width: 56px; height: 56px; max-width: none; }
.am-pillar h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-pillar p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-reflexes { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; width: 100%; }
.am-reflex { display: flex; flex-direction: column; gap: 32px; padding: 32px; box-sizing: border-box; background: #fff; border-radius: 30px; }
.am-reflex h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-reflex p { margin-top: auto; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 900px) { .am-pillars, .am-reflexes { grid-template-columns: 1fr; } .am-pillar, .am-pillar:nth-child(n+3) { min-height: 0; } .am-accompagnements__box { gap: 40px; } }

/* Citation de page (texte centré en deux tons) */
.am-statement { padding: 120px calc(var(--am-pad) + 120px); text-align: center; }
.am-statement p { font-size: 32px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); }
.am-statement__lead { color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) { .am-statement { padding: 64px var(--am-pad); } }
@media (max-width: 640px) { .am-statement p { font-size: 24px; } }
/* Phrase clé révélée au défilement (assets/js/reveal.js) : tout le texte part en gris, chaque mot passe en noir. */
.am-reveal.is-revealing p, .am-reveal.is-revealing .am-centered__question, .am-reveal.is-revealing .am-statement__lead { color: var(--am-muted); }
.am-reveal__word { transition: color 0.3s ease; }
.am-reveal__word.is-lit { color: var(--wp--preset--color--bluck); }

/* Accordéon « Pourquoi choisir » : intro à moitié de largeur */
.am-enjeux--half .am-enjeux__intro { flex-basis: calc(50% - 16px); }
.am-enjeux--half .am-accordions .wp-block-details > .wp-block-buttons { margin-block-start: 24px; }
@media (max-width: 900px) { .am-enjeux--half .am-enjeux__intro { flex-basis: auto; } }

/* Qualité / DevOps : deux colonnes de cartes */
.am-duo-section { padding-block: 80px; }
.am-duo { display: grid; grid-template-columns: 3fr 2fr; gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-duo__col { display: grid; gap: 8px; }
.am-duo__col--main { grid-template-rows: 540fr 248fr; }
.am-duo__col--side { grid-template-rows: 357fr 431fr; }
.am-duo__cell { box-sizing: border-box; border-radius: 30px; background: var(--am-grey); }
.am-duo__quality { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 32px; padding: 64px 48px; background: var(--am-pale); }
.am-duo__quality h2 { margin-bottom: -8px; }
.am-duo__text { display: flex; flex-direction: column; gap: 24px; }
.am-duo__text p, .am-duo__delivery p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-duo__delivery { display: flex; flex-direction: column; justify-content: center; gap: 16px; padding: 32px; }
.am-duo__quote { display: flex; flex-direction: column; justify-content: center; padding: 64px 48px; text-align: center; }
.am-duo__quote p { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); }
.am-duo__devops { display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; gap: 64px; padding: 32px; }
.am-duo__icon { margin: 0; }
.am-duo__icon img { display: block; width: 96px; height: 96px; max-width: none; }
.am-duo__devops-body { align-self: stretch; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.am-duo__devops h3 { font-size: 32px; line-height: normal; letter-spacing: 0.25px; }
@media (max-width: 900px) { .am-duo-section { padding-block: 48px; } .am-duo { grid-template-columns: 1fr; } .am-duo__col--main, .am-duo__col--side { grid-template-rows: none; } .am-duo__quality, .am-duo__quote { padding: 32px 24px; } }

/* Notre façon de faire : cinq étapes */
.am-method { padding-block: 80px; }
.am-method > h2 { max-width: 1312px; margin: 0 auto 40px; color: var(--am-ink-dark); }
.am-steps { display: flex; gap: 12px; max-width: 1312px; margin-inline: auto; }
.am-step { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; gap: 80px; min-height: 376px; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; }
.am-step--wide { flex: 0 0 374px; }
/* Cartes repliées par défaut ; la carte survolée se déplie (374 px à 1440, largeur de la carte ouverte de la maquette : la base de 0 laisse le padding hors du partage, d’où 1.96 et non 1.68).
   Réservé aux écrans larges avec survol : en tablette/mobile/tactile tous les textes restent visibles. */
@media (hover: hover) and (min-width: 1101px) {
	.am-step { flex: 1 1 0; overflow: hidden; transition: flex-grow 0.5s cubic-bezier(0.22, 1, 0.36, 1); }
	.am-step__text p { width: 310px; opacity: 0; transform: translateY(12px); transition: opacity 0.25s ease, transform 0.25s ease; }
	.am-step:hover { flex-grow: 1.96; }
	.am-step:hover .am-step__text p { opacity: 1; transform: none; transition-delay: 0.2s; transition-duration: 0.4s; }
}
@media (prefers-reduced-motion: reduce) {
	.am-step, .am-step__text p { transition: none; }
}
.am-step__text { align-self: stretch; display: flex; flex-direction: column; gap: 16px; }
.am-step h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-step p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-step .am-step__num { font-size: 96px; line-height: normal; font-weight: 600; letter-spacing: 0; color: #aeb5c6; white-space: nowrap; }
@media (max-width: 1100px) { .am-steps { flex-wrap: wrap; } .am-step, .am-step--wide { flex: 1 1 calc(33% - 12px); min-height: 280px; } .am-step .am-step__num { font-size: 72px; } }
@media (max-width: 640px) { .am-method { padding-block: 48px; } .am-step, .am-step--wide { flex-basis: 100%; min-height: 0; gap: 24px; } .am-step .am-step__num { font-size: 44px; } }

/* ---- Page « Nos réalisations » (AW-99) --------------------------------------------------------------------- */
/* Héro : carte de 648 px (sur-titre, titre, bouton) */
.am-hero--realisations .am-hero__card { min-height: 648px; }
.am-hero--realisations .am-hero-page__body { align-items: flex-start; }
.am-hero--realisations h1 + .wp-block-buttons { margin-top: 64px; }
@media (max-width: 1000px) { .am-hero--realisations .am-hero__card { min-height: 0; } .am-hero--realisations h1 + .wp-block-buttons { margin-top: 32px; } }

/* Recherche et filtres : menus déroulants à cases à cocher (bouton « Appliquer », sans JavaScript) */
.am-rlist-section { padding-top: 0; padding-bottom: 80px; }
.am-rlist { max-width: 1312px; margin-inline: auto; }
.am-rlist__form { display: flex; flex-direction: column; gap: 16px; margin-bottom: 32px; }
.am-rlist__form .am-news-search { max-width: 519px; }
.am-rfilters { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 16px; }
.am-rfilter { position: relative; }
.am-rfilter__toggle { display: flex; align-items: center; gap: 8px; box-sizing: border-box; min-height: 42px; padding: 8px 12px; border: 1px solid var(--am-border); border-radius: 20px; background: #fff; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); list-style: none; cursor: pointer; }
.am-rfilter__toggle::-webkit-details-marker { display: none; }
.am-rfilter__toggle::before { content: ""; flex: 0 0 24px; width: 24px; height: 24px; background: url("../figma/filter-2-line.svg") center / 24px no-repeat; }
.am-rfilter__toggle::after { content: ""; flex: 0 0 24px; width: 24px; height: 24px; background: url("../figma/chev-down.svg") center / 20px no-repeat; transition: transform 0.2s ease; }
.am-rfilter[open] .am-rfilter__toggle::after { transform: rotate(180deg); }
.am-rfilter.is-active .am-rfilter__toggle { border-color: var(--am-blue); background: #ebeefc; }
.am-rfilter__toggle:hover { border-color: var(--am-blue); }
.am-rfilter__toggle:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-rfilter__count { font-weight: 600; }
.am-rfilter__panel { position: absolute; top: calc(100% + 8px); left: 0; z-index: 20; display: flex; flex-direction: column; gap: 4px; min-width: 100%; box-sizing: border-box; margin: 0; padding: 16px; border: 1px solid var(--am-border); border-radius: 20px; background: #fff; box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-rfilter__option { display: flex; align-items: center; gap: 12px; min-height: 44px; font-size: 16px; line-height: 22px; color: var(--wp--preset--color--bluck); white-space: nowrap; cursor: pointer; }
.am-rfilter__option input { flex: 0 0 20px; width: 20px; height: 20px; margin: 0; accent-color: var(--am-blue); }
.am-rfilter__apply { align-self: flex-start; margin-top: 8px; padding: 10px 20px; border: 0; border-radius: 999px; background: var(--wp--preset--color--bluck); color: #fff; font: inherit; font-size: 16px; letter-spacing: 1.25px; cursor: pointer; }
.am-rfilter__apply:hover { background: var(--am-pink); }
.am-rfilter__apply:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-rfilter__reset { align-self: center; font-size: 16px; color: var(--am-blue); }

/* Grille : cartes de 427 px (visuel de 328 px, nom, début du chapô, expertises) */
.am-news__grid.am-rlist__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.am-real { position: relative; display: flex; flex-direction: column; gap: 24px; height: 100%; box-sizing: border-box; padding: 8px 8px 24px; border-radius: 30px; background: #fff; box-shadow: 0 3px 6px rgba(33, 33, 33, 0.1); transition: box-shadow 0.2s ease; }
.am-real:hover, .am-real:has(a:focus-visible) { box-shadow: 0 8px 16px rgba(33, 33, 33, 0.15); }
.am-real:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-real__media { position: relative; height: 328px; overflow: hidden; border-radius: 22px; background: var(--am-grey); }
.am-real__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.am-real__body { display: flex; flex-direction: column; flex: 1 1 auto; gap: 8px; padding: 0 16px; }
.am-real__title { margin: 0; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-real__title a { color: inherit; text-decoration: none; }
.am-real__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-real__title a:focus-visible { outline: none; }
.am-real__excerpt { display: -webkit-box; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-real__tags { display: flex; flex-wrap: wrap; gap: 8px; margin: auto 0 0; padding: 16px 0 0; list-style: none; }
.am-real__tags li { padding: 6px 12px; border-radius: 999px; background: var(--am-pink); font-size: 14px; line-height: 20px; font-weight: 600; color: #fff; }
@media (prefers-reduced-motion: reduce) { .am-real, .am-rfilter__toggle::after { transition: none; } }
@media (max-width: 1100px) { .am-news__grid.am-rlist__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
	.am-news__grid.am-rlist__grid { grid-template-columns: minmax(0, 1fr); }
	.am-real__media { height: 220px; }
	.am-real__title { font-size: 21px; }
	.am-real__excerpt { font-size: 18px; }
	.am-rfilter, .am-rfilter__toggle { width: 100%; }
	.am-rfilter__panel { position: static; margin-top: 8px; box-shadow: none; }
	.am-rfilter__option { white-space: normal; }
}

/* Poursuivre selon votre besoin (encadré sombre) */
.am-next { padding: 16px 16px 0; }
.am-next__box { display: flex; flex-direction: column; gap: 64px; padding: 80px; background: var(--wp--preset--color--bluck); border-radius: 30px; }
.am-next__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; padding-block: 16px; }
.am-next__head h2 { flex: 1 1 280px; min-width: 0; color: #fff; }
.am-next .am-next__head .wp-block-buttons { margin: 0; }
.am-next__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.am-next__card { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; padding: 32px; box-sizing: border-box; background: #fff; border-radius: 30px; }
.am-next__body { display: flex; flex-direction: column; gap: 16px; }
.am-next__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-next__card p:not(.am-chip) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 1100px) { .am-next__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } .am-next__box { padding: 48px 32px; gap: 40px; } }
@media (max-width: 640px) { .am-next { padding-top: 0; } .am-next__cards { grid-template-columns: 1fr; } .am-next__box { padding: 32px 20px; border-radius: 20px; } .am-next__card { padding: 24px; } }
/* Carte cliquable quand l'étiquette est un lien (entrée de maillage) : toute la carte mène à la page, bouton flèche au survol */
.am-next__card:has(.am-chip a) { transition: box-shadow 0.2s ease; }
.am-next__card:has(.am-chip a) h3 { padding-right: 56px; }
.am-next__card .am-chip a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-next__card .am-chip a:focus-visible { outline: none; }
.am-next__card:has(.am-chip a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-next__card:has(.am-chip a)::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-next__card:has(.am-chip a):hover, .am-next__card:has(.am-chip a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-next__card:has(.am-chip a):hover::before, .am-next__card:has(.am-chip a:focus-visible)::before { opacity: 1; transform: none; }
@media (hover: none) { .am-next__card:has(.am-chip a)::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-next__card:has(.am-chip a), .am-next__card:has(.am-chip a)::before { transition: none; } }
@media (max-width: 640px) { .am-next__card:has(.am-chip a)::before { top: 24px; right: 24px; } }

/* Solution sur mesure : intro scindée, grille de solutions, frise, briques d'expertise, points de vigilance */
.am-besoin--split { padding-block: 80px; }
.am-split { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; margin-inline: auto; }
.am-split__intro { flex: 0 0 482px; display: flex; flex-direction: column; gap: 56px; }
.am-tiles--duo { flex: 1 1 0; min-width: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: none; margin: 0; }
.am-tiles--duo .am-tile { min-height: 300px; }
.am-statement--compact { padding-block: 80px; }
.am-statement--compact p { max-width: 944px; margin-inline: auto; }
.am-pillars--mixed { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.am-pillars--mixed .am-pillar { grid-column: span 2; }
.am-pillars--mixed .am-pillar:nth-child(-n+2) { grid-column: span 3; }

/* Frise en six étapes (l'ordre du DOM suit la numérotation, la grille reproduit la maquette) */
.am-frise-section .am-besoin__intro { margin-bottom: 80px; }
.am-frise { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-auto-rows: minmax(352px, auto); gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-frise__card { box-sizing: border-box; display: flex; align-items: center; gap: 32px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-frise__card--pale { background: var(--am-pale); }
.am-frise__card--1 { grid-area: 1 / 1 / 2 / 4; flex-direction: column; align-items: stretch; justify-content: flex-end; gap: 16px; }
.am-frise__card--2 { grid-area: 1 / 4 / 2 / 6; }
.am-frise__card--3 { grid-area: 1 / 6 / 2 / 9; }
.am-frise__card--4 { grid-area: 2 / 7 / 3 / 9; }
.am-frise__card--5 { grid-area: 2 / 1 / 3 / 3; }
.am-frise__card--6 { grid-area: 2 / 3 / 3 / 7; }
.am-frise__body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.am-frise__card--2 .am-frise__body { align-self: stretch; justify-content: space-between; }
.am-frise__text { display: flex; flex-direction: column; gap: 16px; }
.am-frise__text h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-frise__text p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: #000; }
.am-frise .am-frise__num { font-size: 96px; line-height: normal; font-weight: 600; letter-spacing: 0; color: #aeb5c6; white-space: nowrap; }
.am-frise__foot { display: flex; align-items: flex-end; gap: 96px; }
.am-frise__img { margin: 0; }
.am-frise__img img { display: block; width: 100%; height: auto; }
.am-frise__card--1 .am-frise__img { flex: 1 1 0; }
.am-frise__card--3 .am-frise__img { flex: 0 0 125px; }
.am-frise__card--6 .am-frise__img { flex: 1 1 0; }
.am-frise__card--6 .am-frise__img img { width: auto; max-width: 100%; max-height: 288px; margin-inline: auto; }

/* Citation de page avec texte et bouton centrés */
.am-centered { display: flex; flex-direction: column; align-items: center; gap: 64px; padding: 120px calc(var(--am-pad) + 120px); text-align: center; }
.am-centered h2 { color: var(--am-ink-dark); }
.am-centered__text { display: flex; flex-direction: column; }
.am-centered p, .am-statement .am-statement__body { margin: 0; font-size: 20px; line-height: 24px; font-weight: 400; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-centered .am-statement__lead { font-weight: 600; }
.am-statement.am-centered > p:first-child { font-size: 32px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); max-width: 1066px; }
.am-centered .wp-block-buttons { margin: 0; }

/* Briques d'expertise : encadré pâle et liens-cartes */
.am-bricks { padding: 80px 16px; }
.am-bricks__box { display: flex; flex-direction: column; gap: 64px; padding: 80px 48px 64px; background: var(--am-pale); border-radius: 30px; }
.am-bricks__head { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 24px 48px; }
.am-bricks__intro { display: flex; flex-direction: column; gap: 24px; flex: 0 1 648px; }
.am-bricks .wp-block-buttons { margin: 0; }
.am-xlinks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.am-xlink { margin: 0; }
.am-xlink a { box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; padding: 12px 24px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 30px; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-xlink a::after { content: ""; flex: 0 0 auto; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid currentColor; border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; }
.am-xlink a:hover { background: #fff; border-color: var(--am-blue); box-shadow: 0 3px 6px rgba(33, 33, 33, 0.1); }
.am-xlink a:hover::after { border-color: var(--am-blue); }
.am-xlink a:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }

/* Ce que nous cherchons à sécuriser */
.am-secure { padding-block: 96px 0; }
.am-secure__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-secure__intro { grid-column: span 3; display: flex; flex-direction: column; gap: 32px; padding: 32px; }
.am-secure__card { grid-column: span 2; box-sizing: border-box; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; min-height: 300px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-secure__card--wide { grid-column: span 3; }
.am-secure__body { display: flex; flex-direction: column; gap: 16px; }
.am-secure__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-secure__card p:not(.am-chip) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: #000; }
.am-secure__intro p strong { font-weight: 700; }

@media (max-width: 1100px) {
	.am-centered { padding: 64px var(--am-pad); }
	.am-split { flex-direction: column; gap: 40px; }
	.am-split__intro { flex-basis: auto; gap: 24px; }
	.am-tiles--duo { width: 100%; }
}
@media (max-width: 1000px) {
	.am-besoin--split { padding-block: 48px; }
	.am-pillars--mixed { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-pillars--mixed .am-pillar, .am-pillars--mixed .am-pillar:nth-child(-n+2) { grid-column: auto; }
	.am-pillars--mixed .am-pillar:nth-child(5) { grid-column: span 2; }
	.am-frise-section .am-besoin__intro { margin-bottom: 40px; }
	.am-frise { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
	.am-frise__card--1, .am-frise__card--2, .am-frise__card--3, .am-frise__card--4, .am-frise__card--5, .am-frise__card--6 { grid-area: auto; }
	.am-frise__card--1, .am-frise__card--6 { grid-column: span 2; }
	.am-frise__card--2, .am-frise__card--3, .am-frise__card--4, .am-frise__card--5 { align-items: stretch; }
	.am-frise__card--3 .am-frise__img { flex-basis: 100px; }
	.am-bricks { padding-block: 48px; }
	.am-bricks__box { padding: 48px 24px; gap: 40px; }
	.am-xlinks { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-secure { padding-top: 48px; }
	.am-secure__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-secure__intro, .am-secure__card--wide { grid-column: span 2; }
	.am-secure__card { grid-column: span 1; min-height: 0; }
}
@media (max-width: 640px) {
	.am-tiles--duo { grid-template-columns: 1fr; }
	.am-tiles--duo .am-tile { min-height: 0; }
	.am-pillars--mixed { grid-template-columns: 1fr; }
	.am-pillars--mixed .am-pillar:nth-child(5) { grid-column: auto; }
	.am-frise { grid-template-columns: 1fr; }
	.am-frise__card--1, .am-frise__card--6 { grid-column: auto; }
	.am-frise__card { padding: 24px; gap: 16px; }
	.am-frise .am-frise__num { font-size: 44px; }
	.am-frise__foot { gap: 24px; }
	.am-frise__card--3 .am-frise__img { flex-basis: 96px; }
	.am-frise__card--6 .am-frise__img { flex: 0 0 120px; }
	.am-xlinks { grid-template-columns: 1fr; }
	.am-xlink a { font-size: 20px; }
	.am-secure__grid { grid-template-columns: 1fr; }
	.am-secure__intro, .am-secure__card, .am-secure__card--wide { grid-column: auto; }
	.am-secure__intro, .am-secure__card { padding: 24px; }
	.am-statement.am-centered > p:first-child { font-size: 24px; }
}

/* Renfort d'expertise : frise en cinq temps (DOM dans l'ordre 1 → 5, la grille place 05 avant 04 comme la maquette) */
.am-frise--five { max-width: 1306px; gap: 16px; grid-template-rows: repeat(2, minmax(348.5px, auto)); }
.am-frise--five .am-frise__text p { color: inherit; }
/* Comme dans Figma, le texte de 01 et le numéro de 02 peuvent déborder sans agrandir la ligne (base 0px). */
.am-frise--five .am-frise__card--1 > .am-frise__text { flex: 1 1 0px; min-height: 0; justify-content: flex-end; }
.am-frise--five .am-frise__card--2 { grid-area: 1 / 4 / 2 / 6; flex-direction: column; align-items: stretch; }
.am-frise--five .am-frise__card--2 .am-frise__num { flex: 1 1 0px; min-height: 0; display: flex; align-items: flex-end; }
.am-frise--five .am-frise__card--3 { grid-area: 1 / 6 / 2 / 9; flex-direction: column; align-items: stretch; gap: 16px; }
.am-frise--five .am-frise__card--3 .am-frise__foot { flex: 1 1 auto; align-items: flex-start; justify-content: space-between; gap: 16px; }
.am-frise--five .am-frise__card--3 .am-frise__img { flex: 0 0 110px; }
.am-frise--five .am-frise__card--4 { grid-area: 2 / 5 / 3 / 9; }
.am-frise--five .am-frise__card--5 { grid-area: 2 / 1 / 3 / 5; }
/* Hauteur figée comme dans Figma : le texte déborde légèrement sous le numéro sans agrandir la ligne. */
.am-frise--five .am-frise__card--5 .am-frise__body { flex: 0 0 auto; height: 284.5px; }
.am-frise--five .am-frise__card--5 h3 { white-space: nowrap; }
.am-frise--five .am-frise__card--5 .am-frise__text p { width: min-content; min-width: 100%; }
.am-frise--five .am-frise__card--5 .am-frise__img { flex: 1 1 0; min-width: 0; }

/* Connecter vos outils (AW-75) : frise en cinq temps sans numéros, 05 et 04 en ligne 1, 01-02-03 en ligne 2 (DOM 1 → 5) */
.am-frise--connecter { max-width: 1306px; gap: 16px; grid-template-rows: repeat(2, minmax(350px, auto)); }
.am-frise--connecter .am-frise__text p { color: inherit; }
.am-frise--connecter .am-frise__card { align-items: stretch; }
.am-frise--connecter .am-frise__card--1 { grid-area: 2 / 1 / 3 / 4; flex-direction: column; justify-content: space-between; gap: 16px; }
.am-frise--connecter .am-frise__card--2 { grid-area: 2 / 4 / 3 / 6; }
.am-frise--connecter .am-frise__card--3 { grid-area: 2 / 6 / 3 / 9; flex-direction: column; gap: 16px; }
.am-frise--connecter .am-frise__card--4 { grid-area: 1 / 6 / 2 / 9; }
.am-frise--connecter .am-frise__card--5 { grid-area: 1 / 1 / 2 / 6; }
.am-frise--connecter .am-frise__card--1 .am-frise__img { flex: none; width: 171px; }
.am-frise--connecter .am-frise__card--3 .am-frise__img { flex: 1 1 auto; display: flex; align-items: flex-end; justify-content: flex-end; }
.am-frise--connecter .am-frise__card--3 .am-frise__img img { width: 110px; }
.am-frise--connecter .am-frise__card--5 > .am-frise__text { flex: 0 0 368px; }
.am-frise--connecter .am-frise__card--5 > .am-frise__img { flex: 1 1 0; min-width: 0; align-self: center; }
.am-frise--connecter .am-frise__card--5 > .am-frise__img img { width: auto; max-width: 100%; max-height: 286px; margin-inline: auto; }
@media (max-width: 1100px) {
	.am-frise--connecter .am-frise__card--5 > .am-frise__text { flex: 1 1 0; }
	.am-frise--connecter .am-frise__card--5 > .am-frise__img { flex: 0 1 270px; }
}
@media (max-width: 1000px) {
	.am-frise--connecter { grid-template-rows: none; }
	.am-frise--connecter .am-frise__card--1, .am-frise--connecter .am-frise__card--2 { grid-area: auto; }
	.am-frise--connecter .am-frise__card--3, .am-frise--connecter .am-frise__card--4, .am-frise--connecter .am-frise__card--5 { grid-area: auto; grid-column: span 2; }
	.am-frise--connecter .am-frise__card--3 { flex-direction: row; }
	.am-frise--connecter .am-frise__card--3 > .am-frise__text { flex: 1 1 0; }
	.am-frise--connecter .am-frise__card--3 .am-frise__img { flex: 0 0 auto; }
}
@media (max-width: 640px) {
	.am-frise--connecter .am-frise__card--3, .am-frise--connecter .am-frise__card--4, .am-frise--connecter .am-frise__card--5 { grid-column: auto; }
	.am-frise--connecter .am-frise__card--5 { flex-direction: column; }
	.am-frise--connecter .am-frise__card--5 > .am-frise__text { flex: 0 0 auto; }
	.am-frise--connecter .am-frise__card--5 > .am-frise__img { flex: 0 0 auto; width: 180px; }
	.am-frise--connecter .am-frise__card--1 .am-frise__img { width: 140px; }
	.am-frise--connecter .am-frise__card--3 .am-frise__img img { width: 80px; }
}

/* Encadré bleu : grille de trois cartes et décors placés comme la maquette */
.am-accompagnements__box--experts .am-acc-deco--left { top: 42px; }
.am-accompagnements__box--experts .am-acc-deco--right { top: 478px; }
.am-pillars--trio { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.am-pillars--trio .am-pillar, .am-pillars--trio .am-pillar:nth-child(n+3) { justify-content: flex-start; min-height: 0; }

/* ---- Page Sécurité applicative ------------------------------------------- */
/* Processus : titre + chapô, cartes dépliées au survol (comportement de base des .am-step) */
.am-method--appsec .am-method__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1312px; margin: 0 auto 40px; }
.am-method--appsec .am-method__intro h2 { max-width: none; margin: 0; color: var(--wp--preset--color--bluck); }
.am-method--appsec .am-method__intro .am-subtitle { max-width: 689px; margin: 0; }
.am-method--appsec .am-steps { gap: 16px; }
@media (min-width: 1101px) { .am-method--appsec .am-step { min-height: 436px; } }
/* Continuous Security : quatre cartes autour de l'illustration à quatre anneaux */
.am-appsec { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(6, minmax(100px, auto)); gap: 16px; width: 100%; }
.am-appsec__ring { position: absolute; left: 50%; top: calc(50% + 1px); z-index: 0; width: 512px; height: 512px; margin: 0; transform: translate(-50%, -50%); }
.am-section .am-appsec__ring img { display: block; width: 100%; height: 100%; max-width: none; border-radius: 0; }
.am-appsec__card { position: relative; z-index: 1; box-sizing: border-box; display: flex; flex-direction: column; gap: 24px; padding: 32px; background: rgba(255, 255, 255, 0.8); border-radius: 30px; }
.am-appsec__card--top { grid-column: 3 / span 2; grid-row: 1 / span 2; }
.am-appsec__card--right { grid-column: 5 / span 2; grid-row: 3 / span 2; }
.am-appsec__card--bottom { grid-column: 3 / span 2; grid-row: 5 / span 2; }
.am-appsec__card--left { grid-column: 1 / span 2; grid-row: 3 / span 2; }
.am-appsec__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-appsec__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 1200px) {
	.am-appsec { display: flex; flex-direction: column; gap: 8px; height: auto; }
	.am-appsec__ring { position: static; order: -1; align-self: center; width: min(100%, 360px); height: auto; transform: none; margin-bottom: 16px; }
	.am-appsec__card { background: #fff; }
}
/* Équipe d'experts */
.am-team { padding: 80px 16px; }
.am-team__box { display: flex; flex-direction: column; gap: 64px; padding: 64px 48px; background: var(--am-pale); border-radius: 30px; }
.am-team__box h2 { margin: 0; }
.am-team__layout { display: flex; align-items: flex-start; gap: 54px; }
.am-team__visual { flex: 0 0 667px; box-sizing: border-box; margin: 0; padding: 32px; }
.am-team__illu { position: relative; width: 100%; aspect-ratio: 603 / 590; }
.am-section .am-team__illu figure { position: absolute; margin: 0; transition: opacity 0.3s ease, filter 0.3s ease, transform 0.3s ease; }
.am-section .am-team__illu img { display: block; width: 100%; height: 100%; max-width: none; border-radius: 0; }
.am-team__cercle { left: 13.46%; top: 5.33%; width: 86.73%; height: 90.51%; }
.am-team__perso--captain { left: 45.21%; top: 0.11%; width: 23.55%; height: 43.73%; }
.am-team__perso--securecoding { left: 0.11%; top: 28.48%; width: 51.74%; height: 47.97%; }
.am-team__perso--secops { left: 70.77%; top: 19.81%; width: 22.55%; height: 59.32%; }
.am-team__perso--daster { left: 40.11%; top: 40.3%; width: 32.01%; height: 60%; }
/* Survol d'une carte : le personnage correspondant est mis en avant, les autres s'estompent */
.am-team:not(.is-scroll) .am-team__layout:has(.am-team__card:hover) .am-team__perso, .am-team__layout[data-active] .am-team__perso { opacity: 0.35; filter: grayscale(0.6); }
.am-team:not(.is-scroll) .am-team__layout:has(.am-team__card--captain:hover) .am-team__perso--captain,
.am-team__layout[data-active="captain"] .am-team__perso--captain,
.am-team:not(.is-scroll) .am-team__layout:has(.am-team__card--securecoding:hover) .am-team__perso--securecoding,
.am-team__layout[data-active="securecoding"] .am-team__perso--securecoding,
.am-team:not(.is-scroll) .am-team__layout:has(.am-team__card--secops:hover) .am-team__perso--secops,
.am-team__layout[data-active="secops"] .am-team__perso--secops,
.am-team:not(.is-scroll) .am-team__layout:has(.am-team__card--daster:hover) .am-team__perso--daster,
.am-team__layout[data-active="daster"] .am-team__perso--daster { opacity: 1; filter: drop-shadow(0 0 10px rgba(206, 48, 137, 0.65)) drop-shadow(0 0 22px rgba(206, 48, 137, 0.35)); transform: scale(1.04); }
.am-team__card { transition: box-shadow 0.3s ease; }
.am-team:not(.is-scroll) .am-team__card:hover, .am-team__card.is-active { box-shadow: 0 0 0 2px #ce3089; }
/* Cartes révélées une à une (réservent leur place : pas de décalage de mise en page) */
.am-team__track { display: flex; flex-direction: column; gap: 16px; width: 100%; }
@media (min-width: 901px) { .am-team.is-staged .am-team__card { opacity: 0; transform: translateY(32px); transition: opacity 0.5s ease, transform 0.5s ease, box-shadow 0.3s ease; }
.am-team.is-staged .am-team__card.is-shown { opacity: 1; transform: none; } }
@media (min-width: 1101px) { .am-team__visual { position: sticky; top: 24px; } }
@media (prefers-reduced-motion: reduce) { .am-section .am-team__illu figure, .am-team__card { transition: none; } .am-team__layout .am-team__perso { transform: none !important; } }
.am-team__cards { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.am-team__card { box-sizing: border-box; display: flex; flex-direction: column; gap: 32px; width: 100%; padding: 32px; background: #fff; border-radius: 30px; }
.am-team__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-team__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-team__cards .wp-block-buttons { margin: 0; }
@media (max-width: 1100px) { .am-team__layout { flex-direction: column; align-items: stretch; gap: 24px; } .am-team__visual { flex-basis: auto; width: 100%; max-width: 480px; margin-inline: auto; padding: 0; } }
@media (min-width: 901px) and (max-width: 1100px) { .am-team__visual { position: sticky; top: 0; z-index: 2; width: min(100%, 34vh); padding: 8px 0; background: var(--am-pale); } }
@media (max-width: 900px) { .am-team { padding-block: 48px; } .am-team__box { gap: 40px; padding: 40px 20px; } .am-team__card { padding: 24px; gap: 16px; } }
/* Mobile : les textes défilent à l'horizontale (accroche au doigt), le personnage suit la carte visible */
@media (max-width: 900px) {
	.am-team__track { flex-direction: row; align-items: stretch; gap: 12px; margin-inline: -20px; padding: 4px 20px 12px; box-sizing: border-box; width: calc(100% + 40px); min-width: 0; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding-inline: 20px; overscroll-behavior-x: contain; scrollbar-width: none; }
	.am-team__track::-webkit-scrollbar { display: none; }
	.am-team__track:focus-visible { outline: 2px solid #ce3089; outline-offset: -2px; }
	.am-team__track .am-team__card { flex: 0 0 86%; width: auto; scroll-snap-align: start; }
	.am-team__visual { width: min(100%, 360px); }
}
/* Unités d'œuvre : grille de 6 colonnes sur 3 lignes, par famille de couleur */
.am-units { padding-block: 80px; }
.am-units__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(202px, auto)); grid-auto-flow: column; gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-unit { position: relative; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; gap: 16px; padding: 32px; background: #fff; border: 2px solid; border-radius: 30px; transition: background-color 0.2s ease; }
.am-unit--row2 { grid-row-start: 2; }
.am-unit--pink { border-color: #faadc1; }
.am-unit--blue { border-color: #afcff5; }
.am-unit--indigo { border-color: #afb8f2; }
.am-unit--gold { border-color: #e6ad24; border-width: 1px; }
.am-unit--pink:hover { background: #ffebee; }
.am-unit--blue:hover { background: #d6e8fa; }
.am-unit--indigo:hover { background: #d6dbf8; }
.am-unit--gold:hover { background: #ffecb3; }
.am-unit p { margin: 0; color: var(--wp--preset--color--bluck); }
.am-unit p.am-unit__code { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; }
.am-unit p.am-unit__label { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
/* Infobulle de chaque carte (survol) ; en tactile et en tablette elle devient un texte sous la carte */
.am-unit p.am-unit__tip { position: absolute; left: 24px; bottom: calc(100% - 28px); z-index: 2; box-sizing: border-box; width: 280px; padding: 16px; background: var(--am-grey); border-radius: 20px; box-shadow: 0 3px 6px rgba(33, 33, 33, 0.1); font-size: 20px; line-height: 24px; letter-spacing: 0.15px; opacity: 0; transform: translateY(4px); pointer-events: none; transition: opacity 0.2s ease, transform 0.2s ease; }
.am-unit:hover .am-unit__tip { opacity: 1; transform: none; }
.am-unit:nth-child(n+13) p.am-unit__tip { left: auto; right: 24px; }
@media (max-width: 1100px) {
	.am-units { padding-block: 48px; }
	.am-units__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: none; grid-auto-flow: row; }
	.am-unit--row2 { grid-row-start: auto; }
	.am-unit p.am-unit__tip, .am-unit:nth-child(n+13) p.am-unit__tip { position: static; width: auto; padding: 0; background: none; box-shadow: none; opacity: 1; transform: none; pointer-events: auto; font-size: 16px; line-height: 22px; }
}
@media (max-width: 640px) { .am-units__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; } .am-unit { padding: 20px; } }
/* Communauté AppSec POD */
.am-pod { padding-block: 80px; }
.am-pod__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-pod__intro { grid-column: span 3; align-self: start; display: flex; flex-direction: column; gap: 32px; padding: 32px; box-sizing: border-box; }
.am-pod__intro h2, .am-pod__intro p { margin: 0; }
.am-pod__visual { position: relative; grid-column: span 3; min-height: 290px; margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-pod__visual img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; border-radius: 30px; object-fit: cover; }
.am-pod__card { grid-column: span 2; box-sizing: border-box; display: flex; flex-direction: column; gap: 16px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-pod__card--wide { grid-column: span 4; }
.am-pod__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-pod__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 900px) { .am-pod { padding-block: 48px; } .am-pod__grid { grid-template-columns: 1fr; } .am-pod__intro, .am-pod__visual, .am-pod__card, .am-pod__card--wide { grid-column: auto; } .am-pod__intro { padding: 0; } .am-pod__card { padding: 24px; } }
/* Solutions préférées : chapô en deux tons, puis le bandeau de logos */
.am-solutions { display: flex; flex-direction: column; align-items: center; gap: 32px; padding: 80px var(--am-pad) 0; text-align: center; }
.am-solutions h2 { margin: 0; }
.am-section p.am-solutions__lead { max-width: 944px; margin: 0; font-size: 32px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); }
.am-solutions__strong { color: var(--wp--preset--color--bluck); }
.am-logos--compact { padding-block: 48px 80px; }
@media (max-width: 640px) { .am-solutions { padding-top: 48px; } .am-section p.am-solutions__lead { font-size: 24px; } }
/* Confiance : titre + bouton, trois chiffres */
.am-trust { padding-block: 80px; }
.am-trust__layout { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; margin-inline: auto; }
.am-trust__intro { flex: 0 0 482px; align-self: center; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.am-trust__intro h2, .am-trust__intro .wp-block-buttons { margin: 0; }
.am-trust__grid { flex: 0 1 766px; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.am-trust__stat { box-sizing: border-box; display: flex; flex-direction: column; gap: 32px; min-height: 219px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-trust__stat p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-trust__stat p.am-trust__value { font-size: 60px; line-height: 75px; font-weight: 600; letter-spacing: -0.5px; color: var(--am-pink); }
@media (max-width: 1000px) { .am-trust { padding-block: 48px; } .am-trust__layout { flex-direction: column; align-items: stretch; gap: 40px; } .am-trust__intro { flex-basis: auto; align-self: flex-start; } .am-trust__grid { flex-basis: auto; width: 100%; } }
@media (max-width: 640px) { .am-trust__grid { grid-template-columns: 1fr; } .am-trust__stat { min-height: 0; gap: 16px; padding: 24px; } .am-trust__stat p.am-trust__value { font-size: 40px; line-height: 60px; } }

.am-tiles--tall .am-tile { min-height: 300px; }
.am-tiles--duo.am-tiles--narrow { grid-template-columns: repeat(2, minmax(0, 375px)); }
@media (max-width: 1100px) { .am-tiles--duo.am-tiles--narrow { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.am-faq--md { padding-block: 64px; }
/* Titre centré dans un cadre de 86 px plus petit que ses deux lignes (107,4 px) dans la maquette. */
.am-faq--md .am-faq__layout > h2 { margin-top: -10.7px; }

/* Chromium chasse Gilroy ~0,4 % plus large que Figma : -0,05 px d’interlettrage sur les lignes pleines
   rétablit les retours à la ligne de la maquette (-0,1 px sur les titres). */
.am-section p.am-fit, .am-hero-page__cols > .wp-block-column:last-child p.am-fit { letter-spacing: 0.1px; }
.am-section h3.am-fit { letter-spacing: 0.15px; }

.am-centered .am-centered__question { max-width: 1066px; font-size: 32px; line-height: normal; letter-spacing: 0.25px; color: var(--am-muted); }

/* Encadré sombre avec motif en bas à gauche */
.am-next__box--deco { position: relative; overflow: hidden; }
.am-next__box--deco::before { content: ""; position: absolute; left: 0; bottom: 0; width: 633px; height: 516px; background: url("../figma/next-deco.svg") no-repeat 0 0 / 100% 100%; pointer-events: none; }
.am-next__box--deco > * { position: relative; z-index: 1; }

@media (max-width: 1000px) {
	.am-frise--five { grid-template-rows: none; }
	.am-frise--five .am-frise__card--2, .am-frise--five .am-frise__card--3 { grid-area: auto; }
	.am-frise--five .am-frise__card--4, .am-frise--five .am-frise__card--5 { grid-area: auto; grid-column: span 2; }
	.am-frise--five .am-frise__card--5 .am-frise__body { height: auto; }
	.am-frise--five .am-frise__card--5 .am-frise__img { flex: 0 1 270px; }
	.am-frise--five .am-frise__card--1 > .am-frise__text, .am-frise--five .am-frise__card--2 .am-frise__num { flex: 0 0 auto; }
	.am-pillars--trio { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-tiles--duo.am-tiles--narrow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-faq--md { padding-block: 48px; }
}
@media (max-width: 640px) {
	.am-frise--five .am-frise__card--4, .am-frise--five .am-frise__card--5 { grid-column: auto; }
	.am-frise--five .am-frise__card--5 { flex-direction: column; align-items: stretch; }
	.am-frise--five .am-frise__card--5 h3 { white-space: normal; }
	.am-frise--five .am-frise__card--5 .am-frise__text p { width: auto; }
	.am-frise--five .am-frise__card--5 .am-frise__img { flex: 0 0 auto; align-self: center; width: 180px; }
	.am-pillars--trio { grid-template-columns: 1fr; }
	.am-tiles--duo.am-tiles--narrow { grid-template-columns: 1fr; }
	.am-tiles--tall .am-tile { min-height: 0; }
	.am-centered .am-centered__question { font-size: 24px; }
	.am-next__box--deco::before { width: 316px; height: 258px; }
}

/* ---- Pages courantes, listings, fil d'Ariane --------------------------------- */
.am-pagehead { padding-block: 32px 16px; }
.am-prose { padding-block: 16px 64px; }
.am-listing { padding-block: 24px 64px; }
.am-listing .wp-block-post-template > li { margin: 0; }
.am-listing .wp-block-post-title { margin-block: 8px; font-size: 24px; line-height: 1.2; }
.am-listing .wp-block-post-title a { text-decoration: none; color: var(--am-blue); }
.am-listing .wp-block-post-featured-image img { border-radius: 8px; }
.am-tag { display: inline-block; margin: 0; padding: 4px 8px; background: var(--am-lilac); border-radius: 12px; font-size: 14px; line-height: 21px; font-weight: 500; letter-spacing: 0; color: #000; }
.am-tag a { color: inherit; text-decoration: none; }
.am-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; padding: 0; list-style: none; font-size: 14px; }
.am-breadcrumb li + li::before { content: "/"; margin-right: 8px; opacity: 0.5; }
.am-breadcrumb a { text-decoration: none; }

.am-prose .wp-block-image img { max-width: 100%; height: auto; border-radius: 8px; }
.am-prose .wp-block-table { overflow-x: auto; }
.am-prose .wp-block-table td, .am-prose .wp-block-table th { padding: 8px 12px; border: 1px solid currentColor; vertical-align: top; }
.am-prose .wp-block-code { overflow-x: auto; padding: 16px; border-radius: 8px; background: var(--am-lilac); font-size: 14px; }
.am-prose .wp-block-embed iframe { max-width: 100%; }

/* Contenu courant (pages, articles) : rythme vertical des blocs */
.am-prose :where(.wp-block-post-content) > * + * { margin-block-start: 1.25rem; }
.am-prose :where(h2, h3) { margin-block: 2rem 0.75rem; }

@media (max-width: 640px) {
	.am-btn .wp-block-button__link { white-space: normal; font-size: 16px; letter-spacing: 0.8px; }
	.am-section h2 { font-size: 28px; line-height: 1.25; }
	.am-photo { height: 340px; padding: 16px; }
	.am-photo__title { font-size: 24px; }
	.am-card h3, .am-tcard h3 { font-size: 24px; }
	.am-stat__value { font-size: 40px; line-height: 1.3; }
}

/* ---- Page Data ------------------------------------------------------------ */
/* Héros : boutons empilés, paragraphes espacés */
.am-buttons--stack { flex-direction: column; align-items: flex-start; gap: 24px; }
.am-hero-page__cols > .wp-block-column.am-hero-page__text--spaced p + p { margin-top: 24px; }

/* Encadrés texte + visuel (composant CTA) : variantes de fond, textes sans espacement, deux rangées empilées */
.am-cta-section--md { padding-inline: var(--am-pad); }
.am-cta__text--grey { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-grey); }
.am-cta__text--plain { background: var(--am-grey); }
.am-cta__text--pale { justify-content: center; background: var(--am-pale); }
.am-cta__copy { display: flex; flex-direction: column; }
.am-cta-section--stack { display: flex; flex-direction: column; gap: 16px; }
.am-cta__visual img[src$="visuel-a-venir.svg"] { background: #aeb5c6; }
.am-cta__quote { margin: 0; padding: 0; border: 0; }
.am-cta__quote p { font-style: italic; }
.am-cta__quote cite { display: block; margin-top: 24px; font-size: 20px; line-height: 24px; font-style: normal; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1000px) { .am-cta-section--md { padding-block: 48px; } }

/* Notre démarche : cartes qui se déroulent au survol, visuel fixe pendant le défilement */
.am-demarche { padding-block: 80px; }
.am-demarche > h2, .am-demarche__layout { max-width: 1312px; margin-inline: auto; }
.am-demarche > h2 { margin-bottom: 64px; }
.am-demarche__layout { display: flex; align-items: flex-start; gap: 16px; }
.am-demarche__cards { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.am-demarche__card { display: grid; grid-template-rows: auto 1fr; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; }
.am-demarche__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-demarche__text { min-height: 0; overflow: hidden; }
.am-demarche__text p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-demarche__text p:first-child { padding-top: 24px; }
.am-demarche__visual { position: sticky; top: 24px; flex: 1 1 0; min-width: 0; height: 648px; margin: 0; overflow: hidden; border-radius: 30px; background: #aeb5c6; }
.am-section .am-demarche__visual img { display: block; width: 100%; height: 100%; max-width: none; border-radius: 30px; object-fit: cover; }
/* Écrans larges avec survol : cartes repliées sur leur titre, la carte survolée se déplie. Ailleurs, tout est visible. */
@media (hover: hover) and (min-width: 1101px) {
	.am-demarche__card { grid-template-rows: auto 0fr; transition: grid-template-rows 0.4s cubic-bezier(0.22, 1, 0.36, 1), background-color 0.3s ease, box-shadow 0.3s ease; }
	.am-demarche__card:hover { grid-template-rows: auto 1fr; background: #fff; box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
}
@media (prefers-reduced-motion: reduce) {
	.am-demarche__card { transition: none; }
}
@media (max-width: 1100px) { .am-demarche__layout { flex-direction: column; } .am-demarche__cards { width: 100%; } .am-demarche__visual { position: static; flex: 0 0 auto; width: 100%; height: 400px; } }
@media (max-width: 640px) { .am-demarche { padding-block: 48px; } .am-demarche > h2 { margin-bottom: 40px; } .am-demarche__card { padding: 24px; } .am-demarche__card h3 { font-size: 20px; } .am-demarche__visual { height: 280px; } }

/* ---- Page « Qui sommes-nous » (maquette « À propos d'Amiltone », AW-90) ------------------ */
/* Héro : carte de 684 px (titre court, bouton sous le titre) */
.am-hero--about .am-hero__card { min-height: 684px; }
@media (max-width: 1000px) { .am-hero--about .am-hero__card { min-height: 0; } }

/* Quelques repères : quatre chiffres (2 × 2) et un encadré bleu ciel de 525 px sur deux lignes */
.am-reperes { padding-block: 80px; }
.am-reperes > h2 { max-width: 1312px; margin: 0 auto 64px; }
.am-reperes__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 525px; gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-reperes .am-reperes__grid > .am-figure { grid-column: auto; background: var(--am-grey); }
.am-reperes .am-reperes__grid > .am-figure:nth-child(2), .am-reperes .am-reperes__grid > .am-figure:nth-child(4) { background: var(--am-pale); }
.am-reperes .am-reperes__grid > .am-figure--feature { grid-column: 3; grid-row: 1 / span 2; margin-left: 8px; background: var(--am-sky); }
.am-figure--feature .am-figure__text { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; text-align: left; color: var(--wp--preset--color--bluck); }
.am-figure--feature .wp-block-buttons { margin: 18px 0 0; }
@media (max-width: 1100px) {
	.am-reperes__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-reperes .am-reperes__grid > .am-figure--feature { grid-column: 1 / -1; grid-row: auto; margin-left: 0; }
}
@media (max-width: 1000px) { .am-reperes { padding-block: 48px; } .am-reperes > h2 { margin-bottom: 40px; } }
@media (max-width: 640px) { .am-figure--feature .am-figure__text { font-size: 18px; } }

/* Trajectoire : frise en escalier à sept étapes (assets/js/frise.js). En frise, les décalages de la maquette
   (0, 190… 1200 px sur 1312) ; en escalier statique, la dernière étape reste dans la colonne. */
.am-cycle__intro { display: flex; flex-direction: column; gap: 24px; max-width: 714px; }
.am-cycle__intro p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-cycle .am-cycle__body p.am-cycle__lead { font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; }
.am-cycle--seven .am-cycle__step { --am-off: calc(var(--am-i, 0) * (100% - min(600px, 100%)) / 6); }
.am-cycle--seven .am-cycle__step:nth-child(2) { --am-i: 1; }
.am-cycle--seven .am-cycle__step:nth-child(3) { --am-i: 2; }
.am-cycle--seven .am-cycle__step:nth-child(4) { --am-i: 3; }
.am-cycle--seven .am-cycle__step:nth-child(5) { --am-i: 4; }
.am-cycle--seven .am-cycle__step:nth-child(6) { --am-i: 5; }
.am-cycle--seven .am-cycle__step:nth-child(7) { --am-i: 6; }
.am-cycle--seven.is-frise .am-cycle__step { --am-off: calc(var(--am-i, 0) * 15.24%); }
@media (max-width: 640px) { .am-cycle__intro p { font-size: 18px; } .am-cycle .am-cycle__body p.am-cycle__lead { font-size: 17px; line-height: 24px; } }

/* Placer l'humain : encadré pâle à motif, titre sur 108 px, paragraphes espacés */
.am-cta__text--pale-deco { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-pale); }
.am-cta__text--pale-deco .am-cta__title { display: flex; align-items: center; min-height: 108px; }
.am-cta__copy--spaced { gap: 24px; }
@media (max-width: 1000px) { .am-cta__text--pale-deco .am-cta__title { min-height: 0; } }

/* Nos valeurs : cartes qui se déplient (composant de méthode), icône à la place du numéro */
.am-step__icon { flex: 0 0 auto; margin: 0; opacity: 0.5; }
.am-section .am-step__icon img { display: block; width: 56px; height: 56px; }
@media (hover: hover) and (min-width: 1101px) { .am-method--icons.am-method--open-first .am-step { min-height: 397px; } }

/* Derrière chaque projet : mosaïque 5 × 5 (photo 3 × 3, carte 2 × 2, photo 2 × 3, carte 3 × 2) */
.am-equipes { padding-block: 80px; }
.am-equipes__intro { display: flex; flex-direction: column; gap: 32px; max-width: 856px; margin: 0 auto 32px; }
.am-equipes__intro h2 { color: var(--am-ink-dark); }
.am-equipes__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); grid-template-rows: repeat(5, minmax(0, 1fr)); gap: 8px; height: 752px; max-width: 1312px; margin-inline: auto; }
.am-equipes__media { position: relative; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-equipes__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-equipes__media--a { grid-area: 1 / 1 / 4 / 4; }
.am-equipes__card--b { grid-area: 1 / 4 / 3 / 6; }
.am-equipes__media--c { grid-area: 3 / 4 / 6 / 6; }
.am-equipes__card--d { grid-area: 4 / 1 / 6 / 4; }
.am-equipes__card { display: flex; flex-direction: column; justify-content: flex-end; gap: 24px; padding: 32px; box-sizing: border-box; overflow: hidden; border-radius: 30px; background: var(--am-grey); color: var(--wp--preset--color--bluck); }
.am-section .am-equipes__card h3 { font-size: 32px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-equipes__card p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-equipes__card .wp-block-buttons { justify-content: flex-end; margin: 8px 0 0; }
@media (max-width: 1000px) {
	.am-equipes { padding-block: 48px; }
	.am-equipes__grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; height: auto; }
	.am-equipes__media--a, .am-equipes__card--b, .am-equipes__media--c, .am-equipes__card--d { grid-area: auto; }
	.am-equipes__media { height: 320px; }
}
@media (max-width: 640px) { .am-equipes__media { height: 220px; } .am-equipes__card { padding: 24px; } .am-section .am-equipes__card h3 { font-size: 26px; } }

/* Présence locale : liste des agences (la carte survolée ou focalisée se déplie, Lyon par défaut) et carte fixe à droite */
.am-agences { padding: 80px 16px; }
.am-agences__box { display: flex; flex-direction: column; gap: 64px; padding: 80px 48px 64px; border-radius: 30px; background: var(--am-pale); }
.am-agences__box > h2 { max-width: 818px; margin-inline: auto; }
.am-agences__layout { display: flex; align-items: flex-start; gap: 64px; width: 100%; max-width: 1312px; margin-inline: auto; }
.am-agences__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.am-agence { display: flex; flex-direction: column; gap: 12px; padding: 23px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 30px; transition: background-color 0.2s ease; }
.am-section .am-agence h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-agence__body { display: flex; flex-direction: column; gap: 24px; }
.am-agence__body p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-agence__body a { color: inherit; }
.am-agence__body a:focus-visible { outline: 2px solid var(--am-blue); outline-offset: 2px; border-radius: 2px; }
.am-agences__map { position: sticky; top: 40px; flex: 0 0 718px; margin: 0; }
.am-section .am-agences__map img { display: block; width: 100%; height: auto; }
@media (hover: hover) and (min-width: 1101px) {
	.am-agence__body { max-height: 0; overflow: hidden; opacity: 0; transition: max-height 0.4s ease, opacity 0.25s ease; }
	.am-agences__list:not(:hover):not(:focus-within) .am-agence:first-child, .am-agence:hover, .am-agence:focus-within { background: #fff; }
	.am-agences__list:not(:hover):not(:focus-within) .am-agence:first-child .am-agence__body, .am-agence:hover .am-agence__body, .am-agence:focus-within .am-agence__body { max-height: 480px; opacity: 1; }
	.am-agence:not(:has(.am-agence__body)) { gap: 0; }
	.am-agence:not(:hover):not(:focus-within) { gap: 0; }
	.am-agences__list:not(:hover):not(:focus-within) .am-agence:first-child { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) { .am-agence, .am-agence__body { transition: none; } }
@media (max-width: 1100px) {
	.am-agences__layout { flex-direction: column; align-items: stretch; gap: 40px; }
	.am-agences__map { position: static; order: -1; flex: 0 0 auto; width: min(718px, 100%); margin-inline: auto; }
	.am-agence { background: #fff; }
}
@media (max-width: 1000px) { .am-agences { padding-block: 48px; } .am-agences__box { gap: 40px; padding: 48px 32px; } }
@media (max-width: 640px) {
	.am-agences { padding-inline: 8px; }
	.am-agences__box { padding: 40px 16px; border-radius: 20px; }
	.am-agences__list { gap: 16px; }
	.am-agence { padding: 19px; border-radius: 20px; }
	.am-section .am-agence h3 { font-size: 21px; }
	.am-agence__body p { font-size: 17px; line-height: 23px; }
}

/* ---- Page DevOps & Cloud ------------------------------------------------------------ */
/* Cycle d'accompagnement : cinq étapes en escalier (décalage en % de la largeur utile, 0 / 190 / 400 / 600 / 800 px à 1312 px) */
.am-cycle { padding: 80px var(--am-pad); }
.am-cycle__inner { display: flex; flex-direction: column; gap: 70px; max-width: 1312px; margin-inline: auto; }
.am-cycle__steps { display: flex; flex-direction: column; gap: 64px; }
.am-cycle__step { --am-off: 0%; display: flex; flex-direction: column; align-items: flex-start; gap: 23px; box-sizing: border-box; width: min(600px, calc(100% - var(--am-off))); margin-left: var(--am-off); }
.am-cycle__step:nth-child(2) { --am-off: 14.48%; }
.am-cycle__step:nth-child(3) { --am-off: 30.49%; }
.am-cycle__step:nth-child(4) { --am-off: 45.73%; }
.am-cycle__step:nth-child(5) { --am-off: 60.98%; }
/* Pastille d'étape : rond blanc avec une image remplaçable par la com (bloc image « am-cycle__icon ») puis le titre */
.am-section .am-cycle__badge { display: inline-flex; align-items: center; gap: 12px; box-sizing: border-box; max-width: 100%; min-height: 56px; margin: 0; padding: 8px 24px 8px 8px; border-radius: 9999px; background: var(--am-blue); }
.am-section .am-cycle__icon { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 40px; height: 40px; margin: 0; overflow: hidden; border-radius: 50%; background: #fff; }
.am-section .am-cycle__icon img { display: block; width: 24px; height: 24px; max-width: none; border-radius: 0; object-fit: contain; }
.am-section .am-cycle__pill { margin: 0; padding: 0; font-size: 18px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; white-space: nowrap; color: #fff; }
.am-cycle__body { display: flex; flex-direction: column; gap: 24px; padding-left: 60px; }
.am-cycle__body p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-cycle__result { display: flex; flex-direction: column; }
.am-cycle .am-cycle__result .am-cycle__caption { font-size: 13px; line-height: 18px; letter-spacing: 0.4px; color: var(--am-muted); }
.am-cycle .am-cycle__result p:not(.am-cycle__caption) { font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; }
@media (max-width: 1000px) {
	.am-cycle__step { width: calc(100% - var(--am-off) / 2); margin-left: calc(var(--am-off) / 2); max-width: 600px; }
	.am-cycle__inner { gap: 40px; }
	.am-cycle__steps { gap: 40px; }
}
@media (max-width: 640px) {
	.am-cycle { padding-block: 48px; }
	.am-cycle__step { width: 100%; margin-left: 0; max-width: none; }
	.am-cycle__body { padding-left: 16px; }
	.am-section .am-cycle__pill { white-space: normal; font-size: 16px; letter-spacing: 0.75px; }
}
/* Encadré bleu : quatre cartes sur une ligne */
.am-pillars--quad { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.am-pillars--quad .am-pillar, .am-pillars--quad .am-pillar:nth-child(n+3) { justify-content: flex-start; min-height: 0; }
@media (max-width: 1100px) { .am-pillars--quad { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .am-pillars--quad { grid-template-columns: minmax(0, 1fr); } }

/* ---- Page « LumApps » (AW-97) ----------------------------------------------------------------------------- */
@media (min-width: 1001px) {
	.am-hero--lumapps .am-hero-page__cols > .wp-block-column:first-child { flex: 0 0 min(703px, 55%); }
}
.am-section .am-hero-page__cols p.am-hero__lead { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; }

/* Frictions et adoption : cinq cartes (3 + 2) et encadré « Repère métier » */
.am-pains__grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-pains__card { grid-column: span 2; display: flex; flex-direction: column; gap: 24px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); }
.am-pains__card:nth-child(n+4) { grid-column: span 3; }
.am-pains__card:nth-child(even) { background: var(--am-pale); }
.am-section .am-pains__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-pains__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-pains__card { gap: 32px; }
.am-pains__note { display: flex; flex-direction: column; gap: 16px; max-width: 1312px; margin: 16px auto 0; padding: 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-pale); }
.am-section p.am-pains__label { font-size: 19px; line-height: 26px; font-weight: 600; letter-spacing: 0.25px; color: var(--am-pink); }
.am-pains__note p:not(.am-pains__label) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) { .am-pains__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .am-pains__card, .am-pains__card:nth-child(n+4) { grid-column: auto; } }
@media (max-width: 640px) { .am-pains__grid { grid-template-columns: minmax(0, 1fr); } .am-pains__card, .am-pains__note { padding: 24px; } .am-pains__note p:not(.am-pains__label) { font-size: 18px; } }

/* Bénéfices : cartes qui se déplient (composant de méthode), chapô sur deux colonnes */
.am-method--five .am-method__intro { gap: 40px; margin-bottom: 40px; }
.am-method__intro--split .am-method__cols { display: flex; gap: 40px; }
@media (hover: hover) and (min-width: 1101px) { .am-method--five.am-method--open-first .am-step { min-height: 453px; gap: 80px; } }
/* Cinq cartes : une carte ouverte ne fait qu'environ 390 px à 1440 px, le texte (largeur fixe pendant l'animation) suit. */
@media (hover: hover) and (min-width: 1360px) { .am-method--five.am-method--open-first .am-step__text p { width: 300px; } }
/* Carte repliée : le titre suit la largeur de la carte (2 lignes, comme la maquette) ; seul le texte garde sa largeur fixe. */
.am-method--lead.am-method--five.am-method--open-first .am-step:not(.am-step--wide) .am-step__text { align-self: stretch; }
@media (hover: hover) and (min-width: 1101px) { .am-method--five.am-method--open-first .am-step h3 { overflow-wrap: break-word; } }
@media (hover: hover) and (min-width: 1101px) and (max-width: 1439px) { .am-method--five.am-method--open-first .am-step h3 { font-size: 20px; } }
/* Moderniser (AW-77) : étapes de 352 px comme la maquette, titre de section en bleu nuit. */
@media (hover: hover) and (min-width: 1101px) {
	.am-method--moderniser.am-method--five.am-method--open-first .am-step { min-height: 352px; gap: 24px; }
	.am-method--moderniser.am-method--open-first .am-steps:not(:hover) .am-step:first-child, .am-method--moderniser.am-method--open-first .am-step:hover { flex-grow: 1.96; }
	.am-method--moderniser .am-step { padding-inline: 24px; }
	.am-method--moderniser .am-step h3 { letter-spacing: 0; }
}
/* Entre 1101 et 1279 px, cartes très étroites : marges réduites pour limiter la césure des titres. */
@media (hover: hover) and (min-width: 1101px) and (max-width: 1279px) { .am-method--moderniser .am-step { padding-inline: 16px; } }
@media (hover: hover) and (min-width: 1101px) and (max-width: 1149px) { .am-method--moderniser .am-step { padding-inline: 10px; } }
/* Carte repliée à 1440 px et plus : « Cartographier » doit tenir sur une ligne sans être coupé. */
@media (hover: hover) and (min-width: 1440px) { .am-method--moderniser .am-step h3 { font-size: 22px; } }
/* Cinq temps entre 1101 et 1359 px : cartes étroites, texte à la largeur de la carte ouverte la plus étroite (1101 px) et mots longs coupés avec un trait d'union. */
@media (hover: hover) and (min-width: 1101px) and (max-width: 1359px) {
	.am-method--five.am-method--open-first .am-step__text p { width: 200px; }
	.am-method--five.am-method--open-first .am-step h3 { hyphens: auto; }
}
.am-method--moderniser .am-method__intro h2 { color: var(--wp--preset--color--bluck); }
@media (hover: hover) and (min-width: 1360px) { .am-method--moderniser.am-method--open-first .am-step__text p { width: 280px; } }
.am-method__intro--split .am-method__cols p { flex: 1 1 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 900px) { .am-method__intro--split .am-method__cols { flex-direction: column; gap: 16px; } }

/* Usages : six cartes blanches (3 × 2) dans l'encadré bleu, phrase de conclusion */
.am-usages { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; width: 100%; }
.am-usage { display: flex; flex-direction: column; gap: 24px; min-height: 354px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: #fff; }
.am-section .am-usage h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-usage p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-section .am-usage p.am-usage__note { margin-top: auto; font-size: 14px; line-height: 20px; color: var(--am-pink); }
.am-section p.am-usages__end { position: relative; z-index: 1; max-width: 1072px; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-blue); }
@media (max-width: 1100px) { .am-usages { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .am-usages { grid-template-columns: minmax(0, 1fr); } .am-usage { padding: 24px; } }

/* Ce que l'accompagnement change : bloc Nexus, encadré « Point de vue » à libellé rose */
.am-nexus__view--label { gap: 16px; }
@media (min-width: 1001px) { .am-nexus--lumapps .am-nexus__layout { gap: 80px; } .am-nexus--lumapps .am-nexus__body { flex: 0 1 813px; } .am-nexus--lumapps .am-nexus__visual { flex: 0 0 419px; } }

/* Connecter : composant produits, logo de l'outil en tête de carte */
.am-products-section--tools .am-besoin__text { gap: 24px; }
.am-products-section--tools .am-besoin__text .am-subtitle { max-width: none; margin: 0; }
.am-products-section--tools .am-product__panel { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-pale); }
.am-section .am-product__logo--wide img { width: 293px; max-height: none; }

/* Mesurer la valeur : note sous le chapô */
.am-section .am-enjeux__intro p.am-enjeux__note { font-size: 16px; line-height: 22px; color: var(--am-blue); }

/* Situations : grille « zones » de Notre méthode, cartes à hauteur du contenu */
.am-zones--situations .am-zones__card { min-height: 300px; }

/* Partenariat : phrase révélée au défilement, marges de 80 px */
.am-statement--lumapps { padding-block: 80px; }
.am-statement--lumapps.am-statement--titled > h2 { margin-bottom: 32px; }
.am-statement--lumapps .am-statement__body { margin-bottom: 32px; }

/* Appel à l'action final : carte de 524 px, deux boutons empilés */
.am-cta-section--tall.am-cta-section--lumapps .am-cta__text { min-height: 524px; }
.am-cta-section--lumapps .am-hero__actions { gap: 16px; margin-top: 0; }

/* ---- Page QA, tests & automatisation ------------------------------------- */
/* Cycle : titre + chapô, sixième étape de l'escalier */
.am-cycle__head { display: flex; flex-direction: column; gap: 32px; }
.am-cycle__head .am-subtitle { max-width: 890px; }
.am-cycle__step:nth-child(6) { --am-off: 76.22%; }

/* Cycle en frise (assets/js/frise.js) : le titre reste à l'écran et l'escalier de la maquette glisse de droite à gauche
   au rythme du défilement, sans bloquer la page. Sans JS, en petit écran ou animations réduites : escalier statique. */
.am-cycle--scroll.is-frise { overflow-x: clip; }
.am-cycle--scroll.is-frise .am-cycle__inner > :first-child { position: sticky; top: 0; z-index: 1; margin-block: -24px; padding-block: 24px; }
/* Fond blanc sur toute la largeur de l’écran : l’escalier glisse hors de la colonne et ne doit jamais apparaître à côté du titre. */
.am-cycle--scroll.is-frise .am-cycle__inner > :first-child::before { content: ""; position: absolute; inset: 0 -100vw; z-index: -1; background: var(--wp--preset--color--white); }
/* Dégradé sous le titre fixe : les étapes s’effacent en douceur au lieu d’être coupées net par le paragraphe. */
.am-cycle--scroll.is-frise .am-cycle__inner > :first-child::after { content: ""; position: absolute; left: -100vw; right: -100vw; top: 100%; height: 56px; background: linear-gradient(to bottom, var(--wp--preset--color--white), rgba(255, 255, 255, 0)); pointer-events: none; }
.am-cycle--scroll.is-frise .am-cycle__steps { will-change: transform; }
.am-cycle--scroll.is-frise .am-cycle__step { width: min(600px, 100%); }

/* Tuiles sur trois colonnes, chapô centré en plusieurs paragraphes */
.am-tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.am-tiles--3 .am-tile { min-height: 300px; }
.am-besoin__text { display: flex; flex-direction: column; }
@media (max-width: 900px) { .am-tiles--3 { grid-template-columns: minmax(0, 1fr); } .am-tiles--3 .am-tile { min-height: 0; } }

/* Encadré bleu : cartes de maillage entièrement cliquables, bouton flèche au survol */
.am-pillars--links .am-pillar, .am-pillars--links .am-pillar:nth-child(n+3) { position: relative; justify-content: flex-start; min-height: 268px; transition: box-shadow 0.2s ease; }
.am-pillars--quad.am-pillars--links .am-pillar { min-height: 0; }
.am-pillars--links .am-pillar h3 a { text-decoration: none; color: inherit; }
.am-pillars--links .am-pillar h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-pillars--links .am-pillar h3 a:focus-visible { outline: none; }
.am-pillars--links .am-pillar:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-pillars--links .am-pillar:has(h3 a)::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-pillars--links .am-pillar:has(h3 a):hover, .am-pillars--links .am-pillar:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-pillars--links .am-pillar:has(h3 a):hover::before, .am-pillars--links .am-pillar:has(a:focus-visible)::before { opacity: 1; transform: none; }
@media (hover: none) { .am-pillars--links .am-pillar:has(h3 a)::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-pillars--links .am-pillar, .am-pillars--links .am-pillar:has(h3 a)::before { transition: none; } }
@media (max-width: 640px) { .am-pillars--links .am-pillar:has(h3 a)::before { top: 24px; right: 24px; } }

/* ---- Accueil (AW-47) -------------------------------------------------------- */
/* Phrase clé précédée d'un titre */
.am-statement--titled > h2 { margin-bottom: 48px; }
.am-statement--titled > p { max-width: 944px; margin-inline: auto; }
@media (max-width: 640px) { .am-statement--titled > h2 { margin-bottom: 24px; } }

/* Cartes de maillage (modes d'accompagnement, expertises) : curseur main et bouton flèche au survol ;
   toujours visible sur écran tactile. */
.am-card::before { opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-card { transition: box-shadow 0.2s ease; }
.am-card:hover, .am-card:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-card:hover::before, .am-card:has(a:focus-visible)::before { opacity: 1; transform: none; }
.am-card h3 a:focus-visible { outline: none; }
.am-card:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-xcard::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-xcard:hover::before, .am-xcard:has(a:focus-visible)::before { opacity: 1; transform: none; }
@media (hover: none) { .am-card::before, .am-xcard::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-card, .am-card::before, .am-xcard::before { transition: none; } }
@media (max-width: 640px) { .am-xcard::before { top: 24px; right: 24px; } }

/* ---- Page Intégration de logiciel (AW-43) ------------------------------- */
/* Frise « Bien intégrer un logiciel » : 4 cartes sur 7 colonnes (3 + 4 / 4 + 3) */
.am-frise--four { grid-template-columns: repeat(7, minmax(0, 1fr)); grid-auto-rows: auto; gap: 16px; max-width: 1306px; }
.am-frise--four > .am-frise__card:nth-child(1), .am-frise--four > .am-frise__card:nth-child(4) { grid-column: span 3; }
.am-frise--four > .am-frise__card:nth-child(2), .am-frise--four > .am-frise__card:nth-child(3) { grid-column: span 4; }
.am-frise--four > .am-frise__card:nth-child(1) { flex-direction: column; align-items: stretch; justify-content: flex-end; gap: 16px; }
.am-frise--four > .am-frise__card:nth-child(2) { flex-direction: column; align-items: stretch; justify-content: center; }
.am-frise--four .am-frise__text p { color: inherit; }
.am-frise--four .am-frise__foot .am-frise__img { flex: 1 1 0; min-width: 0; }
.am-frise--four > .am-frise__card:nth-child(3) > .am-frise__body { flex: 0 0 245px; }
.am-frise--four > .am-frise__card:nth-child(3) > .am-frise__img { flex: 1 1 0; min-width: 0; align-self: stretch; display: flex; align-items: center; justify-content: center; }
.am-frise--four > .am-frise__card:nth-child(3) > .am-frise__img img { width: auto; max-width: 100%; max-height: 311px; }

/* Écosystème de solutions : cartes partenaires (visuel, texte, bouton) */
.am-partners { padding-block: 120px; }
.am-partners__intro { display: flex; flex-direction: column; gap: 64px; max-width: 1306px; margin: 0 auto 64px; padding-inline: 120px; box-sizing: border-box; text-align: center; }
.am-partners__intro p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-pcards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: 1306px; margin-inline: auto; }
.am-pcard { display: flex; flex-direction: column; min-height: 511px; padding: 16px; box-sizing: border-box; overflow: hidden; background: var(--am-grey); border-radius: 30px; }
.am-pcard__visual { flex: 0 0 120px; height: 120px; margin: 0; overflow: hidden; background: #aeb5c6; border-radius: 16px; }
.am-section .am-pcard__visual img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: 16px; }
.am-pcard__body { display: flex; flex-direction: column; gap: 16px; padding: 16px; }
.am-pcard h3 { font-size: 24px; line-height: 30px; }
.am-pcard__body p { font-size: 16px; line-height: 22px; letter-spacing: 0; }
.am-pcard > .wp-block-buttons { margin-block: auto; padding: 16px; }
.am-btn--compact .wp-block-button__link { height: 48px; box-sizing: border-box; padding: 8px 8px 8px 24px; font-size: 16px; }
.am-btn--compact .wp-block-button__link::after { width: 32px; height: 32px; background-size: 16px; }

@media (max-width: 1000px) {
	.am-frise--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-frise--four > .am-frise__card:nth-child(n) { grid-column: span 1; }
	.am-frise--four > .am-frise__card:nth-child(3), .am-frise--four > .am-frise__card:nth-child(4) { grid-column: span 2; }
	.am-partners { padding-block: 48px; }
	.am-partners__intro { gap: 24px; margin-bottom: 40px; padding-inline: 0; }
}
@media (max-width: 640px) {
	.am-frise--four { grid-template-columns: minmax(0, 1fr); }
	.am-frise--four > .am-frise__card:nth-child(n) { grid-column: auto; }
	.am-frise--four > .am-frise__card:nth-child(3) { flex-direction: column; align-items: stretch; }
	.am-frise--four > .am-frise__card:nth-child(3) > .am-frise__body { flex: 0 0 auto; }
	.am-frise--four > .am-frise__card:nth-child(3) > .am-frise__img img { max-height: 200px; }
	.am-frise--four .am-frise__foot .am-frise__img { flex: 0 1 200px; }
	.am-pcards { grid-template-columns: minmax(0, 1fr); }
	.am-pcard { min-height: 0; }
	.am-pcard > .wp-block-buttons { margin-top: 0; }
}

/* ---- Page Infrastructure (AW-50) ------------------------------------------ */
/* Liste dans un encadré texte + visuel (cas client) */
.am-cta__copy ul { margin: 0; padding-left: 30px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }

/* ---- Solution sur mesure (AW-41) ------------------------------------------- */
/* Accordéon à intro fixe dans un encadré pâle (cartes blanches) */
.am-enjeux--box { padding: 80px 16px; }
.am-enjeux--box .am-enjeux__layout { max-width: none; padding: 80px 48px; background: var(--am-pale); border-radius: 30px; }
.am-enjeux--box .am-enjeux__intro { top: 24px; }
.am-enjeux--box .am-enjeux__intro .wp-block-buttons { margin: 8px 0 0; }
.am-enjeux--box .am-accordions .wp-block-details { background: #fff; }
.am-enjeux--box .am-accordions .wp-block-details > .wp-block-buttons { margin-block-start: 24px; }
@media (max-width: 900px) { .am-enjeux--box { padding-block: 48px; } .am-enjeux--box .am-enjeux__layout { padding: 40px 20px; } }

/* Cartes « ce que nous cherchons à sécuriser » : entrées de maillage, bouton flèche au survol */
.am-secure__grid--links .am-secure__card { position: relative; transition: box-shadow 0.2s ease; }
.am-secure__grid--links .am-secure__card h3 a { text-decoration: none; color: inherit; }
.am-secure__grid--links .am-secure__card h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-secure__grid--links .am-secure__card h3 a:focus-visible { outline: none; }
.am-secure__grid--links .am-secure__card:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-secure__grid--links .am-secure__card::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-secure__grid--links .am-secure__card:hover, .am-secure__grid--links .am-secure__card:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-secure__grid--links .am-secure__card:hover::before, .am-secure__grid--links .am-secure__card:has(a:focus-visible)::before { opacity: 1; transform: none; }
.am-secure__grid--links .am-secure__card h3 { padding-right: 56px; }
@media (hover: none) { .am-secure__grid--links .am-secure__card::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-secure__grid--links .am-secure__card, .am-secure__grid--links .am-secure__card::before { transition: none; } }
@media (max-width: 640px) { .am-secure__grid--links .am-secure__card::before { top: 24px; right: 24px; } }

/* ---- Actualités (AW-56) : page des articles ---------------------------------- */
/* Héros : titre + recherche */
.am-hero--news .am-hero__card { min-height: 669px; }
.am-hero--news .am-hero-page__cols > .wp-block-column:first-child { gap: 50px; }
.am-news-search { display: flex; gap: 16px; width: 100%; max-width: 640px; }
.am-news-search input { flex: 1 1 auto; min-width: 0; box-sizing: border-box; height: 52px; padding: 8px 24px; background: #fff; border: 1px solid var(--am-border-soft); border-radius: 999px; font: inherit; font-size: 16px; color: var(--wp--preset--color--bluck); }
.am-news-search input::placeholder { color: #9e9e9e; opacity: 1; }
.am-news-search input:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-news-search__btn { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 12px; box-sizing: border-box; height: 52px; padding: 8px 8px 8px 24px; border: 0; border-radius: 999px; background: var(--wp--preset--color--bluck); color: #fff; font-family: inherit; font-size: 18px; line-height: 24px; letter-spacing: 1.25px; cursor: pointer; }
.am-news-search__btn::after { content: ""; width: 36px; height: 36px; border-radius: 50%; background: #fff url("../figma/arrow-up-right.svg") center / 24px no-repeat; }
.am-news-search__btn:hover { background: var(--am-pink); }
.am-news-search__btn:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }

/* Carte d'article (grille et à la une) : lien unique sur le titre, étendu à toute la carte */
.am-news-card { position: relative; display: flex; flex-direction: column; height: 100%; box-sizing: border-box; overflow: hidden; background: #fff; border: 1px solid var(--am-border); border-radius: 30px; transition: box-shadow 0.2s ease; }
.am-news-card:hover, .am-news-card:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-news-card:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-news-card__media { flex: 0 0 236px; height: 236px; background: var(--am-border); }
.am-news-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-news-card__body { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: space-between; gap: 16px; padding: 24px; }
.am-news-card__top { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.am-section .am-news-card__title { margin: 0; font-size: 20px; line-height: 26px; font-weight: 600; letter-spacing: 0; color: var(--wp--preset--color--bluck); }
.am-news-card__title a { color: inherit; text-decoration: none; }
.am-news-card:hover .am-news-card__title a, .am-news-card__title a:focus-visible { color: var(--am-blue); }
.am-news-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.am-news-card__title a:focus-visible { outline: none; }
.am-section .am-news-card__excerpt { margin: -8px 0 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-news-card__bottom { display: flex; flex-direction: column; gap: 8px; }
.am-section .am-news-card__date { margin: 0; font-size: 14px; line-height: 21px; font-weight: 500; color: var(--am-muted); }
.am-news-card__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; }
.am-section .am-news-card__author { white-space: nowrap; }
.am-section .am-news-card__author { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; line-height: 21px; font-weight: 500; color: var(--wp--preset--color--bluck); }
.am-news-card__avatar { display: block; flex: 0 0 24px; width: 24px; height: 24px; border-radius: 50%; }
.am-news-card__avatar--team { display: grid; place-items: center; background: var(--am-blue); color: #fff; font-size: 12px; font-weight: 600; line-height: 1; }
.am-news-card__more { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; color: var(--am-blue); white-space: nowrap; }
.am-news-card__more::after { content: "→"; font-size: 16px; }
.am-news-card--featured { flex-direction: row; min-height: 440px; }
.am-news-card--featured .am-news-card__media { flex: 0 0 57%; height: auto; }
.am-news-card--featured .am-news-card__body { padding: 32px; }
.am-section .am-news-card--featured .am-news-card__title { font-size: 28px; line-height: 36px; }
.am-news-card--featured .am-news-card__excerpt { -webkit-line-clamp: 4; }
@media (prefers-reduced-motion: reduce) { .am-news-card { transition: none; } }

/* À la une : encadré marine */
.am-news-une { padding: 0 var(--am-pad-60) 80px; }
.am-news-une__box { position: relative; display: flex; flex-direction: column; gap: 32px; max-width: 1320px; margin-inline: auto; padding: 48px; box-sizing: border-box; background: var(--wp--preset--color--bluck); border-radius: 30px; }
.am-news-une__box > h2 { margin: 0; color: #fff; }
.am-news-une__deco { position: absolute; top: 39px; right: 48px; width: 233px; height: 63px; margin: 0; pointer-events: none; }
.am-news-une__deco img { display: block; width: 63px; height: 233px; max-width: none; transform: translate(85px, -85px) rotate(90deg); }

/* Filtres par étiquette, grille et « Voir plus » */
.am-news-list { padding: 0 var(--am-pad-60) 64px; }
.am-news-list > * { max-width: 1320px; margin-inline: auto; }
.am-news-filters ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 48px; padding: 0; list-style: none; }
.am-news-filter { display: inline-flex; align-items: center; min-height: 50px; box-sizing: border-box; padding: 12px 16px; background: var(--am-neutral); border: 1px solid var(--am-border); border-radius: 999px; font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-news-filter:hover { border-color: var(--am-blue); }
.am-news-filter[aria-current] { background: var(--am-pink); border-color: var(--am-pink); color: #fff; }
.am-news-filter:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-news-list > h2 { margin-top: 60px; margin-bottom: 32px; }
.am-news__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin: 0; padding: 0; list-style: none; }
.am-news__grid > li { margin: 0; }
.am-news__footer { display: flex; flex-direction: column; align-items: center; gap: 16px; margin-top: 64px; }
.am-section .am-news__count { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-news__more { display: inline-flex; align-items: center; justify-content: center; gap: 8px; box-sizing: border-box; min-width: 260px; max-width: 100%; min-height: 48px; padding: 12px 24px; border: 1px solid var(--am-blue); border-radius: 16px; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; color: var(--am-blue); text-decoration: none; }
.am-news__more::after { content: ""; width: 24px; height: 24px; background: url("../figma/chev-down.svg") center / 24px no-repeat; }
.am-news__more:hover { background: var(--am-lilac); }
.am-news__more:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-news__more.is-loading { pointer-events: none; opacity: 0.7; }
.am-news__more.is-loading::after { border: 2px solid var(--am-blue); border-right-color: transparent; border-radius: 50%; width: 16px; height: 16px; background: none; animation: am-spin 0.8s linear infinite; }
@keyframes am-spin { to { transform: rotate(360deg); } }
.am-section .am-news__empty { margin: 0; font-size: 20px; line-height: 24px; }

/* Tech'Place (AW-51) : titre de la grille + nombre d'articles, surtitre « À la une », état « aucun résultat » */
.am-news__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 24px; margin-bottom: 32px; }
.am-news__head h2 { margin: 0; }
.am-section .am-news__total { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-news__total strong { font-weight: 600; }
.am-section .am-news-card__overline { margin: 0; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: var(--am-blue); }
.am-news-card__avatar--initial { display: grid; place-items: center; background: var(--am-border); color: var(--wp--preset--color--bluck); font-size: 12px; font-weight: 600; line-height: 1; }
.am-news-empty { display: flex; flex-direction: column; align-items: center; gap: 24px; padding: 64px 48px; background: var(--am-grey); border-radius: 30px; text-align: center; }
.am-news-empty__icon { display: block; width: 48px; height: 48px; }
.am-section .am-news-empty__title { margin: 0; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-section .am-news-empty__text { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-news__more--plain { width: auto; }
.am-news__more--plain::after { content: none; }
.am-news--empty .am-news__head { margin-top: 64px; }
.am-liste-filtree .am-liste__newsletter, .am-liste-vide .am-news-une, .am-liste-vide .am-news-filters { display: none; }
@media (max-width: 640px) {
	.am-news-empty { padding: 40px 20px; gap: 16px; }
	.am-section .am-news-empty__title { font-size: 20px; }
	.am-news--empty .am-news__head { margin-top: 40px; }
}

/* Newsletter (encadré texte + visuel) */
.am-cta__text--newsletter { gap: 32px; }
/* Pages de listes : encadré aligné sur la grille d'articles (1320 px, marges 60 px) */
.am-cta-section.am-liste__newsletter { padding-inline: var(--am-pad-60); }
.am-liste__newsletter .am-cta { max-width: 1320px; margin-inline: auto; }
.am-newsletter-block { display: flex; flex-direction: column; gap: 8px; width: 100%; max-width: 538px; }
.am-newsletter-block .am-newsletter input, .am-newsletter-block .am-newsletter button { height: 52px; }
.am-newsletter-block .am-newsletter button { background: var(--wp--preset--color--bluck); }
.am-section .am-newsletter-block__consent { margin: 8px 0 0; font-size: 12px; line-height: 15px; letter-spacing: 0; }

/* Tuiles de conversion : livre blanc + « Cadrons votre projet » (hauteur réduite : la tuile contact a peu de texte) */
.am-conv { padding: 0 var(--am-pad-60) 64px; }
.am-conv__grid { display: flex; gap: 32px; max-width: 1320px; margin-inline: auto; }
.am-conv__tile { position: relative; box-sizing: border-box; min-height: 340px; padding: 48px; overflow: hidden; border-radius: 30px; }
.am-conv__tile--book { flex: 0 1 760px; display: flex; background: #ebeefc; transition: background-color 0.2s ease; }
.am-conv__tile--book:hover { background: var(--am-lilac); }
.am-conv__tile--cta { flex: 1 1 0; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; background: var(--wp--preset--color--bluck); }
.am-conv__body { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; width: 360px; max-width: 100%; }
.am-conv__text { display: flex; flex-direction: column; gap: 16px; }
.am-section .am-conv__overline { margin: 0; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: var(--am-blue); }
.am-section .am-conv__tile h3 { margin: 0; font-size: 32px; line-height: normal; letter-spacing: 0.25px; }
.am-section .am-conv__tile p:not(.am-conv__overline) { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-section .am-conv__tile--cta h3 { color: #fff; }
.am-section .am-conv__tile--cta p { color: #afb8f2; }
.am-conv__tile .wp-block-buttons { margin: 0; }
.am-conv__cover { position: absolute; left: 436px; top: 104px; width: 200px; height: 266px; margin: 0; transform: rotate(6deg); }
.am-section .am-conv__cover img { width: 100%; height: 100%; object-fit: cover; border-radius: 12px; }
.am-btn--pink-square .wp-block-button__link { background: var(--am-pink); color: #fff; border-radius: 16px; padding: 12px 16px; font-size: 16px; line-height: 24px; }
.am-btn--pink-square .wp-block-button__link::after { display: none; }
.am-btn--pink-square .wp-block-button__link:hover { background: var(--wp--preset--color--bluck); }
@media (prefers-reduced-motion: reduce) { .am-conv__tile--book { transition: none; } }

@media (max-width: 1100px) {
	.am-news-card--featured { flex-direction: column; min-height: 0; }
	.am-news-card--featured .am-news-card__media { flex-basis: 280px; height: 280px; }
	.am-conv__grid { flex-direction: column; }
	.am-conv__tile--book, .am-conv__tile--cta { flex: 0 0 auto; }
	.am-conv__tile--cta { min-height: 0; }
}
@media (max-width: 1000px) { .am-news__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
@media (max-width: 640px) {
	.am-hero--news .am-hero__card { min-height: 0; }
	.am-news-search { flex-direction: column; }
	.am-news-search__btn { align-self: flex-start; }
	.am-news-une { padding-bottom: 48px; }
	.am-news-une__box { padding: 32px 20px; gap: 24px; }
	.am-news-une__deco { display: none; }
	.am-news-card--featured .am-news-card__media { flex-basis: 200px; height: 200px; }
	.am-news-card--featured .am-news-card__body { padding: 24px; }
	.am-section .am-news-card--featured .am-news-card__title { font-size: 22px; line-height: 28px; }
	.am-news__grid { grid-template-columns: minmax(0, 1fr); }
	.am-news-filter { min-height: 44px; padding: 8px 14px; font-size: 16px; }
	.am-news-filters ul { margin-bottom: 32px; }
	.am-news-list > h2 { margin-top: 32px; }
	.am-conv__tile { min-height: 0; padding: 32px 24px; }
	.am-conv__tile--book { flex-direction: column; gap: 24px; }
	.am-conv__cover { position: static; width: 180px; height: 240px; align-self: center; }
}

/* ---- Article de la Tech'Place (AW-57) : gabarit single.html ------------------ */
/* Conteneur 1320 px (marges 60 px à 1440 px) */
.am-article > :is(.am-article__crumbs, .am-article-head, .am-article__layout) { box-sizing: border-box; width: 100%; max-width: calc(1320px + 2 * var(--am-pad-60)); margin: 0 auto; padding-inline: var(--am-pad-60); }
.am-article__crumbs { padding-top: 24px; }
.am-article__crumbs .am-breadcrumb ol { margin: 0; }

/* En-tête : étiquette, titre, chapô | visuel 4:3 */
.am-article > .am-article-head { display: flex; align-items: center; gap: 48px; padding-block: 16px 80px; }
.am-article-head__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.am-article-head__tag a:hover { text-decoration: underline; }
.am-article-head__tag a:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; border-radius: 4px; }
.am-article-head__title { margin: 0; font-size: 40px; line-height: 53.7px; font-weight: 600; letter-spacing: -0.5px; color: var(--wp--preset--color--bluck); overflow-wrap: anywhere; }
.am-article-head__chapo { padding-top: 8px; }
.am-article-head__chapo p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-article-head__visual { flex: 0 0 536px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-border); }
.am-article-head__visual img { display: block; border-radius: 30px; }

/* Zone de lecture : sommaire collant (312) + contenu (960, texte 720) */
.am-article > .am-article__layout { display: grid; grid-template-columns: 312px minmax(0, 960px); justify-content: space-between; align-items: start; column-gap: 48px; padding-bottom: 64px; }
.am-article__aside { position: sticky; top: 24px; max-height: calc(100vh - 48px); overflow-y: auto; }
.am-article__body { grid-column: 2; min-width: 0; }

.am-toc { display: flex; flex-direction: column; gap: 16px; }
.am-toc__title { margin: 0; padding-left: 16px; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: var(--am-blue); }
.am-toc ol { margin: 0; padding: 0; list-style: none; }
.am-toc__list { display: flex; flex-direction: column; gap: 2px; border-left: 1px solid var(--am-border); }
.am-toc__item > a { display: flex; padding: 8px 12px 8px 13px; border-radius: 0 12px 12px 0; font-size: 15px; line-height: 22px; font-weight: 500; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-toc__num { flex: 0 0 28px; font-weight: 600; color: var(--am-blue); }
.am-toc__text { flex: 1 1 0; min-width: 0; }
.am-toc__item > a:hover { background: var(--am-grey); }
.am-toc__item > a:hover .am-toc__text { text-decoration: underline; }
.am-toc__item.is-active > a { box-shadow: inset 3px 0 0 var(--am-blue); font-weight: 600; color: var(--am-blue); }
.am-toc__sub { padding: 2px 0 6px 41px; }
.am-toc__sub a { display: block; padding: 6px 12px 6px 0; font-size: 14px; line-height: 21px; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-toc__sub a:hover { text-decoration: underline; }
.am-toc__sub a[aria-current] { font-weight: 600; color: var(--am-blue); }
.am-toc a:focus-visible { outline: 2px solid #7f8ada; outline-offset: -2px; border-radius: 12px; }
/* Avec JavaScript, seuls les sous-titres de la section lue sont dépliés (maquette). */
.am-toc.is-enhanced .am-toc__item:not(.is-active) > .am-toc__sub { display: none; }

/* Contenu : rythme et typographie de la maquette */
.am-article__content { padding-top: 32px; color: var(--wp--preset--color--bluck); }
.am-article__content > * { max-width: 720px; margin-block: 0; }
.am-article__content > * + * { margin-top: 24px; }
.am-article__content > :is(.wp-block-image, .wp-block-embed:not(.is-provider-spotify), .wp-block-video, .wp-block-gallery, .wp-block-table, .am-code, .am-brief) { max-width: none; }
.am-article__content > :is(p, ul, ol), .am-article__content > .wp-block-list { font-size: 19px; line-height: 30px; letter-spacing: 0; }
.am-article__content :is(ul, ol):not(.am-brief__list) { padding-left: 1.4em; }
.am-article__content li + li { margin-top: 8px; }
.am-article__content a:not(.wp-block-button__link) { color: var(--am-blue); }
.am-article__content a:not(.wp-block-button__link):focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; border-radius: 2px; }
.am-article__content :is(h2, h3, h4, h5, h6) { color: var(--wp--preset--color--bluck); font-weight: 600; letter-spacing: 0; scroll-margin-top: 24px; }
.am-article__content > h2 { position: relative; min-height: 48px; margin-top: 72px; padding-left: 64px; font-size: 32px; line-height: 40px; letter-spacing: -0.3px; }
.am-article__content > h2[data-num]::before { content: attr(data-num); position: absolute; left: 0; top: -4px; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: #ebeefc; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; color: var(--am-blue); }
.am-article__content > h2:not([data-num]) { min-height: 0; margin-top: 64px; padding-left: 0; }
.am-article__content > h3 { margin-top: 48px; font-size: 24px; line-height: 32px; }
.am-article__content > h4 { margin-top: 32px; font-size: 20px; line-height: 28px; }
.am-article__content > :is(h5, h6) { margin-top: 24px; font-size: 18px; line-height: 26px; }
.am-article__content > :is(h3, h4, h5, h6) + * { margin-top: 16px; }
.am-article__content > :first-child { margin-top: 0; }
.am-article__content > .am-brief + * { margin-top: 104px; }

/* Images, vidéos, podcasts : visuel 960 arrondi, légende 720 */
.am-article__content > :is(.wp-block-image, .wp-block-embed, .wp-block-video, .wp-block-gallery) { margin-top: 32px; }
.am-article__content .wp-block-image img, .am-article__content .wp-block-video video { border-radius: 30px; }
.am-article__content .wp-block-video video { display: block; width: 100%; }
.am-article__content .wp-block-embed:not(.is-provider-spotify) .wp-block-embed__wrapper { overflow: hidden; border-radius: 30px; background: var(--am-border); }
.am-article__content .wp-block-embed iframe { display: block; width: 100%; max-width: 100%; border: 0; }
.am-article__content .is-provider-spotify iframe { border-radius: 12px; }
.am-article__content :is(figcaption, .wp-element-caption) { max-width: 720px; margin: 12px 0 0; font-size: 14px; line-height: 21px; text-align: left; color: var(--wp--preset--color--bluck); }
.am-article__content :is(figcaption, .wp-element-caption) strong { font-weight: 600; color: var(--am-blue); }

/* Tableau éditorial */
.am-article__content .wp-block-table { overflow-x: auto; }
.am-article__content .wp-block-table table { width: 100%; border: 1px solid var(--am-border); border-collapse: separate; border-spacing: 0; border-radius: 30px; overflow: hidden; background: #fff; }
.am-article__content .wp-block-table :is(th, td) { padding: 16px 20px; border: 0; text-align: left; vertical-align: top; font-size: 16px; line-height: 24px; }
.am-article__content .wp-block-table tr + tr > *, .am-article__content .wp-block-table tbody tr > *, .am-article__content .wp-block-table tfoot tr > * { border-top: 1px solid var(--am-border); }
.am-article__content .wp-block-table table > :first-child > tr:first-child > * { border-top: 0; }
.am-article__content .wp-block-table thead { border: 0; }
.am-article__content .wp-block-table thead th { background: #ebeefc; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; }
.am-article__content .wp-block-table tbody td:first-child { font-weight: 600; }
.am-article__content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { background: var(--am-pale); }

/* Citation */
.am-article__content > .wp-block-quote { position: relative; margin: 32px 0 0; padding: 8px 0 8px 64px; border: 0; }
.am-article__content > .wp-block-quote::before { content: ""; position: absolute; left: 0; top: 8px; width: 40px; height: 40px; background: url("../figma/article-quote.svg") center / 40px no-repeat; }
.am-article__content > .wp-block-quote p { margin: 0; font-size: 24px; line-height: 34px; font-weight: 500; font-style: normal; }
.am-article__content > .wp-block-quote p + p { margin-top: 16px; }
.am-article__content > .wp-block-quote cite { display: flex; align-items: center; gap: 12px; margin-top: 16px; font-size: 14px; line-height: 21px; font-weight: 500; font-style: normal; }
.am-article__content > .wp-block-quote cite::before { content: ""; flex: 0 0 32px; height: 2px; background: var(--am-blue); }

/* Bloc de code (barre langage + Copier, voir inc/article.php) */
.am-article__content > .am-code { margin-top: 32px; overflow: hidden; border-radius: 30px; background: var(--wp--preset--color--bluck); }
.am-code__bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; box-sizing: border-box; padding: 12px 16px 12px 32px; border-bottom: 1px solid #1d2573; }
.am-code__lang { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: #afb8f2; }
.am-code__lang::before { content: ""; width: 16px; height: 16px; background: url("../figma/article-code.svg") center / 16px no-repeat; }
.am-code__copy { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 112px; height: 40px; box-sizing: border-box; padding: 0 16px; border: 1px solid #afb8f2; border-radius: 999px; background: transparent; font-family: inherit; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; color: #fff; cursor: pointer; }
.am-code__copy::before { content: ""; width: 18px; height: 18px; background: url("../figma/article-copy.svg") center / 18px no-repeat; }
.am-code__copy:hover { border-color: #fff; }
.am-code__copy:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; }
.am-code__copy.is-copied { border-color: #fff; background: #fff; color: var(--wp--preset--color--bluck); }
.am-code__copy.is-copied::before { background-image: url("../figma/article-copied.svg"); }
.am-code__copy[hidden] { display: none; }
.am-code .wp-block-code { margin: 0; padding: 24px 32px 28px; overflow-x: auto; border: 0; border-radius: 0; background: transparent; color: #fff; font-family: ui-monospace, "JetBrains Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace; font-size: 14px; line-height: 22px; letter-spacing: 0; white-space: pre; }
.am-code .wp-block-code code { font: inherit; white-space: inherit; }

/* L'essentiel (en bref) */
.am-brief { display: flex; align-items: flex-start; gap: 48px; padding: 32px; border-radius: 30px; background: #ebeefc; color: var(--wp--preset--color--bluck); }
.am-brief > * { margin: 0; }
.am-brief__head { flex: 0 0 408px; display: flex; flex-direction: column; gap: 8px; }
.am-brief__head > * { margin: 0; }
.am-brief__overline { font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: var(--am-blue); }
.am-brief__title { font-size: 24px; line-height: 32px; font-weight: 600; }
.am-brief__lead { font-size: 20px; line-height: 28px; font-weight: 500; }
.am-brief__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 4px 0 0; list-style: none; }
.am-brief__list li { position: relative; margin: 0; padding-left: 36px; font-size: 17px; line-height: 28px; }
.am-brief__list li + li { margin: 0; }
.am-brief__list li::before { content: ""; position: absolute; left: 0; top: 2px; width: 24px; height: 24px; border-radius: 12px; background: var(--am-blue) url("../figma/article-check.svg") center / 14px no-repeat; }

/* Encadrés « À retenir », « Attention », « Exemple » (styles du bloc Groupe) */
.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple) { position: relative; box-sizing: border-box; padding: 32px 32px 32px 88px; border-radius: 30px; background: #ebeefc; color: var(--wp--preset--color--bluck); }
.wp-block-group.is-style-encadre-attention { background: #fcebf4; }
.wp-block-group.is-style-encadre-exemple { background: var(--am-grey); }
.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple)::before { content: ""; position: absolute; left: 32px; top: 32px; width: 40px; height: 40px; border-radius: 20px; background: var(--am-blue) url("../figma/article-callout-bulb.svg") center / 20px no-repeat; }
.wp-block-group.is-style-encadre-attention::before { background-color: var(--am-pink); background-image: url("../figma/article-callout-warn.svg"); }
.wp-block-group.is-style-encadre-exemple::before { background-color: var(--wp--preset--color--bluck); background-image: url("../figma/article-callout-flask.svg"); }
.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple) > * { margin: 0; font-size: 17px; line-height: 28px; }
.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple) > * + * { margin-top: 8px; }
.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple) > .am-callout__label { display: flex; align-items: center; min-height: 40px; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; }

/* Appel à l'action dans le texte (motif « Article : appel à l'action », encarts importés) */
.am-article-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 32px; row-gap: 8px; box-sizing: border-box; padding: 32px 32px 32px 40px; border-radius: 30px; background: var(--wp--preset--color--bluck); }
.am-article-cta.am-article-cta > * { grid-column: 1; max-width: none; margin: 0; }
.am-article-cta > :is(h2, h3, h4, .am-article-cta__title) { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: #fff; }
.am-article-cta > p:not(.am-article-cta__title) { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: #afb8f2; }
.am-article-cta.am-article-cta > .wp-block-buttons { grid-column: 2; grid-row: 1 / span 3; }
.am-article-cta .am-btn .wp-block-button__link { height: 52px; box-sizing: border-box; padding: 8px 8px 8px 24px; background: #fff; color: var(--wp--preset--color--bluck); font-size: 18px; line-height: 24px; letter-spacing: 1.25px; }
.am-article-cta .am-btn .wp-block-button__link::after { width: 36px; height: 36px; background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 24px no-repeat; }
.am-article-cta .am-btn .wp-block-button__link:hover { background: var(--am-lilac); color: var(--wp--preset--color--bluck); }
.am-article-cta .am-btn .wp-block-button__link:focus-visible { outline-color: #7f8ada; }

/* Questions fréquentes de l'article (blocs Détails) */
.am-article-faq > * { margin: 0; }
.am-article-faq .wp-block-details { border-top: 1px solid var(--am-border); }
.am-article-faq .wp-block-details:last-child { border-bottom: 1px solid var(--am-border); }
.am-article-faq summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px 0; list-style: none; font-size: 20px; line-height: 1.2; font-weight: 500; color: var(--wp--preset--color--bluck); cursor: pointer; }
.am-article-faq summary::-webkit-details-marker { display: none; }
.am-article-faq summary::after { content: ""; flex: 0 0 40px; height: 40px; background: url("../figma/chev-down.svg") center / 24px no-repeat; transition: transform 0.2s ease; }
.am-article-faq details[open] > summary::after { transform: rotate(180deg); }
.am-article-faq summary:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; border-radius: 4px; }
.am-article-faq details > :not(summary) { margin: 0 0 20px; font-size: 17px; line-height: 28px; }

/* Pied d'article : mots-clés, partage, signature */
.am-article__end { display: flex; flex-direction: column; gap: 32px; max-width: 720px; margin-top: 80px; }
.am-article__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 32px; }
.am-article__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; }
.am-article__tags .wp-block-post-terms__prefix { margin-right: 8px; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; color: var(--wp--preset--color--bluck); }
.am-article__tags .wp-block-post-terms__separator { display: none; }
.am-article__tags a { display: inline-flex; align-items: center; padding: 4px 8px; border: 1px solid var(--am-border); border-radius: 12px; font-size: 14px; line-height: 21px; font-weight: 500; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-article__tags a:hover { border-color: var(--am-blue); }
.am-article__tags a:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; }
.am-share { position: relative; display: flex; align-items: center; gap: 16px; margin-left: auto; }
.am-share__label, .am-article__author { margin: 0; font-size: 14px; line-height: 16px; font-weight: 600; letter-spacing: 0.75px; color: var(--wp--preset--color--bluck); }
.am-share__list { display: flex; gap: 12px; margin: 0; padding: 0; list-style: none; }
.am-share__list li { margin: 0; }
.am-share__list li:has(> [hidden]) { display: none; }
.am-share__btn { display: grid; place-items: center; box-sizing: border-box; width: 48px; height: 48px; padding: 0; border: 1px solid var(--wp--preset--color--bluck); border-radius: 24px; background: #fff center / 20px no-repeat; cursor: pointer; transition: background-color 0.2s ease; }
.am-share__btn--linkedin { background-image: url("../figma/article-share-linkedin.svg"); }
.am-share__btn--mail { background-image: url("../figma/article-share-mail.svg"); }
.am-share__btn--link { background-image: url("../figma/article-share-link.svg"); }
.am-share__btn:hover { background-color: var(--wp--preset--color--bluck); }
.am-share__btn.is-copied { background-color: var(--am-blue); border-color: var(--am-blue); }
.am-share__btn--linkedin:hover { background-image: url("../figma/article-share-linkedin-white.svg"); }
.am-share__btn--mail:hover { background-image: url("../figma/article-share-mail-white.svg"); }
.am-share__btn--link:is(:hover, .is-copied) { background-image: url("../figma/article-share-link-white.svg"); }
.am-share__btn:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; }
.am-share__toast { position: absolute; top: calc(100% + 8px); right: 0; z-index: 2; margin: 0; padding: 8px 16px; border-radius: 12px; background: var(--wp--preset--color--bluck); color: #fff; font-size: 14px; line-height: 21px; white-space: nowrap; opacity: 0; pointer-events: none; transition: opacity 0.2s ease; }
.am-share__toast.is-visible { opacity: 1; }
.am-article__author { align-self: flex-end; text-align: right; }

/* Actualités associées : carrousel de cartes (assets/js/carousel.js) */
.am-section.am-related { padding: 16px var(--am-pad-60) 48px; }
.am-related > * { max-width: 1320px; margin-inline: auto; }
.am-related__head { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; }
.am-section .am-related__title { margin: 0; font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-related__all { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; color: var(--am-blue); }
.am-related__all::after { content: ""; width: 16px; height: 16px; background: url("../figma/article-arrow.svg") center / 16px no-repeat; }
.am-related__all:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; border-radius: 4px; }
.am-related:not(.am-related--more) .am-related__controls { display: none; }
.am-related__track { display: flex; gap: 32px; margin: 32px auto 0; padding: 0; list-style: none; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.am-related__track::-webkit-scrollbar { display: none; }
.am-related__track > li { flex: 0 0 calc((100% - 64px) / 3); min-width: 0; margin: 0; scroll-snap-align: start; }

/* Aller plus loin : expertise + livre blanc */
.am-section.am-more-section { padding: 0 var(--am-pad-60); }
.am-more { display: flex; flex-direction: column; gap: 32px; box-sizing: border-box; max-width: 1320px; margin-inline: auto; padding: 48px; border-radius: 30px; background: #ebeefc; }
.am-more__grid { display: flex; align-items: stretch; gap: 32px; }
.am-more__card { box-sizing: border-box; border-radius: 30px; background: #fff; color: var(--wp--preset--color--bluck); }
.am-more__card--expertise { flex: 1 1 805px; min-width: 0; display: flex; gap: 32px; padding: 32px; }
.am-more__card--book { flex: 0 1 387px; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 32px; }
.am-more__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.am-section .am-more__overline { margin: 0; font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: 1.5px; text-transform: uppercase; color: var(--am-blue); }
.am-section .am-more__title { margin: 0; font-size: 28px; line-height: 36px; letter-spacing: 0; color: var(--wp--preset--color--bluck); }
.am-section .am-more__card--book .am-more__title { font-size: 20px; line-height: 26px; }
.am-more__text > p:not([class]) { font-size: 16px; line-height: 24px; letter-spacing: 0; }
.am-more__card--book > p:not([class]) { font-size: 14px; line-height: 21px; letter-spacing: 0; }
.am-section .am-more__link { margin: auto 0 0; padding-top: 16px; }
.am-more__link a { display: inline-flex; align-items: center; gap: 6px; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; color: var(--am-blue); }
.am-more__link a::after { content: ""; width: 16px; height: 16px; background: url("../figma/article-arrow.svg") center / 16px no-repeat; }
.am-more__link a:focus-visible { outline: 2px solid #7f8ada; outline-offset: 2px; border-radius: 4px; }
.am-more__case { flex: 0 0 340px; display: flex; flex-direction: column; gap: 16px; box-sizing: border-box; padding: 24px; border-radius: 30px; background: var(--am-pale); }
.am-section .am-more__case-title { margin: 0; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; }
.am-more__stats { display: flex; gap: 16px; margin-top: auto; padding-top: 48px; }
.am-more__stat { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.am-more__stat p { margin: 0; font-size: 14px; line-height: 21px; letter-spacing: 0; }
.am-section .am-more__value { font-size: 40px; line-height: 53.7px; font-weight: 600; letter-spacing: -0.5px; color: var(--am-blue); white-space: nowrap; }
.am-more__cover { margin: 0; }
.am-section .am-more__cover img { display: block; width: auto; height: 170px; }
.am-more__card--book .wp-block-buttons { margin: 0; }

@media (prefers-reduced-motion: reduce) { .am-share__btn, .am-share__toast, .am-article-faq summary::after { transition: none; } }

@media (max-width: 1100px) {
	.am-article > .am-article__layout { grid-template-columns: 240px minmax(0, 1fr); column-gap: 40px; }
	.am-article-head__visual { flex-basis: 42%; }
	.am-more__grid { flex-direction: column; }
	.am-more__card--expertise, .am-more__card--book { flex-basis: auto; }
}
@media (max-width: 1000px) {
	.am-article > .am-article-head { flex-direction: column; align-items: stretch; padding-bottom: 48px; }
	.am-article-head__visual { flex-basis: auto; width: 100%; }
	.am-article > .am-article__layout { display: block; padding-bottom: 48px; }
	.am-article__aside { position: static; max-height: none; overflow: visible; margin-bottom: 8px; padding: 16px 16px 12px 0; border: 1px solid var(--am-border); border-radius: 20px; }
	.am-article__aside:empty { display: none; }
	.am-related__track { gap: 24px; }
	.am-related__track > li { flex-basis: calc((100% - 24px) / 2); }
	.am-related .am-related__controls { display: flex; }
}
@media (max-width: 900px) {
	.am-more__card--expertise { flex-direction: column; }
	.am-more__case { flex-basis: auto; }
	.am-more__stats { padding-top: 24px; }
	.am-brief { flex-direction: column; gap: 24px; }
	.am-brief__head { flex-basis: auto; }
}
@media (max-width: 640px) {
	.am-article__crumbs { padding-top: 16px; }
	.am-article > .am-article-head { gap: 32px; padding-top: 16px; }
	.am-article-head__title { font-size: 32px; line-height: 1.25; }
	.am-article-head__chapo p { font-size: 18px; line-height: 26px; }
	.am-article-head__visual, .am-article-head__visual img { border-radius: 20px; }
	.am-article__content > :is(p, ul, ol), .am-article__content > .wp-block-list { font-size: 17px; line-height: 28px; }
	.am-article__content > h2 { min-height: 40px; margin-top: 56px; padding-left: 52px; font-size: 28px; line-height: 36px; }
	.am-article__content > h2[data-num]::before { top: -3px; width: 40px; height: 40px; font-size: 14px; }
	.am-article__content > h2:not([data-num]) { margin-top: 48px; }
	.am-article__content > .am-brief + * { margin-top: 72px; }
	.am-article__content > h3 { margin-top: 40px; font-size: 21px; line-height: 28px; }
	.am-article__content > h4 { font-size: 18px; line-height: 26px; }
	.am-article__content .wp-block-image img, .am-article__content .wp-block-video video, .am-article__content .wp-block-embed:not(.is-provider-spotify) .wp-block-embed__wrapper { border-radius: 20px; }
	.am-article__content .wp-block-table table { min-width: 560px; border-radius: 20px; }
	.am-article__content > .wp-block-quote { padding-left: 52px; }
	.am-article__content > .wp-block-quote::before { width: 36px; height: 36px; background-size: 36px; }
	.am-article__content > .wp-block-quote p { font-size: 20px; line-height: 30px; }
	.am-article__content > .am-code { border-radius: 20px; }
	.am-code__bar { padding-left: 20px; }
	.am-code .wp-block-code { padding: 20px; }
	.am-brief { padding: 24px; border-radius: 20px; }
	.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple) { padding: 24px; border-radius: 20px; }
	.wp-block-group:is(.is-style-encadre-retenir, .is-style-encadre-attention, .is-style-encadre-exemple)::before { position: static; display: block; margin-bottom: 8px; }
	.am-article-cta { grid-template-columns: minmax(0, 1fr); padding: 24px; border-radius: 20px; }
	.am-article-cta.am-article-cta > .wp-block-buttons { grid-column: 1; grid-row: auto; margin-top: 16px; }
	.am-article-cta .am-btn .wp-block-button__link { height: auto; min-height: 52px; font-size: 16px; }
	.am-article-faq summary { font-size: 18px; }
	.am-article__end { margin-top: 56px; }
	.am-article__meta { flex-direction: column; align-items: flex-start; }
	.am-share { flex-wrap: wrap; margin-left: 0; }
	.am-share__toast { right: auto; left: 0; }
	.am-article__author { align-self: flex-start; text-align: left; }
	.am-related__head { align-items: flex-start; }
	.am-related__track > li { flex-basis: 85%; }
	.am-more { padding: 32px 20px; border-radius: 20px; }
	.am-more__card--expertise, .am-more__card--book { padding: 24px; border-radius: 20px; }
	.am-more__case { border-radius: 20px; }
	.am-section .am-more__title { font-size: 24px; line-height: 32px; }
	.am-section .am-more__value { font-size: 32px; line-height: 40px; }
}
@media (pointer: coarse) { .am-code__copy { height: 44px; } }

/* ---- Page Intelligence artificielle -------------------------------------- */
/* Héro : deux boutons empilés */
.am-buttons--stack { flex-direction: column; align-items: flex-start; gap: 24px; }
/* Pourquoi intégrer l'IA : titre + chapô au-dessus des cartes numérotées */
.am-method--lead .am-method__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1312px; margin: 0 auto 40px; }
.am-method--lead .am-method__intro h2 { max-width: 1312px; margin: 0; color: var(--wp--preset--color--bluck); }
.am-method--lead .am-method__intro .am-subtitle { max-width: 830px; margin: 0; }
@media (min-width: 1101px) { .am-method--lead .am-step { min-height: 475px; } }
.am-method--lead .am-step:not(.am-step--wide) .am-step__text { align-self: flex-start; }
.am-method--lead .am-method__note { max-width: 1312px; margin: 40px auto 0; font-size: 20px; line-height: 28px; font-weight: 600; }
/* Secteurs : tuiles photo et carte ouverte */
.am-sectors { padding-block: 80px; }
.am-sectors__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1312px; margin: 0 auto 73px; }
.am-sectors__intro h2 { margin: 0; }
.am-sectors__intro .am-subtitle { max-width: 689px; margin: 0; }
.am-sectors__row { display: flex; align-items: stretch; gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-sector { position: relative; flex: 1 1 0; min-width: 0; box-sizing: border-box; display: flex; flex-direction: column; justify-content: flex-end; min-height: 400px; padding: 16px; overflow: hidden; border-radius: 30px; background: linear-gradient(to top, rgba(11, 19, 43, 0.6) 0%, rgba(11, 19, 43, 0) 65%), url("../figma/ia-secteur.webp") center / cover no-repeat; color: #fff; cursor: pointer; transition: flex-grow 0.4s ease; }
.am-sector:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-sector p.am-sector__num { margin: 0; font-size: 96px; line-height: normal; font-weight: 600; letter-spacing: 0; }
.am-section h3.am-sector__name { margin: 0; font-size: 32px; line-height: 1.25; font-weight: 600; letter-spacing: -0.5px; color: #fff; overflow-wrap: anywhere; }
.am-sector .am-sector__more { position: absolute; inset: 0; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; gap: 16px; padding: 80px 20px 24px; background: var(--am-grey); color: var(--wp--preset--color--bluck); opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s; overflow-y: auto; }
.am-sector p.am-sector__num, .am-section h3.am-sector__name { position: relative; z-index: 1; transition: color 0.3s ease, opacity 0.3s ease; }
.am-sector:hover p.am-sector__num, .am-sector:focus-visible p.am-sector__num, .am-sector.is-open p.am-sector__num { opacity: 0; }
.am-section .am-sector:hover h3.am-sector__name, .am-section .am-sector:focus-visible h3.am-sector__name, .am-section .am-sector.is-open h3.am-sector__name { position: absolute; top: 24px; left: 20px; right: 20px; color: var(--am-pink); }
.am-sector .am-sector__more p { margin: 0; font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-sector .am-sector__more p.am-sector__lead { font-size: 20px; line-height: 26px; color: var(--am-pink); }
/* Ouverture fluide : courbe douce, texte à largeur finale fixe (aucun retour à la ligne pendant l'animation), fondu retardé */
@media (hover: hover) and (min-width: 901px) {
	.am-sectors__row { container-type: inline-size; }
	.am-sector { transition: flex-grow 0.6s cubic-bezier(0.22, 1, 0.36, 1); }
	.am-sector .am-sector__more { right: auto; width: calc(32px + (100cqw - 4 * 16px - 5 * 32px) * 2.4 / 6.4); transition: opacity 0.3s ease, visibility 0.3s; }
	.am-sector:hover .am-sector__more, .am-sector:focus-visible .am-sector__more, .am-sector.is-open .am-sector__more { transition-delay: 0.15s; }
	.am-sectors__row:hover .am-sector:hover { flex-grow: 2.4; }
}
@media (prefers-reduced-motion: reduce) { .am-sector, .am-sector .am-sector__more { transition: none; } }
.am-sector:hover .am-sector__more, .am-sector:focus-visible .am-sector__more, .am-sector.is-open .am-sector__more { opacity: 1; visibility: visible; }
@media (max-width: 1100px) { .am-sectors__row { flex-wrap: wrap; } .am-sector { flex: 1 1 calc(33.33% - 16px); min-height: 360px; } }
@media (max-width: 900px) { .am-sector { flex-basis: 100%; min-height: 320px; } }
@media (max-width: 640px) { .am-sectors { padding-block: 48px; } .am-sectors__intro { margin-bottom: 40px; } .am-sector { min-height: 300px; } .am-sector p.am-sector__num { font-size: 44px; } .am-section h3.am-sector__name { font-size: 28px; line-height: 1.2; } }
/* Chiffres et experts */
.am-chiffres { padding-block: 80px; }
.am-chiffres__layout { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; margin-inline: auto; }
.am-chiffres__intro { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.am-chiffres__intro h2, .am-chiffres__intro p, .am-chiffres__intro .wp-block-buttons { margin: 0; }
.am-chiffres__grid { flex: 0 1 766px; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.am-chiffre { box-sizing: border-box; display: flex; flex-direction: column; gap: 32px; min-height: 219px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-chiffre p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-chiffre p.am-chiffre__value { font-size: 60px; line-height: 75px; font-weight: 600; letter-spacing: -0.5px; color: var(--am-pink); }
.am-chiffre--note { justify-content: center; background: var(--am-pale); }
@media (max-width: 1000px) { .am-chiffres { padding-block: 48px; } .am-chiffres__layout { flex-direction: column; gap: 40px; } .am-chiffres__grid { flex-basis: auto; width: 100%; } }
@media (max-width: 640px) { .am-chiffres__grid { grid-template-columns: 1fr; } .am-chiffre { min-height: 0; gap: 16px; padding: 24px; } .am-chiffre p.am-chiffre__value { font-size: 40px; line-height: 60px; } }
/* Encadrés bleu / pâle : largeurs de chapô, fond pâle */
.am-accompagnements__intro--md .am-accompagnements__lead { max-width: 806px; }
.am-accompagnements__intro--lg .am-accompagnements__lead { max-width: 906px; }
.am-accompagnements__box--pale { background: var(--am-pale); }
/* Smart / Boost / Scale : trois cartes blanches centrées */
.am-levels { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; width: 100%; }
.am-level { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; gap: 32px; padding: 32px; background: #fff; border-radius: 30px; }
.am-level h3 { margin: 0; text-align: center; font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-level p { flex: 1 1 auto; margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-level .wp-block-buttons { margin: 0; justify-content: center; }
.am-approche { scroll-margin-top: 96px; }
@media (max-width: 900px) { .am-levels { grid-template-columns: 1fr; } }
/* Nexus : texte + illustration */
.am-nexus { padding-block: 80px; }
.am-nexus__layout { display: flex; align-items: center; gap: 32px; max-width: 1312px; margin-inline: auto; }
.am-nexus__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.am-nexus__text h2 { margin: 0 0 16px; }
.am-nexus__text p { margin: 0; }
.am-nexus__visual { flex: 0 0 543px; align-self: stretch; margin: 0; display: flex; align-items: center; justify-content: center; padding-inline: 32px; box-sizing: border-box; }
.am-section .am-nexus__visual img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; border-radius: 0; }
@media (max-width: 1000px) { .am-nexus { padding-block: 48px; } .am-nexus__layout { flex-direction: column; align-items: stretch; } .am-nexus__visual { flex-basis: auto; padding-inline: 0; } .am-section .am-nexus__visual img { max-width: 420px; margin-inline: auto; } }
/* Escalier : à 6 étapes, la dernière est étroite entre 1001 et 1100 px, l'intitulé doit pouvoir passer à la ligne. */
@media (max-width: 1100px) { .am-section .am-cycle__pill { white-space: normal; } }

/* ---- Pages Carrières (AW-62 à AW-64) ----------------------------------------- */
/* Héros : surtitre, titre, chapô et boutons à gauche, visuel 486 × 542 à droite */
.am-hero--media .am-hero__card { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-end; }
.am-hero-media { position: relative; z-index: 1; display: flex; align-items: center; gap: 48px; }
.am-hero-media__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 48px; }
.am-hero-media__title { display: flex; flex-direction: column; gap: 16px; }
.am-section .am-hero-media__lead { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-hero-media .wp-block-buttons { gap: 8px; margin: 0; }
.am-hero-media__visual { flex: 0 0 486px; height: 542px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-border); }
.am-section .am-hero-media__visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 1000px) {
	.am-hero-media { flex-direction: column; align-items: stretch; gap: 32px; }
	.am-hero-media__visual { flex: 0 0 auto; height: 320px; }
}
@media (max-width: 640px) { .am-hero-media__text { gap: 32px; } .am-hero-media__visual { height: 240px; border-radius: 20px; } }

/* Mosaïque photos + textes : 8 colonnes (3 + 2 + 3, puis 2 + 3 + 3), rangées de 324 et 429 px */
.am-mosaique { padding: 80px var(--am-pad); }
.am-mosaique > * { max-width: 1306px; margin-inline: auto; }
.am-mosaique__intro { display: flex; flex-direction: column; align-items: center; gap: 32px; padding-inline: 120px; margin-bottom: 80px; }
.am-mosaique__intro h2, .am-mosaique__intro p { margin: 0; }
.am-mosaique__intro .wp-block-buttons { margin: 0; }
.am-mosaique__grid { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-template-rows: minmax(324px, auto) minmax(429px, auto); gap: 8px; }
.am-mosaique__grid > :nth-child(1), .am-mosaique__grid > :nth-child(3), .am-mosaique__grid > :nth-child(5), .am-mosaique__grid > :nth-child(6) { grid-column: span 3; }
.am-mosaique__grid > :nth-child(2), .am-mosaique__grid > :nth-child(4) { grid-column: span 2; }
.am-mosaique__photo { margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-mosaique__photo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-mosaique__card { display: flex; flex-direction: column; gap: 32px; padding: 32px; background: var(--am-pale); border-radius: 30px; }
.am-mosaique__grid > .am-mosaique__card:nth-child(2) { justify-content: center; }
.am-section .am-mosaique__card h3 { margin: 0; font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-section .am-mosaique__card p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-mosaique__card p + p { margin-top: -8px; }
@media (max-width: 1000px) {
	.am-mosaique { padding-block: 48px; }
	.am-mosaique__intro { padding-inline: 0; margin-bottom: 40px; }
	.am-mosaique__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; }
	.am-mosaique .am-mosaique__grid > :nth-child(n) { grid-column: span 1; }
	.am-mosaique__photo { min-height: 240px; }
}
@media (max-width: 640px) {
	.am-mosaique__grid { grid-template-columns: minmax(0, 1fr); }
	.am-mosaique__card { padding: 24px; gap: 16px; }
	.am-section .am-mosaique__card h3 { font-size: 20px; }
	.am-section .am-mosaique__card p { font-size: 16px; line-height: 22px; }
}

/* Appel à l'action sans texte : titre en haut, deux boutons empilés en bas */
.am-cta-section--buttons .am-cta__text { min-height: 364px; justify-content: space-between; }
.am-cta-section--buttons .am-cta__text .wp-block-buttons { gap: 16px; margin-top: 32px; }

/* FAQ à titre fixe pendant le défilement des questions */
.am-faq--sticky .am-faq__layout > h2 { position: sticky; top: 24px; }
@media (max-width: 1000px) { .am-faq--sticky .am-faq__layout > h2 { position: static; } }

/* Texte + visuel côte à côte (intro « Vie d'agence ») ; variante chiffres clés (programme Addvise) */
.am-split { display: flex; align-items: flex-start; gap: 32px; max-width: 1312px; margin-inline: auto; padding: 80px var(--am-pad); box-sizing: content-box; }
.am-split__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.am-split__text h2, .am-split__text p { margin: 0; }
.am-split__text .wp-block-buttons { margin: 0; }
.am-split__visual { flex: 0 0 486px; height: 388px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-border); }
.am-section .am-split__visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-split--stats { align-items: stretch; }
.am-section .am-split__kicker { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; }
.am-split__body { display: flex; flex-direction: column; gap: 24px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-split__body p, .am-split__body ul { margin: 0; font-size: inherit; line-height: inherit; }
.am-split__body p + ul { margin-top: -24px; }
.am-split__body ul { padding-left: 24px; }
.am-split__stats { flex: 0 0 482px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 120px; padding: 80px 32px; box-sizing: border-box; background: var(--am-pale); border-radius: 30px; }
.am-split__stats .am-stat__value { margin: 0; font-size: 60px; line-height: 75px; }
.am-stat__unit { font-size: 24px; letter-spacing: 0.25px; }
.am-split__stats .am-stat__label { margin: 0; }
@media (max-width: 1000px) {
	.am-split { flex-direction: column; align-items: stretch; padding-block: 48px; }
	.am-split__visual { flex: 0 0 auto; height: 320px; }
	.am-split__stats { flex: 0 0 auto; gap: 48px; padding: 48px 24px; }
}
@media (max-width: 640px) {
	.am-split__visual { height: 240px; border-radius: 20px; }
	.am-split__body { font-size: 16px; line-height: 22px; }
	.am-split__stats .am-stat__value { font-size: 40px; line-height: 1.3; }
}

/* Cartes qui se déroulent au survol, visuel fixe à gauche */
.am-demarche--visual-left .am-demarche__visual { order: -1; }

/* Visuel qui change selon la carte survolée (pile d'images, la première reste l'image par défaut) */
.am-demarche--swap .am-demarche__visual .wp-block-image { position: absolute; inset: 0; margin: 0; opacity: 0; transition: opacity 0.4s ease; }
.am-demarche--swap .am-demarche__visual .wp-block-image:first-child { opacity: 1; }
@media (hover: hover) and (min-width: 1101px) {
	.am-demarche--swap:has(.am-demarche__card:hover) .am-demarche__visual .wp-block-image { opacity: 0; }
	.am-demarche--swap:has(.am-demarche__card:nth-child(1):hover) .am-demarche__visual .wp-block-image:nth-child(1),
	.am-demarche--swap:has(.am-demarche__card:nth-child(2):hover) .am-demarche__visual .wp-block-image:nth-child(2),
	.am-demarche--swap:has(.am-demarche__card:nth-child(3):hover) .am-demarche__visual .wp-block-image:nth-child(3),
	.am-demarche--swap:has(.am-demarche__card:nth-child(4):hover) .am-demarche__visual .wp-block-image:nth-child(4),
	.am-demarche--swap:has(.am-demarche__card:nth-child(5):hover) .am-demarche__visual .wp-block-image:nth-child(5) { opacity: 1; }
}
/* Tablette et mobile (pas de survol) : toutes les photos défilent au doigt, calées l'une après l'autre */
@media (max-width: 1100px) {
	.am-demarche--swap .am-demarche__visual { display: flex; gap: 12px; margin-bottom: 8px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; background: none; border-radius: 0; scrollbar-width: none; }
	.am-demarche--swap .am-demarche__visual::-webkit-scrollbar { display: none; }
	.am-demarche--swap .am-demarche__visual .wp-block-image { position: relative; flex: 0 0 85%; opacity: 1; scroll-snap-align: start; border-radius: 30px; overflow: hidden; background: #aeb5c6; }
}
@media (max-width: 640px) { .am-demarche--swap .am-demarche__visual .wp-block-image { border-radius: 20px; } }
@media (max-width: 1100px) { .am-demarche--swap .am-demarche__visual .wp-block-image img { border-radius: inherit; } }
@media (prefers-reduced-motion: reduce) { .am-demarche--swap .am-demarche__visual .wp-block-image { transition: none; } }

/* Galeries : intro centrée, couvertures de l'Amilnews et photos des agences */
.am-galerie { padding: 80px var(--am-pad); }
.am-galerie > * { max-width: 1312px; margin-inline: auto; }
.am-galerie__intro { display: flex; flex-direction: column; align-items: center; gap: 32px; padding-inline: 120px; margin-bottom: 32px; }
.am-galerie__intro h2, .am-galerie__intro p { margin: 0; }
.am-galerie__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; }
.am-amilnews { position: relative; height: 350px; overflow: hidden; border-radius: 30px; }
.am-amilnews .wp-block-image { height: 100%; margin: 0; }
.am-section .am-amilnews img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-galerie__photos.wp-block-gallery { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; }
.am-galerie__photos.wp-block-gallery > .wp-block-image { width: auto; height: 350px; margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-galerie__photos.wp-block-gallery img { width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 1100px) { .am-galerie__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 1000px) {
	.am-galerie { padding-block: 48px; }
	.am-galerie__intro { padding-inline: 0; }
	.am-galerie__photos.wp-block-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-galerie__photos.wp-block-gallery > .wp-block-image { height: 260px; }
}
@media (max-width: 640px) {
	.am-galerie__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.am-amilnews { height: auto; aspect-ratio: 500 / 704; border-radius: 20px; }
	.am-galerie__photos.wp-block-gallery { grid-template-columns: minmax(0, 1fr); }
	.am-galerie__photos.wp-block-gallery > .wp-block-image { height: 220px; border-radius: 20px; }
}

/* Encadré « transmission » : surtitre, titre, texte et citation centrés, décors aux angles */
.am-transmission { padding: 80px 16px; }
.am-transmission__box { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: center; gap: 64px; padding: 120px 48px; background: var(--am-pale); border-radius: 30px; text-align: center; }
.am-transmission__box::before, .am-transmission__box::after { content: ""; position: absolute; pointer-events: none; }
.am-transmission__box::before { left: -48px; top: -51px; width: 233px; height: 311px; background: url("../figma/jeunes-talents-deco-haut.svg") no-repeat 0 0 / 100% 100%; }
.am-transmission__box::after { right: -191px; bottom: -139px; width: 299px; height: 270px; background: url("../figma/jeunes-talents-deco-bas.svg") no-repeat 0 0 / 100% 100%; }
.am-transmission__intro { position: relative; display: flex; flex-direction: column; align-items: center; gap: 8px; max-width: 1312px; }
.am-transmission__intro h2 { margin: 0; }
.am-section .am-transmission__overline { margin: 0; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--am-muted); }
.am-section .am-transmission__text { max-width: 1072px; margin: 24px 0 0; font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-transmission__quote { position: relative; display: flex; flex-direction: column; align-items: center; gap: 16px; max-width: 800px; margin: 0; padding: 0; border: 0; }
.am-section .am-transmission__quote p { margin: 0; font-size: 32px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-transmission__muted { color: var(--am-muted); }
.am-transmission__quote cite { font-size: 24px; line-height: normal; font-weight: 600; font-style: normal; letter-spacing: 0.25px; color: var(--am-muted); }
@media (max-width: 1000px) { .am-transmission { padding-block: 48px; } .am-transmission__box { padding: 72px 24px; gap: 40px; } }
@media (max-width: 640px) {
	.am-transmission__box { padding: 56px 20px; border-radius: 20px; }
	.am-transmission__box::before { transform: scale(0.6); transform-origin: 0 0; }
	.am-transmission__box::after { display: none; }
	.am-section .am-transmission__overline { font-size: 18px; }
	.am-section .am-transmission__quote p { font-size: 22px; }
	.am-transmission__quote cite { font-size: 18px; }
}

/* Texte + illustration (visuel contenu, sans fond) */
.am-split--illustration { align-items: center; }
.am-split--illustration .am-split__visual { flex-basis: 543px; height: auto; border-radius: 0; background: none; }
.am-section .am-split--illustration .am-split__visual img { height: auto; object-fit: contain; }

/* Chiffre clé + texte : deux encadrés côte à côte */
.am-chiffre-texte { display: flex; align-items: stretch; gap: 16px; max-width: 1312px; margin-inline: auto; padding: 80px var(--am-pad); box-sizing: content-box; }
.am-chiffre-texte__stat { flex: 0 0 482px; justify-content: center; padding: 32px; box-sizing: border-box; background: var(--am-pale); border-radius: 30px; }
.am-chiffre-texte__stat .am-stat__value { margin: 0; font-size: 60px; line-height: 75px; }
.am-chiffre-texte__stat .am-stat__label { margin: 0; white-space: normal; }
.am-chiffre-texte__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; padding: 32px; background: var(--am-grey); border-radius: 30px; }
.am-chiffre-texte__text h2 { margin: 0; }
.am-chiffre-texte .am-split__body { gap: 0; }
@media (max-width: 1000px) { .am-chiffre-texte { flex-direction: column; padding-block: 48px; } .am-chiffre-texte__stat { flex: 0 0 auto; } }
@media (max-width: 640px) { .am-chiffre-texte__stat .am-stat__value { font-size: 40px; line-height: 1.3; } .am-chiffre-texte__text { padding: 24px; gap: 24px; } }

/* Titre, texte et bouton centrés, version resserrée */
.am-centered--compact { gap: 32px; padding-block: 80px; }

/* Villes et carte de France dans un encadré pâle */
.am-villes { padding: 80px 16px; }
.am-villes__box { display: flex; flex-direction: column; gap: 64px; padding: 80px 48px 64px; background: var(--am-pale); border-radius: 30px; }
.am-villes__intro { display: flex; flex-direction: column; align-items: center; gap: 24px; padding-inline: 120px; }
.am-villes__intro h2, .am-villes__intro p { margin: 0; }
.am-villes__layout { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; width: 100%; margin-inline: auto; }
.am-villes__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; margin: 0; padding: 0; list-style: none; }
.am-villes__list li { margin: 0; padding: 24px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 30px; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-villes__carte { position: sticky; top: 24px; flex: 0 0 814px; margin: 0; }
.am-section .am-villes__carte img { display: block; width: 100%; height: auto; }
@media (max-width: 1100px) { .am-villes__carte { flex-basis: 55%; } }
@media (max-width: 900px) {
	.am-villes { padding-block: 48px; }
	.am-villes__box { padding: 48px 24px; gap: 40px; }
	.am-villes__intro { padding-inline: 0; }
	.am-villes__layout { flex-direction: column; gap: 32px; }
	.am-villes__list { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
	.am-villes__carte { position: static; flex: 0 0 auto; width: 100%; }
}
@media (max-width: 640px) { .am-villes__box { border-radius: 20px; } .am-villes__list li { padding: 16px; font-size: 18px; border-radius: 20px; } }

/* Cartes qui se déroulent : chapô sous le titre, listes dans le texte */
.am-demarche > .am-subtitle { max-width: 1312px; margin: -40px auto 64px; }
.am-demarche__text ul { margin: 0; padding: 0 0 0 24px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 640px) { .am-demarche > .am-subtitle { margin: -24px auto 40px; } }

/* ---- Page « Notre méthode » (AW-91) ----------------------------------------------------------------------- */
/* Héro : deux boutons empilés, le second en contour sombre */
.am-hero--methode h1 { max-width: 703px; }
@media (min-width: 1001px) { .am-hero--methode .am-hero__card { padding-top: 204px; } }
.am-hero__actions { flex-direction: column; align-items: flex-start; gap: 24px; }
.am-btn--line .wp-block-button__link { height: 56px; box-sizing: border-box; padding: 8px 8px 8px 24px; border: 1px solid var(--wp--preset--color--bluck); background: transparent; color: var(--wp--preset--color--bluck); }
.am-btn--line .wp-block-button__link::after { width: 40px; height: 40px; background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 24px no-repeat; }
.am-btn--line .wp-block-button__link:hover { background: var(--wp--preset--color--bluck); color: #fff; }
.am-btn--line .wp-block-button__link:hover::after { background-color: #fff; background-image: url("../figma/arrow-up-right.svg"); }

/* Quatre repères : cartes qui se retournent au survol (photo et titre au recto, texte au verso) */
.am-flips { padding-block: 80px; }
.am-flips > h2 { max-width: 1312px; margin: 0 auto 64px; }
.am-flips__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-flip { position: relative; min-height: 350px; border-radius: 30px; }
.am-flip__front { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 350px; padding: 16px; box-sizing: border-box; overflow: hidden; border-radius: 30px; color: #fff; background: var(--am-muted); }
.am-flip__front::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11, 19, 43, 0) 30%, rgba(11, 19, 43, 0.6) 100%); }
.am-flip__img { position: absolute; inset: 0; margin: 0; }
.am-section .am-flip__img img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-flip__front > :not(.am-flip__img) { position: relative; z-index: 1; }
.am-section p.am-flip__num { font-size: 96px; line-height: normal; font-weight: 600; color: #fff; }
.am-section .am-flip__front h3 { font-size: 40px; line-height: 53.7px; letter-spacing: -0.5px; color: #fff; }
.am-flip__back { display: flex; flex-direction: column; justify-content: flex-end; gap: 16px; padding: 40px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); color: var(--wp--preset--color--bluck); }
.am-section p.am-flip__title { margin-bottom: 0; font-size: 40px; line-height: 53.7px; font-weight: 600; letter-spacing: -0.5px; }
.am-flip__back p:not(.am-flip__title) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-flip__back p + p:not(.am-flip__title) { margin-top: 8px; }
@media (hover: hover) and (min-width: 1101px) {
	.am-flip { perspective: 1600px; }
	/* La face masquée bascule en visibility: hidden à mi-rotation : le verso ne transparaît jamais, même sans backface-visibility. */
	.am-flip__front, .am-flip__back { position: absolute; inset: 0; backface-visibility: hidden; transition: transform 0.9s cubic-bezier(0.45, 0, 0.55, 1), visibility 0s linear 0.45s; }
	.am-flip__back { transform: rotateY(180deg); visibility: hidden; }
	.am-flip:hover .am-flip__front { transform: rotateY(-180deg); visibility: hidden; }
	.am-flip:hover .am-flip__back { transform: rotateY(0deg); visibility: visible; }
}
@media (hover: hover) and (min-width: 1101px) and (prefers-reduced-motion: reduce) {
	.am-flip__front, .am-flip__back, .am-flip:hover .am-flip__front, .am-flip:hover .am-flip__back { transform: none; transition: none; }
}
/* Écrans tactiles et tablettes : le verso s'affiche sous le recto */
@media not ((hover: hover) and (min-width: 1101px)) {
	.am-flip { display: flex; flex-direction: column; gap: 8px; }
	.am-flip__front { min-height: 280px; }
	.am-flip__back { padding: 32px; }
	.am-flip__back .am-flip__title { display: none; }
}
@media (max-width: 1000px) { .am-flips { padding-block: 48px; } .am-flips > h2 { margin-bottom: 40px; } }
@media (max-width: 640px) {
	.am-flips__grid { grid-template-columns: minmax(0, 1fr); }
	.am-section p.am-flip__num { font-size: 64px; }
	.am-section .am-flip__front h3 { font-size: 28px; line-height: 1.25; }
	.am-flip__back { padding: 24px; }
	.am-flip__back p:not(.am-flip__title) { font-size: 18px; }
}

/* Du besoin à l'exécution : mosaïque de six cartes sur huit colonnes (3 + 2 + 3 / 3 + 3 + 2), lignes de 350 px */
.am-bento8 { padding-block: 80px; }
.am-bento8__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1072px; margin: 0 auto 80px; }
.am-bento8__grid { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-auto-rows: 350px; gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-bento8__card { grid-column: span 3; display: flex; flex-direction: column; justify-content: center; gap: 32px; padding: 32px; box-sizing: border-box; overflow: hidden; border-radius: 30px; background: var(--am-grey); }
.am-bento8__card:nth-child(1), .am-bento8__card:nth-child(3), .am-bento8__card:nth-child(5) { background: var(--am-pale); }
.am-bento8__card:nth-child(2), .am-bento8__card:nth-child(6) { grid-column: span 2; }
.am-bento8__card--stack { justify-content: flex-end; gap: 16px; }
.am-bento8__card--row { flex-direction: row; align-items: center; }
.am-bento8__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.am-section .am-bento8__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-bento8__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: #000; }
.am-bento8__illu { flex: 0 0 auto; margin: 0; }
.am-section .am-bento8__illu img { display: block; height: auto; }
.am-section .am-bento8__illu--puzzle img { width: 162px; }
.am-section .am-bento8__illu--tableau img { width: 125px; }
.am-section .am-bento8__illu--engrenages img { width: 192px; }
@media (max-width: 1100px) {
	.am-bento8__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
	.am-bento8__card, .am-bento8__card:nth-child(2), .am-bento8__card:nth-child(6) { grid-column: auto; min-height: 280px; }
}
@media (max-width: 1000px) { .am-bento8 { padding-block: 48px; } .am-bento8__intro { margin-bottom: 40px; } }
@media (max-width: 640px) {
	.am-bento8__grid { grid-template-columns: minmax(0, 1fr); }
	.am-bento8__card, .am-bento8__card:nth-child(2), .am-bento8__card:nth-child(6) { min-height: 0; padding: 24px; }
	.am-bento8__card--row { flex-direction: column; align-items: flex-start; }
	.am-bento8__card p { font-size: 18px; }
}

/* Réduire les zones floues : texte à gauche (482 px), quatre cartes de 375 px à droite */
.am-zones { padding-block: 80px; }
.am-zones__layout { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; margin-inline: auto; }
.am-zones__intro { flex: 0 0 482px; display: flex; flex-direction: column; gap: 32px; }
.am-zones__intro p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-zones__intro p + p { margin-top: -8px; }
.am-zones__grid { flex: 1 1 0; min-width: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 375px)); gap: 8px; justify-content: end; }
.am-zones__card { display: flex; flex-direction: column; gap: 32px; min-height: 329px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); }
.am-section .am-zones__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-zones__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-zones__media { position: relative; min-height: 329px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-zones__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
@media (max-width: 1100px) { .am-zones__layout { flex-direction: column; gap: 40px; } .am-zones__intro { flex-basis: auto; } .am-zones__grid { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 1000px) { .am-zones { padding-block: 48px; } }
@media (max-width: 640px) {
	.am-zones__grid { grid-template-columns: minmax(0, 1fr); }
	.am-zones__card { min-height: 0; gap: 16px; padding: 24px; }
	.am-zones__media { min-height: 220px; }
	.am-zones__intro p, .am-zones__card p { font-size: 18px; }
}

/* Le bon accompagnement : quatre cartes blanches (icône, titre, texte) en 2 × 2 dans l'encadré bleu */
.am-acc-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.am-acc-tile { position: relative; display: flex; flex-direction: column; gap: 24px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: #fff; transition: box-shadow 0.2s ease; }
.am-acc-tile__icon { margin: 0; }
.am-section .am-acc-tile__icon img { display: block; width: 56px; height: 56px; }
.am-section .am-acc-tile h3 { margin-top: 0; font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-acc-tile h3 a { color: inherit; text-decoration: none; }
/* Même interaction que .am-pillars--links : toute la tuile est cliquable, une flèche apparaît au survol. */
.am-acc-tile h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-acc-tile h3 a:focus-visible { outline: none; }
.am-acc-tile:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-acc-tile:has(h3 a)::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-acc-tile:has(h3 a):hover, .am-acc-tile:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-acc-tile:has(h3 a):hover::before, .am-acc-tile:has(a:focus-visible)::before { opacity: 1; transform: none; }
@media (hover: none) { .am-acc-tile:has(h3 a)::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-acc-tile, .am-acc-tile:has(h3 a)::before { transition: none; } }
.am-acc-tile p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 900px) { .am-acc-grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .am-acc-tile { padding: 24px; } .am-acc-tile p { font-size: 18px; } .am-acc-tile:has(h3 a)::before { top: 24px; right: 24px; } }

/* ---- Navigation au défilement (AW-68) ------------------------------------- */
/* En-tête dynamique : fixé en haut quand on remonte, glisse hors de l'écran quand on descend (assets/js/scroll-ui.js). */
.wp-site-blocks > header.am-site-header.is-fixed { position: fixed; inset: 0 0 auto; z-index: 100; width: 100%; max-width: var(--am-max-width); margin-inline: auto; transition: transform 0.3s ease; }
.wp-site-blocks > header.am-site-header.is-fixed.is-hidden { transform: translateY(-100%); }
.wp-site-blocks > header.am-site-header.is-fixed.is-hidden:focus-within { transform: none; }
.am-site-header.is-fixed .am-header { padding-block: 12px; }
/* Le défilement de la page ne saute pas quand l'en-tête quitte le flux (pages sans héro flottant). */
html.am-header-fixed body:not(.home):not(.page-template-page-landing) .wp-site-blocks:not(:has(> .am-main > .am-hero:first-child, > .am-main > .am-content:first-child > .am-hero:first-child)) { padding-top: var(--am-header-h); }
@media (max-width: 1100px) { .am-site-header.is-fixed .am-header { padding-block: 8px; } }
/* Bouton « Retour en haut de page » : flèche en contour, fixe en bas à droite. */
.am-top { position: fixed; right: 24px; bottom: 24px; z-index: 90; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 56px; height: 56px; padding: 0; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: #fff; color: var(--wp--preset--color--bluck); box-shadow: 0 3px 6px rgba(33, 33, 33, 0.1); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s, background-color 0.2s ease, color 0.2s ease; }
.am-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.am-top:hover { background: var(--wp--preset--color--bluck); color: #fff; }
.am-top:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
@media (max-width: 640px) { .am-top { right: 16px; bottom: 16px; width: 48px; height: 48px; } }

/* ---- Page Design produit ------------------------------------------------- */
/* Trois expertises : grille de 5 colonnes (2/3) sur deux rangées */
.am-trio { padding-block: 80px; }
.am-trio .am-besoin__intro { margin-bottom: 32px; }
.am-trio__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); grid-template-rows: minmax(464px, auto) minmax(344px, auto); gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-trio__cell { box-sizing: border-box; display: flex; align-items: center; overflow: hidden; border-radius: 30px; background: var(--am-grey); }
.am-trio__cell--ux { grid-column: span 2; padding: 32px; }
.am-trio__cell--pm { grid-column: span 3; justify-content: space-between; gap: 48px; padding: 32px 48px; background: var(--am-pale); }
.am-trio__cell--media { position: relative; grid-column: span 2; background: #aeb5c6; }
.am-trio__cell--ds { grid-column: span 3; justify-content: center; padding: 32px 64px; }
.am-trio__text { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.am-trio__cell--pm .am-trio__text { flex: 0 0 min(400px, 55%); }
.am-trio__text h3 { font-size: 32px; line-height: normal; letter-spacing: 0.25px; }
.am-trio__text p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: #000; }
.am-trio__illu { flex: 1 1 0; min-width: 0; margin: 0; }
.am-section .am-trio__illu img { display: block; width: 100%; height: auto; max-width: none; border-radius: 0; }
.am-trio__media { position: absolute; inset: 0; margin: 0; }
.am-section .am-trio__media img { display: block; width: 100%; height: 100%; max-width: none; border-radius: 0; object-fit: cover; }
@media (max-width: 1100px) {
	.am-trio { padding-block: 48px; }
	.am-trio__grid { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
	.am-trio__cell--ux, .am-trio__cell--pm, .am-trio__cell--media, .am-trio__cell--ds { grid-column: auto; }
	.am-trio__cell--media { min-height: 280px; }
}
@media (max-width: 640px) {
	.am-trio__cell--ux, .am-trio__cell--ds { padding: 24px; }
	.am-trio__cell--pm { flex-direction: column; align-items: flex-start; gap: 24px; padding: 24px; }
	.am-trio__cell--pm .am-trio__text { flex-basis: auto; }
	.am-trio__text h3 { font-size: 24px; }
	.am-trio__illu { align-self: center; width: min(100%, 240px); flex: 0 0 auto; }
}
/* Processus produit : titre et chapô à gauche, cartes dépliables et visuel fixe (composant am-demarche) */
.am-demarche__head { display: flex; flex-direction: column; gap: 32px; max-width: 1312px; margin: 0 auto 64px; }
.am-demarche__head > * { max-width: 664px; margin: 0; }
@media (max-width: 640px) { .am-demarche__head { gap: 24px; margin-bottom: 40px; } }
/* Accompagnement fonctionnel : cartes numérotées */
.am-pillars--num { gap: 8px; }
.am-pillars--num .am-pillar { gap: 24px; justify-content: flex-start; min-height: 0; }
.am-pillar__head { display: flex; flex-direction: column; gap: 24px; }
.am-pillar--num p.am-pillar__num { margin: 0; font-size: 64px; line-height: normal; font-weight: 600; letter-spacing: 0; color: #aeb5c6; }
@media (max-width: 640px) { .am-pillar--num p.am-pillar__num { font-size: 40px; } }
.am-accompagnements__intro--fit h2 { max-width: 900px; margin-inline: auto; }
.am-accompagnements__intro--fit .am-accompagnements__lead { max-width: 960px; margin-inline: auto; }
/* Cas client : première rangée haute, texte calé en bas ; encart réalisations : même hauteur que la maquette */
.am-cta-section--case .am-cta:first-child { min-height: 388px; }
.am-cta-section--case .am-cta:first-child .am-cta__text { justify-content: space-between; }
.am-cta-section--tall .am-cta__text { min-height: 396px; justify-content: space-between; }
.am-cta-section--tall .am-cta__text .wp-block-buttons { margin-top: 0; }
@media (max-width: 1000px) { .am-cta-section--case .am-cta:first-child, .am-cta-section--tall .am-cta__text { min-height: 0; } }

/* ---- Pages « Vos enjeux » : Cadrer, Renforcer, Data & IA (AW-72, AW-73, AW-74) ------------------------------- */
/* Situations : grille de 8 colonnes, cellules claires avec illustration (Cadrer : 2 lignes de 348 px, Renforcer : 380 px). */
.am-situations { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); grid-auto-rows: minmax(348px, auto); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-situations--tall { grid-auto-rows: minmax(380px, auto); }
.am-sit { grid-column: span 3; display: flex; flex-direction: column; gap: 16px; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; }
.am-sit--2 { grid-column: span 2; }
.am-sit--5 { grid-column: span 5; }
.am-sit--pale { background: var(--am-pale); }
.am-sit--sky { background: var(--am-sky); }
.am-sit--center { justify-content: center; }
.am-sit__text { display: flex; flex-direction: column; gap: 16px; }
.am-sit h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-sit p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-sit__illu { flex: 1 1 0; min-height: 0; display: flex; align-items: flex-end; margin: 0; }
.am-sit__illu--right { justify-content: flex-end; }
.am-sit__illu--center { justify-content: center; align-items: center; }
.am-section .am-sit__illu img { display: block; max-width: 100%; max-height: 100%; height: auto; }
.am-sit--row { flex-direction: row; align-items: stretch; gap: 32px; }
.am-sit--row .am-sit__text { flex: 0 0 390px; max-width: 45%; }
.am-sit--row.am-sit--narrow .am-sit__text { flex-basis: 285px; }
.am-sit--4 { grid-column: span 4; }
/* Moderniser une application ou un SI (AW-77) : lignes de 400 px, texte et illustration à parts égales sur les cartes en ligne. */
.am-situations--moderniser { grid-auto-rows: minmax(400px, auto); }
.am-situations--moderniser .am-sit--row .am-sit__text { flex: 1 1 0; max-width: none; }
.am-situations--moderniser .am-sit--row.am-sit--center .am-sit__text { justify-content: center; }
.am-situations--moderniser .am-sit--row .am-sit__illu { align-items: center; }
.am-situations--moderniser .am-sit--row .am-sit__illu--right { flex: 0 0 auto; }
@media (max-width: 1000px) {
	.am-situations, .am-situations--tall { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; }
	.am-sit, .am-sit--2 { grid-column: span 1; }
	.am-sit--5, .am-sit--4 { grid-column: span 2; }
	.am-situations--moderniser .am-sit:last-child { grid-column: span 2; }
	.am-situations--moderniser .am-sit--row:not(.am-sit--4) { flex-direction: column; }
	.am-situations--moderniser .am-sit--row:not(.am-sit--4) .am-sit__text { flex: 0 0 auto; }
	.am-sit__illu { flex: 0 0 auto; padding-top: 16px; }
}
@media (max-width: 640px) {
	.am-situations, .am-situations--tall { grid-template-columns: minmax(0, 1fr); }
	.am-sit, .am-sit--2, .am-sit--4, .am-sit--5 { grid-column: span 1; padding: 24px; }
	.am-sit--row { flex-direction: column; gap: 16px; }
	.am-sit--row .am-sit__text, .am-sit--row.am-sit--narrow .am-sit__text { flex: 0 0 auto; max-width: none; }
}

/* Héro : colonne de titre plus large que le texte (Renforcer : H1 sur trois lignes). */
.am-hero-page__cols--lead > .wp-block-column:first-child { flex: 782 1 0; }
.am-hero-page__cols--lead > .wp-block-column:last-child { flex: 498 1 0; }
@media (max-width: 1000px) { .am-hero-page__cols--lead > .wp-block-column:first-child, .am-hero-page__cols--lead > .wp-block-column:last-child { flex: 0 0 auto; } }

/* Héro avec trois paragraphes et deux boutons : la maquette tient dans 800 px (marges verticales de 40 px au lieu de 80 px). */
.am-hero--dense .am-hero-page__body { padding-block: 40px; }
@media (max-width: 1000px) { .am-hero--dense .am-hero-page__body { padding-block: 32px; } }

/* Accompagnements : chapô de 974 px (maquettes Enjeux). */
.am-accompagnements__intro--wide .am-accompagnements__lead { max-width: 974px; }

/* Gabarit « besoin + tuiles » : le conteneur .am-split défini pour le héro à visuel (padding de 80 px, gap de 32 px) ne s'applique pas ici. */
.am-besoin--split > .am-split { gap: 64px; padding: 0; box-sizing: border-box; }
@media (max-width: 1000px) { .am-besoin--split > .am-split { gap: 40px; } }

/* Tuiles de couleur : la dernière tuile des pages Enjeux se distingue (bleu ciel ou lilas pâle). */
.am-tile--sky { background: var(--am-sky); }
.am-tile--pale { background: var(--am-pale); }
.am-tiles--tall .am-tile--pale { background: var(--am-pale); }
.am-tiles--tall:not(.am-tiles--duo) { gap: 16px; }

/* Cadrer : « Ce que notre cadrage doit vous permettre d'engager » (texte + illustration). */
.am-cadrage { padding-block: 80px; }
.am-cadrage__layout { display: flex; align-items: center; gap: 32px; max-width: 1312px; margin-inline: auto; }
.am-cadrage__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; }
.am-cadrage__lead p, .am-cadrage__list { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-cadrage__list { padding: 0; list-style: none; }
.am-cadrage__list li::before { content: "- "; }
.am-cadrage__note { display: flex; flex-direction: column; gap: 10px; box-sizing: border-box; width: 100%; padding: 32px; background: var(--am-pale); border-radius: 30px; }
.am-cadrage__note h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-cadrage__note p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-cadrage .wp-block-buttons { margin: 0; }
.am-cadrage__visual { flex: 0 0 543px; max-width: 45%; margin: 0; }
.am-section .am-cadrage__visual img { display: block; width: 100%; height: auto; }
@media (max-width: 1000px) {
	.am-cadrage { padding-block: 48px; }
	.am-cadrage__layout { flex-direction: column; align-items: stretch; }
	.am-cadrage__visual { flex: 0 0 auto; max-width: 480px; align-self: center; }
}

/* Expertises sur fond sombre : cartes blanches cliquables (Cadrer, Data & IA). */
.am-xpert { padding: 16px 16px 0; }
.am-xpert__box { display: flex; flex-direction: column; gap: 64px; box-sizing: border-box; padding: 80px; background: var(--wp--preset--color--bluck); border-radius: 30px; }
.am-xpert__head { display: flex; align-items: flex-start; gap: 16px; padding-block: 16px; }
.am-xpert__intro { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 24px; }
.am-section .am-xpert__intro h2, .am-xpert__intro p { color: #fff; }
.am-xpert__intro p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-xpert__head .wp-block-buttons { flex: 0 0 auto; margin: 0; }
.am-xpert__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.am-xpert__card { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; box-sizing: border-box; min-height: 351px; padding: 32px; background: #fff; border-radius: 30px; transition: box-shadow 0.2s ease; }
.am-xpert__text { display: flex; flex-direction: column; gap: 16px; }
.am-xpert__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-xpert__card p:not(.am-chip) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-xpert__card h3 a, .am-expcard h3 a { color: inherit; text-decoration: none; }
.am-xpert__card h3 a::after, .am-expcard h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-xpert__card h3 a:focus-visible, .am-expcard h3 a:focus-visible { outline: none; }
.am-xpert__card:has(a:focus-visible), .am-expcard:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
@media (max-width: 1100px) { .am-xpert__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .am-xpert__box { padding: 48px 32px; gap: 40px; } }
@media (max-width: 900px) { .am-xpert__head { flex-direction: column; gap: 24px; } }
@media (max-width: 640px) { .am-xpert__box { padding: 32px 20px; border-radius: 20px; } .am-xpert__grid { grid-template-columns: minmax(0, 1fr); } .am-xpert__card { min-height: 0; padding: 24px; } }

/* Renforcer : grille d'expertises (titre, carte large puis six cartes). */
.am-expertises-grid { padding-block: 96px 0; }
.am-expgrid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-expgrid__title { grid-column: span 3; padding: 32px; box-sizing: border-box; }
.am-expcard { position: relative; grid-column: span 2; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; box-sizing: border-box; padding: 32px; background: var(--am-grey); border-radius: 30px; transition: box-shadow 0.2s ease; }
.am-expcard--wide { grid-column: span 3; min-height: 224px; }
.am-expcard__text { display: flex; flex-direction: column; gap: 16px; }
.am-expcard h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; }
.am-expcard p:not(.am-chip) { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
@media (max-width: 1000px) {
	.am-expertises-grid { padding-block: 48px 0; }
	.am-expgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-expgrid__title { padding: 0; }
	.am-expcard { grid-column: span 1; min-height: 0; }
	.am-expgrid__title, .am-expcard--wide { grid-column: span 2; }
}
@media (max-width: 640px) { .am-expgrid { grid-template-columns: minmax(0, 1fr); } .am-expgrid__title, .am-expcard, .am-expcard--wide { grid-column: span 1; } .am-expcard { padding: 24px; } }

/* Cartes d'expertise : toute la carte est le lien ; l'ombre signale le survol et le focus. */
.am-xpert__card:hover, .am-xpert__card:has(a:focus-visible), .am-expcard:hover, .am-expcard:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
@media (prefers-reduced-motion: reduce) { .am-xpert__card, .am-expcard { transition: none; } }
/* AW-116 : même interaction que .am-pillars--links, une flèche apparaît au survol des cartes d'expertise. */
.am-expcard:has(h3 a)::before { content: ""; position: absolute; top: 32px; right: 32px; box-sizing: border-box; width: 48px; height: 48px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 50%; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; opacity: 0; transform: scale(0.8); transition: opacity 0.2s ease, transform 0.2s ease; }
.am-expcard:has(h3 a):hover::before, .am-expcard:has(a:focus-visible)::before { opacity: 1; transform: none; }
.am-expcard:has(h3 a) h3 { min-height: 48px; padding-right: 72px; box-sizing: border-box; }
@media (hover: none) { .am-expcard:has(h3 a)::before { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .am-expcard:has(h3 a)::before { transition: none; } }
@media (max-width: 640px) { .am-expcard:has(h3 a)::before { top: 24px; right: 24px; } }

/* Data & IA : accordéon des situations (titre fixe pendant le défilement des cartes). */
.am-enjeux--situations .am-enjeux__intro { gap: 32px; }
.am-enjeux--situations .am-enjeux__intro p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-enjeux--situations .am-accordions { gap: 16px; }
.am-enjeux--situations .am-accordions .wp-block-details summary { gap: 0; }

/* Data & IA : « Comment Amiltone vous accompagne » réutilise la frise de cartes qui se déplient (.am-method / .am-steps) : chapô de 714 px, cartes de 376 px. */
.am-method__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1312px; margin: 0 auto 40px; }
.am-method__intro h2 { margin: 0; color: var(--wp--preset--color--bluck); }
.am-method__intro .am-subtitle { margin: 0; }
.am-method--data .am-method__intro :is(h2, .am-subtitle) { max-width: 714px; }
/* Sur grand écran avec survol, le texte masqué ne réserve pas de place : les cartes gardent la hauteur de la maquette (376 px). */
@media (max-width: 1100px) and (min-width: 641px) { .am-method--data .am-step { flex-basis: calc(50% - 12px); } }
@media (hover: hover) and (min-width: 1101px) {
	.am-method--data .am-step { min-height: 376px; }
	.am-method--data .am-step__text { position: relative; }
	.am-method--data .am-step__text p { position: absolute; top: 100%; left: 0; margin-top: 16px; }
}
.am-accompagnements__cta { position: relative; z-index: 1; justify-content: center; margin: 0; }
/* Hauteurs de la maquette : le titre du cas client et celui du CTA final occupent un bloc de 108 px, centré. */
.am-cta-section--case .am-cta__title, .am-cta-section--tall .am-cta__title { display: flex; align-items: center; min-height: 108px; }
@media (max-width: 1000px) { .am-cta-section--case .am-cta__title, .am-cta-section--tall .am-cta__title { min-height: 0; } }

/* ---- Page « Nos engagements » (AW-92) ---------------------------------------------------------------------- */
/* Héro : colonne du titre de 703 px, carte haute comme sur Notre méthode */
@media (min-width: 1001px) {
	.am-hero--engagements .am-hero__card { padding-top: 204px; }
	.am-hero--engagements .am-hero-page__cols > .wp-block-column:first-child { flex: 0 0 min(703px, 55%); }
}
/* Dernier appel à l'action : carte de 420 px */
.am-cta-section--tall.am-cta-section--420 .am-cta__text { min-height: 420px; }

/* Notre engagement RSE : fleur fixe à gauche pendant que les cartes défilent ; les pétales sans rapport avec la carte
   visible sont estompés par un voile blanc (assets/js/rse.js). Sans JS, la fleur reste entièrement colorée. */
.am-rse { padding-block: 80px; }
.am-rse__intro { display: flex; flex-direction: column; gap: 24px; max-width: 1312px; margin: 0 auto 64px; }
.am-rse__intro p { max-width: 812px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-rse__layout { display: flex; align-items: flex-start; justify-content: space-between; gap: 54px; max-width: 1312px; margin-inline: auto; }
.am-rse__flower { position: sticky; top: 104px; flex: 0 1 600px; min-width: 0; margin: 32px; }
.am-rse__flower > figure { margin: 0; }
.am-section .am-rse__base img { display: block; width: 100%; height: auto; }
.am-rse__veil { position: absolute; left: 4%; top: 0.16%; width: 92.02%; opacity: 0; transition: opacity 0.35s ease; pointer-events: none; }
.am-section .am-rse__veil img { display: block; width: 100%; height: auto; }
.am-rse[data-rse] .am-rse__veil { opacity: 0.72; }
.am-rse[data-rse="gouvernance"] .am-rse__veil--gouvernance, .am-rse[data-rse="social"] .am-rse__veil--social, .am-rse[data-rse="environnement"] .am-rse__veil--environnement, .am-rse[data-rse="loyaute"] .am-rse__veil--loyaute { opacity: 0; }
.am-rse__cards { flex: 0 0 591px; display: flex; flex-direction: column; gap: 16px; }
.am-rse__card { display: flex; flex-direction: column; gap: 32px; padding: 32px; border-radius: 30px; background: rgba(219, 232, 248, 0.5); transition: box-shadow 0.3s ease; }
.am-rse__card--social { background: rgba(177, 53, 134, 0.1); }
.am-rse__card--environnement { background: rgba(127, 35, 116, 0.1); }
.am-rse__card--loyaute { background: rgba(239, 199, 81, 0.2); }
.am-rse__card.is-active { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-section .am-rse__card h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-rse__card ul { margin: 0; padding-left: 28px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (prefers-reduced-motion: reduce) { .am-rse__veil, .am-rse__card { transition: none; } }
@media (max-width: 1100px) {
	.am-rse__layout { flex-direction: column; align-items: center; gap: 32px; }
	.am-rse__flower { position: relative; top: 0; flex: 0 0 auto; width: min(520px, 100%); margin: 0; }
	.am-rse__cards { flex: 0 0 auto; width: 100%; }
}
@media (max-width: 1000px) { .am-rse { padding-block: 48px; } .am-rse__intro { margin-bottom: 40px; } }
@media (max-width: 640px) { .am-rse__intro p, .am-rse__card ul { font-size: 18px; } .am-rse__card { gap: 16px; padding: 24px; } }

/* Axes d'action : composant produits de la page Innovation, cartes bleu ciel à motif, listes à puces */
.am-products-section--axes .am-besoin__intro h2 { margin-inline: auto; }
.am-products-section--axes .am-product__panel { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-sky); }
.am-product__body--list ul { margin: 0; padding-left: 28px; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }

/* Indicateurs : deux chiffres empilés, encadré EcoVadis et visuel (384 / 384 / 525 px) */
.am-indic { padding-block: 80px; }
.am-indic__intro { display: flex; flex-direction: column; gap: 32px; max-width: 1072px; margin: 0 auto 64px; }
.am-indic__grid { display: grid; grid-template-columns: minmax(0, 384fr) minmax(0, 384fr) minmax(0, 525fr); grid-template-rows: auto auto; gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-indic__card { display: flex; flex-direction: column; gap: 24px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); }
.am-indic__card p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-section .am-indic__card p.am-indic__value { font-size: 40px; line-height: 53.7px; font-weight: 600; letter-spacing: -0.5px; text-align: center; color: var(--am-pink); }
.am-indic__card:nth-child(1) { grid-column: 1; grid-row: 1; }
.am-indic__card:nth-child(3) { grid-column: 1; grid-row: 2; }
.am-indic__card--eco { grid-column: 2; grid-row: 1 / span 2; background: var(--am-pale); }
.am-indic__eco-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.am-section .am-indic__eco-head p.am-indic__value { text-align: left; }
.am-indic__badge { flex: 0 0 113px; margin: 0; }
.am-section .am-indic__badge img { display: block; width: 113px; height: auto; }
.am-indic__card--eco .wp-block-buttons { margin-top: auto; }
.am-indic__media { grid-column: 3; grid-row: 1 / span 2; position: relative; min-height: 552px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-indic__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
@media (max-width: 1100px) {
	.am-indic__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-indic__media { grid-column: 1 / -1; grid-row: auto; min-height: 320px; }
}
@media (max-width: 1000px) { .am-indic { padding-block: 48px; } .am-indic__intro { margin-bottom: 40px; } }
@media (max-width: 640px) {
	.am-indic__grid { grid-template-columns: minmax(0, 1fr); }
	.am-indic__card:nth-child(1), .am-indic__card:nth-child(3), .am-indic__card--eco { grid-column: auto; grid-row: auto; }
	.am-indic__media { min-height: 220px; }
	.am-indic__card { padding: 24px; }
	.am-section .am-indic__card p.am-indic__value { font-size: 32px; line-height: 1.3; }
	.am-indic__card p { font-size: 18px; }
}

/* Démarches reconnues : titre et visuel fixes à gauche (577 px), accordéon à droite */
.am-enjeux--demarches .am-enjeux__intro { gap: 40px; }
.am-enjeux__media { position: relative; height: 324px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-enjeux__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-enjeux--demarches .am-accordions { gap: 16px; }
.am-accordions .am-demarche__body { display: flex; align-items: center; gap: 24px; }
.am-demarche__body p { flex: 1 1 0; min-width: 0; }
.am-demarche__logo { flex: 0 0 136px; margin: 0; }
.am-section .am-demarche__logo img { display: block; width: 136px; height: auto; }
@media (max-width: 900px) { .am-enjeux__media { height: 220px; } }
@media (max-width: 640px) { .am-accordions .am-demarche__body { flex-direction: column; align-items: flex-start; } }

/* Documents et bilans : deux cartes grises (visuel personnalisable, titre, texte, bouton) */
.am-docs { padding-block: 120px; }
.am-docs > h2 { max-width: 1312px; margin: 0 auto 64px; }
.am-docs__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; max-width: 1306px; margin-inline: auto; }
.am-docs__card { display: flex; flex-direction: column; gap: 16px; padding: 16px 16px 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); }
.am-docs__media { position: relative; height: 120px; margin: 0; overflow: hidden; border-radius: 16px; background: #fff; }
.am-section .am-docs__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-docs__text { display: flex; flex-direction: column; gap: 16px; padding: 16px 16px 0; }
.am-section .am-docs__text h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-docs__text p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-docs__card .wp-block-buttons { margin: auto 0 0; padding-inline: 16px; }
@media (max-width: 1000px) { .am-docs { padding-block: 48px; } .am-docs > h2 { margin-bottom: 40px; } }
@media (max-width: 640px) { .am-docs__grid { grid-template-columns: minmax(0, 1fr); } }

/* ---- Livres blancs (AW-81) : page liste ------------------------------------------ */
/* Héros : même carte que la Tech'Place, hauteur de la maquette ; recherche = celle des Actualités (AW-121). */
.am-hero--lb .am-hero__card { min-height: 800px; }
/* Titre + chapô de la grille (chapô assombri par rapport à la maquette : contraste AA) */
.am-news-list.am-lb-list > h2 { margin-bottom: 16px; }
.am-section .am-lb-list__intro { margin: 0 auto 16px; font-size: 20px; line-height: 1.3; letter-spacing: 0.15px; color: #636e8a; }
.am-news__grid--lb { gap: 24px; }
/* Carte : toute la carte est le lien (titre étendu), ombre au survol et au focus. */
.am-lb-card { position: relative; display: flex; flex-direction: column; gap: 24px; height: 100%; box-sizing: border-box; padding: 32px; overflow: hidden; background: #eceefd; border-radius: 28px; transition: box-shadow 0.2s ease, background-color 0.2s ease; }
.am-lb-card:hover, .am-lb-card:has(a:focus-visible) { background: var(--am-lilac); box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-lb-card:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-lb-card__media { flex: 0 0 260px; height: 260px; overflow: hidden; background: #aeb5c6; border-radius: 16px; }
.am-lb-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-lb-card__body { display: flex; flex-direction: column; gap: 24px; flex: 1 1 auto; }
.am-section .am-lb-card__infos { margin: 0; font-size: 14px; line-height: 1.3; letter-spacing: 0.15px; color: var(--am-blue); }
.am-section .am-lb-card__title { margin: 0; font-size: 28px; line-height: 1.3; font-weight: 600; letter-spacing: -0.5px; color: var(--wp--preset--color--bluck); }
.am-lb-card__title a { color: inherit; text-decoration: none; }
.am-lb-card__title a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.am-lb-card__title a:focus-visible { outline: none; }
.am-section .am-lb-card__excerpt { margin: 0; font-size: 18px; line-height: 1.3; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-lb-card__more { font-size: 18px; line-height: 1.3; font-weight: 600; letter-spacing: -0.5px; color: var(--am-blue); }
.am-lb-card__more::after { content: " ↗"; }
.am-lb-card:hover .am-lb-card__more { text-decoration: underline; }
/* Tuile Tech'Place du bento : bouton de 48 px (maquette). */
.am-conv__tile--book .am-btn--dark .wp-block-button__link { height: 48px; padding: 6px 6px 6px 24px; }
.am-conv__tile--book .am-btn--dark .wp-block-button__link::after { width: 36px; height: 36px; }
@media (prefers-reduced-motion: reduce) { .am-lb-card { transition: none; } }
@media (max-width: 1000px) { .am-hero--lb .am-hero__card { min-height: 0; } }
@media (max-width: 640px) {
	.am-lb-card { gap: 16px; padding: 24px; border-radius: 20px; }
	.am-lb-card__body { gap: 16px; }
	.am-lb-card__media { flex-basis: 200px; height: 200px; }
	.am-section .am-lb-card__title { font-size: 24px; }
	.am-section .am-lb-list__intro { font-size: 18px; }
}

/* ---- Livres blancs (AW-82) : page d'un livre blanc --------------------------------- */
/* Héros : titre + bouton à gauche (64 px d'écart), chapô centré verticalement à droite. */
.am-hero--lb-detail .am-hero-page__cols { align-items: center; }
.am-hero--lb-detail .am-hero-page__cols > .wp-block-column:first-child { gap: 64px; }
.am-hero--lb-detail .am-hero-page__cols > .wp-block-column:last-child p + p { margin-top: 24px; }
.am-lb-download { margin: 0; }
.am-lb-download .am-btn .wp-block-button__link { height: 52px; box-sizing: border-box; padding: 8px 8px 8px 24px; }
.am-lb-download .am-btn .wp-block-button__link::after { width: 36px; height: 36px; background-image: url("../figma/arrow-up-right.svg"); }
.am-lb-download .is-disabled .wp-block-button__link, .am-lb-download .is-disabled .wp-block-button__link:hover { padding-right: 24px; background: #aeb5c6; color: var(--wp--preset--color--bluck); cursor: not-allowed; }
.am-lb-download .is-disabled .wp-block-button__link::after { display: none; }

/* Contenu : sections pleine largeur (présentation, appel à l'action) et corps aux styles des articles, aligné sur la grille de 1320 px. */
.am-article__content.am-lb-content { padding-top: 0; }
.am-lb-content > .am-section { max-width: none; margin: 0; }
.am-lb-content > :not(.am-section) { margin-inline: max(var(--am-pad-60), calc((100% - 1320px) / 2)); }
.am-lb-content > .am-section + :not(.am-section) { margin-top: 0; }
.am-lb-content > :not(.am-section) + .am-section { margin-top: 32px; }
.am-lb-content .am-section h2 { letter-spacing: -0.5px; }
.am-lb-content > .wp-block-code { padding: 24px 32px; overflow-x: auto; border: 0; border-radius: 30px; background: var(--wp--preset--color--bluck); color: #fff; font-size: 15px; line-height: 24px; }

/* Présentation : sommaire numéroté + couverture inclinée sur fond décoré */
.am-lb-content > .am-lb-pres { display: flex; align-items: stretch; gap: 48px; max-width: 1320px; box-sizing: content-box; margin-inline: auto; padding: 60px var(--am-pad-60); }
.am-lb-pres__text { flex: 0 1 736px; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 28px; }
.am-lb-pres__text > * { margin: 0; }
.am-section .am-lb-pres__text h2 { font-size: 40px; line-height: 1.3; }
.am-section .am-lb-pres__lead { font-size: 20px; line-height: 1.3; letter-spacing: 0.15px; }
.am-lb-content .am-lb-sommaire { display: flex; flex-direction: column; gap: 28px; margin: 0; padding: 0; list-style: none; counter-reset: am-lb; }
.am-lb-content .am-lb-sommaire li { position: relative; margin: 0; padding-left: 72px; font-size: 18px; line-height: 1.3; letter-spacing: 0.15px; counter-increment: am-lb; }
.am-lb-sommaire li::before { content: counter(am-lb, decimal-leading-zero); position: absolute; left: 0; top: 0; font-size: 24px; line-height: 1.3; font-weight: 600; letter-spacing: -0.5px; color: var(--am-pink); }
.am-lb-sommaire li strong { display: block; margin-bottom: 8px; font-size: 24px; line-height: 1.3; font-weight: 600; letter-spacing: -0.5px; }
.am-lb-sommaire li br { display: none; }
.am-lb-pres__text .am-lb-download { margin-top: 30px; }
.am-lb-cover { position: relative; flex: 1 1 0; min-width: 0; display: flex; align-items: center; justify-content: center; box-sizing: border-box; padding: 24px; overflow: hidden; background: #e4f0fb; border-radius: 30px; }
.am-lb-cover::before { content: ""; position: absolute; left: -148px; top: 159px; width: 905px; height: 905px; background: url("../figma/hero-page-deco.svg") no-repeat 0 0 / 100% 100%; pointer-events: none; }
.am-lb-cover__img { position: relative; width: min(410px, 80%); aspect-ratio: 410 / 547; margin: 0; transform: rotate(6deg); }
.am-section .am-lb-cover__img img { display: block; width: 100%; height: 100%; object-fit: cover; border-radius: 12px; background: #aeb5c6; }

/* Appel à l'action final : marges de la maquette (80 px, grille 1320) */
.am-lb-content > .am-lb-fin { padding-inline: var(--am-pad-60); }
.am-lb-fin .am-cta { max-width: 1320px; margin-inline: auto; }
.am-lb-fin .am-cta__title { display: flex; align-items: center; min-height: 108px; }
.am-lb-fin .am-cta__text .wp-block-buttons { margin-top: 32px; }

@media (max-width: 1000px) {
	.am-hero--lb-detail .am-hero-page__cols > .wp-block-column:first-child { gap: 40px; }
	.am-lb-content > .am-lb-pres { flex-direction: column; padding-block: 48px; }
	.am-lb-pres__text { flex: 0 0 auto; }
	.am-lb-cover { flex: 0 0 auto; padding: 40px 24px; }
	.am-lb-cover__img { width: min(260px, 60%); }
	.am-lb-fin .am-cta__title { min-height: 0; }
	.am-lb-fin .am-cta__text .wp-block-buttons { margin-top: 0; }
}
@media (max-width: 640px) {
	.am-section .am-lb-pres__text h2 { font-size: 30px; }
	.am-section .am-lb-pres__lead { font-size: 18px; }
	.am-lb-content .am-lb-sommaire li { padding-left: 48px; font-size: 16px; }
	.am-lb-sommaire li::before, .am-lb-sommaire li strong { font-size: 20px; }
	.am-lb-download .am-btn .wp-block-button__link { white-space: normal; height: auto; min-height: 52px; }
}

/* ---- Page « Nos partenaires » (AW-93) --------------------------------------------------------------------- */
@media (min-width: 1001px) {
	.am-hero--partenaires .am-hero__card { padding-top: 204px; }
	.am-hero--partenaires .am-hero-page__cols > .wp-block-column:first-child { flex: 0 0 min(703px, 55%); }
}

/* Écosystème : grille « zones floues » de Notre méthode, cartes de 300 px avec icône */
.am-zones--eco .am-zones__card { min-height: 300px; }
.am-zones--eco .am-zones__media { min-height: 300px; }
.am-zones__card--icon { gap: 32px; }
.am-zones__icon { margin: 0; }
.am-section .am-zones__icon img { display: block; width: 56px; height: 56px; }
.am-zones__text { display: flex; flex-direction: column; gap: 32px; }

/* Solutions métiers : encadré bleu pleine largeur, bouton contour centré, deux cartes blanches */
.am-accompagnements--partners { padding-block: 0; }
.am-accompagnements--partners .am-accompagnements__intro h2 { margin-bottom: 40px; }
.am-accompagnements--partners .am-accompagnements__intro .wp-block-buttons { justify-content: center; margin: 0; }
.am-accompagnements--partners .am-pcards { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.am-accompagnements--partners .am-pcard { display: flex; flex-direction: column; gap: 16px; padding: 16px 16px 44px; box-sizing: border-box; border-radius: 30px; background: #fff; }
.am-pcard__media { position: relative; height: 120px; margin: 0; overflow: hidden; border-radius: 16px; background: var(--am-grey); }
.am-section .am-pcard__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-pcard__text { display: flex; flex-direction: column; gap: 24px; padding: 4px 16px 0; color: var(--wp--preset--color--bluck); }
.am-section .am-pcard__text h3 { margin-bottom: -8px; font-size: 32px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-section .am-pcard__text h4 { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-pcard__text p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-accompagnements--partners .am-pcard .wp-block-buttons { margin: auto 0 0; padding: 22px 16px 0; }
@media (max-width: 900px) { .am-accompagnements--partners .am-pcards { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .am-section .am-pcard__text h3 { font-size: 26px; } .am-section .am-pcard__text h4 { font-size: 20px; } .am-accompagnements--partners .am-pcard { padding-bottom: 24px; } }

/* Partenaires technologiques : composant produits, carte pâle à motif */
.am-products-section--partners .am-besoin__intro h2 { max-width: 946px; margin-inline: auto; }
.am-products-section--partners .am-product__panel { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-pale); }

/* Écoles : carte 42 et visuel à gauche (784 px), appel « Jeune talent » et carte Epitech à droite */
.am-ecoles { padding-block: 80px; }
.am-ecoles__intro { display: flex; flex-direction: column; gap: 32px; max-width: 830px; margin: 0 auto 32px; }
.am-ecoles__intro h2 { max-width: 700px; margin-inline: auto; color: var(--am-ink-dark); }
.am-ecoles__grid { display: grid; grid-template-columns: minmax(0, 784fr) minmax(0, 520fr); gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-ecoles__col { display: flex; flex-direction: column; gap: 8px; }
.am-ecole { display: flex; flex-direction: column; gap: 24px; min-height: 375px; padding: 32px; box-sizing: border-box; border-radius: 30px; background: var(--am-grey); color: var(--wp--preset--color--bluck); }
.am-ecole--cta { justify-content: center; gap: 40px; min-height: 247px; background: var(--am-sky); }
.am-ecole--tall { justify-content: space-between; }
.am-ecole__head { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.am-section .am-ecole h3 { font-size: 32px; line-height: 1.2; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-ecole__logo { flex: 0 0 231px; height: 110px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-ecole__logo img { width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-ecole p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-ecole .wp-block-buttons { margin: 0; }
.am-ecoles__media { position: relative; flex: 1 1 auto; min-height: 247px; margin: 0; overflow: hidden; border-radius: 30px; background: var(--am-muted); }
.am-section .am-ecoles__media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
@media (max-width: 1000px) { .am-ecoles { padding-block: 48px; } .am-ecoles__grid { grid-template-columns: minmax(0, 1fr); } .am-ecole { min-height: 0; } }
@media (max-width: 640px) { .am-ecole { padding: 24px; } .am-ecole__head { flex-direction: column; align-items: flex-start; } .am-ecole__logo { flex-basis: auto; width: 180px; height: 86px; } .am-section .am-ecole h3 { font-size: 26px; } }

/* Proposer un partenariat : carte de 492 px, deux paragraphes espacés */
.am-cta-section--tall.am-cta-section--partenariat .am-cta__text { min-height: 492px; }
.am-cta__copy--gap { gap: 24px; }

/* ---- Page Innovation (AW-83) ------------------------------------------------------------------------------ */
/* L'innovation en chiffres : visuel à gauche, cinq chiffres (2 + 3) à droite */
.am-figures { padding-block: 80px; }
.am-figures > h2 { max-width: 1312px; margin: 0 auto 64px; }
.am-figures__layout { display: flex; align-items: stretch; gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-figures__visual { position: relative; flex: 0 0 486px; margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-figures__visual img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-figures__grid { flex: 1 1 0; min-width: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.am-figure { grid-column: span 2; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 32px; box-sizing: border-box; background: var(--am-grey); border-radius: 30px; text-align: center; }
.am-figure:nth-child(-n+2) { grid-column: span 3; }
.am-figure:nth-child(even) { background: var(--am-pale); }
.am-figure p.am-figure__value { font-size: 60px; line-height: 75px; font-weight: 600; letter-spacing: -0.5px; color: var(--am-pink); }
.am-figure p.am-figure__label { font-size: 23px; line-height: 28px; font-weight: 700; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1000px) {
	.am-figures { padding-block: 48px; }
	.am-figures > h2 { margin-bottom: 40px; }
	.am-figures__layout { flex-direction: column; }
	.am-figures__visual { flex: 0 0 320px; }
}
@media (max-width: 640px) {
	.am-figures__visual { flex-basis: 220px; }
	.am-figures__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-figure, .am-figure:nth-child(-n+2) { grid-column: span 1; padding: 24px 16px; }
	.am-figure:last-child { grid-column: span 2; }
	.am-figure p.am-figure__value { font-size: 44px; line-height: 1.3; }
	.am-figure p.am-figure__label { font-size: 18px; line-height: 24px; }
}

/* Héros : colonne du titre élargie (703 px sur 1248 dans la maquette), le titre tient sur trois lignes */
@media (min-width: 1001px) { .am-hero-page__cols--wide > .wp-block-column:first-child { flex: 0 0 56.3%; } }

/* Pourquoi Nexus : texte + encadré « point de vue », illustration à droite */
.am-nexus { padding-block: 80px; }
.am-nexus__layout { display: flex; align-items: center; gap: 32px; max-width: 1312px; margin-inline: auto; }
.am-nexus__body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.am-nexus__text p, .am-nexus__view p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-nexus__view { display: flex; flex-direction: column; gap: 10px; padding: 32px; background: var(--am-pale); border-radius: 30px; }
.am-nexus__view h3 { font-size: 24px; line-height: normal; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-nexus__visual { flex: 0 1 543px; min-width: 0; margin: 0; }
.am-nexus__visual img { display: block; width: 100%; }
@media (max-width: 1000px) {
	.am-nexus { padding-block: 48px; }
	.am-nexus__layout { flex-direction: column; gap: 40px; }
	.am-nexus__body { align-self: stretch; }
	.am-nexus__visual { flex: 0 0 auto; align-self: center; width: min(100%, 420px); }
}
@media (max-width: 640px) { .am-nexus__view { padding: 24px; } }

/* Terrain d'expérimentation : trois tuiles */
.am-tiles--trio { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1000px) { .am-tiles--trio { grid-template-columns: 1fr; } }

/* Produits Nexus : sans JS, les cartes s'empilent ; avec assets/js/products.js (is-ready), la liste de noms
   pilote la carte de droite (grand écran) ou déplie la carte sous le nom (tablette, mobile). */
.am-products { display: flex; flex-direction: column; gap: 16px; max-width: 1312px; margin-inline: auto; }
.am-product { display: flex; flex-direction: column; gap: 8px; }
.am-product__tab { display: none; }
.am-product__panel { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; gap: 32px; min-height: 529px; padding: 32px; box-sizing: border-box; border-radius: 30px; background-image: url("../figma/cta-pattern.svg"); background-repeat: no-repeat; background-position: right bottom; background-size: 566px 334px; }
.am-product__panel > * { position: relative; }
.am-product__head { align-self: stretch; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; min-height: 108px; }
.am-section .am-product__head h3 { font-size: 40px; line-height: 53.7px; letter-spacing: -0.5px; color: var(--wp--preset--color--bluck); }
.am-product__logo { flex: 0 1 auto; margin: 0; }
.am-product__logo img { display: block; width: auto; max-width: 100%; }
.am-product__body { align-self: stretch; display: flex; flex-direction: column; gap: 10px; }
.am-section .am-product__body h4 { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-product__body p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-product__panel .wp-block-buttons { margin: auto 0 0; }
.am-products.is-ready .am-product__tab { display: block; }
.am-product__trigger { display: block; width: 100%; padding: 32px; box-sizing: border-box; border: 0; border-radius: 30px; background: var(--am-grey); font: inherit; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); text-align: left; cursor: pointer; transition: background-color 0.2s ease, box-shadow 0.2s ease; }
.am-product.is-active .am-product__trigger { background: #fff; box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-product__trigger:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
@media (min-width: 901px) {
	.am-products.is-ready { display: grid; grid-template-columns: 407px minmax(0, 1fr); grid-template-rows: repeat(4, auto) 1fr; gap: 16px; }
	.am-products.is-ready .am-product { display: contents; }
	.am-products.is-ready .am-product__tab { grid-column: 1; align-self: start; }
	.am-products.is-ready .am-product__panel { grid-column: 2; grid-row: 1 / -1; visibility: hidden; opacity: 0; transition: opacity 0.3s ease, visibility 0s linear 0.3s; }
	.am-products.is-ready .am-product.is-active .am-product__panel { visibility: visible; opacity: 1; transition: opacity 0.3s ease; }
}
@media (max-width: 1100px) and (min-width: 901px) { .am-products.is-ready { grid-template-columns: 300px minmax(0, 1fr); } }
@media (max-width: 900px) {
	.am-products.is-ready .am-product:not(.is-active) .am-product__panel { display: none; }
	.am-product__panel { min-height: 0; }
}
@media (max-width: 640px) {
	.am-product__trigger { padding: 20px 24px; font-size: 20px; }
	.am-product__panel { gap: 24px; padding: 24px; border-radius: 20px; background-size: 340px 200px; }
	.am-product__head { min-height: 0; }
	.am-section .am-product__head h3 { font-size: 32px; line-height: 1.2; }
	.am-product__logo img { max-height: 48px; }
	.am-product__body p { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) { .am-product__trigger, .am-products.is-ready .am-product__panel { transition: none; } }

/* Comment une expérimentation devient-elle utile : la première carte est dépliée tant qu'aucune autre n'est survolée
   (482 px à 1440 : 418 px de contenu contre 198,67 px pour les cartes repliées, d'où 2.1). */
.am-method--open-first .am-method__intro :is(h2, .am-subtitle) { max-width: 714px; }
.am-method--open-first .am-method__intro h2 { color: var(--am-ink-dark); }
@media (hover: hover) and (min-width: 1101px) {
	.am-method--open-first .am-step { min-height: 352px; gap: 24px; }
	.am-method--open-first .am-steps:not(:hover) .am-step:first-child, .am-method--open-first .am-step:hover { flex-grow: 2.1; }
	.am-method--open-first .am-steps:not(:hover) .am-step:first-child .am-step__text p { opacity: 1; transform: none; }
}
@media (hover: hover) and (min-width: 1360px) { .am-method--open-first .am-step__text p { width: 418px; } }

/* Projets à impact : encadré bleu ciel */
.am-cta__text--sky { background: url("../figma/cta-pattern.svg") no-repeat right bottom / 566px 334px, var(--am-sky); }
.am-cta__text--sky .am-cta__title { display: flex; align-items: center; min-height: 108px; }
@media (max-width: 1000px) { .am-cta__text--sky .am-cta__title { min-height: 0; } }

/* De Nexus aux projets : quatrième tuile en image, motif de fleurs sous l'intro */
.am-tile--media { position: relative; min-height: 300px; margin: 0; overflow: hidden; border-radius: 30px; }
.am-section .am-tile--media img { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.am-besoin--nexus .am-split__intro::after { content: ""; width: 144px; height: 144px; opacity: 0.1; background: url("../figma/innovation-fleur.svg") no-repeat 0 0 / 56px, url("../figma/innovation-fleur.svg") no-repeat 88px 0 / 56px, url("../figma/innovation-fleur.svg") no-repeat 0 88px / 56px; pointer-events: none; }
@media (max-width: 1000px) { .am-besoin--nexus .am-split__intro::after { display: none; } }
@media (max-width: 640px) { .am-tile--media { min-height: 220px; } }

/* ---- Pages légales (AW-84) : mentions légales, politiques, plan du site ------------------------------------ */
/* Héros réduit au seul titre (colonne de 703 px dans la maquette) */
.am-hero--legal .am-hero__card { min-height: 0; }
.am-hero--legal h1 { max-width: 703px; }
@media (min-width: 1001px) { .am-hero--legal .am-hero__card { padding-top: 212px; } }

/* Corps de lecture : H2 numérotés automatiquement (pastille 01, 02…), paragraphes 19/30 sur 1312 px */
.am-legal { counter-reset: am-legal; color: var(--wp--preset--color--bluck); }
.am-legal:has(> .am-legal__card:first-child) { padding-top: 0; }
.am-legal > * { box-sizing: border-box; max-width: 1312px; margin: 0 auto; }
.am-legal > :is(p, ul, ol) { font-size: 19px; line-height: 30px; letter-spacing: 0; }
.am-legal > :is(ul, ol) { padding-left: 28px; }
.am-legal > ul.am-legal__checks { padding-left: 0; list-style: none; }
.am-legal__checks li { position: relative; padding-left: 24px; }
.am-legal__checks li::before { content: "✓"; position: absolute; left: 0; }
.am-legal a:not(.wp-block-button__link) { color: inherit; text-decoration: underline; }
.am-legal a:not(.wp-block-button__link):hover { color: var(--am-blue); }
.am-legal a:not(.wp-block-button__link):focus-visible { outline: 2px solid var(--am-blue); outline-offset: 2px; border-radius: 2px; }
.am-legal > h2 { position: relative; min-height: 48px; margin-top: 72px; padding-left: 64px; counter-increment: am-legal; font-size: 32px; line-height: 40px; font-weight: 600; letter-spacing: -0.3px; }
.am-legal > h2::before { content: counter(am-legal, decimal-leading-zero); position: absolute; left: 0; top: 0; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: #ebeefc; font-size: 16px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; color: var(--am-blue); }
.am-legal > h3 { margin-top: 48px; font-size: 24px; line-height: 32px; font-weight: 600; letter-spacing: 0; }
.am-legal > h2 + * { margin-top: 24px; }
.am-legal > h3 + * { margin-top: 16px; }
.am-legal > :first-child { margin-top: 0; }

/* Encadré d'informations (coordonnées de la société) : marine, rayon 30 */
.am-legal > .am-legal__card { box-sizing: border-box; max-width: 720px; margin-left: max(0px, calc((100% - 1312px) / 2)); padding: 32px 32px 32px 40px; border-radius: 30px; background: var(--wp--preset--color--bluck); }
.am-legal__card p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; color: #fff; }
.am-legal > .am-legal__card + * { margin-top: 64px; }

@media (max-width: 640px) {
	.am-legal > :is(p, ul, ol) { font-size: 17px; line-height: 28px; }
	.am-legal > h2 { margin-top: 56px; padding-left: 60px; font-size: 28px; line-height: 36px; }
	.am-legal > h2::before { top: -7px; }
	.am-legal > h3 { margin-top: 40px; font-size: 21px; line-height: 28px; }
	.am-legal > .am-legal__card { padding: 24px; border-radius: 20px; }
	.am-legal > .am-legal__card + * { margin-top: 48px; }
}

/* Plan du site (AW-88) : rubriques (H2), sous-rubriques (H3) et listes de liens soulignés */
.am-sitemap { color: #000; }
.am-sitemap > * { box-sizing: border-box; max-width: 1312px; margin: 24px auto 0; }
.am-sitemap > :first-child { margin-top: 0; }
.am-sitemap > h2, .am-sitemap__top { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; }
.am-sitemap__top { line-height: 24px; }
.am-sitemap > h2 { color: #000; }
.am-sitemap > h3 { font-size: 19px; line-height: 26px; font-weight: 500; letter-spacing: 0.5px; color: #000; }
.am-sitemap > h3 + ul { margin-top: 16px; }
.am-sitemap > ul { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 0 16px; list-style: none; }
.am-sitemap > ul a { font-size: 18px; line-height: 24px; font-weight: 500; letter-spacing: 1.25px; }
.am-sitemap a { color: var(--am-blue); text-decoration: none; }
.am-sitemap a:hover { color: var(--am-pink); }
.am-sitemap a:focus-visible { outline: 2px solid var(--am-blue); outline-offset: 2px; border-radius: 2px; }
@media (max-width: 640px) {
	.am-sitemap > ul { gap: 0; }
	.am-sitemap > ul a { display: inline-block; padding-block: 10px; font-size: 17px; letter-spacing: 0.5px; }
	.am-sitemap > h3 + ul { margin-top: 6px; }
	.am-sitemap > h2, .am-sitemap__top { font-size: 22px; }
}

/* Pages agences (AW-58) : mise en page de l'ancien site avec le design du nouveau. Héros texte + photo, expertises en liste
   avec le nuage de pictos (liens) collé à droite, puis deux sections texte / illustration en alternance. */
.am-hero--agence .am-hero__card { min-height: 0; }
.am-hero--agence .am-hero-page__body { padding-block: 32px 0; }
.am-hero-page__cols.am-agence-hero__cols { align-items: center; gap: 64px; }
.am-hero-page__cols > .wp-block-column.am-agence-hero__text { gap: 16px; }
.am-section .am-agence-hero__text p { margin: 0; font-size: 20px; line-height: 28px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-hero-page__cols .am-agence-hero__text .wp-block-buttons { margin-top: 16px; }
.am-hero-page__cols > .wp-block-column.am-agence-hero__media { flex: 0 0 min(520px, 42%); }
.am-agence-hero__photo { margin: 0; }
.am-section .am-agence-hero__photo img { display: block; width: 100%; height: auto; aspect-ratio: 5 / 6; object-fit: cover; border-radius: 30px; }

.am-agence-skills { padding-block: 80px; }
.am-agence-skills__inner { max-width: 1312px; margin-inline: auto; }
.am-agence-skills__head { display: flex; flex-direction: column; gap: 24px; max-width: 900px; margin-bottom: 48px; }
.am-section .am-agence-skills__head p { font-size: 20px; line-height: 28px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-agence-skills__cols { display: flex; flex-wrap: nowrap; align-items: flex-start; gap: 64px; margin: 0; }
.am-agence-skills__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; }
.am-agence-skill { display: flex; flex-direction: column; gap: 12px; padding-block: 32px; border-top: 1px solid var(--am-border); }
.am-agence-skill:first-child { padding-top: 0; border-top: 0; }
.am-section .am-agence-skill h3 { font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); transition: color 0.2s ease; }
.am-section .am-agence-skill p { font-size: 18px; line-height: 26px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-agence-skill a, .am-agence-split__text a { color: var(--wp--preset--color--blue); text-decoration: underline; text-underline-offset: 3px; }
.am-agence-skill a:hover, .am-agence-split__text a:hover { color: var(--wp--preset--color--pink); }
.am-agence-skills__cols > .wp-block-column.am-agence-skills__aside { flex: 0 0 min(520px, 42%); align-self: flex-start; position: sticky; top: calc(var(--am-header-h, 128px) + 24px); }
.am-agence-cloud { display: flex; flex-direction: column; align-items: center; gap: 32px; padding: 48px 32px; border-radius: 30px; background: linear-gradient(120.71deg, #faf8ff 0%, #d6dbf8 101.15%); }
.am-agence-cloud__badges { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 12px 20px; }
.am-agence-cloud__badge { margin: 0; transform: rotate(-3deg); transition: transform 0.25s ease, opacity 0.25s ease; }
.am-agence-cloud__badge:nth-child(even) { transform: rotate(3deg) translateY(10px); }
.am-agence-cloud__badge:nth-child(3n) { transform: rotate(-1deg) translateY(-6px); }
.am-agence-cloud__badge:is(:hover, :focus-within, .is-active) { transform: scale(1.18); }
.am-agence-cloud:has(.is-active) .am-agence-cloud__badge:not(.is-active, :hover, :focus-within) { opacity: 0.45; }
.am-agence-cloud__badge.is-active img { filter: drop-shadow(0 8px 16px rgba(41, 50, 134, 0.25)); }
.am-section .am-agence-skill.is-active h3 { color: var(--wp--preset--color--pink); }
.am-section .am-agence-cloud__badge img { display: block; width: 150px; height: auto; }
.am-agence-cloud__badge a:focus-visible { display: block; outline: 3px solid var(--am-pink); outline-offset: 2px; border-radius: 16px; }
.am-section .am-agence-cloud__hint { font-size: 16px; line-height: 22px; letter-spacing: 0.15px; text-align: center; color: var(--wp--preset--color--blue); }

.am-agence-split { padding-block: 80px; }
.am-agence-split__inner { display: flex; align-items: center; gap: 64px; max-width: 1312px; margin-inline: auto; box-sizing: border-box; }
.am-agence-split__text { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.am-agence-split__text h2 { margin-bottom: 8px; }
.am-section .am-agence-split__text :is(p, li) { font-size: 18px; line-height: 26px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-section .am-agence-split__text ul { margin: 0; padding-left: 24px; }
.am-agence-split__text .wp-block-buttons { margin-top: 16px; }
.am-agence-split__illus { flex: 0 0 min(520px, 42%); margin: 0; }
.am-section .am-agence-split__illus img { display: block; width: 100%; height: auto; }
.am-agence-split--contact { padding-top: 0; }
.am-agence-split--contact .am-agence-split__inner { padding: 64px 48px; border-radius: 30px; background: linear-gradient(120.71deg, #faf8ff 0%, #d6dbf8 101.15%); }
@media (max-width: 1000px) {
	.am-hero-page__cols.am-agence-hero__cols { gap: 32px; }
	.am-hero-page__cols > .wp-block-column.am-agence-hero__media { flex: 0 0 auto; }
	.am-section .am-agence-hero__photo img { aspect-ratio: 16 / 10; }
	.am-agence-skills, .am-agence-split { padding-block: 48px; }
	.am-agence-skills__head { margin-bottom: 32px; }
	.am-agence-skills__cols { flex-direction: column; align-items: stretch; gap: 32px; }
	.am-agence-skills__cols > .wp-block-column { flex: 0 0 auto; width: 100%; }
	.am-agence-skills__cols > .wp-block-column.am-agence-skills__aside { flex: 0 0 auto; position: static; }
	.am-agence-cloud__badge:nth-child(n) { transform: none; }
	.am-agence-split__inner { flex-direction: column; align-items: stretch; gap: 32px; }
	.am-agence-split__illus { flex: 0 0 auto; width: 100%; max-width: 440px; margin-inline: auto; }
	.am-agence-split--contact .am-agence-split__text { order: -1; }
	.am-agence-split--contact { padding-top: 0; }
	.am-agence-split--contact .am-agence-split__inner { padding: 48px 32px; }
}
@media (max-width: 640px) {
	.am-section .am-agence-hero__text p, .am-section .am-agence-skills__head p { font-size: 18px; line-height: 26px; }
	.am-section .am-agence-hero__photo img, .am-agence-cloud { border-radius: 20px; }
	.am-agence-skill { padding-block: 24px; }
	.am-section .am-agence-skill h3 { font-size: 20px; }
	.am-section .am-agence-skill p, .am-section .am-agence-split__text :is(p, li) { font-size: 17px; line-height: 24px; }
	.am-agence-cloud { padding: 32px 16px; }
	.am-section .am-agence-cloud__badge img { width: 120px; }
	.am-agence-split--contact .am-agence-split__inner { padding: 32px 20px; border-radius: 20px; }
}

/* Page Contact (AW-95) */
.am-hero--contact .am-hero-page__cols .wp-block-buttons { flex-direction: column; align-items: flex-start; gap: 24px; }
.am-hero--contact .am-hero-page__cols > .wp-block-column:last-child a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.am-contact { padding-block: 48px; }
.am-contact__intro { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 32px 16px; text-align: center; }
.am-contact__intro > * { max-width: 766px; margin: 0; }
.am-contact__intro h2 { font-size: 32px; font-weight: 600; letter-spacing: 0.25px; }
.am-contact__intro p { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-contact__layout { display: flex; align-items: stretch; gap: 16px; padding: 16px; }
.am-contact__aside { flex: 0 0 485px; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.am-contact__visual { flex: 0 0 auto; aspect-ratio: 486 / 277; margin: 0; border-radius: 30px; overflow: hidden; background: #aeb5c6; }
.am-contact__visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
.am-contact__card { position: relative; overflow: hidden; display: flex; flex-direction: column; gap: 40px; box-sizing: border-box; padding: 48px; background: var(--am-sky); border-radius: 30px; }
.am-contact__card::before { content: ""; position: absolute; left: 30px; top: 91px; width: 654px; height: 654px; background: url("../figma/hero-page-deco.svg") no-repeat 0 0 / 100% 100%; pointer-events: none; }
.am-contact__card > * { position: relative; }
.am-contact__card-head { display: flex; flex-direction: column; gap: 8px; }
.am-contact__card h3 { margin: 0; font-size: 32px; font-weight: 600; letter-spacing: 0.25px; }
.am-contact__card p { margin: 0; }
.am-contact__sub { font-size: 20px; line-height: 24px; letter-spacing: 0.15px; }
.am-contact__lines { display: flex; flex-direction: column; gap: 16px; }
.am-contact__line { display: flex; align-items: center; gap: 16px; }
.am-contact__line figure { flex: 0 0 24px; margin: 0; line-height: 0; }
.am-contact__line img { width: 24px; height: 24px; max-width: none; }
.am-contact__line p { font-size: 16px; line-height: 22px; letter-spacing: 0.25px; }
.am-contact__line a { color: inherit; text-decoration: none; }
.am-contact__line a:hover { text-decoration: underline; }
.am-contact__card .am-social-row { margin: 0; }
.am-social--blue a { background: var(--am-blue); }
.am-social--blue a:hover { background: var(--am-pink); }
.am-contact__formcol { flex: 1 1 0; min-width: 0; display: flex; align-items: center; justify-content: center; padding: 32px 0; }
.am-contact-form { display: flex; flex-direction: column; gap: 32px; width: 100%; max-width: 704px; }
.am-contact-form__row { display: flex; gap: 16px; }
.am-contact-form__row > * { flex: 1 1 0; min-width: 0; }
.am-contact-form__field { display: flex; flex-direction: column; gap: 8px; }
.am-contact-form label { font-size: 19px; font-weight: 500; line-height: 26px; letter-spacing: 0.5px; }
.am-contact-form input:not(.am-visually-hidden):not([type="checkbox"]), .am-contact-form textarea { box-sizing: border-box; width: 100%; height: 60px; padding: 16px; background: var(--wp--preset--color--grey); border: 1px solid var(--am-border); border-radius: 10px; font: inherit; font-size: 16px; color: var(--wp--preset--color--bluck); }
.am-contact-form textarea { height: 119px; min-height: 119px; resize: vertical; }
.am-contact-form ::placeholder { color: #aeb5c6; opacity: 1; }
.am-contact-form input:focus-visible, .am-contact-form textarea:focus-visible, .am-contact-form__submit:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-contact-form [aria-invalid="true"] { border-color: #b3261e; }
.am-contact-form__error { min-height: 0; font-size: 14px; line-height: 18px; color: #b3261e; }
.am-contact-form[hidden], .am-contact-confirm[hidden] { display: none; }
.am-contact-form__optin { display: flex; flex-direction: column; gap: 4px; margin: 0; padding: 0; border: 0; min-width: 0; }
.am-contact-form__optin legend { margin-bottom: 8px; padding: 0; font-size: 19px; font-weight: 500; line-height: 26px; letter-spacing: 0.5px; }
.am-contact-form__check { display: flex; align-items: center; gap: 12px; min-height: 44px; font-size: 16px; font-weight: 400; line-height: 22px; letter-spacing: 0; cursor: pointer; }
.am-contact-form__check input { flex: 0 0 auto; width: 24px; height: 24px; margin: 0; accent-color: var(--am-blue); }
.am-contact-form__check input:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-contact-confirm { width: 100%; max-width: 704px; }
.am-contact-confirm { scroll-margin-top: 120px; }
.am-contact-confirm:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 8px; }
.am-contact-confirm__title { margin: 0 0 16px; }
.am-contact-confirm p { margin: 0; }
.am-contact-form__consent { margin: 0; font-size: 14px; line-height: 20px; letter-spacing: 0; }
.am-contact-form__consent a { color: var(--am-blue); text-decoration: underline; }
.am-contact-form__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; }
.am-contact-form__submit { display: inline-flex; align-items: center; justify-content: center; gap: 12px; box-sizing: border-box; min-height: 52px; padding: 8px 8px 8px 24px; border: 0; border-radius: 999px; background: var(--am-blue); color: #fff; font-family: inherit; font-size: 18px; font-weight: 500; letter-spacing: 1.25px; cursor: pointer; }
.am-contact-form__submit::after { content: ""; flex: 0 0 auto; width: 36px; height: 36px; border-radius: 50%; background: #fff url("../figma/arrow-dark.svg") center / 24px no-repeat; }
.am-contact-form__submit:hover { background: var(--am-pink); }
.am-contact-form__submit:disabled { opacity: .6; cursor: progress; }
.am-contact-form__status { margin: 0; font-size: 16px; line-height: 22px; }
.am-contact-form__status--success { color: #1b6e3a; }
.am-contact-form__status--error { color: #b3261e; }
@media (max-width: 1000px) {
	.am-contact__layout { flex-direction: column; padding: 16px 0; }
	.am-contact__aside { flex: 0 0 auto; width: 100%; }
	.am-contact__visual { aspect-ratio: auto; height: 280px; }
	.am-contact__formcol { width: 100%; padding: 16px 0; }
	.am-contact-form { max-width: none; }
}
@media (max-width: 640px) {
	.am-contact { padding-block: 24px; }
	.am-contact__intro h2 { font-size: 28px; }
	.am-contact__card { padding: 32px 24px; border-radius: 20px; }
	.am-contact__visual { border-radius: 20px; }
	.am-contact-form__row { flex-direction: column; gap: 32px; }
	.am-contact-form__submit { width: 100%; min-height: 52px; }
}

/* Page Intelligence artificielle (AW-96) : carte repliée, le titre suit la largeur de la carte et passe à la ligne au lieu d'être coupé ; le texte garde sa largeur fixe. */
.am-method--ia .am-step:not(.am-step--wide) .am-step__text { align-self: stretch; }
.am-method--ia .am-step h3 { overflow-wrap: break-word; }

/* Page Esker (AW-94) */
/* Hero : bloc titre + sous-titre (gap 32), puis CTA empilés à 8 px ; colonne gauche à 60 px */
.am-hero-page__title { display: flex; flex-direction: column; gap: 32px; }
.am-hero-page__title > * { margin: 0; }
.am-section p.am-hero__sub { font-size: var(--wp--preset--font-size--x-large); line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-hero--esker .am-hero-page__cols > .wp-block-column:first-child { gap: 60px; }
.am-hero--esker .am-hero__actions { gap: 8px; }
@media (max-width: 1000px) {
	.am-hero--esker .am-hero-page__cols > .wp-block-column:first-child { gap: 40px; }
	.am-section p.am-hero__sub { font-size: 26px; }
}
@media (max-width: 640px) { .am-section p.am-hero__sub { font-size: 22px; } }
/* Enjeux : cartes toutes grises, 260 px de haut en première ligne, 80 px sous l'introduction */
.am-pains--esker .am-pains__card { background: var(--am-grey); }
.am-pains--esker .am-pains__card:nth-child(-n+3) { min-height: 260px; }
@media (min-width: 1001px) { .am-pains--esker .am-besoin__intro { margin-bottom: 80px; } }
@media (max-width: 1100px) {
	.am-pains--esker .am-pains__card:nth-child(-n+3) { min-height: 0; }
	.am-pains--esker .am-pains__card:last-child { grid-column: 1 / -1; }
}
/* Bénéfices : 4 cartes de 376 px, chapô de 811 px */
.am-method--esker.am-method--open-first .am-method__intro { gap: 40px; }
.am-method--esker.am-method--open-first .am-method__intro h2 { max-width: none; }
.am-method--esker.am-method--open-first .am-method__intro .am-subtitle { max-width: 811px; }
@media (hover: hover) and (min-width: 1101px) { .am-method--esker.am-method--open-first .am-step { min-height: 376px; } }
@media (max-width: 1100px) and (min-width: 641px) { .am-method--esker .am-step { flex-basis: calc(50% - 12px); } }
/* Flux : grille de 2 colonnes */
.am-accompagnements--flux .am-accompagnements__box { gap: 80px; padding-block: 80px; }
.am-accompagnements--flux .am-accompagnements__intro { gap: 32px; }
.am-accompagnements--flux .am-usages--duo { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.am-accompagnements--flux .am-usages--duo .am-usage { min-height: 0; gap: 32px; }
.am-accompagnements--flux .am-acc-deco--left { left: -48px; top: -51px; }
.am-accompagnements--flux .am-acc-deco--right { right: -198px; top: auto; bottom: -135px; }
@media (max-width: 900px) {
	.am-accompagnements--flux .am-usages--duo { grid-template-columns: minmax(0, 1fr); }
	.am-accompagnements--flux .am-accompagnements__box { gap: 40px; padding-block: 40px; }
}
/* Intégration et ERP : texte + visuel au ratio de la maquette */
.am-nexus--esker .am-nexus__text { gap: 24px; }
@media (min-width: 1001px) {
	.am-nexus--esker .am-nexus__layout { gap: 80px; }
	.am-nexus--esker .am-nexus__visual { flex: 0 0 418px; align-self: center; aspect-ratio: 422 / 477; padding-inline: 0; }
	.am-nexus--esker .am-nexus__body { flex: 0 1 814px; }
}
.am-section.am-nexus--esker .am-nexus__visual img { width: 100%; height: auto; aspect-ratio: 422 / 477; max-height: none; object-fit: cover; }
@media (max-width: 1000px) {
	.am-nexus--esker .am-nexus__visual { order: 2; }
}
/* Accompagnement : intro à 24 px entre titre et chapô */
.am-enjeux--esker .am-enjeux__intro { gap: 24px; }
/* Facturation électronique : encart daté */
.am-dates { padding: 80px 16px; }
.am-dates__box { display: flex; flex-direction: column; align-items: center; gap: 80px; padding: 80px 48px; box-sizing: border-box; background: var(--am-pale); border-radius: 30px; }
.am-dates__box > h2 { text-align: center; }
.am-dates__layout { display: flex; align-items: center; gap: 80px; width: 100%; max-width: 1312px; }
.am-dates__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 32px; }
.am-date { display: flex; align-items: flex-start; gap: 16px; }
.am-date__badge { flex: 0 0 auto; box-sizing: border-box; margin: 0; padding: 12px 16px; border-radius: 12px; background: #ebeefc; font-size: 24px; line-height: normal; font-weight: 600; letter-spacing: 0.25px; white-space: nowrap; color: var(--am-blue); }
.am-date p:not(.am-date__badge), .am-dates__note p { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-dates__note { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; padding: 32px; box-sizing: border-box; background: #fff; border-radius: 30px; }
.am-dates__box .wp-block-buttons { margin: 0; }
@media (max-width: 1100px) { .am-dates__box { gap: 48px; padding: 64px 32px; } .am-dates__layout { gap: 40px; } }
@media (max-width: 1000px) { .am-dates__layout { flex-direction: column; align-items: stretch; } }
@media (max-width: 900px) { .am-dates { padding-block: 48px; } .am-dates__box { padding: 40px 20px; } .am-section .am-dates__box > h2 { font-size: 32px; line-height: 1.2; } }
@media (max-width: 640px) { .am-date { flex-direction: column; gap: 12px; } .am-date__badge { font-size: 20px; } .am-dates__note { padding: 24px; } .am-dates__box .wp-block-button, .am-dates__box .wp-block-button__link { width: 100%; white-space: normal; } }
/* CTA final : carte de 494 px, deux boutons empilés */
@media (min-width: 1001px) { .am-cta-section--tall.am-cta-section--esker .am-cta__text { min-height: 494px; } }
.am-cta-section--esker .am-hero__actions { gap: 16px; margin-top: 0; }

/* ---- Popup occasionnelle (AW-110) : modale à deux colonnes, <dialog> natif --------------------------------- */
.am-popup { box-sizing: border-box; width: min(1317px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 0; border-radius: 30px; background: #fff; color: var(--wp--preset--color--bluck); overflow: hidden; }
.am-popup[open] { display: grid; grid-template-columns: minmax(0, 734fr) minmax(0, 583fr); }
.am-popup::backdrop { background: rgba(11, 19, 43, 0.6); }
.am-popup--text[open] { grid-template-columns: minmax(0, 1fr); max-width: 734px; }
.am-popup__content { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 80px; padding: 80px 64px; text-align: center; overflow-y: auto; }
.am-popup__title { margin: 0; font-size: 40px; line-height: 53.7px; letter-spacing: -0.5px; font-weight: 600; color: var(--wp--preset--color--bluck); }
.am-popup__subtitle, .am-popup__text { margin: 0; font-size: 20px; line-height: 24px; letter-spacing: 0.15px; font-weight: 400; }
.am-popup__copy { display: flex; flex-direction: column; gap: 24px; }
.am-popup__actions { display: flex; flex-direction: column; align-items: center; gap: 24px; margin: 0; }
.am-popup__actions .wp-block-button { margin: 0; }
.am-popup__dismiss .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 56px; padding: 8px 24px; border: 1px solid var(--wp--preset--color--bluck); border-radius: 999px; background: transparent; color: var(--wp--preset--color--bluck); font-family: inherit; font-size: 18px; line-height: 24px; letter-spacing: 1.25px; font-weight: 500; cursor: pointer; }
.am-popup__dismiss .wp-block-button__link:hover { background: var(--wp--preset--color--bluck); color: #fff; }
.am-popup__title:focus { outline: 0; }
.am-popup .wp-block-button__link:focus-visible, .am-popup__close:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-popup .am-btn--dark .wp-block-button__link { min-height: 56px; }
.am-popup__media { min-height: 0; }
.am-popup__img { display: block; width: 100%; height: 100%; min-height: 360px; max-height: calc(100dvh - 32px); object-fit: cover; border-radius: 0 30px 30px 0; }
.am-popup__close { position: absolute; top: 36px; right: 40px; z-index: 1; display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 56px; height: 56px; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #fff; cursor: pointer; }
.am-popup--text .am-popup__close { top: 16px; right: 16px; color: var(--wp--preset--color--bluck); }
.am-popup__close svg { width: 32px; height: 32px; filter: drop-shadow(0 1px 3px rgba(11, 19, 43, 0.5)); }
.am-popup--text .am-popup__close svg { filter: none; }
.am-popup__close:hover svg { transform: scale(1.1); }
html.has-modal-open:has(dialog.am-popup[open]) { overflow: hidden; }
@media (prefers-reduced-motion: no-preference) {
	.am-popup[open] { animation: am-popup-in 0.25s ease; }
	.am-popup[open]::backdrop { animation: am-popup-fade 0.25s ease; }
	.am-popup__close svg { transition: transform 0.2s ease; }
}
@keyframes am-popup-in { from { opacity: 0; transform: translateY(12px); } }
@keyframes am-popup-fade { from { opacity: 0; } }
@media (max-width: 1100px) {
	.am-popup__content { padding: 56px 40px; gap: 56px; }
	.am-popup__title { font-size: 32px; line-height: 42px; }
}
@media (max-width: 1000px) {
	.am-popup[open] { grid-template-columns: minmax(0, 1fr); overflow-y: auto; }
	.am-popup__media { display: none; }
	.am-popup__close { top: 12px; right: 12px; color: var(--wp--preset--color--bluck); }
	.am-popup__close svg { filter: none; }
	.am-popup__content { overflow-y: visible; }
}
@media (max-width: 640px) {
	.am-popup { width: calc(100vw - 24px); border-radius: 24px; }
	.am-popup__content { padding: 64px 24px 32px; gap: 40px; }
	.am-popup__title { font-size: 28px; line-height: 36px; }
	.am-popup__actions, .am-popup__actions .wp-block-button, .am-popup__actions .wp-block-button__link { width: 100%; }
	.am-popup__actions .wp-block-button__link { justify-content: center; }
}

/* ---- Zones tactiles de 44 px minimum (AW-31) : tablette, mobile et écrans tactiles ----------------------------------
   Le dessin des maquettes est conservé sur grand écran avec une souris ; en dessous de 1101 px ou avec un écran tactile,
   chaque lien ou bouton isolé est cliquable sur au moins 44 px de haut. */
@media (max-width: 1100px), (pointer: coarse) {
	.am-footer__links { gap: 0; }
	.am-footer__ia .am-footer__links { row-gap: 0; }
	.am-footer__links a { display: flex; align-items: center; min-height: 44px; }
	.am-header__logo a, .am-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; }
	.am-chip a { position: relative; }
	.am-chip a::after { content: ""; position: absolute; inset: -6px 0; }
	.am-rfilter__toggle, .am-rfilter__apply { min-height: 44px; }
	.am-nav .wp-block-navigation-item__content { box-sizing: border-box; min-height: 44px; display: flex; align-items: center; }
	.am-nav .wp-block-navigation__submenu-icon { min-width: 44px; min-height: 44px; }
}

/* Échelle de texte compacte sur mobile (AW-112) : titres H2 28, H3 21–22, H4 18–20, corps 16 px (plancher). */
@media (max-width: 640px) {
	.am-subtitle, .am-hero__text, .am-accompagnements__lead, .am-section .am-hero-media__lead { font-size: 18px; }
	.am-rcard .wp-block-post-excerpt__excerpt, .am-section .am-news__empty, .am-method--lead .am-method__note, .am-contact__sub, .am-date p:not(.am-date__badge), .am-dates__note p, .am-unit p.am-unit__label, .am-section p.am-pains__label { font-size: 16px; }
	.am-tslide__name, .am-faq__num { font-size: 17px; }
	.am-centered p, .am-statement .am-statement__body { font-size: 18px; }
	.am-unit p.am-unit__code, .am-section .am-hero__cols p.am-hero__lead, .am-section .am-hero-page__cols p.am-hero__lead, .am-section p.am-usages__end, .am-section .am-split__kicker, .am-stat__unit { font-size: 20px; }
	.am-section .am-related__title { font-size: 22px; }
	.am-hero h1 { font-size: clamp(32px, 8vw, 60px); }
	.am-card h3 { font-size: 21px; }
	.am-card p { font-size: 16px; }
	.am-xcard h3 { font-size: 21px; }
	.am-xcard p { font-size: 16px; }
	.am-bento__text p { font-size: 16px; }
	.am-bento__certif h3 { font-size: 22px; }
	.am-tslide h3 { font-size: 22px; }
	.am-cta__text p { font-size: 16px; }
	.am-hero-page__cols > .wp-block-column:last-child p { font-size: 16px; }
	.am-rinfos__facts dd { font-size: 16px; }
	.am-rinfos__skills li { font-size: 16px; }
	.am-rrow__item p { font-size: 16px; }
	.am-rcontent .am-rrow__item h3 { font-size: 21px; }
	.am-rcontent > h2 { font-size: 28px; line-height: 1.3; }
	.am-rcontent > h3 { font-size: 21px; line-height: 1.3; }
	.am-tile h3 { font-size: 21px; }
	.am-tile p { font-size: 16px; }
	.am-pillar h3 { font-size: 21px; }
	.am-pillar p { font-size: 16px; }
	.am-reflex h3 { font-size: 21px; }
	.am-reflex p { font-size: 16px; }
	.am-duo__text p { font-size: 16px; }
	.am-duo__quote p { font-size: 20px; }
	.am-duo__devops h3 { font-size: 22px; }
	.am-step h3 { font-size: 21px; }
	.am-step p { font-size: 16px; }
	.am-next__card h3 { font-size: 21px; }
	.am-frise__text h3 { font-size: 21px; }
	.am-frise__text p { font-size: 16px; }
	.am-secure__card h3 { font-size: 21px; }
	.am-appsec__card h3 { font-size: 21px; }
	.am-appsec__card p { font-size: 16px; }
	.am-team__card h3 { font-size: 21px; }
	.am-team__card p { font-size: 16px; }
	.am-pod__card h3 { font-size: 21px; }
	.am-pod__card p { font-size: 16px; }
	.am-trust__stat p { font-size: 16px; }
	.am-cta__quote cite { font-size: 16px; }
	.am-demarche__text p { font-size: 16px; }
	.am-cycle__intro p { font-size: 16px; }
	.am-section .am-equipes__card h3 { font-size: 22px; }
	.am-agence__body p { font-size: 16px; }
	.am-section .am-pains__card h3 { font-size: 21px; }
	.am-pains__card p { font-size: 16px; }
	.am-method__intro--split .am-method__cols p { font-size: 16px; }
	.am-section .am-usage h3 { font-size: 21px; }
	.am-usage p { font-size: 16px; }
	.am-partners__intro p { font-size: 16px; }
	.am-pcard h3 { font-size: 21px; line-height: 1.3; }
	.am-section .am-conv__tile h3 { font-size: 22px; }
	.am-article-head__chapo p { font-size: 16px; }
	h3 { font-size: 21px; }
	.am-chiffre p { font-size: 16px; }
	.am-level h3 { font-size: 21px; }
	.am-level p { font-size: 16px; }
	.am-section .am-bento8__card h3 { font-size: 21px; }
	.am-bento8__card p { font-size: 16px; }
	.am-zones__intro p { font-size: 16px; }
	.am-section .am-zones__card h3 { font-size: 21px; }
	.am-zones__card p { font-size: 16px; }
	.am-section .am-acc-tile h3 { font-size: 21px; }
	.am-acc-tile p { font-size: 16px; }
	.am-trio__text h3 { font-size: 22px; }
	.am-trio__text p { font-size: 16px; }
	.am-sit h3 { font-size: 21px; }
	.am-sit p { font-size: 16px; }
	.am-cadrage__lead p { font-size: 16px; }
	.am-cadrage__note h3 { font-size: 21px; }
	.am-cadrage__note p { font-size: 16px; }
	.am-xpert__intro p { font-size: 16px; }
	.am-xpert__card h3 { font-size: 21px; }
	.am-expcard h3 { font-size: 21px; }
	.am-enjeux--situations .am-enjeux__intro p { font-size: 16px; }
	.am-rse__intro p { font-size: 16px; }
	.am-section .am-rse__card h3 { font-size: 21px; }
	.am-indic__card p { font-size: 16px; }
	.am-section .am-docs__text h3 { font-size: 21px; }
	.am-lb-sommaire li strong { font-size: 20px; }
	.am-section .am-pcard__text h3 { font-size: 22px; }
	.am-section .am-ecole h3 { font-size: 22px; }
	.am-nexus__text p { font-size: 16px; }
	.am-nexus__view h3 { font-size: 21px; }
	.am-section .am-product__body h4 { font-size: 20px; }
	.am-product__body p { font-size: 16px; }
	.am-sitemap > h2 { font-size: 22px; }
	.am-section .am-agence-hero__text p { font-size: 16px; line-height: 1.5; }
	.am-section .am-agence-skills__head p { font-size: 16px; line-height: 1.5; }
	.am-section .am-agence-skill p { font-size: 16px; line-height: 1.5; }
	.am-contact__intro p { font-size: 16px; }
	.am-contact__card h3 { font-size: 22px; }
	.am-contact-form label { font-size: 17px; line-height: 1.5; }
	.am-dates__note p { font-size: 16px; }
}

@media (max-width: 640px) {
	.am-accordions .wp-block-details summary { font-size: 18px; }
	.am-accordions .wp-block-details > :not(summary), .am-accordions--faq .wp-block-details > :not(summary) { font-size: 16px; line-height: 1.5; }
	.am-hero__eyebrow { font-size: 18px; }
	.am-rcontent > :is(p, ul, ol), .am-rcontent li, .am-rcontent strong { font-size: 16px; line-height: 1.5; }
	.am-centered .am-centered__question, .am-statement p { font-size: 20px; }
	.am-cycle .am-cycle__result p:not(.am-cycle__caption), .am-cadrage__lead p, .am-cadrage__list, .am-expcard p:not(.am-chip), .am-product__body--list ul { font-size: 16px; line-height: 1.5; }
	.am-section .am-news-card__title, .am-product__trigger, .am-sector .am-sector__more p.am-sector__lead { font-size: 18px; }
}
@media (max-width: 640px) {
	h1.wp-block-post-title { font-size: 32px; line-height: 1.25; }
	.am-bento__agences h3 { font-size: 22px; }
	.am-section .am-dates__box h2.wp-block-heading { font-size: 28px; }
	.am-section h3.am-sector__name { font-size: 24px; }
	.am-section p.am-hero__sub, .am-section .am-solutions__lead, .am-section .am-solutions__strong { font-size: 18px; }
}

/* ---- Page FAQ (AW-124) -------------------------------------------------------------------------------------- */
/* Héro : carte de 800 px, titre 735 px / paragraphe 545 px centré, boutons empilés. */
.am-hero--faq .am-hero__card { padding-top: 162px; }
.am-hero--faq .am-hero-page__body { padding-block: 0; }
.am-hero-page__cols--faq { align-items: center; }
.am-hero-page__cols--faq > .wp-block-column:first-child { flex: 735 1 0; }
.am-hero-page__cols--faq > .wp-block-column:last-child { flex: 545 1 0; }
.am-hero-page__cols--faq > .wp-block-column:last-child p:last-child { margin-top: 0; }
.am-hero--faq .am-hero__actions { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
@media (max-width: 1000px) {
	.am-hero--faq .am-hero__card { padding: 140px 32px 48px; }
	.am-hero--faq .am-hero-page__body { padding-block: 32px; }
	.am-hero-page__cols--faq { align-items: flex-start; }
	.am-hero-page__cols--faq > .wp-block-column:first-child, .am-hero-page__cols--faq > .wp-block-column:last-child { flex: 0 0 auto; }
}
@media (max-width: 640px) { .am-hero--faq .am-hero__card { padding: 112px 20px 32px; } }

/* « Quelle question vous amène ici ? » : grille 3 + 2 (6 colonnes), titre en bluck. */
.am-accompagnements--faq h2, .am-accompagnements--parcours h2, .am-faq-recherche h2 { color: var(--wp--preset--color--bluck); }
.am-acc-grid--faq { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.am-acc-grid--faq > .am-acc-tile { grid-column: span 2; align-items: flex-start; }
.am-acc-grid--faq > .am-acc-tile:nth-child(n+4) { grid-column: span 3; }
.am-acc-grid--faq .wp-block-buttons { margin: 0; }
@media (max-width: 1100px) {
	.am-acc-grid--faq { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-acc-grid--faq > .am-acc-tile, .am-acc-grid--faq > .am-acc-tile:nth-child(n+4) { grid-column: auto; }
	.am-acc-grid--faq > .am-acc-tile:nth-child(5) { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
	.am-acc-grid--faq { grid-template-columns: minmax(0, 1fr); }
	.am-acc-grid--faq > .am-acc-tile:nth-child(5) { grid-column: auto; }
}

/* « Continuer votre parcours » : trois tuiles sur une ligne. */
.am-acc-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1000px) { .am-acc-grid--3 { grid-template-columns: minmax(0, 1fr); } }

/* Recherche : champ à gauche, filtres à droite (une ligne en bureau). */
.am-faq-recherche { display: flex; flex-direction: column; gap: 32px; max-width: 1440px; margin-inline: auto; padding: 0 var(--am-pad); box-sizing: border-box; }
.am-faq-recherche h2 { margin: 0; }
.am-faq-search { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.am-faq-search .am-news-search { flex: 1 1 360px; max-width: 519px; }
.am-faq-search .am-rfilters { align-items: center; }
.am-faq-search .am-rfilter__toggle { border-color: var(--wp--preset--color--lilac); }
.am-faq-search .am-rfilter__toggle::after { background-image: url("../figma/faq-arrow-drop-down.svg"); background-size: 24px; }
.am-faq-search__status { flex: 0 0 100%; margin: 0; font-size: 16px; line-height: 22px; color: var(--wp--preset--color--bluck); }
.am-faq-search__status .am-rfilter__reset { margin-left: 8px; }
@media (max-width: 1100px) { .am-faq-search { flex-direction: column; align-items: flex-start; } .am-faq-search .am-news-search { flex: 0 0 auto; width: 100%; } }

/* Bloc FAQ : colonne gauche fixe (sommaire + encart contact), rubriques à droite. */
.am-faq-page { padding: 64px 32px; }
.am-faq-page__layout { display: grid; grid-template-columns: 437px minmax(0, 1fr); align-items: start; max-width: 1376px; margin-inline: auto; }
.am-faq-page__aside { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 40px; max-height: calc(100vh - 48px); overflow-y: auto; }
.am-faq-page__toc { display: flex; flex-direction: column; gap: 16px; padding-inline: 32px; }
.am-faq-page__toc-title { margin: 0; padding-left: 32px; font-size: var(--wp--preset--font-size--large); line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-faq-page__toc .am-toc__list { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; border-left: 2px solid var(--wp--preset--color--border); }
.am-faq-page__toc li a { display: block; margin-left: -2px; padding: 8px 32px 8px 31px; border-left: 3px solid transparent; font-size: 20px; line-height: 24px; font-weight: 500; color: var(--wp--preset--color--bluck); text-decoration: none; }
.am-faq-page__toc li a:hover { text-decoration: underline; }
.am-faq-page__toc li.is-active a { border-left-color: var(--wp--preset--color--blue); font-weight: 700; color: var(--wp--preset--color--blue); }
.am-faq-page__toc a:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 2px; }
.am-faq-page__contact { display: flex; flex-direction: column; align-items: center; gap: 38px; padding: 48px; border-radius: 30px; background: var(--wp--preset--color--pale); text-align: center; }
.am-faq-page__contact h3 { margin: 0; font-size: var(--wp--preset--font-size--large); line-height: normal; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-faq-page__contact .wp-block-buttons { margin: 0; }
.am-faq-page__main { display: flex; flex-direction: column; gap: 80px; padding-inline: 32px; min-width: 0; }
.am-faq-page__rubrique { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; scroll-margin-top: 24px; }
.am-faq-page__rubrique:has(.am-faq__none) { display: none; }
.am-faq-page__rubrique h2 { margin: 0; color: var(--wp--preset--color--bluck); }
.am-faq-page__rubrique .am-subtitle { margin: 0; max-width: none; }
.am-faq-page__rubrique > .am-accordions { width: 100%; gap: 16px; margin-top: 24px; }
.am-faq-page__rubrique > .wp-block-buttons { margin: 24px 0 0; }
.am-faq-page__rubrique--etapes .am-accordions--faq .wp-block-details { padding: 32px; }
.am-faq-page__rubrique--etapes .am-accordions--faq .wp-block-details > :not(summary) { margin-block-start: 24px; font-size: 20px; line-height: 24px; font-weight: 400; letter-spacing: 0.15px; }
.am-faq-page .am-btn--line .wp-block-button__link::after { width: 40px; height: 40px; }
@media (max-width: 1100px) {
	.am-faq-page { padding: 48px 20px; }
	.am-faq-page__layout { grid-template-columns: minmax(0, 1fr); gap: 48px; }
	.am-faq-page__aside { position: static; max-height: none; overflow: visible; }
	.am-faq-page__toc { padding-inline: 0; }
	.am-faq-page__toc-title { padding-left: 0; }
	.am-faq-page__toc li a { padding-block: 10px; }
	.am-faq-page__main { padding-inline: 0; gap: 56px; }
}
@media (max-width: 640px) {
	.am-faq-page__contact { padding: 32px 24px; }
	.am-faq-page__toc li a { padding-right: 12px; font-size: 18px; }
	.am-faq-page__rubrique--etapes .am-accordions--faq .wp-block-details { padding: 24px; }
	.am-faq-page__rubrique .am-btn { max-width: 100%; }
}

/* ---- Page « Accompagnement IA » (AW-126) : composant partagé -------------------------------------------------- */
/* En-tête de section sur deux colonnes : titre (560 px) à gauche, introduction à droite. */
.am-head-split { display: flex; align-items: flex-start; gap: 80px; width: 100%; }
.am-head-split > h2 { flex: 0 0 560px; max-width: 560px; margin: 0; }
.am-head-split > p { flex: 1 1 0; min-width: 0; margin: 0; padding-top: 8px; font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
@media (max-width: 1000px) {
	.am-head-split { flex-direction: column; gap: 24px; }
	.am-head-split > h2 { flex-basis: auto; max-width: none; }
	.am-head-split > p { padding-top: 0; }
}
/* ---- Chip clair (AW-126) ---- */
/* Variante de .am-chip : fond blanc, texte rose, pilule 16 px (maquette). */
.am-chip--light :is(a, span) { padding: 6px 14px; background: var(--wp--preset--color--white); border-radius: 999px; font-size: 16px; line-height: 20px; color: var(--wp--preset--color--pink); }

/* ---- Héro Accompagnement IA (AW-126) ---- */
/* Modificateur de .am-hero--page : colonne de texte + carte « En bref » de 470 px. */
.am-hero--ia-accueil { padding-bottom: 16px; }
.am-hero--ia-accueil .am-hero__card { padding: 204px 80px 80px; }
.am-hero--ia-accueil .am-hero__card::before { content: none; }
.am-hero--ia-accueil .am-hero-page__body { padding-block: 0; }
.am-hero-ia__cols { display: flex; flex-wrap: nowrap; align-items: flex-start; gap: 64px; margin: 0; }
.am-hero-ia__cols > .wp-block-column.am-hero-ia__main { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.am-hero-ia__cols > .wp-block-column.am-hero-ia__aside { flex: 0 0 min(470px, 42%); min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.am-hero-ia__crumbs { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.15px; color: var(--wp--preset--color--blue); }
.am-hero-ia__crumbs a { color: inherit; text-decoration: none; }
.am-hero-ia__crumbs a:hover { text-decoration: underline; }
.am-hero-ia__crumbs a:focus-visible { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-hero--ia-accueil .am-hero-ia__main h1 { max-width: none; margin: 0; font-size: 48px; line-height: 55.2px; letter-spacing: -0.5px; overflow-wrap: break-word; }
.am-hero-ia__text { margin: 0; font-size: 20px; line-height: 30px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-hero-ia__text strong { font-weight: 600; }
.am-hero-ia__actions { display: flex; flex-wrap: wrap; gap: 12px 16px; margin: 0; }
.am-hero-ia__date { margin: 0; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) {
	.am-hero--ia-accueil .am-hero__card { padding: 160px 48px 56px; }
	.am-hero-ia__cols { gap: 40px; }
}
@media (max-width: 1000px) {
	.am-hero--ia-accueil .am-hero__card { padding: 140px 32px 48px; }
	.am-hero-ia__cols { flex-direction: column; gap: 40px; }
	.am-hero-ia__cols > .wp-block-column.am-hero-ia__main, .am-hero-ia__cols > .wp-block-column.am-hero-ia__aside { flex: 0 0 auto; width: 100%; }
	.am-hero--ia-accueil .am-hero-ia__main h1 { font-size: 40px; line-height: 48px; }
}
@media (max-width: 640px) {
	.am-hero--ia-accueil .am-hero__card { padding: 112px 20px 32px; }
	.am-hero--ia-accueil .am-hero-ia__main h1 { font-size: 32px; line-height: 40px; }
	.am-hero-ia__text { font-size: 18px; line-height: 27px; }
	.am-hero-ia__actions { flex-direction: column; align-items: stretch; }
	.am-hero-ia__actions .wp-block-button { width: 100%; }
	.am-hero-ia__actions .wp-block-button__link { width: 100%; height: auto; min-height: 56px; justify-content: space-between; white-space: normal; text-align: left; }
}

/* ---- Carte « En bref » (AW-126) ---- */
.am-bref { padding: 32px 32px 24px; box-sizing: border-box; background: var(--wp--preset--color--white); border-radius: 30px; box-shadow: 0 24px 60px rgba(10, 18, 43, 0.08); }
.am-bref__head { display: flex; align-items: center; gap: 12px; padding-bottom: 16px; }
.am-bref__icon { flex: 0 0 40px; width: 40px; height: 40px; margin: 0; }
.am-bref__icon img { display: block; width: 40px; height: 40px; }
.am-bref__title { margin: 0; font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-bref__fact { display: flex; flex-direction: column; gap: 4px; padding: 14px 0; border-top: 1px solid var(--wp--preset--color--border); }
.am-bref__label { margin: 0; font-size: 14px; line-height: 20px; font-weight: 600; color: var(--wp--preset--color--blue); }
.am-bref__text { margin: 0; font-size: 16px; line-height: 23px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 640px) {
	.am-bref { padding: 24px 20px 16px; border-radius: 20px; }
	.am-bref__title { font-size: 20px; line-height: 26px; }
}

/* ---- Engagements : cartes numérotées (AW-126) ---- */
.am-engagements { display: flex; flex-direction: column; gap: 64px; padding-block: 112px; padding-inline: max(var(--am-pad), calc((100% - 1216px) / 2)); }
.am-engagements__head { display: flex; flex-direction: column; align-items: center; gap: 20px; text-align: center; }
.am-engagements__head h2 { max-width: 900px; }
.am-engagements__head .am-subtitle { max-width: 780px; margin: 0; line-height: 30px; }
.am-engagements__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.am-engagement { display: flex; flex-direction: column; gap: 14px; padding: 28px; box-sizing: border-box; background: var(--wp--preset--color--grey); border-radius: 24px; }
.am-engagement__num { margin: 0; font-size: 48px; line-height: 52px; font-weight: 600; color: var(--wp--preset--color--pink); }
.am-engagement h3 { font-size: 24px; line-height: 30px; color: var(--wp--preset--color--bluck); }
.am-engagement p:not(.am-engagement__num) { margin: 0; font-size: 18px; line-height: 27px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) { .am-engagements { gap: 48px; padding-block: 80px; } }
@media (max-width: 1000px) { .am-engagements__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
	.am-engagements { gap: 32px; padding-block: 56px; }
	.am-engagements__head { gap: 16px; }
	.am-engagements__head h2 { font-size: 32px; line-height: 40px; }
	.am-engagements__head .am-subtitle { font-size: 18px; line-height: 27px; }
	.am-engagements__grid { grid-template-columns: minmax(0, 1fr); }
	.am-engagement { padding: 24px; border-radius: 20px; }
	.am-engagement__num { font-size: 40px; line-height: 44px; }
}

/* ---- Vos enjeux : boîte pâle et sept constats (AW-126) ---- */
/* L'en-tête sur deux colonnes est le composant partagé .am-head-split. */
.am-enjeux-ia { padding: 16px; }
.am-enjeux-ia__box { display: flex; flex-direction: column; gap: 64px; padding: 96px; box-sizing: border-box; background: var(--wp--preset--color--pale); border-radius: 30px; }
.am-enjeux-ia__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.am-enjeux-ia__card { display: flex; flex-direction: column; gap: 14px; padding: 32px; box-sizing: border-box; background: var(--wp--preset--color--white); border-radius: 24px; }
.am-enjeux-ia__num { margin: 0; font-size: 20px; line-height: 24px; font-weight: 600; color: var(--wp--preset--color--pink); }
.am-enjeux-ia__card h3 { font-size: 24px; line-height: 30px; color: var(--wp--preset--color--bluck); }
.am-enjeux-ia__card p:not(.am-enjeux-ia__num) { margin: 0; font-size: 18px; line-height: 27px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) {
	.am-enjeux-ia__box { gap: 48px; padding: 64px 48px; }
	.am-enjeux-ia__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) { .am-enjeux-ia__box { padding: 48px 32px; } }
@media (max-width: 640px) {
	.am-enjeux-ia__box { gap: 32px; padding: 32px 20px; border-radius: 20px; }
	.am-enjeux-ia__box .am-head-split > h2 { font-size: 32px; line-height: 40px; }
	.am-enjeux-ia__box .am-head-split > p { font-size: 18px; line-height: 27px; }
	.am-enjeux-ia__grid { grid-template-columns: minmax(0, 1fr); }
	.am-enjeux-ia__card { padding: 24px; border-radius: 20px; }
}

/* ---- Ce que l'IA change : boîte sombre (AW-126) ---- */
.am-avant-apres { padding: 16px; }
.am-avant-apres__box { display: flex; flex-direction: column; gap: 48px; padding: 96px; box-sizing: border-box; background: var(--wp--preset--color--bluck); border-radius: 30px; }
.am-avant-apres__box .am-head-split > h2, .am-avant-apres__box .am-head-split > p { color: var(--wp--preset--color--white); }
@media (max-width: 1100px) { .am-avant-apres__box { padding: 64px 48px; } }
@media (max-width: 900px) { .am-avant-apres__box { padding: 48px 32px; } }
@media (max-width: 640px) {
	.am-avant-apres__box { gap: 32px; padding: 32px 20px; border-radius: 20px; }
	.am-avant-apres__box .am-head-split > h2 { font-size: 32px; line-height: 40px; }
	.am-avant-apres__box .am-head-split > p { font-size: 18px; line-height: 27px; }
}

/* ---- Comparatif avant / après (AW-126) ---- */
/* Trois colonnes par ligne : avant | rond décoratif 36 px | après. En dessous de 900 px : pile verticale avec étiquettes. */
.am-comparatif { display: flex; flex-direction: column; gap: 12px; }
.am-comparatif__heads { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 68px; padding-bottom: 8px; }
.am-comparatif__head { margin: 0; padding-inline: 25px; font-size: 16px; line-height: 22px; font-weight: 600; color: var(--wp--preset--color--white); }
.am-comparatif__rows { display: flex; flex-direction: column; gap: 16px; }
.am-comparatif__row { display: grid; grid-template-columns: minmax(0, 1fr) 36px minmax(0, 1fr); gap: 16px; align-items: stretch; }
.am-comparatif__before, .am-comparatif__after { margin: 0; padding: 22px 24px; box-sizing: border-box; border: 1px solid transparent; border-radius: 16px; font-size: 18px; line-height: 27px; }
.am-comparatif__before { border-color: var(--wp--preset--color--white); letter-spacing: 0.15px; color: var(--wp--preset--color--white); }
.am-comparatif__after { background: var(--wp--preset--color--white); font-weight: 500; color: var(--wp--preset--color--bluck); }
.am-comparatif__arrow { align-self: center; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin: 0; background: var(--wp--preset--color--pink); border-radius: 999px; }
.am-comparatif__arrow img { display: block; width: 20px; height: 20px; max-width: none; }
@media (max-width: 900px) {
	.am-comparatif__heads { display: none; }
	.am-comparatif__rows { gap: 24px; }
	.am-comparatif__row { grid-template-columns: minmax(0, 1fr); gap: 8px; justify-items: stretch; }
	.am-comparatif__arrow { justify-self: center; transform: rotate(90deg); }
	.am-comparatif__before::before, .am-comparatif__after::before { display: block; margin-bottom: 4px; font-size: 14px; line-height: 20px; font-weight: 600; }
	.am-comparatif__before::before { content: "Ce que vous vivez souvent"; opacity: 0.8; }
	.am-comparatif__after::before { content: "Avec Amiltone"; color: var(--wp--preset--color--blue); }
}
@media (max-width: 640px) {
	.am-comparatif__before, .am-comparatif__after { padding: 16px 18px; border-radius: 12px; font-size: 16px; line-height: 24px; }
}

/* ---- Respiration : principe (AW-126) ---- */
/* Variante de .am-statement.am-centered sans effet « reveal » : texte bluck, interligne 42 px. */
.am-statement.am-centered.am-statement--principe { padding: 120px 200px; }
.am-statement.am-centered.am-statement--principe > p:first-child { max-width: 1040px; line-height: 42px; letter-spacing: 0; color: var(--wp--preset--color--bluck); }
@media (max-width: 1100px) { .am-statement.am-centered.am-statement--principe { padding: 64px var(--am-pad); } }
@media (max-width: 640px) { .am-statement.am-centered.am-statement--principe > p:first-child { font-size: 24px; line-height: 32px; } }

/* ---- Chip clair (AW-126) ---- */
.am-chip--soft { display: flex; }
.am-chip--soft :is(a, span) { padding: 6px 14px; background: var(--am-pale); border-radius: 999px; color: var(--am-pink); }

/* ---- Nos offres : familles et cartes d'offre (AW-126) ---- */
.am-offres { padding: 16px; }
.am-offres__box { display: flex; flex-direction: column; gap: 56px; box-sizing: border-box; padding: 96px; background: var(--am-grey); border-radius: 30px; }
.am-offres__box > h2 { margin: 0; }
.am-offres__famille { display: flex; align-items: flex-start; gap: 48px; padding-top: 40px; border-top: 1px solid var(--am-border); scroll-margin-top: 96px; }
.am-offres__side { display: flex; flex-direction: column; gap: 12px; flex: 0 0 320px; max-width: 320px; }
.am-offres__side > * { margin: 0; }
.am-offres__num { font-size: 40px; line-height: 44px; font-weight: 600; color: var(--am-pink); }
.am-section .am-offres__side h3 { font-size: 28px; line-height: 34px; letter-spacing: 0; }
.am-offres__side p:last-child { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
.am-offres__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; flex: 1 1 0; min-width: 0; }
.am-offre { position: relative; display: flex; flex-direction: column; gap: 12px; box-sizing: border-box; min-width: 0; padding: 28px; background: #fff; border-radius: 24px; transition: box-shadow 0.2s ease; }
.am-offre > * { margin: 0; }
.am-offre > .am-chip { align-self: flex-start; margin-block: 34px; }
.am-section .am-offre h4 { font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: 0.25px; color: var(--wp--preset--color--bluck); }
.am-offre h4 a { color: inherit; text-decoration: none; }
.am-offre > p { margin-bottom: 12px; font-size: 18px; line-height: 27px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-offre__start { margin-top: auto; padding: 12px 16px; background: var(--am-grey); border-radius: 14px; }
.am-offre__start p { margin: 0; font-size: 16px; line-height: 22px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-offre__start strong { font-weight: 600; }
/* Lien et flèche seulement quand le titre contient un lien */
.am-offre h4 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 24px; }
.am-offre h4 a:focus-visible { outline: none; }
.am-offre:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-offre:has(h4 a)::before { content: ""; position: absolute; top: 28px; right: 28px; width: 24px; height: 24px; background: url("../figma/arrow-up-right.svg") center / 24px no-repeat; }
.am-offre:has(h4 a):hover, .am-offre:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
@media (prefers-reduced-motion: reduce) { .am-offre { transition: none; } }
@media (max-width: 1100px) {
	.am-offres__box { padding: 64px 48px; }
	.am-offres__side { flex-basis: 260px; max-width: 260px; }
}
@media (max-width: 1000px) {
	.am-offres__famille { flex-direction: column; gap: 24px; }
	.am-offres__side { flex-basis: auto; max-width: none; width: 100%; }
}
@media (max-width: 640px) {
	.am-offres { padding: 16px 0; }
	.am-offres__box { padding: 40px 20px; gap: 40px; border-radius: 24px; }
	.am-offres__num { font-size: 32px; line-height: 36px; }
	.am-section .am-offres__side h3 { font-size: 24px; line-height: 30px; }
	.am-offres__grid { grid-template-columns: 1fr; }
	.am-offre { padding: 24px; }
	.am-offre > .am-chip { margin-block: 20px; }
	.am-offre > p, .am-offres__side p:last-child { font-size: 16px; line-height: 24px; }
	.am-offre:has(h4 a)::before { top: 24px; right: 24px; }
}

/* ---- Data engineering (AW-126) ---- */
.am-dataeng { display: flex; flex-direction: column; gap: 48px; padding-block: 112px; padding-inline: max(var(--am-pad), calc((100% - 1216px) / 2)); }
.am-dataeng > * { margin: 0; }
.am-dataeng > .wp-block-buttons { margin: 0; }
.am-tiles--compact { width: 100%; max-width: 1216px; gap: 16px; }
.am-tiles--compact.am-tiles--duo { gap: 16px; }
.am-tiles--compact.am-tiles--duo .am-tile { min-height: 160px; gap: 14px; border-radius: 24px; }
.am-tiles--compact .am-tile > * { margin: 0; }
.am-section .am-tiles--compact .am-tile h3 { font-size: 22px; line-height: 28px; }
.am-tiles--compact .am-tile p { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
@media (max-width: 640px) {
	.am-dataeng { gap: 32px; padding-block: 48px; }
	.am-tiles--compact.am-tiles--duo { grid-template-columns: 1fr; }
	.am-tiles--compact.am-tiles--duo .am-tile { min-height: 0; }
	.am-tiles--compact .am-tile p { font-size: 16px; line-height: 24px; }
}

/* ---- Déroulement en trois temps (AW-126) ---- */
.am-deroulement { padding: 16px; }
.am-deroulement__box { display: flex; flex-direction: column; gap: 16px; box-sizing: border-box; padding: 96px; background: var(--am-sky); border-radius: 30px; }
.am-deroulement__box > .am-head-split { margin-bottom: 0; }
.am-deroulement__row { display: flex; align-items: flex-start; gap: 64px; box-sizing: border-box; padding: 40px; background: #fff; border-radius: 30px; }
.am-deroulement__side { display: flex; flex-direction: column; gap: 12px; flex: 0 0 360px; max-width: 360px; }
.am-deroulement__side > * { margin: 0; }
.am-deroulement__num { font-size: 64px; line-height: 68px; font-weight: 600; color: var(--am-pink); }
.am-section .am-deroulement__side h3 { font-size: 28px; line-height: 34px; letter-spacing: 0; }
.am-deroulement__text { flex: 1 1 0; min-width: 0; padding-top: 12px; }
.am-deroulement__text > p { margin: 0; font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
.am-deroulement__text a { color: var(--am-blue); text-decoration: underline; }
@media (max-width: 1100px) {
	.am-deroulement__box { padding: 64px 48px; }
	.am-deroulement__row { gap: 40px; }
	.am-deroulement__side { flex-basis: 300px; max-width: 300px; }
}
@media (max-width: 900px) {
	.am-deroulement__row { flex-direction: column; gap: 16px; }
	.am-deroulement__side { flex-basis: auto; max-width: none; width: 100%; }
	.am-deroulement__text { padding-top: 0; }
}
@media (max-width: 640px) {
	.am-deroulement { padding: 16px 0; }
	.am-deroulement__box { padding: 40px 20px; border-radius: 24px; }
	.am-deroulement__row { padding: 24px; border-radius: 24px; }
	.am-deroulement__num { font-size: 40px; line-height: 44px; }
	.am-section .am-deroulement__side h3 { font-size: 24px; line-height: 30px; }
	.am-deroulement__text > p { font-size: 18px; line-height: 27px; }
}

/* ---- Cartes de rôle « Par où commencer » (AW-126) ---- */
.am-accompagnements--roles { padding: 16px; }
.am-accompagnements--roles .am-accompagnements__box { gap: 48px; padding: 96px; background: none; border-radius: 30px; }
.am-accompagnements--roles .am-accompagnements__intro { width: 100%; max-width: 900px; padding-inline: 0; }
.am-acc-grid--3.am-acc-grid--roles { gap: 16px; }
.am-acc-tile--role { gap: 12px; padding: 28px; border-radius: 24px; background: var(--am-pale); }
.am-section .am-acc-tile--role h3 { margin: 0; font-size: 22px; line-height: 28px; letter-spacing: 0.25px; }
.am-acc-tile--role p { margin: 0; font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
.am-acc-tile--role .am-acc-tile__depart { display: flex; flex-direction: column; gap: 6px; margin-top: auto; padding: 16px; box-sizing: border-box; border-radius: 16px; background: #fff; }
.am-acc-tile--role .am-acc-tile__label { font-size: 14px; line-height: 20px; font-weight: 600; letter-spacing: 0.25px; color: var(--am-blue); }
.am-acc-tile--role .am-acc-tile__links { font-size: 17px; line-height: 24px; letter-spacing: 0.15px; }
.am-acc-tile--role .am-acc-tile__links a { color: var(--wp--preset--color--bluck); text-decoration: underline; text-underline-offset: 3px; }
.am-acc-tile--role .am-acc-tile__links a:hover, .am-acc-tile--role .am-acc-tile__links a:focus-visible { color: var(--am-blue); }
@media (max-width: 1100px) { .am-acc-grid--3.am-acc-grid--roles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .am-accompagnements--roles .am-accompagnements__box { padding: 40px 0; } }
@media (max-width: 640px) {
	.am-accompagnements--roles .am-accompagnements__box { padding: 24px 0; gap: 32px; }
	.am-acc-grid--3.am-acc-grid--roles { grid-template-columns: minmax(0, 1fr); }
	.am-acc-tile--role { padding: 24px; }
	.am-section .am-acc-tile--role h3 { font-size: 21px; line-height: 26px; }
	.am-acc-tile--role p { font-size: 17px; line-height: 25px; }
}

/* ---- Preuve interne et puces (AW-126) ---- */
.am-preuve { display: flex; flex-direction: column; gap: 48px; padding: 112px; box-sizing: border-box; }
.am-puces { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.am-puces li { display: flex; align-items: flex-start; gap: 16px; margin: 0; padding: 20px; box-sizing: border-box; border-radius: 20px; background: var(--am-grey); font-size: 18px; line-height: 27px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-puces li::before { content: ""; flex: none; width: 32px; height: 32px; border-radius: 999px; background: var(--am-pink) url("../figma/accompagnement-ia-coche-blanche.svg") center / 16px no-repeat; }
.am-puces li a { color: var(--am-blue); text-decoration: underline; text-underline-offset: 3px; }
.am-puces li a:hover, .am-puces li a:focus-visible { color: var(--wp--preset--color--bluck); }
@media (max-width: 1000px) { .am-preuve { padding: 48px; } }
@media (max-width: 640px) { .am-preuve { padding: 48px 24px; gap: 32px; } .am-puces { grid-template-columns: minmax(0, 1fr); } .am-puces li { padding: 16px; } }

/* ---- Poursuivre, variante renvoi (AW-126) ---- */
.am-next--renvoi .am-next__box { gap: 48px; }
.am-next--renvoi .am-next__card { min-height: 340px; transition: box-shadow 0.2s ease; }
.am-next--renvoi .am-next__card h3 { font-size: 24px; line-height: 30px; letter-spacing: 0.25px; }
.am-next--renvoi .am-next__card p { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
.am-next--renvoi .am-next__card h3 a { color: inherit; text-decoration: none; }
.am-next--renvoi .am-next__card h3 a::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 30px; }
.am-next--renvoi .am-next__card h3 a:focus-visible { outline: none; }
.am-next--renvoi .am-next__card:has(a:focus-visible) { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-next--renvoi .am-next__card::after { content: ""; flex: none; box-sizing: border-box; width: 48px; height: 48px; border-radius: 50%; background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 24px no-repeat; transition: background-color 0.2s ease; }
.am-next--renvoi .am-next__card:hover, .am-next--renvoi .am-next__card:has(a:focus-visible) { box-shadow: 0 5px 10px rgba(33, 33, 33, 0.1); }
.am-next--renvoi .am-next__card:hover::after, .am-next--renvoi .am-next__card:has(a:focus-visible)::after { background-color: var(--am-pink); }
@media (max-width: 1100px) { .am-next--renvoi .am-next__box { gap: 40px; } .am-next--renvoi .am-next__card { min-height: 280px; } }
@media (max-width: 640px) { .am-next--renvoi .am-next__card { min-height: 0; } .am-next--renvoi .am-next__card h3 { font-size: 21px; line-height: 26px; } }
@media (prefers-reduced-motion: reduce) { .am-next--renvoi .am-next__card, .am-next--renvoi .am-next__card::after { transition: none; } }

/* ---- CTA centré sur fond bleu clair, sans photo (AW-126) ---- */
.am-cta-section.am-cta-section--centre { padding: 16px; }
.am-cta__text--centre { align-items: center; gap: 24px; padding: 96px 200px; text-align: center; background: var(--am-sky); }
.am-cta__text--centre h2 { max-width: 900px; margin: 0; }
.am-cta__text--centre p { max-width: 760px; margin: 0; font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
.am-cta__text--centre .wp-block-buttons { margin-top: 0; justify-content: center; }
@media (max-width: 1100px) { .am-cta__text--centre { padding: 80px 80px; } }
@media (max-width: 1000px) { .am-cta__text--centre { padding: 64px 40px; } }
@media (max-width: 640px) { .am-cta__text--centre { padding: 48px 24px; border-radius: 20px; } .am-cta__text--centre p { font-size: 18px; line-height: 27px; } }

/* ---- Sources (AW-126) ---- */
.am-sources { display: flex; flex-direction: column; gap: 12px; padding: 48px 112px 64px; box-sizing: border-box; border-top: 1px solid var(--am-border); }
.am-sources h2.am-sources__title { margin: 0; font-size: 16px; line-height: 22px; font-weight: 600; letter-spacing: 0.25px; }
.am-sources__list { margin: 0; padding-left: 20px; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
.am-sources__list li { margin: 0; padding-left: 4px; overflow-wrap: anywhere; }
.am-sources__list li + li { margin-top: 8px; }
.am-sources__list a { color: var(--am-blue); text-decoration: underline; overflow-wrap: anywhere; }
.am-sources__list a:hover, .am-sources__list a:focus-visible { color: var(--am-pink); }
.am-sources__note { margin: 0; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: var(--wp--preset--color--bluck); }
@media (max-width: 1000px) {
	.am-sources { padding: 40px var(--am-pad) 48px; }
	.am-sources__list li + li { margin-top: 0; }
	.am-sources__list a { display: inline-block; box-sizing: border-box; min-height: 44px; padding-block: 12px; }
	.am-hero-ia__crumbs a { display: inline-block; padding-block: 11px; margin-block: -11px; }
}

/* ---- Pages Accompagnement IA : Audit de code (AW-139) ------------------------------------------------------------- */
/* Composants réutilisables par les pages sœurs (AW-140 à AW-143) : fiche « En bref », comparatif avant / après, « qui fait quoi »,
   temps du déroulement, engagements, liste des situations, suite. Les autres sections reprennent am-tiles, am-statement, am-faq
   et am-accompagnements. */
.am-ia-head { display: flex; align-items: flex-start; gap: 80px; max-width: 1312px; margin: 0 auto 64px; }
.am-ia-head > .wp-block-heading { flex: 0 0 560px; font-size: 40px; line-height: 1.34; letter-spacing: -0.5px; }
.am-ia-head > .am-subtitle { flex: 1 1 0; min-width: 0; padding-top: 8px; font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
.am-ia-head--center { flex-direction: column; align-items: center; gap: 16px; margin-bottom: 48px; text-align: center; }
.am-ia-head--center > .wp-block-heading { flex: 0 0 auto; }
.am-ia-head--center > .am-subtitle { padding-top: 0; font-size: 16px; line-height: 24px; }

/* Héros : fil d'Ariane, pastille, texte d'introduction et fiche « En bref » */
.am-hero--ia .am-hero-page__cols { gap: 64px; }
.am-hero--ia .am-hero-page__cols > .wp-block-column:first-child { gap: 24px; }
.am-hero--ia .am-hero-page__cols > .wp-block-column:last-child { flex: 0 0 470px; }
.am-hero--ia h1 { font-size: 52px; line-height: 1.15; letter-spacing: -0.5px; }
.am-hero--ia .am-breadcrumb { font-size: 16px; line-height: 22px; letter-spacing: 0.15px; color: var(--am-blue); }
.am-hero--ia .am-breadcrumb ol { margin: 0; gap: 10px; font-size: inherit; }
.am-hero--ia .am-breadcrumb li + li::before { content: "›"; margin-right: 10px; opacity: 1; }
.am-hero__eyebrow--chip { align-self: flex-start; padding: 6px 14px; background: #fff; border-radius: 999px; font-size: 16px; line-height: 20px; font-weight: 600; letter-spacing: 0; color: var(--am-pink); }
.am-hero__intro { font-size: 20px; line-height: 30px; letter-spacing: 0.15px; }
.am-ia-brief { display: flex; flex-direction: column; gap: 12px; }
.am-ia-brief__card { padding: 32px 32px 24px; background: #fff; border-radius: 30px; box-shadow: 0 24px 60px rgba(10, 18, 43, 0.08); }
.am-ia-brief__head { padding-bottom: 16px; }
.am-hero--ia .am-hero-page__cols > .wp-block-column:last-child .am-ia-brief p, .am-hero--ia .am-hero-page__cols > .wp-block-column:last-child .am-ia-brief p:last-child { margin: 0; }
.am-hero--ia .am-hero-page__cols .am-ia-brief .am-ia-brief__title { display: flex; align-items: center; gap: 12px; font-size: 24px; line-height: 30px; font-weight: 600; letter-spacing: 0; }
.am-ia-brief__title::before { content: ""; flex: 0 0 40px; width: 40px; height: 40px; background: url("../figma/ia-brief-icon.svg") center / contain no-repeat; }
.am-ia-brief__fact { display: flex; flex-direction: column; gap: 4px; padding: 14px 0; border-top: 1px solid var(--am-border); }
.am-hero--ia .am-hero-page__cols .am-ia-brief .am-ia-brief__label { font-size: 14px; line-height: 20px; font-weight: 600; letter-spacing: 0; color: var(--am-blue); }
.am-hero--ia .am-hero-page__cols .am-ia-brief .am-ia-brief__text { font-size: 16px; line-height: 23px; letter-spacing: 0.15px; }
.am-hero--ia .am-hero-page__cols .am-ia-brief .am-ia-brief__meta { margin-top: 0; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }

/* Vos enjeux : cartes grises à guillemet (am-tiles à deux colonnes) */
.am-tiles--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.am-tile--quote { gap: 14px; border-radius: 24px; }
.am-tile--quote::before { content: ""; width: 32px; height: 32px; background: url("../figma/quote-pink.svg") center / contain no-repeat; }
.am-tile--quote h3 { font-size: 24px; line-height: 30px; letter-spacing: 0; }
.am-tile--quote p { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }

/* Ce que l'IA change : comparatif avant / après sur fond sombre */
.am-ia-change { margin: 16px; padding: 96px calc(var(--am-pad) + 32px); background: var(--wp--preset--color--bluck); border-radius: 30px; color: #fff; }
.am-ia-change .am-ia-head { margin-bottom: 48px; }
.am-ia-change .am-ia-head > .wp-block-heading { font-size: 36px; line-height: 1.3; }
.am-ia-change :is(h2, .am-subtitle) { color: #fff; }
.am-compare { display: flex; flex-direction: column; gap: 8px; max-width: 1312px; margin-inline: auto; }
.am-compare__head, .am-compare__row { display: grid; grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr); align-items: stretch; }
.am-compare__head { margin-bottom: 4px; font-size: 14px; line-height: 20px; font-weight: 600; }
.am-compare__head > p:last-child { grid-column: 3; }
.am-compare__row::before { content: ""; grid-column: 2; grid-row: 1; align-self: center; justify-self: center; width: 28px; height: 28px; background: var(--am-pink) url("../figma/icon-arrow-right.svg") center / 18px no-repeat; border-radius: 50%; }
.am-compare__old, .am-compare__new { grid-row: 1; padding: 20px 24px; border-radius: 16px; font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-compare__old { grid-column: 1; border: 1px solid rgba(255, 255, 255, 0.7); }
.am-compare__new { grid-column: 3; background: #fff; color: var(--wp--preset--color--bluck); }

/* Ce que nous livrons : six axes, encarts blancs, « qui fait quoi » */
.am-ia-livrons { margin: 16px; padding: 96px calc(var(--am-pad) + 32px); background: var(--am-grey); border-radius: 30px; }
.am-ia-livrons > :not(.am-ia-head) { max-width: 1216px; margin-inline: auto; }
.am-tiles--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.am-tile--axis { gap: 8px; padding: 24px 28px; background: #fff; border-radius: 24px; }
.am-tile__num { font-size: 24px; line-height: 30px; font-weight: 600; color: var(--am-pink); }
.am-tile--axis h3 { font-size: 18px; line-height: 24px; letter-spacing: 0; }
.am-tile--axis p:not(.am-tile__num) { font-size: 14px; line-height: 19px; letter-spacing: 0.15px; }
.am-ia-note { margin-top: 32px; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }
.am-ia-card { margin-top: 32px; padding: 32px; background: #fff; border-radius: 30px; }
.am-ia-card h3 { margin-bottom: 12px; font-size: 20px; line-height: 26px; letter-spacing: 0; }
.am-ia-card p { font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }
.am-ia-card__foot { margin-top: 24px; }
.am-ia-card a, .am-temps a, .am-relais a, .am-check a { color: var(--am-blue); text-decoration: underline; text-underline-offset: 2px; }
.am-ia-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
.am-ia-cards > .am-ia-card { margin-top: 0; }
.am-versus { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 24px; }
.am-versus__col { display: flex; flex-direction: column; gap: 14px; padding: 24px; border-radius: 20px; }
.am-versus__col :is(h3, h4) { padding-bottom: 14px; font-size: 20px; line-height: 26px; font-weight: 600; letter-spacing: 0; border-bottom: 1px solid var(--am-border); }
.am-versus__col--main { background: var(--wp--preset--color--bluck); color: #fff; }
.am-versus__col--main :is(h3, h4) { color: #fff; border-bottom-color: rgba(255, 255, 255, 0.35); }
.am-versus__item { display: flex; flex-direction: column; gap: 6px; padding-bottom: 14px; border-bottom: 1px solid var(--am-border); }
.am-versus__item:last-child { border-bottom: 0; }
.am-versus__col--main .am-versus__item { border-bottom-color: rgba(255, 255, 255, 0.35); }
.am-versus__label { font-size: 11px; line-height: 14px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--am-blue); }
.am-versus__col--main .am-versus__label { color: #fff; }
.am-versus__item p:not(.am-versus__label) { font-size: 14px; line-height: 20px; }

/* Déroulement : trois temps, livrables et renvois */
.am-ia-temps { margin: 16px; padding: 96px calc(var(--am-pad) + 32px); background: var(--am-sky); border-radius: 30px; }
.am-ia-temps .am-ia-head { max-width: 1216px; margin-bottom: 16px; }
.am-ia-temps .am-ia-head > .wp-block-heading { font-size: 36px; line-height: 1.3; }
.am-ia-temps > :not(.am-ia-head) { max-width: 1216px; margin-inline: auto; }
.am-temps { display: grid; grid-template-columns: 330px minmax(0, 1fr); gap: 48px; margin-top: 16px; padding: 32px 32px 32px 28px; background: #fff; border-radius: 30px; }
.am-temps__side { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.am-temps__num { font-size: 52px; line-height: 1; font-weight: 600; color: var(--am-pink); }
.am-temps__side h3 { font-size: 24px; line-height: 30px; letter-spacing: 0; }
.am-temps__chip { padding: 4px 10px; background: var(--am-grey); border-radius: 999px; font-size: 12px; line-height: 16px; font-weight: 600; }
.am-temps__body { display: flex; flex-direction: column; gap: 16px; }
.am-temps__step { display: flex; flex-direction: column; gap: 2px; }
.am-temps__title { display: flex; align-items: center; gap: 10px; font-size: 16px; line-height: 24px; }
.am-temps__n { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; background: var(--wp--preset--color--bluck); border-radius: 50%; font-size: 10px; line-height: 1; font-weight: 600; color: #fff; }
.am-temps__text { padding-left: 34px; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }
.am-temps__liv { display: flex; flex-direction: column; gap: 8px; padding: 16px; background: var(--am-grey); border-radius: 16px; }
.am-temps__label { font-size: 12px; line-height: 16px; font-weight: 600; color: var(--am-blue); }
.am-temps__liv p:not(.am-temps__label) { font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }
.am-relais { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.am-relais--solo { grid-template-columns: minmax(0, 1fr); }
.am-relais__card { display: flex; align-items: flex-start; gap: 16px; padding: 20px 24px; background: #fff; border-radius: 24px; }
.am-relais__card::before { content: ""; flex: 0 0 28px; width: 28px; height: 28px; background: var(--am-pink) url("../figma/icon-arrow-right.svg") center / 18px no-repeat; border-radius: 50%; }
.am-relais__card p { font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }

/* Engagements : liste de cartes à pastille validée */
.am-ia-engagements { padding-block: 80px; }
.am-checks { display: flex; align-items: flex-start; gap: 64px; max-width: 1312px; margin-inline: auto; }
.am-checks__intro { flex: 0 0 400px; display: flex; flex-direction: column; gap: 24px; }
.am-checks__intro h2 { font-size: 36px; line-height: 1.3; letter-spacing: -0.5px; }
.am-checks__intro p { font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-checks__intro a { color: var(--am-blue); text-decoration: underline; text-underline-offset: 2px; }
.am-checks__list { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.am-check { position: relative; padding: 20px 24px 20px 72px; background: var(--am-grey); border-radius: 24px; }
.am-check::before { content: ""; position: absolute; left: 24px; top: 24px; width: 32px; height: 32px; background: var(--am-pink) url("../figma/article-check.svg") center / 14px no-repeat; border-radius: 50%; }
.am-check__title { margin-bottom: 4px; font-size: 18px; line-height: 24px; }
.am-check p:not(.am-check__title) { font-size: 16px; line-height: 23px; letter-spacing: 0.15px; }

/* À qui s'adresse l'offre : texte, équipe et liste des situations */
.am-ia-pourqui { margin: 16px; padding: 96px calc(var(--am-pad) + 32px); background: var(--am-grey); border-radius: 30px; }
.am-pourqui { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; gap: 64px; max-width: 1216px; margin-inline: auto; }
.am-pourqui__text { display: flex; flex-direction: column; gap: 20px; }
.am-pourqui__text h2 { font-size: 36px; line-height: 1.3; letter-spacing: -0.5px; }
.am-pourqui__text h3 { font-size: 20px; line-height: 26px; letter-spacing: 0; }
.am-pourqui__text p { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
.am-pourqui__sep { width: 100%; margin: 4px 0; border: 0; border-top: 1px solid var(--am-border); background: none; }
.am-pourqui__card { padding: 32px 32px 32px 24px; background: #fff; border-radius: 30px; }
.am-pourqui__card h3 { margin-bottom: 12px; }
.am-ia-list { display: flex; flex-direction: column; gap: 14px; margin: 0; padding-left: 24px; font-size: 16px; line-height: 22px; letter-spacing: 0.15px; }
.am-ia-list li::marker { color: var(--am-pink); }

/* Ce que vous mesurerez : cartes à indicateur */
.am-tile--metric { gap: 16px; min-height: 158px; padding: 24px; border-radius: 24px; }
.am-tile--metric::before { content: ""; width: 34px; height: 34px; background: var(--am-lilac) url("../figma/arrow-up-right.svg") center / 20px no-repeat; border-radius: 8px; }
.am-tile--metric p { font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }

/* FAQ : mention sous les questions */
.am-faq--md .am-faq__note { max-width: 814px; margin: 16px max(0px, calc((100% - 1312px) / 2)) 0 auto; font-size: 12px; line-height: 16px; font-style: italic; }

/* Poursuivre : quatre cartes blanches sur fond sombre */
.am-ia-suite { margin: 16px; padding: 64px calc(var(--am-pad) + 32px); background: var(--wp--preset--color--bluck); border-radius: 30px; color: #fff; }
.am-ia-suite > h2 { color: #fff; max-width: 1312px; margin: 0 auto 32px; font-size: 32px; line-height: 1.3; letter-spacing: -0.5px; }
.am-ia-suite__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; max-width: 1312px; margin-inline: auto; }
.am-ia-next { position: relative; display: flex; flex-direction: column; gap: 12px; min-height: 260px; padding: 24px 24px 80px; background: #fff; border-radius: 24px; color: var(--wp--preset--color--bluck); }
.am-ia-next h3 { font-size: 22px; line-height: 28px; letter-spacing: 0; }
.am-ia-next h3 a { color: inherit; text-decoration: none; }
.am-ia-next h3 a::before { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: 24px; }
.am-ia-next h3 a:focus-visible::before { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-ia-next p { font-size: 16px; line-height: 22px; letter-spacing: 0.15px; }
.am-ia-next::after { content: ""; position: absolute; left: 24px; bottom: 24px; width: 36px; height: 36px; background: var(--wp--preset--color--bluck) url("../figma/arrow-light.svg") center / 20px no-repeat; border-radius: 50%; }
.am-ia-next:hover::after { background-color: var(--am-pink); }

@media (max-width: 1100px) {
	.am-hero--ia .am-hero-page__cols { flex-direction: column; gap: 32px; }
	.am-hero--ia .am-hero-page__cols > .wp-block-column, .am-hero--ia .am-hero-page__cols > .wp-block-column:last-child { flex: 0 0 auto; width: 100%; }
	.am-ia-suite__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-temps { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.am-checks { flex-direction: column; gap: 32px; }
	.am-checks__intro { flex: 0 0 auto; }
}
@media (max-width: 900px) {
	.am-ia-head { flex-direction: column; gap: 16px; margin-bottom: 40px; }
	.am-ia-head > .wp-block-heading { flex: 0 0 auto; }
	.am-ia-head > .am-subtitle { padding-top: 0; }
	.am-tiles--three { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-versus, .am-pourqui, .am-relais { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
	.am-hero--ia h1 { font-size: 36px; }
	.am-hero__intro { font-size: 18px; line-height: 27px; }
	.am-ia-brief__card { padding: 24px 20px 16px; }
	.am-tiles--two, .am-tiles--three, .am-ia-suite__cards { grid-template-columns: minmax(0, 1fr); }
	.am-ia-change, .am-ia-livrons, .am-ia-temps, .am-ia-pourqui, .am-ia-suite { padding-inline: 20px; }
	.am-ia-change .am-ia-head > .wp-block-heading, .am-ia-temps .am-ia-head > .wp-block-heading, .am-checks__intro h2, .am-pourqui__text h2 { font-size: 28px; }
	.am-compare__head { display: none; }
	.am-compare__row { grid-template-columns: minmax(0, 1fr); row-gap: 8px; }
	.am-compare__row::before { grid-column: 1; grid-row: 2; transform: rotate(90deg); }
	.am-compare__old { grid-column: 1; grid-row: 1; }
	.am-compare__new { grid-column: 1; grid-row: 3; }
	.am-ia-card { padding: 24px 20px; }
	.am-ia-cards { grid-template-columns: minmax(0, 1fr); }
	.am-temps { padding: 24px 20px; }
	.am-check { padding: 20px 20px 20px 64px; }
	.am-check::before { left: 20px; }
	.am-faq--md .am-faq__note { margin-inline: 0; max-width: 100%; }
}

/* ---- Pages Accompagnement IA : variantes de la page Modernisation applicative (AW-140) ------------------------------ */
.am-tiles--mixed { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.am-tiles--mixed > .am-tile { grid-column: span 2; }
.am-tiles--mixed > .am-tile:nth-child(n+4) { grid-column: span 3; }
.am-compare__note { max-width: 1312px; margin: 24px auto 0; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: #fff; }
.am-temps__intro { margin-bottom: 4px; }
@media (min-width: 1101px) { .am-ia-suite__cards--three { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) {
	.am-tiles--mixed { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-tiles--mixed > .am-tile, .am-tiles--mixed > .am-tile:nth-child(n+4) { grid-column: auto; }
	.am-tiles--mixed > .am-tile:last-child { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
	.am-tiles--mixed { grid-template-columns: minmax(0, 1fr); }
	.am-tiles--mixed > .am-tile:last-child { grid-column: auto; }
}

/* Frise de 4 cartes (AW-115) : le texte de la carte dépliée prend toute la largeur utile de la carte (calculée
   d'après la largeur de la frise, hors marges intérieures, et la part de la carte ouverte), au lieu d'une largeur fixe de 310 ou 418 px.
   Largeur fixe aussi pendant l'animation : le texte ne se reflue pas. */
@media (hover: hover) and (min-width: 1101px) {
	.am-steps:has(> .am-step:nth-child(4):last-child) { container-type: inline-size; --am-step-gap: 12px; --am-step-grow: 1.96; }
	.am-method--appsec .am-steps:has(> .am-step:nth-child(4):last-child) { --am-step-gap: 16px; }
	.am-method--open-first .am-steps:has(> .am-step:nth-child(4):last-child) { --am-step-grow: 2.1; }
	.am-steps:has(> .am-step:nth-child(4):last-child) .am-step__text p { width: calc((100cqw - 3 * var(--am-step-gap) - 256px) * var(--am-step-grow) / (3 + var(--am-step-grow))); }
}

/* ---- Pages Accompagnement IA : variantes de la page Migration de langages propriétaires (AW-141) --------------------- */
.am-ia-devs { margin: 16px; padding: 96px calc(var(--am-pad) + 32px); background: var(--am-pale); border-radius: 30px; }
.am-ia-devs .am-ia-head { margin-bottom: 0; }
.am-ia-devs .am-ia-head > .wp-block-heading { font-size: 36px; line-height: 1.3; }
.am-ia-devs .am-ia-head > .am-subtitle { font-size: 18px; line-height: 27px; }
.am-techs { display: flex; flex-direction: column; gap: 8px; max-width: 1216px; margin: 0 auto; }
.am-techs__row { display: grid; grid-template-columns: minmax(0, 230px) minmax(0, 340px) minmax(0, 1fr); gap: 24px; align-items: start; padding: 20px 24px; background: #fff; border-radius: 20px; }
.am-techs--duo .am-techs__row { grid-template-columns: minmax(0, 230px) minmax(0, 1fr); }
.am-techs__row h3 { font-size: 18px; line-height: 24px; letter-spacing: 0; }
.am-techs__cell { display: flex; flex-direction: column; gap: 6px; }
.am-techs__label { font-size: 11px; line-height: 14px; font-weight: 600; color: var(--am-blue); }
.am-techs__cell p:not(.am-techs__label) { font-size: 14px; line-height: 20px; letter-spacing: 0.15px; }
.am-versus--duo { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 1216px; margin: 0 auto; }
.am-ia-cout .am-versus--duo { margin-top: 0; }
.am-ia-cout .am-versus__col { padding: 28px 30px; background: var(--am-grey); border-radius: 24px; }
.am-ia-cout .am-versus__col--main { background: var(--wp--preset--color--bluck); }
.am-versus__chip { align-self: flex-start; padding: 2px 12px; border-radius: 999px; font-size: 12px; line-height: 18px; font-weight: 600; }
.am-versus__col--main .am-versus__chip { background: var(--am-pink); color: #fff; }
@media (max-width: 1000px) { .am-techs__row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .am-techs__row h3 { grid-column: 1 / -1; } }
@media (max-width: 1000px) { .am-techs--duo .am-techs__row { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 900px) { .am-versus--duo { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .am-ia-devs { padding-inline: 20px; } .am-ia-devs .am-ia-head > .wp-block-heading { font-size: 28px; } .am-techs__row { grid-template-columns: minmax(0, 1fr); padding: 20px; } .am-ia-cout .am-versus__col { padding: 24px 20px; } }

/* ---- Grille commune des pages IA (AW-142) : tous les cadres et sous-cadres sur le même bord gauche ---------------- */
/* Contenu de 1216 px centré (maquette : x = 112 à 1440 px) dans toutes les sections de la page, encadrées ou pleine largeur. */
.am-ia--grille :is(.am-ia-head, .am-compare, .am-techs, .am-ia-card, .am-temps, .am-relais, .am-pourqui, .am-ia-suite__cards, .am-checks, .am-tiles, .am-faq__layout),
.am-ia--grille.am-ia-suite > h2 { box-sizing: border-box; max-width: 1216px; margin-inline: auto; }
/* Sections pleine largeur : même retrait que les sections encadrées (marge de 16 px + remplissage de la boîte). */
.am-ia--grille:is(.am-ia-enjeux, .am-ia-engagements, .am-ia-mesurer, .am-faq) { padding-inline: calc(var(--am-pad) + 48px); }
@media (max-width: 640px) {
	.am-ia--grille:is(.am-ia-enjeux, .am-ia-engagements, .am-ia-mesurer, .am-faq) { padding-inline: 36px; }
}

/* ---- Pages Accompagnement IA, style « prototype du lot » : Cas d'usage IA en production (AW-134) et Projet IA au forfait (AW-135) ---- */
/* Maquette sans Figma (JPG + HTML du lot d'Alex). Famille am-fiche-* (fiche détaillée d'une offre IA) : en-tête de section avec pastille, fiche « En bref » pleine largeur,
   comparatif clair, tableaux, encarts, déroulé en trois cartes, engagements sur bande bleue, indicateurs, suite sur fond ciel, appel final.
   Réutilise am-tiles/am-tile, am-check, am-ia-list, am-faq, am-btn et am-sources (AW-126). */
.am-fiche-sec, .am-fiche-eng, .am-fiche-meas, .am-fiche-next, .am-fiche-cta, .am-fiche-brief { padding-block: 80px; }
.am-fiche-sec > *, .am-fiche-eng > *, .am-fiche-meas > *, .am-fiche-next__in, .am-fiche-cta__box, .am-fiche-brief > *, .am-fiche-who__cols { max-width: 1184px; margin-inline: auto; }
.am-fiche-head { display: flex; flex-direction: column; gap: 16px; margin-bottom: 40px; }
.am-fiche-eyebrow { display: flex; align-items: center; gap: 8px; font-size: 13px; line-height: 18px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: var(--am-blue); }
.am-fiche-eyebrow::before { content: ""; flex: 0 0 8px; width: 8px; height: 8px; background: var(--am-blue); border-radius: 50%; opacity: 0.6; }
.am-fiche-head h2 { max-width: 1184px; }
.am-fiche-lead { max-width: 820px; font-size: 18px; line-height: 28px; letter-spacing: 0.15px; }
.am-fiche-after { max-width: 960px; margin: 16px auto 0 max(0px, calc((100% - 1184px) / 2)); font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-fiche-note { margin-top: 16px; font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-fiche-after a, .am-fiche-note a, .am-fiche-panel a, .am-fiche-table a { color: var(--am-blue); text-decoration: underline; text-underline-offset: 2px; }

/* Héros : kicker, titre, boutons empilés, texte à droite ; la fiche « En bref » chevauche le bas du héros */
.am-hero--fiche { padding-bottom: 0; }
.am-hero--fiche .am-hero__card { min-height: 0; padding: 168px 96px 72px; }
.am-hero--fiche .am-hero-page__body { padding-block: 0; }
.am-hero--fiche .am-hero-page__cols { gap: 64px; }
.am-hero--fiche .am-hero-page__cols > .wp-block-column:first-child { gap: 16px; }
.am-hero--fiche .am-hero-page__cols > .wp-block-column:last-child { padding-top: 40px; }
.am-hero--fiche .am-hero-page__cols > .wp-block-column:last-child p { font-size: 20px; line-height: 27px; letter-spacing: 0.15px; }
.am-hero--fiche .am-breadcrumb { font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: var(--am-muted); }
.am-hero--fiche .am-hero__eyebrow { font-size: 18px; line-height: 24px; font-weight: 500; letter-spacing: 0.15px; }
.am-hero--fiche h1 { font-size: 56px; line-height: 60px; letter-spacing: -0.5px; }
.am-hero--fiche .wp-block-buttons { flex-direction: column; align-items: flex-start; gap: 16px; margin-top: 24px; }
.am-fiche-brief { position: relative; z-index: 2; margin: -40px 16px 0; padding-block: 0 8px; }
.am-fiche-brief__card { padding: 32px; background: #fff; border: 1px solid var(--am-border); border-radius: 30px; }
.am-fiche-brief__head { display: flex; align-items: center; gap: 12px; margin-bottom: 24px; }
.am-fiche-brief__title { font-size: 24px; line-height: 30px; font-weight: 600; }
.am-fiche-brief__chip { padding: 5px 12px; background: var(--am-lilac); border-radius: 999px; font-size: 13px; line-height: 18px; font-weight: 700; color: var(--am-blue); }
.am-fiche-brief__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 48px; }
.am-fiche-brief__fact { display: flex; flex-direction: column; gap: 6px; }
.am-fiche-brief__label { font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--am-muted); }
.am-fiche-brief__text { font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-fiche-brief__meta { margin-top: 8px; font-size: 14px; line-height: 20px; letter-spacing: 0.15px; color: var(--am-muted); }

/* Vos enjeux : cartes grises à titre bleu (variante d'am-tile) ; sources en italique réduit */
.am-fiche-enjeux .am-tiles { gap: 24px; max-width: 1184px; }
.am-tile--fiche { gap: 12px; padding: 32px; border-radius: 28px; }
.am-tile--fiche h3 { font-size: 22px; line-height: 28px; letter-spacing: 0; color: var(--am-nav); }
.am-tile--fiche p { font-size: 16px; line-height: 25px; letter-spacing: 0.15px; }
.am-tile--fiche em { font-size: 14px; line-height: 22px; }

/* Ce que l'IA change : comparatif clair (colonne « vécu » grisée, colonne Amiltone en carte blanche) et phrase d'appui */
.am-fiche-compare { display: flex; flex-direction: column; gap: 10px; }
.am-fiche-compare__head, .am-fiche-compare__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.am-fiche-compare__head p { padding: 16px 22px; border-radius: 16px; font-size: 13px; line-height: 20px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; }
.am-fiche-compare__head p:first-child { background: var(--am-grey); color: var(--am-muted); }
.am-fiche-compare__head p:last-child { background: var(--am-nav); color: #fff; }
.am-fiche-compare__old, .am-fiche-compare__new { position: relative; padding: 20px 22px 20px 64px; border-radius: 20px; font-size: 16px; line-height: 24px; letter-spacing: 0.15px; }
.am-fiche-compare__old { background: var(--am-neutral); color: var(--am-muted); }
.am-fiche-compare__new { background: var(--am-pale); border: 1px solid var(--am-border-soft); color: var(--wp--preset--color--bluck); }
.am-fiche-compare__old::before, .am-fiche-compare__new::before { content: ""; position: absolute; left: 22px; top: 20px; width: 26px; height: 26px; border-radius: 50%; }
.am-fiche-compare__old::before { background: var(--am-border-soft) url("../images/offre-cross.svg") center / 20px no-repeat; }
.am-fiche-compare__new::before { background: var(--am-blue) url("../figma/article-check.svg") center / 14px no-repeat; }
.am-fiche-motto { margin-top: 28px; padding: 28px 32px; background: var(--am-blue); border-radius: 28px; color: #fff; }
.am-fiche-motto p { font-size: 18px; line-height: 28px; letter-spacing: 0.15px; }
.am-fiche-motto strong { font-weight: 700; }

/* Notre démarche : tableau, encarts bordés (deux côte à côte ou pleine largeur) */
.am-fiche-table { margin-block: 0; overflow-x: auto; }
.am-fiche-table table { width: 100%; min-width: 560px; border: 1px solid var(--am-border-soft); border-collapse: separate; border-spacing: 0; border-radius: 24px; overflow: hidden; background: #fff; table-layout: fixed; }
.am-fiche-table :is(th, td) { padding: 18px 20px; border: 0; text-align: left; vertical-align: top; font-size: 15px; line-height: 23px; letter-spacing: 0.15px; }
.am-fiche-table thead th { background: #ebeefc; font-size: 14px; line-height: 20px; font-weight: 600; color: var(--am-nav); }
.am-fiche-table tbody tr + tr > * { border-top: 1px solid var(--am-border-soft); }
.am-fiche-table tbody td:first-child { font-weight: 600; color: var(--wp--preset--color--bluck); }
.am-fiche-table th:first-child { width: 20%; }
.am-fiche-table th:nth-child(2):not(:last-child) { width: 45%; }
.am-fiche-table--inner { margin-top: 20px; }
.am-fiche-table--inner th:first-child { width: 42%; }
.am-fiche-table--inner tbody td:first-child { font-weight: 600; }
.am-fiche-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 32px; }
.am-fiche-panel { display: flex; flex-direction: column; gap: 14px; padding: 32px; background: #fff; border: 1px solid var(--am-border-soft); border-radius: 28px; }
.am-fiche-panel--wide { margin-top: 24px; }
.am-fiche-panel h3 { font-size: 22px; line-height: 28px; letter-spacing: 0; color: var(--am-nav); }
.am-fiche-panel p { font-size: 16px; line-height: 25px; letter-spacing: 0.15px; }
.am-fiche-panel .am-ia-list { gap: 12px; font-size: 16px; line-height: 25px; }
.am-fiche-panel .am-fiche-table--inner { margin-top: 0; }
.am-fiche-sec > .am-fiche-duo + .am-fiche-panel--wide { margin-top: 24px; }

/* Déroulé : trois cartes (numéro, titre, durée, étapes, livrables) */
.am-fiche-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.am-fiche-step { display: flex; flex-direction: column; gap: 14px; padding: 32px; background: var(--am-grey); border-radius: 28px; }
.am-fiche-step__num { font-size: 56px; line-height: 1; font-weight: 600; color: var(--am-border); }
.am-fiche-step h3 { font-size: 22px; line-height: 28px; letter-spacing: 0; color: var(--am-nav); }
.am-fiche-step__chip { align-self: flex-start; padding: 4px 12px; border: 1px solid var(--am-nav); border-radius: 999px; font-size: 13px; line-height: 18px; font-weight: 600; color: var(--am-nav); }
.am-fiche-step__list { display: flex; flex-direction: column; gap: 12px; margin-bottom: 20px; }
.am-fiche-step__text { position: relative; padding-left: 44px; font-size: 16px; line-height: 23px; letter-spacing: 0.15px; }
.am-fiche-step__text strong { font-weight: 600; color: var(--wp--preset--color--bluck); }
.am-fiche-step__n { position: absolute; left: 0; top: -2px; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; background: #fff; border-radius: 50%; font-size: 11px; line-height: 1; font-weight: 700; color: var(--am-pink); }
.am-fiche-step__n--dot::before { content: ""; width: 4px; height: 4px; background: var(--am-pink); border-radius: 50%; }
.am-fiche-step__liv { display: flex; flex-direction: column; gap: 6px; margin-top: auto; padding: 18px 20px; background: #fff; border-radius: 18px; }
.am-fiche-step__label { font-size: 11px; line-height: 14px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--am-blue); }
.am-fiche-step__liv p:not(.am-fiche-step__label) { font-size: 15px; line-height: 22px; letter-spacing: 0.15px; }

/* Engagements : bande bleue pleine largeur, cartes translucides (variante sombre d'am-check) */
.am-fiche-eng { background: var(--am-blue); color: #fff; }
.am-fiche-eng :is(h2, p, .am-fiche-eyebrow) { color: #fff; }
.am-fiche-eng .am-fiche-eyebrow::before { background: #fff; opacity: 1; }
.am-fiche-eng .am-fiche-lead { opacity: 0.9; }
.am-fiche-checks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.am-check--dark { padding: 24px 24px 24px 72px; background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.28); }
.am-check--dark .am-check__title { color: #fff; }
.am-check--dark p:not(.am-check__title) { color: rgba(255, 255, 255, 0.88); line-height: 25px; }
.am-fiche-eng a, .am-check--dark a { color: #fff; text-decoration: underline; text-underline-offset: 2px; }
.am-fiche-eng .am-fiche-after { margin-top: 24px; }

/* Pour qui : texte et liste à gauche, équipe mobilisée à droite */
.am-fiche-who__cols { display: grid; grid-template-columns: minmax(0, 1.32fr) minmax(0, 1fr); align-items: start; gap: 64px; }
.am-fiche-who__text { display: flex; flex-direction: column; gap: 20px; }
.am-fiche-who__text .am-fiche-eyebrow { margin-bottom: -4px; }
.am-fiche-team { display: flex; flex-direction: column; gap: 14px; padding: 32px; background: var(--am-pale); border: 1px solid var(--am-border-soft); border-radius: 28px; }
.am-fiche-team__label { font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--am-blue); }
.am-fiche-team p:not(.am-fiche-team__label) { font-size: 17px; line-height: 27px; letter-spacing: 0.15px; }

/* Ce que vous mesurerez : liste à pastille cochée sur fond pâle */
.am-fiche-meas { background: var(--am-pale); }
.am-fiche-meas__cols { display: grid; grid-template-columns: minmax(0, 0.91fr) minmax(0, 1fr); align-items: start; gap: 32px; }
.am-fiche-meas__head { display: flex; flex-direction: column; gap: 16px; }
.am-fiche-chk { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; list-style: none; font-size: 17px; line-height: 26px; letter-spacing: 0.15px; }
.am-fiche-chk li { position: relative; padding-left: 44px; }
.am-fiche-chk li::before { content: ""; position: absolute; left: 0; top: 0; width: 26px; height: 26px; background: var(--am-blue) url("../figma/article-check.svg") center / 14px no-repeat; border-radius: 50%; }

/* Poursuivre : cartes blanches sur fond ciel, pastille rose */
.am-fiche-next { background: var(--am-sky); }
.am-fiche-next__in { display: flex; flex-direction: column; gap: 16px; }
.am-fiche-next__cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin-top: 24px; }
.am-fiche-next__card { position: relative; display: flex; flex-direction: column; gap: 12px; min-height: 246px; padding: 88px 28px 28px; background: #fff; border-radius: 28px; }
.am-fiche-next__card::before { content: ""; position: absolute; right: 20px; top: 20px; width: 36px; height: 36px; background: var(--am-pink) url("../figma/arrow-light.svg") center / 20px no-repeat; border-radius: 10px; }
.am-fiche-next__card h3 { font-size: 20px; line-height: 25px; letter-spacing: 0; color: var(--am-nav); }
.am-fiche-next__card h3 a { color: inherit; text-decoration: none; }
.am-fiche-next__card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: 28px; }
.am-fiche-next__card h3 a:focus-visible::after { outline: 3px solid var(--am-pink); outline-offset: 3px; }
.am-fiche-next__card:hover::before { background-color: var(--am-blue); }
.am-fiche-next__card p { font-size: 15px; line-height: 23px; letter-spacing: 0.15px; }
@media (min-width: 1101px) { .am-fiche-next__cards--three { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Appel final et sources */
.am-fiche-cta__box { display: flex; align-items: center; justify-content: space-between; gap: 48px; padding: 64px; background: var(--am-nav); border-radius: 36px; color: #fff; }
.am-fiche-cta__text { display: flex; flex: 1 1 0; flex-direction: column; gap: 16px; max-width: 720px; }
.am-fiche-cta :is(h2, p) { color: #fff; }
.am-fiche-cta h2 { max-width: 520px; }
.am-fiche-cta p { font-size: 18px; line-height: 27px; letter-spacing: 0.15px; }
.am-fiche-cta .wp-block-buttons { flex: 0 0 auto; }

@media (max-width: 1100px) {
	.am-fiche-next__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-fiche-who__cols { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.am-fiche-meas__cols { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.am-fiche-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.am-fiche-steps > :last-child { grid-column: 1 / -1; }
}
@media (max-width: 1000px) {
	.am-hero--fiche .am-hero__card { padding: 160px 32px 64px; }
	.am-hero--fiche .am-hero-page__cols { gap: 24px; }
	.am-hero--fiche .am-hero-page__cols > .wp-block-column:last-child { padding-top: 0; }
	.am-fiche-brief { margin: -32px 16px 0; }
	.am-fiche-brief__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
	.am-fiche-duo, .am-fiche-checks { grid-template-columns: minmax(0, 1fr); }
	.am-fiche-cta__box { flex-direction: column; align-items: flex-start; padding: 40px 32px; gap: 32px; }
}
@media (max-width: 640px) {
	.am-fiche-sec, .am-fiche-eng, .am-fiche-meas, .am-fiche-next, .am-fiche-cta { padding-block: 56px; }
	.am-hero--fiche .am-hero__card { padding: 144px 20px 56px; }
	.am-hero--fiche h1 { font-size: 36px; line-height: 40px; }
	.am-hero--fiche .am-hero-page__cols > .wp-block-column:last-child p { font-size: 18px; line-height: 27px; }
	.am-fiche-brief { margin: -32px 8px 0; }
	.am-fiche-brief__card { padding: 24px 20px; }
	.am-fiche-brief__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
	.am-fiche-head h2, .am-fiche-who__text h2, .am-fiche-meas__head h2, .am-fiche-next__in h2, .am-fiche-cta h2 { font-size: 28px; line-height: 1.3; }
	.am-fiche-compare__head { display: none; }
	.am-fiche-compare__row { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.am-fiche-compare__old, .am-fiche-compare__new { padding: 16px 16px 16px 56px; }
	.am-fiche-compare__old::before, .am-fiche-compare__new::before { left: 16px; top: 16px; }
	.am-fiche-motto { padding: 22px 20px; }
	.am-fiche-steps { grid-template-columns: minmax(0, 1fr); }
	.am-fiche-steps > :last-child { grid-column: auto; }
	.am-fiche-step, .am-fiche-panel, .am-fiche-team { padding: 24px 20px; }
	.am-tile--fiche { padding: 24px 20px; }
	.am-fiche-next__cards { grid-template-columns: minmax(0, 1fr); }
	.am-fiche-next__card { min-height: 0; padding-top: 72px; }
	.am-check--dark { padding: 20px 20px 20px 64px; }
	.am-fiche-cta__box { padding: 32px 24px; border-radius: 28px; }
	.am-fiche-cta .am-btn .wp-block-button__link { white-space: normal; }
	.am-hero--fiche .am-breadcrumb ol { flex-wrap: wrap; align-items: baseline; }
	.am-fiche-table table { display: block; min-width: 0; }
	.am-fiche-table thead { display: none; }
	.am-fiche-table :is(tbody, tr, td) { display: block; }
	.am-fiche-table tbody tr { padding: 16px 20px; }
	.am-fiche-table tbody tr + tr { border-top: 1px solid var(--am-border-soft); }
	.am-fiche-table tbody tr + tr > * { border-top: 0; }
	.am-fiche-table :is(th, td) { padding: 0; }
	.am-fiche-table td + td { margin-top: 4px; }
}

/* ---- Page 404 (AW-149) : stickers d'expertises glissables autour du message, reprise de l'ancienne 404 ---- */
.am-404 { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; min-height: 778px; padding: 48px 24px 116px; box-sizing: border-box; }
.am-404__body { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; text-align: center; max-width: 420px; }
.am-404__eyebrow { margin: 0; font-size: 20px; line-height: 1.4; color: var(--wp--preset--color--pink); animation: am-404-in 0.8s ease-out both; --am-404-from: -40px; }
.am-404__title { margin: 4px 0 0; font-size: 64px; line-height: 1.2; font-weight: 500; color: var(--wp--preset--color--blue); animation: am-404-in 0.8s ease-out 0.1s both; --am-404-from: -50px; }
.am-404__text { margin: 16px 0 0; max-width: 374px; font-size: 16px; line-height: 24px; animation: am-404-in 0.8s ease-out 0.2s both; --am-404-from: -120px; }
.am-404__cta { margin: 24px 0 0; justify-content: center; animation: am-404-in 0.8s ease-out 0.3s both; --am-404-from: -80px; }
.am-404__find { display: flex; justify-content: center; padding-block: 32px 64px; }
.am-404__search { width: 100%; max-width: 420px; margin: 0; }
@keyframes am-404-in { from { opacity: 0; transform: translateY(var(--am-404-from)); } to { opacity: 1; transform: none; } }

.am-404__sticker { --k: 1; --dx: 0px; --dy: 0px; position: absolute; z-index: 1; left: var(--x); top: var(--y); width: calc(var(--w) * var(--k) * 1px); margin: 0; transform: translate(-50%, -50%) translate(var(--dx), var(--dy)) rotate(var(--r)); cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; }
.am-404__sticker a { display: block; border-radius: 12px; -webkit-user-drag: none; }
.am-404__sticker a:focus-visible { outline: 3px solid var(--wp--preset--color--blue); outline-offset: 4px; }
.am-404__sticker img { display: block; width: 100%; height: auto; pointer-events: none; -webkit-user-drag: none; filter: drop-shadow(2px 4px 8px rgba(11, 19, 43, 0.2)); }
.am-404__sticker.is-dragging { z-index: 3; cursor: grabbing; }
.am-404__sticker--mobile { --w: 281; --x: 22.2%; --y: 18.3%; --r: -7deg; }
.am-404__sticker--ia { --w: 241; --x: 17.6%; --y: 46.4%; --r: 9deg; }
.am-404__sticker--qualite { --w: 202; --x: 26%; --y: 75.2%; --r: 9deg; }
.am-404__sticker--gestion { --w: 189; --x: 71.6%; --y: 17.2%; --r: 12deg; }
.am-404__sticker--conception { --w: 215; --x: 80.3%; --y: 44.2%; --r: -13deg; }
.am-404__sticker--web { --w: 250; --x: 76.3%; --y: 73.3%; --r: 10deg; }
@media (max-width: 1100px) {
	.am-404 { min-height: 690px; padding-bottom: 96px; }
	.am-404__title { font-size: 48px; }
	.am-404__sticker { --k: 0.72; }
	.am-404__sticker--mobile { --k: 0.808; }
	.am-404__sticker--ia { --k: 0.78; }
	.am-404__sticker--mobile { --x: 16.6%; --y: 22.8%; }
	.am-404__sticker--ia { --x: 14.6%; --y: 45.5%; }
	.am-404__sticker--qualite { --x: 16.8%; --y: 68.6%; }
	.am-404__sticker--gestion { --x: 78.7%; --y: 24.6%; }
	.am-404__sticker--conception { --x: 83.9%; --y: 44%; }
	.am-404__sticker--web { --x: 80.5%; --y: 65.8%; }
}
@media (max-width: 640px) {
	.am-404 { min-height: 700px; padding: 48px 16px 88px; }
	.am-404__eyebrow { font-size: 18px; }
	.am-404__title { font-size: 36px; }
	.am-404__sticker { --k: 0.583; }
	.am-404__sticker--mobile { --k: 0.615; }
	.am-404__sticker--ia { --k: 0.567; }
	.am-404__sticker--qualite { --x: 47.4%; --y: 10.2%; }
	.am-404__sticker--mobile { --x: 24.4%; --y: 19.9%; }
	.am-404__sticker--ia { --x: 81.5%; --y: 22.1%; }
	.am-404__sticker--web { --x: 50%; --y: 71.4%; }
	.am-404__sticker--gestion { --x: 20.5%; --y: 80.4%; }
	.am-404__sticker--conception { --x: 77.4%; --y: 78.3%; }
}
