/*
 * Homepage 2 — neo-brutalist layout, scoped to .dps-home-v2.
 * All colours, radii and motion come from tokens.css.
 */

.dps-home-v2 {
	background: var(--dps-bg);
	color: var(--dps-fg);
}

.dps-home-v2 .dps-container {
	width: 100%;
	max-width: var(--dps-container);
	margin-inline: auto;
	padding-inline: var(--dps-gutter);
}

.dps-home-v2 h2,
.dps-home-v2 h3 {
	margin: 0;
	font-family: var(--dps-font-display);
	font-weight: 700;
	line-height: .98;
	letter-spacing: -.03em;
	text-transform: uppercase;
	color: var(--dps-fg);
}

.dps-home-v2 p {
	margin: 0;
	line-height: var(--dps-lh-body);
}

.dps-home-v2 em {
	font-style: normal;
}

/* Buttons ------------------------------------------------------------------ */

.dps-home-v2 .dps-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 26px;
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	font: 700 15px/1 var(--dps-font-body);
	letter-spacing: .02em;
	cursor: pointer;
	box-shadow: 3px 3px 0 var(--dps-ink);
	transition: transform var(--dps-t) var(--dps-ease), box-shadow var(--dps-t) var(--dps-ease), background var(--dps-t) var(--dps-ease);
}

.dps-home-v2 .dps-btn:hover {
	transform: translate(2px,2px);
	box-shadow: 2px 2px 0 var(--dps-ink);
}

.dps-home-v2 .dps-btn--v2-accent {
	background: var(--dps-accent);
	color: var(--dps-ink);
}

.dps-home-v2 .dps-btn--v2-ghost {
	background: var(--dps-white);
	color: var(--dps-fg);
}

.dps-home-v2 .dps-btn--v2-dark {
	background: var(--dps-ink);
	color: var(--dps-fg-invert);
	box-shadow: 3px 3px 0 var(--dps-accent);
}

.dps-home-v2 .dps-btn--v2-dark:hover {
	box-shadow: 2px 2px 0 var(--dps-accent);
}

.dps-home-v2 .dps-btn--v2-wa {
	background: var(--dps-whatsapp);
	color: var(--dps-ink);
}

.dps-home-v2 .dps-btn:focus-visible,
.dps-home-v2 a:focus-visible,
.dps-home-v2 summary:focus-visible {
	outline: 3px solid var(--dps-accent-text);
	outline-offset: 3px;
}

/* Marquee ------------------------------------------------------------------ */

.dps-home-v2 .dps-marquee {
	background: var(--dps-ink);
	color: var(--dps-fg-invert);
	border-block: 2px solid var(--dps-ink);
	overflow: hidden;
}

.dps-home-v2 .dps-marquee__track {
	display: flex;
	gap: 0;
	white-space: nowrap;
	animation: dps-marquee 34s linear infinite;
	will-change: transform;
	width: max-content;
}

.dps-home-v2 .dps-marquee__item {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 10px 18px;
	font: 700 13px/1 var(--dps-font-display);
	letter-spacing: .12em;
	text-transform: uppercase;
}

.dps-home-v2 .dps-marquee__item::after {
	content: "";
	width: 8px;
	height: 8px;
	background: var(--dps-accent);
	transform: rotate(45deg);
}

