:root {
	--dwb-ink: #201638;
	--dwb-muted: #6d647a;
	--dwb-paper: #fffdf8;
	--dwb-soft: #f5f0ff;
	--dwb-coral: #ff5f61;
	--dwb-yellow: #ffc83d;
	--dwb-violet: #5e2bbf;
	--dwb-aqua: #33c8b4;
	--dwb-radius: 24px;
}

body {
	background: var(--dwb-paper);
	color: var(--dwb-ink);
}

html {
	scroll-behavior: smooth;
}

.header .main-header {
	background: rgba(255, 253, 248, .94);
	border-bottom: 1px solid rgba(32, 22, 56, .08);
	position: relative;
	z-index: 20;
}

.header .site-title a,
.header .main-navigation a {
	color: var(--dwb-ink);
}

.dwb-site-header .main-header {
	backdrop-filter: blur(16px);
	position: sticky;
	top: 0;
}

.dwb-site-header__inner {
	align-items: center;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
	min-height: 82px;
}

.dwb-brand {
	align-items: center;
	color: var(--dwb-ink);
	display: inline-flex;
	font-family: "Nunito", Arial, sans-serif;
	font-size: 1.08rem;
	font-weight: 900;
	gap: .7rem;
	text-decoration: none;
}

.dwb-brand:hover {
	color: var(--dwb-violet);
}

.dwb-brand__mark {
	align-items: center;
	background: linear-gradient(145deg, var(--dwb-violet), #8d4ce3);
	border-radius: 12px 12px 12px 4px;
	box-shadow: 0 7px 18px rgba(94, 43, 191, .22);
	color: #fff;
	display: inline-flex;
	font-size: 1rem;
	height: 38px;
	justify-content: center;
	width: 38px;
}

.dwb-navigation {
	align-items: center;
	display: flex;
}

.dwb-navigation .dwb-menu {
	align-items: center;
	display: flex;
	gap: clamp(.7rem, 1.8vw, 1.45rem);
	list-style: none;
	margin: 0;
	padding: 0;
}

.dwb-navigation .dwb-menu > li {
	float: none;
}

.dwb-navigation .dwb-menu a {
	font-family: "Nunito", Arial, sans-serif;
	font-size: .88rem;
	font-weight: 800;
	padding: .55rem 0;
	text-decoration: none;
}

.dwb-navigation .dwb-menu a:hover {
	color: var(--dwb-violet);
}

.dwb-navigation .dwb-menu__cta a {
	background: var(--dwb-coral);
	border-radius: 999px;
	box-shadow: 0 8px 20px rgba(255, 95, 97, .2);
	color: #fff;
	padding: .68rem 1rem;
}

.dwb-menu-toggle {
	display: none;
}

.dwb-home h1,
.dwb-home h2,
.dwb-home h3 {
	color: var(--dwb-ink);
	font-family: "Merriweather", Georgia, serif;
	font-weight: 800;
	line-height: 1.08;
}

.dwb-home p,
.dwb-home li,
.dwb-home a,
.dwb-home button,
.dwb-home input,
.dwb-home select {
	font-family: "Nunito", Arial, sans-serif;
}

.dwb-promo {
	background: var(--dwb-ink);
	color: #fff;
}

.dwb-promo__inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: .55rem 1rem;
	justify-content: center;
	min-height: 52px;
	padding-bottom: .6rem;
	padding-top: .6rem;
}

.dwb-promo__inner > span {
	background: var(--dwb-yellow);
	border-radius: 999px;
	color: var(--dwb-ink);
	font-size: .69rem;
	font-weight: 900;
	letter-spacing: .08em;
	padding: .28rem .58rem;
	text-transform: uppercase;
}

.dwb-promo__inner strong { font-size: .92rem; }

.dwb-promo__inner button {
	background: transparent;
	border: 1px dashed rgba(255, 255, 255, .65);
	border-radius: 8px;
	color: #fff;
	font-size: .82rem;
	font-weight: 900;
	padding: .38rem .68rem;
}

.dwb-promo__inner small { color: rgba(255, 255, 255, .72); }

