/*
 * ISNAN Informatique : composants du thème.
 * Les tokens (couleurs, tailles, espacements) viennent de theme.json :
 * --wp--preset--color--*, --wp--preset--font-size--*, --wp--preset--spacing--*, --wp--custom--radius--*.
 * Aucune couleur hors charte : les rgba() ci-dessous sont des opacités de green-bright et mint.
 */

:root {
	--isnan-grid-line: rgba(190, 255, 244, 0.05);
	--isnan-line-on-dark: rgba(190, 255, 244, 0.12);
	--isnan-raised-border: rgba(43, 186, 116, 0.35);
	--isnan-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E");
	--isnan-icon-alert: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3'/%3E%3Cpath d='M12 9v4'/%3E%3Cpath d='M12 17h.01'/%3E%3C/svg%3E");
	--isnan-icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}

/* ---------- Base ---------- */

body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--wp--custom--header-height) + 16px);
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

:focus-visible {
	outline: 3px solid var(--wp--preset--color--navy);
	outline-offset: 2px;
}

.wp-site-blocks > * + * {
	margin-block-start: 0;
}

.alignfull + .alignfull,
.wp-block-post-content > .alignfull:first-child {
	margin-block-start: 0;
}

.wp-block-post-content > .alignfull:last-child {
	margin-block-end: 0;
}

@media (max-width: 639px) {
	h1, .wp-block-post-title { font-size: 32px; line-height: 40px; }
	h2 { font-size: 24px; line-height: 32px; }
}

.isnan-muted { color: var(--wp--preset--color--ink-muted); }

.isnan-lead {
	max-width: 600px;
	font-size: 18px;
	line-height: 28px;
}

/* ---------- Fond navy ---------- */

.is-style-isnan-dark {
	background-color: var(--wp--preset--color--navy);
	color: var(--wp--preset--color--light);
}

.is-style-isnan-dark a:where(:not(.wp-element-button)) {
	color: var(--wp--preset--color--green-bright);
}

.is-style-isnan-dark :focus-visible {
	outline-color: var(--wp--preset--color--green-bright);
}

.is-style-isnan-dark .isnan-muted {
	color: var(--wp--preset--color--mint);
}

.is-style-isnan-dark .wp-element-button:hover,
.is-style-isnan-dark .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--navy-raised);
}

.isnan-grid-bg {
	background-image:
		linear-gradient(var(--isnan-grid-line) 1px, transparent 1px),
		linear-gradient(90deg, var(--isnan-grid-line) 1px, transparent 1px);
	background-size: 80px 80px;
	background-position: -1px -1px;
}

/* ---------- Typographie d'impact ---------- */

.is-style-isnan-overline {
	font-family: var(--wp--preset--font-family--display);
	font-size: 14px;
	line-height: 20px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--green);
}

.is-style-isnan-dark .is-style-isnan-overline {
	color: var(--wp--preset--color--mint);
}

.is-style-isnan-display {
	font-family: var(--wp--preset--font-family--display);
	font-size: 64px;
	line-height: 76px;
	font-weight: 600;
	letter-spacing: -0.01em;
}

.is-style-isnan-display.isnan-display-m {
	font-size: 40px;
	line-height: 48px;
}

@media (max-width: 639px) {
	.is-style-isnan-overline { font-size: 12px; line-height: 16px; }
	.is-style-isnan-display { font-size: 40px; line-height: 48px; }
	.is-style-isnan-display.isnan-display-m { font-size: 32px; line-height: 40px; }
}

/* ---------- Boutons ---------- */

.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	border: 0;
	padding: 12px 24px;
	color: var(--wp--preset--color--navy);
	box-shadow: inset 0 0 0 1px currentColor;
}

.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--navy);
	color: var(--wp--preset--color--white);
}

.is-style-isnan-dark .wp-block-button.is-style-outline > .wp-block-button__link {
	color: var(--wp--preset--color--light);
}

.is-style-isnan-dark .wp-block-button.is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--navy-raised);
	color: var(--wp--preset--color--light);
}

