.offers-v2{
	font-family:var(--blokkus-font-body);
	color:var(--blokkus-text);
	background:radial-gradient(circle at 20% 0%, var(--blokkus-surface, #ffffff) 0, var(--blokkus-surface-alt, #f8f8fa) 30%, var(--blokkus-bg, #f0f2f7) 100%);
	min-height:100vh;
	padding-bottom:40px;
}
.offers-container{
	width:min(1200px,92vw);
	margin:0 auto;
}
.offers-v2 h1,
.offers-v2 h2,
.offers-v2 h3{
	font-family:var(--blokkus-font-heading);
	color:var(--blokkus-deep);
	line-height:1.1;
}
.offers-astro{
	width:100%;
	margin:32px 0 26px 0;
	padding:0;
	text-align:left;
}
.offers-astro h1{
	font-size:3.1em;
	font-weight:500;
	line-height:1.08em;
	margin:0;
}
.offers-astro .title-underline{
	display:block;
	height:4px;
	width:56px;
	background:linear-gradient(90deg,#50c8a0,#1c285c);
	border-radius:2px;
	margin:18px 0 0 0;
}
.offers-table{
	width:100%;
	margin:0 auto 38px auto;
	border-collapse:separate;
	border-spacing:0;
	background:var(--blokkus-surface, #fff);
	border-radius:18px;
	box-shadow:0 8px 32px rgba(28,40,92,.08);
	overflow:hidden;
}
.offers-table th{
	background:var(--blokkus-surface-alt, #f8f8fa);
	color:var(--blokkus-deep);
	font-size:18px;
	font-family:var(--blokkus-font-heading);
	font-weight:700;
	padding:22px 10px 16px 10px;
	border-bottom:2px solid var(--blokkus-line);
}
.offers-table td{
	padding:18px 10px;
	font-size:15px;
	font-family:var(--blokkus-font-body);
	border-bottom:1px solid var(--blokkus-line);
	text-align:center;
}
.offers-table tr:last-child td{
	border-bottom:none;
}
.offers-table .offers-label{
	text-align:left;
	font-weight:600;
	color:var(--blokkus-deep, #1c285c);
}
.offers-table .offers-section{
	background:#1c285c;
	color:#fff;
	font-weight:700;
	font-size:15px;
	text-align:left;
	letter-spacing:.04em;
}
.offers-table .offers-yes{
	color:var(--blokkus-mint);
	font-size:20px;
}
.offers-table .offers-no{
	color:var(--blokkus-accent);
	font-size:20px;
}
.offers-table .offers-option{
	color:var(--blokkus-muted, #8c919b);
	font-size:14px;
}
.offers-table .offers-best{
	background:#dcf3ea;
	background:color-mix(in srgb, var(--blokkus-mint, #50c8a0) 22%, var(--blokkus-surface, #fff));
	color:var(--blokkus-deep, #1c285c);
	border-radius:8px;
	font-size:13px;
	font-weight:700;
	padding:4px 10px;
	display:inline-block;
	margin-top:8px;
}
.offers-table img{
	height:54px;
	margin-bottom:8px;
}
.offers-cta{
	display:flex;
	gap:18px;
	justify-content:center;
	margin:38px 0 0 0;
}
.offers-btn{
	display:inline-block;
	padding:15px 32px;
	border-radius:10px;
	font-weight:700;
	font-size:16px;
	text-transform:uppercase;
	letter-spacing:.03em;
	background:linear-gradient(90deg,var(--blokkus-accent),#ef315f);
	color:#fff;
	box-shadow:0 8px 24px rgba(214,23,66,.12);
	transition:transform .2s,box-shadow .2s;
	border:none;
	cursor:pointer;
}
.offers-btn:hover{
	transform:translateY(-2px);
	box-shadow:0 16px 30px rgba(214,23,66,.18);
}
@media screen and (max-width:900px){
	.offers-table th,.offers-table td{padding:12px 4px;}
	.offers-cta{flex-direction:column;gap:12px;}
}
@media screen and (max-width:600px){
	.offers-container{width:calc(100vw - 28px);}
	.offers-astro{margin:32px 0 28px 0;padding:0;}
	.offers-astro h1{font-size:2rem;line-height:1.08em;}
	.offers-table{font-size:13px;margin-bottom:28px;}
	.offers-btn{width:100%;max-width:340px;margin:auto;}
}

/* ---- Déploiement dédié ou On-Premise : mention sous le tableau ---- */
.offers-deploy{
	margin:8px auto 40px;
	padding:28px 24px;
	max-width:820px;
	text-align:center;
	border:1px solid var(--blokkus-line);
	border-radius:16px;
	background:var(--blokkus-surface);
}
.offers-deploy h2{
	font-family:var(--blokkus-font-heading);
	font-size:clamp(20px,2.4vw,28px);
	color:var(--blokkus-deep);
	margin:0 0 12px;
}
.offers-deploy p{
	font-size:16px;
	line-height:1.55;
	color:var(--blokkus-text-secondary);
	margin:0 auto 20px;
	max-width:640px;
}
@media screen and (max-width:600px){
	.offers-deploy{padding:22px 16px;margin-bottom:32px;}
	.offers-deploy p{font-size:15px;}
	.offers-deploy .btn-main{display:block;width:100%;max-width:340px;margin:0 auto;}
}

/* ---- Chapô des offres : porte le positionnement des trois offres sur tous les écrans ---- */
.offers-intro{
	max-width:820px;
	margin:0 auto 32px;
	text-align:center;
	font-size:16px;
	line-height:1.6;
	color:var(--blokkus-text-secondary);
}
.offers-intro strong{
	color:var(--blokkus-deep);
	font-weight:700;
}
/* Renvoi vers /solution/, posé au-dessus du comparatif. */
.offers-solution-link{
	max-width:820px;
	margin:-18px auto 32px;
	text-align:center;
	font-size:15px;
	color:var(--blokkus-muted);
}
.offers-solution-link a{
	margin-left:8px;
	font-weight:600;
	color:var(--blokkus-deep);
	text-decoration:none;
	border-bottom:2px solid rgba(80,200,160,.7);
	border-bottom:2px solid color-mix(in srgb, var(--blokkus-mint) 70%, transparent);
	padding-bottom:2px;
}
.offers-solution-link a::after{
	content:"\2192";
	margin-left:6px;
}
.offers-solution-link a:hover{
	color:var(--blokkus-accent);
	border-bottom-color:var(--blokkus-accent);
}

@media screen and (max-width:600px){
	.offers-intro{font-size:15px;text-align:left;margin-bottom:24px;}
	.offers-solution-link{text-align:left;margin-top:-12px;}
}

/* ------------------------------------------------------------
   Distribution : revendeurs et clients finaux, en fin de page
   ------------------------------------------------------------
   Volontairement plus sobre que .offers-deploy : pas de carte, pas de
   fond. Le visiteur vient ici comparer des offres, la présence revendeur
   doit se voir sans s'imposer. L'argumentaire complet est sur /solution/. */

.offers-network{
	margin:0 auto 44px;
	padding:26px 24px 0;
	max-width:820px;
	text-align:center;
	border-top:1px solid var(--blokkus-line);
}

.offers-network h2{
	margin:0 0 22px;
	font-size:clamp(19px,3.4vw,23px);
	color:var(--blokkus-deep);
}

.offers-network-cols{
	display:grid;
	gap:22px;
	margin:0 0 22px;
	text-align:left;
}

.offers-network h3{
	margin:0 0 6px;
	font-family:var(--blokkus-font-heading);
	font-size:16px;
	color:var(--blokkus-deep);
}

.offers-network p{
	margin:0;
	font-size:15px;
	line-height:1.55;
	color:var(--blokkus-text-secondary);
}

.offers-network a:not(.btn-ghost){
	color:var(--blokkus-deep);
	text-decoration:underline;
}

@media screen and (min-width:720px){
	.offers-network-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;}
}