@keyframes dps-marquee {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

/* Hero --------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-hero {
	position: relative;
	background: var(--dps-ink);
	color: var(--dps-fg-invert);
	border-bottom: 2px solid var(--dps-ink);
	background-image: linear-gradient(180deg, rgba(16,18,22,.82) 0%, rgba(16,18,22,.5) 100%), url("https://digitalpcstore.com/wp-content/uploads/2026/10/Neo-Brutalist-Orange-PC-Tower.png"), radial-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
	background-size: 100% 100%, cover, 22px 22px;
	background-position: center, center, 0 0;
	background-repeat: no-repeat, no-repeat, repeat;
}

.dps-home-v2 .dps-v2-hero .dps-container {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 32px;
	padding-block: clamp(48px,7vw,88px);
}

.dps-home-v2 .dps-v2-hero__copy {
	position: relative;
	z-index: 2;
}

.dps-home-v2 .dps-v2-tag {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 14px;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-white);
	border-radius: 8px;
	font: 700 12px var(--dps-font-display);
	letter-spacing: .12em;
	text-transform: uppercase;
	transform: rotate(-2deg);
	box-shadow: 3px 3px 0 rgba(0,0,0,.25);
}

.dps-home-v2 .dps-v2-hero__title {
	margin-top: 20px;
	font-size: clamp(44px, 9.5vw, 104px);
	text-shadow: none;
	color: var(--dps-fg-invert);
}

.dps-home-v2 .dps-v2-hero__title em {
	color: var(--dps-accent);
	text-shadow: none;
}

.dps-home-v2 .dps-v2-hero__sub {
	margin-top: 18px;
	max-width: 46ch;
	color: #C7CCD4;
	font-size: clamp(15px, 1.5vw, 18px);
}

.dps-home-v2 .dps-v2-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
}

.dps-home-v2 .dps-v2-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}

.dps-home-v2 .dps-v2-fact {
	padding: 12px 16px;
	background: var(--dps-white);
	color: var(--dps-ink);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	box-shadow: 3px 3px 0 var(--dps-accent);
}

.dps-home-v2 .dps-v2-fact dt {
	font: 700 11px var(--dps-font-display);
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--dps-muted);
}

.dps-home-v2 .dps-v2-fact dd {
	margin: 4px 0 0;
	font: 700 18px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-hero__media {
	position: relative;
}

.dps-home-v2 .dps-v2-hero__card {
	position: relative;
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 16px;
	box-shadow: 7px 7px 0 var(--dps-accent);
	transform: rotate(-3deg);
	transition: transform var(--dps-t) var(--dps-ease);
}

.dps-home-v2 .dps-v2-hero__card:hover {
	transform: rotate(0) scale(1.01);
}

.dps-home-v2 .dps-v2-hero__img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: var(--dps-paper);
	border-radius: 14px 14px 0 0;
	width: 100%;
	height: auto;
}

.dps-home-v2 .dps-v2-hero__meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	padding: 16px;
	border-top: 2px solid var(--dps-ink);
	flex-wrap: wrap;
}

.dps-home-v2 .dps-v2-hero__meta strong {
	font: 700 18px var(--dps-font-display);
	letter-spacing: -.01em;
}

.dps-home-v2 .dps-v2-hero__meta span {
	font: 700 13px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	color: var(--dps-accent-text);
}

.dps-home-v2 .dps-v2-sticker {
	position: absolute;
	display: inline-flex;
	padding: 10px 14px;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	font: 700 13px var(--dps-font-display);
	letter-spacing: .06em;
	text-transform: uppercase;
	box-shadow: 3px 3px 0 rgba(0,0,0,.25);
}

.dps-home-v2 .dps-v2-sticker--1 {
	top: -18px;
	right: -10px;
	transform: rotate(6deg);
}

.dps-home-v2 .dps-v2-sticker--2 {
	bottom: -16px;
	left: -14px;
	transform: rotate(-5deg);
	background: var(--dps-white);
}

/* Section shells ----------------------------------------------------------- */

.dps-home-v2 .dps-v2-section {
	padding-block: clamp(56px,7vw,96px);
	border-bottom: 2px solid var(--dps-ink);
	background: var(--dps-bg);
}

.dps-home-v2 .dps-v2-section--dark {
	background: var(--dps-ink-2);
	color: var(--dps-fg-invert);
	background-image: radial-gradient(rgba(255,255,255,.04) 1px, transparent 1px);
	background-size: 22px 22px;
}

.dps-home-v2 .dps-v2-section--dark h2,
.dps-home-v2 .dps-v2-section--dark h3 {
	color: var(--dps-fg-invert);
}

.dps-home-v2 .dps-v2-section--white {
	background: var(--dps-white);
}

.dps-home-v2 .dps-v2-sec-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: clamp(28px,4vw,48px);
}

.dps-home-v2 .dps-v2-sec-head h2 {
	font-size: clamp(30px,4.6vw,56px);
	max-width: 18ch;
}

.dps-home-v2 .dps-v2-sec-head h2 em {
	color: var(--dps-accent-text);
}

.dps-home-v2 .dps-v2-section--dark .dps-v2-sec-head h2 em {
	color: var(--dps-accent);
	background: none;
}