.wp-block-button__link {
	transition: background-color 0.15s ease, color 0.15s ease;
}

@media (max-width: 639px) {
	.isnan-buttons-stack .wp-block-button { width: 100%; }
	.isnan-buttons-stack .wp-block-button__link { width: 100%; }
}

/* ---------- Icônes ---------- */

.isnan-icon {
	display: inline-grid;
	place-items: center;
	flex: none;
	color: var(--wp--preset--color--green);
	line-height: 0;
}

.is-style-isnan-dark .isnan-icon {
	color: var(--wp--preset--color--green-bright);
}

.isnan-icon.is-tile {
	width: 48px;
	height: 48px;
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--border);
}

.is-style-isnan-card .isnan-icon.is-tile {
	background: var(--wp--preset--color--light);
}

.is-style-isnan-dark .isnan-icon.is-tile {
	background: var(--wp--preset--color--navy-raised);
	border-color: var(--wp--preset--color--navy-raised);
}

/* ---------- Cartes ---------- */

.is-style-isnan-card {
	background-color: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--md);
	padding: var(--wp--preset--spacing--8);
	color: var(--wp--preset--color--navy);
}

.is-style-isnan-card.has-light-background-color {
	border-color: var(--wp--preset--color--light);
}

.is-style-isnan-raised {
	background-color: var(--wp--preset--color--navy-raised);
	border: 2px solid var(--isnan-raised-border);
	border-radius: var(--wp--custom--radius--lg);
	padding: var(--wp--preset--spacing--8);
	color: var(--wp--preset--color--light);
}

@media (max-width: 639px) {
	.is-style-isnan-card,
	.is-style-isnan-raised { padding: var(--wp--preset--spacing--6); }
}

/* Carte claire posée sur un fond navy : on revient aux couleurs « fond clair ». */
.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) {
	color: var(--wp--preset--color--navy);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) a:where(:not(.wp-element-button)) {
	color: var(--wp--preset--color--green);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) .isnan-muted {
	color: var(--wp--preset--color--ink-muted);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) .isnan-icon {
	color: var(--wp--preset--color--green);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) .isnan-icon.is-tile {
	background: var(--wp--preset--color--light);
	border-color: var(--wp--preset--color--border);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) :focus-visible {
	outline-color: var(--wp--preset--color--navy);
}

.is-style-isnan-dark .is-style-isnan-card:not(.is-featured) .wp-element-button:hover {
	background-color: var(--wp--preset--color--navy);
}

.isnan-card-link {
	position: relative;
	transition: border-color 0.15s ease;
}

.isnan-card-link:hover {
	border-color: var(--wp--preset--color--green);
}

.isnan-card-link a::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}

.isnan-card-link a {
	font-weight: 500;
}

@media (max-width: 639px) {
	.isnan-card-link.is-layout-flex {
		flex-direction: column;
		align-items: flex-start;
	}
}

.isnan-tag {
	display: inline-block;
	align-self: flex-start;
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--green);
	background: var(--wp--preset--color--light);
	border-radius: var(--wp--custom--radius--pill);
	padding: 2px 10px;
}

/* ---------- Listes à coches ---------- */

.is-style-isnan-checklist {
	list-style: none;
	padding-left: 0;
}

.is-style-isnan-checklist > li {
	position: relative;
	padding-left: 36px;
}

.is-style-isnan-checklist > li + li {
	margin-top: var(--wp--preset--spacing--2);
}

.is-style-isnan-checklist > li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1px;
	width: 24px;
	height: 24px;
	background-color: var(--wp--preset--color--green);
	-webkit-mask: var(--isnan-icon-check) center / contain no-repeat;
	mask: var(--isnan-icon-check) center / contain no-repeat;
}

.is-style-isnan-dark .is-style-isnan-checklist > li::before {
	background-color: var(--wp--preset--color--green-bright);
}

