.piscion-home {
	--piscion-bg: #05080c;
	--piscion-bg-2: #0a1117;
	--piscion-panel: rgba(10, 20, 27, 0.72);
	--piscion-panel-strong: rgba(14, 31, 39, 0.86);
	--piscion-border: rgba(118, 236, 232, 0.22);
	--piscion-border-strong: rgba(128, 255, 246, 0.42);
	--piscion-cyan: #66f4ee;
	--piscion-teal: #19c9ba;
	--piscion-text: #f4fbfb;
	--piscion-muted: #a7bbc0;
	--piscion-soft: #d6f0ef;
	--piscion-shadow: 0 24px 70px rgba(0, 0, 0, 0.48);
	--piscion-glow: 0 0 34px rgba(32, 229, 219, 0.18);
	background:
		radial-gradient(circle at 14% 8%, rgba(24, 216, 210, 0.2), transparent 28rem),
		radial-gradient(circle at 88% 2%, rgba(40, 142, 255, 0.14), transparent 30rem),
		linear-gradient(180deg, #030507 0%, var(--piscion-bg) 38%, #070d12 100%);
	color: var(--piscion-text);
	overflow: hidden;
	position: relative;
}

.piscion-home::before {
	background:
		linear-gradient(rgba(102, 244, 238, 0.055) 1px, transparent 1px),
		linear-gradient(90deg, rgba(102, 244, 238, 0.04) 1px, transparent 1px);
	background-size: 72px 72px;
	content: "";
	inset: 0;
	opacity: 0.36;
	pointer-events: none;
	position: absolute;
}

.piscion-home::after {
	background: linear-gradient(180deg, transparent, rgba(102, 244, 238, 0.08), transparent);
	content: "";
	height: 1px;
	left: 0;
	opacity: 0.8;
	position: absolute;
	right: 0;
	top: 38rem;
}

.piscion-home > * {
	position: relative;
	z-index: 1;
}

.piscion-section {
	padding: clamp(4.25rem, 10vw, 7.5rem) 1rem;
	position: relative;
}

.piscion-section + .piscion-section {
	margin-top: -1px;
}

.piscion-band {
	background:
		radial-gradient(circle at 100% 22%, rgba(102, 244, 238, 0.11), transparent 28rem),
		linear-gradient(135deg, rgba(255, 255, 255, 0.025), rgba(102, 244, 238, 0.045) 48%, rgba(0, 0, 0, 0));
	border-block: 1px solid rgba(118, 236, 232, 0.1);
}

.piscion-section + .piscion-section::after {
	background:
		linear-gradient(90deg, transparent, rgba(102, 244, 238, 0.36), rgba(40, 142, 255, 0.18), transparent),
		linear-gradient(90deg, transparent 8%, rgba(255, 255, 255, 0.05) 50%, transparent 92%);
	box-shadow: 0 0 18px rgba(102, 244, 238, 0.14);
	content: "";
	height: 1px;
	left: 50%;
	max-width: 1120px;
	pointer-events: none;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: calc(100% - 2rem);
}

.piscion-section:nth-of-type(2) {
	background:
		radial-gradient(circle at 12% 76%, rgba(40, 142, 255, 0.1), transparent 24rem),
		radial-gradient(circle at 100% 22%, rgba(102, 244, 238, 0.11), transparent 28rem),
		linear-gradient(135deg, rgba(255, 255, 255, 0.025), rgba(102, 244, 238, 0.045) 48%, rgba(0, 0, 0, 0));
}

.piscion-section:nth-of-type(3) {
	background:
		radial-gradient(circle at 92% 18%, rgba(102, 244, 238, 0.08), transparent 25rem),
		linear-gradient(180deg, rgba(255, 255, 255, 0.014), transparent 36%);
}

.piscion-section:nth-of-type(4) {
	background:
		radial-gradient(circle at 9% 42%, rgba(102, 244, 238, 0.09), transparent 24rem),
		radial-gradient(circle at 100% 22%, rgba(102, 244, 238, 0.11), transparent 28rem),
		linear-gradient(135deg, rgba(255, 255, 255, 0.025), rgba(102, 244, 238, 0.045) 48%, rgba(0, 0, 0, 0));
}

.piscion-section:nth-of-type(5) {
	background:
		radial-gradient(circle at 82% 64%, rgba(40, 142, 255, 0.09), transparent 24rem),
		linear-gradient(180deg, transparent, rgba(102, 244, 238, 0.02) 52%, transparent);
}

.piscion-home__inner {
	margin: 0 auto;
	max-width: 1120px;
	position: relative;
	z-index: 1;
}

.piscion-kicker {
	color: var(--piscion-cyan);
	font-size: clamp(0.72rem, 1.4vw, 0.78rem);
	font-weight: 800;
	letter-spacing: 0.12em;
	line-height: 1.25;
	margin: 0 0 0.72rem;
	text-shadow: 0 0 18px rgba(102, 244, 238, 0.42);
	text-transform: uppercase;
}

.piscion-hero {
	min-height: min(820px, 100svh);
	padding-top: clamp(4rem, 10vw, 7rem);
}

.piscion-hero::before,
.piscion-final-cta::before {
	background: radial-gradient(circle, rgba(102, 244, 238, 0.22), transparent 64%);
	border-radius: 50%;
	content: "";
	filter: blur(30px);
	height: 18rem;
	opacity: 0.55;
	position: absolute;
	right: -7rem;
	top: 5rem;
	width: 18rem;
}

.piscion-hero__grid,
.piscion-split,
.piscion-feature {
	display: grid;
	gap: clamp(2rem, 6vw, 4.5rem);
}

.piscion-hero__content {
	align-self: center;
}

.piscion-hero h1,
.piscion-section h2 {
	color: var(--piscion-text);
	line-height: 1.04;
	margin: 0;
	text-wrap: balance;
}

.piscion-hero h1 {
	font-size: clamp(2.55rem, 8.6vw, 5.25rem);
	letter-spacing: -0.02em;
	max-width: 12ch;
	text-shadow: 0 0 36px rgba(102, 244, 238, 0.16);
}

.piscion-section h2 {
	font-size: clamp(1.95rem, 5.5vw, 3.45rem);
	letter-spacing: -0.018em;
	max-width: 13ch;
}

.piscion-hero__lede,
.piscion-copy p,
.piscion-feature__content p,
.piscion-final-cta p,
.piscion-card p,
.piscion-vault__item p {
	color: var(--piscion-muted);
	font-size: clamp(0.98rem, 1.55vw, 1.06rem);
	line-height: 1.66;
}

.piscion-hero__lede {
	margin: 1.15rem 0 0;
	max-width: 34rem;
}

.piscion-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.72rem;
	margin-top: 1.65rem;
}