.dwb-hero {
	background:
		radial-gradient(circle at 88% 8%, rgba(255, 200, 61, .58), transparent 25rem),
		radial-gradient(circle at 4% 94%, rgba(51, 200, 180, .2), transparent 29rem),
		linear-gradient(135deg, rgba(245, 240, 255, .4), transparent 48%),
		var(--dwb-paper);
	overflow: hidden;
	padding: clamp(4.5rem, 9vw, 8rem) 0 clamp(5rem, 10vw, 9rem);
}

.dwb-hero__grid {
	display: grid;
	gap: clamp(3rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 1.1fr) minmax(300px, .9fr);
	align-items: center;
}

.dwb-eyebrow {
	color: var(--dwb-violet);
	font-size: .82rem;
	font-weight: 800;
	letter-spacing: .12em;
	margin: 0 0 1rem;
	text-transform: uppercase;
}

.dwb-hero h1 {
	font-size: clamp(2.7rem, 6vw, 5.8rem);
	letter-spacing: -.045em;
	margin: 0;
	max-width: 12ch;
}

.dwb-lead {
	color: var(--dwb-muted);
	font-size: clamp(1.08rem, 1.7vw, 1.35rem);
	line-height: 1.7;
	margin: 1.75rem 0 0;
	max-width: 42rem;
}

.dwb-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .9rem;
	margin-top: 2rem;
}

.dwb-button {
	align-items: center;
	border: 2px solid transparent;
	border-radius: 999px;
	display: inline-flex;
	font-weight: 800;
	justify-content: center;
	min-height: 52px;
	padding: .8rem 1.5rem;
	text-decoration: none;
	transition: transform .18s ease, box-shadow .18s ease;
}

.dwb-button:hover {
	transform: translateY(-2px);
}

.dwb-button--primary {
	background: var(--dwb-coral);
	box-shadow: 0 12px 28px rgba(255, 95, 97, .25);
	color: #fff;
}

.dwb-button--ghost {
	border-color: rgba(32, 22, 56, .2);
	color: var(--dwb-ink);
}

.dwb-button--light {
	background: #fff;
	color: var(--dwb-violet);
}

.dwb-trust {
	display: flex;
	flex-wrap: wrap;
	gap: .65rem 1.4rem;
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
}

.dwb-trust li::before {
	color: var(--dwb-aqua);
	content: "✓";
	font-weight: 900;
	margin-right: .45rem;
}

.dwb-hero__visual {
	text-align: center;
}

.dwb-hero__visual > p {
	color: var(--dwb-muted);
	font-size: .86rem;
	font-weight: 700;
	margin: 1.25rem 0 0;
}

.dwb-hero__motion {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: .55rem;
	margin-top: 1.15rem;
}

.dwb-hero__motion button {
	background: var(--dwb-ink);
	border: 0;
	border-radius: 999px;
	color: #fff;
	font-size: .78rem;
	font-weight: 900;
	padding: .58rem .85rem;
}

.dwb-hero__motion p {
	color: var(--dwb-muted);
	font-size: .86rem;
	font-weight: 800;
	margin: 0;
}