.dps-home-v2 .dps-v2-sec-head > p {
	max-width: 44ch;
	color: var(--dps-muted);
	font-size: 15px;
}

.dps-home-v2 .dps-v2-section--dark .dps-v2-sec-head > p {
	color: var(--dps-muted-invert);
}

.dps-home-v2 .dps-v2-sec-num {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font: 700 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--dps-accent-text);
	margin-bottom: 12px;
}

.dps-home-v2 .dps-v2-section--dark .dps-v2-sec-num {
	color: var(--dps-accent);
}

.dps-home-v2 .dps-v2-sec-num::before {
	content: "";
	width: 34px;
	height: 3px;
	background: currentColor;
}

/* Stats -------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 16px;
}

.dps-home-v2 .dps-v2-stat {
	padding: 20px;
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	box-shadow: 5px 5px 0 var(--dps-ink);
	text-align: center;
}

.dps-home-v2 .dps-v2-stat b {
	display: block;
	font: 700 clamp(26px,4vw,40px) var(--dps-font-display);
	letter-spacing: -.02em;
}

.dps-home-v2 .dps-v2-stat span {
	display: block;
	margin-top: 6px;
	font: 700 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--dps-muted);
}

.dps-home-v2 .dps-v2-stat--accent {
	background: var(--dps-accent);
	color: var(--dps-ink);
}

.dps-home-v2 .dps-v2-stat--accent span {
	color: var(--dps-ink);
}

/* Budget ------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-budget {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 20px;
}

.dps-home-v2 .dps-v2-budget__card {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 300px;
	padding: 24px;
	background: var(--dps-ink-3);
	color: var(--dps-fg-invert);
	border: 2px solid var(--dps-ink);
	border-radius: 16px;
	box-shadow: 3px 3px 0 var(--dps-ink);
	overflow: hidden;
	transition: transform var(--dps-t) var(--dps-ease), box-shadow var(--dps-t) var(--dps-ease);
}

.dps-home-v2 .dps-v2-budget__card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(16,18,22,.1), rgba(16,18,22,.92));
}

.dps-home-v2 .dps-v2-budget__card > * {
	position: relative;
	z-index: 1;
}

.dps-home-v2 .dps-v2-budget__price {
	font: 700 clamp(34px,6vw,56px) var(--dps-font-display);
	color: var(--dps-accent);
}

.dps-home-v2 .dps-v2-budget__title {
	margin-top: 6px;
	font: 700 20px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-budget__desc {
	margin-top: 8px;
	font-size: 14px;
	color: #C7CCD4;
	max-width: 34ch;
}

.dps-home-v2 .dps-v2-budget__meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 16px;
	font: 700 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.dps-home-v2 .dps-v2-budget__go {
	color: var(--dps-accent);
}

.dps-home-v2 .dps-v2-budget__card:hover {
	transform: translate(-3px,-3px);
	box-shadow: 7px 7px 0 var(--dps-accent);
}

/* Categories --------------------------------------------------------------- */

.dps-home-v2 .dps-v2-cats {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 18px;
}

.dps-home-v2 .dps-v2-cat {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 220px;
	padding: 18px;
	background: var(--dps-ink-3);
	color: var(--dps-fg-invert);
	border: 2px solid var(--dps-ink);
	border-radius: 16px;
	box-shadow: 3px 3px 0 var(--dps-ink);
	overflow: hidden;
	transition: transform var(--dps-t) var(--dps-ease), box-shadow var(--dps-t) var(--dps-ease);
}

.dps-home-v2 .dps-v2-cat::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(16,18,22,.12), rgba(16,18,22,.92));
}

.dps-home-v2 .dps-v2-cat > * {
	position: relative;
	z-index: 1;
}

.dps-home-v2 .dps-v2-cat__icon {
	width: 42px;
	height: 42px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-white);
	border-radius: 8px;
}

.dps-home-v2 .dps-v2-cat__title {
	font: 700 18px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-cat__desc {
	margin-top: 4px;
	font-size: 13px;
	color: #C7CCD4;
}

.dps-home-v2 .dps-v2-cat__go {
	margin-top: 10px;
	font: 700 12px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--dps-accent);
}

.dps-home-v2 .dps-v2-cat--hero {
	min-height: 420px;
}

