/**
 * Neutrope SEO Report Dashboard Pro product page.
 *
 * All selectors are scoped below .nbc-srdp so the commercial page can evolve
 * without changing shared article or checkout presentation elsewhere.
 */

.nbc-srdp {
	--srdp-ink: #172238;
	--srdp-muted: #536079;
	--srdp-line: #d9e1ee;
	--srdp-soft: #f4f7fc;
	--srdp-blue: #315cce;
	--srdp-blue-dark: #2447a5;
	--srdp-cyan: #15a7bd;
	--srdp-warm: #fff7e8;
	--srdp-radius: 22px;
	color: var(--srdp-ink);
}

/*
 * This sales page uses the parent theme's article measures intentionally:
 * - wide track for comparison-heavy/product-showcase sections
 * - readable track for trust, FAQ, and checkout sections
 */
.nt-article > .nt-article-content > .nbc-srdp {
	grid-column: wide-start / wide-end;
}

.nbc-srdp *,
.nbc-srdp *::before,
.nbc-srdp *::after {
	box-sizing: border-box;
}

.nbc-srdp > * {
	width: 100%;
	margin-block: clamp(3rem, 7vw, 5.5rem);
}

.nbc-srdp > .nbc-srdp__boundary,
.nbc-srdp > section[aria-labelledby="seo039-faq-title"],
.nbc-srdp > .nbc-srdp__purchase {
	max-width: var(--nt-container-narrow);
	margin-inline: auto;
}

.nbc-srdp > :first-child {
	margin-top: 0;
}

.nbc-srdp > :last-child {
	margin-bottom: 0;
}

.nbc-srdp h2,
.nbc-srdp h3 {
	color: var(--srdp-ink);
	letter-spacing: .01em;
}

.nbc-srdp h2 {
	margin: 0 0 1rem;
	font-size: clamp(1.55rem, 3.5vw, 2.2rem);
	line-height: 1.35;
}

.nbc-srdp h3 {
	margin: 0 0 .65rem;
	font-size: clamp(1.08rem, 2.2vw, 1.28rem);
	line-height: 1.5;
}

.nbc-srdp p,
.nbc-srdp li,
.nbc-srdp td,
.nbc-srdp th,
.nbc-srdp summary {
	line-height: 1.85;
}

.nbc-srdp a:not(.nbc-srdp__button) {
	text-decoration-thickness: .08em;
	text-underline-offset: .18em;
}

.nbc-srdp__section-lead {
	max-width: 50rem;
	margin: 0 0 1.6rem;
	color: var(--srdp-muted);
}

.nbc-srdp__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	margin: 0 0 .75rem;
	color: var(--srdp-blue-dark);
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 1.4;
	text-transform: uppercase;
}

.nbc-srdp__eyebrow::before {
	width: 1.7rem;
	height: 2px;
	background: var(--srdp-cyan);
	content: "";
}

