	.planiya-landing {
		--pl-bg: #fbf9f6;
		--pl-surface: #fff;
		--pl-band: #f4f0ea;
		--pl-text: #202938;
		--pl-muted: #4b5565;
		--pl-border: #e4ded5;
		--pl-accent: #6e7fa3;
		--pl-accent-dark: #56688d;
		--pl-green: #497b69;
		--pl-gold: #a87835;
		--pl-shadow: 0 10px 28px rgba(32, 41, 56, 0.06);
		--pl-shadow-accent: 0 12px 28px rgba(110, 127, 163, 0.2);
		--pl-container: 1120px;

		background: var(--pl-bg);
		color: var(--pl-text);
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	}

	.planiya-landing *,
	.planiya-landing *::before,
	.planiya-landing *::after {
		box-sizing: border-box;
	}

	.planiya-landing a {
		color: inherit;
		text-decoration: none;
	}

	.planiya-landing img {
		display: block;
		max-width: 100%;
		height: auto;
	}

	.planiya-landing .pl-container {
		width: 100%;
		max-width: calc(var(--pl-container) + 48px);
		margin: 0 auto;
		padding: 0 24px;
	}

	.planiya-landing .pl-section {
		padding: 56px 0;
	}

	.planiya-landing .pl-band {
		background: var(--pl-band);
	}

	.planiya-landing .pl-title,
	.planiya-landing .pl-section-title,
	.planiya-landing .pl-card-title {
		display: block !important;
		position: static !important;
		width: auto !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
		margin-top: 0 !important;
		overflow: visible !important;
		transform: none !important;
		white-space: normal !important;
		text-shadow: none !important;
	}

	.planiya-landing .pl-title::before,
	.planiya-landing .pl-title::after,
	.planiya-landing .pl-section-title::before,
	.planiya-landing .pl-section-title::after,
	.planiya-landing .pl-card-title::before,
	.planiya-landing .pl-card-title::after {
		display: none !important;
		content: none !important;
	}

	.planiya-landing .pl-title {
		max-width: 640px;
		margin-bottom: 16px !important;
		font-size: 38px !important;
		line-height: 1.12 !important;
		font-weight: 750 !important;
		letter-spacing: -0.045em !important;
		color: var(--pl-text) !important;
	}

	.planiya-landing .pl-section-title {
		margin-bottom: 10px !important;
		font-size: 29px !important;
		line-height: 1.22 !important;
		font-weight: 720 !important;
		letter-spacing: -0.035em !important;
		color: var(--pl-text) !important;
	}

	.planiya-landing .pl-card-title {
		margin-bottom: 7px !important;
		font-size: 19px !important;
		line-height: 1.35 !important;
		font-weight: 700 !important;
		color: var(--pl-text) !important;
	}

	.planiya-landing p {
		margin: 0;
		font-size: 16px;
		line-height: 1.62;
		color: var(--pl-muted);
	}

	.planiya-landing .pl-section-head {
		max-width: 760px;
		margin-bottom: 22px;
	}

	.planiya-landing .pl-hero {
		padding: 42px 0 58px;
	}

	.planiya-landing .pl-hero-grid,
	.planiya-landing .pl-split {
		display: grid;
		gap: 42px;
		align-items: center;
	}

	.planiya-landing .pl-hero-grid > *,
	.planiya-landing .pl-split > * {
		min-width: 0;
	}

	.planiya-landing .pl-hero-copy {
		max-width: 590px;
	}

	.planiya-landing .pl-hero-lead {
		max-width: 570px;
		font-size: 18px;
		line-height: 1.58;
		color: var(--pl-text);
	}

	.planiya-landing .pl-actions {
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		align-items: center;
		margin-top: 22px;
	}

	.planiya-landing .pl-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 50px;
		padding: 0 22px;
		border: 1px solid transparent;
		border-radius: 12px;
		font-size: 16px;
		font-weight: 650;
		transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
	}

	.planiya-landing .pl-btn--primary {
		background: var(--pl-accent);
		color: #fff;
		box-shadow: var(--pl-shadow-accent);
	}

	.planiya-landing .pl-btn--primary:hover {
		background: var(--pl-accent-dark);
	}

	.planiya-landing .pl-btn--secondary {
		padding-inline: 10px;
		color: var(--pl-accent-dark);
	}

	.planiya-landing .pl-btn--secondary::after {
		content: "→";
		margin-left: 7px;
	}

	.planiya-landing .pl-btn--secondary:hover {
		background: rgba(110, 127, 163, 0.08);
	}

	.planiya-landing .pl-btn:focus-visible,
	.planiya-landing .pl-faq summary:focus-visible {
		outline: 3px solid rgba(110, 127, 163, 0.28);
		outline-offset: 3px;
	}

	.planiya-landing .pl-trust {
		display: flex;
		flex-wrap: wrap;
		gap: 9px 16px;
		margin: 18px 0 0;
		padding: 0;
		list-style: none;
	}

	.planiya-landing .pl-trust li {
		position: relative;
		padding-left: 16px;
		font-size: 14px;
		line-height: 1.45;
		color: var(--pl-muted);
	}

	.planiya-landing .pl-trust li::before {
		content: "";
		position: absolute;
		left: 0;
		top: 7px;
		width: 7px;
		height: 7px;
		border-radius: 50%;
		background: var(--pl-green);
	}

	.planiya-landing .pl-hero-visual {
		width: 100%;
		max-width: 650px;
		margin: 0;
		justify-self: end;
	}

	.planiya-landing .pl-device-stack {
		display: grid;
		grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.16fr) minmax(0, 0.78fr);
		gap: 10px;
		align-items: end;
	}

	.planiya-landing .pl-device {
		padding: 7px;
		border: 1px solid var(--pl-border);
		border-radius: 20px;
		background: linear-gradient(180deg, #fff, #f7f4ef);
		box-shadow: var(--pl-shadow);
	}

	.planiya-landing .pl-device img {
		width: 100%;
		aspect-ratio: 9 / 19.5;
		object-fit: cover;
		border-radius: 15px;
		background: #f3f0ea;
	}

	.planiya-landing .pl-device:not(.is-main) {
		opacity: 0.9;
	}

	.planiya-landing .pl-device.is-main {
		position: relative;
		z-index: 1;
		transform: translateY(-10px) !important;
		box-shadow: 0 16px 36px rgba(32, 41, 56, 0.12);
	}

	.planiya-landing .pl-visual-caption {
		margin-top: 13px;
		font-size: 14px;
		text-align: center;
	}

	.planiya-landing .pl-feature-grid,
	.planiya-landing .pl-extra-grid,
	.planiya-landing .pl-faq {
		display: grid;
		gap: 14px;
	}

	.planiya-landing .pl-feature,
	.planiya-landing .pl-media-card,
	.planiya-landing .pl-faq-item,
	.planiya-landing .pl-cta {
		border: 1px solid var(--pl-border);
		border-radius: 16px;
		background: rgba(255, 255, 255, 0.94);
		box-shadow: var(--pl-shadow);
	}

	.planiya-landing .pl-feature {
		position: relative;
		overflow: hidden;
		padding: 20px;
	}

	.planiya-landing .pl-feature::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 3px;
		background: var(--pl-accent);
	}

	.planiya-landing .pl-feature.is-green::before {
		background: var(--pl-green);
	}

	.planiya-landing .pl-feature.is-gold::before {
		background: var(--pl-gold);
	}

	.planiya-landing .pl-kicker {
		display: inline-flex;
		margin-bottom: 9px;
		font-size: 13px;
		font-weight: 700;
		color: var(--pl-accent-dark);
	}

	.planiya-landing .pl-process {
		margin-top: 8px;
	}

	.planiya-landing .pl-process-item {
		display: grid;
		grid-template-columns: 42px minmax(0, 1fr);
		gap: 14px;
		padding: 15px 0;
		border-bottom: 1px solid var(--pl-border);
	}

	.planiya-landing .pl-process-item:last-child {
		border-bottom: 0;
	}

	.planiya-landing .pl-process-num {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 38px;
		height: 38px;
		border: 1px solid rgba(110, 127, 163, 0.25);
		border-radius: 50%;
		background: rgba(110, 127, 163, 0.08);
		color: var(--pl-accent-dark);
		font-size: 14px;
		font-weight: 700;
	}

	.planiya-landing .pl-process-item .pl-card-title {
		margin-bottom: 3px !important;
	}

	.planiya-landing .pl-media-card {
		padding: 16px;
	}

	.planiya-landing .pl-content-image {
		width: 100%;
		border-radius: 12px;
	}

	.planiya-landing .pl-caption {
		margin-top: 11px;
		font-size: 14px;
		text-align: center;
	}

	.planiya-landing .pl-faq {
		max-width: 900px;
	}

	.planiya-landing .pl-faq-item {
		overflow: hidden;
	}

	.planiya-landing .pl-faq-item summary {
		position: relative;
		padding: 18px 50px 18px 19px;
		cursor: pointer;
		list-style: none;
		font-size: 15px;
		font-weight: 650;
		color: var(--pl-text);
	}

	.planiya-landing .pl-faq-item summary::-webkit-details-marker {
		display: none;
	}

	.planiya-landing .pl-faq-item summary::after {
		content: "+";
		position: absolute;
		right: 18px;
		top: 50%;
		transform: translateY(-50%);
		font-size: 21px;
		color: var(--pl-accent);
	}

	.planiya-landing .pl-faq-item[open] summary::after {
		content: "–";
	}

	.planiya-landing .pl-faq-item p {
		padding: 0 19px 18px;
	}

	.planiya-landing .pl-section--final {
		padding-top: 44px;
		padding-bottom: 64px;
	}

	.planiya-landing .pl-cta {
		display: grid;
		gap: 20px;
		padding: 30px;
		border-color: rgba(110, 127, 163, 0.22);
		background: linear-gradient(135deg, #fff 0%, #f0edf5 100%);
	}

	.planiya-landing .pl-cta .pl-actions {
		margin-top: 0;
	}

	@media (max-width: 759px) {
		.planiya-landing .pl-container {
			padding: 0 16px;
		}

		.planiya-landing .pl-section {
			padding: 38px 0;
		}

		.planiya-landing .pl-hero {
			padding: 28px 0 42px;
		}

		.planiya-landing .pl-title {
			font-size: 34px !important;
		}

		.planiya-landing .pl-section-title {
			font-size: 27px !important;
		}

		.planiya-landing .pl-hero-grid,
		.planiya-landing .pl-split {
			gap: 28px;
		}

		.planiya-landing .pl-actions {
			display: grid;
			width: 100%;
		}

		.planiya-landing .pl-btn {
			width: 100%;
		}

		.planiya-landing .pl-hero-visual {
			max-width: 330px;
			margin: 0 auto;
		}

		.planiya-landing .pl-device-stack {
			grid-template-columns: 1fr;
		}

		.planiya-landing .pl-device:not(.is-main) {
			display: none;
		}

		.planiya-landing .pl-device.is-main {
			transform: none !important;
		}

		.planiya-landing .pl-cta {
			padding: 24px;
		}
	}

	@media (min-width: 760px) {
		.planiya-landing .pl-title {
			font-size: 48px !important;
		}

		.planiya-landing .pl-section-title {
			font-size: 33px !important;
		}

		.planiya-landing .pl-hero-grid {
			grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
		}

		.planiya-landing .pl-split {
			grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
		}

		.planiya-landing .pl-feature-grid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.planiya-landing .pl-extra-grid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		.planiya-landing .pl-cta {
			grid-template-columns: minmax(0, 1fr) auto;
			align-items: center;
		}
	}

	@media (min-width: 1040px) {
		.planiya-landing .pl-feature-grid {
			grid-template-columns: repeat(4, minmax(0, 1fr));
		}
	}

	@media (prefers-reduced-motion: reduce) {
		.planiya-landing * {
			transition: none !important;
		}
	}