.dps-home-v2 .dps-v2-cat:hover {
	transform: translate(-3px,-3px);
	box-shadow: 6px 6px 0 var(--dps-accent);
}

/* Products ----------------------------------------------------------------- */

.dps-home-v2 .dps-v2-products {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 20px;
}

.dps-home-v2 .dps-v2-product {
	display: flex;
	flex-direction: column;
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 16px;
	box-shadow: 3px 3px 0 var(--dps-ink);
	overflow: hidden;
	transition: transform var(--dps-t) var(--dps-ease), box-shadow var(--dps-t) var(--dps-ease);
}

.dps-home-v2 .dps-v2-product:hover {
	transform: translate(-3px,-3px);
	box-shadow: 7px 7px 0 var(--dps-accent);
}

.dps-home-v2 .dps-v2-product__img {
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: var(--dps-paper);
	border-bottom: 2px solid var(--dps-ink);
	width: 100%;
	height: auto;
}

.dps-home-v2 .dps-v2-product__body {
	padding: 18px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	flex: 1;
}

.dps-home-v2 .dps-v2-product__name {
	font: 700 17px var(--dps-font-display);
	letter-spacing: -.01em;
	line-height: 1.15;
}

.dps-home-v2 .dps-v2-product__price {
	font: 700 24px var(--dps-font-display);
	color: var(--dps-accent-text);
}

.dps-home-v2 .dps-v2-product__stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font: 700 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--dps-success);
}

.dps-home-v2 .dps-v2-product__stock::before {
	content: "";
	width: 8px;
	height: 8px;
	background: var(--dps-success);
	border-radius: 50%;
}

.dps-home-v2 .dps-v2-product__actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: auto;
}

.dps-home-v2 .dps-v2-product__actions .dps-btn {
	min-height: 46px;
	padding: 0 12px;
	font-size: 13px;
	box-shadow: 3px 3px 0 var(--dps-ink);
}

.dps-home-v2 .dps-v2-more {
	text-align: center;
	margin-top: 32px;
}

/* Split -------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-split {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 36px;
	align-items: center;
}

.dps-home-v2 .dps-v2-split__desc {
	margin-top: 16px;
	max-width: 52ch;
	color: var(--dps-muted-invert);
}

.dps-home-v2 .dps-v2-split__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
}

.dps-home-v2 .dps-v2-split__actions .dps-btn {
	border-color: var(--dps-white);
	box-shadow: 4px 4px 0 rgba(255,255,255,.35);
}

.dps-home-v2 .dps-v2-split__media {
	position: relative;
}

.dps-home-v2 .dps-v2-split__img {
	border: 2px solid var(--dps-white);
	border-radius: 16px;
	box-shadow: 7px 7px 0 var(--dps-accent);
	transform: rotate(3deg);
}

.dps-home-v2 .dps-v2-ribbon {
	position: absolute;
	top: -14px;
	left: -12px;
	z-index: 5;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-white);
	border-radius: 8px;
	padding: 10px 14px;
	font: 700 13px var(--dps-font-display);
	letter-spacing: .08em;
	text-transform: uppercase;
	transform: rotate(-4deg);
}

/* Why ---------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-why {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 18px;
}

.dps-home-v2 .dps-v2-why__card {
	display: grid;
	grid-template-columns: 52px minmax(0,1fr);
	gap: 16px;
	padding: 20px;
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	box-shadow: 3px 3px 0 var(--dps-ink);
}

.dps-home-v2 .dps-v2-why__icon {
	width: 52px;
	height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--dps-ink);
	color: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
}

.dps-home-v2 .dps-v2-why__card h3 {
	font: 700 16px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-why__card p {
	margin-top: 6px;
	color: var(--dps-muted);
	font-size: 14px;
}

/* Timeline ----------------------------------------------------------------- */

.dps-home-v2 .dps-v2-timeline {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 28px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.dps-home-v2 .dps-v2-step {
	position: relative;
	padding-left: 74px;
}

.dps-home-v2 .dps-v2-step__num {
	position: absolute;
	left: 0;
	top: 0;
	width: 58px;
	height: 58px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-ink);
	border-radius: 50%;
	font: 700 18px var(--dps-font-display);
	box-shadow: 3px 3px 0 var(--dps-ink);
}