.nbc-srdp__hero {
	position: relative;
	overflow: hidden;
	margin-top: 0;
	padding: clamp(2rem, 5.5vw, 4.6rem);
	border: 1px solid #cedbf4;
	border-radius: clamp(20px, 4vw, 32px);
	background:
		radial-gradient(circle at 92% 15%, rgb(21 167 189 / 22%), transparent 35%),
		linear-gradient(145deg, #f7f9ff 0%, #e9efff 52%, #eefbfd 100%);
	box-shadow: 0 24px 70px rgb(31 62 126 / 13%);
	isolation: isolate;
}

.nbc-srdp__hero::after {
	position: absolute;
	right: -4rem;
	bottom: -6rem;
	z-index: -1;
	width: 18rem;
	height: 18rem;
	border: 2.8rem solid rgb(49 92 206 / 7%);
	border-radius: 50%;
	content: "";
}

.nbc-srdp__hero-copy {
	max-width: 54rem;
}

.nbc-srdp__hero h2 {
	max-width: 52rem;
	margin-bottom: 1rem;
	font-size: clamp(1.85rem, 4.5vw, 3.25rem);
	line-height: 1.27;
}

.nbc-srdp__hero-lead {
	max-width: 50rem;
	margin: 0;
	color: #34435f;
	font-size: clamp(1rem, 2vw, 1.16rem);
}

.nbc-srdp__facts {
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.nbc-srdp__facts li {
	margin: 0;
	padding: .48rem .85rem;
	border: 1px solid rgb(49 92 206 / 20%);
	border-radius: 999px;
	background: rgb(255 255 255 / 78%);
	color: #2d3e60;
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.4;
}

.nbc-srdp__actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 1.65rem;
}

.nbc-srdp__button {
	display: inline-flex;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: .8rem 1.25rem;
	border: 2px solid var(--srdp-blue);
	border-radius: 999px;
	background: var(--srdp-blue);
	box-shadow: 0 8px 22px rgb(49 92 206 / 19%);
	color: #fff !important;
	font-weight: 800;
	line-height: 1.35;
	text-align: center;
	text-decoration: none !important;
	transition: transform .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.nbc-srdp__button:hover,
.nbc-srdp__button:focus-visible {
	border-color: var(--srdp-blue-dark);
	background: var(--srdp-blue-dark);
	box-shadow: 0 11px 26px rgb(36 71 165 / 25%);
	transform: translateY(-2px);
}

.nbc-srdp__button--secondary {
	background: #fff;
	box-shadow: none;
	color: var(--srdp-blue-dark) !important;
}

.nbc-srdp__button--secondary:hover,
.nbc-srdp__button--secondary:focus-visible {
	background: #edf2ff;
	color: var(--srdp-blue-dark) !important;
}

.nbc-srdp__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.nbc-srdp__card {
	padding: clamp(1.25rem, 3vw, 1.7rem);
	border: 1px solid var(--srdp-line);
	border-radius: var(--srdp-radius);
	background: #fff;
	box-shadow: 0 10px 30px rgb(31 55 98 / 7%);
}

.nbc-srdp__card p:last-child,
.nbc-srdp__card ul:last-child {
	margin-bottom: 0;
}

.nbc-srdp__card-number {
	display: inline-grid;
	width: 2.4rem;
	height: 2.4rem;
	margin-bottom: .9rem;
	place-items: center;
	border-radius: .8rem;
	background: #e9efff;
	color: var(--srdp-blue-dark);
	font-weight: 900;
}

.nbc-srdp__workflow {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
	counter-reset: srdp-step;
}

.nbc-srdp__workflow li {
	position: relative;
	margin: 0;
	padding: 4.25rem 1.1rem 1.25rem;
	border: 1px solid #cfd9ec;
	border-top: 3px solid rgb(49 92 206 / 68%);
	border-radius: 18px;
	background: linear-gradient(180deg, #fff 0%, var(--srdp-soft) 100%);
	box-shadow: 0 12px 30px rgb(31 55 98 / 7%);
	counter-increment: srdp-step;
}

.nbc-srdp__workflow li::before {
	position: absolute;
	top: 1rem;
	left: 1rem;
	display: grid;
	width: 2.35rem;
	height: 2.35rem;
	place-items: center;
	border-radius: 50%;
	background: linear-gradient(145deg, var(--srdp-blue), var(--srdp-cyan));
	box-shadow: 0 7px 16px rgb(49 92 206 / 24%);
	color: #fff;
	content: counter(srdp-step, decimal-leading-zero);
	font-size: .82rem;
	font-weight: 900;
}

@media (min-width: 961px) {
	.nbc-srdp__workflow li:not(:last-child)::after {
		position: absolute;
		top: 1.9rem;
		right: -1.05rem;
		z-index: 2;
		width: 1.1rem;
		height: .7rem;
		background: linear-gradient(90deg, #afbee2, var(--srdp-cyan));
		clip-path: polygon(0 42%, 72% 42%, 72% 0, 100% 50%, 72% 100%, 72% 58%, 0 58%);
		content: "";
	}
}

.nbc-srdp__workflow strong {
	display: block;
	margin-bottom: .25rem;
	line-height: 1.5;
}

.nbc-srdp__workflow span {
	display: block;
	color: var(--srdp-muted);
	font-size: .9rem;
	line-height: 1.65;
}

.nbc-srdp__note {
	margin-top: 1.2rem;
	padding: 1rem 1.2rem;
	border-left: 4px solid var(--srdp-cyan);
	border-radius: 0 12px 12px 0;
	background: #ecf9fb;
	color: #315363;
}

.nbc-srdp__note p {
	margin: 0;
}

.nbc-srdp__report-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .85rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.nbc-srdp__report-list li {
	position: relative;
	margin: 0;
	padding: 1.05rem 1.1rem 1.05rem 3rem;
	border: 1px solid var(--srdp-line);
	border-radius: 16px;
	background: #fff;
}

.nbc-srdp__report-list li::before {
	position: absolute;
	top: 1.2rem;
	left: 1.15rem;
	display: grid;
	width: 1.25rem;
	height: 1.25rem;
	place-items: center;
	border-radius: 50%;
	background: #dff5f7;
	color: #087b8b;
	content: "✓";
	font-size: .75rem;
	font-weight: 900;
	line-height: 1;
}

.nbc-srdp__table-wrap {
	overflow-x: auto;
	margin-top: 1.4rem;
	border: 1px solid var(--srdp-line);
	border-radius: 18px;
	-webkit-overflow-scrolling: touch;
}

.nbc-srdp__table {
	width: 100%;
	min-width: 680px;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	background: #fff;
}

.nbc-srdp__table th,
.nbc-srdp__table td {
	padding: .85rem 1rem;
	border: 0;
	border-bottom: 1px solid var(--srdp-line);
	text-align: left;
	vertical-align: middle;
}

.nbc-srdp__table thead th {
	background: #eaf0ff;
	color: #243653;
	font-weight: 900;
}

.nbc-srdp__table tbody tr:last-child th,
.nbc-srdp__table tbody tr:last-child td {
	border-bottom: 0;
}

.nbc-srdp__table tbody th {
	width: 38%;
	background: #fafbfe;
	font-weight: 700;
}

.nbc-srdp__yes {
	color: #087a65;
	font-weight: 900;
}

.nbc-srdp__dash {
	color: #7c879b;
}

.nbc-srdp__price-card {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	gap: clamp(1.2rem, 4vw, 3rem);
	align-items: start;
	padding: clamp(1.4rem, 4vw, 2.5rem);
	border: 1px solid #cbd8f0;
	border-radius: var(--srdp-radius);
	background: linear-gradient(135deg, #f8faff 0%, #f1f7ff 100%);
}

.nbc-srdp__price {
	margin: .2rem 0 .3rem;
	color: var(--srdp-blue-dark);
	font-size: clamp(2rem, 6vw, 3.6rem);
	font-weight: 900;
	letter-spacing: -.03em;
	line-height: 1.2;
}

.nbc-srdp__price small {
	font-size: .95rem;
	letter-spacing: 0;
}

.nbc-srdp__meta-list,
.nbc-srdp__boundary-list {
	margin: 0;
	padding-left: 1.25rem;
}

.nbc-srdp__meta-list li,
.nbc-srdp__boundary-list li {
	margin: .25rem 0;
}

.nbc-srdp__boundary {
	padding: clamp(1.3rem, 4vw, 2rem);
	border: 1px solid #efd5a5;
	border-radius: var(--srdp-radius);
	background: var(--srdp-warm);
}

.nbc-srdp__boundary h2 {
	font-size: clamp(1.35rem, 3vw, 1.75rem);
}

.nbc-srdp__faq {
	display: grid;
	gap: .7rem;
	margin-top: 1.4rem;
}

.nbc-srdp__faq details {
	border: 1px solid var(--srdp-line);
	border-radius: 14px;
	background: #fff;
}

.nbc-srdp__faq summary {
	position: relative;
	min-height: 52px;
	padding: .8rem 3rem .8rem 1rem;
	cursor: pointer;
	font-weight: 800;
	list-style: none;
}

.nbc-srdp__faq summary::-webkit-details-marker {
	display: none;
}

.nbc-srdp__faq summary::after {
	position: absolute;
	top: 50%;
	right: 1.05rem;
	color: var(--srdp-blue);
	content: "+";
	font-size: 1.45rem;
	font-weight: 600;
	line-height: 1;
	transform: translateY(-50%);
}

.nbc-srdp__faq details[open] summary::after {
	content: "−";
}

.nbc-srdp__faq details p {
	margin: 0;
	padding: 0 1rem 1rem;
	color: var(--srdp-muted);
}

.nbc-srdp__purchase {
	padding: clamp(1.5rem, 5vw, 3rem);
	border: 2px solid #9fb4eb;
	border-radius: clamp(20px, 4vw, 30px);
	background: #f5f8ff;
	box-shadow: 0 20px 55px rgb(31 62 126 / 12%);
	scroll-margin-top: 7rem;
}

.nbc-srdp__purchase > h2,
.nbc-srdp__purchase > p {
	text-align: center;
}

.nbc-srdp__purchase .nlh-checkout-form {
	margin-inline: auto;
}

.nbc-srdp__legal {
	margin: 1.2rem 0 0;
	color: var(--srdp-muted);
	font-size: .88rem;
	text-align: center;
}

@media (max-width: 960px) {
	.nbc-srdp__grid {
		grid-template-columns: 1fr;
	}

	.nbc-srdp__workflow {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.nbc-srdp__price-card {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 620px) {
	.nbc-srdp > * {
		margin-block: 3.25rem;
	}

	.nbc-srdp__hero {
		padding: 1.5rem 1.1rem;
	}

	.nbc-srdp__actions,
	.nbc-srdp__actions .nbc-srdp__button {
		width: 100%;
	}

	.nbc-srdp__facts {
		gap: .4rem;
	}

	.nbc-srdp__facts li {
		font-size: .82rem;
	}

	.nbc-srdp__workflow,
	.nbc-srdp__report-list {
		grid-template-columns: 1fr;
	}

	.nbc-srdp__workflow li {
		padding: 1.1rem 1rem 1.1rem 4rem;
	}

	.nbc-srdp__workflow li::before {
		top: 1.15rem;
	}

	.nbc-srdp__workflow li:not(:last-child)::after {
		position: absolute;
		bottom: -.85rem;
		left: 2.1rem;
		width: 2px;
		height: .85rem;
		background: linear-gradient(var(--srdp-blue), var(--srdp-cyan));
		content: "";
	}

	.nbc-srdp__table-wrap {
		margin-right: -.35rem;
		margin-left: -.35rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.nbc-srdp__button {
		transition: none;
	}
}