.piscion-actions--section {
	margin-top: 1.2rem;
}

.piscion-button {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 0.96rem;
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.015em;
	line-height: 1.15;
	min-height: 3rem;
	padding: 0.78rem 1.22rem;
	position: relative;
	text-decoration: none;
	transition: border-color 180ms ease, box-shadow 180ms ease, color 180ms ease, transform 180ms ease, background 180ms ease;
}

.piscion-button:hover,
.piscion-button:focus-visible {
	transform: none;
}

.piscion-button:focus-visible {
	outline: 2px solid var(--piscion-cyan);
	outline-offset: 4px;
}

.piscion-button--primary {
	background: linear-gradient(135deg, #91fffb 0%, var(--piscion-cyan) 42%, var(--piscion-teal) 100%);
	border: 1px solid rgba(188, 255, 252, 0.62);
	box-shadow: 0 0 30px rgba(102, 244, 238, 0.42), 0 16px 34px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.42);
	color: #021015;
}

.piscion-button--primary:hover,
.piscion-button--primary:focus-visible {
	border-color: rgba(235, 255, 254, 0.82);
	box-shadow: 0 0 42px rgba(102, 244, 238, 0.52), 0 18px 38px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.5);
	color: #021015;
}

.piscion-button--secondary {
	background: rgba(102, 244, 238, 0.035);
	border: 1px solid rgba(128, 255, 246, 0.28);
	box-shadow: inset 0 0 16px rgba(102, 244, 238, 0.035);
	color: rgba(214, 240, 239, 0.86);
}

.piscion-button--secondary:hover,
.piscion-button--secondary:focus-visible {
	background: rgba(102, 244, 238, 0.085);
	border-color: rgba(128, 255, 246, 0.42);
	box-shadow: 0 0 22px rgba(102, 244, 238, 0.14), inset 0 0 18px rgba(102, 244, 238, 0.045);
	color: #ffffff;
}

.piscion-hero__media,
.piscion-section__media,
.piscion-feature__media {
	aspect-ratio: 16 / 9;
	background:
		linear-gradient(135deg, rgba(102, 244, 238, 0.18), transparent 35%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02));
	border: 1px solid var(--piscion-border);
	border-radius: 14px;
	box-shadow: var(--piscion-shadow), var(--piscion-glow), inset 0 0 0 1px rgba(255, 255, 255, 0.045);
	margin: 0;
	overflow: hidden;
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.piscion-hero__media::before,
.piscion-section__media::before,
.piscion-feature__media::before {
	background:
		linear-gradient(90deg, transparent, rgba(102, 244, 238, 0.34), transparent),
		linear-gradient(180deg, transparent, rgba(102, 244, 238, 0.1), transparent);
	content: "";
	inset: 12px;
	opacity: 0.45;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.piscion-hero__media::after,
.piscion-section__media::after,
.piscion-feature__media::after {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), transparent 16%, rgba(0, 0, 0, 0.28));
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.piscion-hero__media img,
.piscion-section__media img,
.piscion-feature__media img {
	display: block;
	height: 100%;
	object-fit: cover;
	transform: scale(1.02);
	width: 100%;
}