.is-style-isnan-dark .is-style-isnan-checklist > li.is-alert::before {
	background-color: var(--wp--preset--color--alert);
	-webkit-mask-image: var(--isnan-icon-alert);
	mask-image: var(--isnan-icon-alert);
}

/* Rapport (carte du hero) */
.isnan-report > li {
	padding-block: var(--wp--preset--spacing--4);
	border-bottom: 1px solid var(--isnan-line-on-dark);
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--mint);
}

.isnan-report > li + li { margin-top: 0; }
.isnan-report > li:last-child { border-bottom: 0; }
.isnan-report > li::before { top: var(--wp--preset--spacing--4); }

.isnan-report > li strong {
	display: inline-block;
	margin-bottom: 4px;
	font-size: 16px;
	line-height: 24px;
	font-weight: 500;
	color: var(--wp--preset--color--light);
}

.isnan-report > li.is-alert { color: var(--wp--preset--color--light); }

.isnan-report-head {
	padding-bottom: var(--wp--preset--spacing--4);
	border-bottom: 1px solid var(--isnan-line-on-dark);
}

/* ---------- Lignes (situations, étapes) ---------- */

.isnan-rows > * {
	padding-block: var(--wp--preset--spacing--6);
	border-top: 1px solid var(--wp--preset--color--border);
	margin-block-start: 0 !important;
}

.isnan-rows > *:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.isnan-row-text p:first-child {
	font-size: 18px;
	line-height: 28px;
	padding-top: 10px;
}

.isnan-step-number {
	font-family: var(--wp--preset--font-family--display);
	font-size: 28px;
	line-height: 36px;
	font-weight: 600;
	color: var(--wp--preset--color--green);
	min-width: 48px;
}

/* ---------- Forfaits ---------- */

.isnan-plan {
	position: relative;
	display: flex;
	flex-direction: column;
}

.isnan-plan > * { margin-block: 0; }
.isnan-plan > * + * { margin-top: var(--wp--preset--spacing--4); }
.isnan-plan > .isnan-badge + * { margin-top: 0; }

.isnan-plan h3 {
	font-size: 24px;
	line-height: 32px;
	font-weight: 700;
}

.isnan-plan .isnan-plan-for {
	margin-top: var(--wp--preset--spacing--1);
	font-weight: 500;
}

.isnan-plan .isnan-plan-desc {
	color: var(--wp--preset--color--ink-muted);
	flex-grow: 1;
}

.isnan-price {
	margin-top: var(--wp--preset--spacing--6);
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-price strong {
	font-size: 28px;
	line-height: 36px;
	font-weight: 700;
	color: var(--wp--preset--color--navy);
	margin-right: var(--wp--preset--spacing--2);
}

.isnan-plan .isnan-plan-link {
	margin-top: var(--wp--preset--spacing--6);
	padding-top: var(--wp--preset--spacing--4);
	border-top: 1px solid var(--wp--preset--color--border);
	font-weight: 500;
}

.isnan-plan.is-featured {
	background-color: var(--wp--preset--color--navy);
	border-color: var(--wp--preset--color--navy);
	color: var(--wp--preset--color--light);
}

.isnan-plan.is-featured .isnan-plan-desc { color: var(--wp--preset--color--light); }
.isnan-plan.is-featured .isnan-price { color: var(--wp--preset--color--mint); }
.isnan-plan.is-featured .isnan-price strong { color: var(--wp--preset--color--light); }
.isnan-plan.is-featured .isnan-plan-link { border-color: var(--wp--preset--color--navy-raised); }
.isnan-plan.is-featured a:where(:not(.wp-element-button)) { color: var(--wp--preset--color--green-bright); }
.isnan-plan.is-featured :focus-visible { outline-color: var(--wp--preset--color--green-bright); }

.isnan-badge {
	position: absolute;
	top: -14px;
	left: var(--wp--preset--spacing--6);
	margin: 0 !important;
	background: var(--wp--preset--color--green);
	color: var(--wp--preset--color--white);
	border-radius: var(--wp--custom--radius--pill);
	padding: 4px 12px;
	font-size: 12px;
	line-height: 16px;
	font-weight: 500;
	letter-spacing: 0.02em;
}

.isnan-price-pill {
	display: inline-block;
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--navy-raised);
	color: var(--wp--preset--color--mint);
	padding: 4px 16px;
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
}

