/* NBP Assistenza PC: usa le variabili --nb-* del tema se presenti. */
.nbpa {
	--nbpa-ink: var(--nb-ink, #15233b);
	--nbpa-muted: var(--nb-muted, #4e5c74);
	--nbpa-line: var(--nb-line, #c9d2dc);
	--nbpa-tag: var(--nb-tag, #f4c53d);
	--nbpa-go: var(--nb-go, #16643f);
	--nbpa-surface: var(--nb-surface, #fff);
	color: var(--nbpa-ink);
}
.nbpa *, .nbpa *::before, .nbpa *::after { box-sizing: border-box; }
.nbpa-group + .nbpa-group { margin-top: 3.5rem; }
.nbpa-group h2 { margin: 0 0 .4rem; }
.nbpa-intro { margin: 0 0 1.5rem; color: var(--nbpa-muted); }
.nbpa-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr));
	gap: 1.25rem;
}
.nbpa-plan {
	display: flex;
	flex-direction: column;
	padding: 1.5rem;
	background: var(--nbpa-surface);
	border: 2px solid var(--nbpa-ink);
	border-radius: .5rem;
}
.nbpa-plan h3 { margin: 0 0 .75rem; font-size: 1.35rem; font-weight: 800; line-height: 1.2; }
/* Il prezzo è un cartellino, come nel resto del sito. */
.nbpa-price {
	position: relative;
	align-self: flex-start;
	margin: 0 0 1rem;
	padding: .45rem 1rem .45rem 1.9rem;
	background: var(--nbpa-tag);
	font-weight: 800;
	clip-path: polygon(1rem 0, 100% 0, 100% 100%, 1rem 100%, 0 50%);
}
.nbpa-price::before {
	content: "";
	position: absolute;
	top: 50%;
	left: .85rem;
	width: .5rem;
	height: .5rem;
	margin-top: -.25rem;
	border-radius: 50%;
	background: var(--nbpa-surface);
}
.nbpa-desc { margin: 0 0 .75rem; }
.nbpa-list { margin: 0 0 1.25rem; padding: 0; list-style: none; }
.nbpa-list li { position: relative; padding-left: 1.6rem; }
.nbpa-list li + li { margin-top: .4rem; }
.nbpa-list li::before {
	content: "";
	position: absolute;
	left: .2rem;
	top: .35em;
	width: .45rem;
	height: .8rem;
	border: solid var(--nbpa-go);
	border-width: 0 3px 3px 0;
	transform: rotate(45deg);
}
.nbpa-actions { margin-top: auto; display: flex; flex-direction: column; gap: .5rem; }
.nbpa-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 3.2rem;
	padding: .8rem 1.25rem;
	border-radius: .4rem;
	background: var(--nbpa-ink);
	color: #fff !important;
	font-weight: 800;
	text-align: center;
	text-decoration: none !important;
}
.nbpa-btn--wa { background: var(--nbpa-go); }
.nbpa-link { text-align: center; color: var(--nbpa-ink); font-size: .95rem; }
.nbpa-btn:focus-visible, .nbpa-link:focus-visible { outline: 3px solid var(--nbpa-tag); outline-offset: 3px; }
.nbpa-fine { margin-top: 2rem; font-size: .95rem; color: var(--nbpa-muted); }
.nbpa-fine p { margin: 0 0 .4rem; }
.nbpa-fine a { color: var(--nbpa-ink); }

.nbpa-call { margin: 2.5rem 0 0; font-size: 1.15rem; }
.nbpa-call a { color: var(--nbpa-ink); font-weight: 800; white-space: nowrap; }