.dwb-hero__motion.is-active p { color: #167461; }

.dwb-lenticular-card {
	--dwb-card-blend: .5;
	aspect-ratio: 4 / 5;
	background: #fff;
	border: 14px solid rgba(255, 255, 255, .96);
	border-radius: 32px;
	box-shadow: 0 32px 75px rgba(32, 22, 56, .18), 0 10px 24px rgba(94, 43, 191, .1);
	cursor: ew-resize;
	margin: auto;
	max-width: 400px;
	overflow: hidden;
	position: relative;
	transform: perspective(900px) rotateY(var(--dwb-card-rotate, 0deg)) scale(var(--dwb-card-scale, 1));
	transition: box-shadow .25s ease;
	will-change: transform;
}

.dwb-lenticular-card:hover {
	box-shadow: 0 38px 90px rgba(32, 22, 56, .22), 0 12px 30px rgba(94, 43, 191, .14);
}

.dwb-lenticular-card::after {
	background: repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 2px, rgba(32,22,56,.08) 2px 4px);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.dwb-lenticular-card__face {
	display: grid;
	inset: 0;
	place-items: center;
	position: absolute;
	will-change: opacity;
}

.dwb-lenticular-card__face span {
	color: #fff;
	font-size: clamp(2.3rem, 5vw, 4.5rem);
	font-weight: 900;
	letter-spacing: -.06em;
}

.dwb-lenticular-card__face--one {
	background: linear-gradient(145deg, var(--dwb-violet), #b84dff);
	opacity: calc(1 - var(--dwb-card-blend));
}

.dwb-lenticular-card__face--two {
	background: linear-gradient(145deg, var(--dwb-coral), var(--dwb-yellow));
	opacity: var(--dwb-card-blend);
}

.dwb-section {
	padding: clamp(4.5rem, 8vw, 8rem) 0;
}

.dwb-section--soft {
	background: var(--dwb-soft);
}

.dwb-section-heading {
	margin-bottom: 2.5rem;
	max-width: 760px;
}

.dwb-section-heading--center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.dwb-section-heading h2,
.dwb-artists__heading h2 {
	font-size: clamp(2rem, 4vw, 3.7rem);
	letter-spacing: -.035em;
	margin: 0;
}

.dwb-path-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dwb-path-card {
	background: #fff;
	border: 1px solid rgba(32, 22, 56, .08);
	border-radius: var(--dwb-radius);
	box-shadow: 0 20px 60px rgba(32, 22, 56, .08);
	min-height: 350px;
	padding: clamp(2rem, 4vw, 3.5rem);
}

.dwb-path-card--accent {
	background: var(--dwb-ink);
}

.dwb-path-card--accent h3,
.dwb-path-card--accent p,
.dwb-path-card--accent a {
	color: #fff;
}

.dwb-path-card__number {
	color: var(--dwb-coral);
	font-size: .9rem;
	font-weight: 900;
}

.dwb-path-card h3 {
	font-size: clamp(1.7rem, 3vw, 2.5rem);
	margin: 1rem 0;
}

.dwb-path-card p {
	color: var(--dwb-muted);
	font-size: 1.05rem;
	line-height: 1.7;
}

.dwb-path-card a {
	color: var(--dwb-violet);
	display: inline-block;
	font-weight: 900;
	margin-top: 1.2rem;
}

.dwb-pill {
	background: rgba(255, 200, 61, .14);
	border-radius: 999px;
	display: inline-block;
	font-size: .78rem !important;
	font-weight: 900;
	letter-spacing: .08em;
	margin: .8rem 0 0 !important;
	padding: .45rem .75rem;
	text-transform: uppercase;
}

.dwb-section--studio {
	background: #fff;
}

.dwb-section--pricing {
	background:
		radial-gradient(circle at 92% 12%, rgba(255, 200, 61, .22), transparent 23rem),
		var(--dwb-paper);
}

.dwb-pricing {
	align-items: center;
	display: grid;
	gap: clamp(3rem, 8vw, 7rem);
	grid-template-columns: minmax(0, .9fr) minmax(340px, 1.1fr);
}

.dwb-pricing__copy h2,
.dwb-newsletter h2 {
	font-size: clamp(2rem, 4vw, 3.7rem);
	letter-spacing: -.035em;
	margin: 0;
}

.dwb-pricing__copy > p:not(.dwb-eyebrow),
.dwb-newsletter > div > p:not(.dwb-eyebrow) {
	color: var(--dwb-muted);
	font-size: 1.05rem;
	line-height: 1.75;
}

.dwb-pricing__series {
	font-size: .9rem !important;
	margin-top: 1.6rem;
}

.dwb-pricing__series a {
	color: var(--dwb-violet);
	font-weight: 900;
}

.dwb-price-finder {
	background: #fff;
	border: 1px solid rgba(32, 22, 56, .08);
	border-radius: 28px;
	box-shadow: 0 24px 70px rgba(32, 22, 56, .11);
	padding: clamp(1.5rem, 4vw, 2.6rem);
}

.dwb-price-finder > label {
	display: grid;
	gap: .55rem;
	margin-bottom: 1rem;
}

.dwb-price-finder > label > span {
	font-family: "Nunito", Arial, sans-serif;
	font-size: .84rem;
	font-weight: 900;
}

.dwb-price-finder select {
	background: #fff;
	border: 1px solid rgba(32, 22, 56, .16);
	border-radius: 13px;
	color: var(--dwb-ink);
	min-height: 52px;
	padding: .75rem .9rem;
	width: 100%;
}

.dwb-price-finder select:disabled {
	background: #f4f1f7;
	color: var(--dwb-muted);
}

.dwb-price-result {
	background: var(--dwb-soft);
	border-radius: 18px;
	display: grid;
	margin: 1.4rem 0;
	padding: 1.2rem;
}

.dwb-price-result > span {
	color: var(--dwb-muted);
	font-size: .74rem;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.dwb-price-result strong {
	color: var(--dwb-violet);
	font-family: "Merriweather", Georgia, serif;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.2;
	margin: .3rem 0;
}

.dwb-price-result small {
	color: var(--dwb-muted);
}

.dwb-price-finder__cta {
	width: 100%;
}

.dwb-notice {
	background: var(--dwb-soft);
	border-radius: 16px;
	padding: 1.5rem;
	text-align: center;
}

.dwb-section--artists {
	background: var(--dwb-violet);
	color: #fff;
}

.dwb-artists__heading {
	margin-bottom: clamp(2.5rem, 6vw, 4.5rem);
	max-width: 820px;
}

.dwb-artists__heading h2,
.dwb-artists__heading .dwb-eyebrow {
	color: #fff;
}

.dwb-artists__heading > p:not(.dwb-eyebrow) {
	color: rgba(255, 255, 255, .76);
	font-size: 1.15rem;
	line-height: 1.8;
	margin: 1.4rem 0 0;
	max-width: 680px;
}

.dwb-artist-paths {
	display: grid;
	gap: 1.4rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dwb-artist-path {
	background: rgba(255, 255, 255, .09);
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 26px;
	display: flex;
	flex-direction: column;
	min-height: 510px;
	padding: clamp(1.6rem, 4vw, 2.8rem);
}

.dwb-artist-path--featured {
	background: #fff;
	border-color: #fff;
	box-shadow: 0 24px 65px rgba(20, 9, 48, .24);
}

.dwb-artist-path__meta {
	align-items: center;
	display: flex;
	gap: .65rem;
	justify-content: space-between;
}

.dwb-artist-path__meta > span {
	color: var(--dwb-yellow);
	font-weight: 900;
}

.dwb-artist-path--featured .dwb-artist-path__meta > span {
	color: var(--dwb-coral);
}

.dwb-artist-path__meta > small {
	background: rgba(255, 255, 255, .1);
	border-radius: 999px;
	color: rgba(255, 255, 255, .72);
	font-size: .7rem;
	font-weight: 900;
	letter-spacing: .06em;
	padding: .35rem .65rem;
	text-transform: uppercase;
}

.dwb-artist-path--featured .dwb-artist-path__meta > small {
	background: var(--dwb-soft);
	color: var(--dwb-violet);
}

.dwb-artist-path h3 {
	color: #fff;
	font-size: clamp(1.55rem, 2.6vw, 2.3rem);
	margin: 1.4rem 0 1rem;
}

.dwb-artist-path--featured h3 {
	color: var(--dwb-ink);
}

.dwb-artist-path > p {
	color: rgba(255, 255, 255, .75);
	font-size: 1rem;
	line-height: 1.7;
	margin: 0;
}

.dwb-artist-path--featured > p {
	color: var(--dwb-muted);
}

.dwb-artist-path ul {
	color: rgba(255, 255, 255, .82);
	list-style: none;
	margin: 1.5rem 0 2rem;
	padding: 0;
}

.dwb-artist-path--featured ul {
	color: var(--dwb-ink);
}

.dwb-artist-path li {
	line-height: 1.5;
	margin: .65rem 0;
	padding-left: 1.4rem;
	position: relative;
}

.dwb-artist-path li::before {
	color: var(--dwb-yellow);
	content: "✓";
	font-weight: 900;
	left: 0;
	position: absolute;
}

.dwb-artist-path--featured li::before {
	color: var(--dwb-aqua);
}

.dwb-button--artist {
	background: var(--dwb-coral);
	color: #fff;
	margin-top: auto;
}

.dwb-artist-path .dwb-button--light {
	margin-top: auto;
}

.dwb-artist-path__note,
.dwb-artist-path__site-link {
	color: inherit;
	display: block;
	font-size: .76rem;
	font-weight: 700;
	margin-top: .85rem;
	text-align: center;
}

.dwb-artist-path--featured .dwb-artist-path__note {
	color: var(--dwb-muted);
}

.dwb-artist-path__site-link {
	color: rgba(255, 255, 255, .78);
	text-decoration: underline;
}

.dwb-section--newsletter {
	background: var(--dwb-ink);
	color: #fff;
}

.dwb-newsletter {
	align-items: center;
	display: grid;
	gap: clamp(2.5rem, 7vw, 6rem);
	grid-template-columns: minmax(0, 1fr) minmax(340px, .9fr);
}

.dwb-newsletter h2,
.dwb-newsletter .dwb-eyebrow {
	color: #fff;
}

.dwb-newsletter > div > p:not(.dwb-eyebrow) {
	color: rgba(255, 255, 255, .72);
}

.dwb-newsletter__form-wrap {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 24px;
	padding: clamp(1.2rem, 3vw, 2rem);
}

.dwb-newsletter__email {
	background: #fff;
	border-radius: 999px;
	display: flex;
	gap: .5rem;
	padding: .35rem;
}

.dwb-newsletter__email input {
	background: transparent;
	border: 0;
	color: var(--dwb-ink);
	min-width: 0;
	padding: .65rem 1rem;
	width: 100%;
}

.dwb-newsletter__email button {
	background: var(--dwb-yellow);
	border: 0;
	border-radius: 999px;
	color: var(--dwb-ink);
	font-weight: 900;
	padding: .7rem 1.2rem;
}

.dwb-newsletter__consent {
	align-items: flex-start;
	color: rgba(255, 255, 255, .68);
	display: flex;
	font-size: .76rem;
	gap: .6rem;
	line-height: 1.55;
	margin-top: 1rem;
}

.dwb-newsletter__consent input {
	accent-color: var(--dwb-yellow);
	margin-top: .2rem;
}

.dwb-newsletter__consent a {
	color: #fff;
}

.dwb-newsletter__message {
	background: rgba(255, 255, 255, .1);
	border-radius: 12px;
	font-size: .86rem;
	margin: 0 0 1rem;
	padding: .7rem .9rem;
}

.dwb-newsletter__message.is-success { color: #9ef1df; }
.dwb-newsletter__message.is-error { color: #ffb8b9; }

.dwb-newsletter__honeypot {
	left: -10000px;
	position: absolute;
}

@media (max-width: 900px) {
	.dwb-hero__grid,
	.dwb-path-grid,
	.dwb-artist-paths,
	.dwb-pricing,
	.dwb-newsletter {
		grid-template-columns: 1fr;
	}

	.dwb-hero__visual {
		margin: 0 auto;
		max-width: 430px;
		width: 100%;
	}

	.dwb-site-header__inner {
		min-height: 70px;
		position: relative;
	}

	.dwb-menu-toggle {
		align-items: center;
		background: transparent;
		border: 0;
		display: grid;
		gap: 4px;
		padding: .6rem;
	}

	.dwb-menu-toggle > span:not(.screen-reader-text) {
		background: var(--dwb-ink);
		border-radius: 999px;
		display: block;
		height: 2px;
		width: 24px;
	}

	.dwb-navigation .dwb-menu {
		align-items: stretch;
		background: #fffdf8;
		border: 1px solid rgba(32, 22, 56, .08);
		border-radius: 18px;
		box-shadow: 0 24px 55px rgba(32, 22, 56, .16);
		display: none;
		flex-direction: column;
		gap: .25rem;
		left: 0;
		padding: .8rem;
		position: absolute;
		right: 0;
		top: calc(100% - 4px);
	}

	.dwb-site-header.is-menu-open .dwb-menu {
		display: flex;
	}

	.dwb-navigation .dwb-menu a {
		display: block;
		padding: .75rem .9rem;
	}

	.dwb-navigation .dwb-menu__cta a {
		text-align: center;
	}
}

@media (max-width: 560px) {
	.dwb-promo__inner {
		gap: .4rem .65rem;
	}

	.dwb-promo__inner strong {
		flex: 1 0 65%;
		text-align: center;
	}
	.dwb-brand {
		font-size: .95rem;
	}

	.dwb-newsletter__email {
		border-radius: 16px;
		flex-direction: column;
	}

	.dwb-newsletter__email button {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.dwb-lenticular-card,
	.dwb-button {
		transition: none;
	}

	.dwb-lenticular-card {
		--dwb-card-blend: 0;
		--dwb-card-rotate: 0deg;
		--dwb-card-scale: 1;
	}
}