/* ---------- Engagements ---------- */

.isnan-promise > * {
	border-top: 2px solid var(--wp--preset--color--green);
	padding-top: var(--wp--preset--spacing--4);
}

.isnan-promise p { font-size: 14px; line-height: 20px; color: var(--wp--preset--color--ink-muted); }
.isnan-promise p strong { display: block; font-size: 16px; line-height: 26px; font-weight: 500; color: var(--wp--preset--color--navy); }

/* ---------- Avis ---------- */

.isnan-reviews {
	columns: 3 300px;
	column-gap: var(--wp--preset--spacing--6);
}

.isnan-reviews.is-columns-2 { columns: 2 300px; }

.isnan-reviews > * {
	break-inside: avoid;
	margin-block: 0 var(--wp--preset--spacing--6) !important;
}

/* ---------- Rangée de cartes : la dernière ligne incomplète s'étire sur toute la largeur ---------- */

.isnan-card-row {
	--isnan-card-row-columns: 4;
	--isnan-card-row-gap: var(--wp--preset--spacing--6);
	display: flex;
	flex-wrap: wrap;
	gap: var(--isnan-card-row-gap);
}

.isnan-card-row.is-columns-1 { --isnan-card-row-columns: 1; }
.isnan-card-row.is-columns-2 { --isnan-card-row-columns: 2; }
.isnan-card-row.is-columns-3 { --isnan-card-row-columns: 3; }

@media (max-width: 1099px) {
	.isnan-card-row.is-columns-4 { --isnan-card-row-columns: 2; }
}

.isnan-card-row.isnan-card-row > * {
	flex: 1 1 max(260px, calc((100% - (var(--isnan-card-row-columns) - 1) * var(--isnan-card-row-gap)) / var(--isnan-card-row-columns)));
	margin: 0;
}

.isnan-card-row.isnan-card-row > :only-child { flex-grow: 0; }

.isnan-review {
	background: var(--wp--preset--color--light);
	border-radius: var(--wp--custom--radius--md);
	padding: var(--wp--preset--spacing--6);
}

.isnan-review-author {
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--2);
}

.isnan-review-author strong { font-weight: 500; }
.isnan-review-author span { font-size: 14px; color: var(--wp--preset--color--ink-muted); }

.isnan-rating strong {
	font-size: 28px;
	line-height: 36px;
}

/* ---------- Photo ---------- */

.isnan-photo img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: 78% center;
	width: 100%;
	border-radius: var(--wp--custom--radius--md);
}

.isnan-photo-placeholder {
	aspect-ratio: 4 / 5;
	display: grid;
	place-items: center;
	text-align: center;
	border-radius: var(--wp--custom--radius--md);
}

/* ---------- En-tête ---------- */

.wp-site-blocks > header.wp-block-template-part {
	position: sticky;
	top: 0;
	z-index: 50;
}

.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 32px; }

@media (max-width: 782px) {
	.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 46px; }
}

@media (max-width: 600px) {
	.admin-bar .wp-site-blocks > header.wp-block-template-part { top: 0; }
}

.isnan-header {
	min-height: var(--wp--custom--header-height);
	border-bottom: 1px solid var(--wp--preset--color--navy-raised);
}

.isnan-header .wp-block-site-logo img,
.isnan-header .isnan-logo img {
	width: 132px;
	height: auto;
}

.isnan-header .wp-block-navigation a:where(:not(.wp-element-button)) {
	color: var(--wp--preset--color--light);
}

.isnan-header .wp-block-navigation a:where(:not(.wp-element-button)):hover,
.isnan-header .wp-block-navigation .current-menu-item > a {
	color: var(--wp--preset--color--green-bright);
	text-decoration: none;
}