.piscion-hero__media picture,
.piscion-section__media picture,
.piscion-feature__media picture {
	display: block;
	height: 100%;
	width: 100%;
}

.piscion-section__header {
	margin-bottom: 1.35rem;
}

.piscion-card-grid,
.piscion-vault {
	display: grid;
	gap: 1.05rem;
	margin-top: 1.15rem;
}

.piscion-card,
.piscion-vault__item,
.piscion-copy,
.piscion-feature__content,
.piscion-final-cta__inner {
	background: var(--piscion-panel);
	border: 1px solid var(--piscion-border);
	border-radius: 12px;
	box-shadow: 0 18px 50px rgba(0, 0, 0, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.06);
	position: relative;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.piscion-card,
.piscion-vault__item {
	min-height: 100%;
	padding: clamp(1.12rem, 2.4vw, 1.38rem);
}

.piscion-card:focus-within,
.piscion-vault__item:focus-within,
.piscion-copy:focus-within,
.piscion-feature__content:focus-within,
.piscion-final-cta__inner:focus-within {
	border-color: var(--piscion-border-strong);
	box-shadow: 0 20px 52px rgba(0, 0, 0, 0.28), 0 0 24px rgba(102, 244, 238, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.piscion-copy,
.piscion-feature__content {
	align-self: center;
	padding: clamp(1.25rem, 3.6vw, 2.05rem);
}

.piscion-card::before,
.piscion-vault__item::before,
.piscion-copy::before,
.piscion-feature__content::before,
.piscion-final-cta__inner::before {
	background: var(--piscion-cyan);
	box-shadow: 0 0 22px rgba(102, 244, 238, 0.52);
	content: "";
	height: 2px;
	left: 1.25rem;
	position: absolute;
	top: -1px;
	width: 3.25rem;
}

.piscion-card h3,
.piscion-vault__item h3 {
	color: var(--piscion-text);
	font-size: clamp(1.08rem, 2vw, 1.2rem);
	line-height: 1.28;
	margin: 0 0 0.52rem;
}

.piscion-card p,
.piscion-vault__item p,
.piscion-feature__content p,
.piscion-final-cta p {
	margin: 0;
}

.piscion-checklist,
.piscion-pill-list {
	list-style: none;
	margin: 1.15rem 0 0;
	padding: 0;
}

.piscion-checklist {
	display: grid;
	gap: 0.72rem;
}

.piscion-checklist li {
	border-left: 3px solid var(--piscion-cyan);
	color: var(--piscion-soft);
	line-height: 1.56;
	padding-left: 0.9rem;
}

.piscion-pill-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.58rem;
}

.piscion-pill-list li {
	background: rgba(102, 244, 238, 0.09);
	border: 1px solid rgba(102, 244, 238, 0.24);
	border-radius: 999px;
	box-shadow: inset 0 0 18px rgba(102, 244, 238, 0.04);
	color: var(--piscion-soft);
	font-weight: 800;
	line-height: 1.2;
	padding: 0.46rem 0.78rem;
}

.piscion-final-cta {
	background:
		radial-gradient(circle at 18% 50%, rgba(102, 244, 238, 0.2), transparent 24rem),
		linear-gradient(135deg, rgba(9, 19, 26, 0.96), rgba(2, 8, 11, 0.98));
	border-top: 1px solid rgba(102, 244, 238, 0.18);
	color: #ffffff;
}

.piscion-final-cta .piscion-kicker,
.piscion-final-cta h2,
.piscion-final-cta p {
	color: #ffffff;
}

.piscion-final-cta__inner {
	max-width: 780px;
	padding: clamp(1.45rem, 4.5vw, 2.45rem);
	text-align: left;
}

.piscion-final-cta .piscion-actions {
	margin-top: 1.45rem;
}

.piscion-final-cta .piscion-button--primary {
	box-shadow: 0 0 38px rgba(102, 244, 238, 0.48), 0 20px 42px rgba(0, 0, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.48);
	min-width: min(100%, 14rem);
}

@media (max-width: 699px) {
	.piscion-section {
		padding-bottom: 3.25rem;
		padding-top: 3.25rem;
	}

	.piscion-hero {
		min-height: auto;
		padding-bottom: 2.2rem;
		padding-top: 2.45rem;
	}

	.piscion-hero__grid {
		gap: 1.2rem;
	}

	.piscion-hero h1 {
		font-size: clamp(2.08rem, 9.6vw, 2.72rem);
		line-height: 1.01;
		max-width: 12ch;
	}

	.piscion-section h2 {
		font-size: clamp(1.8rem, 8.2vw, 2.42rem);
		line-height: 1.06;
		max-width: 13ch;
	}

	.piscion-kicker {
		margin-bottom: 0.58rem;
	}

	.piscion-hero__lede {
		line-height: 1.56;
		margin-top: 0.9rem;
		max-width: 27rem;
	}

	.piscion-actions {
		align-items: stretch;
		flex-direction: column;
		gap: 0.68rem;
		margin-top: 1.15rem;
	}

	.piscion-button {
		font-size: 0.94rem;
		min-height: 2.9rem;
		padding: 0.72rem 1rem;
		width: 100%;
	}

	.piscion-button--secondary {
		min-height: 2.75rem;
	}

	.piscion-hero__media {
		margin-top: -0.15rem;
	}

	.piscion-section__header {
		margin-bottom: 1rem;
	}

	.piscion-card-grid,
	.piscion-vault {
		gap: 0.82rem;
		margin-top: 0.95rem;
	}

	.piscion-card,
	.piscion-vault__item {
		padding: 1.05rem;
	}

	.piscion-copy,
	.piscion-feature__content {
		padding: 1.15rem;
	}

	.piscion-checklist,
	.piscion-pill-list {
		margin-top: 0.95rem;
	}

	.piscion-final-cta .piscion-button--primary {
		width: 100%;
	}
}

@media (hover: hover) and (pointer: fine) {
	.piscion-button:hover {
		transform: translateY(-2px);
	}

	.piscion-card:hover,
	.piscion-vault__item:hover {
		border-color: var(--piscion-border-strong);
		box-shadow: 0 24px 56px rgba(0, 0, 0, 0.3), 0 0 28px rgba(102, 244, 238, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.08);
		transform: translateY(-3px);
	}

	.piscion-hero__media:hover,
	.piscion-section__media:hover,
	.piscion-feature__media:hover {
		border-color: var(--piscion-border-strong);
		box-shadow: var(--piscion-shadow), 0 0 42px rgba(102, 244, 238, 0.24), inset 0 0 0 1px rgba(255, 255, 255, 0.06);
	}
}

@media (min-width: 700px) {
	.piscion-section {
		padding-inline: 1.5rem;
	}

	.piscion-card-grid,
	.piscion-vault {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.piscion-hero__grid,
	.piscion-split,
	.piscion-feature {
		align-items: center;
		grid-template-columns: minmax(0, 1fr) minmax(320px, 0.88fr);
	}

	.piscion-hero__media {
		transform: translateY(1.5rem);
	}

	.piscion-split > div:first-child {
		display: grid;
		gap: 1.25rem;
		grid-template-rows: auto 1fr;
	}

	.piscion-feature {
		grid-template-columns: minmax(340px, 0.9fr) minmax(0, 1fr);
	}

	.piscion-feature__content {
		transform: translateX(-1.25rem);
	}

	.piscion-copy {
		max-width: 34rem;
		transform: translateX(-1.25rem);
	}

	.piscion-section:not(.piscion-hero):not(.piscion-band):not(.piscion-final-cta) > .piscion-home__inner {
		display: grid;
		gap: 1.5rem 3rem;
		grid-template-columns: minmax(0, 0.92fr) minmax(340px, 1fr);
	}

	.piscion-section:not(.piscion-hero):not(.piscion-band):not(.piscion-final-cta) .piscion-section__media {
		grid-column: 2;
		grid-row: 1;
	}

	.piscion-section:not(.piscion-hero):not(.piscion-band):not(.piscion-final-cta) .piscion-card-grid,
	.piscion-section:not(.piscion-hero):not(.piscion-band):not(.piscion-final-cta) .piscion-vault,
	.piscion-section:not(.piscion-hero):not(.piscion-band):not(.piscion-final-cta) .piscion-actions--section {
		grid-column: 1 / -1;
	}

	#builder-vault > .piscion-home__inner {
		grid-template-columns: minmax(340px, 1fr) minmax(0, 0.92fr);
	}

	#builder-vault .piscion-section__header {
		grid-column: 2;
	}

	#builder-vault .piscion-section__media {
		grid-column: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.piscion-button,
	.piscion-button:hover,
	.piscion-button:focus-visible,
	.piscion-card,
	.piscion-card:hover,
	.piscion-vault__item,
	.piscion-vault__item:hover,
	.piscion-copy,
	.piscion-feature__content,
	.piscion-final-cta__inner,
	.piscion-hero__media,
	.piscion-section__media,
	.piscion-feature__media {
		transition: none;
	}

	.piscion-button,
	.piscion-button:hover,
	.piscion-button:focus-visible,
	.piscion-card:hover,
	.piscion-vault__item:hover {
		transform: none;
	}
}