.dps-home-v2 .dps-v2-step h3 {
	font: 700 18px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-step p {
	margin-top: 6px;
	color: var(--dps-muted);
	font-size: 14px;
}

/* Perks -------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-perks {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 16px;
}

.dps-home-v2 .dps-v2-perk {
	padding: 20px;
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	box-shadow: 3px 3px 0 var(--dps-ink);
	text-align: center;
}

.dps-home-v2 .dps-v2-perk__icon {
	width: 54px;
	height: 54px;
	margin: 0 auto 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--dps-accent);
	color: var(--dps-ink);
	border: 2px solid var(--dps-ink);
	border-radius: 50%;
}

.dps-home-v2 .dps-v2-perk h3 {
	font: 700 15px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-perk p {
	margin-top: 6px;
	color: var(--dps-muted);
	font-size: 13px;
}

/* Store -------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-store {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 28px;
	align-items: center;
}

.dps-home-v2 .dps-v2-store__addr {
	margin-top: 14px;
	font: 700 18px var(--dps-font-display);
}

.dps-home-v2 .dps-v2-facts-list {
	display: grid;
	gap: 12px;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 2px solid var(--dps-ink);
}

.dps-home-v2 .dps-v2-facts-list > div {
	display: grid;
	grid-template-columns: 96px minmax(0,1fr);
	gap: 12px;
}

.dps-home-v2 .dps-v2-facts-list dt {
	font: 700 11px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--dps-muted);
}

.dps-home-v2 .dps-v2-facts-list dd {
	margin: 0;
	font-weight: 600;
}

.dps-home-v2 .dps-v2-facts-list a {
	border-bottom: 3px solid var(--dps-accent);
}

.dps-home-v2 .dps-v2-store__map {
	border: 2px solid var(--dps-ink);
	border-radius: 16px;
	box-shadow: 5px 5px 0 var(--dps-ink);
	overflow: hidden;
	min-height: 320px;
}

.dps-home-v2 .dps-v2-store__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 320px;
	border: 0;
}

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

.dps-home-v2 .dps-v2-faq {
	display: grid;
	grid-template-columns: minmax(0,1fr);
	gap: 14px;
}

.dps-home-v2 .dps-v2-faq details {
	background: var(--dps-white);
	border: 2px solid var(--dps-ink);
	border-radius: 8px;
	box-shadow: 3px 3px 0 var(--dps-ink);
}

.dps-home-v2 .dps-v2-faq summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 16px;
	padding: 18px 22px;
	font: 700 16px var(--dps-font-display);
	cursor: pointer;
	list-style: none;
}

.dps-home-v2 .dps-v2-faq summary::-webkit-details-marker {
	display: none;
}

.dps-home-v2 .dps-v2-faq summary::after {
	content: "+";
	font: 700 24px var(--dps-font-display);
	color: var(--dps-accent-text);
}

.dps-home-v2 .dps-v2-faq details[open] summary::after {
	content: "−";
}

.dps-home-v2 .dps-v2-faq details p {
	padding: 0 22px 20px;
	color: var(--dps-muted);
	font-size: 14px;
}

/* CTA ---------------------------------------------------------------------- */

.dps-home-v2 .dps-v2-cta {
	background: var(--dps-ink-2);
	color: var(--dps-fg-invert);
	border-bottom: 3px solid var(--dps-accent);
}

.dps-home-v2 .dps-v2-cta .dps-container {
	display: flex;
	flex-wrap: wrap;
	gap: 28px;
	align-items: center;
	justify-content: space-between;
	padding-block: clamp(48px,6vw,80px);
}

.dps-home-v2 .dps-v2-cta h2 {
	font-size: clamp(32px,5vw,60px);
	text-shadow: 4px 4px 0 rgba(255,255,255,.5);
}

.dps-home-v2 .dps-v2-cta p {
	margin-top: 12px;
	max-width: 46ch;
	color: var(--dps-muted-invert);
	font-weight: 500;
}

.dps-home-v2 .dps-v2-cta h2 {
	color: var(--dps-fg-invert);
	text-shadow: none;
}

/* The CTA now sits on ink, so its buttons swap to accent + ghost. */
.dps-home-v2 .dps-v2-cta .dps-btn--v2-dark {
	background: var(--dps-accent);
	color: var(--dps-ink);
	box-shadow: 3px 3px 0 rgba(255, 255, 255, .25);
}

.dps-home-v2 .dps-v2-cta .dps-btn--v2-dark:hover {
	box-shadow: 1px 1px 0 rgba(255, 255, 255, .25);
}

.dps-home-v2 .dps-v2-cta .dps-btn--v2-ghost {
	box-shadow: 3px 3px 0 rgba(255, 255, 255, .18);
}

.dps-home-v2 .dps-v2-cta__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

/* Responsive --------------------------------------------------------------- */

@media (min-width: 700px) {
	.dps-home-v2 .dps-v2-stats { grid-template-columns: repeat(4, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-budget { grid-template-columns: repeat(3, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-cats { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-cat--hero { grid-column: span 2; }
	.dps-home-v2 .dps-v2-products { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-split { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); }
	.dps-home-v2 .dps-v2-why { grid-template-columns: repeat(2, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-timeline { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 20px; }
	.dps-home-v2 .dps-v2-step { padding-left: 0; padding-top: 74px; text-align: center; }
	.dps-home-v2 .dps-v2-step__num { left: 50%; transform: translateX(-50%); }
	.dps-home-v2 .dps-v2-perks { grid-template-columns: repeat(4, minmax(0,1fr)); }
	.dps-home-v2 .dps-v2-store { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
	.dps-home-v2 .dps-v2-faq { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (min-width: 1000px) {
	.dps-home-v2 .dps-v2-hero .dps-container {
		grid-template-columns: minmax(0,1fr);
	}
	.dps-home-v2 .dps-v2-products { grid-template-columns: repeat(4, minmax(0,1fr)); }
}

@media (max-width: 699px) {
	.dps-home-v2 .dps-v2-hero__actions .dps-btn,
	.dps-home-v2 .dps-v2-cta__actions .dps-btn,
	.dps-home-v2 .dps-v2-split__actions .dps-btn { width: 100%; }
	.dps-home-v2 .dps-v2-product__actions { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	.dps-home-v2 * { animation: none !important; transition: none !important; }
	.dps-home-v2 .dps-marquee__track { transform: none; }
}

/* Google reviews section (10) ------------------------------------------------- */

.dps-home-v2 .dps-v2-review__stars {
	display: inline-block;
	font: 700 15px/1 var(--dps-font-display);
	letter-spacing: .1em;
	color: var(--dps-accent-text);
}

.dps-home-v2 .dps-v2-review__text {
	color: var(--dps-muted);
	font-size: 14px;
	line-height: 1.65;
}

.dps-home-v2 .dps-v2-review__meta {
	font: 700 11px/1 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--dps-muted);
}

.dps-home-v2 .dps-v2-store__photo {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 12px;
	border: 2px solid var(--dps-ink);
	margin: 16px 0 20px;
	box-shadow: 4px 4px 0 var(--dps-accent);
}

.dps-home-v2 .dps-v2-band {
	position: relative;
	padding-block: clamp(72px,9vw,118px);
	background-image: linear-gradient(to right, rgba(16,18,22,.92) 0%, rgba(16,18,22,.55) 38%, rgba(16,18,22,0) 62%), url("../img/cta-band.webp");
	background-size: 100% 100%, cover;
	background-position: center, center;
	background-repeat: no-repeat, no-repeat;
	background-color: var(--dps-ink);
	border-top: 3px solid var(--dps-accent);
	overflow: hidden;
}

.dps-home-v2 .dps-v2-band .dps-container {
	position: relative;
	z-index: 1;
}

.dps-home-v2 .dps-v2-band__tag {
	font: 700 13px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--dps-accent);
	margin-bottom: 16px;
}

.dps-home-v2 .dps-v2-band__title {
	color: var(--dps-fg-invert);
	font-size: clamp(34px,5vw,64px);
}

.dps-home-v2 .dps-v2-band__title em {
	color: var(--dps-accent);
}

.dps-home-v2 .dps-v2-band__sub {
	max-width: 46ch;
	color: var(--dps-muted-invert);
	font-size: 16px;
	margin-top: 18px;
}

.dps-home-v2 .dps-v2-band .dps-v2-hero__actions {
	margin-top: 30px;
	margin-bottom: 0;
}

/* One square artwork is used for both mobile and desktop (see cta-band.webp). */