.isnan-header .wp-block-navigation__responsive-container.is-menu-open {
	padding: var(--wp--preset--spacing--6) clamp(16px, 4vw, 24px);
}

.isnan-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: stretch;
	padding-top: var(--wp--preset--spacing--12);
}

.isnan-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	font-size: 20px;
	line-height: 28px;
}

.isnan-header .wp-block-navigation__responsive-container-open,
.isnan-header .wp-block-navigation__responsive-container-close {
	color: var(--wp--preset--color--light);
}

@media (max-width: 599px) {
	.wp-block-buttons.isnan-header-cta { display: none; }
}

/* ---------- Pied de page ---------- */

.isnan-footer { border-top: 1px solid var(--wp--preset--color--navy-raised); }
.isnan-footer .isnan-logo img { width: 160px; height: auto; }

.isnan-footer h2 {
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--mint);
}

.isnan-footer .wp-block-list {
	list-style: none;
	padding-left: 0;
}

.isnan-footer .wp-block-list li + li { margin-top: var(--wp--preset--spacing--2); }

.isnan-footer .wp-block-list a {
	color: var(--wp--preset--color--light);
}

.isnan-footer .wp-block-list a:hover {
	color: var(--wp--preset--color--green-bright);
}

.isnan-footer-bottom {
	border-top: 1px solid var(--wp--preset--color--navy-raised);
	font-size: 14px;
	line-height: 20px;
	color: var(--wp--preset--color--mint);
}

/* ---------- Articles et listes d'articles ---------- */

.isnan-post-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding: 0;
}

.isnan-post-card .wp-block-post-featured-image {
	margin: 0;
}

.isnan-post-card .wp-block-post-featured-image img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 0;
}

.isnan-post-card-body {
	padding: var(--wp--preset--spacing--6);
	flex-grow: 1;
}

.isnan-post-card .wp-block-post-title {
	font-size: 20px;
	line-height: 28px;
	font-weight: 500;
}

.isnan-post-card .wp-block-post-title a { color: var(--wp--preset--color--navy); }
.isnan-post-card .wp-block-post-title a:hover { color: var(--wp--preset--color--green); }

.isnan-post-card .wp-block-post-excerpt { color: var(--wp--preset--color--ink-muted); }

.wp-block-post-content > h2 { margin-top: var(--wp--preset--spacing--12); }
.wp-block-post-content > h3 { margin-top: var(--wp--preset--spacing--8); }

.wp-block-query-pagination {
	gap: var(--wp--preset--spacing--2);
	font-weight: 500;
}

.wp-block-query-pagination-numbers .page-numbers {
	display: inline-grid;
	place-items: center;
	min-width: 40px;
	height: 40px;
	border-radius: var(--wp--custom--radius--sm);
}

.wp-block-query-pagination-numbers .page-numbers.current {
	background: var(--wp--preset--color--navy);
	color: var(--wp--preset--color--white);
}

/* ---------- FAQ ---------- */

.wp-block-details {
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-block: var(--wp--preset--spacing--4);
}

.wp-block-details + .wp-block-details { margin-top: 0; }

.wp-block-details summary {
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--4);
	font-weight: 500;
	font-size: 18px;
	line-height: 28px;
	cursor: pointer;
}

.wp-block-details summary::-webkit-details-marker { display: none; }

.wp-block-details summary::after {
	content: "";
	flex: none;
	width: 24px;
	height: 24px;
	margin-top: 2px;
	background-color: var(--wp--preset--color--green);
	-webkit-mask: var(--isnan-icon-chevron) center / contain no-repeat;
	mask: var(--isnan-icon-chevron) center / contain no-repeat;
	transition: transform 0.15s ease;
}

.wp-block-details[open] summary::after { transform: rotate(180deg); }
.wp-block-details > :not(summary) { color: var(--wp--preset--color--ink-muted); }

/* ---------- Formulaires (Spectra, Contact Form 7, WPForms, recherche) ---------- */

input,
select,
textarea {
	box-sizing: border-box;
	max-width: 100%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
select,
textarea {
	width: 100%;
	font: inherit;
	color: var(--wp--preset--color--navy);
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--ink-muted);
	border-radius: var(--wp--custom--radius--sm);
	padding: 12px 16px;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid var(--wp--preset--color--navy);
	outline-offset: 0;
	border-color: var(--wp--preset--color--navy);
}

label {
	font-weight: 500;
}

input[type="submit"],
button[type="submit"] {
	background: var(--wp--preset--color--green);
	color: var(--wp--preset--color--white);
	border: 0;
	border-radius: var(--wp--custom--radius--sm);
	padding: 12px 24px;
	font: 500 16px/24px var(--wp--preset--font-family--sans);
	cursor: pointer;
}

input[type="submit"]:hover,
button[type="submit"]:hover {
	background: var(--wp--preset--color--navy);
}

.wp-block-search__inside-wrapper { gap: var(--wp--preset--spacing--2); }

/* ---------- Tableaux ---------- */

.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table th,
.wp-block-table td { border: 1px solid var(--wp--preset--color--border); padding: 12px 16px; text-align: left; }
.wp-block-table thead { border-bottom: 0; }
.wp-block-table th { background: var(--wp--preset--color--light); font-weight: 500; }

.is-style-isnan-dark p a { overflow-wrap: anywhere; }

/* ---------- Formulaire guide gratuit ---------- */

.isnan-lead-form [hidden] { display: none !important; }

.isnan-lead-form__form {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--4);
}

.isnan-lead-form__form p { margin: 0; }

.isnan-lead-form__row {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: var(--wp--preset--spacing--4);
}

.isnan-lead-form__field {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--1);
}

.isnan-lead-form__field label { font-size: 14px; line-height: 20px; }

.isnan-lead-form input[aria-invalid="true"] { border-color: var(--wp--preset--color--navy); border-width: 2px; }

.isnan-lead-form__error {
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--navy);
}

.isnan-lead-form__error::before { content: "! "; color: var(--wp--preset--color--green); font-weight: 700; }

.isnan-lead-form__trap {
	position: absolute;
	left: -10000px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.isnan-lead-form__consent {
	display: grid;
	grid-template-columns: 20px 1fr;
	gap: var(--wp--preset--spacing--2);
	align-items: start;
}

.isnan-lead-form__consent input {
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: var(--wp--preset--color--green);
}

.isnan-lead-form__consent label {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-lead-form__submit { width: 100%; cursor: pointer; }
.isnan-lead-form__submit:disabled { cursor: progress; opacity: 0.8; }

.isnan-lead-form__status {
	padding: var(--wp--preset--spacing--4);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--light);
	font-size: 14px;
	line-height: 20px;
}

.isnan-lead-form__success:focus { outline: none; }
.isnan-lead-form__success > * + * { margin-top: var(--wp--preset--spacing--2); }

.isnan-lead-form__success-title {
	font-size: 20px;
	line-height: 28px;
	font-weight: 500;
	padding-left: 36px;
	position: relative;
}

.isnan-lead-form__success-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	width: 24px;
	height: 24px;
	background-color: var(--wp--preset--color--green);
	-webkit-mask: var(--isnan-icon-check) center / contain no-repeat;
	mask: var(--isnan-icon-check) center / contain no-repeat;
}

/* ---------- Comparatif ISNAN vs embauche ---------- */

.isnan-comparatif {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--md);
	padding: var(--wp--preset--spacing--8);
}

.isnan-comparatif > * + *,
.isnan-comparatif__result > * + * { margin-top: var(--wp--preset--spacing--6); }

.isnan-comparatif__plans {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--2);
}

.isnan-comparatif__plan {
	min-height: 44px;
	padding: 0 var(--wp--preset--spacing--4);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--sm);
	background: var(--wp--preset--color--light);
	color: var(--wp--preset--color--navy);
	font: inherit;
	font-weight: 500;
	cursor: pointer;
	transition: background-color 150ms ease, border-color 150ms ease;
}

.isnan-comparatif__plan:hover { border-color: var(--wp--preset--color--green); }

.isnan-comparatif__plan[aria-pressed="true"] {
	background: var(--wp--preset--color--green);
	border-color: var(--wp--preset--color--green);
	color: var(--wp--preset--color--white);
}

.isnan-comparatif__plan:focus-visible {
	outline: 3px solid var(--wp--preset--color--navy);
	outline-offset: 2px;
}

.isnan-comparatif__range label { display: block; font-weight: 500; }
.isnan-comparatif__range input[type="range"] {
	width: 100%;
	margin-top: var(--wp--preset--spacing--2);
	accent-color: var(--wp--preset--color--green);
}

.isnan-comparatif__scale {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	line-height: 16px;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-comparatif__cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: var(--wp--preset--spacing--6);
}

.isnan-comparatif__cards[hidden],
.isnan-comparatif__saving[hidden],
.isnan-comparatif__limit[hidden] { display: none; }

.isnan-comparatif__card {
	border-radius: var(--wp--custom--radius--md);
	background: var(--wp--preset--color--light);
	padding: var(--wp--preset--spacing--6);
}

.isnan-comparatif__card.is-isnan {
	background: var(--wp--preset--color--navy);
	color: var(--wp--preset--color--light);
}

.isnan-comparatif__label {
	font-size: 14px;
	line-height: 20px;
	font-weight: 500;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-comparatif__card.is-isnan .isnan-comparatif__label,
.isnan-comparatif__card.is-isnan .isnan-comparatif__note,
.isnan-comparatif__card.is-isnan .isnan-comparatif__price { color: var(--wp--preset--color--mint); }

.isnan-comparatif__price {
	margin-top: var(--wp--preset--spacing--2);
	font-size: 14px;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-comparatif__price strong {
	font-size: 28px;
	line-height: 36px;
	font-weight: 700;
	color: var(--wp--preset--color--navy);
}

.isnan-comparatif__card.is-isnan .isnan-comparatif__price strong { color: var(--wp--preset--color--white); }

.isnan-comparatif__note { font-size: 14px; color: var(--wp--preset--color--ink-muted); }

.isnan-comparatif__list {
	margin-top: var(--wp--preset--spacing--4);
	font-size: 14px;
	line-height: 22px;
}

.isnan-comparatif__card.is-isnan .is-style-isnan-checklist > li::before { background-color: var(--wp--preset--color--green-bright); }
.isnan-comparatif__list > li[hidden] { display: none; }

.isnan-comparatif__list.is-cons { list-style: none; padding-left: 0; }
.isnan-comparatif__list.is-cons > li { position: relative; padding-left: 36px; }
.isnan-comparatif__list.is-cons > li + li { margin-top: var(--wp--preset--spacing--2); }
.isnan-comparatif__list.is-cons > li::before {
	content: "×";
	position: absolute;
	left: 6px;
	top: -2px;
	font-size: 20px;
	font-weight: 700;
	color: var(--wp--preset--color--ink-muted);
}

.isnan-comparatif__saving {
	border-radius: var(--wp--custom--radius--md);
	background: var(--wp--preset--color--light);
	padding: var(--wp--preset--spacing--6);
	text-align: center;
}

.isnan-comparatif__saving-value {
	font-family: var(--wp--preset--font-family--display);
	font-size: 32px;
	line-height: 40px;
	font-weight: 600;
	color: var(--wp--preset--color--green);
}

.isnan-comparatif__limit {
	border-left: 4px solid var(--wp--preset--color--green);
	background: var(--wp--preset--color--light);
	padding: var(--wp--preset--spacing--6);
}

.isnan-comparatif__source {
	font-size: 12px;
	line-height: 18px;
	color: var(--wp--preset--color--ink-muted);
}

@media (max-width: 639px) {
	.isnan-comparatif { padding: var(--wp--preset--spacing--6); }
}
